@import url('https://fonts.googleapis.com/css2?family=Noto+Sans&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR&display=swap');

body {
  font-family: "Noto Sans", sans-serif;
}

html:lang(ja) body {
  font-family: "Noto Sans JP", "Noto Sans", sans-serif;
}

html:lang(zh-CN) body {
  font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", "Noto Sans", sans-serif;
}

html:lang(zh-TW) body {
  font-family: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", "Noto Sans", sans-serif;
}

html:lang(ko) body {
  font-family: "Noto Sans KR", "Noto Sans", sans-serif;
}

html:lang(zh-TW) h2,
html:lang(zh-TW) h3 {
  font-weight: 700;
  text-shadow: 0 0 1.2px currentColor;
}





/* パンくずと右側の言語切替メニューを横並びにする */
.breadcrumb-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* 言語切替メニューの全体を相対配置にする */
.language-switcher {
  position: relative;
}

/* Language ボタン */
.language-switcher .dropdown-button {
  background: none;
  border: none;
  display: flex;
  align-items: center;
  cursor: pointer;
  font-size: 14px;
  padding: 4px 8px;
}

/* アイコン画像 */
.language-switcher .dropdown-button img.lang-icon {
  width: 20px;
  height: 20px;
  object-fit: contain;
  margin-right: 6px;
}

/* プルダウンメニュー */
.language-switcher .dropdown-content {
  display: none;
  position: absolute;
  top: 100%;
  left: 0; /* ? ここを right: 0 → left: 0 に */
  background-color: white;
  min-width: 80px;
  width: max-content;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  border-radius: 4px;
  z-index: 1000;
}


/* プルダウン内のリンク */
.language-switcher .dropdown-content a {
  display: block;
  padding: 6px 10px;
  font-size: 13px;
  color: #333;
  white-space: nowrap;
  text-decoration: none;
}

.language-switcher .dropdown-content a:hover {
  background-color: #f5f5f5;
}

/* ホバー時にプルダウン表示 */
.language-switcher:hover .dropdown-content {
  display: block;
}

/* モバイル対応 */
@media screen and (max-width: 768px) {
  .breadcrumb-flex {
    flex-direction: column;
    align-items: flex-start;
  }

  .language-switcher {
    margin-top: 10px;
  }
}

.breadcrumb-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#breadcrumb {
  display: flex;
  justify-content: space-between;
  align-items: center;
}


.nav-small-text {
  font-size: 10px !important;
  line-height: 1.4;
}

.c-btn-b__txt05 {
  font-size: 14px !important;
  font-weight: bold !important;
  line-height: 1.4;
}




.small-text {
  font-size: 12px !important;
}


.note-after-link {
  font-size: 10px !important;     /* 小さめの文字にする */
  text-align: center;   /* 中央寄せ（レイアウトに合わせて変更可） */
  margin-top: 0.5em;    /* ボタンとの間に少し余白を付ける */
  color: #000;          /* 文字色を必要に応じて変更 */
  line-height: 1.4;     /* 行間調整（必要なら） */
}


h2 .h2-note {
  display: inline-block; /* または block; */
  line-height: 1.0em !important;
  /* 必要ならフォントサイズも明示的に設定 */
  font-size: 12px;
  margin: 0;
  padding: 0;
}


.h2-note br {
  margin: 0;
  padding: 0;
  line-height: inherit;
}




.button-wrapper {
  margin-bottom: 0;
}

.annotation-text {
  margin-top: 4px; /* あるいは 0 */
}



.note-hp-link {
  font-size: 10px !important;     /* 小さめの文字にする */
  text-align: center;   /* 中央寄せ（レイアウトに合わせて変更可） */
  margin-top: -2.0em;    /* ボタンとの間に少し余白を付ける */
  color: #000;          /* 文字色を必要に応じて変更 */
  line-height: 1.4;     /* 行間調整（必要なら） */
}



/* 共通：デフォルト（PC向け） */
.anchor-offset {
  display: block;
  position: relative;
  top: -40px;
  height: 0;
  visibility: hidden;
}

/* スマホ用：画面幅が768px以下のときだけ上書き */
@media screen and (max-width: 768px) {
  .anchor-offset {
    top: -150px; /* スマホではヘッダーが小さいなどに応じて調整 */
  }
}

.lang-icon {
  width: 24px;
  height: auto;
  display: inline-block;
  vertical-align: middle;
}



.translation-note {
  position: absolute;
  bottom: 0px;
  right: 40px;
  font-size: 0.6em;  /* フォントサイズをさらに小さく */
  color: #000;
  z-index: 9999;
  background: rgba(255, 255, 255, 0.8);  /* 視認性向上のための背景色 */
  line-height: 1.2;  /* 行間の調整 */
}



.scroll-adjust {
  scroll-margin-top: 251px; /* ヘッダーの高さに合わせて調整 */
}
