@charset "UTF-8";

@media (max-width: 1400px) and (min-width: 768px) {
  html {
    font-size: calc(10 * (100vw / 1400));
  }
}

@font-face {
  font-family: "NotoSerifJP-Regular";
  src: url("../fonts/NotoSerifJP-Regular.otf") format("truetype");
  font-style: normal;
}


/*******************************
FR250317official
*******************************/
#FR250317official{
  display: block;
  width: 100%;
  padding: 0 0 0;
  box-sizing: border-box;
}

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


#FR250317official .lpSection{
  display: block;
  width: 100%;
  overflow: hidden;
}

/*******************************
img setting
*******************************/
#FR250317official .imgOuter{
  display: block;
  width: 100%;
  height: auto;
  background: #FFFFFF;
  pointer-events: none;
}

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


/*******************************
creditLinks
*******************************/
#FR250317official .creditArea{
  display: block;
  opacity: 0;
  transform: translate(0,6rem);
  transition: opacity 1s ease,transform 1s ease;
}

#FR250317official .creditLinks{
  display: block;
  text-align: left;
  white-space: nowrap;
}

#FR250317official .creditLinks > a,
#FR250317official .creditLinks > span{
  display: inline-block;
  white-space: nowrap;
  font-family: "mixta-pro", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
  letter-spacing: 0.09em;
  line-height: 1.75;
  color: #58595B;
  text-decoration: none;
  font-feature-settings: "palt";
}

#FR250317official .creditLinks > a + a::before,
#FR250317official .creditLinks > br.spView + a::before,
#FR250317official .creditLinks > a + span::before,
#FR250317official .creditLinks > span + span::before,
#FR250317official .creditLinks > br.spView + span::before,
#FR250317official .creditLinks > span + a::before{
  content: ',';
  display: inline-block;
  padding: 0 0.4em 0 0;
  margin-left: -0.2em;
}


/*******************************
fadeInSetting
*******************************/
#FR250317official .fadeInBlock{
  opacity: 0;
  transform: translate(0,6rem);
  transition: opacity 1s ease,transform 1s ease;
}

#FR250317official .fadeInBlock.view{
  opacity: 1;
  transform: translate(0,0);
}


#FR250317official .fadeInList{}
#FR250317official .fadeInList > *{
  clip-path: inset(0 100% 0 0);
  transition: clip-path 0.2s ease;
}

#FR250317official .fadeInList > *.view{
  clip-path: inset(0);
}



/*******************************
secTTL
*******************************/
#FR250317official .secTTL{
  display: block;
}

#FR250317official .secTTL svg{
  display: block;
  width: 100%;
  height: auto;
}



/*******************************
mvBlock
*******************************/
#FR250317official .mvBlock{
  display: block;
  width: 120rem;
  margin: 0 auto 5.8rem;
}

#FR250317official .mvBlock .mvOuter{
  display: block;
  width: 100%;
  height: auto;
}

#FR250317official .mvBlock picture,
#FR250317official .mvBlock img{
  display: block;
  width: 100%;
  height: auto;
}

/*******************************
firstLede
*******************************/
#FR250317official .firstLede{
  display: block;
  margin: 0 auto 9.4rem;
}

#FR250317official .firstLede p{
  /*
  font-family: "ryo-text-plusn", serif;
  */
  font-family: "NotoSerifJP-Regular", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 1.3rem;
  line-height: 2;
  letter-spacing: 0.14em;
  text-align: center;
  color: #58595B;
  font-feature-settings: "palt";
  -webkit-font-smoothing: auto;
}

#FR250317official .firstLede p:nth-of-type(1){
  transform: translateX(0.2rem);
}

#FR250317official .firstLede p + p{
  margin-top: 2.7rem;
}

/*******************************
sec01
*******************************/
#FR250317official #sec01{
  display: block;
  width: 81rem;
  padding-top: 30rem;
  margin: 0 auto 18rem;
  position: relative;
}


#FR250317official #sec01 .secTTL{
  width: 57.19165rem;
  position: absolute;
  left: 46.5rem;
  top: 22.1rem;
  z-index: 3;
  pointer-events: none;
}
#FR250317official #sec01 .secTTL > svg > path{
  fill: #FFE6E6;
}

