@charset "UTF-8";
/* =====
 * FORM（お問い合わせ /contact/・売却ご相談 /contact/sell/・物件に関するお問い合わせ /contact/request/）
 *   サイドバー無しの単独レイアウト（body[data-layout="simple"]）：簡易ヘッダー＋見出し帯＋SATORI 埋め込みフォーム＋#Contact＋フッター
=================================================================== */
/* ===== ALL ===== */
/* レイアウト：サイドバー分の余白を無くし .container を中央寄せ（--container は :root で --side-width を参照しているため両方を上書き） */
body[data-layout="simple"] {--side-width: 0em;--container: min(69.125em, calc(100% - 6.1875em));}

/* 簡易ヘッダー（ロゴのみ） */
#FormHeader {padding: 1.5625em 3.125em 0;background: #f2f7f2;}
#FormHeader .site-title {margin: 0;font-size: 100%;line-height: 1;}
#FormHeader .site-title a {display: inline-flex;align-items: center;gap: .4375em;color: var(--green-light);}
#FormHeader .site-title img {width: 2.4375em;}
#FormHeader .site-title a > span {display: flex;flex-direction: column;gap: .5em;}
#FormHeader .site-title a > span span {font-size: 118.75%;font-weight: 700;letter-spacing: .1em;}
#FormHeader .site-title a > span span[lang="en"] {font-family: var(--font-en);font-size: 62.5%;font-weight: 500;letter-spacing: .1em;}

/* 見出し帯（data-type="form"）：淡緑地に英字＋日本語、下にグレー帯の案内文 */
#Billboard[data-type="form"] {height: auto;background: #f2f7f2;text-align: center;}
#Billboard[data-type="form"] .container {padding: 2.75em 0 3.5625em;}
#Billboard[data-type="form"] h1 {display: flex;flex-direction: column;align-items: center;gap: .875em;color: var(--green);font-family: var(--font-jp);font-size: 131.25%;font-weight: 700;letter-spacing: .1em;line-height: 1;text-wrap: balance;}
#Billboard[data-type="form"] h1 span[lang="en"] {font-family: var(--font-en);font-size: 152.38%;letter-spacing: .1em;}
#Billboard[data-type="form"] > p {display: flex;align-items: center;justify-content: center;min-height: 5.5em;margin: 0;padding: .5em 1.5em;background: #cecece;font-size: 87.5%;font-weight: 500;letter-spacing: .08em;line-height: 1.5;}

