body {
  font-size: 12px;
  word-wrap: break-word;
  color: #666;
  font-weight:300;
  line-height:2.1;
  
}


.col-md-6{
 padding-left: 0px ;
 padding-right: 0px;
}
.col-md-8{
 padding-left: 0px ;
 padding-right: 0px;
}

.col-md-9{
 padding-left: 0px ;
 padding-right: 0px;
}

.col-md-12{
 padding-left: 0px ;
 padding-right: 0px;
}
#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #000;
  z-index: 1;
}
#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  text-align: center;
  color: #fff;
  z-index: 2;
}
#container{
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -50px;
  margin-top: -10px;
  text-align: center;
  font-family: Arial;
  font-weight: bold;
}
#container span{
  display: block;
  background: #fff;
  width: 100px;
  height: 5px;
  margin-top: 5px;
  animation: load 2s infinite;
  border-radius: 5px;
}

#container span:nth-child(2){animation-delay: 100ms;}
#container span:nth-child(3){animation-delay: 200ms;}

@keyframes load{
  50%{
    width: 5px;
    margin-right: 95px;
    opacity: .1;
  }
}

.lang_switch_top {
}
.lang_switch_top a {
  text-decoration: none;
  color: #000;
}
.lang_switch a:hover {
  opacity: 0.6;
}


/* --------------------------------- color / setup / etc -----------------------------*/



.black{
  color: #333;
}
.gray{
  color: #aaa;
}

.center{
  text-align: center;
}
.left{
  text-align: left;
}
.right{
  text-align: right;
}
.float_left{
  float: left;
}
.float_none{
  float: none;
}
.float_right{
  float: right;
}

