@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: 'S-CoreDream-4Regular'; 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: 'S-CoreDream-4Regular'; }
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, .click img { cursor: pointer; }
.top_btn { right:20px; bottom:20px; position: fixed; z-index: 9999; background-color: transparent; }

.contents:has(.map) { display: flex; flex-direction: column; align-items: center; padding-block: 2rem; background-color: rgba(0,0,0,0.1); }
.contents:has(.map) h3 { padding: 0.8rem 2rem; font-size:20px; background-color:#fff; border-radius:50px; margin-bottom: 10px; }
.map { padding-inline: 1rem; width: 100%; max-width: 900px; }
.root_daum_roughmap { width: 100% !important; }

/* PC 
------------------------------------------------------------------------------------------------------------*/

.contents { position:relative; text-align:center; }
.contents img { width:100%; max-width: 900px; }

.click { display: flex; flex-direction: column; align-items: center; }

/*form */

.form1 { display: flex; flex-direction: column; align-items: center; justify-content: center; color: #333; line-height: 1.4; position: relative; padding-block: 3rem; }
.form1 p { font-family: initial; font-size: 16px; padding-bottom: 12px; }

.form1 form { width: 600px; }
.form1 form > p { text-align: right; }

.form1 .form_table { border-collapse:collapse; margin-top: 2rem; }
.form1 .form_table tbody tr { border-bottom:1px solid #d7d7d7; }
.form1 .form_table tbody :is(th, td) { vertical-align:middle; text-align:left; line-height:100%; font-size:18px; }
.form1 .form_table tbody th { font-weight:600; letter-spacing:-2px; white-space: nowrap; }
.form1 .form_table th label { width: 100%; padding: 28px 20px; display: inline-flex; gap: 4px; }
.form1 .form_table th label::before { content: '*'; color: #ee0000; }
.form1 :is(.tel_wrap, .chk_wrap) { display: flex; gap: 8px; align-items: center; }

.form1 :is(.input_style, .sel_style, .textarea_style) { width:100%; padding-left:10px; height:42px; border:1px solid #ccc; font-size:18px; }
.form1 :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;}
.form1 .sel_style { vertical-align: middle;}
.form1 .textarea_style { padding: 10px; height: 90px; resize: none; }
.form1 input[type="checkbox"] { width: 16px; aspect-ratio: 1; }

.form1 .submit_box { width:100%; padding-top:20px; }
.form1 .submit_box .btn01 { width:60%; text-align:center; font-weight:500; font-size:32px;letter-spacing:-2px; margin-top:20px; cursor:pointer; background-color:#000; color:#fff; padding:15px 0; }

.form1 .popup1 { color: inherit; font-weight: 600; }
.form1 .chk_wrap { justify-content: center; padding-block: 12px; }

.add { font-size:20px;line-height:120%; }

footer { background-color: #2d020d; color: #8da7b2; font-family: initial; padding-block: 3rem 4rem; font-size: 0.8rem; text-align: center; }

/* MOBILE
------------------------------------------------------------------------------------------------------------*/

@media screen and (max-width: 768px) {
    .form1 { padding-block: 2rem; flex-direction: column; gap: 1rem; }
    .form1 form { width: 100%; padding-inline: 1rem; }

    .form1 .form_table tbody :is(th, td, .input_style, .sel_style, .textarea_style) { font-size: 14px; }
    .form1 :is(p, .chk_wrap) { font-size: 14px; }
    .form1 .submit_box .btn01 { font-size: 20px; padding-bottom: 12px; }

    .form1 .chk_wrap { gap: 4px; }
    .form1 input[type="checkbox"] { width: 14px; }

    .form1 .form_table th label { padding: 1.4rem 1rem; }
    .form1 p br { display: none; }

    .contents:has(.map) h3 { font-size: 1rem; }
    .add { font-size: 1rem; }

    .top_btn img { width: 40px; }
}