.contact-main{background:#f7f9fb;color:#454643}.contact-lead{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:72px 64px;background:#eaf4fa}.contact-lead h2{font-size:38px;line-height:1.5}.contact-lead h2 strong{color:var(--color-primary)}.contact-lead p{margin-top:24px;font-size:16px;line-height:2}.contact-points{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.contact-points span{display:grid;min-height:130px;place-items:center;padding:20px;background:#fff;color:var(--color-primary);font-size:18px;font-weight:700;text-align:center}.contact-form-wrap{max-width:1100px;margin:auto;padding:88px 64px 112px}.contact-main:not(.documents-form) .contact-form-wrap{max-width:1340px}.contact-form-note{margin-bottom:28px;color:#68717a;line-height:1.8}.contact-form{overflow:hidden;border:1px solid #d8e1e7;background:#fff}.form-row{display:grid;grid-template-columns:280px 1fr;border-bottom:1px solid #d8e1e7}.form-row:last-of-type{border-bottom:0}.form-label{padding:28px;background:#eaf4fa;font-weight:700;line-height:1.7}.required{display:inline-block;margin-left:8px;padding:2px 7px;background:var(--color-primary);color:#fff;font-size:11px}.optional{margin-left:8px;color:#68717a;font-size:11px}.form-field{padding:24px 28px}.form-field>input,.form-field>textarea{width:100%;padding:14px 16px;border:1px solid #bdcbd3;border-radius:3px;background:#fff;font:inherit}.form-field textarea{box-sizing:border-box;width:100%!important;max-width:100%;min-height:180px;resize:vertical}.form-help{margin:0 0 12px;color:#68717a;font-size:13px;line-height:1.7}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.choice-grid label{display:flex;align-items:center;gap:9px;padding:12px 14px;border:1px solid #d8e1e7;background:#f9fafb;cursor:pointer}.choice-grid input{width:18px;height:18px;accent-color:var(--color-primary)}.privacy-check{display:flex;justify-content:center;margin:32px 20px 0}.privacy-check label{display:flex;align-items:center;gap:10px}.privacy-check input{width:20px;height:20px;accent-color:var(--color-primary)}.form-actions{display:flex;justify-content:center;padding:32px}.form-actions button{min-width:360px;padding:18px 30px;border:0;text-shadow:none;background:var(--color-primary);color:#fff;font-size:17px;font-weight:700;cursor:pointer}.form-actions button:hover{background:var(--color-primary-dark)}.thanks-card{max-width:850px;margin:96px auto;padding:64px;background:#fff;text-align:center}.thanks-card h2{color:var(--color-primary);font-size:34px}.thanks-card p{margin-top:22px;line-height:2}.thanks-card a{display:inline-block;margin-top:32px;padding:14px 32px;background:var(--color-primary);color:#fff}
@media(max-width:767px){.contact-lead{grid-template-columns:1fr;gap:32px;padding:48px 20px}.contact-lead h2{font-size:27px}.contact-lead p{font-size:14px}.contact-points span{min-height:90px;font-size:15px}.contact-form-wrap{padding:48px 20px 72px}.form-row{grid-template-columns:1fr}.form-label{padding:16px 18px}.form-field{padding:18px}.choice-grid{grid-template-columns:1fr}.form-actions button{width:100%;min-width:0}.thanks-card{margin:48px 20px;padding:40px 20px}.thanks-card h2{font-size:27px}}
/* Mailform Pro 確認画面(入力内容をご確認ください)。mfp.statics/mailformpro.css をサイトに合わせて上書き */
div#mfp_phase_confirm{max-width:1100px;margin:0 auto;padding:0 64px 96px;color:#454643}
div#mfp_phase_confirm h4{margin:0 0 32px;font-size:32px;line-height:1.5}
div#mfp_phase_confirm table#mfp_confirm_table{border:1px solid #d8e1e7;background:#fff}
div#mfp_phase_confirm table#mfp_confirm_table tr th,div#mfp_phase_confirm table#mfp_confirm_table tr td{padding:10px 24px;border-top:1px solid #d8e1e7;font-size:16px;line-height:1.8}
div#mfp_phase_confirm table#mfp_confirm_table tr th{width:280px;background:#eaf4fa;font-weight:700}
div#mfp_phase_confirm table#mfp_confirm_table tr.mfp_colored,div#mfp_phase_confirm table#mfp_confirm_table tr.mfp_achroma{background:#fff}
div#mfp_phase_confirm div.mfp_buttons{display:flex;justify-content:center;gap:16px;padding:40px 0 0}
div#mfp_phase_confirm div.mfp_buttons button.mfp_element_button{min-width:240px;padding:18px 30px;border:1px solid var(--color-primary);border-radius:5px;background:var(--color-primary);background-image:none;box-shadow:none;color:#fff;font-size:17px;font-weight:700;text-shadow:none;cursor:pointer}
div#mfp_phase_confirm div.mfp_buttons button.mfp_element_button:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);background-image:none}
div#mfp_phase_confirm div.mfp_buttons button#mfp_button_cancel{background:#fff;background-image:none;color:var(--color-primary)}
div#mfp_phase_confirm div.mfp_buttons button#mfp_button_cancel:hover{background:#eaf4fa;border-color:var(--color-primary);color:var(--color-primary)}
@media(max-width:767px){div#mfp_phase_confirm{padding:0 20px 64px}div#mfp_phase_confirm h4{font-size:24px}div#mfp_phase_confirm table#mfp_confirm_table tr th{width:100%;padding:10px 16px 4px;border-top:1px solid #d8e1e7}div#mfp_phase_confirm table#mfp_confirm_table tr td{padding:4px 16px 10px;border-top:0}div#mfp_phase_confirm div.mfp_buttons{flex-direction:column-reverse}div#mfp_phase_confirm div.mfp_buttons button.mfp_element_button{width:100%;min-width:0}}
