﻿@charset "utf-8";
/*======================================
highcontrast.css
背景色:#121212;
文字色:#FFFFFF;
色変更による設定以外追記しない（幅、高さ、余白など）
======================================*/

/*===========================
Basic
=============================*/
:root {
  --high-background-default: #121212;
  --high-background-subtle: #2d2d2d;
  --high-background-subtler: #5d5d5d;
  --high-background-accent: #8cc3cc;
  --high-background-link: #4b4b4b;
  --high-background-link-hover: #000000;
  --high-background-hover: #535353;
  --high-background-inverse: #fff;
  --high-background-placeholder: #c4c4c4;
  --high-text-default: #ffffff;
  --high-text-visited: #e6e6e6;
  --high-text-hover: #00ddff;
  --high-text-active: #00a2ff;
  --high-text-bold: #ffff00;
  --high-text-accent: #ff00ff;
  --high-text-link: #ffffff;
  --high-text-placeholder: #a3a3a3;
  --high-text-inverse: #000000;
  --high-text-disabled: #a1a1a1;
  --high-text-important: #ff2200;
  --high-text-bredcrumb: #ffffff;
  --high-text-bredcrumb-link: #adadad;
  --high-border-default: #ffffff;
  --high-border-accent: #c7c7c7;
  --high-border-black: #000;
  --high-border-table: #f3f7fc;
  --high-border-focus: #ffc400;
  --high-border-subtle: #737374;
}

body {
  background: var(--high-background-default);
  color: var(--high-text-default);
}

a {
  color: var(--high-text-link);
}

a:visited {
  color: var(--high-text-visited);
}

a:hover,
a:focus-within {
  color: var(--high-text-hover);
}

a:active {
  color: var(--high-text-active);
}

[class*='__title-text-main'],
[class*='__title-text'] span[lang='en'] {
  color: var(--high-text-default);
}

/*===========================
Header & Drawer
=============================*/
/*  Header  */
.site-header,
.drawer {
  background: var(--high-background-subtle);
  border-bottom: 1px solid var(--high-border-default);
}

/* text color change */
.site-header__gnav-title,
.site-header__nav-login,
.drawer-nav__link,
.drawer-search__title,
.site-header__nav-language {
  color: var(--high-text-default);
}

.site-header__nav-language:hover,
.site-header__nav-language:focus-within,
.site-header__gnav-link:hover,
.site-header__gnav-link:focus-within {
  color: var(--high-text-hover);
}

/* border color change */
.site-header__nav-language,
.search-form__inner,
.site-header__gnav-item:not(:last-child)::after,
.drawer-nav__item::after {
  border-color: var(--high-border-default);
}

/* icon color change */
.site-header__nav-language::after,
.search-form__input,
.site-header__nav-login::before {
  filter: invert(1) brightness(100%) saturate(0%);
}

.site-header__gnav-icon img {
  filter: invert(1) brightness(200%) saturate(0%);
}

.drawer-nav__link::after {
  border-color: #000;
  filter: invert(1) saturate(0%);
}

/* hover & focus color change */
.site-header__gnav-link:hover,
.site-header__gnav-link:focus-within {
  background-color: var(--high-background-hover);

  .site-header__gnav-title {
    color: var(--high-text-hover);
  }
}

.drawer-nav__link:hover,
.drawer-nav__link:focus-within {
  background-color: var(--high-background-hover);
  color: var(--high-text-hover);
}

/* hover & focus background color change */
.site-header__nav-language:hover,
.site-header__nav-language:focus-within,
.search-form__inner:hover,
.search-form__inner:focus-within,
.toggle:hover,
.toggle:focus-within,
.site-header__nav-login:hover,
.site-header__nav-login:focus-within {
  background-color: var(--high-background-hover);
}

.drawer-search__inner input[type='text']:hover,
.drawer-search__inner input[type='text']:focus-within {
  background-color: var(--high-background-placeholder);
}

/* hover & focus text color change */
.toggle:hover .toggle-text {
  color: var(--high-text-hover);
}

