@font-face {
  font-family: "Understand Mincho";
  src: url("assets/fonts/shippori-mincho-text-400.woff") format("woff");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Understand Mincho";
  src: url("assets/fonts/shippori-mincho-text-500.woff") format("woff");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "Understand Editorial";
  src: url("assets/fonts/cormorant-garamond-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
:root {
  --serif: "Understand Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;
  --editorial: "Understand Editorial", Georgia, "Times New Roman", serif;
}
body {
  font-family: var(--serif);
  font-kerning: normal;
  line-height: 1.95;
}
.hero h1 {
  letter-spacing: .075em;
  line-height: 1.72;
}
.serif-title, .hero h1, .value-item h3, .dialog-content > h2, .contact-band h3 {
  font-synthesis: none;
}
.hero-description { font-size: 14px; }
.about-copy p:not(.lead-copy), .business-content > p, .value-item p {
  font-size: 14px;
  line-height: 2.15;
}
.recruit-description, .recruit-actions > p, .company-statement {
  font-size: 13px;
  line-height: 2.15;
}
.desktop-nav { font-size: 12px; font-weight: 500; }
.section-note, .outlined-label, .recruit-status { font-size: 11px; font-weight: 500; }
.text-link, .business-content .text-link, .filled-button { font-size: 13px; font-weight: 500; }
.highlight-caption { font-size: 12px; line-height: 1.9; }
.business-flow h3 { font-size: 14px; font-weight: 500; }
.business-flow p { font-size: 11px; }
.faq-block > h3, .faq-list summary { font-size: 13px; font-weight: 500; }
.faq-list details > p { font-size: 13px; line-height: 2.05; }
.company-table { font-size: 13px; }
.company-table dt { font-size: 12px; }
.company-table dd > a { font-size: 11px; }
.contact-band > div > p:last-child { font-size: 12px; }
.dialog-content > p:not(.recruit-status), .application-note p { font-size: 13px; }
.job-table > div { font-size: 14px; }
.job-table dt, .job-table small, .application-note h3 { font-size: 13px; }
.job-table dt, .application-note h3 { font-weight: 500; }
.dialog-content > p.job-disclaimer { font-size: 11px; }
.section-heading .eyebrow, .company > .page-width > div > .eyebrow {
  font-family: var(--editorial);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: .13em;
}
.hero-eyebrow { font-family: var(--editorial); font-size: 12px; letter-spacing: .16em; }
.teaser-tag { font-family: var(--editorial); font-size: 14px; font-weight: 500; letter-spacing: .13em; }
.value-english { font-family: var(--editorial); font-size: 12px; font-weight: 500; letter-spacing: .13em; }

@media (max-width: 1100px) {
  .desktop-nav { font-size: 11px; }
}
@media (max-width: 760px) {
  .hero h1 { letter-spacing: .055em; line-height: 1.78; }
  .hero-description { font-size: 12px; line-height: 2.2; }
  .about-copy p:not(.lead-copy), .value-item p { font-size: 12px; line-height: 2.15; }
  .business-content > p, .recruit-description, .company-statement { font-size: 13px; }
  .recruit-actions > p { font-size: 12px; }
  .text-link, .hero-link, .business-content .text-link, .filled-button,
  .recruit-actions > .filled-button { font-size: 12px; }
  .section-note, .outlined-label, .recruit-status { font-size: 10px; }
  .highlight-caption { font-size: 11px; }
  .business-flow h3 { font-size: 13px; }
  .business-flow p { font-size: 10px; }
  .faq-block > h3, .faq-list summary, .faq-list details > p { font-size: 12px; }
  .company-table { font-size: 12px; }
  .company-table dt { font-size: 11px; }
  .company-table dd > a { font-size: 10px; }
  .contact-band > div > p:last-child { font-size: 11px; }
  .dialog-content > p:not(.recruit-status), .application-note p { font-size: 12px; }
  .job-table > div { font-size: 13px; }
  .job-table dt, .job-table small, .application-note h3 { font-size: 12px; }
  .dialog-content > p.job-disclaimer { font-size: 10px; }
  .hero-eyebrow { font-size: 10px; letter-spacing: .13em; }
  .section-heading .eyebrow, .company > .page-width > div > .eyebrow { font-size: 12px; letter-spacing: .11em; }
  .teaser-tag { font-size: 12px; }
  .value-english { font-size: 10px; }
}
@media (max-width: 365px) {
  .hero h1 { letter-spacing: .045em; }
  .hero-eyebrow { font-size: 9px; }
  .hero-description { font-size: 11px; }
}
