/* =========================================
   STEP header/footer only (extracted)
   - Purpose: Keep writeheader()/writefooter() styling
   - Includes: header + nav + footer + main padding-top
   ========================================= */

/* ----- HEADER (fixed) ----- */
header{
  background:#000;
  margin:0;
  padding:0;
  top:0;
  display:block;
  overflow:hidden;
  position:fixed;
  width:100%;
  z-index:1000;
  box-shadow:0 10px 10px rgba(0,0,0,0.4);
}

header h1{
  margin:0 0.8em 0 0;
  display:inline-block;
  background:#fff;
  box-shadow:0 2px 2px rgba(0,0,0,0.3);
  float:left;
}

header h1 img{
  width:150px;
  padding:15px 0;
}

/* ※あなたの運用ルール：この指定は削除しない */
 /* h1 img { width:150px; } ← 既に上で含まれています */

header h1 a{ padding:0; }

/* ----- HEADER NAV ----- */
header nav{
  float:left;
  font-family:'BIZ UDPMincho', sans-serif;
  font-size:14px;
  font-weight:900;
  display:block;
  margin:auto;
  position:relative;
}

header nav ul{
  display:flex;
  text-align:center;
  margin:0;
  height:70px;
  background:rgba(0,0,0,0.5);
}

header nav li{ display:flex-box; }

header nav a{
  color:#ddd;
  text-decoration:none;
  padding:0.4em 0.4em;
  line-height:70px;
}

header nav a:hover{ color:#fff; }

header nav a.current{
  color:#fff;
  background:rgba(255,255,255,0.3);
  border-radius:50px;
}

header nav li form input{
  right:10px;
  margin-left:0.8em;
  display:inline-block;
  width:175px;
  margin-top:20px;
  padding:0.6em 0.7em;
  background:#333;
  border:none;
  border-radius:2px;
  font-family:fontAwesome,'BIZ UDPMincho';
  color:#fff;
}
header nav li form input::placeholder{ color:#fff; }
header nav li form input:hover{ color:#fff; background:#222; }
header nav li form input:hover::placeholder{ color:#fff; }

/* ----- MAIN (space for fixed header) ----- */
main{
  margin:auto;
  max-width:1200px;
  width:100%;
  padding-top:70px;
}

/* ===== Footer ===== */
footer{
  background:rgba(0,0,0,0.8);
  clear:both;
  padding:20px;
  color:#fff;
}
footer a{ color:#fff; text-decoration:none; }
footer small{ text-align:center; display:block; }

/* ----- Small screens safety (minimal) ----- */
/* 元CSSにSP専用のヘッダー定義が見当たらないので、
   “崩れても致命傷になりにくい” だけ足しておきます。 */
@media (max-width: 768px){
  header nav ul{
    flex-wrap:wrap;
    height:auto;
  }
  header nav a{
    line-height:48px;
  }
}


/* =========================
   支店ブロックを “3列” に整列（枠なし）
   ========================= */

/* 既存CSSの影響を強めに打ち消す（only-footer内だけ） */
.only-footer .ac-container{
  border:0 !important;
  margin:0 !important;
  padding:0 !important;
  width:auto !important;
}
.only-footer .ac-container input{ display:none !important; }
.only-footer .ac-container label{
  display:block !important;
  height:auto !important;
  padding:0 !important;
  margin:0 0 6px !important;
  position:static !important;
}
.only-footer .ac-container label:after,
.only-footer .ac-container label::after{
  content:none !important;
  display:none !important;
}

/* h3の “inline / 高さ固定” を解除して見出しとして扱う */
.only-footer .ac-container h3{
  display:block !important;
  height:auto !important;
  line-height:1.35 !important;
  margin:0 !important;
  padding:0 !important;
  font-size:18px !important;     /* ←ここで大きさ統一 */
  font-weight:900 !important;
  letter-spacing:.02em !important;
}

/* 中身は常時表示 */
.only-footer .ac-expand{
  display:block !important;
}

/* 住所・TEL周りの整形 */
.only-footer .ac-expand p{
  margin:0 0 8px !important;
  font-size:14px !important;
  line-height:1.8 !important;
  color:rgba(255,255,255,.92) !important;
}
.only-footer .ac-expand ul{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
.only-footer .ac-expand li{
  margin:0 !important;
  font-size:14px !important;
  line-height:1.8 !important;
  color:rgba(255,255,255,.92) !important;
  font-style:italic; /* 既存の“それっぽさ”は維持 */
}

/* ★ここが目的：支店情報だけを3列のグリッドで整列 */
.only-footer .branch-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:26px 40px; /* 縦, 横 */
}

/* 摂津倉庫だけ2段目左に落とす（参考画像の並び） */
.only-footer .branch-grid .ac-container:nth-child(4){
  grid-column:1;
}

/* SPは1列に戻す */
@media (max-width: 860px){
  .only-footer .branch-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .only-footer .branch-grid .ac-container:nth-child(4){
    grid-column:auto;
  }
}

/* デスクトップ > フッター */
footer{background:rgba(0,0,0,0.8);clear:both;padding:20px;color:#fff;}
footer a{color:#fff;text-decoration:none;}
footer small{text-align:center;display:block;}

.ac-container{padding:0;margin:0 0 1em 0;width:auto;border-bottom:1px solid rgba(255,255,255,0.4);}
.ac-container:first-child{width:auto;border-top:1px solid rgba(255,255,255,0.4);}
.ac-container ul{list-style:none;padding:0;margin:0;}
.ac-container li{padding:0;margin:0;}
.ac-container h3{font-size:100%;margin:0 !important;padding:0 !important;display:inline;line-height:40px;height:40px;}
.ac-container label{margin:auto;padding:10px 15px;display:block;height:40px;position:relative;}
.ac-container label:after{
    z-index:1;
    position:absolute;
    right:20px;
    font-size:25px;
    font-family:"FontAwesome";
    display:inline-block;
    content:"\f107";
    transform:rotate(0deg);
    transition:0.2s ease-in-out;
}
.ac-container input:checked ~ label::after{
    transform:rotate(180deg);
    transition:0.2s ease-in-out;
}
.ac-container input{display:none;}
.ac-container div div{
    margin-top:-1px;
    overflow:hidden;
    height:0;
    transition:.3s ease;
}
.ac-container div div p{margin:0 1em;}
.ac-container div div address{margin:0 1em;}
.ac-container div a{text-decoration:none;display:block;padding:10px 20px;}
.ac-container div li a{text-decoration:none;padding:0;}
.ac-container input:checked ~ div div{
    padding:5px 0 20px 0;
}

.ac-container input:checked ~ div.ac-expand div{
    height:auto;
    display:block;
    transition:.2s ease;
}
.ac-expand{
    padding:0 1%;
    display:inherit;
}