/* ATELIER NAGOYA — contact ページ専用スタイル */

.hero{text-align:center;padding:70px 0 40px}

.hero .en{font-family:'Cormorant Garamond','Zen Kaku Gothic New',sans-serif;font-size:44px;font-weight:400;letter-spacing:.05em}

.hero .en em{font-style:normal;color:var(--gold-soft)}

.hero .jp{font-family:'Jost',sans-serif;font-size:12px;letter-spacing:.3em;color:var(--faint);margin-top:8px}

.hero p{color:var(--muted);font-size:14px;font-weight:400;margin-top:20px}

form{padding:10px 0 90px}

.fld{margin-bottom:26px}

.fld label{display:block;font-size:13px;letter-spacing:.08em;margin-bottom:10px;color:var(--ink)}

.fld label .req{color:var(--gold-soft);font-size:11px;margin-left:8px}

.fld input,.fld textarea,.fld select{width:100%;background:var(--panel);border:1px solid var(--line);color:var(--ink);padding:15px 16px;font-family:inherit;font-size:15px;transition:.3s;border-radius:2px;-webkit-appearance:none;appearance:none}

.fld select{background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 21px) 24px,calc(100% - 16px) 24px;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer}

.fld input:focus,.fld textarea:focus,.fld select:focus{outline:none;border-color:var(--gold);background-color:#17171a}

.fld textarea{min-height:150px;resize:vertical}

.privacy{display:flex;gap:12px;align-items:center;justify-content:center;font-size:14px;color:var(--ink);font-weight:500;margin:0;cursor:pointer;border:1px solid var(--line);background:var(--panel);padding:18px 22px;border-radius:2px;transition:.3s}

.privacy:hover{border-color:var(--line-gold)}

.privacy input[type=checkbox]{-webkit-appearance:checkbox;appearance:auto;width:20px;height:20px;min-width:20px;padding:0;margin:0;accent-color:var(--gold);cursor:pointer;margin-right:14px}

.privacy input[type=checkbox].invalid{outline:2px solid #c96a5f;outline-offset:2px}

.submit{width:100%;background:linear-gradient(120deg,var(--gold-soft),var(--gold));color:var(--bg);border:none;padding:19px;font-family:'Zen Kaku Gothic New',sans-serif;font-size:15px;font-weight:500;letter-spacing:.12em;cursor:pointer;transition:.35s;border-radius:2px}

.submit:hover{filter:brightness(1.08)}

.alt{text-align:center;margin-top:30px;font-size:13px;color:var(--muted);font-weight:400}

.alt a{color:var(--gold-soft);border-bottom:1px solid var(--line-gold)}

.fld input.invalid,.fld textarea.invalid,.fld select.invalid{border-color:#c96a5f;background-color:rgba(201,106,95,.06)}

.fld .err{display:none;color:#e0897f;font-size:12px;margin-top:8px;letter-spacing:.04em}

.fld .err.show{display:block}

.form-alert{display:none;border:1px solid #c96a5f;background:rgba(201,106,95,.08);color:#e0897f;font-size:13px;padding:14px 18px;margin-bottom:26px;border-radius:2px}

.form-alert.show{display:block}

.line-box{border:1px solid rgba(6,199,85,.45);background:linear-gradient(135deg,rgba(6,199,85,.1),rgba(6,199,85,.03));padding:28px;text-align:center;margin-bottom:44px;border-radius:2px}

.line-box .t{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:6px}

.line-box .s{font-size:12.5px;color:var(--muted);margin-bottom:18px}

.line-box a.lbtn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#06C755;color:#fff;font-weight:700;font-size:14px;letter-spacing:.08em;padding:16px 40px;transition:.35s;box-shadow:0 8px 24px rgba(6,199,85,.25);border-radius:2px}

.line-box a.lbtn:hover{filter:brightness(1.08)}

.line-box a.lbtn svg{width:20px;height:20px;flex:0 0 auto;fill:#fff}

/* 万一クラスが当たらない場合でもアイコンが巨大化しないための保険 */
.line-box svg{width:20px;height:20px;flex:0 0 auto;fill:#fff}

a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold-soft);outline-offset:3px}