@charset "UTF-8";

/*
======== table of content. ===============

summary:ワイヤーフレーム要素

==========================================
*/
.forsp { display:none; }
.forpc { display:block; }
.forpc_inline { display: inline-block; }
.onlysp { opacity: 0; height: 0; }

/*----------------------------------------
ベースリンクカラー
------------------------------------------*/
#wrapper a { color:#000; text-decoration:none; transition: opacity .7s cubic-bezier(0.230, 1.000, 0.320, 1.000), background .7s cubic-bezier(0.230, 1.000, 0.320, 1.000), color .7s cubic-bezier(0.230, 1.000, 0.320, 1.000); }
#wrapper a.line { text-decoration:underline; }
#wrapper a:hover { color:#999; }

/*----------------------------------------
html
------------------------------------------*/
html { font-size: 62.5%; }


/*----------------------------------------
body
------------------------------------------*/
body { font-family: 'LTCCaslonPro'; font-size:1.2rem; line-height: 1.5; -webkit-text-size-adjust: 100%; letter-spacing: 0.04em; }

/* wrapper */
#wrapper { opacity: 0; transition: opacity 1s cubic-bezier(0.390, 0.575, 0.565, 1.000); }
.pace-done #wrapper { opacity: 1; }
#wrapper img { width:100%; height: auto; }


/*メイン*/
#main_photo { margin:8.515% 8.515% 6.13%; }
#main_photo p { position: relative; overflow: hidden; }

/*タイトル*/
.sese_ttl { margin-bottom: 7%; text-align: center; }
.sese_ttl h1 { margin: 0 27.2% 1.56%; opacity: 0; transition: opacity 1s cubic-bezier(0.250, 0.460, 0.450, 0.940); position: relative; overflow: hidden;  }
.sese_ttl h1.addimages { opacity: 1; }
.sese_ttl h1.addimages::before,
.sese_ttl h1.addimages::after {
  animation: 1s cubic-bezier(1.000, 0.000, 0.000, 1.000) forwards;
  background: #fff;
  content: '';
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  z-index: 1;
}
.sese_ttl h1.addimages::before {
  animation-name: img-wrap-before-wide;
  top: 0;
  bottom: 50%;
}

.sese_ttl h1.addimages::after {
  animation-name: img-wrap-after-wide;
  top: 50%;
  bottom: 0;
}
@keyframes img-wrap-before-wide {
  100% {
    transform: translateX(-100%);
  }
}
@keyframes img-wrap-after-wide {
  100% {
    transform: translateX(100%);
  }
}

.sese_ttl h2 { font-size: 2.2rem; opacity: 0; transform: scale(0.95); transition: opacity 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940),transform 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940); transition-delay: 1s; }
.sese_ttl h2.addanim { opacity: 1; transform: scale(1); }

#logo_iena_header { transition-delay: 1.5s; }

/*イントロテキスト*/
.txt_intro { margin-bottom: 14.84%; text-align: center; }

.txt_fade { opacity: 0; transform: translatey(10%); transition: opacity 3s cubic-bezier(0.190, 1.000, 0.220, 1.000),transform 3s cubic-bezier(0.190, 1.000, 0.220, 1.000); font-size: 1.6rem; letter-spacing: 0.06em; text-align: center; }
.txt_fade.addanim { opacity: 1; transform: translatey(0); }

#txt_main_02 { transition-delay: .4s; }
#txt_main_03 { transition-delay: .8s; }
#txt_main_04 { transition-delay: 1.1s; }

.txt_main.txt_margin { margin-bottom: 20px; }

/*写真2枚組*/
.sec_twin { display: flex; justify-content: space-between; margin: 0 8.515% 2.22%; }
.sec_twin .photo { position: relative; width:49.38%; opacity: 0; transform: scale(0.95); transition: opacity 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940),transform 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940); }
.sec_twin .photo.photo_r { transition-delay: .5s; }

.sec_twin .photo.addanim { opacity: 1; transform: scale(1); }

/*写真4枚組*/
#photo_4th { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 0 16.56%; }
#photo_4th .photo { position: relative; width:48.77%; margin-bottom: 2.22%; opacity: 0; transform: scale(0.95); transition: opacity 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940),transform 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940); }
#photo_4th .photo.photo_4_2 { transition-delay: .5s; }
#photo_4th .photo.photo_4_3 { transition-delay: 1s; }
#photo_4th .photo.photo_4_4 { transition-delay: 1.5s; }

#photo_4th .photo.addanim { opacity: 1; transform: scale(1); }


#wide_photo { position: relative; opacity: 0; transform: scale(0.95); transition: opacity 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940),transform 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940); position: relative; overflow: hidden; margin: 0 8.515% 2.22%; }

#wide_photo.addanim{ opacity: 1; transform: scale(1); }


.hover_color { position: absolute; top:0; left: 0; transition: opacity 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940); 

}
.hover_color:hover { opacity: 0; }

