@charset "UTF-8";

.archive{
  border-top: none!important;
}


@media only screen and (min-width: 768px) {
  .archive {
    border-top: 1px solid #58595b!important;
  }
  
  .archive > h4 {
    font-size: calc(52 * 100vw / 750);
    line-height: 1.15384;
    padding-block: calc(150 * 100vw / 750) calc(47 * 100vw / 750);
  }
}

:root{
  --lpHeaderHeight: 101.859px;
}

@media screen and (max-width:767px) {
  :root {
    --lpSetSize: (100vw / 750);
  }
}


@media screen and (min-width:768px) {
  :root {
    --lpSetSize: (100vw / 1400) * 0.6;
  }
}

/*
@media screen and (min-width:1401px){
  :root {
    --lpSetSize: 0.6px;
  }
}
*/


/*******************************
FR250922lightouter
*******************************/
#FR250922lightouter{
  display: block;
  width: 100%;
  padding: 0 0 calc(230 * var(--lpSetSize));
  box-sizing: border-box;
}

@media screen and (max-width:767px) {
  #FR250922lightouter{
    padding: 0 0 calc(40 * var(--lpSetSize));
  }
}

#FR250922lightouter *{box-sizing: border-box;}


#FR250922lightouter img,
#FR250922lightouter picture{
  display: block;
  width: 100%;
  height: auto;
}

#FR250922lightouter .lpSection{
  display: block;
  width: 100%;
}

/*******************************
img setting
*******************************/
#FR250922lightouter .imgOuter{
  display: block;
  width: 100%;
  height: auto;
}

#FR250922lightouter .imgOuter > .outer,
#FR250922lightouter .imgOuter picture,
#FR250922lightouter .imgOuter img{
  display: block;
  width: 100%;
  height: auto;
}
#FR250922lightouter .imgOuter > a{
  display: block;
  width: 100%;
  height: auto;
}


/*******************************
creditLinks
*******************************/
#FR250922lightouter .creditArea{
  display: block;
  padding-top: calc(31 * var(--lpSetSize));
}

#FR250922lightouter .creditLinks{
  display: block;
  white-space: nowrap;
  text-align: center;
}

#FR250922lightouter .creditLinks > a,
#FR250922lightouter .creditLinks > span{
  display: inline-block;
  white-space: nowrap;
  font-family: "tt-commons-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: calc(20 * var(--lpSetSize));
  letter-spacing: 0.06em;
  line-height: 1.9;
  color: #000000;
  text-decoration: none;
  font-feature-settings: "palt";
}

#FR250922lightouter .creditLinks > a + a::before,
#FR250922lightouter .creditLinks > span + span::before,
#FR250922lightouter .creditLinks > a + span::before,
#FR250922lightouter .creditLinks > span + a::before{
  content: '/';
  display: inline-block;
  padding: 0 0.2em 0 0.1em;
}


/*******************************
figSlider
*******************************/
#FR250922lightouter .figSlider{
	overflow: hidden;
	position: relative;
}

#FR250922lightouter .figSlider .container{
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
}

#FR250922lightouter .figSlider .sliderWrapper{}

#FR250922lightouter .figSlider .slider{
  display: block;
  width: 100%;
  background: #FFFFFF;
}

#FR250922lightouter .figSlider .slider a{
  display: block;
  width: 100%;
  height: auto;
}

#FR250922lightouter .figSlider .slider a > img{
  display: block;
  width: 100%;
  height: auto;
}

#FR250922lightouter .figSlider .slider.swiper-slide-active{
  pointer-events: auto;
}


/*******************************
fadeInSetting
*******************************/
#FR250922lightouter .fadeInBlock{
  opacity: 0;
  transition: opacity 1.0s ease;
}

#FR250922lightouter .fadeInBlock .fadeInBlock{
  transition-delay: 0.6s;
}

#FR250922lightouter .fadeInBlock.view{
  opacity: 1;
}


