.dm-contact{--contact-blue:#00468f;--contact-edge:#c6dfed;box-sizing:border-box;max-width:780px;margin:24px auto 48px;padding:28px;color:var(--contact-blue);background:#fff;border:1px solid var(--contact-edge);border-radius:26px;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.8;overflow-wrap:anywhere}
.dm-contact *{box-sizing:border-box}.dm-contact [hidden]{display:none!important}
.dm-contact input[type=file]{display:block;max-width:100%;width:100%;padding:12px;border:1px dashed #93bdd7;border-radius:12px;background:#f2f9ff;font-size:14px}
.dm-contact input[type=file]::file-selector-button{font:inherit;border:1px solid #92c8e8;border-radius:20px;padding:10px 14px;background:#fff;color:#00468f;margin-right:8px;cursor:pointer}
.dm-contact .dm-contact-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px;white-space:normal}
.dm-contact-images figure{margin:0;padding:12px;border:1px solid #c6dfed;border-radius:14px;background:#f7fbfd;min-width:0}
.dm-contact-images img{display:block;width:100%;height:200px;object-fit:contain;background:#fff;border-radius:8px}
.dm-contact-images figcaption{margin-top:8px;font-size:14px;font-weight:700}.dm-contact-images a{display:block;font-size:13px;margin:6px 0 10px}
.dm-contact-images button{width:100%;font-size:14px;min-height:44px;padding:8px 10px}.dm-contact [data-images-status]:empty{display:none}
.dm-contact h2{border:0;background:none;color:#093d7f;padding:0;margin:14px 0;font-size:27px;font-weight:700;line-height:1.55;box-shadow:none}
.dm-contact h2:before,.dm-contact h2:after{content:none}.dm-contact p{margin:10px 0}
.dm-contact-label{display:inline-block;background:#e3f4ff;border-radius:30px;padding:5px 14px;font-size:14px;font-weight:700}
.dm-contact-intro{margin-bottom:20px}.dm-contact-note{background:#fff2c8;border-radius:14px;padding:15px 18px;font-size:14px}
.dm-contact-status:empty{display:none}.dm-contact-status:not(:empty){background:#eff8fb;border-radius:12px;padding:13px 16px;margin:20px 0}
.dm-contact-field{margin:25px 0}.dm-contact-field>label{display:block;font-weight:700;margin-bottom:7px}
.dm-contact-field label>span{font-size:12px;background:#ffe8e9;color:#a62942;border-radius:6px;padding:3px 8px;margin-left:7px}
.dm-contact-field label>.dm-contact-optional{background:#edf2f7;color:#47627b}
.dm-contact-field p{font-size:14px;color:#426384}.dm-contact input,.dm-contact select,.dm-contact textarea{font:inherit;color:#143e69}
.dm-contact input[type=email],.dm-contact select,.dm-contact textarea{display:block;width:100%;max-width:100%;padding:12px 14px;border:1px solid #93bdd7;background:#fff;border-radius:12px;line-height:1.6}
.dm-contact textarea{resize:vertical;min-height:180px}.dm-contact select{min-height:50px}
.dm-contact-use{padding:16px 18px;background:#effaf6;border-radius:14px;font-size:14px}
.dm-contact-consent{display:flex;align-items:flex-start;gap:10px;cursor:pointer;margin:16px 0 2px}
.dm-contact-consent input{appearance:auto;width:22px;height:22px;flex:0 0 22px;margin:3px 0;accent-color:#007cdf}
.dm-contact a{color:#006bc1;text-decoration:underline;text-underline-offset:3px}
.dm-contact button,.dm-contact a.dm-contact-primary{display:inline-flex;justify-content:center;align-items:center;min-height:50px;border-radius:28px;padding:12px 24px;border:1px solid #92c8e8;background:#fff;color:#00468f;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}
.dm-contact .dm-contact-primary{color:#fff;background:linear-gradient(#009fff,#006ce8);border-color:#0298ef;box-shadow:inset 0 2px 0 #63ccff}
.dm-contact form>.dm-contact-primary{width:100%;margin-top:24px}.dm-contact button:disabled{cursor:default;opacity:.55}
.dm-contact :focus-visible{outline:3px solid #986000;outline-offset:4px}.dm-contact :focus:not(:focus-visible){outline:none}
.dm-contact-actions{display:grid;grid-template-columns:1fr 1.5fr;gap:12px;margin-top:26px}
.dm-contact-review dt{font-weight:700;margin:20px 0 5px}.dm-contact-review dd{margin:0;padding:14px;background:#f2f9ff;border-radius:12px;white-space:pre-wrap}
.dm-contact-recovery{margin-top:20px;padding:16px;background:#fff2c8;border-radius:14px}.dm-contact-done{text-align:center;padding:30px 0}
.dm-contact-check{display:inline-grid;place-items:center;border-radius:50%;background:#dbf5e9;color:#087755;width:64px;height:64px;font-size:32px;font-weight:bold}
.dm-contact-done a{margin-top:20px}.dm-contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(min-width:601px){.dm-contact-break{display:none}}@media(max-width:600px){.dm-contact{padding:20px 16px;margin:12px auto 28px;border-radius:20px}.dm-contact h2{font-size:23px}.dm-contact-note{padding:12px 14px}.dm-contact-actions{grid-template-columns:1fr}.dm-contact button{width:100%}.dm-contact-use{padding:12px 14px}}
