@charset "UTF-8";

/* ===============================================### 
可変設定
###=============================================== */
.AU250618MULTIFUNCTION {
  /*デザインの値*/
  --pc-width: 1400;/*PCデザイン幅*/
  --sp-width: 750;/*SPデザイン幅*/
  --pc-artboard-width: 480;/*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) {
  .AU250618MULTIFUNCTION {
  --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) {
  .AU250618MULTIFUNCTION {
  --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width)); /* PCとSPのデザイン幅の比 */
  --variable: calc(100vw / var(--pc-width)); /* 画面幅に基づく可変値 */
  }
}

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


/* ===============================================### 
初期設定
###=============================================== */
.AU250618MULTIFUNCTION{
  /* position: relative; */
  --font-hiragino: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  --font-nimbus: "nimbus-sans", sans-serif;
  --font-trajan: "trajan-pro-3", serif;
  font-style: normal;
  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --color-white: #ffffff;
  --color-black: #000000;
  --color-blue: #50a8bc;
  color: #000000;
}

.AU250618MULTIFUNCTION img,
.AU250618MULTIFUNCTION video{
  width: 100%;
  height: auto;
}

/* ===========### PC用設定 ###=========== */
@media screen and (min-width: 768px) {
  .header__wrapper{
    position: fixed;
    top: 0;
    width: 100%;
    z-index: var(--zindex-header);
  }

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

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

  .AU250618MULTIFUNCTION .bg-image{
    background-color: #fff;
  }

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

/* ===========### SP用設定 ###=========== */
@media screen and (max-width: 767px) {
  .header__wrapper{
    position: absolute;
    width: 100%;
  }

  .AU250618MULTIFUNCTION{
    overflow: clip;
    padding-top: calc(20 * var(--formula));
  }
  
  .AU250618MULTIFUNCTION .pc-visible{
    display: none;
  }

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


/* ===============================================### 
left-area, right-area, center-area 設定
###=============================================== */
@media screen and (min-width: 768px) {
  .AU250618MULTIFUNCTION .section-wrap.grid-wrapper {
    position: relative;
    display: grid;
    grid-template-columns: 1fr calc(750 * var(--formula)) 1fr;
  }

  .AU250618MULTIFUNCTION .left-area {
    position: sticky;
    grid-column: 1;
    top: 0;
    height: 100vh;
    display: grid;
    place-content: center;
    background-color: var(--color-white);
  }

  .AU250618MULTIFUNCTION .center-area {
    grid-column: 2;
  }

  .AU250618MULTIFUNCTION .right-area {
    position: sticky;
    grid-column: 3;
    top: 0;
    height: 100vh;
    display: grid;
    place-content: center;
    background-color: var(--color-white);
  }

  /************** image **************/
  .AU250618MULTIFUNCTION .left-area .fixed_title {
    position: relative;
    left: calc(-16 * var(--formula));
    grid-column: 1;
    width: calc(119 * var(--formula_pc));
  }

  .AU250618MULTIFUNCTION .right-area .fixed_title {
    position: relative;
    left: calc(14 * var(--formula));
    grid-column: 1;
    width: calc(63 * var(--formula_pc));
  }
}

@media screen and (max-width: 767px) {
  .AU250618MULTIFUNCTION .section-wrap{
    width: calc(750 * var(--formula));
  }
}


/* ===============================================### 
アニメーション設定
###=============================================== */
/************** fade **************/
.AU250618MULTIFUNCTION .js-fade-trigger .js-fade-mvImage{
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

.AU250618MULTIFUNCTION .js-fade-trigger.show .js-fade-mvImage{
  opacity: 1;
  -ms-filter: none;
  filter: none;
  -webkit-transition: opacity 880ms 440ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -moz-transition: opacity 880ms 440ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: opacity 880ms 440ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -ms-transition: opacity 880ms 440ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 880ms 440ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.AU250618MULTIFUNCTION .js-fade-trigger .js-fade-mvText{
  position: absolute;
  top: 40.396659707724424%;
  left: 50%;
  -webkit-transform: translate3d(-50%, 2%, 0);
  -moz-transform: translate3d(-50%,2%,0);
  -o-transform: translate3d(-50%,2%,0);
  -ms-transform: translate3d(-50%,2%,0);
  transform: translate3d(-50%, 2%, 0);
  text-align: center;
  color: #fff;
  z-index: 10;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

.AU250618MULTIFUNCTION .js-fade-trigger.show .js-fade-mvText{
  opacity: 1;
  -ms-filter: none;
  filter: none;
  -webkit-transform: translate3d(-50%, 0, 0);
  -moz-transform: translate3d(-50%,0,0);
  -o-transform: translate3d(-50%,0,0);
  -ms-transform: translate3d(-50%,0,0);
  transform: translate3d(-50%, 0, 0);
  -webkit-transition: opacity 380ms 1220ms cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 380ms 1220ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -moz-transition: opacity 380ms 1220ms cubic-bezier(0.25, 0.46, 0.45, 0.94), -moz-transform 380ms 1220ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: opacity 380ms 1220ms cubic-bezier(0.25, 0.46, 0.45, 0.94), -o-transform 380ms 1220ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -ms-transition: opacity 380ms 1220ms cubic-bezier(0.25, 0.46, 0.45, 0.94), -ms-transform 380ms 1220ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: opacity 380ms 1220ms cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 380ms 1220ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.AU250618MULTIFUNCTION .js-side-text{
  opacity: 0;
  visibility: hidden;
  transform: translateY(-20px);
  transition: all 0.5s ease;
}

.AU250618MULTIFUNCTION .js-side-text.show{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.AU250618MULTIFUNCTION .js-fade-image {
  opacity: 0;
  transition: opacity 1.3s;
}

.AU250618MULTIFUNCTION .js-fade-image.show {
  opacity: 1;
}

.AU250618MULTIFUNCTION .js-fade-text{
  opacity: 0;
  transform: translateY(15px);
  transition: 0.5s ease;
}

.AU250618MULTIFUNCTION .js-fade-text.show {
  opacity: 1;
  transform: translateY(0);
}


/* ===============================================### 
コンテンツ共通設定
###=============================================== */
.AU250618MULTIFUNCTION .product{
}

.AU250618MULTIFUNCTION .credit{
  font-family: var(--font-nimbus);
  font-size: calc(24 * var(--formula));
  font-feature-settings: "palt";
  letter-spacing: 0.005em;
  text-align: center;
}

.AU250618MULTIFUNCTION .credit a{
  display: inline-block;
  text-decoration: underline;
  text-decoration-skip-ink: none;
}

.AU250618MULTIFUNCTION .product__text{
  width: fit-content;
  margin-inline: auto;
}

.AU250618MULTIFUNCTION .product-feature{
  font-family: var(--font-hiragino);
  font-size: calc(40 * var(--formula));
  font-weight: var(--fw-medium);
  font-feature-settings: "palt";
  letter-spacing: 0.26em;
  color: var(--color-white);
}

.AU250618MULTIFUNCTION .product-feature.text-box{
  width: calc(700 * var(--formula));
  height: calc(80 * var(--formula));
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-blue);
}

.AU250618MULTIFUNCTION .product-detail{
  font-family: var(--font-hiragino);
  font-size: calc(23 * var(--formula));
  font-weight: var(--fw-medium);
  line-height: 1.8695652174;
  font-feature-settings: "palt";
  letter-spacing: 0.107em;
  text-align: justify;
}

.AU250618MULTIFUNCTION .product-detail.text-box{
  width: calc(600 * var(--formula));
  margin-top: calc(72 * var(--formula));
  margin-inline: auto;
}

/* ===========### responsive ###=========== */
@media screen and (max-width: 767px) {
  .AU250618MULTIFUNCTION .product-detail.text-box{
    margin-top: calc(74 * var(--formula));
  }
}


/* ===============================================### 
MV
###=============================================== */
.AU250618MULTIFUNCTION .mv{
  width: 100%;
}

.AU250618MULTIFUNCTION .mv .content-inner{
}

.AU250618MULTIFUNCTION .mv .item-wrap{
  position: relative;
}

.AU250618MULTIFUNCTION .mv .text-wrap{
  position: absolute;
  top: 42.4%;
  left: 50%;
  transform: translateX(-50%);
  pointer-events: none;
}

/************** text **************/
.AU250618MULTIFUNCTION .mv .mv__text{
  text-align: center;
}

.AU250618MULTIFUNCTION .mv .mv__text.main-title{
  position: relative;
  margin-top: calc(34 * var(--formula));
  font-family: var(--font-trajan);
  font-size: calc(75 * var(--formula));
  font-weight: var(--fw-semibold);
  letter-spacing: 0.11em;
  color: var(--color-blue);
}

.AU250618MULTIFUNCTION .mv .mv__text.main-title::before,
.AU250618MULTIFUNCTION .mv .mv__text.main-title::after{
  content: '';
  position: absolute;
  width: calc(23 * var(--formula));
  height: calc(52 * var(--formula));
  background-repeat: no-repeat;
  background-size: contain;
}

.AU250618MULTIFUNCTION .mv .mv__text.main-title::before{
  top: calc(-4 * var(--formula));
  left: calc(-22 * var(--formula));
  background-image: url('../img/mark01.svg');
}

.AU250618MULTIFUNCTION .mv .mv__text.main-title::after{
  top: calc(15 * var(--formula));
  right: calc(-28 * var(--formula));
  width: calc(24 * var(--formula));
  background-image: url('../img/mark02.svg');
}

.AU250618MULTIFUNCTION .mv .mv__text.main-title span.ampersand{
  position: relative;
  top: calc(-3 * var(--formula));
  font-size: calc(62 * var(--formula));
}

.AU250618MULTIFUNCTION .mv .mv__text.sub-title{
  font-family: var(--font-nimbus);
  font-size: calc(60 * var(--formula));
  font-weight: var(--fw-bold);
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  line-height: 0.96;
  color: var(--color-white);
}

.AU250618MULTIFUNCTION .mv .mv__text.lead{
  margin-top: calc(83 * var(--formula));
  font-family: var(--font-hiragino);
  font-size: calc(23 * var(--formula));
  font-weight: var(--fw-medium);
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: var(--color-white);
}


/************** image **************/
.AU250618MULTIFUNCTION .mv .mv__image{
}

/* ===========### responsive ###=========== */
@media screen and (max-width: 767px) {
  .AU250618MULTIFUNCTION .mv .text-wrap{
    top: calc(325 * var(--formula));
  }

  .AU250618MULTIFUNCTION .mv .text-wrap,
  .AU250618MULTIFUNCTION .mv .text-wrap .js-fade-mvText{
    width: 100%;
  }

  /************** text **************/
  .AU250618MULTIFUNCTION .mv .mv__text.main-title{
    width: fit-content;
    margin-inline: auto;
    margin-top: calc(34 * var(--formula));
    font-size: calc(70 * var(--formula));
    letter-spacing: 0.08em;
  }
  
  .AU250618MULTIFUNCTION .mv .mv__text.main-title::before,
  .AU250618MULTIFUNCTION .mv .mv__text.main-title::after{
    width: calc(23 * var(--formula));
    height: calc(52 * var(--formula));
  }
  
  .AU250618MULTIFUNCTION .mv .mv__text.main-title::before{
    top: calc(-4 * var(--formula));
    left: calc(-22 * var(--formula));
  }
  
  .AU250618MULTIFUNCTION .mv .mv__text.main-title::after{
    top: calc(10 * var(--formula));
    right: calc(-25 * var(--formula));
    width: calc(24 * var(--formula));
  }
  
  .AU250618MULTIFUNCTION .mv .mv__text.main-title span.ampersand{
    font-size: calc(55 * var(--formula));
  }
  
  .AU250618MULTIFUNCTION .mv .mv__text.sub-title{
    font-size: calc(40 * var(--formula));
    letter-spacing: 0.02em;
  }
  
  .AU250618MULTIFUNCTION .mv .mv__text.lead{
    margin-top: calc(115 * var(--formula));
    letter-spacing: 0.1em;
    color: var(--color-black);
  }
}


/* ===============================================### 
セクション01
###=============================================== */
.AU250618MULTIFUNCTION .product01{
  margin-top: calc(280 * var(--formula));
}

.AU250618MULTIFUNCTION .product01 .product-inner{
}

/************** text **************/
.AU250618MULTIFUNCTION .product01 .credit{
  margin-top: calc(40 * var(--formula));
}

/************** image **************/
.AU250618MULTIFUNCTION .product01 .product__image{
  width: calc(750 * var(--formula));
}

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

  /************** text **************/
  .AU250618MULTIFUNCTION .product01 .credit{
    margin-top: calc(39 * var(--formula));
  }
}


/* ===============================================### 
セクション02
###=============================================== */
.AU250618MULTIFUNCTION .product02{
  margin-top: calc(117 * var(--formula));
}

.AU250618MULTIFUNCTION .product02 .product-inner{
}

.AU250618MULTIFUNCTION .product02 .product__item01{
  margin-top: calc(95 * var(--formula));
}

.AU250618MULTIFUNCTION .product02 .product__item02{
  margin-top: calc(130 * var(--formula));
  margin-left: calc(26 * var(--formula));
  margin-right: auto;
}

.AU250618MULTIFUNCTION .product02 .product__item03{
  margin-top: calc(100 * var(--formula));
  margin-left: calc(147 * var(--formula));
  margin-right: auto;
}

/************** text **************/
.AU250618MULTIFUNCTION .product02 .product-feature.text-box{
}

.AU250618MULTIFUNCTION .product02 .product-detail.text-box{
}

/************** image **************/
.AU250618MULTIFUNCTION .product02 .product__video{
  width: calc(750 * var(--formula));
}

.AU250618MULTIFUNCTION .product02 .product__image{
  width: calc(580 * var(--formula));
}

/* ===========### responsive ###=========== */
@media screen and (max-width: 767px) {
  .AU250618MULTIFUNCTION .product02 .product__item01{
    margin-top: calc(93 * var(--formula));
  }

  .AU250618MULTIFUNCTION .product02 .product__item02{
    margin-top: calc(152 * var(--formula));
  }
}


/* ===============================================### 
セクション03
###=============================================== */
.AU250618MULTIFUNCTION .product03{
  margin-top: calc(200 * var(--formula));
}

.AU250618MULTIFUNCTION .product03 .product-inner{
}

.AU250618MULTIFUNCTION .product03 .product__item01{
  margin-top: calc(87 * var(--formula));
}

.AU250618MULTIFUNCTION .product03 .product__item02{
  margin-top: calc(128 * var(--formula));
  margin-left: calc(147 * var(--formula));
  margin-right: auto;
}

.AU250618MULTIFUNCTION .product03 .product__item03{
  margin-top: calc(98 * var(--formula));
  margin-left: calc(27 * var(--formula));
  margin-right: auto;
}

.AU250618MULTIFUNCTION .product03 .product__item04{
  margin-top: calc(182 * var(--formula));
}

/************** text **************/
.AU250618MULTIFUNCTION .product03 .product-feature.text-box{
  /* margin-top: calc(60 * var(--formula)); */
}

.AU250618MULTIFUNCTION .product03 .product-detail.text-box{
  margin-top: calc(69 * var(--formula));
}

/************** image **************/
.AU250618MULTIFUNCTION .product03 .product__item01 .product__image,
.AU250618MULTIFUNCTION .product03 .product__item04 .product__image{
  width: calc(750 * var(--formula));
}

.AU250618MULTIFUNCTION .product03 .product__item02 .product__image,
.AU250618MULTIFUNCTION .product03 .product__item03 .product__image{
  width: calc(580 * var(--formula));
}


/* ===============================================### 
VIEW ALL
###=============================================== */
.AU250618MULTIFUNCTION .link__button{
  margin-top: calc(265 * var(--formula));
  padding-bottom: calc(269 * var(--formula));
}

.AU250618MULTIFUNCTION .link__button p{
  font-family: var(--font-nimbus);
  font-size: calc(30 * var(--formula));
  letter-spacing: 0.037em;
  text-align: center;
  color: var(--color-black);
}

.AU250618MULTIFUNCTION .link__button a{
  display: inline-block;
  text-decoration: underline;
  text-underline-offset: calc(11 * var(--formula));
}

/* ===========### responsive ###=========== */
@media screen and (max-width: 767px) {
  .AU250618MULTIFUNCTION .link__button{
    margin-top: calc(200 * var(--formula));
    padding-bottom: calc(92 * var(--formula));
  }

  .AU250618MULTIFUNCTION .link__button p{
    font-size: calc(31 * var(--formula));
  }

  .AU250618MULTIFUNCTION .link__button a{
    text-underline-offset: calc(8 * var(--formula));
  }
}