@charset "UTF-8";
/*******************************
AU250108DEVICE1NEWMODEL
*******************************/
#AU250108DEVICE1NEWMODEL{
  display: block;
  width: 100%;
  padding: 0 0 17.6rem;
  box-sizing: border-box;
  overflow: hidden;
  font-family: "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", Arial, "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #000000;
}

#AU250108DEVICE1NEWMODEL *{box-sizing: border-box;}

#AU250108DEVICE1NEWMODEL picture,
#AU250108DEVICE1NEWMODEL figure,
#AU250108DEVICE1NEWMODEL img{
  display: block;
  width: 100%;
  height: auto;
}

#AU250108DEVICE1NEWMODEL .imgOuter{
  background: #FFFFFF;
}

#AU250108DEVICE1NEWMODEL .imgOuter > a,
#AU250108DEVICE1NEWMODEL .imgOuter > span{display: block; width: 100%; height: auto;}

#AU250108DEVICE1NEWMODEL a{
  transition: opacity .3s;
}

#AU250108DEVICE1NEWMODEL a:hover{
  opacity: .6;
}


/*******************************
fadeInSetting
*******************************/
#AU250108DEVICE1NEWMODEL .fadeInBlock{
}


#AU250108DEVICE1NEWMODEL .fadeInBlock.imgFade{
  opacity: 0;
  transform: translateY(5%);
  transition: opacity 1s ease, transform 1s ease;
  pointer-events: none;
}

#AU250108DEVICE1NEWMODEL .fadeInBlock.imgFade.view{
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}



#AU250108DEVICE1NEWMODEL .fadeInBlock.secTTL{
  opacity: 0;
  transform: translateY(0);
  transition: opacity 1s ease, transform 1s ease;
  pointer-events: none;
}
#AU250108DEVICE1NEWMODEL .fadeInBlock.secTTL.view{
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}


/*******************************
mv
*******************************/
#AU250108DEVICE1NEWMODEL #mvBlock{
  display: block;
  width: 100%;
  margin: 0 auto 25.1rem;
  overflow: hidden;
  position: relative;
}


#AU250108DEVICE1NEWMODEL #mvBlock picture,
#AU250108DEVICE1NEWMODEL #mvBlock img,
#AU250108DEVICE1NEWMODEL #mvBlock a{
  display: block;
  width: 100%;
  height: auto;
}



#AU250108DEVICE1NEWMODEL #mvBlock .mvBG{
  display: block;
  width: 100%;
  height: auto;
}


#AU250108DEVICE1NEWMODEL #mvBlock .mvInner{
  display: block;
  width: calc(1025 * (100vw / 1400));
  height: calc(100% - 32 * (100vw / 1400));
  position: absolute;
  left: calc(158.5316 * (100vw / 1400));
  top: calc(32 * (100vw / 1400));
}


#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock{
  display: block;
  position: absolute;
  right: calc(-26 * (100vw / 1400));
  top: calc(542 * (100vw / 1400));
  z-index: 3;
}

#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock .mainTTL{
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  gap: 0 calc(22 * (100vw / 1400));
  margin: 0 auto calc(30 * (100vw / 1400));
  text-align: left;
  position: relative;
}

#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock .mainTTL > span:nth-of-type(1){
  display: block;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(50 * (100vw / 1400));
  line-height: 1;
  letter-spacing: 0.04em;
  color: #FFFFFF;
}

#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock .mainTTL > span:nth-of-type(2){
  display: block;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(31 * (100vw / 1400));
  line-height: 1;
  letter-spacing: 0.11em;
  color: #FFFFFF;
  transform: translateY(-0.06em);
}

#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock .mainTTL::after{
  content: '';
  display: block;
  width: 1px;
  height: calc(32 * (100vw / 1400));
  background: #FFFFFF;
  position: absolute;
  left: calc(224*(100vw / 1400));
  top: calc(50% - 15*(100vw / 1400));
}


#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock p.lede{
  display: block;
  font-size: calc(14 * (100vw / 1400));
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 2.142857142857143;
  text-shadow: 0 0 calc(10 * (100vw / 1400)) rgba(0,0,0,.5);
  font-feature-settings: "palt";
  color: #FFFFFF;
}



#AU250108DEVICE1NEWMODEL #mvBlock .mvRight{
  display: block;
  width: calc(560 * (100vw / 1400));
  /*background: #FFFFFF;*/
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
  overflow: hidden;
}