@media screen and (min-width: 992px){
  a:link{text-decoration:none;color:#888;}
  a:visited{text-decoration:none;color:#888;}
  a:hover{text-decoration:none;color:#ccc;}
  a:active{text-decoration:none;color:#888;}
}

@media screen and (max-width: 991px){
  a:link{text-decoration:none;color:#666;}
  a:visited{text-decoration:none;color:#666;}
  a:hover{text-decoration:none;color:#666;}
  a:active{text-decoration:none;color:#666;}
}

a {outline: none;}
a:focus {outline:0;}
a img{outline: none;}


/* --------------------------------- スクロール -----------------------------*/

.ScrollTop2 {
  position: fixed;
  right: 15px;

  bottom: 10px;
  display: flex;

  opacity: 0;
  transition: all 0.65s;
}
.ScrollTop2.isActive {
  opacity: 1;
  transition: all 0.65s;
}


/* --------------------------------- fade in out -----------------------------*/

.fadeInImg {
  opacity: 0;
  transition: 1s;
}
.fadeInImg.is-show {
  opacity: 1;
}

.fadeInImg2{
  opacity: 0;
  transition: 2s;
}
.fadeInImg2.is-show2{
  opacity: 1;
}
/* --------------------------------- font -----------------------------*/


*{
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
}


@media screen and (min-width: 992px){
  .japanese_font{
    font-size:12px;
    font-weight:300;
    letter-spacing:0.8px;
    color: #999;
    
    text-align: justify;
    font-family: 'Noto Sans JP', sans-serif;
  }
  .main_font{
    font-size:12.2px;
    font-weight:300;
    letter-spacing:1px;
    color: #888;
    text-align: justify;
    text-justify: inter-ideograph;
  }
.japanese_font2{
  font-size:12px;
  font-weight:300;
  letter-spacing:0.8px;
  color: #999;
  
  text-align: justify;
  font-family: 'Noto Sans JP', sans-serif;
}
.main_font2{
  font-size:12.2px;
  font-weight:300;
  letter-spacing:1px;
  color: #888;
  text-align: justify;
  text-justify: inter-ideograph;
}
}

@media screen and (max-width: 991px){
  .japanese_font{
    font-size:12px;
    font-weight:300;
    letter-spacing:0.8px;
    color: #666;
    
    text-align: justify;
    font-family: 'Noto Sans JP', sans-serif;
  }
  .main_font{
    font-size:12px;
    font-weight:300;
    letter-spacing:1px;
    color: #666;
    text-align: justify;
    text-justify: inter-ideograph;
  }
.japanese_font2{
  font-size:12px;
  font-weight:300;
  letter-spacing:0.8px;
  color: #666;

  text-align: justify;
  font-family: 'Noto Sans JP', sans-serif;
}
.main_font2{
  font-size:12px;
  font-weight:300;
  letter-spacing:1px;
  color: #666;
  text-align: justify;
  word-break: break-all;
}
}

.japanese_font_m{
  font-size:12px;
  font-weight:300;
  letter-spacing:0.8px;
  color: #999;
  
  text-align: justify;
  text-justify:none;
  font-family: 'Noto Sans JP', sans-serif;
}





.font{
  font-size:12.5px;
  font-weight:300;
  letter-spacing:0.8px;
  color: #888;
  text-align: justify;
  text-justify: inter-ideograph; 
   font-family: 'Noto Sans JP', sans-serif;

}




/*  --------- Top Page ---------------*/

#top_title{
  font-size:25px;
  font-weight:100;
  color:#ddd;
}


#top_title2{
  font-size:25px;
  font-weight:100;
}


.top_font{
  font-size:12px;
  font-weight:100;
  color: #ddd;
}
.top_font a:link{
  color: #ddd;
}
.top_font a:visited{
  color: #ddd;
}
.top_font a:hover{
  color: #fff;
}
.top_font a:active{
  color: #ddd;
}

.top_font2{
  font-size:12px;
  font-weight:100;
  color: #666;
}
.top_font2 a:link{
  color: #666;
}
.top_font2 a:visited{
  color: #666;
}
.top_font2 a:hover{
  color: #999;
}
.top_font2 a:active{
  color: #666;
}


/*
 #top_img{
 display: none;
 height: 100%;
 background-image: url(../img/top.jpg);
 background-position: center center;
 background-repeat: no-repeat;
 background-attachment: fixed;
 background-size: cover;
 background-color: #464646;
 }
 
 */
#top_img{
  
  position: relative;
}
#video_box {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
}
#video_content {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.top_p {
  color: #fff;
  position: absolute;
  z-index: 1;
  top:0px;
}

#top_img{
  display: none;
  height: 100%;
  background-image: url(../img/top.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  background-color: #464646;
}

#top_img_s{
  display: none;
  height: 100%;
  background-image: url(../img/top_s.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  background-color: #464646;
}


#top_title_fade{
  display:none;
}
#top_title_fade_s{
  display:none;
}

/*  --------- Side Bar ---------------*/



#side_title_link{
  font-size:42px;
  font-weight:100;
  color:#333;
  line-height: 60px;
  letter-spacing:-1px;
}

#side_title_link_s{
  font-size:30px;
  font-weight:100;
  color:#333;
}



.side_font{
  font-size:13px;
  font-weight:100;
  color: #333;
}

.side_font2{
  font-size:20px;
  font-weight:100;
}

.side_font3{
  font-size:18px;
  font-weight:100;
}

.side_font2_s{
  font-size:17px;
  font-weight:100;
}

.side_font3_s{
  font-size:15px;
  font-weight:100;
}


/* --- work page ---*/
/* --- work page ---*/
/* --- work page ---*/


.work_title{
  font-size:50px;
  font-weight:200;
  letter-spacing:-2px;
}
.work_title_s{
  font-size:30px;
  font-weight:200;
  letter-spacing:0px;
}
.work_title2_s{
  font-size:30px;
  font-weight:200;
  letter-spacing:0px;
}


.work_main_font{
  font-size:11.5px;
  font-weight:100;
  letter-spacing:0.7px;
  color: #aaa;
  text-align: justify;
  font-family: 'Noto Sans JP', sans-serif;
font-family: 'M PLUS Rounded 1c', sans-serif;
}


.works_font{
  font-size:14px;
  color:#888;
}

@media screen and (min-width: 544px){
.work_font2{
  font-size: 30px;
  color: #666;
  font-weight: 1000;
  letter-spacing:1.9px;
}
}

@media screen and (max-width: 544px){
.work_font2{
  font-size: 20px;
  color: #666;
  font-weight: 1000;
  letter-spacing:-.3px;
}
}

