@charset "UTF-8";
/* css import */
@import url(reset.css);
@import url(base.css);

/* common */
html {
    font-size:var(--pc-default);
}
body {
    font-size: 1.6rem; 
}
#wrap {
    width:100%;
    /* overflow: hidden; */
}
.inner {
    width:calc(100% - 30px);
    max-width:1280px;
    margin:0 auto;
}
.only_mo {
    display:none !important;
}
.only_t {
    display:none !important;
}

/* header */
.header {
    position: relative;
    z-index: 99;
}
.header .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1705px;
}
.header .logo img {width: 160px;}
.header .nav > ul {
    display: flex;
}
.header .nav > ul > li {
    position: relative;
    margin: 0 6px;
}
.header .nav > ul > li > a {
    display: block;
    width:150px;
    font-size: 1.8rem;
    font-weight: 500;
    text-transform: uppercase;
    line-height: 100px;
    text-align: center;
}
.header .nav .depth02 {
    display: none;
    position: absolute;
    top: calc(100% - 3px);
    left: 0;
    width: 100%;
    border-top: 3px solid var(--blue-color100);
    border-radius: 0 0 10px 10px;
    background-color: var(--white-basic-color);
    z-index: 10;
}
.header .nav .depth02.active {
    display: block;
}
.header .nav .depth02 li a {
    display: block;
    padding: 20px 5px;
    font-size: 1.5rem;
    color: var(--gray-color400);
    line-height: 1.5;
    text-align: center;
}
.header .nav .depth02 li a:hover {
    font-weight: 700;
    color: var(--blue-color100);
}
.header .private_menu {
    display: flex;
    align-items: center;
}
.header .lang_menu {
    position: relative;
    margin: 0 14px;
}
.header .lang_menu .lang_btn {
    width: 28px;
    /* font-size: 2rem; */
    /* font-weight: 500; */
    font-size: 0;
    line-height: 40px;
    background-position: center;
    background-repeat: no-repeat;
}
.header .lang_list {
    display: none;
    position: absolute;
    top: calc(100% + 9px);
    left: 50%;
    transform: translateX(-50%);
    width:76px;
    margin-top: 12px;
    background-color: var(--white-basic-color);
    border-radius: 10px;
    box-shadow: 0px 6px 22.8px 1.2px rgba(0, 0, 0, 0.26);
    z-index:99;
}
.header .lang_list.active {
    display: block;
}
.header .lang_list:before {
    content: '';
    display: block;
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    width: 16px;
    height: 16px;
    background-color: #ffffff;
}
.header .lang_list ul {
    padding: 8px 0;
}
.header .lang_list li a {
    display: block;
    width: 100%;
    height: 35px;
    padding: 12px 0;
    font-size: 1.4rem;
    font-weight: 500;
    color: var(--gray-color400);
    text-align: center;
    background-position: center;
    background-repeat: no-repeat;
}
.header .lang_list li .korean {background-image: url('/assets/images/common/lang_kr.png');}
.header .lang_list li .english {background-image: url('/assets/images/common/lang_en.png');}
.header .lang_list li .japan {background-image: url('/assets/images/common/lang_ja.png');}
.header .lang_list li .spain {background-image: url('/assets/images/common/lang_es.png');}
.header .lang_list li .russia {background-image: url('/assets/images/common/lang_ru.png');}
.header .lang_list li .china {background-image: url('/assets/images/common/lang_zh-CN.png');}
.header .user_menu {
    position: relative;
    margin: 0 40px 0 14px;
}
.header .user_menu:before {
    content:'';
    display: block;
    position: absolute;
    top: 5px;
    left: -14px;
    width: 1px;
    height: 30px;
    background-color: var(--gray-color500);
}
.header .user_btn {
    position: relative;
    width: 90px;
    padding: 4px;
    font-size: 0;
    text-align: left;
    border-radius: 20px;
    border: 1px solid var(--gray-color500);
}
.header .user_btn:after {
    content:'';
    display: block;
    position: absolute;
    top:50%;
    right: 16px;
    transform: translateY(-50%);
    width: 10px;
    height: 6px;
    background: url('../images/common/ico_select_arrow.png') no-repeat center / cover;
}
.header .user_menu_list {
    display: none;
    position: absolute;
    top: calc(100% + 9px);
    left: 50%;
    transform: translateX(-50%);
    width:176px;
    margin-top: 12px;
    background-color: var(--white-basic-color);
    border-radius: 10px;
    box-shadow: 0px 6px 22.8px 1.2px rgba(0, 0, 0, 0.26);
    z-index: 99;
}
.header .user_menu_list.active {
    display: block;
}
.header .user_menu_list:before {
    content: '';
    display: block;
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    width: 16px;
    height: 16px;
    background-color: #ffffff;
}
.header .user_menu_list ul {
    padding: 15px 10px;
}
.header .user_menu_list li {
    margin: 4px 0;
}
.header .user_menu_list a {
    display: block;
    padding-left: 48px;
    font-size: 1.6rem;
    font-weight: 300;
    color: var(--gray-color400);
    line-height: 30px;
    background-position: left 10px center;
    background-repeat: no-repeat;
}
.header .user_menu_list a:hover {
    background-color: var(--blue-color600);
}
.header .user_menu_list .user_login a,
.header .user_menu_list .user_logout a {
    background-image: url('../images/common/ico_user.png');
}
.header .user_menu_list .user_join a {
    background-image: url('../images/common/ico_write.png');
}
.header .user_menu_list .user_reserve a {
    background-image: url('../images/common/ico_calendar.png');
}
.header .user_menu_list .user_admin a {
    background-image: url('../images/common/ico_admin.png');
}
.header .user_menu_list .user_mypage a {
    background-image: url('../images/common/ico_mypage.png');
}

