/* clearfix */

.clearfix:after {
    display: block;
    content: '';
    clear: both;
}


/* custom select box */

.select-box {
    display: inline-block;
    position: relative;
    height: 25px;
    vertical-align: middle;
    overflow: hidden;
    background-color: #fff;
}

.select-box:after {
    content: '';
    position: absolute;
    display: inline-block;
    width: 25px;
    height: 25px;
    top: 0;
    right: 0;
    border-left: 1px solid #b1b1b1;
    background-image: url(../images/ico_select_black.png);
    background-repeat: no-repeat;
    background-position: center center;
    z-index: 1;
}

.select-box select {
    height: 25px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    padding: 0 0 0 10px;
    background: transparent;
    color: #999;
    box-sizing: content-box;
}

.select-box select:focus {
    outline: none;
}

.select-box.notice {
    width: 195px;
}

.select-box.notice select {
    width: 204px;
}


/* table */

table {
    width: 100%;
    line-height: 1.3em;
    border-collapse: collapse;
    table-layout: fixed;
}

table tr th {
    color: #2e2b28;
    font-weight: 500;
    background: #f4f4f4;
    border: 1px solid #e1e1e1;
    padding: 10px 0;
    font-size: 15px;
    vertical-align: middle;
}

table tr td {
    padding: 8px 15px;
    font-size: 14px;
    vertical-align: middle;
    text-align: center;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    color: #888;
    letter-spacing: 0.03em;
    word-break: break-all;
}

table tr td:last-child {
    border-right: 0;
}

table tr td.text:last-child {
    text-align: left;
}


/* content */

.box_content {
    padding: 0 20px;
}

.box_content .location {
    height: 20px;
    padding-top: 30px;
    font-size: 12px;
    color: #a8a8a8;
    text-align: right;
}

.box_content .location span {
    display: inline-block;
    margin-left: 5px;
    margin-right: 5px;
    vertical-align: middle;
}

.inner_content h1 {
    font-size: 32px;
    margin-bottom: 40px;
    color: #363636;
    font-weight: bold;
}

.inner_content .sec_info {
    padding-bottom: 60px;
    font-size: 15px;
}

.sec_info>div {
    padding-bottom: 30px;
    margin-top: 30px;
}

.sec_info>div h2 {
    padding-left: 15px;
    margin-bottom: 20px;
    font-size: 18px;
    color: #252525;
    font-weight: bold;
    background: url("../images/blt_head.png") 0 center no-repeat;
    display: inline-block;
    letter-spacing: 0.03em;
}

.txt_right {
    text-align: right;
}

.txt_center {
    text-align: center;
}

.text-info {
    color: #666;
    margin-bottom: 10px;
    letter-spacing: 0.03em;
}

.text-info img,
.searchOption img {
    vertical-align: top;
    padding: 0 4px;
}


/* paginate */

.paginate {
    margin-top: 27px;
}

.paginate ul {
    overflow: hidden;
    text-align: center;
    font-size: 0;
}

.paginate ul li {
    display: inline-block;
    width: 35px;
    height: 35px;
    margin-right: 10px;
    font-size: 16px;
    line-height: 35px;
    text-align: center;
    border: 1px solid #bbb;
    vertical-align: middle;
}

.paginate ul li.active {
    background: #00adef;
    border: 1px solid #0099d3;
}

.paginate ul li.active a {
    color: #fff;
}

.paginate ul li:last-child {
    margin-right: 0;
}

.paginate ul li.btn_first {
    text-indent: -9999px;
    font-size: 0;
    background: url("../images/ico_first.png") center center no-repeat;
}

.paginate ul li.btn_prev {
    text-indent: -9999px;
    background: url("../images/ico_prev.png") center center no-repeat;
}

.paginate ul li.btn_next {
    text-indent: -9999px;
    background: url("../images/ico_next.png") center center no-repeat;
}

.paginate ul li.btn_last {
    text-indent: -9999px;
    background: url("../images/ico_last.png") center center no-repeat;
}

.paginate ul li a {
    display: block;
    color: #666;
}


/* font */

.color-blue {
    color: #0c90c7;
}

.color-red {
    color: #f04137;
}

.color-gray {
    color: #888;
}

.color-black {
    color: #333;
}

.font-bold {
    font-weight: 500;
}

.t-left {
    text-align: left !important;
}

.t-right {
    text-align: right;
}

.float-r {
    float: right;
}

pre {
    white-space: pre-wrap;
}


/* common top menu */

.cmn-top-box {
    text-align: right;
    height: 59px;
    line-height: 59px;
    border-bottom: 1px solid #bbb;
    padding: 0 0 0 30px;
    box-sizing: border-box;
    margin: 0 20px;
}

.cmn-top-box.main {
    position: absolute;
    width: 100%;
    padding: 0 50px;
    top: 0;
    left: 0;
    border-bottom: 0;
    margin: 0;
    z-index: 1;
}

