@charset "UTF-8";
:root {
  /* spacing
  ===================================================== */
  --g-spacing-xs: .8rem;
  --g-spacing-s: 1.2rem;
  --g-spacing-m: 2.4rem;
  --g-spacing-l: 4.8rem;
  --g-spacing-xl: 7.2rem;
  --g-spacing-2xl: 9.6rem;
  --g-spacing-3xl: 12rem;
  --g-spacing-4xl: 16rem;
  --g-var-vw: 1512;
  /* コンテンツ幅
  ===================================================== */
  --g-var-vh: 790;
  --g-var-vw-min: 768;
  --g-var-vw-max: 1920;
  --g-var-vw-min-unit: 768px;
  --g-var-vw-max-unit: 1920px;
  /* line-height
  ===================================================== */
  --t-lineheight-xs: 1;
  --t-lineheight-s: 1.25;
  --t-lineheight-m: 1.5;
  --t-lineheight-l: 1.75;
  --t-lineheight-xl: 2;
  /* color
  ===================================================== */
  --c-text2: #fff;
  --c-text1: #333333;
  --c-textsub: #666666;
  --c-footer: #D0C8C0;
  /* font-family
  ===================================================== */
  --g-font-family-jp:"font-jp" , "zen-old-mincho", sans-serif;
  --g-font-family-en: "font-en" , "goudy-old-style", serif;
  /* font-family
  ===================================================== */
  --g-font-size-xs: clamp(1.2rem, 1 / var(--g-var-vw)* 100* 12vw, 1.2rem);
  --g-font-size-s: clamp(1.4rem, 1 / var(--g-var-vw)* 100* 16vw, 1.6rem);
  --g-font-size-m: clamp(1.6rem, 1 / var(--g-var-vw)* 100* 24vw, 2.4rem);
  --g-font-size-l: clamp(2.4rem, 1 / var(--g-var-vw)* 100* 32vw, 3.2rem);
  --g-font-size-xl: clamp(3.2rem, 1 / var(--g-var-vw)* 100* 48vw, 4.8rem);
  /* グリッド
  ===================================================== */
  --g-var-grid-col-pc: 12;
  --g-var-grid-col-tb: 8;
  --g-var-grid-col-sp: 4;
  --g-var-grid-col-gap-pc: 2.4rem;
  --g-var-grid-col-gap-sp: 1.2rem;
  --g-var-grid-row-gap-pc: 2.4rem;
  --g-var-grid-row-gap-sp: 1.2rem;
  /* ラディウス
  ===================================================== */
  --g-radius: 999px;
  /* header, footerの高さ
  ===================================================== */
  --g-menu-height: clamp(72px, calc(100vw / var(--g-var-grid-col-pc)* 0.75), 112px);
  --g-nav-height: clamp(60px, calc(100vw / var(--g-var-grid-col-pc)* 0.75), 80px);
  /* 変数
  ===================================================== */
  --gx: 8px;
  --gy: 8px;
}

/* common
===================================================== */
html,
body {
  font-size: 62.5%;
  height: 100%;
  overscroll-behavior-y: auto;
  width: 100%;
  line-height: 1;
  scroll-behavior: smooth;
  color: var(--c-text1);
}

.no-scroll {
  overflow: hidden;
}

.wrapper {
  width: 100%;
}

* {
  box-sizing: border-box;
}

*:focus {
  outline: none;
}

a {
  text-decoration: none;
  color: var(--c-text1);
}
a[href=""] {
  pointer-events: none;
}

a:hover {
  opacity: 0.7;
  transition: opacity 0.3s ease-in-out; /* 0.3秒で滑らかに変化 */
}

img,
video {
  width: 100%;
  display: block;
}

@media (min-width: 1025px) {
  .pcNone {
    display: none !important;
  }
}
@media (max-width: 1024px) {
  .spNone {
    display: none !important;
  }
}
@media (max-width: 1024px) {
  .fade-in {
    transform: translateY(20px);
    opacity: 0;
  }
}

/* ------------------------
header
------------------------ */
.home-header {
  position: fixed;
  left: var(--g-var-grid-col-gap-sp);
  top: var(--g-font-size-m);
  z-index: 5;
}
.home-header__body {
  width: 5rem;
}

