/* --------------------------------------------------
Contents
-------------------------------------------------- */
:root { scroll-behavior: smooth; scroll-padding-top: calc(var(--vw) * (0.293 * 100)); }

body #wrapper .logo { position: fixed; width: 32.4%; left: 5.33%; top: calc(var(--vw) * (0.063 * 100)); }
body #wrapper .mark { position: fixed; width: 53.33%; right: 3.73%; bottom: calc(var(--vw) * (0.032 * 100)); }
body #wrapper .above .navarea { height: 100vh; padding: 29.33% 5.33% 0; }
body #wrapper .above .concept { padding: 6.93% 5.33% 20%; }
body #wrapper .above .concept p { font-weight: 600; font-size: 1rem; letter-spacing: .02em; line-height: 1.5; }
body #wrapper .below { padding: 6.67% 5.33% 0; }
body #wrapper .below .sub-title { font-weight: 600; font-size: 1.5rem; letter-spacing: .02em; }
body #wrapper .below #company .sub-title { margin: 0 0 3rem; }
body #wrapper .below #company .flex-container { display: flex; }
body #wrapper .below #company .flex-container .company-info-data { width: 60.45%; }
body #wrapper .below #company .flex-container .company-info-data.jp { width: auto; font-family: "Noto Sans JP", sans-serif; letter-spacing: 0; white-space: nowrap; }
body #wrapper .below #contact { height: 100vh; padding: 32% 0 0; }
body #wrapper .below #contact .sub-title { margin: 0 0 1.5rem; }
body #wrapper .below #contact p { font-family: "Noto Sans JP", sans-serif; font-weight: 500; font-size: .9rem; line-height: 1.5; }

@media screen and (orientation: landscape) { :root { scroll-padding-top: calc(var(--vw) * (0.113 * 100)); }
  body #wrapper .logo { width: 13.06%; left: 4.17%; top: calc(var(--vw) * (0.036 * 100)); }
  body #wrapper .mark { width: 29.51%; right: 1.04%; bottom: calc(var(--vw) * (0.003 * 100)); }
  body #wrapper .above { height: 100vh; position: relative; }
  body #wrapper .above .navarea { height: auto; padding: 4.86% 4.17% 0; }
  body #wrapper .above .concept { padding: 0; position: absolute; left: 4.17%; top: calc(var(--vw) * (0.113 * 100)); width: 19.1%; }
  body #wrapper .above .concept p { font-size: calc(var(--vw) * (0.01 * 100)); }
  body #wrapper .below { padding: 3.96% 4.17% 8.89%; }
  body #wrapper .below .sub-title { font-size: 2.2rem; }
  body #wrapper .below #company .sub-title { margin: 0 0 4.4rem; }
  body #wrapper .below #company .flex-container { column-gap: 5.7rem; }
  body #wrapper .below #company .flex-container .company-info-data { width: auto; }
  body #wrapper .below #contact { height: auto; padding: 10.28% 0 0; }
  body #wrapper .below #contact .sub-title { margin: 0 0 3.9rem; }
  body #wrapper .below #contact p { font-size: 1.2rem; line-height: 1.67; } }
