.ea-contact{padding:5rem 0 6rem;background:var(--ea-bg-alt)}.ea-contact__grid{display:grid;grid-template-columns:1fr 380px;gap:3rem;max-width:1100px;margin:0 auto}.ea-contact__form-wrap{background:var(--ea-bg-card);border:1px solid var(--ea-border);border-radius:8px;padding:3rem}.ea-contact__form-title{font-family:"Noto Sans JP",sans-serif;font-size:1.2rem;font-weight:700;color:var(--ea-navy);margin-bottom:.4rem}.ea-contact__form-desc{font-size:.85rem;color:var(--ea-gray-text);margin-bottom:2rem}.ea-contact__sidebar{display:flex;flex-direction:column;gap:1.5rem}.ea-contact__card{background:var(--ea-bg-card);border:1px solid var(--ea-border);border-radius:8px;padding:2rem}.ea-contact__card-title{font-family:"Noto Sans JP",sans-serif;font-size:1rem;font-weight:700;color:var(--ea-navy);margin-bottom:1.2rem;display:flex;align-items:center;gap:.5rem}.ea-contact__card-title svg{width:18px;height:18px;flex-shrink:0}.ea-contact__info-row{display:flex;gap:.8rem;margin-bottom:.8rem;font-size:.85rem}.ea-contact__info-label{font-weight:600;color:var(--ea-navy);min-width:60px;flex-shrink:0}.ea-contact__info-value{color:var(--ea-text-secondary);line-height:1.6}.ea-contact__dl-card{background:var(--ea-bg-card);border:1px solid var(--ea-border);border-radius:8px;padding:2rem;position:relative;overflow:hidden}.ea-contact__dl-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--ea-red)}.ea-contact__dl-title{font-family:"Noto Sans JP",sans-serif;font-size:1rem;font-weight:700;color:var(--ea-navy);margin-bottom:.6rem}.ea-contact__dl-desc{font-size:.82rem;color:var(--ea-text-secondary);line-height:1.7;margin-bottom:1.5rem}.ea-contact__dl-btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--ea-navy);color:#fff;padding:.7rem 1.5rem;font-size:.82rem;font-weight:600;letter-spacing:.04em;border-radius:4px;transition:all .3s;border:none;cursor:pointer}.ea-contact__dl-btn:hover{background:var(--ea-navy-light);transform:translateY(-1px);box-shadow:var(--ea-shadow-md)}.ea-contact__dl-btn svg{width:14px;height:14px}.ea-form-group{margin-bottom:1.5rem}.ea-form-label{display:block;font-size:.82rem;font-weight:600;color:var(--ea-navy);margin-bottom:.5rem}.ea-form-label .ea-required{color:var(--ea-red);font-size:.75rem;margin-left:.3rem}.ea-form-input,.ea-form-select,.ea-form-textarea{width:100%;padding:.75rem 1rem;font-size:.88rem;font-family:"EB Garamond","Noto Sans JP",serif;color:var(--ea-text);background:var(--ea-bg);border:1px solid var(--ea-border);border-radius:4px;transition:border-color .3s,box-shadow .3s;outline:none}.ea-form-input:focus,.ea-form-select:focus,.ea-form-textarea:focus{border-color:var(--ea-red);box-shadow:0 0 0 3px var(--ea-red-light)}.ea-form-input::placeholder,.ea-form-textarea::placeholder{color:var(--ea-gray-text);opacity:.6}.ea-form-select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236b6b80' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.ea-form-textarea{min-height:140px;resize:vertical;line-height:1.7}.ea-form-submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;background:var(--ea-red);color:#fff;padding:1rem 2rem;font-size:.88rem;font-weight:600;letter-spacing:.04em;border-radius:4px;border:none;cursor:pointer;transition:all .3s;font-family:"EB Garamond","Noto Sans JP",serif}.ea-form-submit:hover:not(:disabled){background:var(--ea-red-hover);transform:translateY(-1px);box-shadow:0 6px 20px rgba(99,102,241,.3)}.ea-form-submit:disabled{opacity:.7;cursor:not-allowed}.ea-form-submit--success{background:#22c55e !important}.ea-form-submit svg{width:16px;height:16px}.ea-turnstile-wrap{margin-bottom:1.5rem}.ea-form-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:4px;padding:.75rem 1rem;font-size:.85rem;margin-bottom:1.5rem;display:none}@media(max-width: 1024px){.ea-contact__grid{grid-template-columns:1fr}.ea-contact__sidebar{max-width:480px}}@media(max-width: 768px){.ea-contact{padding:2.5rem 0 3rem}.ea-contact__form-wrap{padding:2rem}.ea-contact__form-title{font-size:1.05rem}.ea-contact__form-desc{margin-bottom:1.5rem}.ea-form-group{margin-bottom:1.2rem}.ea-form-submit{padding:.8rem 1.5rem}.ea-contact__card{padding:1.5rem}}@media(max-width: 480px){.ea-contact__form-wrap{padding:1.5rem}.ea-contact__info-row{flex-direction:column;gap:.2rem}}