#AU250108DEVICE1NEWMODEL #mvBlock .mvLeft{
  display: block;
  width: calc(475 * (100vw / 1400));
  /*background: #FFFFFF;*/
  position: absolute;
  left: 0;
  top: calc(204.4941 * (100vw / 1400));
  z-index: 1;
  overflow: hidden;
}

#AU250108DEVICE1NEWMODEL #mvBlock .mvRight a:hover,
#AU250108DEVICE1NEWMODEL #mvBlock .mvLeft a:hover{opacity: 1;}


/*Anime*********/
#AU250108DEVICE1NEWMODEL #mvBlock .mvBG{
  opacity: 0;
  transition: opacity 1s ease;
}

#AU250108DEVICE1NEWMODEL #mvBlock.view .mvBG{
  opacity: 1;
}


#AU250108DEVICE1NEWMODEL #mvBlock .mvRight{
  clip-path: inset(0 0 1px 100%);
  transition: clip-path 1s ease .8s;
}
#AU250108DEVICE1NEWMODEL #mvBlock .mvLeft{
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1s ease .8s;
}

#AU250108DEVICE1NEWMODEL #mvBlock.view .mvRight{
  clip-path: inset(0 0 1px 0);
}

#AU250108DEVICE1NEWMODEL #mvBlock.view .mvLeft{
  clip-path: inset(0);
}

#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock .mainTTL{
  opacity: 0;
  transform: translateY(50%);
  transition: opacity 0.8s ease 2.1s,transform 0.8s ease 2.1s;
}

#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock p.lede{
  opacity: 0;
  transform: translateY(50%);
  transition: opacity 0.8s ease 2.4s,transform 0.8s ease 2.4s;
}

#AU250108DEVICE1NEWMODEL #mvBlock.view .ttlBlock .mainTTL,
#AU250108DEVICE1NEWMODEL #mvBlock.view .ttlBlock p.lede{
  opacity: 1;
  transform: translateY(0);
}


/*******************************
creditLinks
*******************************/
#AU250108DEVICE1NEWMODEL .creditArea{
  display: block;
  text-align: center;
}

#AU250108DEVICE1NEWMODEL .creditLinks{
  display: block;
  white-space: nowrap;
}

#AU250108DEVICE1NEWMODEL .creditLinks > a,
#AU250108DEVICE1NEWMODEL .creditLinks > span{
  display: inline-block;
  white-space: nowrap;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
  letter-spacing: 0.005em;
  line-height: 1;
  color: #000000;
  text-decoration: underline;
  text-decoration-skip-ink: none;
  font-feature-settings: "palt";
}

#AU250108DEVICE1NEWMODEL .creditLinks > a:not(:last-child)::after,
#AU250108DEVICE1NEWMODEL .creditLinks > span:not(:last-child)::after{
  content: ',';
  display: inline-block;
  padding: 0 0 0 0;
}



/*******************************
sec01
*******************************/
#sec01{
  display: block;
  width: 100%;
  margin: 0 auto 26.3rem;
  overflow: hidden;
  position: relative;
}

/* ledeBlock *********/
#sec01 .ledeBlock{
  display: block;
  width: 48.2rem;
  position: absolute;
  left: calc(50% + 4.4rem);
}

#sec01 .ledeBlock .secTTL{
  display: block;
  margin-bottom: 2.6rem;
  text-align: left;
}

#sec01 .ledeBlock .secTTL > span:nth-of-type(1){
  display: block;
  padding-bottom: calc(0.5rem + 1px);
  margin-bottom: 1.4rem;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #000000;
  position: relative;
}

#sec01 .ledeBlock .secTTL > span:nth-of-type(1)::after{
  content: '';
  display: block;
  width: 0;
  height: 1px;
  background: #000000;
  transition: width 1s linear .3s;
  position: absolute;
  left: 0;
  bottom: 0;
}

#sec01 .ledeBlock.view .secTTL > span:nth-of-type(1)::after{
  width: 50vw;
}

#sec01 .ledeBlock .secTTL > span:nth-of-type(2){
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  gap: 0 2.4rem;
}

#sec01 .ledeBlock .secTTL > span:nth-of-type(2) > span:nth-of-type(1){
  display: block;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 3.5rem;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #000000;
}

#sec01 .ledeBlock .secTTL > span:nth-of-type(2) > span:nth-of-type(2){
  display: block;
  font-weight: 600;
  font-style: normal;
  font-size: 2.8rem;
  line-height: 1;
  letter-spacing: 0.155em;
  color: #000000;
  font-feature-settings: "palt";
  transform: translateY(-0.2rem);
}


