/* Styling for corporate membership forms */

/*
 * Enlarged and accessible input styles for the SHD hire corporate forms.
 * We set the width to 100% so the field spans the available container and
 * increase the padding and font-size for better usability on desktop and mobile.
 */
.shd-corp-register-form input,
.shd-corp-login-form input,
.shd-corp-reset-form input {
    width: 100%;
    max-width: 600px;
    padding: 16px 20px;
    font-size: 1.18rem;
    box-sizing: border-box;
    border: 1px solid #ccc;
    border-radius: 6px;
    margin-top: 6px;
}

.shd-corp-register-form label,
.shd-corp-login-form label,
.shd-corp-reset-form label {
    display: block;
    font-weight: 600;
    margin-bottom: 4px;
}

.shd-corp-register-form p,
.shd-corp-login-form p,
.shd-corp-reset-form p {
    margin-bottom: 16px;
}

/* Style the submit buttons larger as well */
.shd-corp-register-form .button,
.shd-corp-login-form .button,
.shd-corp-reset-form .button {
    padding: 14px 28px;
    font-size: 1.1rem;
    border-radius: 6px;
}

/* ===== Hire Booking Forms (Airport/Hourly etc.) ===== */
.shd-hire-form input,
.shd-hire-form select,
.shd-hire-form textarea{
    width: 100%;
    max-width: 100%;
    padding: 16px 20px;
    font-size: 1.16rem;
    box-sizing: border-box;
    border: 1px solid #cfcfcf;
    border-radius: 10px;
}

.shd-hire-form textarea{
    min-height: 120px;
}

.shd-hire-form label{
    display: block;
    font-weight: 600;
}

.shd-hire-form input::placeholder,
.shd-hire-form textarea::placeholder{
    font-size: 1rem;
    opacity: 0.72;
}

.shd-hire-form label{
    font-size: 1.02rem;
}

.shd-hire-form .shd-hourly-price,
.shd-hire-form .shd-price-note,
.shd-hire-form .shd-inline-help{
    font-size: 1rem;
}

.shd-hire-form p{
    margin: 0 0 18px 0;
}

.shd-row{
    display:flex;
    flex-wrap:wrap;
    gap:16px;
    margin: 0 0 18px 0;
}
.shd-row .shd-col{
    flex: 1 1 0;
    min-width: 220px;
}

.shd-hire-submit-wrap{margin:18px 0 0}
.shd-hire-submit{
    width: 100%;
    padding: 16px 22px;
    font-size: 1.1rem;
    border-radius: 10px;
    border:1px solid #0a2540;
    background:#0a2540;
    color:#fff;
    font-weight:800;
    cursor:pointer;
}
.shd-hire-submit:hover,
.shd-hire-submit:focus{
    background:#12385d;
    border-color:#12385d;
    color:#fff;
}

@media (max-width: 640px){
    .shd-row{
        flex-direction:column;
    }
}


/* ===== 2カラム（ハイヤー専用：テーマと衝突しないクラス名） ===== */
.shd-hire-row{
    display:flex !important;
    flex-wrap:wrap;
    gap:16px;
    margin: 0 0 18px 0;
}
.shd-hire-row .shd-hire-col{
    flex: 1 1 0;
    min-width: 220px;
}
@media (max-width: 640px){
    .shd-hire-row{
        flex-direction:column;
    }
}


/* ===== チェックボックスを大きく・タップしやすく ===== */
.shd-hire-form input[type="checkbox"]{
    width: 22px;
    height: 22px;
    transform: scale(1.2);
    margin-right: 10px;
    cursor: pointer;
}

.shd-hire-form label input[type="checkbox"]{
    vertical-align: middle;
}

.shd-hire-message-action { margin-top: 12px; }
.shd-hire-message-action .button { min-width: 180px; text-align: center; }
