/* 例: contact.css */

/* コンテナ設定 */
.container {
    max-width: 800px; /* フォームの幅を狭くする */
    margin: 0 auto;
    padding: 0 20px;
}

/* フォーム全体 */
.contact-form {
    padding: 30px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #f9f9f9;
}

.form-group {
    margin-bottom: 20px;
}

.form-group label {
    display: block;
    font-weight: bold;
    margin-bottom: 5px;
}

.form-group input[type="text"],
.form-group input[type="email"],
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box; 
}

.required {
    color: #cc0000;
    font-size: 0.9em;
    margin-left: 5px;
}

/* プライバシーポリシー同意チェックボックス */
.privacy-check label {
    display: inline;
    font-weight: normal;
}
.privacy-check input[type="checkbox"] {
    width: auto;
    margin-right: 10px;
}

/* 送信ボタン */
.submit-button {
    display: block;
    width: 100%;
    padding: 15px;
    background-color: #007bff; 
    color: white;
    font-size: 18px;
    font-weight: bold;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.3s;
    margin-top: 30px;
}
.submit-button:hover {
    background-color: #0056b3;
}

/* 会社情報セクション */
.info-section {
    margin-top: 50px;
}
.info-details {
    margin-bottom: 40px;
}
.info-details dt {
    font-weight: bold;
    margin-top: 15px;
    border-left: 3px solid #007bff;
    padding-left: 10px;
}
.info-details dd {
    margin-left: 0;
    padding-left: 13px;
}

/* ==================================== */
/* 🔴 地図エリアとデバッグルール */
/* ==================================== */

/* 🔴 地図プレースホルダー用の古い設定を上書き・削除 */
.map-area {
    /* height: 300px; ⬅️ 旧ルールを削除 */
    /* background-color: #e9e9e9; ⬅️ 旧ルールを削除 */
    /* display: flex; ⬅️ 旧ルールを削除 */
    margin-top: 30px; 
    /* 確実にブロック要素にする */
    display: block !important; 
}

/* <iframe> 自体に幅100%を適用し、親要素にフィットさせます */
.map-area iframe {
    width: 100%;
}

/* 🔴 ラベル/多言語切り替えのデバッグ用強制表示ルール (最後に配置) */
.lang-en.hidden,
.hidden {
    display: none !important;
}

.form-group label {
    display: block !important; /* ブロック要素として強制的に表示 */
    visibility: visible !important; /* 確実に可視化 */
    position: relative !important; /* 位置の問題も回避 */
    height: auto !important; /* 高さが0になるのを防ぐ */
    opacity: 1 !important; /* 透明度を1に戻す */
    z-index: 9999 !important; /* 他の要素の下に隠れるのを防ぐ */
    padding: 0;
    margin: 5px 0;
    color: #333 !important; /* 文字色を強制的に設定 */
}