#FR250317official #sec01 .img01{
  display: block;
  width: 40rem;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
#FR250317official #sec01 .img01.fadeInBlock{
  transform: translate(-6rem,0);
}

#FR250317official #sec01 .img01.fadeInBlock.view{
  opacity: 1;
  transform: translate(0,0);
}


#FR250317official #sec01 .img02{
  display: block;
  width: 46rem;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 1;
}
#FR250317official #sec01 .img02.fadeInBlock{
  transform: translate(6rem,0);
}

#FR250317official #sec01 .img02.fadeInBlock.view{
  opacity: 1;
  transform: translate(0,0);
}



#FR250317official #sec01 .creditArea{
  display: block;
  position: absolute;
  top: 62.4rem;
  left: 0;
  z-index: 4;
}

#FR250317official #sec01 .img01.view + .img02 + .creditArea{
  opacity: 1;
  transform: translate(0,0);
}

/*******************************
sec02
*******************************/
#FR250317official #sec02{
  display: block;
  width: 100%;
  margin: 0 auto 18rem;
  position: relative;
  z-index: 1;
}

#FR250317official #sec02::after{
  content: '';
  display: block;
  width: 100%;
  height: 68rem;
  background: url("../img/bg_sec_02.jpg") center center no-repeat;
  background-size: cover;
  position: absolute;
  top: 49.5rem;
  left: 0;
  z-index: -1;
}


#FR250317official #sec02 .secTTL{
  width: 46.34451rem;
  position: absolute;
  left: 50%;
  top: 4rem;
  z-index: 3;
  pointer-events: none;
  transform: translateX(-50%);
}
#FR250317official #sec02 .secTTL > svg > path{
  fill: #FFFFFF;
}

#FR250317official #sec02 .img01{
  display: block;
  width: 56rem;
  margin: 0 auto 8rem;
}

#FR250317official #sec02 .img02{
  display: block;
  width: 50rem;
  margin: 0 auto;
}


#FR250317official #sec02 .creditArea{
  display: block;
  position: absolute;
  left: calc(50% + 28rem);
  bottom: -0.5rem;
  z-index: 4;
}

#FR250317official #sec02 .img02.view + .creditArea{
  opacity: 1;
  transform: translate(0,0);
}


/*******************************
sec03
*******************************/
#FR250317official #sec03{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 94rem;
  margin: 0 auto 18rem;
  position: relative;
  z-index: 1;
}



#FR250317official #sec03 .secTTL{
  width: 56.4478rem;
  position: absolute;
  left: -6rem;
  top: 9.5rem;
  z-index: 3;
  pointer-events: none;
}
#FR250317official #sec03 .secTTL > svg > path{
  fill: #D8EBEF;
}

#FR250317official #sec03 .img01{
  order: 2;
  display: block;
  width: 45rem;
}

#FR250317official #sec03 .img01.fadeInBlock{
  transform: translate(6rem,0);
}

#FR250317official #sec03 .img01.fadeInBlock.view{
  opacity: 1;
  transform: translate(0,0);
}

#FR250317official #sec03 .img02{
  order: 1;
  display: block;
  width: 41rem;
  margin-top: 35rem;
}

#FR250317official #sec03 .img02.fadeInBlock{
  transform: translate(-6rem,0);
}

#FR250317official #sec03 .img02.fadeInBlock.view{
  opacity: 1;
  transform: translate(0,0);
}


#FR250317official #sec03 .creditArea{
  display: block;
  position: absolute;
  right: -0.2rem;
  top: 69.9rem;
  z-index: 4;
}

#FR250317official #sec03 .img01.view + .img02 + .creditArea{
  opacity: 1;
  transform: translate(0,0);
}

#FR250317official #sec03 .creditArea .creditLinks{
  text-align: right;
}



/*******************************
sec04
*******************************/
#FR250317official #sec04{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto 18rem;
  position: relative;
  z-index: 1;
}