/* footer */
.footer {
    padding: 70px 0;
    background-color: var(--gray-color200);
}
.footer .inner {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.footer .f_info {
    flex: 0 0 auto;
    width: 54.6875%;
}
.footer .site_name {
    display: block;
    width: 160px;
    margin-bottom: 20px;
    font-size: 2rem;
    font-weight: 700;
    color: var(--white-basic-color);
}
.footer address div {
    display: flex;
    align-items: flex-start;
    margin: 10px 0;
}
.footer address span {
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--white-basic-color);
    line-height: 1.5;
}
.footer address span:not(:last-child) {
    position: relative;
    margin-right: 10px;
    padding-right: 10px;
}
.footer address span:not(:last-child):after {
    content:'';
    display: block;
    position: absolute;
    top: 6px;
    right: 0;
    width: 1px;
    height: 12px;
    background-color: var(--gray-color500);
}
.footer .copyright {
    margin-top: 20px;
    font-size: 1.4rem;
    color: var(--white-basic-color);
}
.footer .f_site ul {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    flex-wrap: wrap;
}
.footer .f_site li {
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--white-basic-color);
    line-height: 1.5;
}
.footer .f_site li:not(:last-child) {
    position: relative;
    margin-right: 10px;
    padding-right: 10px;
}
.footer .f_site li:not(:last-child):after {
    content:'';
    display: block;
    position: absolute;
    top: 6px;
    right: 0;
    width: 1px;
    height: 12px;
    background-color: var(--gray-color500);
}

/* common */
.custom_slide .custom-pagination {
    display: flex;
    position: relative;
    width: fit-content;
    padding: 8px 15px;
    border-radius: 25px;
    background-color: rgba(255,255,255,.26);
}
.custom-pagination .swiper-pagination-bullet {
    display: flex;
    align-items: center;
    justify-content: center;
    width:35px;
    height:35px;
    margin: 0 15px;
    font-size: 1.6rem;
    font-weight: 300;
    color: var(--white-basic-color);
    background: transparent;
    opacity: 1;
}
.custom-pagination .swiper-pagination-bullet-active {
    font-weight: 700;
    background-color: var(--blue-color300);
}

/* pager */
/* pager */
.pager {
	margin-top: 50px;
}
.pager ul {
	display: flex;
	align-items: center;
	justify-content: center;
}
.pager li {
	width:55px;
	height:55px;
	margin: 0 8px;
}
.pager li a {
	display: block;
	width:100%;
	height:100%;
}
.pager .p_arrow a {
	font-size: 0;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url('../images/common/ico_arrow_single.png');
}
.pager .p_arrow.double_arrow a {
	background-image: url('../images/common/ico_arrow_double.png');
}
.pager .p_arrow.last_arrow {
	transform: rotate(180deg);
}
.pager .num a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	color: var(--gray-color200);
	text-align: center;
}
.pager .num.active a,
.pager .num a:hover {
	font-weight: 700;
	color: var(--blue-color100);
}

