@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;700&display=swap');


/* Base Setting
==========================================================*/

html { font-size: 62.5%; height: 100%;}
body { font-size: 1.4rem; line-height: 1.75; font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Arial, sans-serif;
font-style: normal; font-weight: 400; margin:0; padding: 0; color: #000; -webkit-text-size-adjust: 100%; letter-spacing: .1rem; background: #fff; height: 100%;}
@media all and (min-width: 769px) and (-ms-high-contrast: none) {
  body { letter-spacing: 0.02em; line-height: 1.75;}
}

a       { text-decoration: none; color: #000; outline: none; -webkit-transition: all .4s; transition: all .4s;}
a:hover { text-decoration: none; }
a.underline { text-decoration: underline;}
a.block { display: block;}
img { -ms-interpolation-mode: bicubic; max-width: 100%; height: auto; vertical-align: middle; }
a img { box-shadow: #000 0 0 0;}
:focus { outline: 0; }
::-moz-selection { background: #222; color: #fff;}
::selection { background: #222; color: #fff;}

/* fonts */
.fn-UR { font-family: 'Ubuntu', sans-serif; font-style: normal; font-weight: 400;}
.fn-UB { font-family: 'Ubuntu', sans-serif; font-style: normal; font-weight: 700;}

.lesp-2 { letter-spacing: .2rem;}
.lesp-3 { letter-spacing: .3rem;}
.lesp-4 { letter-spacing: .4rem;}
.lesp-5 { letter-spacing: .5rem;}

/* color */
.c_white { color: #fff;}
.bg_black { background: #000;}
.border_B { border-bottom: 1px solid rgba(0, 0, 0, 0.5); box-sizing: border-box;}

/* 2行目字下げ */
.indent li { margin-left: 1.3rem; text-indent: -1.3rem;}

/* リンク削除 */
a.disabled { pointer-events: none; opacity:0.5;-moz-opacity:0.5; filter: alpha(opacity=50); }

/* object fit */
.obf, .ofi { -o-object-fit: cover; object-fit: cover; -o-object-position: center; object-position: center; font-family: 'object-fit: cover; object-position: center;'; height: 100%; width: 100%; }

.container-item-img img{
    display: block;
    font-family: 'object-fit: contain;';
    height: 150px;
    object-fit: contain;
    width: 100%;
}

/* スクロールバー非表示 */
.non-scrollbar {
 -ms-overflow-style: none;  /* IE, Edge 対応 */
 scrollbar-width: none;     /* Firefox 対応 */
}
.non-scrollbar::-webkit-scrollbar {
 display:none; /* Chrome, Safari 対応 */
}


.hover_expansion { overflow: hidden;}
.hover_expansion img { will-change: transform;
transition: transform 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
@media screen and (min-width: 769px) {
  .hover_expansion a:hover img,
  a:hover .hover_expansion img { -webkit-transform: scale(1.1); transform: scale(1.1);}
}








/* hack
========================================================== */

.sp-hide { display: block;}
.sp-hide-inline { display: inline;}
.sp-show { display:none;}
.sp-show-inline { display:none;}
.sp-show-350, .sp-show-420, .sp-show-520, .sp-show-620 { display:none;}
.sp-hide-350, .sp-hide-420, .sp-hide-520, .sp-hide-620 { display:inline;}


/* ------------------------------------ */


@media screen and (max-width: 768px) {

.sp-hide-inline, .sp-hide { display: none !important;}
.sp-show { display:block;}
.sp-show-inline { display:inline;}
.sp-br-none br, br.sp-br-none {display: none;}

.sp-no-flex { display: block;}

   @media screen and (max-width: 620px) {
     .sp-show-620 { display:inline;}
     .sp-hide-620 { display:none;}
   }

   @media screen and (max-width: 520px) {
     .sp-show-520 { display:inline;}
     .sp-hide-520 { display:none;}
   }

   @media screen and (max-width: 420px) {
     .sp-show-420 { display:inline;}
     .sp-hide-420 { display:none;}
   }

   @media screen and (max-width: 350px) {
     .sp-show-350 { display:inline;}
     .sp-hide-350 { display:none;}
   }


img { max-width: 100%; height: auto;}


}


/* main-layout
==========================================================*/

#wrapper { width: 100%;}

.wrap { width: 86%; max-width: 1000px; margin: 0 auto;}


.col {}
  .col-l { float: left;}
  .col-r { float: right;}

.order1 { order: 1;}

#fixed_logo { position: fixed; left: 120px; top: 100px; z-index: 9991;}
#fixed_logo a { width: 180px; height: 21px; background: url(../images/common/logo.svg); background-size: 180px 21px;}
#fixed_logo.change-color a { width: 180px; height: 21px; background: url(../images/common/logo-w.svg); background-size: 180px 21px;}

#Container { margin-top: 230px;}

.Layout_Box { width: 86%; max-width: 1065px; transform: translateX(70px); margin: 0 auto;}
.Layout_Left { width: 200px; margin-top: -2px;}
.Layout_Left ul li { margin-bottom: 14px;}
.Layout_Right { width: 75%; max-width: 750px; padding-bottom: 180px;}
.Layout_Right.Layout_Right_type700 { width: 700px;}
.Layout_Right.Layout_Right_type650 { width: 650px;}

.Layout_Right_ttl { margin-bottom: 65px;}
.Layout_Right_ttl .h1ttl {}
.Layout_Right_ttl .place { margin-top: 3px;}

@media screen and (max-width: 1400px) {
  .Layout_Box { width: 81%; transform: translateX(0); margin: 0 80px 0 auto; }
}
@media screen and (max-width: 1060px) {
  #fixed_logo { left: 80px;}
  .Layout_Box { width: -webkit-calc(100% - 160px); width: -moz-calc(100% - 160px); width: calc(100% - 160px); margin: 0 auto;}
  .Layout_Left { display: none;}
  .Layout_Right { margin-left: auto; width: 100%;}
}
@media screen and (max-width: 768px) {
  #fixed_logo { width: 180px; left: 0; right: 0; margin: auto; top: 50px;}
  #Container { margin-top: 170px;}
  .Layout_Box { width: 86%;}
  .Layout_Right { padding-bottom: 100px;}
}
@media screen and (max-width: 500px) {
  .Layout_Right_ttl { margin-bottom: 50px;}
}



/* header
==========================================================*/

/* menu */
#menu { display: none; width: 100%; height: 100vh; position: fixed; top: 0; left: 0; background: #000; z-index: 999;
overflow-y: scroll; -webkit-overflow-scrolling: touch; overflow-scrolling: touch;}
  #menu .menu_inner { width: 100%; height: 100vh; justify-content: center; align-items: center; padding: 50px 0; box-sizing: border-box; min-height: 500px;}

  #menu ul.menu_nav li { line-height: 1; margin-bottom: 16px; }
  #menu ul.menu_nav li a { display: block; padding: 10px 0; color: #fff;}

  @media screen and (max-width: 768px) {
    #menu .menu_inner { display: block; padding-top: 150px;}
    #menu .menu_sns { margin: 60px auto 100px;}
    #menu .menu_sns a { color: #fff;}
    .menu_copy { position: fixed; top: 43.6%; left: -15px; transform: rotate(90deg); }

    @media screen and (min-height: 700px) {
      #menu .menu_inner { padding-top: 27vh;}
    }
  }
  @media screen and (max-width: 450px) {
    #menu .menu_inner { padding-top: 135px;}
    #menu ul.menu_nav { font-size: 1.2em; letter-spacing: .35rem;}
    #menu ul.menu_nav li { margin-bottom: 10px; }
    #menu ul.menu_nav li a { padding: 7px 0; }
    #menu .menu_sns { margin: 45px auto 100px; }

    @media screen and (min-height: 600px) {
      #menu .menu_inner { padding-top: 27vh;}
    }
  }


/* menu trigger */
.navInner { display: block; position: fixed; right: 63px; z-index: 99999 !important; top: 81px; height: 60px; width: 60px;}
.menu-trigger { width: 20px; height: 20px; line-height: inherit; position: relative; top: 20px; left: 23px; z-index: 9999;transform: rotate(-90deg);}
.menu-trigger.active { margin-left: 0px; position: relative; z-index: 999999;}
.menu-trigger,
.menu-trigger span { display: inline-block; transition:all .4s; box-sizing: border-box; }
.menu-trigger span{ position: absolute; left: 0; width: 100%; height: 1px; background-color: #000;}
  .menu-trigger span:nth-of-type(1){ top:0;}
  .menu-trigger span:nth-of-type(2){ top: 10px; width: 50%; right: 0; left: 0; margin: auto;}
  .menu-trigger span:nth-of-type(3){ bottom:0;}
  .menu-trigger.active span:nth-of-type(1),
  .menu-trigger.active span:nth-of-type(2){ opacity:0; }
  .menu-trigger.active span:nth-of-type(3){ width: 100%; -webkit-transform:translateY(-9.5px) rotate(45deg);transform:translateY(-9.5px) rotate(45deg); background-color: #fff;}

  @media screen and (max-width: 768px) {
    .navInner { right: 4%; top: 18px; }
  }



/* footer
==========================================================*/

.footer_sns { position: fixed; right: -40px; bottom: 105px; transform: rotate(-90deg); width: 150px; z-index: 1;}
.footer_copy { position: fixed; top: 259px; left: -15px; transform: rotate(90deg);}



/* INDEX
==========================================================*/
#Index {}
.indPage, #Loading_wrap {
  min-height: 100vh; /* カスタムプロパティ未対応ブラウザ用のフォールバック */
  min-height: calc(var(--vh, 1vh) * 100); overflow: hidden;
}
.indPage .Layout_Right { padding-bottom: 0;}
.Index_img { height: -webkit-calc(100vh - 309px); height: -moz-calc(100vh - 309px); height: calc(100vh - 309px); max-height: 650px; }
@media screen and (max-width: 768px) {
  .indPage #Container { margin-top: 45vh; margin-top: calc(var(--vh, 1vh) *45);}
  .indPage #Container .Layout_Box { width: 100%; max-width: 100%;}
  .indPage #Container .Layout_Box .Layout_Right.Layout_Right_type650 { width: 100%; }
  #Index .Layout_Right_ttl { display: none;}
  .Index_img { height: 55vh; height: calc(var(--vh, 1vh) * 55); max-height: 100%; }

  .Ind_sp_place { position: fixed; right: -10px; bottom: 65px; transform: rotate(90deg); z-index: 1;}
  .Ind_sp_copy { position: fixed; width: 80px; top: -10px; left: -15px; transform: rotate(90deg);}
}



/* WORKS
==========================================================*/
#Works {}
.Works_list { max-width: 400px;}
  .Works_list li:not(:last-child) { margin-bottom: 75px;}
  .Works_list li .Works_img { width: 100%; height: 250px;}
  .Works_list li .Works_txt { padding-top: 25px;}
  .Works_list li .Works_txt .Works_txt_ttl { margin-top: 10px;}
  @media screen and (max-width: 768px) {
    .Works_list { max-width: 100%;}
    .Works_list li .Works_img { height: 54vw; width: -webkit-calc(100% + 18%); width: -moz-calc(100% + 18%); width: calc(100% + 18%); margin-left: -9%;}
  }

/* 詳細ページ */
.Works_SP_img {  margin-top: 20px;}
@media screen and (max-width: 768px) {
.Works_SP_img { margin-top: 40px; width: -webkit-calc(100% + 18%); width: -moz-calc(100% + 18%); width: calc(100% + 18%); margin-left: -9%;}
}



/* JOURNAL
==========================================================*/
#Journal {}
.Journal_list {}
  .Journal_list li:not(:last-child) { margin-bottom: 75px;}
  .Journal_list li .Journal_img { width: 100%; height: 360px;}
  .Journal_list li .Journal_txt { padding-top: 25px;}
  .Journal_list li .Journal_txt .Journal_txt_ttl { margin-top: 10px;}
  @media screen and (max-width: 768px) {
    .Journal_list li:not(:last-child) { margin-bottom: 10vw;}
    .Journal_list li .Journal_img { height: 54vw;}
    .Journal_list li .Journal_txt { padding-top: 20px;}
    .Journal_list li .Journal_txt .Journal_txt_ttl { margin-top: 6px;}
  }



/* NEWS
==========================================================*/
#News {}
.News_list {}
  .News_list li:not(:last-child) { margin-bottom: 24px;}
  .News_list li .News_list_date { width: 110px; margin-top: 5px;}
  .News_list li .News_list_ttl { width: -webkit-calc(100% - 110px); width: -moz-calc(100% - 110px); width: calc(100% - 110px);}
  @media screen and (max-width: 500px) {
    .News_list li a > .flex { display: block;}
    .News_list li .News_list_date { width: 100%; margin-top: 0;}
    .News_list li .News_list_ttl { width: 100%; margin-top: 8px;}
  }


/* Post_Tempalate */
.Post_ttl_wrap { margin-bottom: 14px;}
.Post_cnt { margin-top: 50px;}
@media screen and (max-width: 768px) {
  .Post_ttl { font-size: 1.05em;}
  .Post_cnt { margin-top: 7vw; }
}

/* 一覧 pagination */
.pagination { margin-top: 100px; line-height:1; display: inline-block; margin-left: -6px;}
  .pagination span,
  .pagination a { display:block; float:left; margin: 0 10px 0 0; padding: 6px; font-size: 1.2rem; box-sizing: border-box;}
  @media screen and (max-width: 768px) {
    .pagination { margin-top: 80px; }
  }

/* 詳細 pager */
.pager { max-width: 450px; margin: 170px auto 20px;}
  .pager a { font-size: 1.2rem;}
  .pager .pager-prev { left: 0; top: 0; z-index: 1;}
  .pager .pager-list { left: 0; right: 0; margin: auto; top: 0;}
  .pager .pager-next { right: 0; top: 0; z-index: 1;}
  .pager img { position: relative; top: -2px;}
  @media screen and (max-width: 768px) {
    .pager { margin: 80px auto 20px;}
  }



/* SERVICE
==========================================================*/
#Service {}
.Service_list { max-width: 650px;}
  .Service_list li { padding-bottom: 55px; margin-bottom: 80px; border-bottom: 1px solid rgba(0, 0, 0, 0.5);}
  .Service_list li .Service_h2ttl { margin-bottom: 15px;}
  .Service_list li .Service_img {}
  .Service_list li .Service_txt { margin-top: 25px;}
  .Service_list li .Service_link { margin-top: 60px;}
  .Service_list li .Service_link a { display: inline-block; border-bottom: 1px solid rgba(0, 0, 0, 0.5); padding: 0 5px 5px; box-sizing: border-box;}
  @media screen and (max-width: 768px) {
    .Service_list li { padding-bottom: 20vw; margin-bottom: 13vw; }
    .Service_list li:last-child { border-bottom: none; padding-bottom: 0;}
    .Service_list li .Service_h2ttl { font-size: 1.35em; margin-bottom: 10px;}
  }



/* STATEMENT
==========================================================*/
#Statement {}
.Statement_cnt { margin-bottom: 45px; max-width: 650px;}
.Statement_cnt:not(:last-child) { padding-bottom: 100px; border-bottom: 1px solid rgba(0, 0, 0, 0.5);}
.Statement_cnt .Statement_h2ttl { margin-bottom: 45px;}

#S_philo {}
  .S_philo_lead { font-size: 5rem; margin-bottom: 40px;}
  .S_philo_txt p:not(:last-child) { margin-bottom: 25px;}

#S_comp {}
  .S_comp_DL {}
  .S_comp_DL dt { width: 150px; margin-bottom: 12px;}
  .S_comp_DL dd { width: -webkit-calc(100% - 150px); width: -moz-calc(100% - 150px); width: calc(100% - 150px); margin-bottom: 12px;}

#S_access {}
  .S_access_map { margin: 20px 0 40px; overflow: hidden; height: 400px; width: 100%; position: relative;}
  .S_access_map iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; filter:grayscale(100%); -webkit-filter:grayscale(100%);}
  .S_access_txt p { margin-bottom: 2px;}

  @media screen and (max-width: 650px) {
    #Statement .Layout_Right_ttl { display: none;}
    .Statement_cnt:not(:last-child) { padding-bottom: 80px;}

    .S_philo_lead { font-size: 4.5rem; margin-bottom: 30px;}
    .S_philo_txt p:not(:last-child) { margin-bottom: 20px;}

    .S_comp_DL { display: block;}
    .S_comp_DL dt { width: 100%;margin-bottom: 0;}
    .S_comp_DL dd { width: 100%; margin-bottom: 20px;}

    .S_access_map { height: 55vw;}
  }



/* CREATERS
==========================================================*/
#Creaters {}
.Creaters_list {}
  .Creaters_list li { max-width: 200px; width: 28.6%; margin-bottom: 55px;}
  .Creaters_list li .Creaters_txt { margin-top: 20px;}
  .Creaters_list li .Creaters_txt .Creaters_txt_posi { margin-bottom: 3px;}
  @media screen and (max-width: 768px) {
    .Creaters_list li { width: 30.5%; margin-bottom: 45px;}
  }
  @media screen and (max-width: 640px) {
    .Creaters_list li { width: 47%; max-width: 100%;  margin-bottom: 8vw;}
    .Creaters_list li .Creaters_txt { margin-top: 15px;}
  }
  @media screen and (max-width: 500px) {
    .Creaters_list li { width: 100%; margin-bottom: 8vw;}
  }



/* CONTACT
==========================================================*/
#Contact {}
  .Contact_cnt { max-width: 650px;}

/* bodyを引き継がせる（SP:16p以上必須） */
input, textarea, select {
  font-size: 1.4rem; line-height: 1.75; font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Arial, sans-serif;
  font-style: normal; font-weight: 400; color: #000; -webkit-text-size-adjust: 100%; letter-spacing: .1rem;}

table.inqtable { width: 100%;}
  table.inqtable th { display: block; padding: 0 0 6px; width: 100%;}
  table.inqtable td { display: block; padding: 0 0 18px; width: 100%;}
  table.inqtable td input, table.inqtable td textarea { border: none; -webkit-appearance: none; border-radius: 0; padding: 8px 12px; width: 100%; background: #f0f0f0; box-sizing: border-box;}

/* focus時 */
input, textarea { outline: none; -webkit-transition: all .3s; transition: all .3s; }
input:focus, textarea:focus { box-shadow: 0 0 6px #e3e3e3 !important; }

/* スマホオート入力の背景色削除 */
input:-webkit-autofill { -webkit-box-shadow: 0 0 0px 1000px #f0f0f0 inset; box-shadow: 0 0 0px 1000px #f0f0f0 inset;}

/* ie用 */
@media all and (-ms-high-contrast: none){ .selectyaji { display: none; } }
input::-ms-clear, input::-ms-reveal { visibility: hidden; } /* 右に出てくるアイコン削除 */

/* radio buttun */
input[type=radio] { display: none;}
  .radio { padding: 3px 30px 3px 30px; display: inline-block; box-sizing: border-box; position: relative; vertical-align: middle;}
  .radio:before { margin-top: -10px; width: 20px; height: 20px; position: absolute; top: 50%; left: 0; display: block;  border-radius: 50%; content: ''; background: #f0f0f0; border: none; }
  .radio:after { left: 5px; margin-top: -5px; width: 10px; height: 10px;  background: #000; -webkit-transition: all .2s linear; transition: all .2s linear; position: absolute; top: 50%; display: block;  border-radius: 50%; content: ''; opacity: 0; z-index: 2; }
/* input[type=radio]:checked + .radio:before  { box-shadow: 0 0 6px #fff; } */
input[type=radio]:checked + .radio:after  { opacity: 1; }


/* エラーボックス */
.error_box { width: 100%; text-align: left; background: #FFF; border:1px solid #e21a1a; color:#e21a1a; display: none; margin: 25px auto 40px; padding: 20px 30px; box-sizing: border-box;}

/* 送信ボタン */
.submitwrap input[type=submit], .submitwrap input[type=button]
{ font-size: 1.4rem; width: 100%; max-width: 200px; height: 32px; margin: 30px auto 0; background: #fff; -webkit-transition:all .3s; transition:all .3s; border: 1px solid #000; border-radius: 0; box-sizing: border-box; border-radius: 100px; background: #fff;
  display: block; line-height: 31px; text-align: center; box-shadow: none;}
@media screen and (min-width: 769px) {
  .submitwrap input[type=submit]:hover, .submitwrap input[type=button]:hover { background: #000; color: #fff;}
}

/* 確認ページ */
.kakunin_wrap { max-width: 500px; margin: 50px auto 0;}
.kakuninPage_btn { width: 50%;}
.cancelbtn { opacity: .4;}

/* OK・errorページ */
.Contact_sended { margin-bottom: 150px;}
.Contact_sended_ttl { margin-bottom: 25px;}
.Contact_sended_body p { margin-bottom: 15px;}

@media screen and (min-width: 769px) and (min-height: 740px) {
  .Contact_sended { margin-top: 38vh;}
}

@media screen and (max-width: 768px) {
  input, textarea, select { font-size: 16px;}
  textarea { height: 60vw; max-height: 330px;}
  .error_box { padding: 15px 5%; margin: 20px 0 35px; font-size: 1.3rem;}

  /* 確認ページ */
  .kakunin_wrap { max-width: 100%; margin: 50px auto 0; display: block;}
  .kakuninPage_btn { width: 100%;}
  .cancelbtn { opacity: .4;}

  /* OK・errorページ */
  .Contact_sended { margin-bottom: 100px;}
}





/* 下層loader */
.loader { align-items: center; background: #fff; bottom: 0; display: flex; justify-content: center; left: 0; position: fixed; right: 0; top: 0; z-index: 999991; }
/* .loader::after { content: ''; height: 100px;  width: 50%; max-width: 360px; background: url(../images/common/logo.svg) center center no-repeat; background-size: contain;} */

/* トップloader */
#Loading_wrap { position: fixed; width: 100%; z-index: 9999999; background:#fff; text-align:center; color:#000;/*height: 100vh;*/}
.Loading01 { background: #000; color: #fff;}
.Loading01 ul li { width: 50%; height: 50vh; height: calc(var(--vh, 1vh) * 50); justify-content: center; align-items: center;}
.Loading01 ul li .whitecover { display: block; content: ""; z-index: 1; width: 100%; height: 100%; top: 0; left: 0; background: #fff;}
.Loading01 ul li .whitecover.whitecover01 { transform: scaleY(1); animation-name: PageDown01; animation-duration:.7s; animation-timing-function: ease-in; animation-fill-mode:forwards; animation-delay: .5s; }
.Loading01 ul li .whitecover.whitecover02 { transform: scaleY(0); animation-name: PageDown02; animation-duration:.7s; animation-delay: 2s; animation-timing-function: ease-in-out; animation-fill-mode:forwards; }
.Loading01 ul li .whitecover.whitecover03 { transform: scaleY(1); animation-name: PageUp01; animation-duration:.7s; animation-timing-function: ease-in; animation-fill-mode:forwards; animation-delay: .5s;}
.Loading01 ul li .whitecover.whitecover04 { transform: scaleY(0); animation-name: PageUp02; animation-duration:.7s; animation-delay: 2s; animation-timing-function: ease-in-out; animation-fill-mode:forwards; }
.Loading01 ul li .whitecover.whitecover05 { transform: scaleY(1); animation-name: PageUp01; animation-duration:.7s; animation-delay: 3s; animation-timing-function: ease-in; animation-fill-mode:forwards; }
.Loading01 ul li .whitecover.whitecover06 { transform: scaleY(0); animation-name: PageUp02; animation-duration:.7s; animation-delay: 4.5s; animation-timing-function: ease-in-out; animation-fill-mode:forwards; }
.Loading01 ul li .whitecover.whitecover07 { transform: scaleY(1); animation-name: PageDown01; animation-duration:.7s; animation-delay: 3s; animation-timing-function: ease-in; animation-fill-mode:forwards; }
.Loading01 ul li .whitecover.whitecover08 { transform: scaleY(0); animation-name: PageDown02; animation-duration:.7s; animation-delay: 4.5s; animation-timing-function: ease-in-out; animation-fill-mode:forwards; }
  @keyframes PageDown01 {
  	0% { transform-origin:bottom; transform:scaleY(1); }
  	100% { transform-origin:bottom; transform:scaleY(0); }
  }
  @keyframes PageDown02 {
  	0% { transform-origin:top; transform:scaleY(0); }
  	100% { transform-origin:top; transform:scaleY(1); }
  }
  @keyframes PageUp01 {
  	0% { transform-origin:top; transform:scaleY(1); }
  	100% { transform-origin:top; transform:scaleY(0); }
  }
  @keyframes PageUp02 {
  	0% { transform-origin:bottom; transform:scaleY(0); }
  	100% { transform-origin:bottom; transform:scaleY(1); }
  }


#Loading02 { position: fixed; top: 0; left: 0; width: 100%; height: 100%; justify-content: center; align-items: center; z-index: 9999; opacity: 0; animation-name: Loading02; animation-duration:.8s; animation-delay: 5.5s; animation-timing-function: ease-in-out; animation-fill-mode:forwards;}
#Loading02  .Loading02Inner { transform: translateY(-3vh); top: 0; left: 0; bottom: 0; right: 0; animation-name: LogoTrans; animation-duration:.8s; width: 50%; max-width: 487px; margin: auto;}
#Loading02  .Loading02_funde { transform: translateY(-35px); animation-name: textDown; animation-duration:.8s; animation-delay: 6s; animation-timing-function: ease-in-out; animation-fill-mode:forwards;}
#Loading02  .Loading02_rluxe { transform: translateY(35px); animation-name: textUp; animation-duration:.8s; animation-delay: 6s; animation-timing-function: ease-in-out; animation-fill-mode:forwards;}
  @keyframes Loading02 {
    0% { opacity: 0; }
    100% { opacity: 1; }
  }
  @keyframes textDown {
    0% { transform:translateY(-35px); }
  	100% { transform:translateY(0); }
  }
  @keyframes textUp {
    0% { transform:translateY(35px); }
  	100% { transform:translateY(0); }
  }
  /* @keyframes LogoTrans {
    0% { top: 0; left: 0;}
  	100% { width: 180px; position: fixed; left: 120px; top: 100px;}
  } */
.indPage #wrapper,
.indPage #cursor { opacity: 0; animation-name: Loading02; animation-duration:.8s; animation-delay: 2.5s; animation-timing-function: ease-in-out; animation-fill-mode:forwards;}
@media screen and (max-width: 768px) {
.Loading01 { position: fixed; top: 0; left: 0; width: 100%;}
.Loading01 ul li {width: 100%;}
#Loading01-SP2 { opacity: 0; animation-name: Loading02; animation-duration:.8s; animation-delay: 2.5s; animation-timing-function: ease-in-out; animation-fill-mode:forwards;}

}






@media screen and (min-width: 769px) {
/* ドットをマウスカーソルに */
html,body,a, label, input[type="submit"] { cursor: none; }
#cursor { transform: translate(0,0); pointer-events: none; position: fixed; top: -4px; left: -4px; width: 8px; height: 8px; background: rgba(0,0,0,0.75); border-radius: 50%; z-index: 999999; transition: width .3s, height .3s, top .3s, left .3s; }
#cursor.change-color { background: rgba(255, 255, 255, 0.9);}
#cursor.hov_{ top: -10px; left: -10px; width: 28px; height: 28px; background: none; border: 1px solid rgba(0,0,0,0.75); }
#cursor.change-color.hov_{ border: 1px solid rgba(255, 255, 255, 0.75);}

}
@media screen and (max-width: 768px) {
#cursor { display: none;}
}




/*  */
