@charset "UTF-8";
.din {
  font-family: "din-2014", sans-serif;
}

.din2 {
  font-family: "din-2014-narrow", sans-serif;
}

img {
  max-width: 100%;
}

html.is-modal-open,
body.is-modal-open {
  overflow: hidden;
}

.modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}
.modal[aria-hidden=false] {
  opacity: 1;
  visibility: visible;
}
.modal .modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.62);
}
.modal .modal__dialog {
  position: relative;
  width: min(92vw, 1200px);
  max-height: 88vh;
  padding: 0;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
  z-index: 1;
}
.modal .modal__close {
  position: absolute;
  top: 10px;
  right: 10px;
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 0;
  background: rgba(0, 0, 0, 0.35);
  color: #fff;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}
.modal .modal__controls {
  position: absolute;
  top: 10px;
  left: 10px;
  display: flex;
  gap: 8px;
  z-index: 2;
}
.modal .modal__control {
  display: inline-grid;
  place-items: center;
  height: 38px;
  min-width: 44px;
  padding: 0 10px;
  border-radius: 999px;
  border: 0;
  background: rgba(0, 0, 0, 0.35);
  color: #fff;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
}
.modal .modal__image {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0;
  will-change: transform;
}

.modal.modal--image .modal__close {
  position: fixed;
  top: calc(10px + env(safe-area-inset-top, 0px));
  right: calc(10px + env(safe-area-inset-right, 0px));
  z-index: 3;
}
.modal.modal--image .modal__controls {
  position: fixed;
  top: calc(10px + env(safe-area-inset-top, 0px));
  left: calc(10px + env(safe-area-inset-left, 0px));
  z-index: 2;
}
.modal.modal--image .modal__image {
  position: relative;
  z-index: 0;
}

@-webkit-keyframes history-scroll-guide-nudge {
  0%, 100% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(18px);
  }
}

@keyframes history-scroll-guide-nudge {
  0%, 100% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(18px);
  }
}
.position {
  position: relative;
}

.contents {
  width: 100%;
  overflow: hidden;
}

.logo-box {
  max-width: 245px;
  margin: 0 auto;
  padding: 60px 0 35px;
}

.movie-box {
  width: 100%;
  height: auto;
  position: relative;
}

.movie-box video {
  width: 100%;
  height: auto;
  display: block;
}

.foot-box {
  background: #fff;
  padding: 50px 0 25px;
}
.foot-box .foot-logo {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
}
.foot-box .foot-text {
  font-size: 14px;
  text-align: center;
  margin-bottom: 10px;
  color: #231815;
}
.foot-box .foot-copy {
  font-size: 8px;
  text-align: center;
  color: #231815;
}

@media (max-width: 900px) {
  .logo-box {
    max-width: 44vw;
    margin: 0 auto;
    padding: 7.1vw 0 8.5vw;
  }
  .movie-box {
    width: 100%;
    height: auto;
    position: relative;
  }
  .movie-box video {
    width: 100%;
    height: auto;
    display: block;
  }
  .foot-box {
    background: #fff;
    padding: 8.7vw 0 14vw;
  }
  .foot-box .foot-logo {
    max-width: 70vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 4.2vw;
  }
  .foot-box .foot-text {
    font-size: 2.7vw;
    text-align: center;
    margin-bottom: 1.8vw;
    color: #231815;
  }
  .foot-box .foot-copy {
    font-size: 2.3vw;
    text-align: center;
    color: #231815;
  }
}
.head-box {
  background: #fff;
  padding: 50px 0 65px;
}
.head-box .head-anchor {
  display: flex;
  justify-content: space-between;
  width: 90%;
  max-width: 800px;
  margin: 0 auto;
}
.head-box .head-anchor li {
  margin-bottom: 80px;
  width: 22%;
  padding-bottom: 16px;
  border-bottom: 2px solid #040000;
}
.head-box .head-anchor li a .anchor-text {
  position: relative;
  height: 60px;
  margin-bottom: 15px;
}
.head-box .head-anchor li a .anchor-text p {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
  color: #18499e;
}
.head-box .head-anchor li a .anchor-icon {
  width: 12px;
  margin-left: auto;
  margin-right: auto;
}
.head-box .head-anchor li a .anchor-icon img {
  width: 100%;
  display: block;
}
.head-box .head-movie .movie-ttl {
  margin-bottom: 25px;
}
.head-box .head-movie .movie-ttl .ttl {
  font-size: 22px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  color: #18499e;
}
.head-box .head-movie .movie-ttl .kage-img {
  margin-top: 10px;
  width: 180px;
  margin-left: auto;
  margin-right: auto;
}
.head-box .head-movie .movie-exbox {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
}
.head-box .head-movie .movie-exbox__embed {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
}
.head-box .head-movie .movie-exbox__embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@media (max-width: 900px) {
  .head-box {
    background: #fff;
    padding: 11vw 0 20vw;
  }
  .head-box .head-anchor {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 90%;
    max-width: 70vw;
    margin: 0 auto;
  }
  .head-box .head-anchor li {
    margin-bottom: 8vw;
    width: 42%;
    padding-bottom: 1vw;
    border-bottom: 2px solid #040000;
  }
  .head-box .head-anchor li a .anchor-text {
    position: relative;
    height: 8vw;
    margin-bottom: 3vw;
  }
  .head-box .head-anchor li a .anchor-text p {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    font-size: 3.5vw;
    line-height: 1.4;
    font-weight: bold;
    text-align: center;
    color: #18499e;
  }
  .head-box .head-anchor li a .anchor-icon {
    width: 2.5vw;
    margin-left: auto;
    margin-right: auto;
  }
  .head-box .head-anchor li a .anchor-icon img {
    width: 100%;
  }
  .head-box .head-movie .movie-ttl {
    margin-bottom: 3vw;
  }
  .head-box .head-movie .movie-ttl .ttl {
    font-size: 4.5vw;
    line-height: 1;
    font-weight: bold;
  }
  .head-box .head-movie .movie-ttl .kage-img {
    margin-top: 2vw;
    width: 45vw;
    margin-left: auto;
    margin-right: auto;
  }
  .head-box .head-movie .movie-exbox {
    max-width: 70vw;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
  }
}
.talk-ttl {
  text-align: center;
  line-height: 1;
  padding: 10px 0;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background: #333333;
}

.talk-ttl2 {
  text-align: center;
  line-height: 1;
  padding: 40px 0;
  font-size: 29px;
  color: #fff;
  background: #182f60;
}

.talk-imgbg {
  width: 100%;
  position: relative;
  background: #c68752;
}