/* ------------------------
hero
------------------------ */
.home-hero {
  width: 100%;
  height: 100lvh;
  position: relative;
  margin-bottom: var(--g-spacing-4xl);
}
@media (max-width: 1024px) {
  .home-hero {
    height: 100%;
    margin-bottom: var(--g-spacing-2xl);
  }
}
.home-hero__body {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
}
@media (max-width: 1024px) {
  .home-hero__body {
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
    padding: 0 var(--g-var-grid-col-gap-sp);
  }
}
.home-hero__imgpc {
  grid-column: 1/span 6;
  background-image: url(../images/hero-pc.jpg);
  background-position: center; /* 背景画像を中央揃え */
  background-repeat: no-repeat; /* 繰り返しを無効化 */
  background-size: cover; /* 要素全体をカバー */
  height: 100lvh;
  width: 100%;
}
.home-hero__items {
  grid-column: 7/span 6;
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
}
@media (max-width: 1024px) {
  .home-hero__items {
    grid-column: 1/span 6;
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
  }
}
.home-hero__title {
  grid-column: 2/span 4;
  align-self: center;
}
@media (max-width: 1024px) {
  .home-hero__title {
    margin: var(--g-spacing-m) 0;
    grid-column: 2/span 5;
    width: 27rem;
  }
}
@media (max-width: 1024px) {
  .home-hero__imgsp {
    grid-column: 1/span 6;
    margin-left: calc(-1 * var(--g-var-grid-col-gap-sp));
    margin-right: calc(-1 * var(--g-var-grid-col-gap-sp));
    margin-bottom: var(--g-spacing-xl);
  }
}
.home-hero__lead {
  grid-column: 1/span 6;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
  font-family: var(--g-font-family-jp);
  color: var(--c-text1);
  align-self: center;
}
@media (max-width: 1024px) {
  .home-hero__lead {
    grid-column: 1/span 6;
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
  }
}
.home-hero__lead h2 {
  grid-column: 2/span 4;
  font-size: var(--g-font-size-l);
  line-height: var(--t-lineheight-s);
}
@media (max-width: 1024px) {
  .home-hero__lead h2 {
    grid-column: 1/span 5;
    line-height: var(--t-lineheight-s);
  }
}
.home-hero__lead span {
  grid-column: 1/span 4;
  width: 100%;
  height: 0.4rem;
  border: 0.1rem var(--c-text1) solid;
  margin: calc(var(--gy) * 2) 0;
}
@media (max-width: 1024px) {
  .home-hero__lead span {
    grid-column: 1/span 5;
    margin: var(--g-var-grid-col-gap-sp) 0 var(--g-var-grid-col-gap-pc) 0;
    margin-left: calc(-1 * var(--g-var-grid-col-gap-sp));
  }
}
.home-hero__lead p {
  grid-column: 2/span 4;
  font-size: 1.6rem;
  line-height: var(--t-lineheight-l);
}
@media (max-width: 1024px) {
  .home-hero__lead p {
    grid-column: 1/span 6;
  }
}
.home-hero__scroll {
  position: absolute;
  display: flex;
  gap: 1rem;
  right: 8.3333333333%;
  bottom: var(--gy);
  font-size: var(--g-font-size-s);
  font-family: var(--g-font-family-en);
}
@media (max-width: 1024px) {
  .home-hero__scroll {
    top: calc(100lvh - var(--g-spacing-m));
    left: 50%;
    transform: translateX(-50%);
    right: initial; /* デフォルト値に戻す */
    bottom: initial;
  }
}

