/* ===============================================### 
可変設定
###=============================================== */
.lp_container {
  /*デザインの値*/
  --pc-width: 1400;/*PCデザイン幅*/
  --sp-width: 750;/*SPデザイン幅*/
  --pc-artboard-width: 750;/*SP共通デザイン幅*/
  --sp-artboard-width: 750;/*PC共通デザイン幅*/
  /*可変率の計算式*/
  --formula: calc(var(--variable) * var(--ratio));/*SP,PC共通箇所の可変割合の計算式*/
  --formula_pc: calc(var(--variable) * 1);/*PCデザインの可変割合の計算式*/
}

/* PC画面幅 1400px以上 固定 */
@media (min-width: 1401px) {
  .lp_container {
  --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width)); /* PCとSPのデザイン幅の比 */
  --variable: 1px; /* 固定値（可変しない） */
  }
}

/* PC画面幅 768～1400px 可変 */
@media (min-width: 768px) and (max-width: 1400px) {
  .lp_container {
  --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width)); /* PCとSPのデザイン幅の比 */
  --variable: calc(100vw / var(--pc-width)); /* 画面幅に基づく可変値 */
  }
}

/* SP画面幅 767px以下 可変 */
@media (max-width: 767px) {
  .lp_container {
  --ratio: 1; /* 比率は1（変わらない） */
  --variable: calc(100vw / var(--sp-width)); /* 画面幅に基づく可変値 */
  }
}



/* ===============================================### 
初期設定
###=============================================== */
#Wrap {
  max-width: 100%;
}

.categorylist--bottom {
  margin-top: 0;
}

.noe260406{
  --font-ja: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  --font-en: "adobe-garamond-pro", serif;
  font-style: normal;
  --fw-thin: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semi-bold: 600;
  --fw-bold: 700;
  --color-black: #000000;
  --color-white: #FFFFFF;
  color: #000000;
  /* background-color: var(--color-black);
  transition: background-color 0.5s ease-in-out; */
  /* transition: background-color 0.5s ease-in-out; */
  overflow: clip;
  position: relative;
}

.noe260406 img,
.noe260406 svg{
  width: 100%;
  height: auto;
}

/* ===========### PC版用設定 ###=========== */
@media screen and (min-width: 768px) {
  .noe260406 .image-bg{
    background-color: #fff;
  }

  .noe260406 .image-bg a:hover{
    opacity: 0.7;
  }

  .noe260406 .pc-visible{
    display: block;
  }

  .noe260406 .sp-visible{
    display: none;
  }
}

@media screen and (min-width: 768px) and (max-width: 1399px) {
  #Wrap {
    padding-top: 0;
  }
}


/* ===========### SP版用設定 ###=========== */
@media screen and (max-width: 767px) {
  .noe260406{
    overflow: clip;
  }

  .noe260406 .pc-visible{
    display: none;
  }

  .noe260406 .sp-visible{
    display: block;
  }
}



/* ===============================================### 
アニメーション設定
###=============================================== */
/************** fade **************/
.noe260406 .js-fade-in{
  opacity: 0;
  transition: opacity 2.5s ease, transform 2.5s ease;
}

.noe260406 .js-fade-in.show{
  opacity: 1;
}


/* ===============================================### 
コンテンツ共通設定
###=============================================== */
.noe260406 .content .content-inner{
  width: calc(750 * var(--formula));
  margin-inline: auto;
}

.noe260406 .grid-wrap{
  display: grid;
}

.noe260406 .flex-wrap{
  display: flex;
}

/************** text **************/
.noe260406 .credit{
  font-family: var(--font-en);
  font-size: calc(20 * var(--formula));
  font-weight: var(--fw-regular);
  line-height: 1.2;
  font-feature-settings: "palt";
  letter-spacing: 0;
  white-space: nowrap;
}

.noe260406 .credit a{
  display: inline-block;
  text-decoration: underline;
  text-decoration-skip-ink: none;
  text-decoration-thickness: 1px;
}

/* .noe260406 .credit a:not(:nth-of-type(1)){
  margin-left: calc(-5 * var(--formula));
} */

/* .noe260406 .credit a.link-disable{
  margin: 0;
} */

.noe260406 .credit a.link-disable:hover{
  opacity: 1;
}

