:root {
  color-scheme: light;
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  color: #171717;
  background: #fff;
  font-synthesis: none;
  -webkit-text-size-adjust: 100%;
}

* { box-sizing: border-box; }
body, p, h1, h2, dl, dd { margin: 0; }
main { width: min(100% - 112px, 1280px); margin-inline: auto; }
.identity { padding: 96px 0 96px; }
.wordmark { font-family: "Helvetica Neue", Arial, sans-serif; font-size: clamp(120px, 16.8vw, 240px); line-height: 0.95; font-weight: 500; letter-spacing: -0.075em; margin-left: -0.065em; }
.company { display: grid; grid-template-columns: 1fr 1.65fr; gap: 64px; padding: 55px 0 104px; border-top: 1px solid #171717; }
h2 { font-family: "Helvetica Neue", Arial, sans-serif; font-size: 30px; line-height: 1.5; font-weight: 500; letter-spacing: -0.025em; }
.detail { display: grid; grid-template-columns: 108px 1fr; gap: 32px; padding: 25px 0 27px; border-bottom: 1px solid #dedede; }
.detail:first-child { padding-top: 0; }
dt { font-size: 13px; color: #666; line-height: 2.15; letter-spacing: 0.04em; }
dd { font-size: 17px; line-height: 1.9; letter-spacing: 0.025em; overflow-wrap: anywhere; }

@media (max-width: 800px) {
  main { width: calc(100% - 56px); }
  .identity { padding: 58px 0 58px; }
  .wordmark { display: block; font-size: clamp(94px, 24vw, 170px); }
  .company { grid-template-columns: 1fr; gap: 42px; padding: 34px 0 64px; }
  h2 { font-size: 25px; }
  .detail { grid-template-columns: 70px 1fr; gap: 20px; padding: 22px 0; }
  dt { font-size: 12px; }
  dd { font-size: 15px; }
  .detail:last-child { grid-template-columns: 1fr; gap: 12px; }
}

@media (max-width: 360px) {
  main { width: calc(100% - 40px); }
}
