.hero-visual{
  max-width:1290px;
  margin:0 auto;
  padding:0 3%;
  box-sizing:border-box;
}
.hero-visual picture{display:block}
.hero-visual img{
  display:block;
  width:100%;
  height:auto;
}

@media (min-width:600px){ .hero-visual img{max-width:980px;margin:0 auto} }

#st-menuwide ul.menu li{flex:1 1 auto;width:auto}
#st-menuwide ul.menu li a{font-size:14px;white-space:nowrap;padding:0 6px}



.bx-sp-only{ display:none !important; }
@media screen and (max-width: 767px){
  #header-i{ display:none !important; }
  #headbox{ padding-top:8px !important; padding-bottom:8px !important; }
  #header-l .sitename{ margin:0 !important; padding:0 !important; }
  #header-l .sitename img{ height:40px !important; width:auto !important; max-width:70% !important; }
  
  
  #header-l{ margin:-40px 0 0 !important; padding:0 !important; width:calc(100% - 64px) !important; text-align:left !important; }

  .bx-sp-only{ display:inline-block !important; }
}


.bx-spbar{
  display:grid !important; grid-template-columns:2fr 1fr; gap:8px;
  position:fixed; left:0; right:0; bottom:0; z-index:9999;
  padding:6px 6px calc(6px + env(safe-area-inset-bottom));
  background:#fff; box-shadow:0 -2px 8px rgba(0,0,0,.15);
}
.bx-spbar a{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  min-height:52px; border-radius:8px; color:#fff !important; text-decoration:none !important;
  font-weight:bold; font-size:14px; line-height:1.2; box-sizing:border-box;
}
.bx-spbar a i{ margin-right:4px; }
.bx-spbar__satei{ flex-direction:row !important; background:#f47920; font-size:18px !important; box-shadow:0 2px 0 #c45a0c; }
.bx-spbar__line{ background:#06c755; }


body{ padding-bottom:calc(72px + env(safe-area-inset-bottom)) !important; }
@media screen and (min-width: 768px){
  .bx-spbar{ padding:8px calc(50% - 320px); }
  .bx-spbar a{ min-height:50px; font-size:16px; }
  .bx-spbar__satei{ font-size:19px !important; }
}



#footer .bx-foot-tel{ margin:12px 0 30px !important; text-align:center; color:#fff; line-height:1.6; }
.bx-foot-tel a{ color:#fff !important; text-decoration:none !important; }
.bx-foot-tel__no{ font-size:22px; font-weight:bold; letter-spacing:.02em; }
.bx-foot-tel__no::before{ content:"\f095"; font-family:FontAwesome; margin-right:6px; font-size:.85em; }
.bx-foot-tel__hours{ display:block; font-size:13px; opacity:.9; }
