
* {
  box-sizing: border-box;
}
html,
body {
  height: 100%;
}

body {
  margin: 0;
  background: #000;
  color: #fff;
  font-family:
    -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Noto Sans JP',
    'Hiragino Kaku Gothic ProN', 'Noto Sans', Arial, sans-serif;

  /*display: grid;
  grid-template-rows: minmax(40px, 1fr) 10fr;  ヘッダー最小40px確保 */

  min-height: 100vh;
  min-height: 100svh;
  min-height: 100dvh;

  padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom)
    env(safe-area-inset-left);
}

.header {
  border-bottom: #fff solid 2px !important;
  position: fixed;
  top: 0;
  width: 100%;
  padding: 4px 10px;
}

.header-title{
  display: flex;
  align-items: center !important;
  line-height: 22px;
  width: 100%;
  background-image: url('img/sp-logo-mark.png');
  background-repeat: no-repeat;
  background-position: 0 50%;
  background-size: auto 22px;
  padding: 0 0 0 26px;
  min-height: 22px;
}
.header .en{
  font-size: clamp(0.688rem, 0.597rem + 0.45vw, 0.938rem);
}
.header .ja{
  font-size: clamp(1rem, 0.909rem + 0.45vw, 1.25rem);
}

.content {
  display: grid;
  height: 100vh;
  place-items: center;
  text-align: center;
  padding: 16px;
}

.msg {
  margin: 0;
  font-weight: 200;
  font-size: 24px;
}

.msg p {
  margin: 8px 0 0 0;
  line-height: 1.4;
}

.page-link {
  margin-top: 20px;
  font-size: 22px;
}
.page-link a{
  color: #f7931e;
}
.page-link a:visited{
  color: #f7931e;
}

.header-title.en,
.msg.en,
.page-link.en {
  display: block;
}
.header-title.ja,
.msg.ja,
.page-link.ja {
  display: none;
}

:lang(ja) .header-title.en,
:lang(ja) .msg.en,
:lang(ja) .page-link.en {
  display: none;
}
:lang(ja) .header-title.ja,
:lang(ja) .msg.ja,
:lang(ja) .page-link.ja {
  display: block;
}

.note {
  margin-top: 12px;
  opacity: 0.75;
  font-size: 0.9rem;
}

@media (max-width: 480px) {
  .msg {
    font-size: clamp(20px, 5.6vw, 40px);
  }
}