/* ===========### responsive ###=========== */
/************** layout **************/
/*** PC ***/
@media screen and (min-width: 768px) {
  .noe260406 .main-wrap.grid-wrap {
    position: relative;
    display: grid;
    grid-template-columns: 1fr calc(750 * var(--formula)) 1fr;
  }

  .noe260406 .left-area {
    position: sticky;
    grid-column: 1;
    top: 0;
    height: 100vh;
    display: grid;
    place-content: center;
  }

  .noe260406 .center-area {
    position: relative;
    grid-column: 2;
  }

  .noe260406 .right-area {
    position: sticky;
    grid-column: 3;
    top: 0;
    height: 100vh;
    display: grid;
    place-content: center;
  }

  .noe260406 .fixed_link {
    position: relative;
    left: calc(-15 * var(--formula));
    font-family: var(--font-en);
    font-size: calc(25 * var(--formula_pc));
    font-weight: var(--fw-regular);
    letter-spacing: 0;
  }

  .noe260406 .fixed_link a{
    text-decoration: underline;
    text-decoration-skip-ink: none;
  }

  .noe260406 .fixed_title {
    position: relative;
    left: calc(14 * var(--formula));
    width: calc(103 * var(--formula_pc));
  }

  /************** background **************/
  /* 親コンテナ */
  .noe260406 .lp_container {
    position: relative;
    width: 100%;
  }

  /* 背景コンテナ：コンテンツ全体と同じ高さにする */
  .noe260406 .bg-layers {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; /* lp_containerの高さに合わせる */
    z-index: 0;
    pointer-events: none;
  }

  /* 背景画像：stickyを使って「画面内」に留まらせる */
  .noe260406 .bg-img {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    opacity: 0;
    transition: opacity 0.8s ease-in-out;
    background-size: cover;
    background-position: center;
    /* 重なりを制御 */
    margin-top: -100vh;
  }

  .noe260406 .bg-img:first-child {
    margin-top: 0;
  }

  .noe260406 .bg-img.active {
    opacity: 0.4;
  }

  /* grid-wrapを背景より前に出す */
  .noe260406 .grid-wrap {
    position: relative;
    z-index: 1;
  }

  .noe260406 .bg_01 { background-image: url('../img/bg_01.jpg'); }
  .noe260406 .bg_02 { background-image: url('../img/bg_02.jpg'); }
  .noe260406 .bg_03 { background-image: url('../img/bg_03.jpg'); }
  .noe260406 .bg_04 { background-image: url('../img/bg_04.jpg'); }
}

/*** SP ***/
@media screen and (max-width: 767px) {
  .noe260406 .content{
    position: relative;
  }

  .noe260406 .center-area {
    width: calc(750 * var(--formula));
    margin-inline: auto;
  }

  .noe260406 .content::after{
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: -1;
    pointer-events: none;
  }

  .noe260406 .content01::after{
    top: calc(-375 * var(--formula));
    height: calc(2190 * var(--formula));
    background-image: url('../img/bg_01_sp.jpg');
    opacity: 0.5;
  }

  .noe260406 .content02::after{
    top: calc(-325 * var(--formula));
    height: calc(3000 * var(--formula));
    background-image: url('../img/bg_02_sp.jpg');
    opacity: 0.5;
  }

  .noe260406 .content03::after{
    top: calc(-730 * var(--formula));
    height: calc(4810 * var(--formula));
    background-image: url('../img/bg_03_sp.jpg');
    opacity: 0.4;
  }

  .noe260406 .content04::after{
    top: calc(-159 * var(--formula));
    height: calc(3932 * var(--formula));
    background-image: url('../img/bg_04_sp.jpg');
    opacity: 0.4;
  }
}



/* ===============================================### 
MV
###=============================================== */
.noe260406 .mv{
}

.noe260406 .mv__inner{
  width: calc(750 * var(--formula));
  margin-inline: auto;
}

/************** text **************/
.noe260406 .mv__text{
  margin-top: calc(145 * var(--formula));
  font-family: var(--font-ja);
  font-size: calc(20 * var(--formula));
  font-weight: var(--fw-regular);
  line-height: 2;
  letter-spacing: 0.075em;
  text-align: center;
}

/************** image **************/
.noe260406 .mv__image{
}

