@charset "UTF-8";
/*******************************
AU250108DEVICE1NEWMODEL
*******************************/
#AU250108DEVICE1NEWMODEL{
  display: block;
  width: 100%;
  padding: 0 0 calc(92 * (100vw / 750));
  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 > a,
#AU250108DEVICE1NEWMODEL .imgOuter > span{display: block; width: 100%; height: auto;}


/*******************************
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 calc(200 * (100vw / 750));
  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: 100%;
  position: absolute;
  left: 0;
  top: calc(80 * (100vw / 750));
}


#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock{
  display: block;
  width: 100%;
  position: absolute;
  left: 0;
  top: calc(302.0925 * (100vw / 750));
  z-index: 3;
  pointer-events: none;
}

#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock .mainTTL{
  display: block;
  margin: 0 auto calc(82 * (100vw / 750));
  text-align: center;
  position: relative;
}

#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock .mainTTL::after{
  content: '';
  display: block;
  width: calc(100*(100vw / 750));
  height: 1px;
  background: #FFFFFF;
  position: absolute;
  left: calc(50% - 56*(100vw / 750));
  top: calc(90*(100vw / 750));
}

#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock .mainTTL > span:nth-of-type(1){
  display: block;
  margin-bottom: calc(38 * (100vw / 750));
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(77 * (100vw / 750));
  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(47.3 * (100vw / 750));
  line-height: 1;
  letter-spacing: 0.095em;
  color: #FFFFFF;
}


#AU250108DEVICE1NEWMODEL #mvBlock .ttlBlock p.lede{
  display: block;
  font-size: calc(23 * (100vw / 750));
  font-weight: 400;
  letter-spacing: 0.075em;
  line-height: 1.91304347826087;
  text-shadow: 0 0 calc(10 * (100vw / 750)) rgba(0,0,0,.4);
  font-feature-settings: "palt";
  color: #FFFFFF;
  text-align: center;
}



#AU250108DEVICE1NEWMODEL #mvBlock .mvRight{
  display: block;
  width: calc(445.9 * (100vw / 750));
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
  overflow: hidden;
}

#AU250108DEVICE1NEWMODEL #mvBlock .mvLeft{
  display: block;
  width: calc(360 * (100vw / 750));
  position: absolute;
  left: 0;
  top: calc(88.9804 * (100vw / 750));
  z-index: 2;
  overflow: hidden;
}



/*Anime*********/
#AU250108DEVICE1NEWMODEL #mvBlock .mvBG{
  opacity: 0;
  transition: opacity 1s ease;
}

#AU250108DEVICE1NEWMODEL #mvBlock.view .mvBG{
  opacity: 1;
}


#AU250108DEVICE1NEWMODEL #mvBlock .mvRight{
  clip-path: inset(0 0 0 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,
#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: calc(24 * (100vw / 750));
  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 calc(228 * (100vw / 750));
  overflow: hidden;
  position: relative;
}

/* ledeBlock *********/
#sec01 .ledeBlock{
  display: block;
  width: calc(700 * (100vw / 750));
  margin: 0 0 calc(116 * (100vw / 750)) auto;
}

#sec01 .ledeBlock .secTTL{
  display: block;
  margin-bottom: calc(42 * (100vw / 750));
  text-align: left;
}

#sec01 .ledeBlock .secTTL > span:nth-of-type(1){
  display: block;
  padding-bottom: calc(12 * (100vw / 750) + 1px);
  margin-bottom: calc(18 * (100vw / 750));
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(28 * (100vw / 750));
  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: 100%;
}

#sec01 .ledeBlock .secTTL > span:nth-of-type(2){
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  gap: 0 calc(30 * (100vw / 750));
}

#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: calc(50 * (100vw / 750));
  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: calc(40 * (100vw / 750));
  line-height: 1;
  letter-spacing: 0.155em;
  color: #000000;
  font-feature-settings: "palt";
  transform: translateY(-0.1em)
}


#sec01 .ledeBlock > p{
  display: block;
  width: calc(650 * (100vw / 750));
  font-size: calc(23 * (100vw / 750));
  line-height: 1.869565217391304;
  /*letter-spacing: 0.075em;*/
  letter-spacing: 0.045em;
  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: 100%;
  overflow: hidden;
  position: relative;
}