.logo_iena { width:11%; margin: 0 auto 30px; opacity: 0; transition: opacity 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940); }
.logo_iena.addanim,
.logo_iena#logo_iena_footer { opacity: 1; }


.sec_credit { opacity: 0; transform: translatey(10%); transition: opacity 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940),transform 0.8s cubic-bezier(0.250, 0.460, 0.450, 0.940); margin: 0 8.515% 14.0625%; font-family: 'Adobe Caslon Pro Regular',serif; font-size: 1.1rem; letter-spacing: 0.06em; text-align: center; }


.sec_credit.addanim { opacity: 1; transform: translatey(0); }

.sec_credit#credit_6 { margin-bottom: 104px; }


.sese_movie { margin: 0 24.6% 104px; }

.sec_movie {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
}

.sec_movie video,
.sec_movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
}

.credit p { display: inline-block; }
.credit p a { display: block; padding-bottom: 0.5em; }

.credit p a .sec_item { text-decoration: underline; }

.credit p:not(:last-child) { margin-right: 0.5em; }

#txt_copyright { padding-bottom: 30px; font-family: 'Adobe Caslon Pro Regular',serif; font-size: 1rem; letter-spacing: 0.06em; text-align: center; }

/****** 文字要素設定 ******/
/* スタクレ */
.txt_staff { margin: 0 auto 80px; line-height: 150%; text-align: center;  }
.txt_staff p { color:#000; font-size: 0.8rem; font-family: "Gotham A", "Gotham B"; font-style: normal; text-transform: uppercase; }


.logo { width:9.5%; margin: 0 auto 3.81%; }


/* クレジット */

/****** その他要素設定 ******/
.venobox { cursor: default; }


/*----------------------------------------
wrapper
------------------------------------------*/

/*----------------------------------------
ヘッダー
------------------------------------------*/

/* easing 
$linear: cubic-bezier(0.250, 0.250, 0.750, 0.750);
$ease: cubic-bezier(0.250, 0.100, 0.250, 1.000);
$ease-in: cubic-bezier(0.420, 0.000, 1.000, 1.000);
$ease-out: cubic-bezier(0.000, 0.000, 0.580, 1.000);
$ease-in-out: cubic-bezier(0.420, 0.000, 0.580, 1.000);

$easeInQuad: cubic-bezier(0.550, 0.085, 0.680, 0.530);
$easeInCubic: cubic-bezier(0.550, 0.055, 0.675, 0.190);
$easeInQuart: cubic-bezier(0.895, 0.030, 0.685, 0.220);
$easeInQuint: cubic-bezier(0.755, 0.050, 0.855, 0.060);
$easeInSine: cubic-bezier(0.470, 0.000, 0.745, 0.715);
$easeInExpo: cubic-bezier(0.950, 0.050, 0.795, 0.035);
$easeInCirc: cubic-bezier(0.600, 0.040, 0.980, 0.335);
$easeInBack: cubic-bezier(0.600, -0.280, 0.735, 0.045);

$easeOutQuad: cubic-bezier(0.250, 0.460, 0.450, 0.940);
$easeOutCubic: cubic-bezier(0.215, 0.610, 0.355, 1.000);
$easeOutQuart: cubic-bezier(0.165, 0.840, 0.440, 1.000);
$easeOutQuint: cubic-bezier(0.230, 1.000, 0.320, 1.000);
$easeOutSine: cubic-bezier(0.390, 0.575, 0.565, 1.000);
$easeOutExpo: cubic-bezier(0.190, 1.000, 0.220, 1.000);
$easeOutCirc: cubic-bezier(0.075, 0.820, 0.165, 1.000);
$easeOutBack: cubic-bezier(0.175, 0.885, 0.320, 1.275);

$easeInOutQuad: cubic-bezier(0.455, 0.030, 0.515, 0.955);
$easeInOutCubic: cubic-bezier(0.645, 0.045, 0.355, 1.000);
$easeInOutQuart: cubic-bezier(0.770, 0.000, 0.275, 1.000);
$easeInOutQuint: cubic-bezier(0.860, 0.000, 0.070, 1.000);
$easeInOutSine: cubic-bezier(0.445, 0.050, 0.550, 0.950);
$easeInOutExpo: cubic-bezier(1.000, 0.000, 0.000, 1.000);
$easeInOutCirc: cubic-bezier(0.785, 0.135, 0.150, 0.860);
$easeInOutBack: cubic-bezier(0.680, -0.550, 0.265, 1.550);
*/


/*loading*/
.pace {
  -webkit-pointer-events: none;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  z-index: 2000;
  position: fixed;
  margin: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  width: 200px;
  background: #fff;
  border: 1px solid #121212;
  overflow: hidden;
}

.pace .pace-progress {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  max-width: 200px;
  position: fixed;
  z-index: 2000;
  display: block;
  position: absolute;
  top: 0;
  right: 100%;
  height: 100%;
  width: 100%;
  background: #121212;
}

.pace.pace-inactive {
  display: none;
}
