/* page-specific: contact (delta over base.css) */
.ct-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.ct-info h2{font-size:1.4rem;margin:0 0 .5em}
.ct-info p{color:#42566b;font-size:1rem;line-height:1.9;margin-bottom:1.4em}
.ct-methods{display:grid;gap:13px}
.ct-m{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px 19px}
.ct-m .ic{flex:none;width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,#FBE3D7,#FBE9D2);display:grid;place-items:center;color:var(--coral)}
.ct-m .ic svg{width:22px;height:22px}
.ct-m .lb{font-family:"Inter";font-size:.66rem;letter-spacing:.1em;color:var(--muted);font-weight:700}
.ct-m .vv{font-weight:700;color:var(--ink);font-size:1rem;margin-top:2px;line-height:1.6}
.ct-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px 36px;box-shadow:var(--shadow)}
.ct-card .note{font-size:.8rem;color:var(--muted);background:var(--wash);border-radius:10px;padding:.7em 1em;margin-bottom:24px;line-height:1.6}
.field{margin-bottom:19px}
.field label{display:block;font-weight:700;font-size:.9rem;color:var(--ink);margin-bottom:7px}
.field label .req{color:#fff;background:var(--coral);font-size:.6rem;font-weight:700;padding:.12em .5em;border-radius:5px;margin-left:.4em;vertical-align:middle}
.field input,.field textarea{width:100%;border:1.5px solid var(--line);border-radius:11px;padding:13px 15px;font-family:inherit;font-size:.96rem;color:var(--text);background:#fff;transition:.2s}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--sun);box-shadow:0 0 0 3px rgba(242,166,90,.18)}
.field textarea{min-height:140px;resize:vertical}
.tel-row{display:flex;align-items:center;gap:10px;max-width:330px}
.tel-row input{text-align:center}
.tel-row span{color:var(--muted);font-weight:700}
.ct-submit{width:100%;justify-content:center;font-size:1.02rem;padding:1em;margin-top:4px}
@media(max-width:920px){.ct-grid{grid-template-columns:1fr;gap:34px}}
@media(max-width:560px){.ct-card{padding:24px 20px}}

/* ============ フォームプラグイン出力（MW WP Form 等）を枠デザインに整える ============ */
.ct-card{min-width:0}
.ct-info{min-width:0}
.ct-m .vv{overflow-wrap:anywhere}
.s365-form-embed{font-size:1rem;line-height:1.8;color:var(--text)}
.s365-form-embed *{box-sizing:border-box;max-width:100%}
.s365-form-embed p{margin:0 0 16px}
.s365-form-embed label{display:inline-block;font-weight:700;color:var(--ink);font-size:.95rem;margin-bottom:4px;line-height:1.6}
.s365-form-embed h1,.s365-form-embed h2,.s365-form-embed h3,.s365-form-embed h4,.s365-form-embed h5{font-size:1.05rem;font-weight:700;color:var(--ink);margin:0 0 8px;line-height:1.5}
.s365-form-embed input[type=text],.s365-form-embed input[type=email],.s365-form-embed input[type=tel],.s365-form-embed input[type=url],.s365-form-embed input[type=number],.s365-form-embed input[type=password],.s365-form-embed input[type=date],.s365-form-embed select,.s365-form-embed textarea{width:100%;border:1.5px solid var(--line);border-radius:11px;padding:13px 15px;font-family:inherit;font-size:1rem;color:var(--text);background:#fff;transition:.2s;margin-top:4px}
.s365-form-embed input:focus,.s365-form-embed select:focus,.s365-form-embed textarea:focus{outline:none;border-color:var(--sun);box-shadow:0 0 0 3px rgba(242,166,90,.18)}
.s365-form-embed textarea{min-height:150px;resize:vertical}
/* 電話・郵便番号などの分割フィールドは横並び・自動幅 */
.s365-form-embed .mwform-tel-field,.s365-form-embed .mwform-zip-field{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.s365-form-embed .mwform-tel-field input,.s365-form-embed .mwform-zip-field input{width:5.5em;min-width:0;margin-top:0;text-align:center}
/* チェックボックス・ラジオ */
.s365-form-embed .mwform-checkbox-field,.s365-form-embed .mwform-radio-field{display:inline-flex;align-items:center;gap:6px;margin:0 14px 6px 0;font-weight:500}
.s365-form-embed .mwform-checkbox-field input,.s365-form-embed .mwform-radio-field input{width:auto;margin:0}
/* 送信・確認・戻るボタン */
.s365-form-embed input[type=submit],.s365-form-embed button[type=submit],.s365-form-embed button{width:100%;border:none;border-radius:999px;padding:1em 1.4em;font-family:inherit;font-weight:800;font-size:1rem;color:#fff;background:linear-gradient(135deg,var(--coral),var(--sun));cursor:pointer;margin-top:10px;transition:.2s}
.s365-form-embed input[type=submit]:hover,.s365-form-embed button:hover{filter:brightness(1.05);transform:translateY(-1px)}
.s365-form-embed input[name="submitBack"],.s365-form-embed .mw_wp_form_confirm input[type=submit]{background:#fff;color:var(--brand);border:1.5px solid var(--line)}
/* エラー表示 */
.s365-form-embed .error{display:block;color:#d9534f;font-size:.85rem;font-weight:700;margin-top:4px}
/* テーブルレイアウトのフォームはスマホで縦積み */
.s365-form-embed table{width:100%;border-collapse:collapse}
@media(max-width:560px){
  .s365-form-embed table,.s365-form-embed tbody,.s365-form-embed tr,.s365-form-embed th,.s365-form-embed td{display:block;width:100%}
  .s365-form-embed th{text-align:left;padding:0 0 4px}
  .s365-form-embed td{padding:0 0 14px}
}
