header { border-bottom: 1px solid #333333; }
header .kaisha { font-size: 0.7rem; line-height: 25px; }
header .kaisha .wrapper div { width: 200px; text-align: center; }
header .relv { position: relative; height: 100px; }
header ul { margin: 0px; padding: 0px; list-style-type: none; }
header li { margin: 0px; padding: 0px; }
h1 { position: absolute; top: 50%; left: 0px; margin: 0px; padding: 0px; width: 56%; max-width: 200px; font-size: 1rem; line-height: 100%; transform: translateY(-50%); }
header .bgrmenubtn { position: absolute; top: 0px; right: 0px; z-index: 2; width: 60px; height: 60px; cursor: pointer; }
header nav { position: absolute; top: -25px; right: 0px; width: 234px; z-index: 3; font-size: 0.9rem; line-height: 100%; display: none; }
header nav ul { width: 100%; display: flex; flex-flow: wrap; justify-content: space-between; }
header nav li { flex-basis: 17%; height: 160px; }
header nav a { display: block; padding: 10px 12px 0px 0px; width: 100%; height: 100%; white-space: nowrap; text-decoration: none; box-sizing: border-box; }
header nav a.em { letter-spacing: 0.2em; }
header .uelnk { position: absolute; top: 13px; right: 258px; }
header .uelnk { width: 350px; font-size: 0.83rem; line-height: 100%; display: none; flex-flow: wrap; justify-content: flex-end; }
header .uelnk li { position: relative; margin: 0px 0px 0px 13px; padding: 0px 0px 0px 20px; }
header .uelnk li::before { position: absolute; content: ""; top: -2px; left: 0px; width: 18px; height: 18px; background-color: #222222; border-radius: 50%; }
header .uelnk li::after { position: absolute; top: 3px; left: 4px; width: 6px; height: 6px; content: ""; border-top: 2px solid #c1b95b; border-right: 2px solid #c1b95b; transform: rotate(45deg); }
header .uelnk li:first-of-type { display: none; }
header .telz { position: absolute; top: 50px; right: 258px; width: 350px; font-size: 0.66rem; line-height: 100%; text-align: right; color: #444444; display: none; }
header .telz div { padding: 0px 0px 9px; font-size: 1.36rem; line-height: 100%; color: #000000; }
.topp { margin: 30px auto 0px; padding: 0px; width: 96%; max-width: 1200px; }
.topp > div { position: relative; width: 100%; height: 0px; padding-bottom: 67%; background-color: #f6f6f6; }
.topp .ps { position: absolute; }
.topp .p1 { top: 0px; left: 0px; width: 50%; height: 66%; }
.topp .p2 { top: 0px; left: 50%; width: 25%; height: 33%; }
.topp .p3 { top: 33%; left: 50%; width: 25%; height: 33%; }
.topp .p4 { top: 66%; left: 50%; width: 25%; height: 34%; }
.topp .p5 { top: 0px; left: 75%; width: 25%; height: 33%; }
.topp .p6 { top: 33%; left: 75%; width: 25%; height: 67%; }
.topp .p7 { top: 66%; left: 25%; width: 25%; height: 34%; }
.topp .p8 { top: 31.5%; left: 87.5%; width: 12.5%; height: 28.5%; display: none; }
.topp .p9 { top: 66%; left: 0px; width: 25%; height: 34%; }
.topp .ps img { width: 100%; height: 100%; object-fit: cover; opacity: 0; transition-duration: 1s; }
.topp > div::before, .topp > div::after { content: ""; position: absolute; top: 0px; width: 2px; height: 100%; z-index: 5; background-color: #ffffff; transform: translateX(-1px); }
.topp > div::before { left: 50%; }
.topp > div::after { left: 75%; }
.topp .p3::before, .topp .p3::after { content: ""; position: absolute; left: 0px; width: 100%; height: 2px; z-index: 5; background-color: #ffffff; transform: translateY(-1px); }
.topp .p3::before { top: 0px; }
.topp .p3::after { top: 100%; }
.topp .p1::before, .topp .p5::before { content: ""; position: absolute; top: 100%; left: 0px; width: 100%; height: 2px; z-index: 5; background-color: #ffffff; transform: translateY(-1px); }
.topp .p7::before { content: ""; position: absolute; top: 0px; width: 2px; left: 0px; height: 100%; z-index: 16; background-color: #ffffff; transform: translateX(-1px); }
.topp .p2 img { transition-delay: 0.1s; }
.topp .p3 img { transition-delay: 0.6s; }
.topp .p4 img { transition-delay: 0.3s; }
.topp .p5 img { transition-delay: 0.7s; }
.topp .p6 img { transition-delay: 0.5s; }
.topp .p7 img { transition-delay: 0.2s; }
.topp .p8 img { transition-delay: 0.8s; }
.topp .p9 img { transition-delay: 0.4s; }
@media print, screen and (min-width: 600px) {
  header .kaisha .wrapper div { width: 232px; }
  h1 { width: 35%; max-width: 232px; }
  header .relv { height: 125px; }
  header .bgrmenubtn { display: none; }
  header nav { display: block; }
}
@media print, screen and (min-width: 768px) {
  header nav li { height: 190px; }
  .topp > div { height: 0px; padding-bottom: 35.8%; }
  .topp .p1 { top: 0px; left: 0px; width: 40%; height: 100%; }
  .topp .p2 { top: 0px; left: 40%; width: 17.5%; height: 40%; }
  .topp .p3 { top: 40%; left: 40%; width: 17.5%; height: 28.5%; }
  .topp .p4 { top: 68.5%; left: 40%; width: 17.5%; height: 31.5%; }
  .topp .p5 { top: 0px; left: 57.5%; width: 42.5%; height: 31.5%; }
  .topp .p6 { top: 31.5%; left: 57.5%; width: 17.5%; height: 68.5%; }
  .topp .p7 { top: 31.5%; left: 75%; width: 12.5%; height: 28.5%; }
  .topp .p8 { display: block; }
  .topp .p9 { top: 60%; left: 75%; width: 25%; height: 40%; }
  .topp > div::before, .topp > div::after { width: 4px; transform: translateX(-2px); }
  .topp > div::before { left: 40%; }
  .topp > div::after { left: 57.5%; }
  .topp .p1::before { display: none; }
  .topp .p3::before, .topp .p3::after, .topp .p5::before { height: 4px; transform: translateY(-2px); }
  .topp .p6::before { content: ""; position: absolute; top: 0px; width: 4px; left: 100%; height: 100%; z-index: 5; background-color: #ffffff; transform: translateX(-2px); }
  .topp .p7::before { left: 100%; width: 4px; transform: translateX(-1px); }
  .topp .p9::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 4px; z-index: 5; background-color: #ffffff; transform: translateY(-2px); }
}
@media print, screen and (min-width: 800px) {
  header .uelnk { display: flex; }
  header .telz { display: block; }
}
@media print, screen and (min-width: 900px) {
  header .uelnk li:first-of-type { display: block; }
}
@media print, screen and (min-width: 1250px) {
  .topp > div { height: 430px; padding-bottom: 0px; }
}
@media print {
  header .tate { background: #ffffff; outline: #777777 solid 1px; color: #000000; }
}