.work_font3{
  font-size: 12px;
  color: #777;
  font-weight: 100;
  letter-spacing:1.9px;
  text-align: justify;
  text-justify: inter-ideograph;
}

/* -------- withered plant --------- */
/* -------- withered plant --------- */
/* -------- withered plant --------- */

.grid-item{
  text-align: center;
}

.micro_title{
  font-size:50px;
  font-weight:200;
  letter-spacing:-2px;
}
.micro_title_s{
  font-size:30px;
  font-weight:200;
  letter-spacing:0px;
}

.micro_main_font{
  font-size:11.5px;
  font-weight:100;
  letter-spacing:0.7px;
  color: #aaa;
  text-align: justify;
  font-family: 'Noto Sans JP', sans-serif;
font-family: 'M PLUS Rounded 1c', sans-serif;
}

.micro_font{
  font-size: 12px;
  color: #777;
  font-weight: 100;
  letter-spacing:1.9px;
  text-align: justify;
  text-justify: inter-ideograph;
}

@media screen and (max-width: 544px){
.micro_font{
  font-size: 12px;
  color: #777;
  font-weight: 100;
  letter-spacing:1px;
}
}

.micro_font2{
  font-size: 30px;
  color: #666;
  font-weight: 1000;
  letter-spacing:1.9px;
  
}





/*  --------- Works page ---------------*/


.works_font_m{
  font-size:18px;
  color:#777;
}


/*  --------- About page ---------------*/

.about_titel{
  font-size:30px;
  font-weight: 200;
}

.about_font_keep{
  font-size: 12px;
  color: #999;
  font-weight: 200;
  letter-spacing:0.5px;
  
}


.about_width{
  margin:20px;
}

@media screen and (max-width: 544px){
.about_font{
  font-size:12px;
  font-weight: 100;
  letter-spacing:1px;
  color: #777;
}
.about_width{
  margin:16px;
}
}



/*  --------- Photography page ---------------*/

.photo_title{
  font-size:50px;
  font-weight:200;
  letter-spacing:-2px;
}

@media screen and (min-width: 544px){
.photo_font{
  font-size: 12px;
  color: #777;
  font-weight: 100;
  letter-spacing:1.9px;
  text-align: justify;
  text-justify: inter-ideograph;
}

.photo_font2{
  font-size: 20px;
  color: #666;
  font-weight: 1000;
  letter-spacing:1.9px;
}
}

@media screen and (max-width: 544px){
.photo_font{
  font-size: 12px;
  color: #777;
  font-weight: 100;
  letter-spacing:1px;
}  

.photo_font2{
  font-size: 20px;
  color: #666;
  font-weight: 1000;
  letter-spacing:-.3px;
}
}

/*  --------- News page ---------------*/

.news_titel{
  font-size:30px;
  font-weight: 200;
}


.news_font{
  font-size: 12px;
  color: #777;
  font-weight: 100;
  letter-spacing:1.9px;
  
}

.news_font2{
  font-size: 12px;
  color: #666;
}
@media screen and (max-width: 544px){
.news_img{
  width:100%;
}
.news_img2{
  width:170px;
}
.news_font{
  font-size: 12px;
  color: #777;
  font-weight: 100;
  letter-spacing:1px;
  
}
}


/*  --------- Sound page ---------------*/

.sound_font{
  font-size: 12px;
  color: #777;
  font-weight: 100;
  letter-spacing:1.9px;
  text-align: justify;
  text-justify: inter-ideograph;
  
}

@media screen and (max-width: 544px){
.sound_font{
  font-size:12px;
  font-weight: 100;
  letter-spacing:1px;
  color: #777;
}
}

/*  --------- Withered page ---------------*/

.withered_font{
  font-size:12px;
  font-weight: 300;
  letter-spacing:0.9;
}

@media screen and (min-width: 1193px) {
  .img_ready{
    max-width: 800px;
  }

  .img_ready_s{
    padding-left:20%;
    padding-right:20%;
    max-width: 800px;
    min-width: 600px;
  }
  .img_ready_m{
    max-width: 601px;
    min-width: 600px;
  }
  .img_ready_l{
    padding-left:0%;
    padding-right:0%;
    max-width: 800px;
    min-width: 600px;
  }
}
@media screen and (min-width: 993px) and (max-width: 1192px){
.img_ready{
  padding-left:0%;
  padding-right:0%;
  max-width: 800px;
}
.img_ready_s{
  padding-left:20%;
  padding-right:20%;
  max-width: 800px;
  min-width: 600px;
}
.img_ready_m{
  padding-left:10%;
  padding-right:10%;
  max-width: 800px;
  min-width: 600px;
}
.img_ready_l{
  padding-left:0%;
  padding-right:0%;
  max-width: 800px;
  min-width: 600px;
}
}