/* date_input */
.date_input {
    background-image: url('../images/common/ico_date_calendar.png');
    background-position: right 15px center;
    background-repeat: no-repeat;
}

/* popup */
.popup {
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.4);
    z-index: 999;
    display: none;
}
.popup .popup_wrap {
    position: relative;
    width: calc(100% - 30px);
    max-width: 100%;
    padding: 30px 25px;
    background-color: var(--white-basic-color);
}
.popup .popup_ttl {
    display: flex;
    align-items: center;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--gray-color500);
}
.popup .popup_ttl .ico {
    margin-right: 5px;
}
.popup .popup_ttl_txt {
	font-size: 2.4rem;
	font-weight: 700;
}
.popup .popup_cont {
    padding: 14px 0;
    border-bottom: 1px solid var(--gray-color500);
}
.popup .popup_cont .input_wrap + .input_wrap {
    margin-top: 15px;
}
.popup .popup_cont .input_wrap textarea {
    width: 100%;
    height: 218px;
}
.popup .popup_btn_wrap {
    display: flex;
    align-items: center;
    margin: 20px -10px 0;
}
.popup .popup_btn_wrap .default_btn {
    width: 100%;
    height: 40px;
    margin: 0 10px;
    line-height: 38px;
    font-size: 1.6rem;
    font-weight: 700;
    border-radius: 5px;
    text-align: center;
    border: 1px solid transparent;
}
.popup .popup_btn_wrap .primary_btn {
    color: var(--white-basic-color);
    border-color: var(--blue-color100);
    background-color: var(--blue-color100);
}
.popup .popup_btn_wrap .primary_line_btn {
    color: var(--blue-color100);
    border-color: var(--blue-color100);
}
.popup .popup_close {
    position: absolute;
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    font-size: 0;
    background: url('../images/common/btn_pop_close.png') no-repeat center;
}

/* layer_popup */
.layer_pop {
    position:fixed;
    width:auto;
    min-width:200px;
    height:auto;
    z-index: 999;
}
.layer_pop.close {
    display:none;
}
.layer_pop .pop_cont {
    background-color:var(--white-basic-color);
}
.layer_pop .pop_cont * {
    font-size: 1.4rem;
}
.layer_pop .pop_btm {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color:var(--black-basic-color);
}
.layer_pop .layer_close_oneday {
    padding:10px;
    color:var(--gray-color650);
}
.layer_pop .layer_close {
    padding:10px;
    color:var(--white-basic-color);
    background-color:var(--gray-color400);
}