/* ------------------------
category
------------------------ */
.sec-cate {
  width: 100%;
  height: 100%;
  position: relative;
  margin-bottom: var(--g-spacing-4xl);
}
@media (max-width: 1024px) {
  .sec-cate {
    margin-bottom: var(--g-spacing-3xl);
  }
}
.sec-cate__inner {
  padding: 0 var(--g-var-grid-col-gap-pc);
}
@media (max-width: 1024px) {
  .sec-cate__inner {
    padding: 0;
  }
}
.sec-cate__body {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
  border: 0.1rem var(--c-text1) solid;
  padding: var(--g-spacing-l) 0;
}
@media (max-width: 1024px) {
  .sec-cate__body {
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
    border-left: none;
    border-right: none;
    padding: var(--g-spacing-l) 0 calc(var(--gy) * 9) 0;
  }
}
.sec-cate__title {
  grid-column: 5/span 4;
  text-align: center;
  border: 0.1rem var(--c-text1) solid;
  height: calc(var(--gy) * 4);
  font-family: var(--g-font-family-en);
  font-size: var(--g-font-size-l);
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-color: var(--c-text2);
  margin-top: calc(-1 * var(--g-spacing-l) - var(--g-spacing-m));
}
@media (max-width: 1024px) {
  .sec-cate__title {
    grid-column: 2/span 4;
  }
}
.sec-cate__itemsbody {
  grid-column: 1/span 12;
}
@media (max-width: 1024px) {
  .sec-cate__itemsbody {
    width: 100%;
    grid-column: 1/span 6;
  }
}
.sec-cate__items {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
}
@media (max-width: 1024px) {
  .sec-cate__items {
    display: flex;
    column-gap: 0;
  }
}
.sec-cate__item {
  position: relative;
  height: 100%;
  width: 100%; /* 各アイテムを親幅に合わせる */
  flex-shrink: unset; /* Swiperの設定を無効化 */
}
.sec-cate__item:nth-child(1) {
  grid-column: 2/span 2;
}
.sec-cate__item:nth-child(2) {
  grid-column: 4/span 2;
}
.sec-cate__item:nth-child(3) {
  grid-column: 6/span 2;
}
.sec-cate__item:nth-child(4) {
  grid-column: 8/span 2;
}
.sec-cate__item:nth-child(5) {
  grid-column: 10/span 2;
}
@media (max-width: 1024px) {
  .sec-cate__item {
    flex-shrink: 0; /* スライド幅を固定 */
  }
}
.sec-cate__text {
  font-family: var(--g-font-family-jp);
  font-size: var(--g-font-size-s);
  color: var(--c-text1);
  padding: var(--g-font-size-xs) 0 var(--g-font-size-xs) var(--g-spacing-xs);
  border: var(--c-text1) 0.1rem solid;
}
.sec-cate__tap {
  position: absolute;
  right: 0;
  bottom: var(--gy);
  width: 6rem;
}

.swiper-pagination {
  position: absolute;
  bottom: 5.2rem !important;
  left: 1.2rem;
  text-align: left;
  z-index: 10;
}

.swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  border: var(--c-textsub) 0.1rem solid;
  background-color: transparent;
  border-radius: 50%;
  opacity: 0.7;
  transition: opacity 0.3s, transform 0.3s;
}

.swiper-pagination-bullet-active {
  background-color: var(--c-textsub);
  opacity: 1;
  transform: scale(1.2);
}

