:root {
    --color-primary: #205094;
    --color-primary-hover: #10294d;
    --color-secondary: black;
    --color-secondary-hover: rgb(95, 95, 95);
}

/* 입력항목 기본 Css */
.input_section {
    position: relative;
    display: flex;
    flex-direction: column;
    margin-bottom: 25px;
}
.input_section .x_gap {
    display: flex;
    gap: 10px;
}
.input_section .btn,
.input_section button {
    margin-left: 8px; 

    padding-top: 7px;
    padding-bottom: 7px;
    padding-left: 14px;
    padding-right: 14px;

    border-radius: 10px;
    font-weight: 600;
    color: #fff;
    background: var(--color-primary);

    min-width: 200px;

    transition: background-color 0.5s;
}
.input_section .btn:hover,
.input_section button:hover {
    background: var(--color-primary-hover);
}
.input_section button.btn-dark {
    background: var(--color-secondary);
    border-radius: 5px;
}
.input_section button.btn-dark:hover {
    background: var(--color-secondary-hover);
}
.input_section input,
.input_section select {
    padding-top: 7px;
    padding-bottom: 7px;
    padding-left: 14px;
    padding-right: 14px;

    border-radius: 10px;

    max-width: 200px;
}
.input_section input[disabled],
.input_section input[readonly],
.input_section select[disabled],
.input_section select.readonly {
    background-color: lightgray !important;
    pointer-events: none;
}
/* input 사이 구분자 */
.input_section .delimiter {
    line-height: 3;
    margin-left: 0.5em;
    margin-right: 0.5em;
}

/* 제목 */
.title {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: 700;
    color: var(--color-primary);
}

/* 주소 입력란 */
.input_section.address {
    row-gap: 7px;
}
.input_section.address .btn,
.input_section.address button {
    min-width: unset;
}
.input_section.address > input {
    max-width: none;
    width: 500px;
}
.input_section.address .zip input {
    border-radius: 10px 0 0 10px;
    width: 100px;
}
.input_section.address .zip .btn {
    border-radius: 0 10px 10px 0;
    margin-left: 0;

    position: relative;
    top: -2px;
    height: 42px;
}

/* 주민등록 입력란 */
.input_section input[name='text'][name='ssn11'],
.input_section #ssn11 {
    width: 8em;
}
.input_section input[name='text'][name='ssn12'],
.input_section #ssn12 {
    width: 8em;
}

/* 핸드폰 입력란 */
.input_section select[name='ph2_com'],
.input_section #ph2_com {
    width: 9em;
}
.input_section select[name^='ph'][name$='1'] {
    width: 6em;
}
.input_section input[type='text'][name^='ph'][name$='2'] {
    width: 6em;
}
.input_section input[type='text'][name^='ph'][name$='3'] {
    width: 6em;
}

/* 직업구분 입력란 */
.input_section input[type='text'][name='job_code'] {
    width: 40em;
    max-width: none;
}

/* 설명서 Css */
.description {
    padding-top: 5px;
    padding-bottom: 5px;
    border-radius: 10px;
}
.description.background {
    background: #EEEEEE;
}
.description * {
    font-size: 14px;
}

/* 항목 나열 Css */
.display-container .row div:nth-child(1) {
    font-weight: 600;
    color: var(--color-primary);
    border-right: solid 1px lightgray;
}
.display-container .row {
    margin-top: 8px;
    margin-bottom: 8px;
}

/* 계약서 및 약관 Css */
.accordion {
    margin-bottom: 8px;
}
.accordion > div:nth-child(1) {
    background-color: #EFF5F8;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 6px;
}
.accordion .btn {
    background-color: var(--color-primary);
    color: white;
    transition: background-color 0.5s;
}
.accordion .btn:hover {
    background-color: var(--color-primary-hover);
}
.accordion .checks label {
    width: 80px;
}