/* hover & focus border color change */
.search-form__input:focus-visible {
  border-color: var(--high-border-focus);
}

form input[type='submit'].search_bt {
  background: var(--high-background-link);
  border-color: var(--high-border-accent);
}

input[type='submit']:hover,
input[type='submit']:focus-within {
  background-color: var(--high-background-link-hover);
  transform: translateY(-1px);
}

.toggle,
.site-header__nav-login {
  background-color: var(--high-background-subtle);
  border: 1px solid var(--high-border-default);
}

.toggle-icon::before,
.toggle-icon::after,
.toggle-icon span {
  background-color: var(--high-background-inverse);
}

.toggle-text {
  color: var(--high-text-default);
}

/* UD */
.UD .color_change > dt,
.UD .textsize_change > dt,
.UD .color_change > dd > a,
.UD .textsize_change > dd > a,
.search-form__label {
  color: var(--high-text-default);
}

.UD .color_change .default > a {
  color: var(--high-background-default);
}

.UD .color_change .low > a {
  color: var(--high-text-default);
}

.UD .textsize_change > dd > a {
  background-color: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.search-form__inner input[type='submit'],
.drawer .search-form__inner input[type='submit'] {
  background: var(--high-background-subtle);
  border: var(--high-border-default);
}

/*===========================
Footer
=============================*/
.site-footer__container {
  background: var(--high-background-subtle);
}

.contact-list__label,
.contact-list__value,
.contact-list__value > a,
.location-info__main > span {
  color: var(--high-text-default);
}
/* ------- Footer Links ------- */
.site-footer-links__list {
  background: var(--high-background-subtle);
  border: 1px solid var(--high-border-default);
}

.site-footer-links__item:not(:first-child)::before {
  background-color: var(--high-background-inverse);
}

.site-footer-links__link {
  color: var(--high-text-default);
}

.site-footer-links__link::after {
  background-color: var(--high-border-default);
}

.site-footer-links__link:hover,
.site-footer-links__link:focus-within {
  background: none;
}

@media (width < 576px) {
  .site-footer-links__list {
    background: none;
    border: none;
  }

  .site-footer-links__link {
    background: var(--high-background-link);
    border: 1px solid var(--high-border-default);
  }
}

/* ------- Footer Nav ------- */
.footer-nav__link {
  background-color: var(--high-background-subtle);
  border-color: var(--high-border-default);
}

.footer-nav__link:hover,
.footer-nav__link:focus-visible {
  background-color: var(--high-background-hover);
}

.footer-nav__link::before {
  background-color: var(--high-background-accent);
}

.footer-nav__label {
  color: var(--high-text-default);
}

/* ------- reread-link ------- */
.reread-link {
  background-color: var(--high-background-subtle);
  border: 1px solid var(--high-border-default);
}

.reread-link:hover,
.reread-link:focus-visible {
  background-color: var(--high-background-hover);
  box-shadow: 0 0 0 2px var(--high-border-default);
}

/*===========================
Copyright
=============================*/
.copyright {
  background: var(--high-background-default);
}
.copyright span {
  color: var(--high-text-default);
}

.copyright__banner img {
  filter: invert(1) brightness(200%) saturate(0%);
}
/*===========================
contents
=============================*/
/* breadcrumb */
.locus-container {
  background-color: var(--high-background-subtler);
}

.locus a {
  color: var(--high-text-link);
}

.locus span {
  color: var(--high-text-default);
}

/* side-nav */
.side-nav::before {
  background: var(--high-background-subtle);
  border: 1px solid var(--high-border-default);
}

.side-nav__title {
  color: var(--high-text-default);
}

.side-nav__link,
.side-nav__label {
  color: var(--high-text-link);
}

.side-nav__icon {
  background: var(--high-background-default);
  border-color: var(--high-border-default);
}
.side-nav__link::before {
  background: var(--high-background-hover);
}

.side-nav__link::after {
  border-bottom-color: var(--high-border-default);
}

article h1.content-title,
h1.content-title,
.txtbox h2,
.txtbox h3,
.txtbox h4,
.txtbox h5,
.txtbox h6,
.txtbox p,
.txtbox table,
.txtbox dl,
.txtbox ul,
.txtbox ol,
.txtbox li,
.txtbox i,
.txtbox table th,
.txtbox table td {
  color: var(--high-text-default);
}

.txtbox a {
  color: var(--high-text-link);
}

article h1.content-title::after {
  background-color: var(--high-border-default);
}

article .txtbox h2 {
  background-color: var(--high-background-subtle);
  border: 1px solid var(--high-border-default);
}

.txtbox h3::before,
.txtbox h5::before {
  background-color: var(--high-background-subtler);
}

.txtbox h6::before {
  background-color: var(--high-background-inverse);
}

.txtbox h4::before {
  box-shadow: inset 0 0 0 calc(5 / 16 * 1rem) var(--high-background-inverse);
}

.txtbox ul > li:before {
  background-color: var(--high-background-inverse);
}

article .txtbox table th {
  color: var(--high-text-default);
}
/* table */
.txtbox table th {
  border: 1px solid var(--high-border-default);
}

.txtbox table td {
  border: 1px solid var(--high-border-default);
}

.txtbox table th {
  color: var(--high-text-default);
  background: var(--high-background-subtle);
}

.txtbox table th[scope='col'] {
  background: var(--high-background-subtle);
}

.txtbox table th[scope='row'] {
  background: var(--high-background-subtle);
  border: 1px solid var(--high-border-default);
}

.txtbox table td {
  background: var(--high-background-default);
}

/*===========================
Top Page
=============================*/
/* important-news */
.important-news,
.main-content {
  background-color: var(--high-background-default);
}

.important-news__container,
.important-news__link {
  background: var(--high-background-default);
  border: 1px solid var(--high-border-default);
  overflow: hidden;
}

.important-news__title {
  background: var(--high-background-subtle);
  color: var(--high-text-bold);
}

.important-news__item a {
  color: var(--high-text-bold);
}

.important-news__item a::before {
  background: var(--high-text-bold);
}

.important-news__link::after {
  filter: invert(1) brightness(100%) saturate(0%);
}

.important-news__link:hover,
.important-news__link:focus-within {
  background: var(--high-background-hover);
}

.main-content__search {
  background: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.main-content__search input[type='text'] {
  background: var(--high-background-default);
}

.quick-search-form__label,
.quick-search-form__label-en {
  color: var(--high-text-default);
}

form input[type='text'].quick-search-form__input {
  background-color: var(--high-background-subtle);
  border-color: var(--high-border-default);
　color: var(--high-text-default);
}

form input[type='text'].quick-search-form__input:hover,
form input[type='text'].quick-search-form__input:focus-within {
  background-color: var(--high-background-hover);
}

form input[type='submit'].quick-search_bt {
  background-color: var(--high-background-link);
  border-color: var(--high-border-accent);
}

.quick-search-form__input::placeholder {
  color: var(--high-text-placeholder);
}

form input[type='submit'].quick-search_bt:hover,
form input[type='submit'].quick-search_bt:focus-visible {
  background-color: var(--high-background-link-hover);
}

.ad-banner {
  background-color: var(--high-background-default);
  border-color: var(--high-border-default);
}

.ad-banner__title {
  color: var(--high-text-default);
  background-color: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.slick-prev,
.slick-next {
  background-color: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.buttons .button.js-stop,
.buttons .button.js-play {
  background-color: var(--high-background-default);
  border-color: var(--high-border-default);
}

.slick-prev:hover,
.slick-prev:focus-within,
.slick-next:hover,
.slick-next:focus-within,
.buttons .button.js-stop:hover,
.buttons .button.js-stop:focus-within,
.buttons .button.js-play:hover,
.buttons .button.js-play:focus-within {
  background-color: var(--high-background-hover);
}

.buttons .button.js-stop::before,
.buttons .button.js-stop::after {
  background-color: var(--high-background-inverse);
}
.buttons .button.js-play::before {
  border-color: var(--high-border-default);
}

.mypage-banner,
.digital-library-banner {
  background-color: var(--high-background-default);
  border-color: var(--high-border-accent);
  outline-color: var(--high-border-subtle);
  color: var(--high-text-default);
}

.mypage-banner:hover,
.mypage-banner:focus-within,
.digital-library-banner:hover,
.digital-library-banner:focus-within {
  background-color: var(--high-background-hover);
  outline-color: var(--high-border-default);
}

.digital-library-banner img {
  filter: invert(1) brightness(180%) saturate(0%);
}

.search-nav__link {
  color: var(--high-text-default);
  background-color: var(--high-background-default);
  box-shadow: 0px 0px 0px 3px var(--high-border-accent);
}

.search-nav__link:hover,
.search-nav__link:focus-within {
  background-color: var(--high-background-hover);
}

.search-nav__link::after {
  border-color: var(--high-border-default);
}

.info-section {
  background-color: var(--high-background-subtle);
}

.calendar__title,
.top-info__title,
.top-info__title span[lang='ja'] {
  color: var(--high-text-default);
}

.calendar__title::before,
.top-info__title::before {
  filter: invert(1) brightness(360%) saturate(0%);
}

.calendar__title::after,
.top-info__title::after {
  background-color: var(--high-border-default);
}

/* calendar */
.calendar,
#library-select,
.calendar table,
.calendar thead .calendar_btn {
  background: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

#library-select,
.calendar .day td {
  color: var(--high-text-default);
}

.library-select-wrapper::after {
  border-color: var(--high-border-default);
}

#library-select option {
  /* layout */
  width: 100%;
  /* style */
  background: var(--high-background-default);
}

#library-select option:hover,
#library-select option:focus,
#library-select option:checked {
  background-color: var(--high-background-hover);
  color: var(--high-text-bold);
}

.calendar table thead,
.calendar .year_month td,
.calendar .day td {
  background-color: var(--high-background-default);
}

.calendar thead .calendar_btn::before {
  border-color: var(--high-border-default);
}

.calendar .week th:not(:nth-child(1)),
.calendar .week th:not(:nth-child(7)) {
  background-color: var(--high-background-default);
}

.calendar .week th:nth-child(1) {
  background-color: var(--high-background-subtle);
}
.calendar .week th:nth-child(7) {
  background-color: var(--high-background-subtle);
}

.calendar .day .closed::after,
.calendar-note__item:first-of-type:before,
.calendar .day .event:after,
.calendar-note__item:last-of-type:before {
  background-color: var(--high-background-subtle);
  border: 1px solid var(--high-border-default);
}

.calendar-link {
  background-color: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.calendar-link:hover,
.calendar-link:focus-within {
  background-color: var(--high-background-hover);
}

.calendar-link::before,
.calendar-link::after {
  filter: invert(1) brightness(270%) saturate(0%);
}

/* infomation */
[role='tablist'] button {
  background-color: var(--high-background-default);
  border: 1px solid var(--high-border-default);
  color: var(--high-text-default);
}

[role='tab'][aria-selected='true'] {
  background-color: var(--high-background-inverse) !important;
  color: var(--high-text-inverse) !important;
}

[role='tab'][aria-selected='true']::after {
  border-top-color: var(--high-border-default) !important;
}

[role='tab'][aria-selected='false'] {
  background-color: var(--high-background-default);
}

[role='tablist'] button:hover,
[role='tablist'] button:focus-within {
  background: var(--high-background-hover);
}

.top-article__item {
  border-bottom-color: var(--high-border-subtle);
}

.top-article__date,
.top-article__link {
  color: var(--high-text-default);
}

.top-article__category {
  background-color: var(--high-background-default);
  border: 1px solid var(--high-border-default);
  color: var(--high-text-default);
}

/* link */
.top-info__more {
  background-color: var(--high-background-default);
  border: 1px solid var(--high-border-default);
  color: var(--high-text-default);
}

.top-info__more::after {
  filter: invert(1) brightness(270%) saturate(0%);
}

.top-info__more:hover,
.top-info__more:focus-within {
  background-color: var(--high-background-hover);
}

/* Links For Kids */
.links-forkids {
  background-color: var(--high-background-default);
}

.links-forkids__title {
  color: var(--high-text-default);
}

.links-forkids__title::before {
  filter: invert(1) brightness(200%) saturate(0%);
}

.links-forkids__title::after {
  background-color: var(--high-border-default);
}

.links-forkids__link {
  background-color: var(--high-background-default);
  border-color: var(--high-border-default);
  color: var(--high-text-default);
}

.links-forkids__link::before {
  background: linear-gradient(115deg, rgb(0, 0, 0) 72%, #3a3a3a 72%);
  transition: background-color 0.3s ease-in-out;
}

.links-forkids__link:hover,
.links-forkids__link:focus-within {
  border-color: var(--high-border-accent);
}

.links-forkids__link:hover::before {
  background: var(--high-background-hover);
}

/* top-introduction */
.top-introduction {
  background: var(--high-background-subtle);
}

.top-ranking__title,
.top-ranking__title span[lang='en'],
.top-introduction__title {
  color: var(--high-text-default);
}

.top-introduction__title::before {
  filter: invert(1) brightness(200%) saturate(0%);
}

.top-ranking__title::after,
.top-introduction__title::after {
  background-color: var(--high-border-default);
}

.top-ranking__wrap {
  background: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.link-general.top-ranking__link,
.link-children.top-ranking__link,
.link-young.top-ranking__link {
  background-color: var(--high-background-default);
  border-color: var(--high-border-default);
  outline-color: var(--high-border-accent);
  color: var(--high-text-default);
  transition: background-color 0.3s ease-in-out;
}

.link-general.top-ranking__link::before,
.link-children.top-ranking__link::before,
.link-young.top-ranking__link::before,
.link-general.top-ranking__link::after,
.link-children.top-ranking__link::after,
.link-young.top-ranking__link::after {
  filter: invert(1) brightness(360%) saturate(0%);
}

.link-general.top-ranking__link:hover,
.link-children.top-ranking__link:hover,
.link-young.top-ranking__link:hover {
  background-color: var(--high-background-hover);
  outline-color: var(--high-border-default);
}

.librarian-books__item {
  border-bottom-color: var(--high-border-subtle);
}

.librarian-books__date,
.librarian-books__title,
.librarian-books__book {
  color: var(--high-text-default);
}

/* top-bg */
.top-bg img {
  filter: brightness(60%) saturate(0%);
}

/* Links */
.links {
  background-color: var(--high-background-subtle);
}

.links-banner__title {
  color: var(--high-text-default);
}

.links-banner__title::before {
  background-image: linear-gradient(to right, var(--high-border-subtle) 2px, transparent 2px);
}

.links-list__link {
  background-color: var(--high-background-default);
  border: 1px solid var(--high-border-default);
  color: var(--high-text-default);
}

.links-list__link::after {
  filter: invert(1) brightness(360%) saturate(0%);
}

.links-list__link:hover,
.links-list__link:focus-within {
  background-color: var(--high-background-hover);
}

/* top-banner */
.top-banner {
  background-color: var(--high-background-default);
}

.top-banner__title,
.top-banner__description {
  color: var(--high-text-default);
}
.top-banner__title::after {
  background-color: var(--high-border-default);
}

/*===========================
menu
=============================*/
.menu-header {
  background: var(--high-background-subtler);
}

.menu-header__title-icon {
  background: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.menu-header__title-icon img {
  filter: invert(1) brightness(280%) saturate(0%);
}

.menu-header__title-text {
  color: var(--high-text-default);
}

.menu-header__title-text::after {
  background: var(--high-background-inverse);
}

.menu-nav__link {
  color: var(--high-text-default);
  background: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.menu-nav__link:hover,
.menu-nav__link:focus-within {
  background-color: var(--high-background-hover);
}

.menu-nav__link::before {
  background: var(--high-background-accent);
}

.menu-nav__link::after {
  filter: invert(1) brightness(200%) saturate(0%);
}

/*===========================
Archive
=============================*/
.news-list__date,
.news-list__category,
.news-list__title,
.news-list__link {
  color: var(--high-text-default);
}

.news-list__category {
  background: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.news-list__item {
  border-bottom-color: var(--high-border-subtle);
}

.pagination__link {
  color: var(--high-text-default);
  background: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.pagination__link--prev::before,
.pagination__link--next::after {
  filter: invert(1) brightness(200%) saturate(0%);
}

.pagination__link:hover,
.pagination__link:focus-within {
  background-color: var(--high-background-hover);
}
/*===========================
kids
=============================*/
.kids-mainvisual {
  background: var(--high-background-default);
}

.kids .kids-mainvisual__title img:nth-child(1) {
  display: none;
}

.kids .kids-mainvisual__title img:nth-child(2) {
  display: block;
}

.kids-news::before {
  filter: brightness(80%) saturate(0%);
}

.kids-news__wrapper {
  background: var(--high-background-subtler);
}

.kids-news__link {
  background: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}
.kids-news__link:hover {
  background-color: var(--high-background-subtle);
}
.kids-news__date,
.kids-news__title {
  color: var(--high-text-default);
}

.kids-news__more {
  color: var(--high-text-default);
  background-color: var(--high-background-default);
  border: 1px solid var(--high-border-default);
}

.kids-news__more:hover {
  background-color: var(--high-background-subtle);
}

/* 言語モーダル */
.language-select {
  background: var(--high-background-subtle);
  outline: 1px solid var(--high-border-default);
}
  .language-select__link {
    background-color: var(--high-background-subtle);
    outline: 1px solid var(--high-border-default);
    color: var(--high-text-default);
  }
  .language-select__link:hover,
  .language-select__link:focus-within {
    background-color: var(--high-background-hover);
    color: var(--high-text-hover);
  }

/*20250804スタイル調整*/

a
 {
    color: var(--high-text-default);
}
.box_def .box_def_title {
    background-color: var(--high-background-subtle);
    border-bottom: 1px solid var(--high-border-default);
}

.txtbox img {
  background-color: var(--high-background-inverse);
}
body.kids .txtbox p, {
  color: var(--high-text-inverse)!important;
}
.librarian-book__title + .librarian-book__author
 {
  background-color:#2D2D2D;
}
.acrobat_comment p
 {
    color: var(--high-text-inverse);
}
 form input[type='text'].quick-search-form__input {
    color: var(--high-text-default) !important;
}
.drawer__title-text span{ color: var(--high-text-default);}
.site-header__gnav-item a:hover, .site-header__gnav-item a:focus-within
 {
    background-color: var(--high-background-subtler);
}
/**************************
Youngページ
**************************/
body.young .menu-header,
body.young .txtbox h2,
body.young .inside.content h2:has(+ .news_section),
body.young .txtbox h3::before,
body.young .side-nav::before,
body.young .txtbox table th,
body.young .side-nav__icon
{ background: #2D2D2D; color: #fff}

body.young .side-nav__link::before
{ background-color: #535353;}

body.young h1.content-title::after,
body.young .txtbox h3::before,
body.young .txtbox h5::before
{ background-color: #fff;}

body.young .txtbox h4::before
{ box-shadow: inset 0 0 0 calc(5 / 16 * 1rem) #fff;}

body.young .menu-header__title-text::after,
body.young .txtbox ul > li:before
{ background-color: #fff;}

body.young .side-nav__icon,
body.young .txtbox table th,
body.young .txtbox table td,
body.young .txtbox ul > li > ul > li:before
{ border-color: #fff;}
body.young .txtbox ul > li > ul > li:before
{ background-color: transparent;}

/*キッズページ修正0805*/
.kids .contents#main {
    background: #2D2D2D;
}
.kids .contents_inside .contents_main {
    background-color: var(--high-background-default);
}