/* Shared header and footer appearance for all site pages. */
/* Keep the phone markup and image, but hide the header block on every page. */
#headerBox .telbox {display:none;}
:is(#headerBox, #footerBox) .globalnav li a,
:is(#headerBox, #footerBox) .globalnav li a:hover {font-weight:400;}
body:is(#toppage, body) { --renewal-brown:#49433d; --renewal-gold:#a69a82; --renewal-red:#902044; letter-spacing:.08em; }
:is(#toppage, body) #headerBox { background:var(--renewal-brown); color:#fff; box-shadow:none; }
:is(#toppage, body) #headerBox>.flex {padding:16px 1.2%;align-items:center;gap:20px;}
:is(#toppage, body) #headerBox>.flex h1 {margin:0;}
:is(#toppage, body) #headerBox>.flex h1 img {height:32px;filter:brightness(0) invert(1);}
:is(#toppage, body) #headerBox>.flex nav .flex {align-items:center;}
:is(#toppage, body) #headerBox>.flex nav .flex .telbox img {height:40px;filter:brightness(0) invert(1);}
:is(#toppage, body) #headerBox>.flex nav .flex .submenu ul {display:grid;grid-template-columns:max-content max-content;gap:0 8px;align-items:center;}
:is(#toppage, body) #headerBox>.flex nav .flex .submenu ul li {display:block;margin:0;}
:is(#toppage, body) #headerBox>.flex nav .flex .submenu ul li.map {grid-area:1 / 1;}
:is(#toppage, body) #headerBox>.flex nav .flex .submenu ul li.outline {grid-area:1 / 2;display:flex;align-items:center;gap:8px;}
:is(#toppage, body) #headerBox>.flex nav .flex .submenu ul li.outline::before {content:'/';font-size:10px;}
:is(#toppage, body) #headerBox>.flex nav .flex .submenu ul li.map_mr {grid-area:2 / 1 / 3 / 3;}
:is(#toppage, body) #headerBox>.flex nav .flex .submenu ul li a {background:none;padding:0;font-size:12px;}
:is(#toppage, body) #headerBox>.flex nav .flex .request a,:is(#toppage, body) #headerBox>.flex nav .flex .appointment a {margin:0 0 0 6px;padding:10px 36px;height:auto;font-size:14px;color:#fff;background:#a68e7b;}
:is(#toppage, body) #headerBox>.flex nav .flex .appointment a {background:var(--renewal-red);}
:is(#toppage, body) #headerBox>nav {background:var(--renewal-brown);border-top:1px solid #aea69c; padding-bottom: 10px;}
:is(#toppage, body) #headerBox .globalnav {padding:12px 2%;}
:is(#toppage, body) #headerBox .globalnav a {color:#fff;}
:is(#toppage, body) #headerBox .globalnav a::before {color:#fff;}
:is(#toppage, body) #mainContentsBox {margin-top:120px;color:#49433d;}
:is(#toppage, body) #top {margin:0;padding:0;}
:is(#toppage, body) #footerBox .request a {background:#a88e79;}
:is(#toppage, body) #footerBox .appointment a {background:var(--renewal-red);}
@media (max-width:1200px) and (min-width:961px) {
  :is(#toppage, body) #headerBox>.flex h1 img {height:25px;}
}
@media (max-width:1200px) and (min-width:961px) {
  :is(#toppage, body) #headerBox>.flex nav .flex .telbox img {height:25px;}
}
@media (max-width:1200px) and (min-width:961px) {
  :is(#toppage, body) #headerBox>.flex nav .flex .request a,:is(#toppage, body) #headerBox>.flex nav .flex .appointment a {padding:10px 20px;}
}
@media (max-width:960px) {
  :is(#toppage, body) #headerBox>.flex {padding:15px 10px;}
}
@media (max-width:960px) {
  :is(#toppage, body) #headerBox>.flex h1 img {height:30px;}
}
@media (max-width:960px) {
  :is(#toppage, body) #mainContentsBox {margin-top:60px;}
}
@media (min-width:961px) {
  :is(#toppage, body) #headerBox>.flex {height:74px;}
}
@media (min-width:961px) {
  :is(#toppage, body) #headerBox .globalnav,:is(#toppage, body) #headerBox.slim .globalnav {height:54px;padding:8px 2%;}
}
@media (min-width:961px) {
  :is(#toppage, body) #mainContentsBox {margin-top:128px;}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav li {border:0;}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav li a {font-size:10px;letter-spacing:.12em;}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav li a::before {display:block;font-family:Georgia,serif;font-size:12px;letter-spacing:.15em;margin-bottom:5px;position:static;}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .toppage a::before {content:'TOP';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .concept a::before {content:'CONCEPT';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .location a::before {content:'LOCATION';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .share a::before {content:'PLANNING';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .design a::before {content:'DESIGN';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .plan a::before {content:'ROOM PLAN';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .modelroom a::before {content:'MODEL ROOM';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .zeh a::before {content:'ZEH-Oriented';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .equipment a::before {content:'EQUIPMENT';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .structure a::before {content:'STRUCTURE';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .brand a::before {content:'BRAND';}
}
@media (min-width:961px) {
  :is(#toppage, body) .globalnav .new-badge {display:none;}
}
@media (min-width:961px) {
  :is(#toppage, body) #footerBox>nav {background:#fff;border-block:1px solid #333;}
}
@media (min-width:961px) {
  :is(#toppage, body) #footerBox .globalnav {padding:18px 2%;}
}
@media (max-width:960px) {
  :is(#toppage, body) #mainContentsBox {margin-top:63px;}
}

/* English labels are now actual link text; Japanese labels remain in HTML comments. */
:is(#headerBox, #footerBox) .globalnav li a::before {display:none;}
@media (min-width:961px) {
  :is(#headerBox, #footerBox) .globalnav li a {font-family:Georgia,'Times New Roman',serif;font-size:12px;letter-spacing:.15em;}
}