/* ------------------------
sec-intro
------------------------ */
@media (max-width: 1024px) {
  .sec-intro {
    margin-bottom: var(--g-spacing-xl);
  }
}
.sec-intro__inner {
  padding: 0 var(--g-var-grid-col-gap-pc);
}
@media (max-width: 1024px) {
  .sec-intro__inner {
    padding: 0 var(--g-var-grid-col-gap-sp);
    margin-bottom: var(--g-spacing-xl);
  }
}
.sec-intro__body {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
}
@media (max-width: 1024px) {
  .sec-intro__body {
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
  }
}
.sec-intro__title {
  grid-column: 1/span 5;
  font-family: var(--g-font-family-jp);
  font-size: var(--g-font-size-l);
  text-align: center;
  border: var(--c-text1) 0.1rem solid;
  height: calc(var(--gy) * 5);
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-bottom: none;
}
@media (max-width: 1024px) {
  .sec-intro__title {
    grid-column: 1/span 5;
  }
}
@media (max-width: 1024px) {
  .sec-intro__title.title-left {
    grid-column: 1/span 5;
    margin-left: calc(-1 * var(--g-var-grid-col-gap-sp));
    border-left: none;
  }
}
@media (max-width: 1024px) {
  .sec-intro__title.title-right {
    grid-column: 2/span 5;
    margin-right: calc(-1 * var(--g-var-grid-col-gap-sp));
    border-right: none;
  }
}
.sec-intro__items {
  grid-column: 1/span 12;
  padding: var(--g-spacing-xl) var(--g-var-grid-col-gap-pc) calc(var(--g-spacing-xl) + var(--g-spacing-l)) var(--g-var-grid-col-gap-pc);
  border-top: var(--c-text1) 0.1rem solid;
  border-bottom: var(--c-text1) 0.1rem solid;
  margin: 0 calc(-1 * var(--g-var-grid-col-gap-pc));
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
  align-items: center;
}
@media (max-width: 1024px) {
  .sec-intro__items {
    margin: 0 calc(-1 * var(--g-var-grid-col-gap-sp));
    border: none;
    padding: 0 var(--g-var-grid-col-gap-sp);
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
    grid-column: 1/span 6;
  }
}
.sec-intro__img {
  grid-column: 1/span 5;
}
@media (max-width: 1024px) {
  .sec-intro__img {
    margin: 0 calc(-1 * var(--g-var-grid-col-gap-sp));
    grid-column: 1/span 6;
    margin-bottom: var(--g-var-grid-row-gap-sp);
  }
}
.sec-intro__text {
  display: grid;
  height: 100%;
  grid-column: 6/span 3;
  line-height: var(--t-lineheight-m);
  font-family: var(--g-font-family-jp);
  font-size: var(--g-font-size-s);
}
@media (max-width: 1024px) {
  .sec-intro__text.text-left {
    grid-column: 1/span 5;
    padding-left: var(--g-var-grid-col-gap-sp);
  }
}
@media (max-width: 1024px) {
  .sec-intro__text.text-right {
    grid-column: 2/span 5;
    padding-right: var(--g-var-grid-col-gap-sp);
  }
}
.sec-intro__text p {
  align-self: end;
  margin-bottom: var(--g-spacing-m);
}
@media (max-width: 1024px) {
  .sec-intro__text p {
    margin-bottom: var(--g-spacing-l);
  }
}
.sec-intro__item {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
  grid-column: 9/span 4;
  align-self: center;
}
@media (max-width: 1024px) {
  .sec-intro__item {
    grid-column: 1/span 6;
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
    padding: 0 var(--g-var-grid-col-gap-sp);
  }
}
.sec-intro__itemtitle {
  font-family: var(--g-font-family-jp);
  display: grid;
  grid-column: 1/span 3;
  font-size: var(--g-font-size-m);
  border: var(--c-text1) 0.1rem solid;
  height: calc(var(--gy) * 6);
  text-align: center;
  align-items: center;
  margin-right: calc(-1 * var(--gx));
  border-bottom: none;
}
@media (max-width: 1024px) {
  .sec-intro__itemtitle {
    grid-column: 1/span 3;
    height: calc(var(--gy) * 5);
  }
}
.sec-intro__itembox {
  grid-column: 1/span 4;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
  border: var(--c-text1) 0.1rem solid;
  padding: var(--g-spacing-3xl) 0;
}
@media (max-width: 1024px) {
  .sec-intro__itembox {
    grid-column: 1/span 6;
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
    padding: var(--g-spacing-m) 0;
  }
}
.sec-intro__itembox a {
  grid-column: 2/span 2;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: var(--g-spacing-xs);
  text-align: center;
  color: var(--c-text1);
}
@media (max-width: 1024px) {
  .sec-intro__itembox a {
    grid-column: 2/span 4;
  }
}
.sec-intro__itemname {
  font-family: var(--g-font-family-jp);
  font-size: var(--g-font-size-s);
  line-height: var(--t-lineheight-s);
}
.sec-intro__itembtn {
  display: grid;
  font-family: var(--g-font-family-jp);
  font-size: var(--g-font-size-s);
  width: calc(var(--gx) * 10);
  height: calc(var(--gx) * 3);
  background-color: var(--c-textsub);
  color: var(--c-text2);
  align-items: center;
}

