@charset "utf-8";
/* new header css 2025.12.15 */
/*----------------新ヘッダー ---------------*/
.p-header__nav {
  width: 100%;
  background-color: #fff; /* 必要に応じて */
}
/* 内側コンテナ（中央寄せ） */
.p-nav__inner {
  max-width: 960px;
  margin: 0 auto;
  /*padding: 8px 16px;*/
}
/* リストをフレックス化 */
.p-nav__list {
  display: flex;
  flex-wrap: wrap; /* 折り返しを許可 */
  justify-content: center; /* 横方向中央寄せ */
  gap: 2px; /* 行間・列間の間隔（行, 列） */
  list-style: none;
  margin: 0;
  padding: 0;
}
/* 各メニュー項目 */
.p-nav__item {
  flex: 0 1 calc(25% - 2px); /* 1行に4個並ぶように調整 */
  text-align: center;
}
/*テキストリンクの色指定*/
.p-nav__item a:link {
  color: #FFFFFF;
}
/* リンクの装飾 */
.p-nav__link {
  display: block;
  text-decoration: none;
  padding: 2px;
  height: 28px;
  font-weight: 400;
  color: #FFFFFF; /*テキストの色　白*/
  background-color: #362B9B; /*ベースの色 紺色*/
  border-radius: 1px;
  transition: background-color 0.2s, color 0.2s;
}
.p-nav__item--tel {
  color: #FFFFFF;
  /*font-size: 10vw;*/
}
.p-nav__link--tel:link {
  color: #FFFFFF;
}
.p-nav__link--tel:visited {
  color: #FFFFFF;
}
/*訪問済のリンクの色指定*/
.p-nav__link:visited {
  color: #FFFFFF
}
/*ホバー時の挙動*/
.p-nav__link:hover, .p-nav__link:focus-visible {
  background-color: #BDB2FA; /*ホバー時のボタンの色*/
  color: #716D96;
  text-decoration: none;
}
/*ハンバーガーメニューの非表示*/
.p-header__hamburger {
  display: none;
}
/*トグルボタンの非表示*/
/*.p-nav__toggle {
  display: none;
}*/
.p-nav__item--hr {
  display: none;
}
.p-header__contact-box a{
  text-decoration: none;
  color: #1B0F80; /* テキスト：紺色 */
  font-weight: bold;
}

.p-header__contact-box a:visited,
.p-header__contact-box a:hover,
.p-header__contact-box a:focus{
  color: #1B0F80; /* テキスト：紺色 */
}

.p-nav__contact{
  background: #FFED2B;
  padding: 5px 40px;
	text-align: center;
	border-radius: 10px;
}

.p-nav__item[data-order="9"]{
	display: none;
}

@media (max-width: 960px) and (min-height: 100vw){
/*@media (max-width: 960px) {*/ /*実装確認用*/
  #header {
    max-width: none;
    width: 100%;
    height: auto;
  }
  .l-header__inner {
    height: 14vw;
    align-items: center;
  }
  .l-header__block {
    display: none;
  }
  .l-header__heading {
    display: inline-block;
    transform-origin: top left;
    width: 50vw;
    /*transform: scale(1.2);*/
  }
  .l-header__heading a img {
    width: 100%;
    height: auto;
    display: block;
  }
  .p-header__hamburger {
    display: inline;
  }
  .p-nav__toggle {
    display: inline-flex;
    border-radius: 50%;
    background: #362B9B;
    margin-left: auto;
    margin-right: 2.1vw;
    position: relative;
    z-index: 10002;
    width: 10vw;
    height: 10vw;
    line-height: 0;
    border: 0;
    cursor: pointer;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .p-nav__toggle span {
    display: block;
    width: 6vw;
    height: 0.5vw;
    background: #fff;
    transition: transform .2s, opacity .2s, background-color .2s;
    margin: 0.5vw 0;
    border-radius: 2px;
  }
  /* 既存の段組は解除し、メニューは全画面に（初期は非表示） */
  .p-nav__list {
    position: fixed;
    inset: 0;
    z-index: 10001;
    display: none; /* ← チェックONでdisplay切替 */
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    gap: 1vw;
    background: linear-gradient(#362B9BFF,#362B9BFF 65%, #362B9BEE);
    overflow-y: auto;
  }
  /* アイテム幅の制約を解除（全幅ボタンに） */
  .p-nav__item {
    flex: 0 0 auto;
    text-align: center;
    font-size: 5vw;
    border-bottom: 1px solid #FFF;
    width: 95vw;
    margin: 0 auto;
  }
  .p-nav__item p {
    font-weight: 400;
    transition: background-color .2s, color .2s;
    color: #fff;
  }
  .p-nav__link {
    display: block;
    width: 100%;
    padding: 14px 12px;
    height: auto;
    border-radius: 6px;
    /*background-color: #362B9B;*/
    color: #fff;
    font-weight: 600;
    transition: background-color .2s, color .2s;
  }
  .p-nav__link:hover, .p-nav__link:focus-visible {
    background-color: #BDB2FA;
    color: #716D96;
    text-decoration: none;
  }
	
  /*兄弟要素の中で最後の2つの要素を指定*/
  .p-nav__item:nth-last-child(-n+2) {
    border-bottom: none; /* 区切り線を削除 */
  }
  /*兄弟要素の中で採用情報の要素を指定*/
  .p-nav__item:nth-last-child(7) {
    border-bottom: none; /* 区切り線を削除 */
  }
  /* お問い合わせだけデザイン変更 */
  .p-nav__item:nth-last-child(2) .p-nav__link {
    color: #1B0F80; /* テキスト：紺色 */
    font-weight: 600; /* （任意）強調 */
    background-color: #FFED2B;
  }
  /* ホバー時（必要なら） */
  .p-nav__item:nth-last-child(2) .p-nav__link:hover {
    background-color: #FFE566; /* 少し明るい黄色 */
    color: #1B0F80; /* テキストはそのまま */
  }
	
  /* ====== チェックONで開く ====== */
  header:has(#navToggle:checked) .p-nav__list {
    display: flex;
  }
	  /* ハンバーガーがONのときだけ order を割り当てて並び変え */
  header:has(#navToggle:checked) .p-nav__item { order: 0; } /* 初期化 */
  header:has(#navToggle:checked) .p-nav__item[data-order="1"] { order: 1; }
  header:has(#navToggle:checked) .p-nav__item[data-order="2"] { order: 2; }
  header:has(#navToggle:checked) .p-nav__item[data-order="3"] { order: 3; }
  header:has(#navToggle:checked) .p-nav__item[data-order="4"] { order: 4; }
  header:has(#navToggle:checked) .p-nav__item[data-order="5"] { order: 5; }
  header:has(#navToggle:checked) .p-nav__item[data-order="6"] { order: 6; }
  header:has(#navToggle:checked) .p-nav__item[data-order="7"] { order: 7; }
  header:has(#navToggle:checked) .p-nav__item[data-order="8"] { order: 8; }
  header:has(#navToggle:checked) .p-nav__item[data-order="9"] { 
	  order: 9;
	  display: block;
  }
  /*ハンバーガーメニューを×にする*/
  #navToggle:checked + .p-nav__toggle span {
    position: absolute;
  }
  #navToggle:checked + .p-nav__toggle span:nth-child(1) {
    transform: rotate(45deg);
  }
  #navToggle:checked + .p-nav__toggle span:nth-child(2) {
    opacity: 0;
  }
  #navToggle:checked + .p-nav__toggle span:nth-child(3) {
    transform: rotate(-45deg);
  }