@charset "utf-8";

/* 상담 신청 전용 스킨: 그누보드 기본 폼 CSS를 유지하고 페이지 구성에 필요한 부분만 보완 */
.nw_sub_container #container_title {display:none}
.nw_sub_wrapper {padding:0;overflow:hidden}
.nw_consult_page {width:100vw;margin-left:calc(50% - 50vw);color:#2f2a29;background:#fff}
.nw_consult_hero {position:relative;height:360px;overflow:hidden;background:#ead9d2}
.nw_consult_hero > img {display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.nw_consult_hero_overlay {position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,249,244,.93) 0%,rgba(255,249,244,.75) 43%,rgba(255,249,244,.10) 72%)}
.nw_consult_hero_inner {position:absolute;z-index:2;top:50%;left:50%;width:1120px;max-width:calc(100% - 40px);transform:translate(-50%,-50%)}
.nw_consult_eyebrow {margin-bottom:12px;color:#9f3146;font-size:.82em;font-weight:600;letter-spacing:.22em}
.nw_consult_hero h2 {margin:0;color:#8f1730;font-size:2.75em;line-height:1.35;font-weight:700;letter-spacing:-.035em}
.nw_consult_hero h2:after {display:block;width:58px;height:2px;margin-top:22px;background:#9f3146;content:""}
.nw_consult_hero p:last-child {margin-top:20px;color:#4f4744;font-size:1.02em;line-height:1.8}

.nw_consult_body {width:760px;max-width:calc(100% - 40px);margin:0 auto;padding:68px 0 90px}
.nw_consult_head {margin-bottom:34px;text-align:center}
.nw_consult_head > span {display:block;margin-bottom:10px;color:#aa5b68;font-size:.78em;font-weight:600;letter-spacing:.28em}
.nw_consult_head h3 {margin:0;color:#2f2a29;font-size:2em;line-height:1.45;font-weight:700}
.nw_consult_head h3:after {display:block;width:30px;height:2px;margin:16px auto 0;background:#a72d43;content:""}
.nw_consult_head p {margin-top:18px;color:#666;line-height:1.8}

.nw_consult_complete {margin:0 0 24px;padding:20px 24px;border:1px solid #edd8dd;background:#fff8f9;text-align:center}
.nw_consult_complete strong {display:block;color:#8f1730;font-size:1.08em}
.nw_consult_complete p {margin-top:5px;color:#666}

.nw_consult_form {padding:32px 34px;border:1px solid #eee;background:#fff;box-shadow:0 12px 35px rgba(61,42,38,.07)}
.nw_consult_field {margin-bottom:24px}
.nw_consult_field > label,.nw_consult_choice legend,.nw_consult_label {display:block;margin-bottom:9px;color:#333;font-size:.96em;font-weight:600}
.nw_consult_field em {color:#a5122f;font-style:normal}
.nw_consult_form .frm_input {width:100%;height:48px;padding:0 14px;border:1px solid #d9d9d9;border-radius:2px;background:#fff;color:#333;font-size:.96em;box-shadow:none}
.nw_consult_form select.frm_input {padding-right:36px}
.nw_consult_form .frm_input:focus {border-color:#9e3347;box-shadow:0 0 0 2px rgba(158,51,71,.08);outline:0}
.nw_consult_choice {padding:0;border:0}
.nw_consult_help {margin:-2px 0 10px;color:#888;font-size:.88em}
.nw_consult_radio_row {display:flex;flex-wrap:wrap;gap:12px 36px}
.nw_consult_radio_row label {display:inline-flex;align-items:center;gap:8px;color:#454545;cursor:pointer}
.nw_consult_radio_row input {width:18px;height:18px;margin:0;accent-color:#9e3347}
.nw_consult_privacy_check {padding-top:3px}
.nw_consult_privacy_check > label {display:flex;align-items:flex-start;gap:9px;margin:0;font-weight:400;line-height:1.6;cursor:pointer}
.nw_consult_privacy_check input {flex:0 0 auto;width:18px;height:18px;margin-top:3px;accent-color:#9e3347}
.nw_consult_privacy_check a {color:#8f1730;text-decoration:underline}

.nw_consult_captcha #captcha {display:block;margin:0;padding:16px;border:1px solid #e4e4e4;background:#fafafa}
.nw_consult_captcha #captcha_img {border-color:#ddd}
.nw_consult_captcha #captcha_key {border-color:#d9d9d9;background:#fff}
.nw_consult_captcha #captcha_info {margin-top:8px;color:#777;letter-spacing:0}

.nw_consult_submit {margin-top:30px}
.nw_consult_submit .btn_submit {display:block;width:100%;height:54px;border:0;border-radius:2px;background:#98001f;color:#fff;font-size:1em;font-weight:600;cursor:pointer}
.nw_consult_submit .btn_submit:hover {background:#7f001a}
.nw_consult_submit .btn_submit:disabled {opacity:.6;cursor:default}
.nw_consult_submit .btn_submit span {margin-left:8px}

.nw_consult_privacy_note {display:flex;gap:14px;margin-top:24px;padding:20px 22px;border:1px solid #eee;background:#fafafa;color:#666;line-height:1.7}
.nw_consult_privacy_note > i {flex:0 0 auto;margin-top:3px;color:#981d36}
.nw_consult_privacy_note strong {display:block;margin-bottom:3px;color:#3f3836}
.nw_consult_privacy_note p {margin:0;font-size:.9em}

@media (max-width:900px) {
    .nw_consult_hero {height:320px}
    .nw_consult_hero_inner {max-width:calc(100% - 48px)}
    .nw_consult_hero h2 {font-size:2.35em}
    .nw_consult_body {max-width:calc(100% - 48px);padding:58px 0 78px}
}

@media (max-width:640px) {
    .nw_consult_page {font-size:14px}
    .nw_consult_hero {height:290px}
    .nw_consult_hero > img {object-position:42% center}
    .nw_consult_hero_overlay {background:linear-gradient(90deg,rgba(255,249,244,.94),rgba(255,249,244,.78) 72%,rgba(255,249,244,.32))}
    .nw_consult_hero_inner {max-width:calc(100% - 32px)}
    .nw_consult_hero h2 {font-size:2em}
    .nw_consult_hero p:last-child {font-size:.95em}
    .nw_consult_body {max-width:calc(100% - 28px);padding:46px 0 64px}
    .nw_consult_head {margin-bottom:26px}
    .nw_consult_head h3 {font-size:1.65em}
    .nw_consult_form {padding:24px 18px;box-shadow:0 7px 24px rgba(61,42,38,.06)}
    .nw_consult_field {margin-bottom:21px}
    .nw_consult-form .frm_input,.nw_consult_form .frm_input {height:46px;font-size:16px}
    .nw_consult_radio_row {display:grid;grid-template-columns:1fr 1fr;gap:12px}
    .nw_consult_captcha #captcha {padding:12px}
    .nw_consult_captcha #captcha.m_captcha audio {max-width:100%}
    .nw_consult_captcha #captcha.m_captcha #captcha_img {max-width:100%}
    .nw_consult_submit .btn_submit {height:52px}
    .nw_consult_privacy_note {padding:17px 16px}
}

/* 生年月日: ブラウザ依存の日付UIを使わず、日本語の年・月・日選択に統一 */
.nw_consult_birth_row {display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:10px}
.nw_consult_birth_select {display:block;margin:0}
.nw_consult_birth_select .frm_input {width:100%}
@media (max-width:640px) {
    .nw_consult_birth_row {grid-template-columns:1.45fr 1fr 1fr;gap:7px}
}

/* 상담폼 필수값 오류: 브라우저 alert 대신 해당 입력항목 아래에서 일본어로 안내 */
.nw_consult_error {display:none;margin:8px 0 0;color:#a40020;font-size:.88em;font-weight:500;line-height:1.55}
.nw_consult_error.is_visible {display:block}
.nw_consult_field.nw_has_error .frm_input,
.nw_consult_field.nw_has_error #captcha_key {border-color:#a40020;box-shadow:0 0 0 2px rgba(164,0,32,.07)}
.nw_consult_choice.nw_has_error .nw_consult_radio_row,
.nw_consult_privacy_check.nw_has_error > label {color:#8f1730}
.nw_consult_field [aria-invalid="true"]:focus {outline:none}

/* 상담페이지 폰트 크기 정책 - 2026-09-17 */
.nw_consult_page {font-size:14px}
.nw_consult_hero h2,.nw_consult_head h3 {font-size:24px}
.nw_consult_hero p:last-child,.nw_consult_head p,.nw_consult_complete strong,.nw_consult_complete p,
.nw_consult_field > label,.nw_consult_choice legend,.nw_consult_label,.nw_consult_form .frm_input,.nw_consult_radio_row label,
.nw_consult_privacy_check > label,.nw_consult_submit .btn_submit,.nw_consult_privacy_note strong,.nw_consult_privacy_note p {font-size:16px}
.nw_consult_eyebrow,.nw_consult_head > span,.nw_consult_help,.nw_consult_captcha #captcha_info,.nw_consult_error {font-size:14px}

/* 2026-10-06 상담항목 간소화: 상담내용 입력영역 */
.nw_consult_form textarea.frm_input.nw_consult_textarea {height:180px;min-height:180px;padding:14px;line-height:1.8;resize:vertical}
@media (max-width:640px) {
    .nw_consult_form textarea.frm_input.nw_consult_textarea {height:160px;min-height:160px}
}


/* 2026-10-16 업체 추가수정 17페이지: 모바일 지정 줄바꿈 */
.nw_consult_mobile_text {display:none}
.nw_consult_desktop_text {display:inline}
@media (max-width:640px) {
    .nw_consult_desktop_text {display:none}
    .nw_consult_mobile_text {display:block}
    .nw_consult_mobile_text > span {display:block}
    .nw_consult_hero_desc,
    .nw_consult_head_desc {word-break:keep-all;overflow-wrap:normal}
}

/* 2026-10-16 모바일 상담폼: 개인정보 동의/이미지 인증 크기 보정 */
@media (max-width:640px) {
    .nw_consult_privacy_check > label {
        display:grid;
        grid-template-columns:18px minmax(0,1fr);
        align-items:start;
        gap:8px;
    }
    .nw_consult_privacy_check input {
        width:18px;
        height:18px;
        margin:2px 0 0;
    }
    .nw_consult_privacy_check > label > span {
        min-width:0;
        font-size:14px;
        line-height:1.55;
        letter-spacing:-.02em;
        word-break:normal;
        overflow-wrap:normal;
    }

    .nw_consult_captcha #captcha.m_captcha {
        width:auto;
        max-width:100%;
        padding:10px;
    }
    .nw_consult_captcha #captcha.m_captcha audio {
        display:block;
        width:250px;
        max-width:100%;
        height:36px;
        margin:0 0 8px;
    }
    .nw_consult_captcha #captcha.m_captcha #captcha_img {
        display:inline-block;
        width:130px;
        max-width:42%;
        height:auto;
        margin:0 3px 0 0;
        vertical-align:middle;
    }
    .nw_consult_captcha #captcha.m_captcha #captcha_key {
        display:inline-block;
        width:88px;
        height:36px;
        margin:0 3px 0 0;
        padding:0 5px;
        font-size:17px;
        line-height:36px;
        vertical-align:middle;
        box-sizing:border-box;
    }
    .nw_consult_captcha #captcha.m_captcha #captcha_reload {
        position:static;
        display:inline-block;
        width:40px;
        height:40px;
        margin:0;
        vertical-align:middle;
    }
    .nw_consult_captcha #captcha.m_captcha #captcha_info {
        margin:7px 0 0;
        font-size:13px;
        line-height:1.45;
        letter-spacing:0;
    }
}
