/* 기본 설정 */
:root {
    /* color */
    --g100: #FFFFFF;
    --g200: #F7F7F7;
    --g300: #EEEEEE;
    --g400: #DDDDDD;
    --g500: #B5B5B5;
    --g600: #999999;
    --g700: #666666;
    --g800: #333333;
    --g900: #121212;

    --dp01: #DD1F1F;
    --dp02: #FA5454;
    --dp03: #FFE5E5;

    --dp_success: #3C72FF;

    --bg_readyticket: #E5F1FF;
    --bg_openticket: #D4FFD6;
    --bg_openready: #FFEEDA;
    --bg_active: #FFE5E5;
    --p_readyticket: #3C72FF;
    --p_openticket: #06A736;
    --p_openready: #FF7023;
    --p_active: #FA5454;

    --bc_naver: #28D32D;
    --bc_kakao: #FFEA47;
    --bc_ticketlink: #E3422D;
    --bc_interparkticket: #D388FE;
    --bc_google: #F05D4A;

}

/* 텍스트 효과 */
h1,h2,h3,h4,h5,h6 {color: var(--g900); font-weight: 700;}
h1, h1 strong, h1 a {font-size: 36px;}
h2, h2 strong, h2 a {font-size: 30px;}
h3, h3 strong, h3 a {font-size: 24px;}
h4, h4 strong, h4 a {font-size: 20px;}
h5, h5 strong, h5 a {font-size: 16px;}
h6, h6 strong, h6 a {font-size: 14px;}

.t_point {color: var(--dp01);}
.t_success {color: var(--dp_success);}

/* 헤더 */
.header {position: fixed; top: 0; width: 100%; z-index: 1000; background: var(--g100); transition: .3s;}

/* 기본적으로 보임 */
.header.hidden {top: -71px;}
.header:hover {top: 0;}

/* 헤더TOP */
.header_top {width: 100%; max-width: 1200px; padding: 15px; margin: 0 auto; display: flex; gap: 30px; align-items: center;}
/* 로고 */
.header_logo {width: 200px;}
.header_logo img {height: 40px;}
/* 검색 */
.header_search {display: flex;}
.header_search .header_search_input {width: 100%; height: 40px; background: var(--g300); border-radius: 20px 0 0 20px; padding: 10px 20px; color: var(--g700); border: 0; font-size: 16px;}
.header_search .header_search_submit {width: 40px; height: 40px; background: var(--g300);  border-radius: 0 20px 20px 0; padding: 5px; color: var(--g700); border: 0; display: flex; align-items: center; justify-content: center;}
.header_search .header_search_submit img {width: 20px;}



/* SNS */
.header_sns {display: flex; margin-left: auto; gap: 15px;}
.header_sns li a img {height: 30px;}
/* 반응형 */
.header_search_popup_btn {width: 30px; height: 30px; display: none; margin-left: auto;}
.header_search_popup_btn img {width: 100%;}
/* 오픈메뉴 버튼 */
.header_open_btn {width: 25px; height: 25px; position: relative; display: none;}
.header_open_btn div {width: 100%; height: 3px; background: var(--g700); position: absolute; border-radius: 3px; transition: .5s;}
.header_open_btn div:first-child {top: 0;}
.header_open_btn div:nth-child(2) {top: 50%; transform: translateY(-50%);}
.header_open_btn div:last-child {bottom: 0;}
.header_open_btn.on div:first-child {top: 50%; transform: translateY(-50%) rotate(45deg);}
.header_open_btn.on div:nth-child(2) {top: 50%; transform: translateY(-50%) rotate(-45deg);;}
.header_open_btn.on div:last-child {opacity: 0;}

/* 헤더BOTTOM */
.header_bottom {width: 100%; margin: 0 auto; border-top: 1px solid var(--g300); border-bottom: 1px solid var(--g300);}
/* 메인메뉴 */
.header_mainmenu {width: 100%; max-width: 1200px; padding: 15px 15px 15px 245px;  margin: 0 auto; display: flex; gap: 30px; align-items: center;}
.header_mainmenu li {display: flex; gap: 30px;}
.header_mainmenu li a {font-family: 'GongGothicMedium'; font-weight: 500; font-size: 18px;}

/* 반응형 메뉴 */
.respon_menu {display: none; position: fixed; top: 0; right: -100%; width: 100%; max-width: 400px; height: 100vh; padding: 75px 15px 15px 15px; overflow: auto; background: var(--g100); z-index: 999; align-items: start; transition: .3s; }
.respon_menu.on {right: 0;}
.respon_menu ul {margin-bottom: 30px;}
.respon_menu .respon_mainmenu {display: grid; gap: 15px;}
.respon_menu .respon_mainmenu li {}
.respon_menu .respon_mainmenu li a {font-size: 20px; font-weight: 700;}
.respon_menu .respon_sns {display: flex; gap: 15px;}

/* 광고영역 */
.ad_area_side {width: 100%; max-width: 1200px; height: 600px; position: fixed; top: 150px; left: 50%; transform: translateX(-50%); z-index: -1;}
.ad_area_banner {width: 200px; position: absolute; border-radius: 30px; overflow: hidden;}
.ad_area_banner.ad_left {right: calc(100% + 30px);}
.ad_area_banner.ad_right {left: calc(100% + 30px);}

/* 탑버튼 */
.top_btn {position: fixed; bottom: 15px; right: 15px; width: 50px; height: 50px; box-shadow: 3px 3px 10px rgba(0,0,0,.2); border-radius: 15px; font-size: 14px; font-weight: 700; color: var(--g700); background: var(--g100);}
.top_btn img {width: 15px; margin: 0 auto;}

/* 푸터 */
.footer {width: 100%;}
.footer_top {width: 100%; background: var(--g100); border-top: 1px solid var(--g400);}
.footer_menu {width: 100%; max-width: 1200px; padding: 15px; margin: 0 auto; display: flex; gap: 15px;}
.footer_bottom {width: 100%; background: var(--g200); border-top: 1px solid var(--g400); padding: 10px 0;}
.footer_copy {width: 100%; max-width: 1200px; padding: 5px 15px; margin: 0 auto;}



@media(max-width: 1200px) {

    .header.hidden {top: 0;}
    .header:hover {top: 0;}
    
    /* 헤더TOP */
    .header_top {gap: 15px;}

    /* 로고 */
    .header_logo {width: auto;}
    .header_logo img {height: 30px;}
    /* 검색 */
    .header_search {display: none;}
    /* 반응형 */
    .header_search_popup_btn {display: block;}
    /* 오픈메뉴 버튼 */
    .header_sns {display: none;}
    .header_open_btn {display: block;}
    .header_bottom {display: none;}
    /* 반응형 메뉴 */
    .respon_menu {display: block;}
}

@media(max-width: 760px) {

h1, h1 strong, h1 a {font-size: 30px;}
h2, h2 strong, h2 a {font-size: 24px;}
h3, h3 strong, h3 a {font-size: 20px;}
h4, h4 strong, h4 a {font-size: 16px;}
h5, h5 strong, h5 a {font-size: 14px;}
h6, h6 strong, h6 a {font-size: 12px;}

}