/* block-form-01：フォーム本体 */
#Main .block-form-01 {padding: 4.125em 0 4em;}
#Main .block-form-01 .container > * {width: min(62.5625em, 100%);margin-right: auto;margin-left: auto;}
/* お急ぎの方はこちら（/contact/ のみ） */
#Main .block-form-01 .urgent {display: flex;align-items: center;justify-content: space-between;gap: 2em;margin: 2.375em auto 4.9375em;padding: 1.75em 3.5em;border: 1.5px solid var(--green);}
#Main .block-form-01 .urgent h2 {position: relative;padding-left: 3.7368em;color: var(--green);font-size: 118.75%;letter-spacing: .1em;line-height: 1;}
#Main .block-form-01 .urgent h2 span[lang="en"] {position: absolute;top: calc(50% + .4828em);left: 0;display: inline-flex;align-items: center;justify-content: center;width: 1.8276em;height: 1.8276em;border-radius: 50%;background: #c9c9c9;color: var(--ink);font-family: var(--font-jp);font-size: 152.63%;line-height: 1;transform: translateY(-50%);}
#Main .block-form-01 .urgent h2 + p {margin: .8125em 0 0 4.4375em;font-weight: 500;letter-spacing: .04em;white-space: nowrap;line-height: 1;}
#Main .block-form-01 .urgent .tel {display: flex;flex-direction: column;margin: 0;line-height: 1;text-align: left;}
#Main .block-form-01 .urgent .tel span {font-weight: 500;letter-spacing: .04em;}
#Main .block-form-01 .urgent .tel a {margin: .2em 0;color: var(--green);font-family: var(--font-en);font-size: 231.25%;font-weight: 600;letter-spacing: .1em;}
#Main .block-form-01 .urgent .tel span:last-child {font-size: 87.5%;white-space: nowrap;}
/* お問い合わせ物件名（/contact/request/?property= の受け取り表示）2026-10-08 フォームより目立つカードに変更 */
#Main .block-form-01 .target {margin: 0 auto 3em;padding: 1.75em 2.25em 1.625em;border: 2px solid var(--green);border-radius: .5em;background: var(--green-pale);}
#Main .block-form-01 .target p {margin: 0;}
#Main .block-form-01 .target .label {display: inline-flex;align-items: center;height: 2em;padding: 0 1em;border-radius: 100em;background: var(--green);color: #fff;font-size: 81.25%;font-weight: 700;letter-spacing: .1em;line-height: 1;}
#Main .block-form-01 .target .name {margin-top: .5em;color: var(--green);font-size: 162.5%;font-weight: 700;letter-spacing: .06em;line-height: 1.4;}
#Main .block-form-01 .target .note {margin-top: .75em;padding-top: .875em;border-top: 1px solid var(--green-mist);font-size: 87.5%;font-weight: 500;letter-spacing: .04em;line-height: 1.5;}
/* SATORI 埋め込みの外枠（項目の見た目は SATORI クリエイティブ側で管理） */
#Main .block-form-01 .form-body {min-height: 20em;}
#Main .block-form-01 .form-body #satori__creative_container {width: 100%;}
#Main .block-form-01 .form-body #satori__creative_container img,
#Main .block-form-01 .form-body #satori__creative_container iframe {max-width: 100%;}
/* SATORI フォームの見た目をサイトのトーンに合わせる（2026-10-08）
 * SATORI は既定 CSS を <style> で差し込むため、#satori__creative_container から書いて上書きする（!important は使わない）。キー（クリエイティブ）が違っても同じ構造なので3フォーム共通 */
