/* Homepage footer appearance, scoped so page-specific layouts stay intact. */
#footer-include{width:100%;margin:0;font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;line-height:1.8;text-align:center}
#footer-include footer.footer{display:block;box-sizing:border-box;width:100%;max-width:none;margin:0;padding:15px 20px;background:#111;color:#fff;border:0;border-radius:0;text-align:center;font-size:16px;line-height:1.8}
#footer-include .footer-inner{display:block;width:auto;max-width:none;margin:0;padding:0}
#footer-include .footer-links{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:15px 25px;margin:0 0 6px;padding:0}
#footer-include .footer-links a{display:inline;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#ccc;text-decoration:none;text-shadow:none;font-size:13px;font-weight:400;line-height:1.8;letter-spacing:normal;transition:color .3s}
#footer-include .footer-links a:hover{color:#fff}
#footer-include .copyright{display:block;max-width:none;margin:0;padding:0;color:#777;font-size:11px;line-height:1.8}
#footer-include .fixed-contact-bar{display:none}
#footer-include .fixed-btn{box-sizing:border-box;flex:1;display:block;margin:0;padding:18px 0;border:0;border-radius:0;color:#fff6ea!important;text-align:center;text-decoration:none;font-size:16px;font-weight:700;line-height:1.8}
/* The shared and appraisal contact bars keep their existing hit areas. */
#footer-include .fixed-contact-bar,
body > .buy-fixed-contact {
  background: #29211c;
}
body > .buy-fixed-contact { border-top-color: #80705d; }
#footer-include .btn-line,
body > .buy-fixed-contact > a[href^="https://lin.ee/"] {
  background: #354b40;
}
#footer-include .btn-tel,
body > .buy-fixed-contact > a[href^="tel:"] {
  background: #47352a;
}
:is(#footer-include .fixed-contact-bar, body > .buy-fixed-contact) > a + a {
  box-shadow: inset 1px 0 #fff6ea40;
}
#footer-include a:focus-visible{outline:3px solid #f9c44a;outline-offset:4px}
:is(#footer-include .fixed-contact-bar, body > .buy-fixed-contact) > a:focus-visible {
  outline: 2px solid #eed7b3;
  outline-offset: -4px;
}
@media (hover: hover) and (pointer: fine) {
  :is(#footer-include .fixed-contact-bar, body > .buy-fixed-contact) > a:hover { filter: brightness(1.12); }
}
:is(#footer-include .fixed-contact-bar, body > .buy-fixed-contact) > a:active { filter: brightness(.91); }
#footer-include .nstyle-footer-fallback{padding:20px;display:flex;justify-content:center;flex-wrap:wrap;gap:18px}
.nstyle-page-notes{max-width:1120px;margin:36px auto;padding:0 24px;color:#bbc5d2;font:13px/1.8 system-ui,sans-serif}
.nstyle-page-notes summary{cursor:pointer;min-height:44px;padding:10px 0}
.nstyle-page-notes p{margin:8px 0}
@media(max-width:768px){body:has(> #footer-include){padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))!important}#footer-include .fixed-contact-bar{display:flex;position:fixed;bottom:0;left:0;width:100%;padding-bottom:env(safe-area-inset-bottom,0px);background:#29211c;z-index:1000;box-shadow:0 -1px 0 #80705d,0 -4px 12px #20150d33}body:has(> #footer-include):has(> .sticky){padding-bottom:calc(150px + env(safe-area-inset-bottom,0px))!important}body:has(> #footer-include)>.sticky{bottom:calc(65px + env(safe-area-inset-bottom,0px))}}
@media print{#footer-include .fixed-contact-bar{display:none!important}body:has(> #footer-include){padding-bottom:0!important}#footer-include footer.footer{background:#fff;color:#111}#footer-include .footer-links a{color:#333}}

/* Reuse the wordmark established on the homepage. */
.wordmark {
  display: inline-block;
  font-family: "Arial Black", Arial, sans-serif;
  font-style: italic;
  font-weight: 900;
  letter-spacing: -.055em;
  line-height: 1.12;
  white-space: nowrap;
}

/* Show these standalone contact bars only when the map or calendar is opened as a page. */
@media (max-width:768px) {
  html.nstyle-in-frame body:has(> #footer-include) { padding-bottom: 0 !important; }
  html.nstyle-in-frame #footer-include .fixed-contact-bar { display: none; }
}
@media screen and (max-width:768px) {
  html:not(.nstyle-in-frame) body.nstyle-standalone-map { box-sizing: border-box; }
}
