/* Contact channel clarity + elegant social footer | 2026-10-18 */
#contact .kqa-contact-intro{max-width:710px;margin:12px auto 8px;text-align:center;color:#84695e;font-size:14px;line-height:2.1}
#contact .kqa-contact-heading{font:500 clamp(19px,2.4vw,24px)/1.7 'Noto Serif JP',serif;color:#784d41;letter-spacing:.055em;margin:30px auto 8px;text-align:center}
#contact .kqa-contact-channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;width:min(100%,1040px);margin:17px auto 14px}
#contact .kqa-contact-channel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:156px;padding:19px 10px 17px;text-decoration:none;color:#785744;background:linear-gradient(145deg,#fffcf9,#fff3f4);border:1px solid #e4cac4;border-radius:16px;box-shadow:0 8px 22px rgba(143,87,88,.08);transition:transform .2s ease,border-color .2s ease,background .2s ease}
#contact .kqa-contact-channel:hover,#contact .kqa-contact-channel:focus-visible{transform:translateY(-3px);border-color:#c8a27d;background:linear-gradient(150deg,#fffafa,#ffeef3);outline-offset:3px}
#contact .kqa-contact-channel .kqa-channel-symbol{display:grid;place-items:center;width:49px;height:49px;border:1px solid #e0c19f;border-radius:50%;background:#fff9f5;color:#a67954}
#contact .kqa-contact-channel .kqa-channel-symbol svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#contact .kqa-contact-channel .kqa-channel-name{font:600 15px/1.7 'Noto Sans JP',sans-serif;letter-spacing:.02em;color:#775141;text-align:center}
#contact .kqa-contact-channel .kqa-channel-desc{font:400 12px/1.65 'Noto Sans JP',sans-serif;color:#937569;text-align:center}
#contact .kqa-contact-channel .kqa-channel-cta{font-size:12px;color:#a16b7c}
#contact .kqa-contact-split{width:100%;height:1px;border:0;background:linear-gradient(90deg,transparent,#dbc1a0,transparent);margin:34px auto 28px;max-width:860px}
#contact .kqa-contact-booking-note{color:#866b64;text-align:center;font-size:13px;line-height:1.9;margin:0 auto 18px}
#contact .contact-buttons.kqa-contact-reservation{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:12px auto}
#contact .kqa-contact-reservation .button{min-height:48px}
#contact .kqa-contact-quiet{display:block;text-align:center;margin:16px auto 2px;font-size:12px;line-height:1.7;color:#9b8070}
#contact .kqa-contact-quiet a{color:#9b675a;text-decoration:underline;text-underline-offset:3px}
.footer .kqa-footer-social{border-top:1px solid rgba(175,140,100,.20);margin:26px auto 0;padding-top:24px;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:17px}
.footer .kqa-footer-social a{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-width:88px;min-height:80px;color:#9a7858;text-decoration:none;font-size:12px;letter-spacing:.04em;transition:color .2s ease,transform .2s ease}
.footer .kqa-footer-social a:hover,.footer .kqa-footer-social a:focus-visible{color:#b35e79;transform:translateY(-2px);outline-offset:3px}
.footer .kqa-footer-social-icon{display:grid;place-items:center;width:45px;height:45px;background:#fff9f5;border:1px solid #d9bf9e;border-radius:50%;box-shadow:0 4px 12px rgba(108,71,50,.08)}
.footer .kqa-footer-social-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.footer .kqa-footer-social-icon svg.kqa-note-n{fill:currentColor;stroke:none}
.footer .kqa-footer-social-caption{font-family:'Noto Sans JP',sans-serif;color:inherit}
@media(max-width:760px){#contact .kqa-contact-channel-grid{grid-template-columns:1fr;gap:10px;max-width:480px}#contact .kqa-contact-channel{min-height:86px;display:grid;grid-template-columns:50px 1fr auto;grid-template-rows:auto auto;column-gap:12px;text-align:left;padding:12px 16px}#contact .kqa-contact-channel .kqa-channel-symbol{grid-row:1/3;grid-column:1;width:42px;height:42px}#contact .kqa-contact-channel .kqa-channel-symbol svg{width:22px;height:22px}#contact .kqa-contact-channel .kqa-channel-name{grid-column:2;grid-row:1;text-align:left;align-self:end;font-size:14px}#contact .kqa-contact-channel .kqa-channel-desc{grid-column:2;grid-row:2;text-align:left;align-self:start;font-size:11px}#contact .kqa-contact-channel .kqa-channel-cta{grid-column:3;grid-row:1/3;align-self:center}#contact .kqa-contact-heading{font-size:20px}#contact .kqa-contact-intro{font-size:13px}#contact .kqa-contact-split{margin:29px auto 23px}.footer .kqa-footer-social{gap:7px}.footer .kqa-footer-social a{min-width:80px}}
@media(prefers-reduced-motion:reduce){#contact .kqa-contact-channel,.footer .kqa-footer-social a{transition:none}#contact .kqa-contact-channel:hover,#contact .kqa-contact-channel:focus-visible,.footer .kqa-footer-social a:hover,.footer .kqa-footer-social a:focus-visible{transform:none}}