#Main .block-form-01 #satori__creative_container {--sf-line: #c9cfcb;--sf-error: #d23f3f;}
#Main .block-form-01 #satori__creative_container .satori__input_group {padding: 0 0 1.875em;}
#Main .block-form-01 #satori__creative_container .satori__horiz_group {gap: 0 1.5em;}
#Main .block-form-01 #satori__creative_container .satori__horiz_group .satori__input_group {padding-right: 0;}
#Main .block-form-01 #satori__creative_container .satori__input_group label:first-child {display: flex;flex-wrap: wrap;align-items: center;gap: .5em .625em;padding-bottom: .625em;color: var(--ink);font-size: 100%;font-weight: 700;letter-spacing: .06em;line-height: 1.4;}
#Main .block-form-01 #satori__creative_container .satori__require,
#Main .block-form-01 #satori__creative_container .satori__not_require {display: inline-flex;align-items: center;height: 1.8em;margin: 0;padding: 0 .6em;border-radius: .25em;font-size: 68.75%;font-weight: 700;letter-spacing: .1em;line-height: 1;}
#Main .block-form-01 #satori__creative_container .satori__require {background: var(--orange);color: #fff;}
#Main .block-form-01 #satori__creative_container .satori__not_require {background: #e6e6e6;color: #666;}
#Main .block-form-01 #satori__creative_container .satori__system_notes {color: #888;font-size: 81.25%;font-weight: 500;letter-spacing: .04em;}
#Main .block-form-01 #satori__creative_container input[type="text"],
#Main .block-form-01 #satori__creative_container input[type="email"],
#Main .block-form-01 #satori__creative_container input[type="tel"],
#Main .block-form-01 #satori__creative_container input[type="number"],
#Main .block-form-01 #satori__creative_container input[type="url"],
#Main .block-form-01 #satori__creative_container textarea {width: 100%;height: auto;padding: .875em 1em;border: 1px solid var(--sf-line);border-radius: .375em;background: #fff;box-shadow: none;color: var(--ink);font-size: 100%;font-weight: 500;letter-spacing: .04em;line-height: 1.5;transition: border-color ease 200ms, box-shadow ease 200ms;}
#Main .block-form-01 #satori__creative_container textarea {min-height: 11em;resize: vertical;}
#Main .block-form-01 #satori__creative_container input::placeholder,
#Main .block-form-01 #satori__creative_container textarea::placeholder {color: #aaa;}
#Main .block-form-01 #satori__creative_container input:focus,
#Main .block-form-01 #satori__creative_container textarea:focus {border-color: var(--green);background: #fff;box-shadow: 0 0 0 3px rgba(56, 96, 70, .15);}
#Main .block-form-01 #satori__creative_container .satori__input_group.error input,
#Main .block-form-01 #satori__creative_container .satori__input_group.error textarea {border-color: var(--sf-error);background: #fff8f8;}
#Main .block-form-01 #satori__creative_container .satori__error_messages {margin-top: .5em;color: var(--sf-error);font-size: 81.25%;font-weight: 500;letter-spacing: .04em;}
#Main .block-form-01 #satori__creative_container .satori__error_messages span + span::before {content: "／";}
/* チェックボックス（資料請求・内覧希望／プライバシーポリシー同意） */
#Main .block-form-01 #satori__creative_container input[type="checkbox"] {width: 1.25em;height: 1.25em;margin: 0 .5em 0 0;accent-color: var(--green);vertical-align: middle;cursor: pointer;}
#Main .block-form-01 #satori__creative_container input[type="checkbox"] + label {margin: 0 1.75em 0 0;padding: .25em 0;color: var(--ink);font-weight: 500;letter-spacing: .06em;vertical-align: middle;}
#Main .block-form-01 #satori__creative_container input[type="checkbox"] + label + input[type="checkbox"] {margin-left: 0;}
#Main .block-form-01 #satori__creative_container input[type="checkbox"]:checked + label {color: var(--green);font-weight: 700;}
/* プライバシーポリシー同意 */
#Main .block-form-01 #satori__creative_container #satori__privacy_policy_agreement_wrapper {margin: .75em 0 0;padding: 1.5em 1em .25em;border-top: 1px solid #e3e3e3;}
#Main .block-form-01 #satori__creative_container .satori__privacy_policy_url {margin: 0 0 .75em;font-size: 87.5%;font-weight: 500;letter-spacing: .04em;}
#Main .block-form-01 #satori__creative_container .satori__privacy_policy_url a {color: var(--green);text-decoration: underline;}
#Main .block-form-01 #satori__creative_container #satori__privacy_policy_agreement_wrapper .satori__input_group {display: flex;flex-wrap: wrap;align-items: center;justify-content: center;padding-bottom: 0;}
#Main .block-form-01 #satori__creative_container #satori__privacy_policy_agreement_wrapper label {display: inline-flex;align-items: center;gap: .5em;margin-right: 0;}
#Main .block-form-01 #satori__creative_container #satori__privacy_policy_agreement_wrapper .satori__error_messages {text-align: center;}
/* ボタン（確認画面へ／戻る／送信する）：サイトの .btn と同じ緑地＋白文字、hover でオレンジ */
#Main .block-form-01 #satori__creative_container .satori__submit_group {display: flex;flex-wrap: wrap;justify-content: center;gap: 1em;margin: 2.5em 0 0;}
#Main .block-form-01 #satori__creative_container .satori__btn {min-width: 17.5em;height: 3.5em;margin: 0;padding: 0 2em;border: 1.5px solid var(--green);border-radius: .375em;background: var(--green);color: #fff;font-family: var(--font-jp);font-size: 100%;font-weight: 700;letter-spacing: .12em;opacity: 1;transition: background-color ease 300ms, border-color ease 300ms, color ease 300ms;}
#Main .block-form-01 #satori__creative_container .satori__btn:hover {border-color: var(--orange);background: var(--orange);opacity: 1;}
#Main .block-form-01 #satori__creative_container .satori__btn.cancel {background: #fff;color: var(--green);}
#Main .block-form-01 #satori__creative_container .satori__btn.cancel:hover {border-color: var(--green);background: var(--green-pale);}
#Main .block-form-01 #satori__creative_container .satori__btn:disabled {border-color: #ccc;background: #ccc;color: #fff;}
/* 物件名を自動入力したとき（/contact/request/?property=）は「物件名_仲介」の行を隠す（誤って書き換えられないように。値は送信される）
 * class を JS で付けると SATORI の再描画（入力エラー時など）で外れるため、:has で行を特定して CSS だけで隠す */
