/* ===== header ===== */
.navCenter{
    display:flex;
    justify-content:center;
    gap:18px;
    flex-wrap:wrap;
    align-items:center;
    padding:12px 0 6px;
}
.navBtn, .navLink{
    border:2px solid var(--line);
    border-radius:999px;
    padding:10px 14px;
    font-weight:900;
    font-size:1rem;
    background:#fff;
    color:var(--black);
    text-decoration:none;
    cursor:pointer;
    box-shadow:0 4px 0 rgba(0,0,0,0.25);
    transition:transform .08s ease, box-shadow .08s ease, filter .12s ease;
}
.navBtn:hover, .navLink:hover{
    transform:translateY(-1px);
    filter:saturate(1.05)
}
.navBtn:active, .navLink:active{
    transform:translateY(1px);
    box-shadow:none
}
/* ===== form ===== */
.formGrid{
margin-top:14px;
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:12px;
}
.field{display:flex;flex-direction:column;gap:6px}
.label{font-size:0.95rem;color:var(--black)}
.control{
width:100%;
padding:8px 12px;
border:2px solid var(--line);
border-radius:14px;
font-size:0.9rem;
background:#fff;
color:var(--black);
}

/* ✅ 設定用プルダウン */
.control.setting{
background:var(--settingYellow);
cursor:pointer;
}
.control.setting.open{
border-color:var(--primary);
box-shadow:0 0 0 4px rgba(37,99,235,.18);
}

.wrap{max-width:1100px;margin:0 auto;padding:16px}
.panel{
margin-top:18px;
border:2px solid var(--line);
border-radius:var(--radius);
padding:16px;
}
.hidden{display:none}

.panelHead{
display:flex;
justify-content:space-between;
align-items:flex-end;
gap:12px;
flex-wrap:wrap;
}
.panelHead h2{margin:0;font-size:1.25rem}
.hint{margin:0;color:var(--black);font-size:0.95rem}
.hint.small{margin-top:10px}
.panelRight{display:flex;gap:10px;flex-wrap:wrap}
/* ===== buttons ===== */
.primary{
padding:12px 18px;
border-radius:999px;
border:2px solid var(--line);
background:linear-gradient(180deg, #3b82f6 0%, #2563eb 55%, #1d4ed8 100%);
color:#fff;
font-weight:900;
cursor:pointer;
box-shadow:0 7px 0 var(--primaryShadow);
transition:transform .08s ease, box-shadow .08s ease, filter .12s ease;
}
.primary:hover{transform:translateY(-1px); filter:saturate(1.05)}
.primary:active{transform:translateY(2px); box-shadow:none}
.primary:disabled{
background:#ccc;
color:#222;
cursor:not-allowed;
box-shadow:none;
filter:none;
}


.contact-success {
color: #dc2626;        /* 赤 */
font-size: 1.4rem;     /* 大きく */
font-weight: 800;
}
.required {
    color: red;
}