@media screen and (max-width:992px) and (min-width: 544px){
.img_ready{
  padding-left:10%;
  padding-right:10%;
}
.img_ready_m{
  padding-left:10%;
  padding-right:10%;
}
.img_ready_s{
  padding-left:10%;
  padding-right:10%;
}
.img_ready_l{
  padding-left:10%;
  padding-right:10%;
}
}

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

.img_ready{
  padding-left:0%;
  padding-right:0%;
}

.img_ready_s{
  padding-left:0%;
  padding-right:0%;
}
.img_ready_l{
  padding-left:0%;
  padding-right:0%;
}
}




/* ---------- genome -----------------*/
/* ---------- genome -----------------*/
/* ---------- genome -----------------*/


.loading {
  width: 100px;
  height: 90px;
  padding-top:0px;
  margin: 0 auto;
  margin-bottom:-100px;
}
.loading2 {
  width: 100px;
  height: 90px;
  padding-top:42px;
  margin: 0 auto;
  margin-bottom:-100px;
}

.ball {
  width: 12px;
  height: 12px;
  margin: 10px auto;
  border-radius:50px;
}

.ball:nth-child(1) {
  background: #ddd;
  -webkit-animation: right 1s infinite ease-in-out;
  -moz-animation: right 1s infinite ease-in-out;
  animation: right 1s infinite ease-in-out;
}

.ball:nth-child(2) {
  background: #ddd;
  -webkit-animation: left 2.1s infinite ease-in-out;
  -moz-animation: left 1.1s infinite ease-in-out;
  animation: left 1.1s infinite ease-in-out;
}

.ball:nth-child(3) {
  background: #eee;
  -webkit-animation: right 1.05s infinite ease-in-out;
  -moz-animation: right 1.05s infinite ease-in-out;
  animation: right 1.05s infinite ease-in-out;
}

.ball:nth-child(4) {
  background: #eee;
  -webkit-animation: left 1.15s infinite ease-in-out;
  -moz-animation: left 1.15s infinite ease-in-out;
  animation: left 1.15s infinite ease-in-out;
}

.ball:nth-child(5) {
  background: #eee;
  -webkit-animation: right 1.1s infinite ease-in-out;
  -moz-animation: right 1.1s infinite ease-in-out;
  animation: right 1.1s infinite ease-in-out;
}

.ball:nth-child(6) {
  background: #ddd;
  -webkit-animation: left 1.05s infinite ease-in-out;
  -moz-animation: left 1.05s infinite ease-in-out;
  animation: left 1.05s infinite ease-in-out;
}

.ball:nth-child(7) {
  background: #ddd;
  -webkit-animation: right 1s infinite ease-in-out;
  -moz-animation: right 1s infinite ease-in-out;
  animation: right 1s infinite ease-in-out;
}

@-webkit-keyframes right {
  0% {
    -webkit-transform: translate(-12px);
  }
  50% {
    -webkit-transform: translate(12px);
  }
  100% {
    -webkit-transform: translate(-12px);
  }
}

@-webkit-keyframes left {
  0% {
    -webkit-transform: translate(12px);
  }
  50% {
    -webkit-transform: translate(-12px);
  }
  100% {
    -webkit-transform: translate(12px);
  }
}

@-moz-keyframes right {
  0% {
    -moz-transform: translate(-12px);
  }
  50% {
    -moz-transform: translate(12px);
  }
  100% {
    -moz-transform: translate(-12px);
  }
}

@-moz-keyframes left {
  0% {
    -moz-transform: translate(12px);
  }
  50% {
    -moz-transform: translate(-12px);
  }
  100% {
    -moz-transform: translate(12px);
  }
}

