header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    top: 0;
    left: 0;
    width: 100%;
    height: 85px;
    background-color: #bd924d;
}

.leftGroup {
    display: flex;
    align-items: center;
    gap: 12px;
}

.rightGroup {
  display: flex;
  gap: 1em;
  align-items: center;
  padding-right: 1em;
}

.x-icon {
    width: 40px;
    height: auto;
}

.blog-icon {
  width: 55px;
  height: auto;
}

.logoImg {
    width: 95px;
    height: auto;
}

body {
    background-color: #faf0e6;
    color: #444444;
}

.menu-icon {
    font-size: 60px;
    cursor: pointer;
    padding: 12px 20px;
    display: inline-block;
    background: #7F6000 ;
    color: white;
}

.menu {
    display: none;
    position: absolute;
    top: 85px;
    left: 0;
    background: #7F6000;
    width: 12em;
    padding: 10px 20px;
    flex-direction: column;
    z-index: 1000;
    gap:16px;
}

.menu.open {
    display: flex;
}

#menu-toggle:checked + .menu-icon + .menu {
    display: flex;
}

.menu a {
    color: white;
    padding: 8px;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color 0.3s ease;
}

/* 特設ページのサブメニュー枠 */
.submenu-block {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* トリガー（特設ページ） */
.submenu-trigger {
  display: block;
  color: white;
  padding: 8px;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 0.3s ease;
  cursor: pointer;
  background: transparent;
  border: none;
}

/* caretの回転をチェック状態で制御 */
#featured-toggle:checked + .submenu-trigger .caret {
  transform: rotate(180deg);
  transition: transform 0.2s ease;
}

.menu .submenu {
  display: none;
  flex-direction: column;
  gap: 8px;
  padding-left: 12px;
  border-left: 1px dashed rgba(255,255,255,0.5);
}

/* チェック時（開） */
.menu #featured-toggle:checked + label.submenu-trigger + .submenu {
  display: flex;
}

.menu #featured-toggle:checked + label.submenu-trigger .caret {
  transform: rotate(180deg);
  transition: transform 0.2s ease;
}

/* サブメニュー内リンクの見た目は既存の .menu a を継承 */
.submenu a {
  color: white;
  padding: 8px;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 0.3s ease;
}

footer {
  width: 100%;
  background-color: #bd924d;
  padding-bottom: 3em;
  padding-top: 4em;
  margin-top: 4em;
}

footer a, footer p {
  color: white;
  line-height: 2;
}

footer p, .mainRoot a {
  font-weight: bold;
}

.footerMenu {
  text-align: center;
  width: 60%;
  margin: 0 auto;
  display: flex;
  gap: 2em;
  justify-content: center;
  padding-bottom: 1em;
  border-bottom: 3px dotted #faf0e6;
}

.mainRoot, .otherRoot {
  display: flex;
  flex-direction: column;
}

.siteLogo {
  padding-top: 1em;
  display: flex;
  justify-content: center;
  align-items: center;
}

.siteLogo img{
  width: 180px;
  height: auto;
}

.siteLogo p {
  font-size: 24px;
}

.siteTitleFooter .mini {
  font-size: 16px;
  text-align: center;
  margin-top: -1em;
}

@media (min-width :801px) {
    .menu a:hover {
        background-color: #a47c01;
    }

    .submenu-trigger:hover {
        background-color: #a47c01;
    }

  .submenu a:hover {
        background-color: #a47c01;
  }
}