#sec01 .ledeBlock > p{
  display: block;
  font-size: 1.3rem;
  line-height: 2.076923076923077;
  letter-spacing: 0.056em;
  font-weight: 400;
  font-feature-settings: "palt";
  text-align: justify;
  overflow-wrap: break-word;
  word-break: break-word;
  line-break: strict;
  color: #000000;
}



/* img *********/
#sec01 .secInner{
  display: block;
  width: 96.4rem;
  height: 229.02047rem;
  margin: 0 auto;
  transform: translateX(4.2rem);
  position: relative;
}


#sec01 .secSubTTL{
  display: block;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 9rem;
  line-height: 1;
  letter-spacing: 0.06em;
  color: #DCDCDC;
  transform: rotate(90deg);
  transform-origin: center center;
  pointer-events: none;
  position: absolute;
  left: 44.6rem;
  top: 196rem;
  font-feature-settings: "palt";
}

#sec01 .img01{
  width: 40rem;
  position: absolute;
  left: 0;
  top: 0;
}
#AU250108DEVICE1NEWMODEL #sec01 .img01 .creditArea{
  padding-top: 3rem;
}

#sec01 .img02{
  width: 48rem;
  position: absolute;
  right: 0;
  top: 41.1rem;
}
#AU250108DEVICE1NEWMODEL #sec01 .img02 .creditArea{
  position: absolute;
  bottom: 3rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

#AU250108DEVICE1NEWMODEL #sec01 .img02 .creditLinks > a{color: #FFFFFF;}


#sec01 .img03{
  width: 40rem;
  position: absolute;
  left: 0;
  top: 86.2rem;
  z-index: 2;
}
#AU250108DEVICE1NEWMODEL #sec01 .img03 .creditArea{
  padding-top: 3rem;
}


#sec01 .img04{
  width: 44rem;
  position: absolute;
  left: 33.9rem;
  top: 114.8rem;
  z-index: 1;
}
#AU250108DEVICE1NEWMODEL #sec01 .img04 .creditArea{
  padding-top: 3rem;
}


#sec01 .img05{
  width: 48rem;
  position: absolute;
  left: 8.7rem;
  top: 171rem;
}
#AU250108DEVICE1NEWMODEL #sec01 .img05 .creditArea{
  position: absolute;
  bottom: 3rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

#AU250108DEVICE1NEWMODEL #sec01 .img05 .creditLinks > a{color: #FFFFFF;}



/*******************************
sec02
*******************************/
#sec02{
  display: block;
  width: 100%;
  margin: 0 auto 17.2rem;
  overflow: hidden;
  position: relative;
}


#sec02 .sec02Bg{
  display: block;
  width: 100%;
  height: 240rem;
  background: #002800;
  position: absolute;
  left: 0;
  top: 47.14191rem;
  z-index: 1;
  clip-path: inset(100% 0 0 0);
  transition: clip-path 1.2s cubic-bezier(.33,1,.68,1) .6s;
}
#sec02 .sec02Bg.view{
  clip-path: inset(0);
}


#sec02 .img01{
  width: 60rem;
  margin: 0 auto 5.3rem;
  position: relative;
  z-index: 2;
}

#AU250108DEVICE1NEWMODEL #sec02 .img01.fadeInBlock.imgFade{
  transform: translate(-1.4rem, 5%);
}

#AU250108DEVICE1NEWMODEL #sec02 .img01.fadeInBlock.imgFade.view{
  opacity: 1;
  transform: translate(-1.4rem,0);
  pointer-events: auto;
}

#sec02 .img01 .ecLimitedText{
  display: block;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 11.6rem;
  line-height: 1;
  letter-spacing: -0.009em;
  color: #003200;
  text-align: center;
  margin-bottom: -2rem;
  white-space: nowrap;
  transform: translateX(-0.8rem);
}

#AU250108DEVICE1NEWMODEL #sec02 .img01 .creditArea{
  position: absolute;
  bottom: 3.1rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

#AU250108DEVICE1NEWMODEL #sec02 .img01 .creditLinks > a{color: #FFFFFF;}



/* ledeBlock *********/
#sec02 .ledeBlock{
  display: block;
  width: 59.5rem;
  margin: 0 auto 10.2rem;
  position: relative;
  z-index: 2;
  transform: translateX(-1.6rem);
}

#sec02 .ledeBlock .secTTL{
  display: block;
  margin-bottom: 2.7rem;
  text-align: left;
}

#sec02 .ledeBlock .secTTL > span:nth-of-type(1){
  display: block;
  padding-bottom: calc(0.8rem + 1px);
  margin-bottom: 1.4rem;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #FFFFFF;
  position: relative;
}

