#home-owner-steps { scroll-margin-top:160px; }
.owner-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:32px; }
.owner-step { min-width:0; display:flex; flex-direction:column; }
.owner-step h3 { display:flex; align-items:center; gap:10px; color:#173c59; font-size:20px; margin:0 0 12px; }
.owner-step h3>span { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:50%; background:#173c59; color:#fff; font-size:14px; flex-shrink:0; }
.owner-step-copy { margin:0 0 20px; font-size:14px; line-height:1.9; color:#586b7b; min-height:54px; }
.owner-chat { display:flex; flex-direction:column; flex:1; border:1px solid #c7d1dc; border-radius:18px; overflow:hidden; background:#90a9c7; }
.owner-chat-heading { display:flex; align-items:center; gap:10px; padding:10px 13px; background:#eef2f7; border-bottom:1px solid #d1dbe6; }
.owner-chat-back { font-size:30px; line-height:1; color:#263542; }
.owner-chat-heading b { font-size:14px; color:#263542; }
.owner-chat-tools { display:flex; gap:16px; margin-left:auto; }
.owner-chat-tools svg, .owner-chat-input>svg { width:19px; height:19px; fill:none; stroke:#394b59; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.owner-chat-body { flex:1; display:flex; flex-direction:column; gap:19px; padding:13px 12px 20px; min-height:375px; }
.owner-chat-date { align-self:center; background:#526d8d55; padding:2px 13px; border-radius:20px; color:#fff; font-size:10px; line-height:1.6; margin-bottom:2px; }
.owner-message { position:relative; align-self:flex-start; max-width:79%; margin:0 0 0 31px; background:#fff; color:#26333e; border-radius:15px; padding:10px 12px; font-size:13px; line-height:1.75; box-shadow:0 1px 1px #243d5912; }
.owner-message::before { content:"A"; position:absolute; top:0; left:-33px; display:flex; align-items:center; justify-content:center; width:25px; height:25px; background:#fff; color:#3c6688; border-radius:50%; font-weight:700; font-size:12px; }
.owner-message::after { content:""; position:absolute; top:8px; left:-5px; width:10px; height:10px; background:#fff; clip-path:polygon(0 0,100% 20%,100% 100%); }
.owner-reply { align-self:flex-end; margin-left:0; max-width:78%; background:#a7e878; }
.owner-reply::before { content:"既読"; left:-29px; top:auto; bottom:3px; width:auto; height:auto; background:none; border-radius:0; color:#334d67; font-weight:400; font-size:9px; }
.owner-reply::after { left:auto; right:-5px; background:#a7e878; transform:scaleX(-1); }
.owner-chat-input { display:flex; align-items:center; gap:10px; padding:10px; background:#f9fafb; color:#394b59; }
.owner-chat-input>span { font-size:23px; line-height:1; }
.owner-chat-input>div { display:flex; align-items:center; justify-content:space-between; min-width:0; flex:1; border:1px solid #e1e5e9; border-radius:18px; padding:5px 9px; color:#8c959e; font-size:10px; background:#f0f2f5; }
.owner-chat-input>div span { font-size:20px; line-height:1; }
.owner-photo-message { padding:7px; width:174px; }
.owner-photo-message img { display:block; width:100%; height:86px; object-fit:cover; border-radius:7px; }
.owner-photo-message p { margin:5px 4px 1px; font-size:12px; }
.owner-chat-details { margin:10px 0 0; padding-top:8px; border-top:1px solid #e6edf2; }
.owner-chat-details>div { display:flex; gap:12px; justify-content:space-between; font-size:11px; }
.owner-chat-details dt { color:#768693; }
.owner-chat-details dd { margin:0; font-weight:600; color:#34536b; }
.owner-reassurance { display:flex; justify-content:center; align-items:flex-start; gap:12px; margin:26px 0 0; padding:18px 22px; border:1px solid #d8e3eb; border-radius:12px; background:#fff; }
.owner-reassurance>span { color:#557a6b; font-size:20px; }
.owner-reassurance strong { color:#34536b; font-size:16px; }
.owner-reassurance p { margin:5px 0 0; font-size:13px; line-height:1.8; color:#607589; }
.owner-example-note { margin:12px 0 0; text-align:center; font-size:11px; color:#718292; line-height:1.8; }
@media(max-width:850px) {
 .owner-steps { grid-template-columns:1fr; gap:30px; max-width:440px; margin:28px auto 0; }
 .owner-step-copy { min-height:0; margin-bottom:14px; }
 .owner-chat-body { min-height:0; padding:18px; }
 .owner-message { max-width:79%; font-size:14px; }
 .owner-reassurance { padding:16px; }
 .owner-reassurance strong { font-size:15px; }
}

.owner-questions { margin:9px 0; padding-left:1.5em; }
.owner-questions li { margin:3px 0; }

.owner-question-intro { margin:0 0 10px; font-size:inherit; line-height:inherit; }
