@charset "UTF-8";

/* ヘッダー・ハンバーガーメニュー
   読み込み順は functions.php（後に読み込んだ指定が勝つので順番を変えない） */

/* --------------------------------------------------------------------- */
/* ヘッダー */
/* --------------------------------------------------------------------- */

header {
  /* トップに固定する */
  position: fixed;
  /* 一番上に固定する */
  top: 0;
  /* 一番手前に配置する */
  z-index: 9998;
  /* 背景画像のパスを指定 */
  background-image: url('../img/dot_pink.jpg');
  /* 背景画像を繰り返す */
  background-repeat: repeat;
  height: 70px;
  width: 100%;
}

.page-header {
  /* 中の要素を横並び */
  display: flex;
  /* ヘッダーと高さを同じにする */
  height: 70px;
}

.logo {
  width: 149px;
  margin-top: 10px;
}

.navbar {
  /* 中の要素を横並び */
  display: flex;
  /* 縦方向に中央に配置 */
  align-items: center;
  /* 親要素の幅を超えない */
  max-width: 100%;
  font-size: 18px;
  font-weight: bold;
  /* 右端に配置 */
  margin-left: auto;
  /* お問い合わせと高さを揃える */
  /* margin-top: 45px; */

  /* タブレットサイズ以下 */
  @media (max-width: 960px) {
    /* 非表示 */
    display: none;
  }
}

.navbar ul {
  /* 中の要素を横並び */
  display: flex;
  /* 親要素の幅を超えない */
  max-width: 100%;
  list-style: none;
}

.navbar li {
  font-size: 15px;
}

.navbar a {
  color: var(--color-text-link);
  /* 左右に余白を追加 */
  margin: 0px 30px;
  /* 改行しない */
  white-space: nowrap;

  /* ヘッダー要素が改行されないように調整 */
  @media (max-width: 1227px) {
    /* 左右に余白を追加 */
    margin: 0px 12px;
  }
}

.navbar a:hover {
  color: var(--color-pink);
}

/* お問い合わせ */
.header-contact {
  /* ブログとお問い合わせの間隔 */
  margin-left: 2%;

  /* タブレットサイズ以下 */
  @media (max-width: 960px) {
    /* 非表示 */
    display: none;
  }
}

.header-contact .btn {
  margin-top: 13px;
  height: 43px;
  width: 148px;
  font-size: 15px;
}

/* --------------------------------------------------------------------- */
/*　ハンバーガーメニュー */
/* --------------------------------------------------------------------- */

/* チェックボックスは非表示にする */
.menu-toggle {
  display: none;
}

.menu-icon {
  /* 非表示 */
  display: none;

  /* タブレットサイズ以下 */
  @media (max-width: 960px) {
    /* クリック可能にする */
    cursor: pointer;
    margin-left: auto;
    display: flex;
    align-items: center;
  }
}

.menu-icon img {
  height: 50px;
}

.menu-hidden {
  /* 初期状態では非表示 */
  position: fixed;
  top: 0;
  /* 右端に寄せる */
  right: 0;
  /* 横 */
  width: 80%;
  /* 　高さ */
  height: 600px;
  /* 背景色 */
  background-color: var(--color-white);
  /* 初期状態では画面外に隠す */
  transform: translateX(100%);
  /* 右からスライドするアニメーション */
  transition: transform 0.3s ease-in-out;
  z-index: 999;
}

.menu-toggle:checked + .menu-icon + .menu-hidden {
  transform: translateX(0);
}

.menu-close-icon {
  /* 右端に配置する */
  text-align: right;
  /* クリック可能にする */
  cursor: pointer;
}

.menu-close-icon img {
  height: 67px;
  margin-top: 10px;
  margin-right: 5%;
}

.menu-hidden-items {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: flex-start;
}

.menu-hidden-items.show {
  /* 横並び */
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: flex-start;
}

.menu-hidden ul {
  /* リストスタイルを削除 */
  list-style: none;
  /* パディングを追加 */
  padding: 10px;
  /* マージンを削除 */
  margin: 0;
  /* 右寄せ */
  text-align: right;
  font-weight: bold;
}

.menu-hidden li {
  /* リストアイテムのマージンを設定 */
  margin-bottom: 25px;
}

.menu-hidden .btn {
  padding: 8px 30px;
}

/* SNSアイコン */
.menu-hidden-sns {
  display: flex;
  /* 縦並び */
  flex-direction: column;
}

.hidden-sns-icon {
  width: 34.53px;
  height: 34.53px;
  margin: 5px 0;
  transition: background-image 0.3s ease;
  background-size: cover;
}

/* オーバーレイ */
.menu-toggle:checked ~ #overlay {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-overlay);
  z-index: 998;
}