#sec02 .ledeBlock .secTTL > span:nth-of-type(1)::after{
  content: '';
  display: block;
  width: 0;
  height: 1px;
  background: #FFFFFF;
  transition: width 1s linear .3s;
  position: absolute;
  right: 0;
  bottom: 0;
}

#sec02 .ledeBlock.view .secTTL > span:nth-of-type(1)::after{
  width: calc(100% + (100vw - 100%) / 2 - 1.98704rem);
}

#sec02 .ledeBlock .secTTL > span:nth-of-type(2){
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  gap: 0 2.4rem;
}

#sec02 .ledeBlock .secTTL > span:nth-of-type(2) > span:nth-of-type(1){
  display: block;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 3.5rem;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #FFFFFF;
}

#sec02 .ledeBlock .secTTL > span:nth-of-type(2) > span:nth-of-type(2){
  display: block;
  font-weight: 600;
  font-style: normal;
  font-size: 2.8rem;
  line-height: 1;
  letter-spacing: 0.155em;
  color: #FFFFFF;
  font-feature-settings: "palt";
  transform: translateY(-0.2rem);
}


#sec02 .ledeBlock > p{
  display: block;
  font-size: 1.3rem;
  line-height: 2.076923076923077;
  letter-spacing: 0.07em;
  font-weight: 400;
  font-feature-settings: "palt";
  text-align: justify;
  overflow-wrap: break-word;
  word-break: break-word;
  line-break: strict;
  color: #FFFFFF;
  padding-left: 0.4rem;
}



/* img *********/
#sec02 .secInner{
  display: block;
  width: 110.3rem;
  height: 194.6rem;
  margin: 0 auto;
  transform: translateX(3rem);
  position: relative;
  z-index: 2;
}


#sec02 .secSubTTL{
  display: block;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 9rem;
  line-height: 1;
  letter-spacing: 0.06em;
  color: #143C23;
  transform: rotate(90deg);
  transform-origin: center center;
  pointer-events: none;
  position: absolute;
  left: 20.6rem;
  top: 53.4rem;
}

#sec02 .img02{
  width: 40rem;
  position: absolute;
  left: 5rem;
  top: 0;
}
#AU250108DEVICE1NEWMODEL #sec02 .img02 .creditArea{
  padding-top: 3rem;
}
#AU250108DEVICE1NEWMODEL #sec02 .img02 .creditLinks > a{color: #FFFFFF;}


#sec02 .img03{
  width: 50rem;
  position: absolute;
  right: 0;
  top: 25.5rem;
}
#AU250108DEVICE1NEWMODEL #sec02 .img03 .creditArea{
  padding-top: 3rem;
}
#AU250108DEVICE1NEWMODEL #sec02 .img03 .creditLinks > a{color: #FFFFFF;}



#sec02 .img04{
  width: 40rem;
  position: absolute;
  left: 0;
  top: 63.02611rem;
}
#AU250108DEVICE1NEWMODEL #sec02 .img04 .creditArea{
  padding-top: 3rem;
}
#AU250108DEVICE1NEWMODEL #sec02 .img04 .creditLinks > a{color: #FFFFFF;}


#sec02 .img05{
  width: 55rem;
  position: absolute;
  left: 24.83748rem;
  top: 131.62705rem;
}

#sec02 .img05 .ecLimitedText{
  display: block;
  width: 100%;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 10.5rem;
  line-height: 1;
  letter-spacing: -0.006em;
  color: #003200;
  text-align: center;
  position: absolute;
  z-index: 1;
  pointer-events: none;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  transform: translate(-0.07em,0.16em);
}

#AU250108DEVICE1NEWMODEL #sec02 .img05 .creditArea{
  position: absolute;
  top: 2.8rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

#AU250108DEVICE1NEWMODEL #sec02 .img05 .creditLinks > a{color: #000000;}


/*******************************
btnViewALL
*******************************/
#AU250108DEVICE1NEWMODEL .btnViewALL{
  display: block;
  width: 9rem;
  margin: 0 auto;
}

#AU250108DEVICE1NEWMODEL .btnViewALL > a{
  display: block;
  width: 100%;
  padding: 0 calc(0.88545rem / 2) 0.73621rem;
  border-bottom: 1px solid #000000;
}

#AU250108DEVICE1NEWMODEL .btnViewALL picture,
#AU250108DEVICE1NEWMODEL .btnViewALL img{display: block; width: 100%; height: auto;}



/*******************************
overRide
*******************************/
#AU250108DEVICE1NEWMODEL .spView{display: none;}