/*******************************
lpSection
*******************************/
#FR250922lightouter .lpSectionWrap{
  display: block;
  width: 100%;
}

#FR250922lightouter .mvBlock{
  display: block;
  width: 100%;
  position: sticky;
  left: 0;
  top: 0;
}

#FR250922lightouter .mvBlock .mvBlockInner{
  display: block;
  width: 100%;
}

#FR250922lightouter .mvBlock .mvOuter{
  display: block;
  width: 100%;
  height: 100vh;
  position: relative;
  overflow: hidden;
}

#FR250922lightouter .mvBlock .mvOuter picture{
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#FR250922lightouter .mvBlock .mvOuter picture > img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}


#FR250922lightouter .mvBlock .mvOuter .mainTTL{
  display: block;
  width:  calc(595.583 * var(--lpSetSize));
  position: absolute;
  left: calc(50% - 595.583 * var(--lpSetSize) / 2);
  bottom: calc(310 * var(--lpSetSize));
  z-index: 1;
}

#FR250922lightouter .mvBlock .mvOuter .lpGuideArrow{
  display: block;
  width:  calc(20.3135 * var(--lpSetSize));
  position: absolute;
  left: calc(50% - 5 * var(--lpSetSize) / 2);
  bottom: calc(58 * var(--lpSetSize));
  z-index: 1;
  animation: lpGuideArrowScroll 2s infinite;
}

@keyframes lpGuideArrowScroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
}

#FR250922lightouter .lpMainBlock{
  display: block;
  width: 100%;
  min-height: 200dvh;
  opacity: 0;
  background: #FFFFFF;
}

#FR250922lightouter .lpMainBlock.active{
  position: relative;
}

#FR250922lightouter .lpMainBlockInner{
  display: block;
  width: 100%;
  position: fixed;
  left: 0;
  top: 0;
}

#FR250922lightouter .lpMainBlock.active .lpMainBlockInner{
  opacity: 1;
  position: relative;
}


@media screen and (min-width:768px){

  #FR250922lightouter .lpSectionWrap{
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    width: 100%;
  }

  #FR250922lightouter .mvBlock{
    display: block;
    width: 50%;
    position: relative;
    top: unset;
    left: unset;
  }

  #FR250922lightouter .mvBlock .mvBlockInner{
    display: block;
    width: 100%;
    position: sticky;
    left: 0;
    top: var(--lpHeaderHeight);
  }

  #FR250922lightouter .mvBlock .mvOuter{
    display: block;
    width: 100%;
    height: calc(100dvh - var(--lpHeaderHeight));
    overflow: hidden;
  }
  
  #FR250922lightouter .mvBlock .mvOuter picture{
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    transition: none;
  }
  #FR250922lightouter .mvBlock .mvOuter picture > img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: none;
  }

  #FR250922lightouter .mvBlock .mvOuter .mainTTL{
    display: block;
    width:  calc(765.9131666666667 * var(--lpSetSize));
    position: absolute;
    left: calc(50% - 765.9131666666667 * var(--lpSetSize) / 2);
    bottom: calc(100 * var(--lpSetSize));
    z-index: 1;
  }

  #FR250922lightouter .mvBlock .mvOuter .lpGuideArrow{
    display: none;
  }
  
  #FR250922lightouter .lpMainBlock{
    display: block;
    width: 50%;
    position: relative;
    top: unset;
    left: unset;
    opacity: 1!important;
  }
  
  #FR250922lightouter .lpMainBlockInner{
    display: block;
    width: calc(750 * var(--lpSetSize));
    margin: 0 auto;
    position: relative!important;
  }
  
}

/*******************************
lpMain
*******************************/
#FR250922lightouter .lpMain{
  display: block;
  width: 100%;
  height: 100dvh;
  position: sticky;
  left: 0;
  top: var(--lpHeaderHeight);
  z-index: 1;
}

