/* Match the published MT document forms; keep all overrides inside this layout. */
.document-layout{min-height:100vh;display:flex;flex-direction:column;color:#1d1c1c;font-family:-apple-system,BlinkMacSystemFont,"Open Sans","Noto Sans JP","Yu Gothic Medium",YuGothic,Meiryo,sans-serif}
.document-layout .siteHeader{background:linear-gradient(#0cb7a5bf,#0cb7a5bf),url(/urumo/common/images/bg_head.jpg) center bottom/cover no-repeat}
.document-layout .siteHeader .inner{max-width:none;height:90px;padding:25px;justify-content:flex-start;gap:20px;flex-wrap:nowrap}
.document-layout .siteHeader .logo img{height:30px;width:auto}
.document-layout .siteHeader .catch{font-size:20px;font-weight:700;line-height:1.4;opacity:1;display:block}
.document-layout .gNav,.document-layout .menuBtn,.document-layout .sidebar{display:none}
.document-layout .layout{display:block;max-width:932px;width:100%;padding:8px 16px 50px;flex:1}
.document-layout .siteFooter{background:#000;color:#fff;margin-top:auto;padding:20px 0;font-size:13px;line-height:16px}
.document-layout .siteFooter .inner{max-width:none;padding:0 16px}
.document-layout .siteFooter .links{display:none}
.document-layout .siteFooter .copyright{font-size:13px;color:#fff;text-align:center;margin:0}
.document-page{max-width:900px;margin:auto;color:#1d1c1c}
.document-heading{position:relative;border-bottom:2px solid #f4f4f4;margin-bottom:14px}
.document-heading::after{content:"";position:absolute;bottom:-2px;left:0;width:50px;height:2px;background:#78bcb4}
.document-eyebrow{font-size:12px;font-weight:400;line-height:1.5;margin:0;color:#666}
.document-page h1{font-size:23px;font-weight:700;line-height:1.5;margin:10px 0 20px}
.document-columns{display:grid;grid-template-columns:1fr 1fr;align-items:start}
.document-intro{min-width:0;padding:45px 20px 0 0}
.document-summary{font-size:16px;line-height:1.5;margin:0 0 15px}
.document-preview-images img{display:block;width:100%;height:auto;max-width:425px;margin:0 auto 25px}
.document-form-card{min-width:0;min-height:535px;border:0;background:#f4f4f4;padding:35px 30px 30px;border-radius:10px;box-shadow:none}
.document-form-card fieldset{padding:0;margin:0;border:0;min-width:0}
.document-field-row{display:grid;grid-template-columns:minmax(84px,25%) minmax(0,1fr);gap:0;margin:10px 0;align-items:start}
.document-field-row>label{display:flex;align-items:center;gap:8px;font-size:16px;line-height:24px;padding:5px 0;font-weight:400;white-space:nowrap}
.document-field-control{min-width:0}
.document-form-card input:not([type=checkbox]){box-sizing:border-box;width:100%;min-width:0;height:38px;border:1px solid #ccc;border-radius:4px;padding:6px 12px;font:inherit;font-size:13px;line-height:24px;background:#fff;color:#1d1c1c;box-shadow:inset 0 1px 1px #00000013}
.document-form-card input::placeholder{color:#777;opacity:1}
.document-form-card input:focus-visible,.document-form-card button:focus-visible,.document-form-card a:focus-visible{outline:3px solid #0a897c;outline-offset:3px}
.document-form-card [aria-invalid=true]{border-color:#c8223f!important}
.document-page .required{font-size:10px;line-height:1.5;color:#ed1f42;font-weight:400;white-space:nowrap}
.field-error{display:block;color:#b51936;font-size:12px;line-height:1.6}
.field-error:empty{display:none}
.document-consent{margin:18px 0 14px}
.document-consent p{font-size:12px;line-height:1.5;margin:0 0 18px}
.document-consent label{display:flex;gap:5px;align-items:center;justify-content:center;font-size:16px;font-weight:400;line-height:1.5}
.document-consent input{width:14px;height:14px;flex-shrink:0;margin:0;accent-color:#0a897c}
.document-consent .required{margin-left:5px}
.document-primary{display:block;box-sizing:border-box;text-align:center;width:max-content;max-width:100%;margin:0 auto;border:1px solid #ed1f42;border-radius:30px;background:#ed1f42;color:#fff!important;font:inherit;font-size:16px;font-weight:400;line-height:16px;padding:15px 50px;text-decoration:none;cursor:pointer}
.document-primary:hover{background:#d51c3b;border-color:#d51c3b;text-decoration:none}
.document-secondary{font:inherit;font-size:14px;width:100%;padding:12px;border:1px solid #555;border-radius:4px;color:#333;background:#fff;cursor:pointer;margin-top:12px}
.document-form-card fieldset:disabled{opacity:.6}
.document-form-card button:disabled{cursor:wait}
.document-notice{background:#fff5dd;padding:10px 12px;border-left:3px solid #c89937;font-size:12px;line-height:1.7;margin:0 0 16px}
#local-preview-note{margin:16px 0 0}
.document-status{font-size:13px;line-height:1.7;margin:0 0 16px}
.document-status:empty{display:none}
.document-result{padding:12px 0}.document-result h3{font-size:18px}
.document-completion{min-height:0;max-width:760px;margin:30px auto;text-align:center}
.document-completion h2{font-size:20px;line-height:1.6}.document-completion .document-primary{margin:24px auto}
.document-small{font-size:10px;line-height:1.7;color:#666;margin:22px 0 0}
.document-page [hidden]{display:none!important}
.document-page a{color:#3e8c82;text-underline-offset:3px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:700px){
  .document-layout .siteHeader .inner{height:72px;padding:20px 16px;gap:14px}
  .document-layout .siteHeader .logo img{height:26px}
  .document-layout .siteHeader .catch{font-size:12px}
  .document-layout .layout{padding:12px 16px 30px}
  .document-page h1{font-size:21px;margin:10px 0 18px}
  .document-columns{grid-template-columns:1fr;gap:22px}
  .document-intro{padding:10px 0 0}
  .document-summary{font-size:15px;line-height:1.7}
  .document-preview-images img{margin-bottom:16px}
  .document-form-card{padding:20px 16px;min-height:0}
  .document-field-row{grid-template-columns:1fr;gap:5px;margin:0 0 14px}
  .document-field-row>label{line-height:1.5;padding:0}
  .document-form-card input:not([type=checkbox]){height:42px;font-size:16px}
  .document-form-card input::placeholder{font-size:12px}
  .document-consent label{font-size:13px;justify-content:flex-start;align-items:flex-start;line-height:1.8}
  .document-consent input{margin-top:4px}
  .document-primary{font-size:15px;padding:16px 24px;width:100%}
}