#Main .block-form-01 .form-body[data-prefill="property"] #satori__creative_container .satori__input_group:has(> input[name="custom_field[a758f5ed697a42ae2]"]) {display: none;}

/* SP では下部固定ナビが無いので body の余白を戻す */
@media (width < 769px) {
  body[data-layout="simple"] {padding-bottom: 0;}
  /* SP：通常ヘッダー（common.css）と同じ見え方（高さ 58px・ロゴ 2em・「エールの仲介」128.5%＋「YELL PRODUCE」85.7% 横並び） */
  #FormHeader {display: flex;align-items: center;height: 4.15em;padding: 0 2em;background: #fff;}
  #FormHeader .site-title a {gap: .625em;}
  #FormHeader .site-title img {width: 2em;}
  #FormHeader .site-title a > span {flex-direction: row;align-items: center;gap: .75em;}
  #FormHeader .site-title a > span span {font-size: 128.5%;}
  #FormHeader .site-title a > span span[lang="en"] {order: 2;font-size: 85.7%;}
  #Billboard[data-type="form"] {padding: 0;}
  #Billboard[data-type="form"] .container {padding: 2em 0 2.25em;}
  #Billboard[data-type="form"] h1 {gap: .625em;font-size: 112.5%;}
  #Billboard[data-type="form"] > p {min-height: 0;padding: 1em 1.43em;font-size: 92.9%;text-align: left;}
  #Main .block-form-01 {padding: 2em 0 2.5em;}
  #Main .block-form-01 .target {margin-bottom: 2em;padding: 1.14em 1.14em 1em;}
  #Main .block-form-01 .target .label {font-size: 85.7%;}
  #Main .block-form-01 .target .name {font-size: 128.5%;}
  #Main .block-form-01 .target .note {font-size: 92.9%;}
  #Main .block-form-01 #satori__creative_container .satori__input_group {padding-bottom: 1.43em;}
  #Main .block-form-01 #satori__creative_container .satori__horiz_group {gap: 0 .86em;}
  #Main .block-form-01 #satori__creative_container .satori__input_group label:first-child {font-size: 100%;}
  #Main .block-form-01 #satori__creative_container input[type="text"],
  #Main .block-form-01 #satori__creative_container input[type="email"],
  #Main .block-form-01 #satori__creative_container input[type="tel"],
  #Main .block-form-01 #satori__creative_container input[type="number"],
  #Main .block-form-01 #satori__creative_container input[type="url"],
  #Main .block-form-01 #satori__creative_container textarea {padding: .75em .86em;font-size: max(16px, 1em);}   /* iOS は 16px 未満の入力欄にフォーカスすると画面が拡大されるため最小 16px */
  #Main .block-form-01 #satori__creative_container #satori__privacy_policy_agreement_wrapper {padding: 1.14em 0 0;}
  #Main .block-form-01 #satori__creative_container .satori__privacy_policy_url {text-align: left;}
  #Main .block-form-01 #satori__creative_container .satori__submit_group {margin-top: 2em;}
  #Main .block-form-01 #satori__creative_container .satori__btn {width: 100%;min-width: 0;}
  #Main .block-form-01 .urgent {display: block;margin: 0 auto 2.5em;padding: 1.25em 1.25em 1.375em;}
  #Main .block-form-01 .urgent h2 {padding-left: 3.2353em;font-size: 106.25%;}
  #Main .block-form-01 .urgent h2 span[lang="en"] {width: 1.8182em;height: 1.8182em;font-size: 129.41%;}
  #Main .block-form-01 .urgent h2 + p {margin: .75em 0 0 3.5em;font-size: 100%;line-height: 1.5;white-space: normal;}
  #Main .block-form-01 .urgent .tel {margin-top: 1.25em;padding-top: 1.125em;border-top: 1px solid #d9dedb;align-items: center;text-align: center;}
  #Main .block-form-01 .urgent .tel a {font-size: 200%;}
}