@keyframes right {
  0% {
    transform: translate(-12px);
  }
  50% {
    transform: translate(12px);
  }
  100% {
    transform: translate(-12px);
  }
}

@keyframes left {
  0% {
    transform: translate(12px);
  }
  50% {
    transform: translate(-12px);
  }
  100% {
    transform: translate(12px);
  }
}


/* -------------- Press page ---------------- */

.press_img:hover img{
  opacity: 0.6;
  transition-duration: 0.3s;
}

.press_img_box{
  display:inline-block;
  vertical-align: top;
  margin:20px;
}
/* -------------- Exhibition page ---------------- */


@media screen and (min-width: 1024px){
.lby_img{
  margin:5px 0;
  
  max-width: 32%;
}

}
@media screen and (max-width:1024px) and (min-width: 544px){
.lby_img{
  margin:5px 0;
  
  max-width: 60%;
}

}

@media screen and (max-width: 544px){
.lby_img{
  margin:5px 0;
  
  max-width: 100%;
}
}


/* ------------- Content Page Css --------------- */

#content_title {
  font-size: 14px;
  color: #666;
}

#content_title_m{
  font-size: 15px;
  color: #666;
  font-weight:normal;
  
}
#content_title_m2{
  font-size: 15px;
  color: #666;
  font-weight:normal;
  
}



.content_page_font{
 font-size:12px;
 color:#666;  
}



  
@media screen and (min-width: 1300px){


/* ------------- img Mouseover Css --------------- */

.caption {
  padding-left:3%;
  text-align: left;
  color:#fff;
}

.mask {
	position:		absolute;
	width:100%;
	top:			0;
	left:			0;
	opacity:		0;	
	background-color:	rgba(0,0,0,0.34);
	-webkit-transition:	all 0.6s ease;
	transition:		all 0.3s ease;
}
.imgMouseover {
  margin:0.4%;
  float:left;
  width:100%;
  max-width:875px;
	overflow:		hidden;
	position:		relative;
}
.imgMouseover:hover .mask {
	opacity:		1;
	padding-top: 5px;	
}
.imgMouseover2 {
  margin:0.4%;
  float:left;
  width:100%;
  max-width:875px;
	overflow:		hidden;
	position:		relative;
}
.imgMouseover2:hover .mask {
	opacity:		1;
	padding-top: 5px;	
}
.ready{
  padding-bottom: 10%;
}


}

@media screen and (max-width: 1300px) and (min-width: 992px){


.caption {
  padding-left:3%;
  text-align: left;
  color:#fff;
}

.mask {
	position:		absolute;
	width:100%;
	top:			0;
	left:			0;
	opacity:		0;	
	background-color:	rgba(0,0,0,0.34);
	-webkit-transition:	all 0.6s ease;
	transition:		all 0.3s ease;
}
.imgMouseover {
  margin:0.4%;
  float:left;
  width:100%;
	overflow:		hidden;
	position:		relative;
}
.imgMouseover:hover .mask {
	opacity:		1;
	padding-top: 5px;	
}
.imgMouseover2 {
  margin:0.4%;
  float:left;
  width:100%;
	overflow:		hidden;
	position:		relative;
}
.imgMouseover2:hover .mask {
	opacity:		1;
	padding-top: 5px;	
}
.ready{
  padding-bottom: 10%;
}


}
@media screen and (max-width: 991px){
  
.caption {
}

.mask {
}
.imgMouseover:hover .mask {
}
.ready{
}
}




/*  --------------------  modal ------------------ */

*{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
.content{
    margin: 0 auto;
    padding: 0px;
}
.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
}
.modal__bg{
    background: rgba(0,0,0,1);
    height: 100vh;
    position: absolute;
    width: 100%;
}

.modal__content{
    background-color: rgba(0,0,0,1);
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    max-width:2000px;
}
.modal__content2{
  background-color: rgba(0,0,0,1);
  left: 50%;
 
  position: absolute;
  top: 50%;
  transform: translate(-50%,-50%);
  height: 100%;
  max-width:2000px;
}

.modal__content3{
  background-color: rgba(0,0,0,1);
  left: 50%;

  position: absolute;
  top: 50%;
  transform: translate(-50%,-50%);
  
  width: 100%;
  max-width:2000px;
}