/* ------------------------
sec-style
------------------------ */
.sec-style {
  margin-bottom: var(--g-spacing-4xl);
}
.sec-style__inner {
  padding: 0 var(--g-var-grid-col-gap-pc);
}
@media (max-width: 1024px) {
  .sec-style__inner {
    padding: 0;
  }
}
.sec-style__body {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
}
@media (max-width: 1024px) {
  .sec-style__body {
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
  }
}
.sec-style__title {
  display: grid;
  font-family: var(--g-font-family-jp);
  font-size: var(--g-font-size-l);
  line-height: var(--t-lineheight-m);
  text-align: center;
  grid-column: 4/span 6;
  border: var(--c-text1) 0.1rem solid;
  height: calc(var(--gx) * 14);
  align-items: center;
  margin-top: calc(-1 * var(--g-spacing-l));
  background-color: var(--c-text2);
  margin-bottom: var(--g-spacing-3xl);
  z-index: 1;
}
@media (max-width: 1024px) {
  .sec-style__title {
    grid-column: 1/span 6;
    margin-top: 0;
    margin-bottom: var(--g-spacing-l);
    padding-left: var(--g-var-grid-col-gap-sp);
    padding-right: var(--g-var-grid-col-gap-sp);
    font-size: 2rem;
    height: calc(var(--gx) * 10);
  }
}
@media (max-width: 1024px) {
  .sec-style__title.m-right {
    margin-right: var(--g-spacing-s);
    border-left: none;
  }
}
@media (max-width: 1024px) {
  .sec-style__title.m-left {
    margin-left: var(--g-spacing-s);
    border-right: none;
  }
}
.sec-style__imgs {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
  grid-column: 1/span 12;
  margin-bottom: var(--g-spacing-3xl);
}
@media (max-width: 1024px) {
  .sec-style__imgs {
    grid-column: 1/span 6;
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
    margin-bottom: var(--g-spacing-2xl);
  }
}
.sec-style__img1-1 {
  grid-column: 5/span 4;
  margin-bottom: var(--g-spacing-3xl);
}
@media (max-width: 1024px) {
  .sec-style__img1-1 {
    grid-column: 1/span 5;
    margin-bottom: var(--g-spacing-2xl);
  }
}
.sec-style__img1-2 {
  grid-column: 3/span 3;
  align-self: center;
  margin-bottom: var(--g-spacing-3xl);
}
@media (max-width: 1024px) {
  .sec-style__img1-2 {
    grid-column: 3/span 4;
    margin-bottom: var(--g-spacing-2xl);
  }
}
.sec-style__img1-3 {
  grid-column: 7/span 5;
  margin-bottom: var(--g-spacing-3xl);
}
@media (max-width: 1024px) {
  .sec-style__img1-3 {
    grid-column: 1/span 5;
    margin-bottom: var(--g-spacing-2xl);
  }
}
.sec-style__img1-4 {
  grid-column: 5/span 3;
}
@media (max-width: 1024px) {
  .sec-style__img1-4 {
    grid-column: 2/span 4;
  }
}
.sec-style .imgs2 {
  grid-template-rows: 1fr;
}
.sec-style__img2-1 {
  grid-column: 3/span 4;
  grid-row: 1/span 1;
}
@media (max-width: 1024px) {
  .sec-style__img2-1 {
    grid-column: 2/span 5;
    margin-bottom: var(--g-spacing-2xl);
  }
}
.sec-style__img2-2 {
  grid-column: 8/span 3;
  grid-row: 2/span 1;
  margin-top: calc(-1 * var(--g-spacing-3xl));
}
@media (max-width: 1024px) {
  .sec-style__img2-2 {
    grid-column: 1/span 4;
    margin-bottom: var(--g-spacing-2xl);
    margin-top: 0;
  }
}
.sec-style__img2-3 {
  grid-column: 2/span 4;
  margin-top: calc(-1 * var(--g-spacing-3xl));
  grid-row: 3/span 1;
}
@media (max-width: 1024px) {
  .sec-style__img2-3 {
    grid-column: 2/span 5;
    margin-bottom: var(--g-spacing-2xl);
    margin-top: 0;
  }
}
.sec-style__img2-4 {
  grid-column: 7/span 4;
  margin-top: calc(-1 * var(--g-spacing-3xl));
  grid-row: 4/span 1;
}
@media (max-width: 1024px) {
  .sec-style__img2-4 {
    grid-column: 1/span 4;
    margin-top: 0;
  }
}
.sec-style__img3-1 {
  grid-column: 5/span 4;
  margin-bottom: var(--g-spacing-3xl);
}
@media (max-width: 1024px) {
  .sec-style__img3-1 {
    grid-column: 1/span 5;
    margin-bottom: var(--g-spacing-2xl);
  }
}
.sec-style__img3-2 {
  grid-column: 3/span 3;
  align-self: center;
}
@media (max-width: 1024px) {
  .sec-style__img3-2 {
    grid-column: 2/span 4;
    margin-bottom: var(--g-spacing-2xl);
  }
}
.sec-style__img3-3 {
  grid-column: 7/span 4;
  align-self: center;
}
@media (max-width: 1024px) {
  .sec-style__img3-3 {
    grid-column: 2/span 5;
  }
}
.sec-style .imgs4 {
  grid-template-rows: 1fr;
}
.sec-style__img4-1 {
  grid-column: 3/span 4;
  grid-row: 1/span 1;
}
@media (max-width: 1024px) {
  .sec-style__img4-1 {
    grid-column: 1/span 5;
    margin-bottom: var(--g-spacing-2xl);
  }
}
.sec-style__img4-2 {
  grid-column: 8/span 3;
  margin-top: calc(-1 * var(--g-spacing-3xl));
  grid-row: 2/span 1;
}
@media (max-width: 1024px) {
  .sec-style__img4-2 {
    grid-column: 3/span 4;
    margin-bottom: var(--g-spacing-2xl);
    margin-top: 0;
  }
}
.sec-style__img4-3 {
  grid-column: 2/span 3;
  margin-top: calc(-1 * var(--g-spacing-3xl));
  grid-row: 3/span 1;
}
@media (max-width: 1024px) {
  .sec-style__img4-3 {
    grid-column: 1/span 4;
    margin-bottom: var(--g-spacing-2xl);
    margin-top: 0;
  }
}
.sec-style__img4-4 {
  grid-column: 6/span 4;
  margin-top: calc(-1 * var(--g-spacing-3xl));
  grid-row: 4/span 1;
}
@media (max-width: 1024px) {
  .sec-style__img4-4 {
    grid-column: 2/span 5;
    margin-top: 0;
  }
}
.sec-style .imgs5 {
  grid-template-rows: 1fr;
}
.sec-style__img5-1 {
  grid-column: 7/span 4;
  grid-row: 1/span 1;
}
@media (max-width: 1024px) {
  .sec-style__img5-1 {
    grid-column: 2/span 5;
    margin-bottom: var(--g-spacing-2xl);
  }
}
.sec-style__img5-2 {
  grid-column: 3/span 3;
  grid-row: 2/span 1;
  margin-top: calc(-1 * var(--g-spacing-3xl));
}
@media (max-width: 1024px) {
  .sec-style__img5-2 {
    grid-column: 2/span 4;
    margin-bottom: var(--g-spacing-2xl);
  }
}
.sec-style__img5-2 {
  grid-column: 3/span 3;
  grid-row: 2/span 1;
  margin-top: calc(-1 * var(--g-spacing-3xl));
  margin-bottom: var(--g-spacing-3xl);
}
@media (max-width: 1024px) {
  .sec-style__img5-2 {
    grid-column: 2/span 4;
    margin-bottom: var(--g-spacing-2xl);
    margin-top: 0;
  }
}
.sec-style__img5-3 {
  grid-column: 5/span 4;
  grid-row: 3/span 1;
}
@media (max-width: 1024px) {
  .sec-style__img5-3 {
    grid-column: 1/span 5;
  }
}
.sec-style__credits {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
  grid-column: 1/span 12;
}
@media (max-width: 1024px) {
  .sec-style__credits {
    grid-column: 1/span 6;
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
    padding: 0 var(--g-var-grid-col-gap-sp);
  }
}
.sec-style__credit {
  padding-top: var(--g-spacing-s);
  border-bottom: var(--c-text1) 0.1rem solid;
  padding-bottom: var(--g-spacing-s);
}
.sec-style__credit:nth-child(1) {
  grid-column: 2/span 4;
  border-top: var(--c-text1) 0.1rem solid;
}
.sec-style__credit:nth-child(2) {
  grid-column: 8/span 4;
  border-top: var(--c-text1) 0.1rem solid;
}
@media (max-width: 1024px) {
  .sec-style__credit:nth-child(2) {
    border-top: none;
  }
}
.sec-style__credit:nth-child(n) {
  grid-column: 2/span 4;
}
.sec-style__credit:nth-child(2n) {
  grid-column: 8/span 4;
}
@media (max-width: 1024px) {
  .sec-style__credit {
    grid-column: 1/span 6 !important;
  }
}
.sec-style__credit a {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
  grid-column: 1/span 4;
  align-items: center;
}
@media (max-width: 1024px) {
  .sec-style__credit a {
    grid-column: 1/span 6;
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
  }
}
.sec-style__credit img {
  grid-column: 1/span 1;
}
@media (max-width: 1024px) {
  .sec-style__credit img {
    grid-column: 1/span 2;
  }
}
.sec-style__creditname {
  display: flex;
  flex-direction: column;
  gap: var(--gy);
  grid-column: 2/span 2;
  font-family: var(--g-font-family-jp);
  font-size: var(--g-font-size-xs);
}
@media (max-width: 1024px) {
  .sec-style__creditname {
    grid-column: 3/span 2;
  }
}
.sec-style__btn {
  display: grid;
  grid-column: 4/span 1;
  font-size: var(--g-font-size-xs);
  font-family: var(--g-font-family-en);
  height: calc(var(--gy) * 3.5);
  background-color: var(--c-textsub);
  color: var(--c-text2);
  text-align: center;
  align-items: center;
}
@media (max-width: 1024px) {
  .sec-style__btn {
    grid-column: 5/span 2;
  }
}

