/* トップページの配色・フォント・固有設定。 */
html { font-size: 62.5%; }
body { background-image: none; background-color: #fbfbfb; }
body {
  font-family: Jost, "Zen Maru Gothic", sans-serif;
  color: rgb(0, 0, 0);
}
@media only screen and (max-width: 767px) {
  .c-homeTitle .is-ja {
    border-left: 2px solid rgb(0, 0, 0);
  }
}
.t-box {
  color: rgb(38, 38, 38) !important;
  background-color: rgb(242, 242, 242) !important;
}
.t-box * {
  color: rgb(38, 38, 38) !important;
  fill: rgb(38, 38, 38) !important;
}
.l-nav {
  color: rgb(0, 0, 0);
  background-color: rgb(242, 242, 242);
}
.is-bd, .l-topscrollBd, .l-other h1::after {
  background-color: rgb(0, 0, 0) !important;
}
footer {
  color: rgb(0, 0, 0);
}
.l-topscrollLabel {
  color: rgb(0, 0, 0);
}
.l-topscrollArrow svg {
  stroke: rgb(0, 0, 0);
}
.logoImage {
  max-height: 107rem;
  height: auto;
}
.l-footer {
  background-color: rgb(226, 226, 226);
}
.l-footerNavSns {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: 0px;
}
.l-footerNavSns > li {
  margin: 0px;
}
.l-footerNavSns > li a {
  display: block;
  padding: 8px;
  background-color: rgb(255, 255, 255);
  border-radius: 4px;
}
.l-footerNavSns > li a img {
  width: 26px;
  height: 26px;
  vertical-align: bottom;
}
.c-homeTitle .is-en, .l-itemRelaed .c-sectionTitle .is-en, .c-pageTitle .is-text, .c-footerNavTitle, .l-aboutContentTitle .is-en, .l-aboutContentTitle .is-ja, .l-other h1, .communityData .communityMain .communityTitle, .communityData .communityMain #limitedUrl .communityUrlHeader::before, .communityData .communityMain #limitedItem .communityItemHeader::before, .communityTitle {
  font-weight: 300;
}
.c-button {
  color: rgb(0, 0, 0);
  background-color: rgb(255, 255, 255);
  border: 1px solid rgb(0, 0, 0);
}
.c-button:hover {
  color: rgb(255, 255, 255);
  background-color: rgb(0, 0, 0);
  border: 1px solid rgb(0, 0, 0);
}
.l-navContent > li > a:hover {
  color: rgb(255, 255, 255);
  background-color: rgb(0, 0, 0);
}
.c-button::before {
  background-color: rgb(255, 255, 255);
}
.c-button::after {
  background-color: rgb(255, 255, 255);
}
.c-button:hover::before {
  background-color: rgb(255, 255, 255);
}
.c-button:hover::after {
  background-color: rgb(0, 0, 0);
}
.c-button.is-more::before {
  background-color: rgb(0, 0, 0);
}
.c-button.is-more::after {
  background-color: rgb(0, 0, 0);
}
.c-button.is-more .is-arrow {
  border-color: transparent transparent transparent rgb(0, 0, 0);
}

/* ボタン化したメニュー操作のブラウザ標準装飾をリセット。 */
.l-headerNavButton,
.l-navButton {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}
.l-headerNavButtonWrap,
.l-navButtonWrap {
  display: block;
}
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
button:focus-visible,
a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