.talk-imgbox {
  width: 100%;
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.talk-imgbox img {
  width: 100%;
  position: relative;
  z-index: 1;
}
.talk-imgbox .tank-name1 {
  position: absolute;
  bottom: 24px;
  left: 114px;
  z-index: 2;
  color: #fff;
}
.talk-imgbox .tank-name2 {
  position: absolute;
  bottom: 24px;
  right: 100px;
  z-index: 2;
  text-align: right;
  color: #fff;
}
.talk-imgbox .katagaki1 {
  font-size: 11px;
  line-height: 1.9;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.talk-imgbox .katagaki2 {
  font-size: 10px;
  line-height: 1.9;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.talk-imgbox .name {
  font-size: 22px;
  line-height: 1.9;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  font-weight: 600;
}

.talk-bg {
  background: #c8dcb4;
}
.talk-bg .talk-wrap {
  background: #e5edd3;
  max-width: 980px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  overflow-y: auto;
  padding-top: 94px;
  padding-bottom: 30px;
  height: 820px;
}
.talk-bg .talk-item {
  padding-bottom: 110px;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.talk-bg .talk-item .talk-item-ttl {
  font-size: 26px;
  font-weight: bold;
  color: #18499e;
  margin-bottom: 30px;
  text-align: center;
}
.talk-bg .talk-item .talk-item-list {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 56px;
}
.talk-bg .talk-item .talk-item-list dt {
  width: 85px;
  font-size: 22px;
  font-weight: bold;
  padding-top: 30px;
  color: #040000;
}
.talk-bg .talk-item .talk-item-list dd {
  padding-top: 20px;
  color: #040000;
  font-size: 17px;
  line-height: 2.17;
  width: calc(100% - 85px);
  border-top: 2px solid #fff;
}
.talk-bg .talk-item .talk-item-img1 {
  max-width: 464px;
  margin-left: auto;
  margin-right: 0;
}
.talk-bg .talk-item .talk-item-img1 img {
  width: 100%;
}
.talk-bg .talk-item .talk-item-img2 {
  max-width: 464px;
  margin-left: 85px;
}
.talk-bg .talk-item .talk-item-img2 img {
  width: 100%;
}

@media (max-width: 900px) {
  .talk-ttl {
    text-align: center;
    line-height: 1;
    padding: 2vw 0;
    font-size: 3vw;
  }
  .talk-ttl2 {
    text-align: center;
    line-height: 1;
    padding: 2.8vw 0;
    font-size: 4vw;
  }
  .talk-imgbg {
    width: 100%;
    position: relative;
  }
  .talk-imgbox {
    width: 100%;
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }
  .talk-imgbox img {
    width: 100%;
    position: relative;
    z-index: 1;
  }
  .talk-imgbox .tank-name1 {
    position: absolute;
    bottom: 3vw;
    left: 12vw;
    z-index: 2;
  }
  .talk-imgbox .tank-name2 {
    position: absolute;
    bottom: 3vw;
    right: 10.5vw;
    z-index: 2;
    text-align: right;
  }
  .talk-imgbox .katagaki1 {
    font-size: 2.5vw;
    line-height: 1.9;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  }
  .talk-imgbox .katagaki2 {
    font-size: 2.3vw;
    line-height: 1.9;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  }
  .talk-imgbox .name {
    font-size: 3vw;
    line-height: 1.9;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  }
  .talk-bg .talk-wrap {
    max-width: none;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    overflow-y: auto;
    padding-top: 9.4vw;
    padding-bottom: 3vw;
    height: 83vw;
  }
  .talk-bg .talk-item {
    padding-bottom: 11vw;
    max-width: 85vw;
    margin-left: auto;
    margin-right: auto;
  }
  .talk-bg .talk-item .talk-item-ttl {
    font-size: 3.5vw;
    margin-bottom: 3.5vw;
  }
  .talk-bg .talk-item .talk-item-list {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 5.6vw;
  }
  .talk-bg .talk-item .talk-item-list dt {
    width: 8vw;
    font-size: 3.2vw;
    padding-top: 3vw;
  }
  .talk-bg .talk-item .talk-item-list dd {
    padding-top: 2vw;
    font-size: 2.4vw;
    line-height: 2.17;
    width: calc(100% - 8vw);
    border-top: 2px solid #fff;
  }
  .talk-bg .talk-item .talk-item-img1 {
    max-width: 46.4vw;
    margin-left: auto;
    margin-right: 0;
  }
  .talk-bg .talk-item .talk-item-img1 img {
    width: 100%;
  }
  .talk-bg .talk-item .talk-item-img2 {
    max-width: 46.4vw;
    margin-left: 8.5vw;
  }
  .talk-bg .talk-item .talk-item-img2 img {
    width: 100%;
  }
}
.slo-box,
.his-box {
  background: url(../img/slogan-bg.jpg) no-repeat center bottom/cover;
  padding: 60px 0 130px;
}
.slo-box .slo-wrap,
.slo-box .his-wrap,
.his-box .slo-wrap,
.his-box .his-wrap {
  max-width: 630px;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  border: 10px solid #fff;
  border-radius: 20px;
  padding: 50px 0 60px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  background: linear-gradient(to bottom, #fff, #dfdfdf);
}
.slo-box .slo-wrap .slo-ttl,
.slo-box .slo-wrap .his-ttl,
.slo-box .his-wrap .slo-ttl,
.slo-box .his-wrap .his-ttl,
.his-box .slo-wrap .slo-ttl,
.his-box .slo-wrap .his-ttl,
.his-box .his-wrap .slo-ttl,
.his-box .his-wrap .his-ttl {
  font-size: 20px;
  font-weight: bold;
  color: #040000;
  margin-bottom: 12px;
  text-align: center;
  line-height: 1;
}
.slo-box .slo-wrap .kage-img,
.slo-box .his-wrap .kage-img,
.his-box .slo-wrap .kage-img,
.his-box .his-wrap .kage-img {
  width: 210px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 34px;
}
.slo-box .slo-wrap .slo-text,
.slo-box .his-wrap .slo-text,
.his-box .slo-wrap .slo-text,
.his-box .his-wrap .slo-text {
  font-size: 40px;
  color: #008dc3;
  margin-bottom: 50px;
  text-align: center;
  line-height: 1.42;
}
.slo-box .slo-wrap .subtext,
.slo-box .his-wrap .subtext,
.his-box .slo-wrap .subtext,
.his-box .his-wrap .subtext {
  font-size: 15px;
  color: #040000;
  line-height: 2.66;
  letter-spacing: 0.03em;
  text-align: center;
}
.slo-box .slo-wrap .history-contents,
.slo-box .his-wrap .history-contents,
.his-box .slo-wrap .history-contents,
.his-box .his-wrap .history-contents {
  position: relative;
  /* ===== 調整用の値（PC）===== */
  --item-w: 290px; /* 1項目（カラム）の横幅 */
  --item-min-h: 300px; /* 1項目の最低高さ */
  --note-min-h: 84px; /* 注釈テキストの最低高さ（写真の上ライン揃え用） */
  --photo-cover-h: 88px; /* cover写真の高さ */
  --photo-panel-max-h: 130px; /* パネル写真の最大高さ */
  --photo-tall-max-h: 220px; /* 縦長写真の最大高さ */
  --photo-founding-max-h: 280px; /* 創業者写真の最大高さ */
  --era-bar-h: 24px; /* 年代バーの高さ */
  --era-arrow-w: 14px; /* 年代バー右端の矢印切り欠き幅 */
  --line-y: 176px; /* 横線とドットの縦位置 */
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  /* 横スクロールは Swiper（慣性・縦ホイール横送り）に委譲 */
  overflow-x: hidden;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  padding-bottom: 10px;
  /* 薄いライン＋ slide-bar.svg のドラッグハンドルで年表を移動（線の左右は上記または Natoco 内で上書き） */
}
.slo-box .slo-wrap .history-contents.history-contents--natoco,
.slo-box .his-wrap .history-contents.history-contents--natoco,
.his-box .slo-wrap .history-contents.history-contents--natoco,
.his-box .his-wrap .history-contents.history-contents--natoco {
  --history-playhead-offset-top: 4px;
  padding-bottom: 4px;
  /* 年表中央付近の横線（列ごと）＋スクロール進捗に連動する ●（JS が .history-timeline-playhead を配置） */
  /* フッター横パディングなし＝スクロールバー幅を .history-contents（Swiper 幅）いっぱいに */
}
.slo-box .slo-wrap .history-contents.history-contents--natoco .history-scroll-guide,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-scroll-guide,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-scroll-guide,
.his-box .his-wrap .history-contents.history-contents--natoco .history-scroll-guide {
  bottom: 52px;
}
.slo-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-swiper,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-timeline-swiper,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-swiper,
.his-box .his-wrap .history-contents.history-contents--natoco .history-timeline-swiper {
  position: relative;
  /* Swiper のスクロールバー既定（左右 1% インセット）を打ち消す */
  --swiper-scrollbar-sides-offset: 0px;
  --swiper-scrollbar-bottom: 0px;
}
.slo-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-playhead,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-timeline-playhead,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-playhead,
.his-box .his-wrap .history-contents.history-contents--natoco .history-timeline-playhead {
  position: absolute;
  left: 0;
  top: calc(var(--history-playhead-offset-top) + var(--line-y) + 1px - var(--history-dot-size, 10px) / 2);
  width: var(--history-dot-size, 10px);
  height: var(--history-dot-size, 10px);
  border-radius: 50%;
  background: #231815;
  box-sizing: border-box;
  z-index: 6;
  pointer-events: none;
  will-change: left;
}
.slo-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-col .history-item::before,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-timeline-col .history-item::before,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-col .history-item::before,
.his-box .his-wrap .history-contents.history-contents--natoco .history-timeline-col .history-item::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: var(--line-y);
  height: 2px;
  background: rgba(35, 24, 21, 0.18);
  z-index: 0;
  pointer-events: none;
}
.slo-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-col .history-middle,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-timeline-col .history-middle,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-col .history-middle,
.his-box .his-wrap .history-contents.history-contents--natoco .history-timeline-col .history-middle {
  position: relative;
  z-index: 1;
}
.slo-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-footer,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-timeline-footer,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-footer,
.his-box .his-wrap .history-contents.history-contents--natoco .history-timeline-footer {
  width: 100%;
  box-sizing: border-box;
  padding: 10px 0 6px;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  pointer-events: auto;
}
.slo-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-scrollbar.swiper-scrollbar,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-timeline-scrollbar.swiper-scrollbar,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-scrollbar.swiper-scrollbar,
.his-box .his-wrap .history-contents.history-contents--natoco .history-timeline-scrollbar.swiper-scrollbar {
  --swiper-scrollbar-sides-offset: 0px;
  margin-left: 0;
  left: 0 !important;
  /*
   * Swiper は divider に swiper.size、トラック長に scrollbar の offsetWidth を使う。
   * 幅を calc で狭めるとリサイズ時に始点/終点がずれるため、トラックは常に 100%。
   * 線だけ左右を vw で詰めたい場合: --history-scrollbar-line-inset-start-pc / --history-scrollbar-line-extend-end（px 固定は避ける）
   */
  width: 100% !important;
  box-sizing: border-box;
  --history-scrollbar-line-inset-start-pc: 0px;
  --history-scrollbar-line-inset-start: 0px;
  --history-scrollbar-line-extend-end: 0px;
  max-width: none;
}
.slo-box .slo-wrap .history-contents .history-eras-clip,
.slo-box .his-wrap .history-contents .history-eras-clip,
.his-box .slo-wrap .history-contents .history-eras-clip,
.his-box .his-wrap .history-contents .history-eras-clip {
  width: 100%;
  overflow: hidden;
  margin-bottom: 18px;
}
.slo-box .slo-wrap .history-contents .history-eras-sync,
.slo-box .his-wrap .history-contents .history-eras-sync,
.his-box .slo-wrap .history-contents .history-eras-sync,
.his-box .his-wrap .history-contents .history-eras-sync {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  will-change: transform;
}
.slo-box .slo-wrap .history-contents .history-timeline-swiper,
.slo-box .his-wrap .history-contents .history-timeline-swiper,
.his-box .slo-wrap .history-contents .history-timeline-swiper,
.his-box .his-wrap .history-contents .history-timeline-swiper {
  width: 100%;
  overflow: hidden;
  touch-action: pan-x pan-y;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
.slo-box .slo-wrap .history-contents .history-timeline-swiper .swiper-wrapper,
.slo-box .his-wrap .history-contents .history-timeline-swiper .swiper-wrapper,
.his-box .slo-wrap .history-contents .history-timeline-swiper .swiper-wrapper,
.his-box .his-wrap .history-contents .history-timeline-swiper .swiper-wrapper {
  display: flex;
  align-items: stretch;
  box-sizing: border-box;
  padding: 4px 16px 8px;
}
.slo-box .slo-wrap .history-contents:not(.history-contents--natoco) .history-timeline-footer,
.slo-box .his-wrap .history-contents:not(.history-contents--natoco) .history-timeline-footer,
.his-box .slo-wrap .history-contents:not(.history-contents--natoco) .history-timeline-footer,
.his-box .his-wrap .history-contents:not(.history-contents--natoco) .history-timeline-footer {
  width: 100%;
  box-sizing: border-box;
  padding: 10px 16px 6px;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  pointer-events: auto;
}
.slo-box .slo-wrap .history-contents:not(.history-contents--natoco) .history-timeline-scrollbar.swiper-scrollbar,
.slo-box .his-wrap .history-contents:not(.history-contents--natoco) .history-timeline-scrollbar.swiper-scrollbar,
.his-box .slo-wrap .history-contents:not(.history-contents--natoco) .history-timeline-scrollbar.swiper-scrollbar,
.his-box .his-wrap .history-contents:not(.history-contents--natoco) .history-timeline-scrollbar.swiper-scrollbar {
  --history-scrollbar-line-inset-start-pc: 16px;
  --history-scrollbar-line-inset-start: var(--history-scrollbar-line-inset-start-pc);
  --history-scrollbar-line-extend-end: -16px;
}
.slo-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar,
.slo-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar,
.his-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar,
.his-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar {
  --history-scrollbar-line-inset-start-pc: 0px;
  --history-scrollbar-line-inset-start: 0px;
  --history-scrollbar-line-extend-end: 0px;
  width: 100%;
  min-width: 0;
  height: 32px;
  margin: 0;
  background: transparent;
  position: relative;
  cursor: pointer;
  touch-action: none;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}
.slo-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar::before,
.slo-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar::before,
.his-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar::before,
.his-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar::before {
  content: "";
  position: absolute;
  left: var(--history-scrollbar-line-inset-start, 0px);
  right: calc(0px - var(--history-scrollbar-line-extend-end, 0px));
  top: 50%;
  transform: translateY(-50%);
  height: 2px;
  background: #d0d0d0;
  border-radius: 1px;
  pointer-events: none;
  z-index: 0;
}
.slo-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag,
.slo-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag,
.his-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag,
.his-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag {
  top: 2px !important;
  height: calc(100% - 4px) !important;
  /* 幅は JS dragSize（SVG 縦横比）。100% 100% だと楕円が横に潰れて枠内に余白に見える */
  box-sizing: border-box;
  min-width: 0;
  max-width: none;
  border-radius: 999px;
  overflow: hidden;
  background-color: transparent;
  background-image: url(../img/slide-bar.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 100%;
  box-shadow: none;
  z-index: 1;
  cursor: -webkit-grab;
  cursor: grab;
  touch-action: none;
  display: block !important;
  padding: 0;
}
.slo-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag::before, .slo-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag::after,
.slo-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag::before,
.slo-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag::after,
.his-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag::before,
.his-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag::after,
.his-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag::before,
.his-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag::after {
  content: none !important;
  display: none !important;
}
.slo-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag:active,
.slo-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag:active,
.his-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag:active,
.his-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag:active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}
.slo-box .slo-wrap .history-contents .history-timeline-col,
.slo-box .his-wrap .history-contents .history-timeline-col,
.his-box .slo-wrap .history-contents .history-timeline-col,
.his-box .his-wrap .history-contents .history-timeline-col {
  width: var(--item-w);
  flex: 0 0 var(--item-w);
  box-sizing: border-box;
  height: auto;
  overflow: visible;
  -moz-user-select: text;
       user-select: text;
  -webkit-user-select: text;
}
.slo-box .slo-wrap .history-contents .history-timeline-col .history-item,
.slo-box .his-wrap .history-contents .history-timeline-col .history-item,
.his-box .slo-wrap .history-contents .history-timeline-col .history-item,
.his-box .his-wrap .history-contents .history-timeline-col .history-item {
  width: 100%;
  max-width: 100%;
  flex: 1 1 auto;
}
.slo-box .slo-wrap .history-contents .history-scroll,
.slo-box .his-wrap .history-contents .history-scroll,
.his-box .slo-wrap .history-contents .history-scroll,
.his-box .his-wrap .history-contents .history-scroll {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.slo-box .slo-wrap .history-contents .history-eras,
.slo-box .his-wrap .history-contents .history-eras,
.his-box .slo-wrap .history-contents .history-eras,
.his-box .his-wrap .history-contents .history-eras {
  display: flex;
  min-width: calc(var(--total-cols, 1) * var(--item-w) + 32px);
  margin-bottom: 0;
  gap: 0;
  padding: 0 16px;
  box-sizing: border-box;
}
.slo-box .slo-wrap .history-contents .history-eras .history-era,
.slo-box .his-wrap .history-contents .history-eras .history-era,
.his-box .slo-wrap .history-contents .history-eras .history-era,
.his-box .his-wrap .history-contents .history-eras .history-era {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 14px;
  height: 44px;
  min-height: 44px;
  flex: 0 0 auto;
}
.slo-box .slo-wrap .history-contents .history-eras .history-era:only-child,
.slo-box .his-wrap .history-contents .history-eras .history-era:only-child,
.his-box .slo-wrap .history-contents .history-eras .history-era:only-child,
.his-box .his-wrap .history-contents .history-eras .history-era:only-child {
  flex: 1 1 auto;
  flex-basis: 100%;
}
.slo-box .slo-wrap .history-contents .history-eras .history-era .history-era-year,
.slo-box .his-wrap .history-contents .history-eras .history-era .history-era-year,
.his-box .slo-wrap .history-contents .history-eras .history-era .history-era-year,
.his-box .his-wrap .history-contents .history-eras .history-era .history-era-year {
  flex: 0 0 auto;
  position: relative;
  z-index: 2;
  font-size: 32px;
  line-height: 1;
  font-weight: bold;
  color: #231815;
  font-family: "DIN 2014", "DIN Alternate", "Arial Narrow", Arial, sans-serif;
  padding-top: 1px;
  padding-left: 0.1em;
  letter-spacing: 0.02em;
  pointer-events: none;
}
.slo-box .slo-wrap .history-contents .history-eras .history-era .history-era-bar,
.slo-box .his-wrap .history-contents .history-eras .history-era .history-era-bar,
.his-box .slo-wrap .history-contents .history-eras .history-era .history-era-bar,
.his-box .his-wrap .history-contents .history-eras .history-era .history-era-bar {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
  height: var(--era-bar-h);
  border-radius: 0;
  margin-top: 6px;
  -webkit-clip-path: polygon(0 0, calc(100% - var(--era-arrow-w)) 0, 100% 50%, calc(100% - var(--era-arrow-w)) 100%, 0 100%);
          clip-path: polygon(0 0, calc(100% - var(--era-arrow-w)) 0, 100% 50%, calc(100% - var(--era-arrow-w)) 100%, 0 100%);
}
.slo-box .slo-wrap .history-contents .history-eras .history-era .history-era-label,
.slo-box .his-wrap .history-contents .history-eras .history-era .history-era-label,
.his-box .slo-wrap .history-contents .history-eras .history-era .history-era-label,
.his-box .his-wrap .history-contents .history-eras .history-era .history-era-label {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 11px;
  line-height: 1;
  color: #fff;
  padding: 0;
  border-radius: 0;
  background: transparent;
  letter-spacing: 0.06em;
  font-weight: 700;
}
.slo-box .slo-wrap .history-contents .history-eras .history-era.is-blue,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-blue,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-blue,
.his-box .his-wrap .history-contents .history-eras .history-era.is-blue {
  flex: 0 0 calc(var(--cols, 1) * var(--item-w));
  width: calc(var(--cols, 1) * var(--item-w));
}
.slo-box .slo-wrap .history-contents .history-eras .history-era.is-blue .history-era-bar,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-blue .history-era-bar,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-blue .history-era-bar,
.his-box .his-wrap .history-contents .history-eras .history-era.is-blue .history-era-bar {
  background: linear-gradient(to right, #1a5fa7, #8fcde2);
}
.slo-box .slo-wrap .history-contents .history-eras .history-era.is-green,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-green,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-green,
.his-box .his-wrap .history-contents .history-eras .history-era.is-green {
  flex: 0 0 calc(var(--cols, 1) * var(--item-w));
  width: calc(var(--cols, 1) * var(--item-w));
}
.slo-box .slo-wrap .history-contents .history-eras .history-era.is-green .history-era-bar,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-green .history-era-bar,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-green .history-era-bar,
.his-box .his-wrap .history-contents .history-eras .history-era.is-green .history-era-bar {
  background: linear-gradient(to right, #7ecef4, #bad87b);
}
.slo-box .slo-wrap .history-contents .history-eras .history-era.is-olive,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-olive,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-olive,
.his-box .his-wrap .history-contents .history-eras .history-era.is-olive {
  flex: 0 0 calc(var(--cols, 1) * var(--item-w));
  width: calc(var(--cols, 1) * var(--item-w));
}
.slo-box .slo-wrap .history-contents .history-eras .history-era.is-olive .history-era-bar,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-olive .history-era-bar,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-olive .history-era-bar,
.his-box .his-wrap .history-contents .history-eras .history-era.is-olive .history-era-bar {
  background: linear-gradient(to right, #b7d786, #e1eaa4, #c2e6fa);
}
.slo-box .slo-wrap .history-contents .history-scroll-guide,
.slo-box .his-wrap .history-contents .history-scroll-guide,
.his-box .slo-wrap .history-contents .history-scroll-guide,
.his-box .his-wrap .history-contents .history-scroll-guide {
  position: absolute;
  right: 16px;
  left: auto;
  bottom: 16px;
  transform: none;
  width: 160px;
  max-width: calc(100% - 32px);
  z-index: 4;
  pointer-events: none;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.35s ease, visibility 0.35s ease;
  /* 横スクロール開始後：`.his-wrap` の右下へ追従（座標は JS で left/top 指定） */
  /* 横スクロール不要時は非表示 */
  /* タイムライン右端までスクロールしたら非表示 */
}
.slo-box .slo-wrap .history-contents .history-scroll-guide.is-sticky,
.slo-box .his-wrap .history-contents .history-scroll-guide.is-sticky,
.his-box .slo-wrap .history-contents .history-scroll-guide.is-sticky,
.his-box .his-wrap .history-contents .history-scroll-guide.is-sticky {
  position: fixed;
  left: 0;
  top: 0;
  right: auto;
  bottom: auto;
  z-index: 100;
}
.slo-box .slo-wrap .history-contents .history-scroll-guide img,
.slo-box .his-wrap .history-contents .history-scroll-guide img,
.his-box .slo-wrap .history-contents .history-scroll-guide img,
.his-box .his-wrap .history-contents .history-scroll-guide img {
  width: 100%;
  display: block;
  transform-origin: left center;
  -webkit-animation: history-scroll-guide-nudge 1.6s ease-in-out infinite;
          animation: history-scroll-guide-nudge 1.6s ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .slo-box .slo-wrap .history-contents .history-scroll-guide img,
.slo-box .his-wrap .history-contents .history-scroll-guide img,
.his-box .slo-wrap .history-contents .history-scroll-guide img,
.his-box .his-wrap .history-contents .history-scroll-guide img {
    -webkit-animation: none;
            animation: none;
  }
}
.slo-box .slo-wrap .history-contents .history-scroll-guide.is-hidden,
.slo-box .his-wrap .history-contents .history-scroll-guide.is-hidden,
.his-box .slo-wrap .history-contents .history-scroll-guide.is-hidden,
.his-box .his-wrap .history-contents .history-scroll-guide.is-hidden {
  opacity: 0;
  visibility: hidden;
}
.slo-box .slo-wrap .history-contents .history-scroll-guide.is-hidden img,
.slo-box .his-wrap .history-contents .history-scroll-guide.is-hidden img,
.his-box .slo-wrap .history-contents .history-scroll-guide.is-hidden img,
.his-box .his-wrap .history-contents .history-scroll-guide.is-hidden img {
  -webkit-animation: none;
          animation: none;
}
.slo-box .slo-wrap .history-contents .history-scroll-guide.is-at-end,
.slo-box .his-wrap .history-contents .history-scroll-guide.is-at-end,
.his-box .slo-wrap .history-contents .history-scroll-guide.is-at-end,
.his-box .his-wrap .history-contents .history-scroll-guide.is-at-end {
  opacity: 0;
  visibility: hidden;
}
.slo-box .slo-wrap .history-contents .history-scroll-guide.is-at-end img,
.slo-box .his-wrap .history-contents .history-scroll-guide.is-at-end img,
.his-box .slo-wrap .history-contents .history-scroll-guide.is-at-end img,
.his-box .his-wrap .history-contents .history-scroll-guide.is-at-end img {
  -webkit-animation: none;
          animation: none;
}
.slo-box .slo-wrap .history-contents .history-item,
.slo-box .his-wrap .history-contents .history-item,
.his-box .slo-wrap .history-contents .history-item,
.his-box .his-wrap .history-contents .history-item {
  width: var(--item-w);
  flex: 0 0 var(--item-w);
  min-height: var(--item-min-h);
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
  padding-top: 24px;
  overflow: visible;
}
.slo-box .slo-wrap .history-contents .history-item.history-item--photo-bleed-right,
.slo-box .his-wrap .history-contents .history-item.history-item--photo-bleed-right,
.his-box .slo-wrap .history-contents .history-item.history-item--photo-bleed-right,
.his-box .his-wrap .history-contents .history-item.history-item--photo-bleed-right {
  z-index: 2;
}
.slo-box .slo-wrap .history-contents .history-middle,
.slo-box .his-wrap .history-contents .history-middle,
.his-box .slo-wrap .history-contents .history-middle,
.his-box .his-wrap .history-contents .history-middle {
  width: 92%;
  padding: 0 6px;
  text-align: left;
  margin-bottom: 18px;
  min-height: 140px;
}
.slo-box .slo-wrap .history-contents .history-year,
.slo-box .his-wrap .history-contents .history-year,
.his-box .slo-wrap .history-contents .history-year,
.his-box .his-wrap .history-contents .history-year {
  font-size: 12px;
  line-height: 1.2;
  font-weight: bold;
  color: #231815;
  margin-bottom: 8px;
  font-family: "DIN 2014", "DIN Alternate", "Arial Narrow", Arial, sans-serif;
  letter-spacing: 0.02em;
}
.slo-box .slo-wrap .history-contents .history-year__num,
.slo-box .his-wrap .history-contents .history-year__num,
.his-box .slo-wrap .history-contents .history-year__num,
.his-box .his-wrap .history-contents .history-year__num {
  font-size: 1.5em;
}
.slo-box .slo-wrap .history-contents .history-event,
.slo-box .his-wrap .history-contents .history-event,
.his-box .slo-wrap .history-contents .history-event,
.his-box .his-wrap .history-contents .history-event {
  font-size: 14px;
  line-height: 1.5;
  color: #231815;
  text-align: left;
}
.slo-box .slo-wrap .history-contents .history-lower,
.slo-box .his-wrap .history-contents .history-lower,
.his-box .slo-wrap .history-contents .history-lower,
.his-box .his-wrap .history-contents .history-lower {
  width: 92%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 12px;
  min-height: 400px;
}
.slo-box .slo-wrap .history-contents .history-lower.ex,
.slo-box .his-wrap .history-contents .history-lower.ex,
.his-box .slo-wrap .history-contents .history-lower.ex,
.his-box .his-wrap .history-contents .history-lower.ex {
  margin-right: 3%;
}
.slo-box .slo-wrap .history-contents .history-lower.ex2,
.slo-box .his-wrap .history-contents .history-lower.ex2,
.his-box .slo-wrap .history-contents .history-lower.ex2,
.his-box .his-wrap .history-contents .history-lower.ex2 {
  width: 120%;
  max-width: none;
  margin-right: -50%;
}
.slo-box .slo-wrap .history-contents .history-lower > .history-photo,
.slo-box .slo-wrap .history-contents .history-lower > .history-photo-group,
.slo-box .his-wrap .history-contents .history-lower > .history-photo,
.slo-box .his-wrap .history-contents .history-lower > .history-photo-group,
.his-box .slo-wrap .history-contents .history-lower > .history-photo,
.his-box .slo-wrap .history-contents .history-lower > .history-photo-group,
.his-box .his-wrap .history-contents .history-lower > .history-photo,
.his-box .his-wrap .history-contents .history-lower > .history-photo-group {
  margin-top: auto;
}
.slo-box .slo-wrap .history-contents .history-lower.history-lower-01,
.slo-box .his-wrap .history-contents .history-lower.history-lower-01,
.his-box .slo-wrap .history-contents .history-lower.history-lower-01,
.his-box .his-wrap .history-contents .history-lower.history-lower-01 {
  width: 120%;
}
.slo-box .slo-wrap .history-contents .history-lower.history-lower-25,
.slo-box .his-wrap .history-contents .history-lower.history-lower-25,
.his-box .slo-wrap .history-contents .history-lower.history-lower-25,
.his-box .his-wrap .history-contents .history-lower.history-lower-25 {
  margin-left: -30%;
}
.slo-box .slo-wrap .history-contents .history-lower.history-lower-23,
.slo-box .his-wrap .history-contents .history-lower.history-lower-23,
.his-box .slo-wrap .history-contents .history-lower.history-lower-23,
.his-box .his-wrap .history-contents .history-lower.history-lower-23 {
  margin-left: -98%;
}
.slo-box .slo-wrap .history-contents .history-lower.history-lower-13,
.slo-box .his-wrap .history-contents .history-lower.history-lower-13,
.his-box .slo-wrap .history-contents .history-lower.history-lower-13,
.his-box .his-wrap .history-contents .history-lower.history-lower-13 {
  margin-left: -55%;
}
.slo-box .slo-wrap .history-contents .history-lower.history-lower-12,
.slo-box .his-wrap .history-contents .history-lower.history-lower-12,
.his-box .slo-wrap .history-contents .history-lower.history-lower-12,
.his-box .his-wrap .history-contents .history-lower.history-lower-12 {
  margin-left: -55%;
}
.slo-box .slo-wrap .history-contents .history-lower.history-lower--photo-bleed,
.slo-box .his-wrap .history-contents .history-lower.history-lower--photo-bleed,
.his-box .slo-wrap .history-contents .history-lower.history-lower--photo-bleed,
.his-box .his-wrap .history-contents .history-lower.history-lower--photo-bleed {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
  padding-left: 4px;
  padding-right: 0;
}
.slo-box .slo-wrap .history-contents .history-note,
.slo-box .his-wrap .history-contents .history-note,
.his-box .slo-wrap .history-contents .history-note,
.his-box .his-wrap .history-contents .history-note {
  font-size: 14px;
  line-height: 1.6;
  min-height: var(--note-min-h);
  color: #231815;
  margin-bottom: 10px;
  max-width: 215px;
}
.slo-box .slo-wrap .history-contents .history-note.ex,
.slo-box .his-wrap .history-contents .history-note.ex,
.his-box .slo-wrap .history-contents .history-note.ex,
.his-box .his-wrap .history-contents .history-note.ex {
  max-width: 230px;
}
.slo-box .slo-wrap .history-contents .history-note:empty,
.slo-box .his-wrap .history-contents .history-note:empty,
.his-box .slo-wrap .history-contents .history-note:empty,
.his-box .his-wrap .history-contents .history-note:empty {
  min-height: 0;
  margin-bottom: 0;
}
.slo-box .slo-wrap .history-contents .history-note.min-h,
.slo-box .his-wrap .history-contents .history-note.min-h,
.his-box .slo-wrap .history-contents .history-note.min-h,
.his-box .his-wrap .history-contents .history-note.min-h {
  min-height: 10em;
}
.slo-box .slo-wrap .history-contents .history-photo,
.slo-box .his-wrap .history-contents .history-photo,
.his-box .slo-wrap .history-contents .history-photo,
.his-box .his-wrap .history-contents .history-photo {
  /* ===== per-item の調整値（HTML側で style="--photo-w: 80px; --photo-y: -10px;" のように上書き可能）===== */
  --photo-w: 100%; /* 横幅（例: 80px / 60% / auto）*/
  --photo-max-h: none; /* 最大高さ（例: 88px / 12vw / none）*/
  --photo-x: 0px; /* 横方向の微調整・ネガティブで列外にはみ出し可 */
  --photo-y: 0px; /* 縦方向の微調整 */
  --photo-rotate: 0deg; /* 回転角度（例: -10deg）*/
  --photo-align: stretch; /* flex-start / center / flex-end / stretch */
  --photo-fit: contain; /* contain（切り抜き無し）/ cover（切り抜き）*/
  width: var(--photo-w);
  max-width: 100%;
  min-height: 66px;
  align-self: var(--photo-align);
  transform: translate(var(--photo-x), var(--photo-y)) rotate(var(--photo-rotate));
  transform-origin: center bottom;
  background: transparent;
  /* ===== バリアント（規定値）。すべて --photo-* で上書き可能 ===== */
  /* 切り抜きフィット（商品写真など、サイズを揃えたい時） */
  /* パネル写真（切り抜き無し、角丸あり）*/
  /* 縦長写真 */
  /* 創業者写真など、列内中央配置の縦長 */
  /* ===== 微調整プリセット（個別アイテム用）===== */
  /* 連番クラス：HTML インラインから移譲（PC） */
}
.slo-box .slo-wrap .history-contents .history-photo.is-empty,
.slo-box .his-wrap .history-contents .history-photo.is-empty,
.his-box .slo-wrap .history-contents .history-photo.is-empty,
.his-box .his-wrap .history-contents .history-photo.is-empty {
  display: none;
}
.slo-box .slo-wrap .history-contents .history-photo img,
.slo-box .his-wrap .history-contents .history-photo img,
.his-box .slo-wrap .history-contents .history-photo img,
.his-box .his-wrap .history-contents .history-photo img {
  width: 100%;
  display: block;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo--cover,
.slo-box .his-wrap .history-contents .history-photo.history-photo--cover,
.his-box .slo-wrap .history-contents .history-photo.history-photo--cover,
.his-box .his-wrap .history-contents .history-photo.history-photo--cover {
  --photo-max-h: var(--photo-cover-h);
  --photo-fit: cover;
  border-radius: 4px;
  overflow: hidden;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo--cover img,
.slo-box .his-wrap .history-contents .history-photo.history-photo--cover img,
.his-box .slo-wrap .history-contents .history-photo.history-photo--cover img,
.his-box .his-wrap .history-contents .history-photo.history-photo--cover img {
  height: var(--photo-max-h);
  -o-object-position: center;
     object-position: center;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo--panel,
.slo-box .his-wrap .history-contents .history-photo.history-photo--panel,
.his-box .slo-wrap .history-contents .history-photo.history-photo--panel,
.his-box .his-wrap .history-contents .history-photo.history-photo--panel {
  --photo-max-h: var(--photo-panel-max-h);
  border-radius: 10px;
  overflow: hidden;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo--panel img,
.slo-box .his-wrap .history-contents .history-photo.history-photo--panel img,
.his-box .slo-wrap .history-contents .history-photo.history-photo--panel img,
.his-box .his-wrap .history-contents .history-photo.history-photo--panel img {
  border-radius: 10px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo--tall,
.slo-box .his-wrap .history-contents .history-photo.history-photo--tall,
.his-box .slo-wrap .history-contents .history-photo.history-photo--tall,
.his-box .his-wrap .history-contents .history-photo.history-photo--tall {
  --photo-w: 48%;
  --photo-max-h: var(--photo-tall-max-h);
  min-height: 0;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo--founding,
.slo-box .his-wrap .history-contents .history-photo.history-photo--founding,
.his-box .slo-wrap .history-contents .history-photo.history-photo--founding,
.his-box .his-wrap .history-contents .history-photo.history-photo--founding {
  --photo-w: 58%;
  --photo-max-h: var(--photo-founding-max-h);
  --photo-align: center;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo--shift-up,
.slo-box .his-wrap .history-contents .history-photo.history-photo--shift-up,
.his-box .slo-wrap .history-contents .history-photo.history-photo--shift-up,
.his-box .his-wrap .history-contents .history-photo.history-photo--shift-up {
  --photo-y: -12px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo--shift-down,
.slo-box .his-wrap .history-contents .history-photo.history-photo--shift-down,
.his-box .slo-wrap .history-contents .history-photo.history-photo--shift-down,
.his-box .his-wrap .history-contents .history-photo.history-photo--shift-down {
  --photo-y: 10px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo--pos-1975-left,
.slo-box .his-wrap .history-contents .history-photo.history-photo--pos-1975-left,
.his-box .slo-wrap .history-contents .history-photo.history-photo--pos-1975-left,
.his-box .his-wrap .history-contents .history-photo.history-photo--pos-1975-left {
  --photo-y: 2px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo--pos-1975-right,
.slo-box .his-wrap .history-contents .history-photo.history-photo--pos-1975-right,
.his-box .slo-wrap .history-contents .history-photo.history-photo--pos-1975-right,
.his-box .his-wrap .history-contents .history-photo.history-photo--pos-1975-right {
  --photo-y: 0px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-01,
.slo-box .his-wrap .history-contents .history-photo.history-photo-01,
.his-box .slo-wrap .history-contents .history-photo.history-photo-01,
.his-box .his-wrap .history-contents .history-photo.history-photo-01 {
  position: absolute;
  right: -4%;
  bottom: 16%;
  --photo-w: 110px;
  --photo-max-h: 280px;
  width: 36%;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-02,
.slo-box .his-wrap .history-contents .history-photo.history-photo-02,
.his-box .slo-wrap .history-contents .history-photo.history-photo-02,
.his-box .his-wrap .history-contents .history-photo.history-photo-02 {
  width: 100%;
  max-width: 150px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-03,
.slo-box .his-wrap .history-contents .history-photo.history-photo-03,
.his-box .slo-wrap .history-contents .history-photo.history-photo-03,
.his-box .his-wrap .history-contents .history-photo.history-photo-03 {
  width: 100%;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-02,
.slo-box .his-wrap .history-contents .history-photo.history-photo-02,
.his-box .slo-wrap .history-contents .history-photo.history-photo-02,
.his-box .his-wrap .history-contents .history-photo.history-photo-02 {
  --photo-w: 130px;
  --photo-max-h: 90px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-03,
.slo-box .his-wrap .history-contents .history-photo.history-photo-03,
.his-box .slo-wrap .history-contents .history-photo.history-photo-03,
.his-box .his-wrap .history-contents .history-photo.history-photo-03 {
  max-width: 215px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-04,
.slo-box .his-wrap .history-contents .history-photo.history-photo-04,
.his-box .slo-wrap .history-contents .history-photo.history-photo-04,
.his-box .his-wrap .history-contents .history-photo.history-photo-04 {
  max-width: 215px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-05,
.slo-box .his-wrap .history-contents .history-photo.history-photo-05,
.his-box .slo-wrap .history-contents .history-photo.history-photo-05,
.his-box .his-wrap .history-contents .history-photo.history-photo-05 {
  max-width: 215px;
  position: relative;
  z-index: 1;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-06,
.slo-box .his-wrap .history-contents .history-photo.history-photo-06,
.his-box .slo-wrap .history-contents .history-photo.history-photo-06,
.his-box .his-wrap .history-contents .history-photo.history-photo-06 {
  position: absolute;
  left: -36%;
  bottom: -3%;
  width: 217%;
  max-width: none;
  z-index: 2;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-10,
.slo-box .his-wrap .history-contents .history-photo.history-photo-10,
.his-box .slo-wrap .history-contents .history-photo.history-photo-10,
.his-box .his-wrap .history-contents .history-photo.history-photo-10 {
  max-width: 134px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-11,
.slo-box .his-wrap .history-contents .history-photo.history-photo-11,
.his-box .slo-wrap .history-contents .history-photo.history-photo-11,
.his-box .his-wrap .history-contents .history-photo.history-photo-11 {
  max-width: 215px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-13,
.slo-box .his-wrap .history-contents .history-photo.history-photo-13,
.his-box .slo-wrap .history-contents .history-photo.history-photo-13,
.his-box .his-wrap .history-contents .history-photo.history-photo-13 {
  width: 110%;
  margin-left: -5%;
  margin-right: -5%;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-16,
.slo-box .his-wrap .history-contents .history-photo.history-photo-16,
.his-box .slo-wrap .history-contents .history-photo.history-photo-16,
.his-box .his-wrap .history-contents .history-photo.history-photo-16 {
  width: 100%;
  max-width: 215px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-18,
.slo-box .his-wrap .history-contents .history-photo.history-photo-18,
.his-box .slo-wrap .history-contents .history-photo.history-photo-18,
.his-box .his-wrap .history-contents .history-photo.history-photo-18 {
  width: 100%;
  max-width: 145px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-19,
.slo-box .his-wrap .history-contents .history-photo.history-photo-19,
.his-box .slo-wrap .history-contents .history-photo.history-photo-19,
.his-box .his-wrap .history-contents .history-photo.history-photo-19 {
  width: 150%;
  margin-left: -22%;
  margin-top: 110px;
  max-width: none;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-20,
.slo-box .his-wrap .history-contents .history-photo.history-photo-20,
.his-box .slo-wrap .history-contents .history-photo.history-photo-20,
.his-box .his-wrap .history-contents .history-photo.history-photo-20 {
  width: 130%;
  max-width: none;
  margin-top: 70px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-23,
.slo-box .his-wrap .history-contents .history-photo.history-photo-23,
.his-box .slo-wrap .history-contents .history-photo.history-photo-23,
.his-box .his-wrap .history-contents .history-photo.history-photo-23 {
  width: 164%;
  margin-left: -22%;
  margin-top: 60px;
  max-width: none;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-24,
.slo-box .his-wrap .history-contents .history-photo.history-photo-24,
.his-box .slo-wrap .history-contents .history-photo.history-photo-24,
.his-box .his-wrap .history-contents .history-photo.history-photo-24 {
  width: 100%;
  max-width: 215px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-25,
.slo-box .his-wrap .history-contents .history-photo.history-photo-25,
.his-box .slo-wrap .history-contents .history-photo.history-photo-25,
.his-box .his-wrap .history-contents .history-photo.history-photo-25 {
  width: 100%;
  max-width: 215px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-26,
.slo-box .his-wrap .history-contents .history-photo.history-photo-26,
.his-box .slo-wrap .history-contents .history-photo.history-photo-26,
.his-box .his-wrap .history-contents .history-photo.history-photo-26 {
  width: 100%;
  max-width: 260px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-29,
.slo-box .his-wrap .history-contents .history-photo.history-photo-29,
.his-box .slo-wrap .history-contents .history-photo.history-photo-29,
.his-box .his-wrap .history-contents .history-photo.history-photo-29 {
  width: 100%;
  max-width: 215px;
  margin-left: -65%;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-30,
.slo-box .his-wrap .history-contents .history-photo.history-photo-30,
.his-box .slo-wrap .history-contents .history-photo.history-photo-30,
.his-box .his-wrap .history-contents .history-photo.history-photo-30 {
  position: absolute;
  left: -143%;
  bottom: -3%;
  width: 205%;
  max-width: none;
  z-index: 2;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-31,
.slo-box .his-wrap .history-contents .history-photo.history-photo-31,
.his-box .slo-wrap .history-contents .history-photo.history-photo-31,
.his-box .his-wrap .history-contents .history-photo.history-photo-31 {
  width: 100%;
  max-width: 215px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-35,
.slo-box .his-wrap .history-contents .history-photo.history-photo-35,
.his-box .slo-wrap .history-contents .history-photo.history-photo-35,
.his-box .his-wrap .history-contents .history-photo.history-photo-35 {
  width: 100%;
  max-width: 215px;
  position: relative;
  z-index: 1;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-36,
.slo-box .his-wrap .history-contents .history-photo.history-photo-36,
.his-box .slo-wrap .history-contents .history-photo.history-photo-36,
.his-box .his-wrap .history-contents .history-photo.history-photo-36 {
  position: absolute;
  right: -6%;
  bottom: 2%;
  width: 49%;
  max-width: none;
  z-index: 2;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-37,
.slo-box .his-wrap .history-contents .history-photo.history-photo-37,
.his-box .slo-wrap .history-contents .history-photo.history-photo-37,
.his-box .his-wrap .history-contents .history-photo.history-photo-37 {
  width: 100%;
  max-width: 160px;
}
.slo-box .slo-wrap .history-contents .history-photo.history-photo-38,
.slo-box .his-wrap .history-contents .history-photo.history-photo-38,
.his-box .slo-wrap .history-contents .history-photo.history-photo-38,
.his-box .his-wrap .history-contents .history-photo.history-photo-38 {
  width: 100%;
  max-width: 215px;
}
.slo-box .slo-wrap .history-contents .history-photo-group,
.slo-box .his-wrap .history-contents .history-photo-group,
.his-box .slo-wrap .history-contents .history-photo-group,
.his-box .his-wrap .history-contents .history-photo-group {
  width: 100%;
  display: flex;
  gap: 6px;
  align-items: flex-start;
}
.slo-box .slo-wrap .history-contents .history-photo-group .history-photo,
.slo-box .his-wrap .history-contents .history-photo-group .history-photo,
.his-box .slo-wrap .history-contents .history-photo-group .history-photo,
.his-box .his-wrap .history-contents .history-photo-group .history-photo {
  flex: 1 1 0;
  min-width: 0;
}
.slo-box .slo-wrap .history-contents .history-photo-group--stack,
.slo-box .his-wrap .history-contents .history-photo-group--stack,
.his-box .slo-wrap .history-contents .history-photo-group--stack,
.his-box .his-wrap .history-contents .history-photo-group--stack {
  flex-direction: column;
  gap: 8px;
}
.slo-box .slo-wrap .history-contents .history-photo-group--1975-pair,
.slo-box .his-wrap .history-contents .history-photo-group--1975-pair,
.his-box .slo-wrap .history-contents .history-photo-group--1975-pair,
.his-box .his-wrap .history-contents .history-photo-group--1975-pair {
  width: calc(100% + 72px);
  max-width: none;
  margin-right: -56px;
  gap: 10px;
  align-items: flex-end;
}
.slo-box .slo-wrap .history-contents .history-photo-group--1975-pair .history-photo,
.slo-box .his-wrap .history-contents .history-photo-group--1975-pair .history-photo,
.his-box .slo-wrap .history-contents .history-photo-group--1975-pair .history-photo,
.his-box .his-wrap .history-contents .history-photo-group--1975-pair .history-photo {
  flex: 1 1 44%;
  min-height: 0;
  border-radius: 10px;
  overflow: hidden;
}
.slo-box .slo-wrap .history-contents .history-photo-group--1975-pair .history-photo img,
.slo-box .his-wrap .history-contents .history-photo-group--1975-pair .history-photo img,
.his-box .slo-wrap .history-contents .history-photo-group--1975-pair .history-photo img,
.his-box .his-wrap .history-contents .history-photo-group--1975-pair .history-photo img {
  border-radius: 10px;
  max-height: 172px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.slo-box .slo-wrap .history-contents .history-photo-group--1975-pair .history-photo:last-child,
.slo-box .his-wrap .history-contents .history-photo-group--1975-pair .history-photo:last-child,
.his-box .slo-wrap .history-contents .history-photo-group--1975-pair .history-photo:last-child,
.his-box .his-wrap .history-contents .history-photo-group--1975-pair .history-photo:last-child {
  flex: 1 1 56%;
}
.slo-box .slo-wrap .history-contents .history-photo-group--uneven .history-photo:first-child,
.slo-box .his-wrap .history-contents .history-photo-group--uneven .history-photo:first-child,
.his-box .slo-wrap .history-contents .history-photo-group--uneven .history-photo:first-child,
.his-box .his-wrap .history-contents .history-photo-group--uneven .history-photo:first-child {
  flex: 1 1 38%;
}
.slo-box .slo-wrap .history-contents .history-photo-group--uneven .history-photo:last-child,
.slo-box .his-wrap .history-contents .history-photo-group--uneven .history-photo:last-child,
.his-box .slo-wrap .history-contents .history-photo-group--uneven .history-photo:last-child,
.his-box .his-wrap .history-contents .history-photo-group--uneven .history-photo:last-child {
  flex: 1 1 62%;
}
.slo-box .slo-wrap .history-contents .history-photo-group--overlap,
.slo-box .his-wrap .history-contents .history-photo-group--overlap,
.his-box .slo-wrap .history-contents .history-photo-group--overlap,
.his-box .his-wrap .history-contents .history-photo-group--overlap {
  position: relative;
  padding-bottom: 28px;
}
.slo-box .slo-wrap .history-contents .history-photo-group--overlap .history-photo:first-child,
.slo-box .his-wrap .history-contents .history-photo-group--overlap .history-photo:first-child,
.his-box .slo-wrap .history-contents .history-photo-group--overlap .history-photo:first-child,
.his-box .his-wrap .history-contents .history-photo-group--overlap .history-photo:first-child {
  flex: 1 1 100%;
  width: 100%;
}
.slo-box .slo-wrap .history-contents .history-photo-group--overlap .history-photo:last-child,
.slo-box .his-wrap .history-contents .history-photo-group--overlap .history-photo:last-child,
.his-box .slo-wrap .history-contents .history-photo-group--overlap .history-photo:last-child,
.his-box .his-wrap .history-contents .history-photo-group--overlap .history-photo:last-child {
  position: absolute;
  right: -2px;
  bottom: 0;
  width: 46%;
  max-width: 120px;
  box-shadow: 0 2px 10px rgba(35, 24, 21, 0.18);
  border-radius: 4px;
  z-index: 1;
}

.his-box {
  background: #fffacd;
  padding: 0px 0 0px;
}
.his-box .his-wrap {
  background: #fdfce6;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
  width: 100vw;
  max-width: none;
  margin-left: auto;
  margin-right: auto;
}
.his-box .his-wrap .history-contents {
  /* `.his-wrap` 内で横スクロール（幅はビューポート基準の `.his-wrap` に追従） */
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}

.his-box {
  padding-bottom: 0;
}
.his-box .his-wrap {
  padding-bottom: 0;
}

.ste-box {
  background: url(../img/statement-bg.jpg) no-repeat center bottom/cover;
  padding: 60px 0 130px;
}
.ste-box .ste-wrap {
  max-width: 630px;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  border: 10px solid #fff;
  border-radius: 20px;
  padding: 60px 0 60px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  background: linear-gradient(to bottom, #fff, #dfdfdf);
}
.ste-box .ste-wrap .ste-ttl {
  font-size: 20px;
  font-weight: bold;
  color: #040000;
  margin-bottom: 12px;
  text-align: center;
  line-height: 1;
}
.ste-box .ste-wrap .kage-img {
  width: 210px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 34px;
}
.ste-box .ste-wrap .ste-text {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 410px;
  margin-bottom: 50px;
}
.ste-box .ste-wrap .ste-text img {
  width: 100%;
}
.ste-box .ste-wrap .subtext {
  font-size: 15px;
  color: #040000;
  line-height: 2.66;
  text-align: center;
  margin-bottom: 60px;
  letter-spacing: 0.03em;
}
.ste-box .ste-wrap .steimg {
  max-width: 310px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
}
.ste-box .ste-wrap .steimg img {
  width: 100%;
}
.ste-box .ste-wrap .ste-link {
  text-align: center;
}
.ste-box .ste-wrap .ste-link a {
  display: inline-block;
  padding: 10px 20px;
  background: linear-gradient(to right, #00b3d6, #6fc8e3);
  border-radius: 5px;
  text-decoration: none;
  color: #fff;
  border-radius: 30px;
  transition: all 0.3s ease;
  opacity: 1;
}
.ste-box .ste-wrap .ste-link a:hover {
  opacity: 0.8;
}
.ste-box .ste-wrap .ste-link a .sankaku {
  width: 8px;
  margin-left: 10px;
  display: inline-block;
  line-height: 1;
  vertical-align: middle;
}
.ste-box .ste-wrap .ste-link a .sankaku img {
  display: block;
}
.ste-box .ste-wrap .ste-link a .view-text {
  font-size: 24px;
  color: #fff;
  display: inline-block;
  line-height: 1;
  vertical-align: middle;
}

/* 80年の歩み：横スクロール中のみ表示、ビューポート左右に固定（下セクションへ） */
.his-box {
  position: relative;
  /* 退出パネル幅と一致（タイムライン・ガイドが下に隠れないよう中身をインデント） */
  --his-exit-gutter: clamp(44px, 4.5vw, 64px);
}
.his-box .his-exit-panel {
  position: fixed;
  top: 0;
  bottom: 0;
  z-index: 101;
  width: max(44px, 4.5vw);
  max-width: 64px;
  padding: 0;
  margin: 0;
  border: 0;
  background: #fffacd;
  color: #231815;
  cursor: pointer;
  display: grid;
  align-content: center;
  justify-items: center;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.25s ease, visibility 0.25s ease;
}
.his-box .his-exit-panel.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.his-box .his-exit-panel__icon {
  font-size: 22px;
  line-height: 1;
  font-weight: 700;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.his-box .his-exit-panel--left {
  left: 0;
}
.his-box .his-exit-panel--right {
  right: 0;
}

.his-box .his-wrap .history-contents {
  box-sizing: border-box;
  padding-left: var(--his-exit-gutter);
  padding-right: var(--his-exit-gutter);
  /* 縦スクロールバーが出ないよう縦は常に隠す（横スクロールのみ） */
  overflow-y: hidden;
  /* 横スクロール幅を ● が線の右端に乗ったときの位置まで延ばす（トラック・線の長さは変えず、右に余白のみ） */
  --history-dot-size: 10px;
  --history-scroll-past-line: 14px;
  --history-scroll-tail: calc(var(--history-dot-size) + var(--history-scroll-past-line));
}

.his-box .his-wrap .history-contents .history-scroll-guide {
  right: calc(16px + var(--his-exit-gutter));
  max-width: calc(100% - 32px - var(--his-exit-gutter));
}

.his-box .his-wrap .history-contents.history-contents--natoco .history-timeline-swiper .swiper-wrapper {
  padding-right: var(--history-scroll-tail);
  margin-right: var(--his-exit-gutter);
}

/* Natoco: 年代バー行の左右＝Swiper ラッパーと同じにし、translate 同期で列グリッドと始点・終点が一致する */
.his-box .his-wrap .history-contents.history-contents--natoco .history-eras {
  padding-left: 16px;
  padding-right: calc(var(--history-scroll-tail) + var(--his-exit-gutter));
  min-width: calc(var(--total-cols, 1) * var(--item-w) + 16px + var(--history-scroll-tail) + var(--his-exit-gutter));
}

@media (max-width: 900px) {
  .slo-box,
.his-box {
    background: url(../img/slogan-bg-sp.jpg) no-repeat center bottom/cover;
    padding: calc(60 * 1.5 * 100vw / 700) 0 calc(130 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap,
.slo-box .his-wrap,
.his-box .slo-wrap,
.his-box .his-wrap {
    max-width: calc(630 * 1.5 * 100vw / 700);
    margin-left: auto;
    margin-right: auto;
    width: 90%;
    border: calc(10 * 1.5 * 100vw / 700) solid #fff;
    border-radius: calc(20 * 1.5 * 100vw / 700);
    padding: 0 0 0;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    background: linear-gradient(to bottom, #fff, #dfdfdf);
  }
  .slo-box .slo-wrap .slo-ttl,
.slo-box .slo-wrap .his-ttl,
.slo-box .his-wrap .slo-ttl,
.slo-box .his-wrap .his-ttl,
.his-box .slo-wrap .slo-ttl,
.his-box .slo-wrap .his-ttl,
.his-box .his-wrap .slo-ttl,
.his-box .his-wrap .his-ttl {
    font-size: calc(20 * 1.5 * 100vw / 700);
    font-weight: bold;
    margin-bottom: calc(12 * 1.5 * 100vw / 700);
    text-align: center;
    line-height: 1;
    color: #040000;
  }
  .slo-box .slo-wrap .kage-img,
.slo-box .his-wrap .kage-img,
.his-box .slo-wrap .kage-img,
.his-box .his-wrap .kage-img {
    width: calc(210 * 1.5 * 100vw / 700);
    margin-left: auto;
    margin-right: auto;
    margin-bottom: calc(34 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .slo-text,
.slo-box .his-wrap .slo-text,
.his-box .slo-wrap .slo-text,
.his-box .his-wrap .slo-text {
    font-size: calc(40 * 1.5 * 100vw / 700);
    color: #008dc3;
    margin-bottom: calc(50 * 1.5 * 100vw / 700);
    text-align: center;
    line-height: 1.42;
  }
  .slo-box .slo-wrap .subtext,
.slo-box .his-wrap .subtext,
.his-box .slo-wrap .subtext,
.his-box .his-wrap .subtext {
    font-size: calc(15 * 1.5 * 100vw / 700);
    color: #040000;
    line-height: 2.66;
    text-align: center;
  }
  .slo-box .slo-wrap .history-contents,
.slo-box .his-wrap .history-contents,
.his-box .slo-wrap .history-contents,
.his-box .his-wrap .history-contents {
    /* 列幅の上限＝コンテナ幅（隣列のかけらで本文が切れるのを防ぐ） */
    container-type: inline-size;
    /* ===== SP: PC px を 700 基準で vw 化し ×1.5（フォント等の視認性）===== */
    --item-w: calc(290 * 1.5 * 100vw / 700);
    --item-min-h: calc(300 * 1.5 * 100vw / 700);
    --note-min-h: calc(84 * 1.5 * 100vw / 700);
    --photo-cover-h: calc(88 * 1.5 * 100vw / 700);
    --photo-panel-max-h: calc(130 * 1.5 * 100vw / 700);
    --photo-tall-max-h: calc(220 * 1.5 * 100vw / 700);
    --photo-founding-max-h: calc(280 * 1.5 * 100vw / 700);
    --era-bar-h: calc(24 * 1.5 * 100vw / 700);
    --era-arrow-w: calc(14 * 1.5 * 100vw / 700);
    --line-y: calc(176 * 1.5 * 100vw / 700);
    --history-dot-size: calc(10 * 1.5 * 100vw / 700);
    --history-scroll-past-line: calc(14 * 1.5 * 100vw / 700);
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: calc(10 * 1.5 * 100vw / 700);
    /* Natoco 以外: フッター左右パディング＋線の左右 inset（正の extend-end は右へはみ出すため overflow で切れやすい） */
  }
  @supports (width: 1cqw) {
    .slo-box .slo-wrap .history-contents,
.slo-box .his-wrap .history-contents,
.his-box .slo-wrap .history-contents,
.his-box .his-wrap .history-contents {
      --item-w: min(
          calc(290 * 1.5 * 100vw / 700),
          calc(
              100cqw
              - (2 * calc(16 * 1.5 * 100vw / 700))
              - var(--history-scroll-tail)
              - var(--his-exit-gutter)
          )
      );
    }
  }
  .slo-box .slo-wrap .history-contents.history-contents--natoco,
.slo-box .his-wrap .history-contents.history-contents--natoco,
.his-box .slo-wrap .history-contents.history-contents--natoco,
.his-box .his-wrap .history-contents.history-contents--natoco {
    --history-playhead-offset-top: calc(4 * 1.5 * 100vw / 700);
    padding-bottom: calc(4 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents.history-contents--natoco .history-scroll-guide,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-scroll-guide,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-scroll-guide,
.his-box .his-wrap .history-contents.history-contents--natoco .history-scroll-guide {
    bottom: calc(52 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-swiper,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-timeline-swiper,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-swiper,
.his-box .his-wrap .history-contents.history-contents--natoco .history-timeline-swiper {
    --swiper-scrollbar-sides-offset: 0px;
    --swiper-scrollbar-bottom: 0px;
  }
  .slo-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-footer,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-timeline-footer,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-footer,
.his-box .his-wrap .history-contents.history-contents--natoco .history-timeline-footer {
    width: 100%;
    box-sizing: border-box;
    padding: calc(10 * 1.5 * 100vw / 700) 0 calc(6 * 1.5 * 100vw / 700);
    flex-shrink: 0;
    position: relative;
    z-index: 2;
    pointer-events: auto;
  }
  .slo-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-scrollbar.swiper-scrollbar,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-timeline-scrollbar.swiper-scrollbar,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-timeline-scrollbar.swiper-scrollbar,
.his-box .his-wrap .history-contents.history-contents--natoco .history-timeline-scrollbar.swiper-scrollbar {
    --swiper-scrollbar-sides-offset: 0px;
    margin-left: 0;
    left: 0 !important;
    width: 100% !important;
    box-sizing: border-box;
    --history-scrollbar-line-inset-start-sp: 0px;
    --history-scrollbar-line-inset-start: 0px;
    --history-scrollbar-line-extend-end: 0px;
    max-width: none;
  }
  .slo-box .slo-wrap .history-contents.history-contents--natoco .history-eras,
.slo-box .his-wrap .history-contents.history-contents--natoco .history-eras,
.his-box .slo-wrap .history-contents.history-contents--natoco .history-eras,
.his-box .his-wrap .history-contents.history-contents--natoco .history-eras {
    padding-left: calc(16 * 1.5 * 100vw / 700);
    padding-right: calc(var(--history-scroll-tail) + var(--his-exit-gutter));
    min-width: calc(
                            (var(--total-cols, 1) * var(--item-w))
                            + calc(16 * 1.5 * 100vw / 700)
                            + var(--history-scroll-tail)
                            + var(--his-exit-gutter)
                        );
  }
  .slo-box .slo-wrap .history-contents .history-eras-clip,
.slo-box .his-wrap .history-contents .history-eras-clip,
.his-box .slo-wrap .history-contents .history-eras-clip,
.his-box .his-wrap .history-contents .history-eras-clip {
    margin-bottom: calc(18 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-timeline-swiper .swiper-wrapper,
.slo-box .his-wrap .history-contents .history-timeline-swiper .swiper-wrapper,
.his-box .slo-wrap .history-contents .history-timeline-swiper .swiper-wrapper,
.his-box .his-wrap .history-contents .history-timeline-swiper .swiper-wrapper {
    padding: calc(4 * 1.5 * 100vw / 700) calc(16 * 1.5 * 100vw / 700) calc(8 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents:not(.history-contents--natoco) .history-timeline-footer,
.slo-box .his-wrap .history-contents:not(.history-contents--natoco) .history-timeline-footer,
.his-box .slo-wrap .history-contents:not(.history-contents--natoco) .history-timeline-footer,
.his-box .his-wrap .history-contents:not(.history-contents--natoco) .history-timeline-footer {
    width: 100%;
    box-sizing: border-box;
    padding: calc(10 * 1.5 * 100vw / 700) calc(16 * 1.5 * 100vw / 700) calc(6 * 1.5 * 100vw / 700);
    flex-shrink: 0;
    position: relative;
    z-index: 2;
    pointer-events: auto;
  }
  .slo-box .slo-wrap .history-contents:not(.history-contents--natoco) .history-timeline-scrollbar.swiper-scrollbar,
.slo-box .his-wrap .history-contents:not(.history-contents--natoco) .history-timeline-scrollbar.swiper-scrollbar,
.his-box .slo-wrap .history-contents:not(.history-contents--natoco) .history-timeline-scrollbar.swiper-scrollbar,
.his-box .his-wrap .history-contents:not(.history-contents--natoco) .history-timeline-scrollbar.swiper-scrollbar {
    --history-scrollbar-line-inset-start-sp: calc(16 * 1.5 * 100vw / 700);
    --history-scrollbar-line-inset-start: var(--history-scrollbar-line-inset-start-sp);
    --history-scrollbar-line-extend-end: calc(16 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar,
.slo-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar,
.his-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar,
.his-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar {
    height: calc(32 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar::before,
.slo-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar::before,
.his-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar::before,
.his-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar::before {
    height: calc(2 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag,
.slo-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag,
.his-box .slo-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag,
.his-box .his-wrap .history-contents .history-timeline-scrollbar.swiper-scrollbar .swiper-scrollbar-drag {
    min-width: 0;
    max-width: none;
    background-size: auto 100%;
    overflow: hidden;
  }
  .slo-box .slo-wrap .history-contents .history-scroll,
.slo-box .his-wrap .history-contents .history-scroll,
.his-box .slo-wrap .history-contents .history-scroll,
.his-box .his-wrap .history-contents .history-scroll {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
  .slo-box .slo-wrap .history-contents .history-eras,
.slo-box .his-wrap .history-contents .history-eras,
.his-box .slo-wrap .history-contents .history-eras,
.his-box .his-wrap .history-contents .history-eras {
    display: flex;
    min-width: calc((var(--total-cols, 1) * var(--item-w)) + calc(32 * 1.5 * 100vw / 700));
    margin-bottom: 0;
    gap: 0;
    padding: 0 calc(16 * 1.5 * 100vw / 700);
    box-sizing: border-box;
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era,
.slo-box .his-wrap .history-contents .history-eras .history-era,
.his-box .slo-wrap .history-contents .history-eras .history-era,
.his-box .his-wrap .history-contents .history-eras .history-era {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    gap: calc(14 * 1.5 * 100vw / 700);
    height: calc(44 * 1.5 * 100vw / 700);
    min-height: calc(44 * 1.5 * 100vw / 700);
    flex: 0 0 auto;
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era:only-child,
.slo-box .his-wrap .history-contents .history-eras .history-era:only-child,
.his-box .slo-wrap .history-contents .history-eras .history-era:only-child,
.his-box .his-wrap .history-contents .history-eras .history-era:only-child {
    flex: 1 1 auto;
    flex-basis: 100%;
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era .history-era-year,
.slo-box .his-wrap .history-contents .history-eras .history-era .history-era-year,
.his-box .slo-wrap .history-contents .history-eras .history-era .history-era-year,
.his-box .his-wrap .history-contents .history-eras .history-era .history-era-year {
    flex: 0 0 auto;
    position: relative;
    z-index: 2;
    font-size: calc(32 * 1.5 * 100vw / 700);
    line-height: 1;
    font-weight: bold;
    color: #231815;
    font-family: "DIN 2014", "DIN Alternate", "Arial Narrow", Arial, sans-serif;
    padding-top: 1px;
    padding-left: 0.1em;
    letter-spacing: 0.02em;
    pointer-events: none;
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era .history-era-bar,
.slo-box .his-wrap .history-contents .history-eras .history-era .history-era-bar,
.his-box .slo-wrap .history-contents .history-eras .history-era .history-era-bar,
.his-box .his-wrap .history-contents .history-eras .history-era .history-era-bar {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    height: var(--era-bar-h);
    border-radius: 0;
    margin-top: calc(6 * 1.5 * 100vw / 700);
    -webkit-clip-path: polygon(0 0, calc(100% - var(--era-arrow-w)) 0, 100% 50%, calc(100% - var(--era-arrow-w)) 100%, 0 100%);
            clip-path: polygon(0 0, calc(100% - var(--era-arrow-w)) 0, 100% 50%, calc(100% - var(--era-arrow-w)) 100%, 0 100%);
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era .history-era-label,
.slo-box .his-wrap .history-contents .history-eras .history-era .history-era-label,
.his-box .slo-wrap .history-contents .history-eras .history-era .history-era-label,
.his-box .his-wrap .history-contents .history-eras .history-era .history-era-label {
    position: absolute;
    left: calc(12 * 1.5 * 100vw / 700);
    top: 50%;
    transform: translateY(-50%);
    font-size: calc(11 * 1.5 * 100vw / 700);
    line-height: 1;
    color: #fff;
    padding: 0;
    border-radius: 0;
    background: transparent;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era.is-blue,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-blue,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-blue,
.his-box .his-wrap .history-contents .history-eras .history-era.is-blue {
    flex: 0 0 calc(var(--cols, 1) * var(--item-w));
    width: calc(var(--cols, 1) * var(--item-w));
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era.is-blue .history-era-bar,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-blue .history-era-bar,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-blue .history-era-bar,
.his-box .his-wrap .history-contents .history-eras .history-era.is-blue .history-era-bar {
    background: linear-gradient(to right, #1a5fa7, #8fcde2);
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era.is-green,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-green,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-green,
.his-box .his-wrap .history-contents .history-eras .history-era.is-green {
    flex: 0 0 calc(var(--cols, 1) * var(--item-w));
    width: calc(var(--cols, 1) * var(--item-w));
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era.is-green .history-era-bar,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-green .history-era-bar,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-green .history-era-bar,
.his-box .his-wrap .history-contents .history-eras .history-era.is-green .history-era-bar {
    background: linear-gradient(to right, #7ecef4, #bad87b);
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era.is-olive,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-olive,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-olive,
.his-box .his-wrap .history-contents .history-eras .history-era.is-olive {
    flex: 0 0 calc(var(--cols, 1) * var(--item-w));
    width: calc(var(--cols, 1) * var(--item-w));
  }
  .slo-box .slo-wrap .history-contents .history-eras .history-era.is-olive .history-era-bar,
.slo-box .his-wrap .history-contents .history-eras .history-era.is-olive .history-era-bar,
.his-box .slo-wrap .history-contents .history-eras .history-era.is-olive .history-era-bar,
.his-box .his-wrap .history-contents .history-eras .history-era.is-olive .history-era-bar {
    background: linear-gradient(to right, #b7d786, #e1eaa4, #c2e6fa);
  }
  .slo-box .slo-wrap .history-contents .history-item,
.slo-box .his-wrap .history-contents .history-item,
.his-box .slo-wrap .history-contents .history-item,
.his-box .his-wrap .history-contents .history-item {
    width: var(--item-w);
    flex: 0 0 var(--item-w);
    min-height: var(--item-min-h);
    padding-top: calc(24 * 1.5 * 100vw / 700);
    overflow: visible;
  }
  .slo-box .slo-wrap .history-contents .history-middle,
.slo-box .his-wrap .history-contents .history-middle,
.his-box .slo-wrap .history-contents .history-middle,
.his-box .his-wrap .history-contents .history-middle {
    width: 92%;
    padding: 0 calc(6 * 1.5 * 100vw / 700);
    text-align: left;
    margin-bottom: calc(18 * 1.5 * 100vw / 700);
    min-height: calc(135 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-year,
.slo-box .his-wrap .history-contents .history-year,
.his-box .slo-wrap .history-contents .history-year,
.his-box .his-wrap .history-contents .history-year {
    font-size: calc(12 * 1.5 * 100vw / 700);
    line-height: 1.2;
    font-weight: bold;
    color: #231815;
    margin-bottom: calc(8 * 1.5 * 100vw / 700);
    font-family: "DIN 2014", "DIN Alternate", "Arial Narrow", Arial, sans-serif;
    letter-spacing: 0.02em;
  }
  .slo-box .slo-wrap .history-contents .history-year__num,
.slo-box .his-wrap .history-contents .history-year__num,
.his-box .slo-wrap .history-contents .history-year__num,
.his-box .his-wrap .history-contents .history-year__num {
    font-size: 1.2em;
  }
  .slo-box .slo-wrap .history-contents .history-event,
.slo-box .his-wrap .history-contents .history-event,
.his-box .slo-wrap .history-contents .history-event,
.his-box .his-wrap .history-contents .history-event {
    font-size: calc(14 * 1.5 * 100vw / 700);
    line-height: 1.5;
    color: #231815;
    font-weight: 600;
    text-align: left;
  }
  .slo-box .slo-wrap .history-contents .history-lower,
.slo-box .his-wrap .history-contents .history-lower,
.his-box .slo-wrap .history-contents .history-lower,
.his-box .his-wrap .history-contents .history-lower {
    width: 92%;
    margin-left: auto;
    margin-right: auto;
    padding-top: calc(12 * 1.5 * 100vw / 700);
    min-height: calc(400 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-lower.ex,
.slo-box .his-wrap .history-contents .history-lower.ex,
.his-box .slo-wrap .history-contents .history-lower.ex,
.his-box .his-wrap .history-contents .history-lower.ex {
    margin-right: 3%;
  }
  .slo-box .slo-wrap .history-contents .history-lower.ex2,
.slo-box .his-wrap .history-contents .history-lower.ex2,
.his-box .slo-wrap .history-contents .history-lower.ex2,
.his-box .his-wrap .history-contents .history-lower.ex2 {
    width: 120%;
    max-width: none;
    margin-right: -50%;
  }
  .slo-box .slo-wrap .history-contents .history-lower > .history-photo,
.slo-box .slo-wrap .history-contents .history-lower > .history-photo-group,
.slo-box .his-wrap .history-contents .history-lower > .history-photo,
.slo-box .his-wrap .history-contents .history-lower > .history-photo-group,
.his-box .slo-wrap .history-contents .history-lower > .history-photo,
.his-box .slo-wrap .history-contents .history-lower > .history-photo-group,
.his-box .his-wrap .history-contents .history-lower > .history-photo,
.his-box .his-wrap .history-contents .history-lower > .history-photo-group {
    margin-top: auto;
  }
  .slo-box .slo-wrap .history-contents .history-lower.history-lower-01,
.slo-box .his-wrap .history-contents .history-lower.history-lower-01,
.his-box .slo-wrap .history-contents .history-lower.history-lower-01,
.his-box .his-wrap .history-contents .history-lower.history-lower-01 {
    width: 120%;
  }
  .slo-box .slo-wrap .history-contents .history-lower.history-lower--photo-bleed,
.slo-box .his-wrap .history-contents .history-lower.history-lower--photo-bleed,
.his-box .slo-wrap .history-contents .history-lower.history-lower--photo-bleed,
.his-box .his-wrap .history-contents .history-lower.history-lower--photo-bleed {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: calc(4 * 1.5 * 100vw / 700);
    padding-right: 0;
  }
  .slo-box .slo-wrap .history-contents .history-note,
.slo-box .his-wrap .history-contents .history-note,
.his-box .slo-wrap .history-contents .history-note,
.his-box .his-wrap .history-contents .history-note {
    font-size: calc(14 * 1.5 * 100vw / 700);
    line-height: 1.6;
    min-height: var(--note-min-h);
    color: #231815;
    margin-bottom: calc(10 * 1.5 * 100vw / 700);
    max-width: calc(215 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-note.ex,
.slo-box .his-wrap .history-contents .history-note.ex,
.his-box .slo-wrap .history-contents .history-note.ex,
.his-box .his-wrap .history-contents .history-note.ex {
    max-width: calc(230 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-note:empty,
.slo-box .his-wrap .history-contents .history-note:empty,
.his-box .slo-wrap .history-contents .history-note:empty,
.his-box .his-wrap .history-contents .history-note:empty {
    min-height: 0;
    margin-bottom: 0;
  }
  .slo-box .slo-wrap .history-contents .history-note.min-h,
.slo-box .his-wrap .history-contents .history-note.min-h,
.his-box .slo-wrap .history-contents .history-note.min-h,
.his-box .his-wrap .history-contents .history-note.min-h {
    min-height: 10em;
  }
  .slo-box .slo-wrap .history-contents .history-photo,
.slo-box .his-wrap .history-contents .history-photo,
.his-box .slo-wrap .history-contents .history-photo,
.his-box .his-wrap .history-contents .history-photo {
    min-height: calc(66 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo--cover,
.slo-box .his-wrap .history-contents .history-photo.history-photo--cover,
.his-box .slo-wrap .history-contents .history-photo.history-photo--cover,
.his-box .his-wrap .history-contents .history-photo.history-photo--cover {
    border-radius: calc(4 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo--panel,
.slo-box .his-wrap .history-contents .history-photo.history-photo--panel,
.his-box .slo-wrap .history-contents .history-photo.history-photo--panel,
.his-box .his-wrap .history-contents .history-photo.history-photo--panel {
    border-radius: calc(10 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo--panel img,
.slo-box .his-wrap .history-contents .history-photo.history-photo--panel img,
.his-box .slo-wrap .history-contents .history-photo.history-photo--panel img,
.his-box .his-wrap .history-contents .history-photo.history-photo--panel img {
    border-radius: calc(10 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo--founding,
.slo-box .his-wrap .history-contents .history-photo.history-photo--founding,
.his-box .slo-wrap .history-contents .history-photo.history-photo--founding,
.his-box .his-wrap .history-contents .history-photo.history-photo--founding {
    --photo-w: 58%;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo--shift-up,
.slo-box .his-wrap .history-contents .history-photo.history-photo--shift-up,
.his-box .slo-wrap .history-contents .history-photo.history-photo--shift-up,
.his-box .his-wrap .history-contents .history-photo.history-photo--shift-up {
    --photo-y: calc(-12 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo--shift-down,
.slo-box .his-wrap .history-contents .history-photo.history-photo--shift-down,
.his-box .slo-wrap .history-contents .history-photo.history-photo--shift-down,
.his-box .his-wrap .history-contents .history-photo.history-photo--shift-down {
    --photo-y: calc(10 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo--pos-1975-left,
.slo-box .his-wrap .history-contents .history-photo.history-photo--pos-1975-left,
.his-box .slo-wrap .history-contents .history-photo.history-photo--pos-1975-left,
.his-box .his-wrap .history-contents .history-photo.history-photo--pos-1975-left {
    --photo-y: calc(2 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo--pos-1975-right,
.slo-box .his-wrap .history-contents .history-photo.history-photo--pos-1975-right,
.his-box .slo-wrap .history-contents .history-photo.history-photo--pos-1975-right,
.his-box .his-wrap .history-contents .history-photo.history-photo--pos-1975-right {
    --photo-y: 0px;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-01,
.slo-box .his-wrap .history-contents .history-photo.history-photo-01,
.his-box .slo-wrap .history-contents .history-photo.history-photo-01,
.his-box .his-wrap .history-contents .history-photo.history-photo-01 {
    position: absolute;
    right: -4%;
    bottom: 16%;
    --photo-w: calc(110 * 1.5 * 100vw / 700);
    --photo-max-h: calc(280 * 1.5 * 100vw / 700);
    width: 36%;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-02,
.slo-box .his-wrap .history-contents .history-photo.history-photo-02,
.his-box .slo-wrap .history-contents .history-photo.history-photo-02,
.his-box .his-wrap .history-contents .history-photo.history-photo-02 {
    width: 100%;
    max-width: calc(150 * 1.5 * 100vw / 700);
    --photo-w: calc(130 * 1.5 * 100vw / 700);
    --photo-max-h: calc(90 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-03,
.slo-box .his-wrap .history-contents .history-photo.history-photo-03,
.his-box .slo-wrap .history-contents .history-photo.history-photo-03,
.his-box .his-wrap .history-contents .history-photo.history-photo-03 {
    width: 100%;
    max-width: calc(215 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-04,
.slo-box .his-wrap .history-contents .history-photo.history-photo-04,
.his-box .slo-wrap .history-contents .history-photo.history-photo-04,
.his-box .his-wrap .history-contents .history-photo.history-photo-04 {
    max-width: calc(215 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-05,
.slo-box .his-wrap .history-contents .history-photo.history-photo-05,
.his-box .slo-wrap .history-contents .history-photo.history-photo-05,
.his-box .his-wrap .history-contents .history-photo.history-photo-05 {
    max-width: calc(215 * 1.5 * 100vw / 700);
    position: relative;
    z-index: 1;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-06,
.slo-box .his-wrap .history-contents .history-photo.history-photo-06,
.his-box .slo-wrap .history-contents .history-photo.history-photo-06,
.his-box .his-wrap .history-contents .history-photo.history-photo-06 {
    position: absolute;
    left: -36%;
    bottom: -3%;
    width: 217%;
    max-width: none;
    z-index: 2;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-10,
.slo-box .his-wrap .history-contents .history-photo.history-photo-10,
.his-box .slo-wrap .history-contents .history-photo.history-photo-10,
.his-box .his-wrap .history-contents .history-photo.history-photo-10 {
    max-width: calc(134 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-11,
.slo-box .his-wrap .history-contents .history-photo.history-photo-11,
.his-box .slo-wrap .history-contents .history-photo.history-photo-11,
.his-box .his-wrap .history-contents .history-photo.history-photo-11 {
    max-width: calc(215 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-13,
.slo-box .his-wrap .history-contents .history-photo.history-photo-13,
.his-box .slo-wrap .history-contents .history-photo.history-photo-13,
.his-box .his-wrap .history-contents .history-photo.history-photo-13 {
    width: 110%;
    margin-left: -5%;
    margin-right: -5%;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-16,
.slo-box .his-wrap .history-contents .history-photo.history-photo-16,
.his-box .slo-wrap .history-contents .history-photo.history-photo-16,
.his-box .his-wrap .history-contents .history-photo.history-photo-16 {
    width: 100%;
    max-width: calc(215 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-18,
.slo-box .his-wrap .history-contents .history-photo.history-photo-18,
.his-box .slo-wrap .history-contents .history-photo.history-photo-18,
.his-box .his-wrap .history-contents .history-photo.history-photo-18 {
    width: 100%;
    max-width: calc(145 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-19,
.slo-box .his-wrap .history-contents .history-photo.history-photo-19,
.his-box .slo-wrap .history-contents .history-photo.history-photo-19,
.his-box .his-wrap .history-contents .history-photo.history-photo-19 {
    width: 150%;
    margin-left: -22%;
    margin-top: calc(110 * 1.5 * 100vw / 700);
    max-width: none;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-20,
.slo-box .his-wrap .history-contents .history-photo.history-photo-20,
.his-box .slo-wrap .history-contents .history-photo.history-photo-20,
.his-box .his-wrap .history-contents .history-photo.history-photo-20 {
    width: 130%;
    max-width: none;
    margin-top: calc(70 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-23,
.slo-box .his-wrap .history-contents .history-photo.history-photo-23,
.his-box .slo-wrap .history-contents .history-photo.history-photo-23,
.his-box .his-wrap .history-contents .history-photo.history-photo-23 {
    width: 164%;
    margin-left: -22%;
    margin-top: calc(60 * 1.5 * 100vw / 700);
    max-width: none;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-24,
.slo-box .his-wrap .history-contents .history-photo.history-photo-24,
.his-box .slo-wrap .history-contents .history-photo.history-photo-24,
.his-box .his-wrap .history-contents .history-photo.history-photo-24 {
    width: 100%;
    max-width: calc(215 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-25,
.slo-box .his-wrap .history-contents .history-photo.history-photo-25,
.his-box .slo-wrap .history-contents .history-photo.history-photo-25,
.his-box .his-wrap .history-contents .history-photo.history-photo-25 {
    width: 100%;
    max-width: calc(215 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-26,
.slo-box .his-wrap .history-contents .history-photo.history-photo-26,
.his-box .slo-wrap .history-contents .history-photo.history-photo-26,
.his-box .his-wrap .history-contents .history-photo.history-photo-26 {
    width: 100%;
    max-width: calc(260 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-29,
.slo-box .his-wrap .history-contents .history-photo.history-photo-29,
.his-box .slo-wrap .history-contents .history-photo.history-photo-29,
.his-box .his-wrap .history-contents .history-photo.history-photo-29 {
    width: 100%;
    max-width: calc(215 * 1.5 * 100vw / 700);
    margin-left: -65%;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-30,
.slo-box .his-wrap .history-contents .history-photo.history-photo-30,
.his-box .slo-wrap .history-contents .history-photo.history-photo-30,
.his-box .his-wrap .history-contents .history-photo.history-photo-30 {
    position: absolute;
    left: -143%;
    bottom: -3%;
    width: 205%;
    max-width: none;
    z-index: 2;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-31,
.slo-box .his-wrap .history-contents .history-photo.history-photo-31,
.his-box .slo-wrap .history-contents .history-photo.history-photo-31,
.his-box .his-wrap .history-contents .history-photo.history-photo-31 {
    width: 100%;
    max-width: calc(215 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-35,
.slo-box .his-wrap .history-contents .history-photo.history-photo-35,
.his-box .slo-wrap .history-contents .history-photo.history-photo-35,
.his-box .his-wrap .history-contents .history-photo.history-photo-35 {
    width: 100%;
    max-width: calc(215 * 1.5 * 100vw / 700);
    position: relative;
    z-index: 1;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-36,
.slo-box .his-wrap .history-contents .history-photo.history-photo-36,
.his-box .slo-wrap .history-contents .history-photo.history-photo-36,
.his-box .his-wrap .history-contents .history-photo.history-photo-36 {
    position: absolute;
    right: -6%;
    bottom: 2%;
    width: 49%;
    max-width: none;
    z-index: 2;
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-37,
.slo-box .his-wrap .history-contents .history-photo.history-photo-37,
.his-box .slo-wrap .history-contents .history-photo.history-photo-37,
.his-box .his-wrap .history-contents .history-photo.history-photo-37 {
    width: 100%;
    max-width: calc(160 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo.history-photo-38,
.slo-box .his-wrap .history-contents .history-photo.history-photo-38,
.his-box .slo-wrap .history-contents .history-photo.history-photo-38,
.his-box .his-wrap .history-contents .history-photo.history-photo-38 {
    width: 100%;
    max-width: calc(215 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo-group,
.slo-box .his-wrap .history-contents .history-photo-group,
.his-box .slo-wrap .history-contents .history-photo-group,
.his-box .his-wrap .history-contents .history-photo-group {
    gap: calc(6 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo-group--stack,
.slo-box .his-wrap .history-contents .history-photo-group--stack,
.his-box .slo-wrap .history-contents .history-photo-group--stack,
.his-box .his-wrap .history-contents .history-photo-group--stack {
    gap: calc(8 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo-group--1975-pair,
.slo-box .his-wrap .history-contents .history-photo-group--1975-pair,
.his-box .slo-wrap .history-contents .history-photo-group--1975-pair,
.his-box .his-wrap .history-contents .history-photo-group--1975-pair {
    width: calc(100% + calc(72 * 1.5 * 100vw / 700));
    margin-right: calc(-56 * 1.5 * 100vw / 700);
    gap: calc(10 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo-group--1975-pair .history-photo,
.slo-box .his-wrap .history-contents .history-photo-group--1975-pair .history-photo,
.his-box .slo-wrap .history-contents .history-photo-group--1975-pair .history-photo,
.his-box .his-wrap .history-contents .history-photo-group--1975-pair .history-photo {
    border-radius: calc(10 * 1.5 * 100vw / 700);
    overflow: hidden;
  }
  .slo-box .slo-wrap .history-contents .history-photo-group--1975-pair .history-photo img,
.slo-box .his-wrap .history-contents .history-photo-group--1975-pair .history-photo img,
.his-box .slo-wrap .history-contents .history-photo-group--1975-pair .history-photo img,
.his-box .his-wrap .history-contents .history-photo-group--1975-pair .history-photo img {
    border-radius: calc(10 * 1.5 * 100vw / 700);
    max-height: calc(172 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo-group--overlap,
.slo-box .his-wrap .history-contents .history-photo-group--overlap,
.his-box .slo-wrap .history-contents .history-photo-group--overlap,
.his-box .his-wrap .history-contents .history-photo-group--overlap {
    position: relative;
    padding-bottom: calc(28 * 1.5 * 100vw / 700);
  }
  .slo-box .slo-wrap .history-contents .history-photo-group--overlap .history-photo:first-child,
.slo-box .his-wrap .history-contents .history-photo-group--overlap .history-photo:first-child,
.his-box .slo-wrap .history-contents .history-photo-group--overlap .history-photo:first-child,
.his-box .his-wrap .history-contents .history-photo-group--overlap .history-photo:first-child {
    flex: 1 1 100%;
    width: 100%;
  }
  .slo-box .slo-wrap .history-contents .history-photo-group--overlap .history-photo:last-child,
.slo-box .his-wrap .history-contents .history-photo-group--overlap .history-photo:last-child,
.his-box .slo-wrap .history-contents .history-photo-group--overlap .history-photo:last-child,
.his-box .his-wrap .history-contents .history-photo-group--overlap .history-photo:last-child {
    position: absolute;
    right: calc(-2 * 1.5 * 100vw / 700);
    bottom: 0;
    width: 46%;
    max-width: calc(120 * 1.5 * 100vw / 700);
    box-shadow: 0 calc(2 * 1.5 * 100vw / 700) calc(10 * 1.5 * 100vw / 700) rgba(35, 24, 21, 0.18);
    border-radius: calc(4 * 1.5 * 100vw / 700);
    z-index: 1;
  }
  .slo-box .slo-wrap .history-contents .history-scroll-guide,
.slo-box .his-wrap .history-contents .history-scroll-guide,
.his-box .slo-wrap .history-contents .history-scroll-guide,
.his-box .his-wrap .history-contents .history-scroll-guide {
    right: calc(16 * 1.5 * 100vw / 700);
    bottom: calc(16 * 1.5 * 100vw / 700);
    width: calc(160 * 1.5 * 100vw / 700);
    max-width: calc(100% - calc(32 * 1.5 * 100vw / 700));
  }
  .his-box {
    background: #fffacd;
    --his-exit-gutter: clamp(48px, 11vw, 72px);
    padding: 0 0 0;
  }
  .his-box .his-exit-panel {
    width: max(48px, 11vw);
    max-width: 72px;
  }
  .his-box .his-exit-panel__icon {
    font-size: calc(22 * 1.5 * 100vw / 700);
  }
  .his-box .his-wrap {
    background: #fdfce6;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    padding: 5vw 0 2vw;
    width: 100%;
    max-width: none;
  }
  .his-box .his-wrap .history-contents {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: calc(24 * 1.5 * 100vw / 700);
    padding-right: calc(24 * 1.5 * 100vw / 700);
    box-sizing: border-box;
  }
  .his-box .his-wrap .history-contents .history-scroll-guide {
    right: calc(calc(16 * 1.5 * 100vw / 700) + var(--his-exit-gutter));
    max-width: calc(100% - calc(32 * 1.5 * 100vw / 700) - var(--his-exit-gutter));
  }
  .his-box .his-wrap .history-contents .history-scroll-guide.is-sticky {
    right: calc(calc(16 * 1.5 * 100vw / 700) + var(--his-exit-gutter));
    max-width: min(calc(160 * 1.5 * 100vw / 700), calc(100vw - calc(32 * 1.5 * 100vw / 700) - var(--his-exit-gutter) * 2));
  }
  .slo-box {
    padding: 15vw 0 14.2vw;
  }
  .slo-box .slo-wrap {
    padding: 5.6vw 0 7.1vw;
  }
  .slo-box .slo-wrap .slo-text {
    font-size: 5.2vw;
    margin-bottom: 8.5vw;
    text-align: center;
    line-height: 1.42;
  }
  .slo-box .slo-wrap .subtext {
    font-size: 3vw;
    color: #040000;
    line-height: 2.66;
    text-align: center;
  }
  .ste-box {
    background: url(../img/statement-bg-sp.jpg) no-repeat center bottom/cover;
    padding: 17.4vw 0 14.2vw;
  }
  .ste-box .ste-wrap {
    max-width: 90vw;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
    border: 2vw solid #fff;
    border-radius: 5vw;
    padding: 7.1vw 0 5.7vw;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    background: linear-gradient(to bottom, #fff, #dfdfdf);
  }
  .ste-box .ste-wrap .ste-ttl {
    font-size: 3.2vw;
    font-weight: bold;
    margin-bottom: 1.8vw;
    text-align: center;
    line-height: 1;
  }
  .ste-box .ste-wrap .kage-img {
    width: 30vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5.7vw;
  }
  .ste-box .ste-wrap .ste-text {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    max-width: 54vw;
    margin-bottom: 5.8vw;
  }
  .ste-box .ste-wrap .ste-text img {
    width: 100%;
  }
  .ste-box .ste-wrap .subtext {
    font-size: 3vw;
    color: #040000;
    line-height: 2.66;
    text-align: center;
    margin-bottom: 7vw;
  }
  .ste-box .ste-wrap .steimg {
    max-width: 70vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 3.5vw;
  }
  .ste-box .ste-wrap .steimg img {
    width: 100%;
  }
  .ste-box .ste-wrap .ste-link {
    text-align: center;
  }
  .ste-box .ste-wrap .ste-link a {
    display: inline-block;
    padding: 1.5vw 5vw;
    background: linear-gradient(to right, #00b3d6, #6fc8e3);
    border-radius: 5px;
    text-decoration: none;
    color: #fff;
    border-radius: 13vw;
  }
  .ste-box .ste-wrap .ste-link a .sankaku {
    width: 1.2vw;
    margin-left: 1.5vw;
    display: inline-block;
    line-height: 1;
    vertical-align: middle;
  }
  .ste-box .ste-wrap .ste-link a .view-text {
    font-size: 3.5vw;
    color: #fff;
    display: inline-block;
    line-height: 1;
    vertical-align: middle;
  }
}
.project-box {
  background: url(../img/pro-bg.jpg) repeat center top/950px;
  padding: 60px 0 130px;
}
.project-box .project-wrap {
  max-width: 630px;
  margin-left: auto;
  margin-right: auto;
  background: linear-gradient(to bottom, #fefefe, #ededed);
  border: 10px solid #fff;
  border-radius: 20px;
  padding: 70px 50px 70px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.project-box .project-wrap .pro-01 {
  padding-bottom: 70px;
  margin-bottom: 66px;
  border-bottom: 1px solid #040000;
}
.project-box .project-wrap .project-ttl {
  font-size: 22px;
  font-weight: bold;
  color: #4081b1;
  margin-bottom: 12px;
  text-align: center;
  line-height: 1;
}
.project-box .project-wrap .kage-img {
  width: 210px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
}
.project-box .project-wrap .project-text1 {
  font-size: 16px;
  line-height: 1.9;
  font-weight: bold;
  color: #00a8d0;
  margin-bottom: 35px;
  text-align: center;
}
.project-box .project-wrap .pro-img1 {
  max-width: 190px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;
}
.project-box .project-wrap .pro-img1 img {
  width: 100%;
}
.project-box .project-wrap .project-text2 {
  font-size: 15px;
  line-height: 1.86;
  color: #595757;
}
.project-box .project-wrap .pro-02 {
  padding-bottom: 20px;
  margin-bottom: 16px;
  border-bottom: 1px solid #040000;
}
.project-box .project-wrap .pro-img2 {
  max-width: 160px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
}
.project-box .project-wrap .pro-img2 img {
  width: 100%;
}
.project-box .project-wrap .chara-name1 {
  font-size: 16px;
  color: #4081b1;
  margin-bottom: 10px;
  text-align: center;
  line-height: 1;
  font-weight: 600;
}
.project-box .project-wrap .chara-name2 {
  font-size: 28px;
  color: #4081b1;
  text-align: center;
  line-height: 1;
  font-weight: 600;
}
.project-box .project-wrap .chara-name2 span {
  font-size: 18px;
}
.project-box .project-wrap .pro-03 {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 32px;
  flex-wrap: wrap;
}
.project-box .project-wrap .pro-03 ul {
  flex: 0 0 auto;
  max-width: 100%;
}
.project-box .project-wrap .pro-03 ul li {
  font-size: 15px;
  line-height: 1.8;
}
.project-box .project-wrap .pro-03 ul li span {
  color: #1085b6;
  font-weight: 600;
}

@media (max-width: 900px) {
  .project-box {
    background: url(../img/pro-bg-sp.jpg) repeat center top/100%;
    padding: 17vw 0 17vw;
  }
  .project-box .project-wrap {
    max-width: 90vw;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
    border: 2vw solid #fff;
    border-radius: 5vw;
    padding: 7vw 4vw 7vw;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  }
  .project-box .project-wrap .pro-01 {
    padding-bottom: 8vw;
    margin-bottom: 8vw;
    border-bottom: 1px solid #040000;
  }
  .project-box .project-wrap .project-ttl {
    font-size: 3.1vw;
    font-weight: bold;
    margin-bottom: 1.8vw;
    text-align: center;
    line-height: 1;
  }
  .project-box .project-wrap .kage-img {
    width: 45vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5vw;
  }
  .project-box .project-wrap .kage-img img {
    width: 100%;
  }
  .project-box .project-wrap .project-text1 {
    font-size: 3vw;
    line-height: 1.9;
    font-weight: bold;
    margin-bottom: 5vw;
  }
  .project-box .project-wrap .pro-img1 {
    max-width: 25vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 7vw;
  }
  .project-box .project-wrap .pro-img1 img {
    width: 100%;
  }
  .project-box .project-wrap .project-text2 {
    font-size: 2.8vw;
    line-height: 1.86;
  }
  .project-box .project-wrap .pro-02 {
    padding-bottom: 3vw;
    margin-bottom: 2.6vw;
    border-bottom: 1px solid #040000;
  }
  .project-box .project-wrap .pro-img2 {
    max-width: 21vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5vw;
  }
  .project-box .project-wrap .pro-img2 img {
    width: 100%;
  }
  .project-box .project-wrap .chara-name1 {
    font-size: 3.1vw;
    margin-bottom: 1.8vw;
    text-align: center;
    line-height: 1;
    font-weight: 600;
  }
  .project-box .project-wrap .chara-name2 {
    font-size: 4.5vw;
    text-align: center;
    line-height: 1;
  }
  .project-box .project-wrap .chara-name2 span {
    font-size: 3.2vw;
  }
  .project-box .project-wrap .pro-03 {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 5vw;
    flex-wrap: wrap;
  }
  .project-box .project-wrap .pro-03 ul {
    flex: 0 0 auto;
    max-width: 100%;
  }
  .project-box .project-wrap .pro-03 ul li {
    font-size: 2.3vw;
    line-height: 1.8;
  }
  .project-box .project-wrap .pro-03 ul li span {
    font-weight: 600;
  }
}
/*# sourceMappingURL=style.css.map */