/* ===========### responsive ###=========== */
@media screen and (max-width: 767px) {
  .noe260406 .mv__inner{
    position: relative;
  }

  .noe260406 .mv__title{
    position: absolute;
    top: calc(854 * var(--formula));
    left: 50%;
    transform: translateX(-50%);
    width: calc(385 * var(--formula));
    z-index: 1;
    pointer-events: none;
  }
}


/* ===============================================### 
コンテンツ01
###=============================================== */
.noe260406 .content01{
  /* position: relative; */
  margin-top: calc(147 * var(--formula));
}

.noe260406 .content01 .content__inner{
  /* position: relative; */
  /* z-index: 1; */
}

.noe260406 .content01 .content__item{
}

.noe260406 .content01 .content__item.item01{
  width: fit-content;
  margin-inline: auto;
}

.noe260406 .content01 .content__item.item02{
  position: relative;
  width: fit-content;
  margin-top: calc(154 * var(--formula));
  margin-inline: auto;
}

/************** text **************/
.noe260406 .content01 .content__item.item02 .credit{
  position: absolute;
  top: calc(145 * var(--formula));
  right: calc(103 * var(--formula));
  z-index: 1;
}

/************** image **************/
.noe260406 .content01 .content__item.item01 .content__image{
  width: calc(466 * var(--formula));
}

.noe260406 .content01 .content__item.item02 .content__image{
  width: calc(750 * var(--formula));
}


/* ===========### responsive ###=========== */
@media screen and (max-width: 767px) {
  .noe260406 .content01 .content__item.item02 .credit{
    top: calc(152 * var(--formula));
  }
}


/* ===============================================### 
コンテンツ02
###=============================================== */
.noe260406 .content02{
  /* position: relative; */
  margin-top: calc(153 * var(--formula));
}

.noe260406 .content02 .content__inner{
  /* position: relative; */
  /* z-index: 1; */
}

.noe260406 .content02 .content__item{
}

.noe260406 .content02 .content__item.item01{
  position: relative;
  z-index: 1;
  pointer-events: none;
}

.noe260406 .content02 .content__item.item02{
  margin-top: calc(-144 * var(--formula));
  margin-left: calc(221 * var(--formula));
}

.noe260406 .content02 .content__item.item03{
  width: fit-content;
  margin-top: calc(153 * var(--formula));
  margin-inline: auto;
}

.noe260406 .content02 .content__item.item04{
  width: fit-content;
  margin-top: calc(152 * var(--formula));
  margin-inline: auto;
}

/************** text **************/
.noe260406 .content02 .content__item.item04 .credit{
  margin-top: calc(15 * var(--formula));
  margin-right: calc(15 * var(--formula));
  margin-left: auto;
  text-align: right;
}

/*** クレジット位置微調整 ***/
.noe260406 .content02 .content__item.item04 .credit a:nth-of-type(2){
  margin-left: calc(16 * var(--formula));
}

/************** image **************/
.noe260406 .content02 .content__item.item01 .content__image{
  width: calc(380 * var(--formula));
  pointer-events: auto;
}

.noe260406 .content02 .content__item.item02 .content__image{
  width: calc(529 * var(--formula));
}

.noe260406 .content02 .content__item.item02 .content__image img{
  opacity: 0.7;
}

.noe260406 .content02 .content__item.item03 .content__image{
  width: calc(500 * var(--formula));
}

.noe260406 .content02 .content__item.item04 .content__image{
  width: calc(750 * var(--formula));
}

/* ===========### responsive ###=========== */
@media screen and (max-width: 767px) {
}


/* ===============================================### 
コンテンツ03
###=============================================== */
.noe260406 .content03{
  /* position: relative; */
  margin-top: calc(148 * var(--formula));
}

.noe260406 .content03 .content__inner{
}

.noe260406 .content03 .content__item{
  width: fit-content;
  margin-inline: auto;
}

.noe260406 .content03 .content__item.item01{
}

.noe260406 .content03 .content__item.item02{
  margin-top: calc(153 * var(--formula));
}

.noe260406 .content03 .content__item.item03{
  margin-top: calc(148 * var(--formula));
}

.noe260406 .content03 .content__item.item04{
  margin-top: calc(152 * var(--formula));
}

.noe260406 .content03 .content__item.item05{
  position: relative;
  width: fit-content;
  margin-top: calc(153 * var(--formula));
  margin-inline: auto;
}