#FR250922lightouter .lpSection{
  display: block;
  width: calc(750 * var(--lpSetSize));
  min-height: calc(100dvh - var(--lpHeaderHeight));
  background: #FFFFFF;
  opacity: 0;
  position: sticky;
  top: var(--lpHeaderHeight);
  z-index: 2;
  transition: /*opacity .6s ease,*/top 0.3s ease;
  pointer-events: none;
}

#FR250922lightouter .lpSection:nth-last-child(1){
  min-height: inherit;
}

#FR250922lightouter .lpSection.active{
  opacity: 1;
  pointer-events: auto;
}

#FR250922lightouter #sec01.lpSection:not(.past){
  opacity: 1;
  pointer-events: auto;
}


#FR250922lightouter .lpSection.past{
  opacity: 0!important;
  pointer-events: none;
}

#FR250922lightouter .lpSection .lpSectionInner{
  display: block;
  width: calc(750 * var(--lpSetSize));
  position: sticky;
  padding-bottom: calc(100 * var(--lpSetSize));
  transition: none;
}


/*******************************
sec01
*******************************/
#FR250922lightouter #sec01 .img01{width: 100%; margin: 0 auto;}
#FR250922lightouter #sec01 .img02{width: 100%; margin: 0 auto;}

/*******************************
sec02
*******************************/
#FR250922lightouter #sec02 .img01{width: 100%; margin: 0 auto;}
#FR250922lightouter #sec02 .img02{width: 100%; margin: 0 auto;}

/*******************************
sec03
*******************************/
#FR250922lightouter #sec03 .img01{width: 100%; margin: 0 auto;}
#FR250922lightouter #sec03 .img02{width: 100%; margin: 0 auto;}
#FR250922lightouter #sec03 .img03{width: 100%; margin: 0 auto;}

/*******************************
sec04
*******************************/
#FR250922lightouter #sec04 .img01{width: 100%; margin: 0 auto;}
#FR250922lightouter #sec04 .img02{width: 100%; margin: 0 auto;}
#FR250922lightouter #sec04 .img03{width: 100%; margin: 0 auto;}

/*******************************
sec05
*******************************/
#FR250922lightouter #sec05 .img01{width: 100%; margin: 0 auto;}

/*******************************
sec06
*******************************/
#FR250922lightouter #sec06 .img01{width: 100%; margin: 0 auto;}
#FR250922lightouter #sec06 .img02{width: 100%; margin: 0 auto;}

/*******************************
sec07
*******************************/
#FR250922lightouter #sec07 .img01{width: 100%; margin: 0 auto;}
#FR250922lightouter #sec07 .img02{width: 100%; margin: 0 auto;}

#FR250922lightouter #sec07 .secTTL{
  display: block;
  width: calc(29.0039 * var(--lpSetSize));
  position: absolute;
  left: calc(40.249 * var(--lpSetSize));
  top: calc(714.4893 * var(--lpSetSize));
  z-index: 3;
  pointer-events: none;
}

/*******************************
lpMainBottom
*******************************/
#FR250922lightouter .lpMainBottom{
  display: block;
  width: 100%;
  height: calc(1435 * var(--lpSetSize));
  padding-top: calc(150 * var(--lpSetSize));
  background: url("../img/bottom_bg.jpg") center bottom no-repeat;
  background-size: cover;
  position: relative;
  z-index: 3;
}

#FR250922lightouter .allItemBtn{
  display: block;
  width: calc(408.5469 * var(--lpSetSize));
  margin: 0 auto calc(62 * var(--lpSetSize));
}



#FR250922lightouter .lpStaffList{
  display: block;
  font-family: "tt-commons-pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: calc(20  * var(--lpSetSize));
  line-height: 1.9;
  letter-spacing: 0.06em;
  font-feature-settings: "palt";
  color: #ffffff;
  text-align: center;
}



/*******************************
overRide
*******************************/
@media screen and (max-width:767px) {
  #FR250922lightouter .pcView{display: none;}
}

@media screen and (min-width:768px){
  #FR250922lightouter .spView{display: none;}
}








