body.v2-layout.v3-layout .site-languages > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  gap: 12px;
  border-bottom: 1px solid #E6DFD2;
  color: #1B3A5C;
  cursor: pointer;
  font: 500 15px/1.7 var(--sans);
  list-style: none;
}
.site-languages > summary::-webkit-details-marker { display: none; }
.site-languages > summary::after {
  content: '';
  width: 7px;
  height: 7px;
  border-right: 1px solid #8A6A35;
  border-bottom: 1px solid #8A6A35;
  transform: rotate(45deg);
  margin-inline-end: 4px;
}
.site-languages[open] > summary::after { transform: rotate(225deg); }
.site-language-options { padding-inline-start: 12px; }
body.v2-layout.v3-layout .site-language-options a[aria-current] { font-weight: 700; }
body.v2-layout.v3-layout .site-language-options a[aria-current]::after { content: "✓"; }
html:not(:lang(ja)) body.v2-layout.v3-layout,
html:not(:lang(ja)) body.v2-layout.v3-layout :is(p, li, td, th, dt, dd, a, h1, h2, h3, h4) {
  word-break: normal;
  overflow-wrap: anywhere;
}
html:lang(en) body.v2-layout.v3-layout :is(h1, h2, h3, h4, .v2-brand-ja) { letter-spacing: .02em; }
html:not(:lang(ja)) .v2-mobile-header .v2-brand-ja { white-space: normal; }
html:not(:lang(ja)) body.v2-layout.v3-layout .v3-nav > a { height: auto; flex-basis: auto; }
html:lang(en) .v2-brand-en { display: none; }
@media (max-width: 1000px) {
  body.v2-layout.v3-layout .v2-mobile-menu .site-languages > summary { min-height: 48px; }
}
html:lang(en) body.v2-layout.v3-layout .v3-rail .v2-brand-ja { font-size: 20px; letter-spacing: 0; }