/* ------------------------
Other-Items
------------------------ */
.sec-other {
  margin-bottom: var(--g-spacing-4xl);
}
.sec-other__inner {
  padding: 0 var(--g-var-grid-col-gap-pc);
  border-top: var(--c-text1) 0.1rem solid;
}
@media (max-width: 1024px) {
  .sec-other__inner {
    padding: 0 var(--g-var-grid-col-gap-sp);
  }
}
.sec-other__body {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
}
@media (max-width: 1024px) {
  .sec-other__body {
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
  }
}
.sec-other__title {
  display: grid;
  font-family: var(--g-font-family-en);
  font-size: var(--g-font-size-l);
  grid-column: 5/span 4;
  text-align: center;
  border: var(--c-text1) 0.1rem solid;
  height: calc(var(--gy) * 7);
  align-items: center;
  margin-top: calc(-1 * var(--g-spacing-m));
  background-color: var(--c-text2);
  margin-bottom: var(--g-spacing-l);
}
@media (max-width: 1024px) {
  .sec-other__title {
    grid-column: 2/span 4;
  }
}
.sec-other__items {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
  row-gap: var(--g-var-grid-row-gap-pc);
  grid-column: 1/span 12;
}
@media (max-width: 1024px) {
  .sec-other__items {
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
    grid-column: 1/span 6;
  }
}
.sec-other__item a {
  display: flex;
  flex-direction: column;
  gap: var(--gy);
  font-family: var(--g-font-family-jp);
  font-size: 1.2rem;
}
.sec-other__item:nth-child(1) {
  grid-column: 3/span 2;
}
@media (max-width: 1024px) {
  .sec-other__item:nth-child(1) {
    grid-column: 1/span 3;
  }
}
.sec-other__item:nth-child(2) {
  grid-column: 5/span 2;
}
@media (max-width: 1024px) {
  .sec-other__item:nth-child(2) {
    grid-column: 4/span 3;
  }
}
.sec-other__item:nth-child(3) {
  grid-column: 7/span 2;
}
@media (max-width: 1024px) {
  .sec-other__item:nth-child(3) {
    grid-column: 1/span 3;
  }
}
.sec-other__item:nth-child(4) {
  grid-column: 9/span 2;
}
@media (max-width: 1024px) {
  .sec-other__item:nth-child(4) {
    grid-column: 4/span 3;
  }
}
.sec-other__item:nth-child(5) {
  grid-column: 3/span 2;
}
@media (max-width: 1024px) {
  .sec-other__item:nth-child(5) {
    grid-column: 1/span 3;
  }
}
.sec-other__item:nth-child(6) {
  grid-column: 5/span 2;
}
@media (max-width: 1024px) {
  .sec-other__item:nth-child(6) {
    grid-column: 4/span 3;
  }
}
.sec-other__item:nth-child(7) {
  grid-column: 7/span 2;
}
@media (max-width: 1024px) {
  .sec-other__item:nth-child(7) {
    grid-column: 1/span 3;
  }
}
.sec-other__item:nth-child(8) {
  grid-column: 9/span 2;
}
@media (max-width: 1024px) {
  .sec-other__item:nth-child(8) {
    grid-column: 4/span 3;
  }
}