#sec01 .secSubTTL{
  display: block;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(100 * (100vw / 750));
  line-height: 1;
  letter-spacing: 0.075em;
  color: #DCDCDC;
  transform: rotate(90deg);
  transform-origin: center center;
  pointer-events: none;
  position: absolute;
  left: calc(414.6719 * (100vw / 750));
  top: calc(2982 * (100vw / 750));
}

#sec01 .img01{
  width: calc(500 * (100vw / 750));
  margin: 0 auto calc(124 * (100vw / 750)) calc(50 * (100vw / 750));
}
#AU250108DEVICE1NEWMODEL #sec01 .img01 .creditArea{
  padding-top: calc(50 * (100vw / 750));
  text-align: right;
}

#sec01 .img02{
  width: calc(550 * (100vw / 750));
  margin: 0 calc(51 * (100vw / 750)) calc(130 * (100vw / 750)) auto;
  position: relative;
}
#AU250108DEVICE1NEWMODEL #sec01 .img02 .creditArea{
  position: absolute;
  bottom: calc(52 * (100vw / 750));
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

#AU250108DEVICE1NEWMODEL #sec01 .img02 .creditLinks > a{color: #FFFFFF;}


#sec01 .img03{
  width: calc(398.5044 * (100vw / 750));
  margin: 0 auto 0 0;
  position: relative;
  z-index: 2;
}
#AU250108DEVICE1NEWMODEL #sec01 .img03 .creditArea{
  padding-top: calc(50 * (100vw / 750));
}


#sec01 .img04{
  width: calc(408 * (100vw / 750));
  margin: calc(-188 * (100vw / 750)) 0 calc(134 * (100vw / 750)) auto;
  position: relative;
  z-index: 1;
}
#AU250108DEVICE1NEWMODEL #sec01 .img04 .creditArea{
  padding-top: calc(48 * (100vw / 750));
}


#sec01 .img05{
  width: calc(550 * (100vw / 750));
  margin: 0 auto 0 0;
  transform: translateX(calc(-34.0157 * (100vw / 750)));
}

#AU250108DEVICE1NEWMODEL #sec01 .img05 .creditArea{
  position: absolute;
  bottom: calc(50 * (100vw / 750));
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

#AU250108DEVICE1NEWMODEL #sec01 .img05 .creditLinks > a{color: #FFFFFF;}



/*******************************
sec02
*******************************/
#sec02{
  display: block;
  width: 100%;
  margin: 0 auto calc(210 * (100vw / 750));
  overflow: hidden;
  position: relative;
}


#sec02 .sec02Bg{
  display: block;
  width: 100%;
  height: calc(100% - 472 * (100vw / 750) - 358 * (100vw / 750));
  background: #002800;
  position: absolute;
  left: 0;
  top: calc(472 * (100vw / 750));
  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: calc(600 * (100vw / 750));
  margin: 0 auto calc(200 * (100vw / 750));
  position: relative;
  z-index: 2;
}


#sec02 .img01 .ecLimitedText{
  display: block;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(116 * (100vw / 750));
  line-height: 1;
  letter-spacing: -0.01em;
  color: #003200;
  text-align: center;
  margin-bottom: calc(-20 * (100vw / 750));
  white-space: nowrap;
  transform: translateX(calc(-8 * (100vw / 750)));
}

#AU250108DEVICE1NEWMODEL #sec02 .img01 .creditArea{
  position: absolute;
  bottom: calc(-66 * (100vw / 750));
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

#AU250108DEVICE1NEWMODEL #sec02 .img01 .creditLinks > a{color: #FFFFFF;}



/* ledeBlock *********/
#sec02 .ledeBlock{
  display: block;
  width: calc(700 * (100vw / 750));
  margin: 0 auto calc(122 * (100vw / 750)) 0;
  padding-left: calc(50 * (100vw / 750));
  position: relative;
  z-index: 2;
}

#sec02 .ledeBlock .secTTL{
  display: block;
  margin-bottom: calc(42 * (100vw / 750));
  text-align: left;
}

#sec02 .ledeBlock .secTTL > span:nth-of-type(1){
  display: block;
  padding-bottom: calc(10 * (100vw / 750) + 1px);
  margin-bottom: calc(18 * (100vw / 750));
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(28 * (100vw / 750));
  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% + 50 * (100vw / 750));
}

#sec02 .ledeBlock .secTTL > span:nth-of-type(2){
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  gap: 0 calc(18 * (100vw / 750));
}