.cmn-top-menu {
    display: inline-block;
    font-size: 0;
    word-spacing: 0;
    letter-spacing: 0;
    vertical-align: top;
}

.cmn-top-menu li {
    display: inline-block;
    padding-left: 20px;
    vertical-align: middle;
}

.cmn-top-menu li:first-child {
    padding-left: 0;
    padding-right: 21px;
    position: relative;
}

.cmn-top-menu li:first-child:after {
    content: '';
    position: absolute;
    background-color: #9baeba;
    width: 1px;
    height: 13px;
    top: 50%;
    margin-top: -6.5px;
    right: 0;
}

.cmn-top-menu li>a,
.cmn-top-menu li>span {
    font-size: 14px;
    color: #333;
    font-weight: 500;
    letter-spacing: -0.04em;
    vertical-align: middle;
}

.btn-media-size {
    width: 17px;
    height: 17px;
    background-color: #00adef;
    font-size: 0;
    line-height: 0;
    overflow: hidden;
    text-indent: -10000em;
    background-repeat: no-repeat;
    background-position: center center;
}

.btn-media-size.plus {
    margin-left: 10px;
    background-image: url(../images/ico_size_plus.png);
}

.btn-media-size.minus {
    margin-left: 5px;
    background-image: url(../images/ico_size_minus.png);
}


/* button */

.btn {
    display: inline-block;
    box-sizing: border-box;
    outline: 0;
    transition: background-color 0.5s ease;
    color: #fff;
}

.btn-in-table:hover {
    text-decoration: underline;
}

.btn-payment {
    margin-top: 20px;
    width: 140px;
    height: 30px;
    font-size: 15px;
}

.btn-confirm {
    font-size: 16px;
    width: 160px;
    height: 35px;
    line-height: 35px;
}

.btn-sz {
    padding: 5px 10px;
    font-size: 13px;
}

.btn-big-sz {
    font-size: 20px;
    width: 200px;
    height: 50px;
    line-height: 50px;
}

.btn-more-big-sz {
    font-size: 20px;
    width: 300px;
    height: 50px;
    line-height: 50px;
}

.btn-search {
    padding: 6px 20px;
    font-size: 15px;
}

.btn-login {
    width: 100px;
    height: 90px;
    font-size: 18px;
    background: #0c90c7;
}

.btn-terms-sz {
    width: 140px;
    height: 50px;
    line-height: 50px;
    font-size: 20px;
    font-weight: 500;
}

.btn-terms-sz:nth-child(n + 2) {
    margin-left: 8px;
}

.btn-green {
    background: #218b49;
}

.btn-blue {
    background: #1d7592;
}

.btn-black {
    background: #555;
}

.btn-red {
    background: #f04137;
}

.btn-gray {
    background: #666;
}

.btn-lightblue {
    background: #0089cf;
}

.btn-lightblue2 {
    background: #009dd9;
}

.btn-orange {
    background: #f56c3d;
}

.btn-lightgray {
    background: #999;
}

.btn-lightgray2 {
    background: #d4d4d4;
}

.btn-layer {
    background: #00adef;
}


/* tab-menu */

.tabs-menu {
    height: 30px;
    float: left;
    clear: both;
    margin-bottom: 10px;
}

.tabs-menu li {
    height: 30px;
    line-height: 30px;
    float: left;
    color: #666;
}

.tabs-menu li.current {
    position: relative;
    z-index: 5;
    color: #333;
}

.tabs-menu li a {
    text-transform: uppercase;
    text-decoration: none;
}

.tabs-menu .current a {
    font-weight: 600;
    border-bottom: 1px solid;
    color: #00adef;
}


/* element */

.img_radio,
.img_checkbox {
    display: inline-block;
    vertical-align: middle;
}

.img_radio label,
.img_checkbox label {
    display: inline-block;
    overflow: hidden;
}

.img_hidden_radio,
.img_hidden_checkbox {
    visibility: hidden;
    width: 0;
    height: 0;
    position: absolute;
    left: -10000em;
}

.img_view_radio {
    display: inline-block;
    width: 15px;
    height: 15px;
    background-image: url(../images/ico_radio_off.png);
    background-repeat: no-repeat;
}

.img_hidden_radio:checked+.img_view_radio {
    background-image: url(../images/ico_radio_on.png);
}

.img_view_checkbox {
    display: inline-block;
    width: 19px;
    height: 16px;
    background-image: url(../images/ico_checkbox_off.png);
    background-repeat: no-repeat;
    background-position-x: 1px;
    background-position-y: 1px;
}

.img_hidden_checkbox:checked+.img_view_checkbox {
    background-image: url(../images/ico_checkbox_on.png);
}

.img_view_checkbox_round {
    display: inline-block;
    width: 27px;
    height: 27px;
    background-image: url(../images/ico_check_off.png);
    background-repeat: no-repeat;
    background-position-x: 0;
    background-position-y: 0;
}