#FR250317official #sec04 .secTTL{
  width: 54.64756rem;
  position: absolute;
  left: 50%;
  top: 26.4rem;
  z-index: 3;
  pointer-events: none;
  transform: translateX(-50%);
}
#FR250317official #sec04 .secTTL > svg > path{
  fill: #E1E5E7;
}

#FR250317official #sec04 .img01{
  display: block;
  width: 48rem;
}

#FR250317official #sec04 .img02{
  display: block;
  width: 48rem;
}


#FR250317official #sec04 .creditArea{
  display: block;
  position: absolute;
  left: 50%;
  top: 45.8rem;
  z-index: 4;
  transform: translateX(-50%);
}

#FR250317official #sec04 .img02.view + .creditArea{
  opacity: 1;
  transform: translate(-50%,0);
}

#FR250317official #sec04 .creditArea .creditLinks{
  text-align: center;
}


/*******************************
sec04
*******************************/
#FR250317official #sec05{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 114.5rem;
  margin: 0 auto 18rem;
  padding-top: 35rem;
  position: relative;
  z-index: 1;
  transform: translateX(0.05rem);
}


#FR250317official #sec05 .secTTL{
  width: 51.51548rem;
  position: absolute;
  left: 45.2rem;
  top: 119.5rem;
  z-index: 3;
  pointer-events: none;
}
#FR250317official #sec05 .secTTL > svg > path{
  fill: #EAE9E8;
}

#FR250317official #sec05 .img01{
  display: block;
  width: 41rem;
  position: absolute;
  left: 19.5rem;
  top: 0;
}

#FR250317official #sec05 .img01.fadeInBlock{
  transform: translate(-6rem,0);
}

#FR250317official #sec05 .img01.fadeInBlock.view{
  opacity: 1;
  transform: translate(0,0);
}

#FR250317official #sec05 .img02{
  order: 2;
  display: block;
  width: 46rem;
}

#FR250317official #sec05 .img02.fadeInBlock{
  transform: translate(6rem,0);
}

#FR250317official #sec05 .img02.fadeInBlock.view{
  opacity: 1;
  transform: translate(0,0);
}

#FR250317official #sec05 .img03{
  order: 1;
  display: block;
  width: 50rem;
  margin-top: 34.5rem;
}

#FR250317official #sec05 .creditArea{
  display: block;
  position: absolute;
  right: 0;
  top: 106.4rem;
  z-index: 4;
}



#FR250317official #sec05 .img02.view + .img03 + .creditArea{
  opacity: 1;
  transform: translate(0,0);
}

#FR250317official #sec05 .creditArea .creditLinks{
  text-align: right;
}

/*******************************
lpBottomArea
*******************************/
#FR250317official .lpBottomArea{
  display: block;
  width: 100%;
  padding: 14.2rem 0 13.5rem;
  background: url("../img/bg_staff_list.jpg") center center no-repeat;
  background-size: cover;
}


/*******************************
allItemBtn
*******************************/
#FR250317official .allItemBtn{
  display: block;
  width: 12rem;
  margin: 0 auto 13.6rem;
  position: relative;
}

#FR250317official .allItemBtn a{
  display: block;
  width: 100%;
}

#FR250317official .allItemBtn img{
  display: block;
  width: 100%;
  height: auto;
}


/*******************************
lpStaffList
*******************************/
#FR250317official dl.lpStaffList{
  display: block;
  margin: 0 auto;
  overflow: hidden;
}

#FR250317official dl.lpStaffList > dt,
#FR250317official dl.lpStaffList > dd{
  display: block;
  font-family: "mixta-pro", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.4rem;
  line-height: 1.75;
  letter-spacing: 0.09em;
  font-feature-settings: "palt";
  color: #58595B;
  text-align: center;
}

#FR250317official dl.lpStaffList > dt{

}

#FR250317official dl.lpStaffList > dd{
  /*transform: translateX(0.3rem);*/
}


#FR250317official dl.lpStaffList > dd > span{
  font-family: "mixta-pro", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.4rem;
  line-height: 1.75;
  letter-spacing: 0.09em;
  font-feature-settings: "palt";
  color: #58595B;
  text-align: center;
}


/*******************************
overRide
*******************************/
#FR250317official .spView{display: none!important;}