/* responsive */
@media screen and (max-width:1200px) {

    /* footer */
    .footer .inner {
        flex-direction: column;
    }
    .footer .f_site {
        margin-top: 30px;
    }

}
@media screen and (max-width:1024px) {

    /* common */
    .only_t {
        display: block !important;
    }

    .custom_slide .custom-pagination {
        padding: 8px 5px;
    }
    .custom-pagination .swiper-pagination-bullet {
        font-size: 1.5rem;
    }

    /* header */
    .header {
        position: relative;
    }
    .header.menu_open {
        border-bottom: 1px solid var(--gray-color500);
    }
    .header .inner {
        justify-content: flex-start;
        height: 80px;
    }
    .header .logo {
        width: 120px;
    }
    .header .ham_btn {
        display: flex !important;
        flex-direction: column;
        gap: 8px;
        margin-left: 15px;
    }
    .header .ham_btn span {
        width: 25px;
        height: 3px;
        border-radius: 5px;
        background-color: var(--black-basic-color);
        transition: .4s;
    }
    .header.menu_open .ham_btn span:nth-child(1) {
        transform: translate(0px, 10px) rotate(45deg);
    }
    .header.menu_open .ham_btn span:nth-child(2) {
        opacity: 0;
    }
    .header.menu_open .ham_btn span:nth-child(3) {
        transform: translate(0px, -12px) rotate(-45deg);
    }
    .header .nav {
        display: none;
        position: absolute;
        top: calc(100% + 50px);
        left: 0;
        width: 100%;
        height: calc(100vh - 130px);
        background-color: var(--white-basic-color);
        z-index: 99;
    }
    .header.menu_open .nav {
        display: block;
    }
    .header .nav > ul {
        flex-direction: column;
        height: 100%;
    }
    .header .nav > ul:after {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 140px;
        width: 1px;
        height: 100%;
        background-color: var(--gray-color500);
    }
    .header .nav > ul > li {
        position: initial;
        max-width: 140px;
        margin: 0;
    }
    .header .nav > ul > li > a {
        width: 100%;
        padding: 13px 15px;
        font-size: 1.6rem;
        line-height: 1.5;
        text-align: left;
    }
    .header .nav > ul > li.on > a {
        color: var(--white-basic-color);
        background-color: var(--blue-color000);
    }
    .header .nav .depth02 {
        top: 0;
        left: 141px;
        width: calc(100% - 141px);
        height: 100%;
        border-top: none;
        border-radius: 0;
    }
    .header .nav li.on .depth02 {
        display: block;
    }
    .header .nav .depth02 li a {
        padding: 17px 20px;
        text-align: left;
        border-bottom: 1px solid var(--gray-color500);
    }
    .header .private_menu {
        margin-left: auto;
    }
    .header .lang_menu:after {
        content:'';
        display: block;
        position: absolute;
        top: 9px;
        right: -12px;
        width: 1px;
        height: 20px;
        background: var(--gray-color500);
    }
    .header .user_menu {
        /* display: none; */
        position: absolute;
        top: calc(100% + 1px);
        left: 0;
        width: 100%;
        margin-left: 0;
        background-color: var(--white-basic-color);
        z-index: 99;
    }
    .header .user_menu:before {
        display: none;
    }
    .header .user_btn {
        display: none;
    }
    .header .user_menu_list {
        display: none;
        position: relative;
        top: initial;
        left: initial;
        transform: initial;
        width: 100%;
        margin-top: 0;
        border-radius: 0;
        border-bottom: 1px solid var(--gray-color500);
        background-color: transparent;
        box-shadow: none;
    }
    .header.menu_open .user_menu_list {
        display: block;
    }
    .header .user_menu_list:before {
        display: none;
    }
    .header .user_menu_list ul {
        display: flex;
        align-items: center;
        justify-content: space-between;
        height: 50px;
        padding: 16px 0;
    }
    .header .user_menu_list li {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 33.33%;
        margin: 0;
        padding: 0 10px;
    }
    .header .user_menu_list li + li {
        border-left: 1px solid var(--gray-color500);
    }
    .header .user_menu_list a {
        padding-left: 25px;
        font-size: 1.5rem;
        line-height: 18px;
        background-position: left center;
        background-size: 16px;
    }

    /* footer */
    .footer {
        padding: 40px 0;
    }
    .footer .inner {
        align-items: center;
    }
    .footer .f_info {
        width: 100%;
    }
    .footer .site_name {
        width: 110px;
        margin: 0 auto 15px;
        font-size: 1.8rem;
        text-align: center;
    }
    .footer address div {
        justify-content: center;
        flex-wrap: wrap;
    }
    .footer address span {
        font-size: 1.4rem;
        text-align: center;
    }
    .footer address span:not(:last-child) {
        margin-right: 8px;
        padding-right: 8px;
    }
    .footer address span:not(:last-child):after {
        top: 4px;
    }
    .footer .copyright {
        font-size: 1.3rem;
        text-align: center;
    }
    .footer .f_site {
        margin-top: 20px;
    }
    .footer .f_site ul {
        justify-content: center;
        flex-wrap: wrap;
    }
    .footer .f_site li {
        font-size: 1.5rem;
        padding-top: 5px;
        padding-bottom: 5px;
    }
    .footer .f_site li:not(:last-child):after {
        top: 10px;
    }

    /* popup */
    .popup .popup_wrap {
        padding: 20px 15px;
    }
    .popup .popup_ttl_txt {
        font-size: 2rem;
    }

    /* pager */
    .pager {
        margin-top: 30px;
    }
    .pager li {
        width: 35px;
        height: 35px;
        margin: 0 6px;
    }
    .pager .p_arrow a {
        background-size: 10px;
    }
    .pager .p_arrow.double_arrow a {
        background-size: 15px;
    }
    .pager .num a {
        font-size: 1.5rem;
    }

}