#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: calc(50 * (100vw / 750));
  line-height: 1;
  letter-spacing: 0.04em;
  color: #FFFFFF;
  white-space: nowrap;
}

#sec02 .ledeBlock .secTTL > span:nth-of-type(2) > span:nth-of-type(2){
  display: block;
  font-weight: 600;
  font-style: normal;
  font-size: calc(40*(100vw / 750));
  line-height: 1;
  letter-spacing: 0.13em;
  color: #FFFFFF;
  font-feature-settings: "palt";
  transform: translateY(-0.1em);
  white-space: nowrap;
}


#sec02 .ledeBlock > p{
  display: block;
  font-size: calc(23 * (100vw / 750));
  line-height: 1.869565217391304;
  letter-spacing: 0.08em;
  font-feature-settings: "palt";
  text-align: justify;
  overflow-wrap: break-word;
  word-break: break-word;
  line-break: strict;
  color: #FFFFFF;
}


/* img *********/
#sec02 .secInner{
  display: block;
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 2;
}


#sec02 .secSubTTL{
  display: block;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(100 * (100vw / 750));
  line-height: 1;
  letter-spacing: 0.075em;
  color: #143C23;
  white-space: nowrap;
  transform: rotate(90deg);
  transform-origin: center center;
  pointer-events: none;
  position: absolute;
  left: calc(288 * (100vw / 750));
  top: calc(1950 * (100vw / 750));
}

#sec02 .img02{
  width: calc(500 * (100vw / 750));
  margin: 0 auto calc(126 * (100vw / 750)) calc(50 * (100vw / 750));
}
#AU250108DEVICE1NEWMODEL #sec02 .img02 .creditArea{
  padding-top: calc(50 * (100vw / 750));
}
#AU250108DEVICE1NEWMODEL #sec02 .img02 .creditLinks > a{color: #FFFFFF;}


#sec02 .img03{
  width: calc(600 * (100vw / 750));
  margin: 0 0 calc(132 * (100vw / 750)) auto;
}
#AU250108DEVICE1NEWMODEL #sec02 .img03 .creditArea{
  padding-top: calc(50 * (100vw / 750));
}
#AU250108DEVICE1NEWMODEL #sec02 .img03 .creditLinks > a{color: #FFFFFF;}



#sec02 .img04{
  width: calc(500 * (100vw / 750));
  margin: 0 auto calc(132 * (100vw / 750)) calc(46.9173 * (100vw / 750));
}
#AU250108DEVICE1NEWMODEL #sec02 .img04 .creditArea{
  padding-top: calc(50 * (100vw / 750));
}
#AU250108DEVICE1NEWMODEL #sec02 .img04 .creditLinks > a{color: #FFFFFF;}


#sec02 .img05{
  width: calc(650 * (100vw / 750));
  margin: 0 auto;
  position: relative;
}

#sec02 .img05 .ecLimitedText{
  display: block;
  width: 100%;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(124 * (100vw / 750));
  line-height: 1;
  letter-spacing: -0.01em;
  color: #003200;
  text-align: center;
  position: absolute;
  z-index: 1;
  pointer-events: none;
  bottom: calc(-20 * (100vw / 750));
  left: calc(-6 * (100vw / 750));
  white-space: nowrap;
}

#AU250108DEVICE1NEWMODEL #sec02 .img05 .creditArea{
  display: none;
  position: absolute;
  top: calc(50 * (100vw / 750));
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

#AU250108DEVICE1NEWMODEL #sec02 .img05 .creditLinks > a{color: #000000;}


/*******************************
btnViewALL
*******************************/
#AU250108DEVICE1NEWMODEL .btnViewALL{
  display: block;
  width: calc(140 * (100vw / 750));
  margin: 0 auto;
}

#AU250108DEVICE1NEWMODEL .btnViewALL > a{
  display: block;
  width: 100%;
  padding: 0 calc(4.7324 * (100vw / 750) / 2) calc(8 * (100vw / 750));
  border-bottom: 1px solid #000000;
}

#AU250108DEVICE1NEWMODEL .btnViewALL picture,
#AU250108DEVICE1NEWMODEL .btnViewALL img{display: block; width: 100%; height: auto;}

/*******************************
overRide
*******************************/
#AU250108DEVICE1NEWMODEL .pcView{display: none;}











