/* Minimal CSS for map.html (extracted & simplified) */



ul{ list-style:none; margin:0; padding:0; }


#page-location .content-main{ width: 100%; margin:0 auto; }
#page-location .content-main div,
#page-location .content-main span{ line-height:1.6; }

/* (optional) loading container */
#loading-animation{ display:none; }

/* Location life */
#page-location .location-life{
  background: rgba(235,229,223,.5);
  border-top: 1px solid rgba(0,0,0,.03);
}
#page-location .location-life .location-life__inner{
  max-width:1200px;
  margin:0 auto;
  padding:48px 0;
}
@media (max-width:1024px){
  #page-location .location-life .location-life__inner{ padding:24px 0; }
}

#page-location .location-life .location-life--heading-1{
  font-family: "Cinzel", serif;
  font-size: 32px;
  text-align:center;
  color:#766B72;
  border-bottom:2px solid #BFAF86;
  padding-bottom:16px;
  margin:0 0 24px;
}
@media (max-width:1024px){
  #page-location .location-life .location-life--heading-1{ font-size:20px; margin-bottom:16px; }
}

#page-location .location-life .location-life--box-2{
  display:grid;
  gap:24px;
  grid-template:
    "tabs tabs" auto
    "map  list" auto / 1fr 1fr;
}
@media (max-width:1024px){
  #page-location .location-life .location-life--box-2{
    gap:16px;
    grid-template:
      "map" auto
      "tabs" auto
      "list" auto / 1fr;
  }
}

#page-location .location-life .item-1{ grid-area:tabs; }
#page-location .location-life .item-2{ grid-area:map; }
#page-location .location-life .item-3{ grid-area:list; }

/* Map box */
#page-location .location-life .location-life--main-map{
  width:100%;
  height:600px;
  background:var(--paper);
  border:1px solid rgba(0,0,0,.06);
}
@media (max-width:1024px){
  #page-location .location-life .location-life--main-map{
    height:auto;
    aspect-ratio:1/1;
  }
}

/* Tab buttons */
#page-location .location-life .location-life--tab{
  display:flex;
  gap:12px;
}
@media (max-width:1024px){
  #page-location .location-life .location-life--tab{
    flex-wrap:wrap;
    gap:8px 2%;
  }
}

#page-location .location-life .location-life--tab .tab-links{
  flex:1 1 0;
  border:none;
  cursor:pointer;
  background:#EEEDED;
  color:var(--muted);
  font-family:"Noto Serif JP", serif;
  font-size:12px;
  text-align:center;
  padding:12px 0 8px;
  box-shadow:0 0 4px rgba(116,109,111,.35);
}
@media (max-width:1024px){
  #page-location .location-life .location-life--tab .tab-links{
    flex:0 1 31%;
    font-size:10px;
    padding:8px 0 4px;
  }
}

#page-location .location-life .location-life--tab .tab-links::after{
  content:"▼";
  display:block;
  margin-top:10px;
  padding-top:4px;
  border-top:1px solid var(--muted);
  font-size:8px;
  color:var(--muted);
}
@media (max-width:1024px){
  #page-location .location-life .location-life--tab .tab-links::after{
    margin-top:4px;
    padding-top:2px;
    font-size:6px;
  }
}

#page-location .location-life .location-life--tab .tab-links:hover,
#page-location .location-life .location-life--tab .tab-links.is-active{
  background:var(--accent);
  color:#000;
}
#page-location .location-life .location-life--tab .tab-links:hover::after,
#page-location .location-life .location-life--tab .tab-links.is-active::after{
  border-color:#fff;
  color:#000;
}

/* Location list */
#page-location .location-life .tab-content--list-1{
  padding:10px;
  background:var(--paper);
  border:1px solid rgba(0,0,0,.06);
}
@media (max-width:1024px){
  #page-location .location-life .tab-content--list-1{ padding:0; }
}

#page-location .location-life .tab-content--list-1 > li{
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:8px;
  transition:background .2s;
}
#page-location .location-life .tab-content--list-1 > li:hover{ background:#fff; }
#page-location .location-life .tab-content--list-1 > li:not(:last-child){
  border-bottom:1px solid var(--border);
}

#page-location .location-life .location-number{
  display:inline-block;
  background:var(--accent);
  color:#fff;
  font-size:14px;
  margin-right:1em;
}
#page-location .location-life .location-number .number{
  display:flex;
  justify-content:center;
  align-items:center;
  width:24px;
  height:24px;
}
#page-location .location-life .location-name{ font-size:14px; }
#page-location .location-life .location-distance{ font-size:12px; }

/* InfoWindow */
#page-location .location-life .info-window{ color:#555; }
#page-location .location-life .info-window h3{
  font-size:14px;
  font-weight:700;
  line-height:1.6;
  margin:0 0 4px;
}
#page-location .location-life .info-window p{
  font-size:12px;
  line-height:1.6;
  margin:0;
}

/* ===== マップ内 吹き出し（ロゴ） ===== */
.mansionBubble{
  position:absolute;
  width:120px;
  height:32px;
  background: #fff134;
  box-shadow:0 8px 18px rgba(0,0,0,.18);
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:auto;
}
.mansionBubble img{
  max-width:80%;
  max-height:70%;
  display:block;
}
.mansionBubble::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-15px;
  transform:translateX(-50%);
  width:0;
  height:0;
  border-left:15px solid transparent;
  border-right:15px solid transparent;
  border-top:15px solid #fff134;
	
}
/* 選択中の行を太字に */
#js-location-list-1 li.is-active .location-name,
#js-location-list-1 li.is-active .location-distance,
#js-location-list-1 li.is-active .number {
  font-weight: 700;
}

#js-location-list-1 li.is-active .location-name,
#js-location-list-1 li.is-active .location-distance,
#js-location-list-1 li.is-active .number {
  font-weight: bold;
}

/* リスト側：選択中の行を確実に太字にする */
#js-location-list-1 li.is-active,
#js-location-list-1 li.is-active * {
  font-weight: 700 !important;
}