@font-face {
  font-family: せのびゴシック;
  src: url(https://dl.dropboxusercontent.com/s/0zsxc200pjot35n/Senobi-Gothic-Regular2.woff2);
}
/*-----------------------------------
配布元：http://modi.jpn.org/font_irohakakuc.php
ライセンス：https://osdn.jp/projects/opensource/wiki/SIL_Open_Font_License_1.1
CSS配布：http://uranai.nosv.org/u.php/novel/ritsukarit10/
-------------------------------------*/
* {
  font-family: せのびゴシック, Arial, メイリオ, sans-serif;
}

/* reset css */
/* A Modern CSS Reset */

*,
*::before,
*::after {
  box-sizing: border-box;
}
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}
ul[role='list'],
ol[role='list'] {
  list-style: none;
}
html:focus-within {
  scroll-behavior: smooth;
}
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}
a:not([class]) {
  text-decoration-skip-ink: auto;
}
img,
picture {
  max-width: 100%;
  display: block;
}
input,
button,
textarea,
select {
  font: inherit;
}
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

body {
  font-family: せのびゴシック, fot-cezanne-pron, 'Arial', YuGothic, 'Yu Gothic',
    'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'メイリオ', Meiryo,
    'ＭＳ ゴシック', sans-serif;
  background: #030303;
  color: #ffffff;
  position: relative;
  height: 100vh;
}

.gallery-container {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  max-width: 1336px;
  width: 100%;
  max-height: 768px;
  padding: 16px 24px;
}

.gallery-container .title {
  font-family: 'FOT-Cezanne ProN';
  font-size: 28px;
}

.gallery-container .title-en {
  font-family: 'せのびゴシック';
  font-size: 30px;
}

/* 画像３枚パターン */
.img-wrapper {
  display: flex;
  gap: 14px;
  width: 100%;
  margin: 128px 0 200px;
}

.img-wrapper figure {
  max-width: 436px;
  width: 100%;
  height: auto;
}

.img-wrapper figure.w-807 {
  max-width: 807px;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.img-wrapper figure.w-879 {
  max-width: 879px;
  width: 100%;
  height: auto;
}

.img-wrapper figure.w-1219 {
  max-width: 1219px;
  width: 100%;
  height: auto;
}

.img-wrapper img {
  width: 100%;
  height: auto;
}

/* 画像6枚パターン */
.img-wrapper-6 {
  width: 100%;
  max-width: 1336px;
  margin: 40px 0 72px;
}

.first-block {
  display: flex;
  gap: 14px;
}

.second-block {
  margin-top: 14px;
  display: flex;
  gap: 14px;
}

.img-wrapper-6 figure {
  max-width: 436px;
  width: 100%;
  height: auto;
}
.img-wrapper-6 img {
  width: 100%;
  height: auto;
}

/* 1枚パターン */
.img-wrapper-single {
  display: flex;
  gap: 14px;
  width: 100%;
}

.img-wrapper-single figure {
  max-width: 436px;
  width: 100%;
  height: auto;
}

.img-wrapper-single figure.w-807 {
  max-width: 807px;
  width: 100%;
  height: auto;
  margin: 16px auto 20px;
}

.img-wrapper-single figure.w-879 {
  max-width: 879px;
  width: 100%;
  height: auto;
  margin: 104px auto 48px;
}

.img-wrapper-single figure.w-1219 {
  max-width: 1219px;
  width: 100%;
  height: auto;
  margin: 40px auto 72px;
}

.img-wrapper-single img {
  width: 100%;
  height: auto;
}

.info-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.info {
  font-size: 14px;
  font-family: 'FOT-Cezanne ProN';
}

.info-en {
  font-size: 16px;
  font-family: 'せのびゴシック';
}

.top-position {
  position: fixed;
  right: 40px;
  top: 40px;
}

.to-top {
  position: relative;
  font-family: 'せのびゴシック';
  color: #fff;
  font-size: 18px;
  text-decoration: none;
}

.to-top::before {
  content: '';
  position: absolute;
  border: 8px solid transparent;
  border-right: 8px solid #fff;
  top: 50%;
  left: -20px;
  transform: translate(0, -50%);
}
