/* === 全体ヘッダー構成 === */
.table-design {
  border-collapse: collapse;
  table-layout: fixed;
  margin: 2px 0;
  line-height: 0; /* 不要な隙間防止 */
  font-size: 0;   /* 不要な隙間防止 */
}

.table-design td {
  padding: 0;
  margin: 0;
  border: none;
}


.l-header {
  width: 100%;
  background-color: #fff;
}

/* === ロゴ部分 === */
.l-header__logo {
  margin: 0 7px 0 0;
}

.l-header__logo img {
  width: 100%;
  height: auto;
}

/* === メニュー部分 === */
@media (max-width: 768px) {
.menu {
  display: none;
  position: absolute;
  top: 82px;
  left: 0;
  width: 100%;
  background-color: #fdfdfd;
  box-shadow: 0 2px 5px rgba(0,0,0,0.3);
  z-index: 1000;
  overflow-y: auto;
  padding-top: 20px;
  max-height: 0;
  transition: transform 1s ease, opacity 1s ease;
}
}

.menu {
  display: flex;
  justify-content: flex-end;
  gap: 20px; /* 各メニューの間隔 */
  list-style: none;
  font-size: 14px;
  margin-left: 60px;
  padding: 0;
}


.menu.open {
  display: block;
  max-height: calc(100dvh - 50px);
  transform: translateY(0);
  opacity: 1;
}

.menu li {
  display: inline-block;
}

.menu li a {
  text-decoration: none;
  color: #333;
}

.menu li a:hover {
  color: #009900;
}

/* === ハンバーガーボタン（初期は非表示）=== */
.l-header__btn {
  display: none;
  text-align: right;
}

.l-header__btn-inner {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

.l-header__btn-txt {
  position: absolute;
  left: -9999px;
}


.l-header__btn-wrap {
  position: relative;
  width: 25px;
  height: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.l-header__btn-wrap .bar {
  display: block;
  width: 100%;
  height: 3px;
  background-color: #000;
  transition: all 0.3s ease;
}

/* メニューオープン時のバー変化 */
.l-header__btn-inner.open .bar:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}

.l-header__btn-inner.open .bar:nth-child(2) {
  opacity: 0;
}

.l-header__btn-inner.open .bar:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}