.img_hidden_checkbox:checked+.img_view_checkbox_round {
    background-image: url(../images/ico_check_on.png);
}



/* 약관동의 탭  */

#inner_tab_2,
#inner_tab_3,
#inner_tab_4 {
    display: none;
}

.btn-box {
    text-align: center;
}

.agree .agree-pre {
    max-height: 180px;
    padding: 10px;
    margin-bottom: 10px;
    overflow-y: auto;
    border-right: 1px solid #ddd;
    border-left: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    font-size: 13px;
    line-height: 20px;
    color: #999;
}

.tabs-agree-menu {
    height: 31px;
    float: left;
    clear: both;
    width: 100%;
    border-bottom: 1px solid #ddd;
}

.tabs-agree-menu li {
    height: 28px;
    float: left;
}

.tabs-agree-menu li a {
    text-decoration: none;
    box-sizing: border-box;
    background-color: #eee;
    color: #c2c2c2;
    display: inline-block;
    font-size: 14px;
    width: 100%;
    text-align: center;
    height: 32px;
    line-height: 32px;
    border-right: 1px solid #ddd;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

.tabs-agree-menu li:first-child a {
    border-left: 1px solid #ddd;
}

.agree_chk p {
    display: inline-block;
    padding-right: 30px;
    color: #666;
    font-size: 13px;
}

.agree_chk p:nth-child(1) {
    margin-left: 10px;
}

.agree_chk p input {
    margin-right: 10px;
}

.tabs-agree-menu .current a {
    background: #0c90c7;
    color: #fff;
    border: 1px solid #0c90c7;
}

.pay-table {
    border: 1px solid #e1e1e1;
    background: #f8f8f8;
}

.pay-table .pay-table-1,
.pay-table .pay-table-2 {
    display: inline-block;
    font-size: 15px;
    color: #666;
}

.pay-table .pay-table-1 {
    vertical-align: top;
    width: 512px;
    padding: 30px 20px 30px 20px;
    border-right: 0;
}

.pay-table .pay-table-1 div:first-child {
    padding-bottom: 30px;
    border-bottom: 1px solid #e1e1e1;
}

.pay-table .pay-table-1 .option_info {
    padding-top: 30px;
    line-height: 22px;
}

.pay-table .pay-table-1 .info {
    background: url("../images/ico_info.png") 0 center no-repeat;
    padding-left: 25px;
}

.pay-table .pay-table-1 .payment_option div {
    display: inline-block;
    padding-left: 10px;
}

.pay-table .pay-table-2 {
    padding: 24px 20px 30px 20px;
    width: 360px;
    border-left: 1px solid #e1e1e1;
}

.pay-table .pay-table-2 p:nth-child(1) {
    padding-bottom: 30px;
}

.pay-table .pay-table-2 p {
    padding-bottom: 6px;
}

.pay-table .pay-table-2 p:nth-child(1) span:first-child {
    color: #333;
}

.pay-table .pay-table-2 p:nth-child(1) span:last-child {
    font-size: 22px;
    font-weight: bold;
}

.payment .agree,
.payment .pay {
    display: none;
}

.pay .btn-box {
    margin-top: 50px;
}


/* 탭 메뉴 갯수 별 css */

.tab-menu-2 li {
    width: 50%;
}

.tab-menu-3 li {
    width: 33.3%;
}

.tab-menu-3 li:nth-child(2) {
    width: 33.4%;
}

.tab-menu-4 li {
    width: 25%;
}

.tab-menu-5 li {
    width: 20%;
}


/* 로딩 바 */

.loading-container {
    width: 100%;
    height: 100%;
    z-index: 100;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.7);
}

.loading-container.idx-top {
    z-index: 99999;
}

.loading-bar {
    width: 100px;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    /* 가로 중앙 정렬 */
    height: 100px;
    top: 0;
    bottom: 0;
    margin-top: auto;
    margin-bottom: auto;
    /* 세로 중앙 정렬 */
    position: absolute;
    background: url(../images/loading.svg) no-repeat;
}


/* 레이어 팝업 */
.layer-popup {
    display: none;
    position: absolute;
    margin-left: 0;
    box-shadow: #ddd 1px 1px 1px;
    background: rgba(0, 0, 0, 0.1);
    padding: 8px;
    
    top: 65px;
    left: 0px;
    z-index: 1001;
}

.layer-popup img {
    display: block;
}

.layer-popup map area {
    outline: none;
}

.layer-popup-2 {
    left: 0px;
    z-index: 1001;
}

.layer-popup-3 {
    left: 360px;
    z-index: 1002;

    img{
    width: 700px;
    }
}

.layer-popup-4 {
    top: 30px;
    left: 240px;
    z-index: 1003;

    img{
        width: 600px;
    }
}

#layer2 { display: none; }