/* ------------------------
footer
------------------------ */
.sec-footer {
  position: relative;
  width: 100%;
  height: 100lvh;
}
.sec-footer__inner {
  background-color: var(--c-footer);
  padding: var(--g-var-grid-col-gap-pc);
}
@media (max-width: 1024px) {
  .sec-footer__inner {
    padding: var(--g-var-grid-col-gap-sp);
  }
}
.sec-footer__body {
  display: grid;
  height: 100lvh;
  width: 100%;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: repeat(3, 1fr);
  column-gap: var(--g-var-grid-col-gap-pc);
  row-gap: var(--g-var-grid-row-gap-pc);
}
@media (max-width: 1024px) {
  .sec-footer__body {
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: repeat(4, 1fr);
    column-gap: var(--g-var-grid-col-gap-sp);
    row-gap: var(--g-var-grid-row-gap-sp);
  }
}
.sec-footer__box1 {
  display: grid;
  align-self: center;
  grid-column: 1/span 12;
  grid-row: 1/span 1;
}
@media (max-width: 1024px) {
  .sec-footer__box1 {
    grid-column: 1/span 6;
    grid-row: 1/span 1;
  }
}
.sec-footer__box2 {
  background-image: url(../images/footer-1.jpg);
  background-position: center; /* 背景画像を中央に配置 */
  background-size: cover; /* 背景画像が要素全体にフィットするように調整 */
  background-repeat: no-repeat; /* 背景画像の繰り返しを防止 */
  grid-column: 2/span 5;
  grid-row: 2/span 1;
}
@media (max-width: 1024px) {
  .sec-footer__box2 {
    grid-column: 1/span 6;
    grid-row: 2/span 1;
  }
}
.sec-footer__box3 {
  grid-column: 7/span 5;
  grid-row: 2/span 1;
  display: grid;
  align-self: center;
}
@media (max-width: 1024px) {
  .sec-footer__box3 {
    grid-column: 1/span 6;
    grid-row: 3/span 1;
  }
}
.sec-footer__box4 {
  position: relative;
  width: 100%;
  height: 100%;
  display: grid;
  align-self: center;
  grid-column: 1/span 12;
  grid-row: 3/span 1;
}
@media (max-width: 1024px) {
  .sec-footer__box4 {
    grid-column: 1/span 6;
    grid-row: 4/span 1;
  }
}
.sec-footer__credit {
  display: grid;
  font-family: var(--g-font-family-en);
  font-size: var(--g-font-size-s);
  line-height: var(--t-lineheight-xl);
  text-align: center;
  align-items: center;
}
.sec-footer__box2 a {
  display: flex;
  height: 100%;
  flex-direction: column;
  gap: var(--g-spacing-xs);
  align-items: center;
  justify-content: center;
  color: var(--c-text2);
  font-family: var(--g-font-family-en);
  font-size: var(--g-font-size-m);
  line-height: var(--t-lineheight-m);
  text-align: center;
}
.sec-footer__text2 {
  display: flex;
  gap: var(--g-var-grid-col-gap-sp);
}
.sec-footer__text2 img {
  width: 2.4rem;
}
.sec-footer__back {
  display: grid;
  align-self: center;
  font-family: var(--g-font-family-jp);
  font-size: 1.2rem;
  background-color: rgba(255, 255, 255, 0.5); /* 50% 不透明度 */
  height: calc(var(--gy) * 8);
  border-radius: 9999px;
}
.sec-footer__back a {
  display: flex;
  gap: var(--g-var-grid-col-gap-sp);
  justify-content: center;
  align-items: center;
}
.sec-footer__back img {
  width: 1.4rem;
}
.sec-footer__icon {
  display: flex;
  gap: var(--g-spacing-xl);
  align-items: center;
  justify-content: center;
}
@media (max-width: 1024px) {
  .sec-footer__icon {
    flex-direction: column;
    gap: 2.4rem;
  }
}
.sec-footer__in {
  width: 3.2rem;
}
.sec-footer__logo {
  width: 8rem;
}
.sec-footer__copy {
  position: absolute;
  font-family: var(--g-font-family-en);
  font-size: 1.2rem;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  white-space: nowrap; /* 改行を防ぐ */
}

.creditAjax_price__sale {
  display: none;
}

.creditAjax_price__off {
  display: none;
}/*# sourceMappingURL=style.css.map */