@charset "utf-8";

html, body, div, span, applet, object, iframe, table, caption, tbody, tfoot, thead, tr, th, td, 
del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, 
h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, 
dl, dt, dd, ol, ul, li, fieldset, form, label, legend input, textarea, button, select{
    vertical-align: baseline;
    font-family: inherit;
    font-weight: inherit;
    font-style: inherit;
    font-size: 100%;
    outline: 0;
    padding: 0;
    margin: 0;
    border: 0;
}


* { margin:0; padding:0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
ul, li {list-style:none; }
html { width:100%; }
body { width:100%; height:100%; line-height:100%; color:#000; font-size:1em; font-family: 'Pretendard'; overflow-y:visible!important; box-sizing:border-box; }
img { vertical-align:middle; border:none; }
a { text-decoration:none; cursor:pointer; }
p { }
div, input, button { vertical-align:middle; border:none; font-family: 'Pretendard'; }
textarea { border:none; }
.red {color:#ee0000; font-weight:500; }

li { list-style: none; margin: 0; padding: 0;}
.continaer { max-width: 1920px; margin: 0 auto; outline: 1px solid red; }

button { background-color: transparent; }
button, .click img { cursor: pointer; }
.top_btn { right:20px; bottom:20px; position: fixed; z-index: 9999; background-color: transparent; }

.mo { display: none; }

/* PC 
------------------------------------------------------------------------------------------------------------*/

.contents { position:relative; text-align:center; min-width: 1600px; }
.contents img { width:100%; max-width:1920px; }

.main_text { top: 50%; left: 60%; position: absolute; display: flex; gap: 12px; justify-content: center; align-items: baseline; color: white; }
.main_text .wdDate { letter-spacing: 0; font-weight:600; font-size: 3rem; line-height: 1; display: flex; align-items: center; }
.main_text .wdDate small { font-size: 2rem; font-weight: 400; padding-left: 8px; }
.main_text > span { font-size: 1.4rem; color: #e9bf20; }

.btn_wrap { display: flex; }
.main1 .btn_wrap { position: absolute; left: 60%; top: 80%; gap: 2rem; }
.main1 .btn_wrap button { width: 14rem; }

.main2 { display: flex; justify-content: center; content-visibility: auto; contain-intrinsic-size: auto 100vh; }
.main2 video { width: 100%; filter: brightness(0.4); }
.main2 .main_wrap { display: flex; flex-direction: column; align-items: center; gap: 5rem; position: absolute; top: 50%; translate: 0 -50%; }
.main2 .main_wrap > img { width: auto; }
.main2 .btn_wrap button { width: 20rem; height: 5rem; transition: background-image 0.2s ease-out; }
.main2 .btn_wrap .btn01 { background: url(../img/2_btn01.png) center / contain no-repeat; }
.main2 .btn_wrap .btn01:hover { background-image: url(../img/2_btn03.png); }
.main2 .btn_wrap .btn02 { background: url(../img/2_btn02.png) center / contain no-repeat; }
.main2 .btn_wrap .btn02:hover { background-image: url(../img/2_btn04.png); }

.sub { display: flex; justify-content: center; }
.sub button { position: absolute; width: 25rem; }
.sub4 button { bottom: 3rem; }
.sub5 button { bottom: 5rem; }
.sub6 button { bottom: 4rem; }
.sub7 button { bottom: 5rem; }
.sub8 button { bottom: 4rem; }
.sub10 button { bottom: 4.5rem; }

/*form */

.contents:has(.form) { display: flex; align-items: center; }
.form { display: flex; flex-direction: column; gap: 2.5rem; color: #333; line-height: 1.4; position: absolute; left: 20%; }

.form form { width: 600px; }
.form form > p { text-align: right; }

.form .form_table { border-collapse:collapse; }
.form .form_table tbody :is(th, td) { vertical-align:middle; text-align:left; line-height:100%; font-size:18px; }
.form .form_table tbody th { font-weight:600; letter-spacing:-2px; white-space: nowrap; }
.form .form_table th label { width: 100%; padding: 20px; display: inline-flex; gap: 4px; }
.form .form_table th label::before { content: '*'; color: #ee0000; }
.form :is(.tel_wrap, .chk_wrap) { display: flex; gap: 8px; align-items: center; }

.form :is(.input_style, .sel_style, .textarea_style) { width:100%; padding-left:10px; height:42px; border:1px solid #014fed; border-radius: 8px; font-size: 1rem; }
.form :is(.input_style, .sel_style, .textarea_style):focus { border-color:#303f99; -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff; box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff;}
.form .sel_style { vertical-align: middle;}
.form .textarea_style { padding: 10px; height: 90px; resize: none; }
.form input[type="checkbox"] { width: 16px; aspect-ratio: 1; }

.form .submit_box { width:100%; padding-top:20px; }
.form .submit_box .btn01 { width:60%; margin-top:20px; filter: drop-shadow(0 0 8px rgba(0,0,0,0.3)); }

.form .popup1 { color: inherit; font-weight: 600; }
.form .chk_wrap { justify-content: center; padding-block: 12px; }

.map_wrap { display: flex; flex-direction: column; align-items: center; gap: 3rem; background: url(../img/11.jpg) center / cover; padding-block: 5rem; }
.map_wrap > img { width: auto; }

footer { width: 100%; overflow: hidden; display: flex; justify-content: center; background-color: #333; padding-block: 4rem; }

/* MOBILE
------------------------------------------------------------------------------------------------------------*/

/*form */

@media screen and (max-width: 768px) {
    .contents { min-width: 0; }

    .main_text { top: 32%; left: auto; width: 100%; }
    .main_text .wdDate { font-size: 1.8rem; }
    .main_text .wdDate small { font-size: 1.2rem; padding-left: 4px; }
    .main_text > span { font-size: 1rem; }

    .main1 .btn_wrap { width: 100%; gap: 0; top: auto; bottom: 0; left: 0; }

    .main2 { height: 80vh; overflow: hidden; }
    .main2 video { height: 100%; width: auto; }
    .main2 .main_wrap { gap: 3rem; top: 10%; translate: 0; }
    .main2 .main_wrap > img { width: 17rem; }
    .main2 .btn_wrap { position: absolute; bottom: 0; width: 100%; }
    .main2 .btn_wrap button { width: auto; height: auto; }

    .sub button { width: 15rem; }
    .sub4 button { bottom: 2.5rem; }
    .sub5 button { bottom: 3.5rem; }
    .sub6 button { bottom: 3.5rem; }
    .sub7 button { bottom: 3rem; }
    .sub8 button { bottom: 2.5rem; }

    .form { position: static; gap: 1rem; padding: 3rem 1rem; background: url(../img/m3.jpg) center / cover; }
    .form form { width: 100%; }

    .form .form_table tbody :is(th, td, .input_style, .sel_style, .textarea_style) { font-size: 15px; }
    .form :is(p, .chk_wrap) { font-size: 14px; }
    .form .submit_box .btn01 { font-size: 20px; padding-bottom: 12px; }

    .form .chk_wrap { gap: 4px; }
    .form input[type="checkbox"] { width: 14px; }

    .form .form_table th label { padding: 1.4rem 1rem; padding-left: 0; text-shadow: 0 0 8px white; font-size: 15px; }
    .form p br { display: none; }

    .map_wrap { padding: 3rem 1rem; }
    .map_wrap > img { width: 100%; }
    .root_daum_roughmap { width: 100% !important; }

    footer { padding-inline: 1rem; }
    footer img { width: 100%; }

    .top_btn img { width: 40px; }

    .pc { display: none; }
    .mo { display: block; }
}