/************** slide **************/
.noe260406 .content03 .slide-wrap{
  width: calc(750 * var(--formula));
  margin-inline: auto;
}

/************** text **************/
.noe260406 .content03 .content__item.item02 .credit{
  margin-top: calc(15 * var(--formula));
  text-align: center;
}

.noe260406 .content03 .content__item.item05 .credit{
  position: absolute;
  top: calc(173 * var(--formula));
  left: calc(59 * var(--formula));
  z-index: 1;
}

/*** クレジット位置微調整 ***/
.noe260406 .content03 .content__item.item02 .credit a:nth-of-type(2){
  margin-left: calc(16 * var(--formula));
}

.noe260406 .content03 .content__item.item05 .credit a:nth-of-type(2){
  margin-left: calc(16 * var(--formula));
}

/************** image **************/
.noe260406 .content03 .content__item.item01 .content__image{
  width: calc(550 * var(--formula));
}

.noe260406 .content03 .content__item.item02 .content__image{
  width: calc(365 * var(--formula));
  margin: 0 calc(17 * var(--formula));
}

.noe260406 .content03 .content__item.item03 .content__image{
  width: calc(470 * var(--formula));
  border-radius: calc(236 * var(--formula));
}

.noe260406 .content03 .content__item.item04 .content__image{
  width: calc(470 * var(--formula));
}

.noe260406 .content03 .content__item.item05 .content__image{
  width: calc(750 * var(--formula));
}

/* ===========### responsive ###=========== */
@media screen and (max-width: 767px) {
}


/* ===============================================### 
コンテンツ04
###=============================================== */
.noe260406 .content04{
  margin-top: calc(191 * var(--formula));
  margin-bottom: calc(92 * var(--formula));
}

.noe260406 .content04 .content__inner{
}

.noe260406 .content04 .content__item{
}

.noe260406 .content04 .content__item.item01{
  position: relative;
  z-index: 1;
  pointer-events: none;
}

.noe260406 .content04 .content__item.item02{
  margin-top: calc(-123 * var(--formula));
  margin-left: calc(374 * var(--formula));
}

.noe260406 .content04 .content__item.item03{
  width: fit-content;
  margin-top: calc(190 * var(--formula));
  margin-inline: auto;
}

.noe260406 .content04 .content__item.item04{
  width: fit-content;
  margin-top: calc(147 * var(--formula));
  margin-inline: auto;
}

/************** text **************/
.noe260406 .content04 .content__item.item03 .credit{
  margin-top: calc(14 * var(--formula));
  margin-left: calc(16 * var(--formula));
  text-align: left;
}

.noe260406 .staff-credit{
  margin-top: calc(148 * var(--formula));
  font-family: var(--font-ja);
  font-size: calc(23 * var(--formula));
  font-weight: var(--fw-regular);
  line-height: 1.7391304348;
  letter-spacing: 0.1em;
  text-align: center;
}

/*** クレジット位置微調整 ***/
.noe260406 .content04 .content__item.item03 .credit a:nth-of-type(2){
  margin-left: calc(16 * var(--formula));
}

/************** image **************/
.noe260406 .content04 .content__item.item01 .content__image{
  width: calc(469 * var(--formula));
  pointer-events: auto;
}

.noe260406 .content04 .content__item.item02 .content__image{
  width: calc(376 * var(--formula));
}

.noe260406 .content04 .content__item.item02 .content__image img{
  opacity: 0.5;
}

.noe260406 .content04 .content__item.item03 .content__image{
  width: calc(750 * var(--formula));
}

.noe260406 .content04 .content__item.item04 .content__image{
  width: calc(470 * var(--formula));
}

/* ===========### responsive ###=========== */
@media screen and (max-width: 767px) {
  .noe260406 .content04{
    margin-top: calc(151 * var(--formula));
  }

  .noe260406 .content04 .content__item.item01 .content__image{
    position: relative;
    left: calc(-50 * var(--formula));
    width: calc(500 * var(--formula));
  }

  .noe260406 .content04 .content__item.item02{
    margin-top: calc(-128 * var(--formula));
    margin-left: calc(352 * var(--formula));
  }

  .noe260406 .content04 .content__item.item02 .content__image{
    width: calc(400 * var(--formula));
  }

  .noe260406 .content04 .content__item.item03{
    margin-top: calc(152 * var(--formula));
  }
}

