* {
  box-sizing: border-box;
}



a {
  text-decoration: none;
  color: #DDDDDD;
}


p {
  margin: 20px 0px;
}



.clear {
  clear: left;
}



::selection {
  background: #DDDDDD;
  color:#212121;
}



li {
  list-style: none;
}



body {
  margin: 0;
  font-family: 'Times New Roman', 'Amiri', "游明朝体", "Yu Mincho", YuMincho, serif;
  color: #DDDDDD;
  background-color: #212121;
  font-size: 20px;
  letter-spacing: 0.02em;
  line-height: 28px;
}


.italic {
  font-style: Italic;
}


.link {
  text-decoration: underline;
}


.text-jp {
  font-size: 87%;
}

.insta {
  text-decoration: none;
}

.link:hover {
  font-style: Italic;
}

.insta:hover {
  font-style: Italic;
}

.insta2 {
  margin-top: 0;
}

.container {
  max-width: 100%;
  /* max-width: 100%; */

  padding: 0px 35px;
  margin: 0 auto;
}



body.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
}



/* header */


/* .header-this {
  border-bottom: 1px solid #DDDDDD
} */



/* .btn:hover {
  text-decoration: underline;
} */






header {
  height: 60px;
  display: block;
  width: 100%;
  position :fixed;
  top: 0;
  /* z-index: 101; */
  z-index: 1000;
  background-color: #212121;
}




.header-dummy {
  height: 70px;
  /* margin-bottom: 70px; */
  display: block;
  width: 100%;
  top: 0;
}



.header-left {
  float: left;
  margin-top: 20px;
}


.header-right {
  z-index: 200;
}



.header-right li {
  margin-top: 20px;
  float: right;
}



#menu-icon {
  position: fixed;
  top: 0px;
  right: 18px;
  z-index: 2000;
  display: none;
}



.paintings {
  margin-right:25px;
}


.op06 {
  opacity: 0.6;
}




.fa-circle {
  font-size:14px;
  position: relative;
  top: -1.5px;
  margin-right: -3px;
  /* display: none; */
}


.info:hover {
  opacity: 1;
  filter: alpha(opacity=50);
  -moz-opacity: 1;
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}


.paintings:hover {
  opacity: 1;
  filter: alpha(opacity=50);
  -moz-opacity: 1;
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}





.info-hover {
  display:none;
}

.ptgs-hover {
  display:none;
}




/* header-responsive */



.header-right-responsive-wrapper {
  position: fixed;
  top: 0px;
  left: 0%;
  height: 100%;
  width: 100%;
  z-index: 1000;
  padding: 0px 20px;


  background-color: #212121;

  line-height: 28px;

  /* float: right; */

  display: none;
}



#home-res {
  margin-top:12px;
  margin-bottom: 50px;
}



#paintings-res {
  padding-top: 12px;
  padding-bottom: 10px;
}


#info-res {
  padding-top: 12px;
  padding-bottom: 10px;
}



.o-0 {
  opacity: 1;
}



#close-res {
  position: fixed;
  top: 20px;
  right: 23px;
  z-index: 2000;
  display: none;
  cursor: pointer;
}




/* home */



.top-wrapper {
  width:100%;
  /* max-width:1500px; */
  margin: 0 auto;
  margin-bottom: 150px;
  margin-top: 70px
}



.top-img-box {
  text-align: center;
}



#top-img {
  width: 100%;
  max-width: 1600px;
  height: auto;
  /* max-height: 100%; */
}



.top-text {
  display: block;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-top: 20px;
}






/* thumbnails */



.tumbs {
  margin-bottom: 200px;
  margin-top: 100px;
  padding: 0px 80px;
}



.tumbnails {
  z-index: 0;
  display: grid;
  text-align: center;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); 
  grid-auto-rows: 200px;
  gap: 160px 160px;
  max-width: 1600px;
  margin: 0 auto;
}




.thumb-box {
  width: 100%;
  height: 150px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  
}



.tumbnail {
  opacity: 1;
  cursor: pointer;
}



.tumbnail:hover {
  opacity: 0;
}

/* .tumbnail:hover {
  opacity: 0;
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
} */

.t-t {
  width: 100px;
}


.t-s {
  width: 100px;
}



.t-y {
  width: 140px;
}





.thumb-wrapper p {
  font-size: 15px;
  cursor: pointer;
  margin-top: 40px;
  margin-bottom: 0px;
}




/* .thumb-wrapper p:hover {
  text-decoration: underline;
} */




/* big-imgs */



.big-img-wrapper { 
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;


  background-color: #212121;
  z-index:300;
  

  cursor: url("cursor_close.png"), pointer;

  text-align: center;
  padding: 0px 60px;

  display:none;

} 



.big-img-exhbtn-wrapper { 
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;


  background-color: #212121;
  z-index:300;
  
  text-align: center;
  padding: 0px 60px;
  display:none;
} 






.big-img-t {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
  height: auto;
  width: auto;
  max-width: 100%;
  max-height: 100%;

  padding: 70px 0px;

  display: none;

}



.big-img-y {
  position: relative;
  top: 48%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
  height: auto;
  width: auto;
  max-width: 100%;
  max-height: 80%;

  padding: 50px 0px;

  display: none;

}




.big-img-yyy {
  position: relative;
  top: 48%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
  height: auto;
  width: auto;
  max-width: 100%;
  max-height: 75%;

  display: none;

}




.change-btn-wrapper {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 300;

  display: none;

}



.change-btn-wrapper-m {
  display: none;
  margin: 0 auto;
}


.prev-btn {
  width:50%;
  height: 100%;

  float: left;

  cursor: url("img/cursor_prev_alt.png"), pointer;
}



.next-btn {
  width:50%;
  height: 100%;

  float: left;

  cursor: url("img/cursor_next_alt.png"), pointer;
}





#prev-r {
  float: left;
  margin-top: 280px;
  padding: 0px 12px;
  height:18px;

  display: none;
}



#next-r {
  float: right;
  margin-top: 280px;
  padding: 0px 12px;
  height: 18px;

  display: none;
}




.close-btn-wrapper {
  height: 50px;
  display: block;
  width: 100%;
  position :fixed;
  bottom: 0;
  z-index: 301;

  display: none;
}



.close-btn {
  cursor: pointer;
  float: left;
  padding: 10px 0px 10px 0px;
  position: relative;
  bottom: 20px;
  /* position: fixed;
  top: 15px;
  right: 25px; */
  z-index: 302;
}



.close-btn p {
  margin: 0;
  font-size: 75%;
  padding: 3px 12px 3px 12px;
  border: 1px solid #676767;
}




.close-btn p:hover {
  background-color: #DDDDDD;
  color: #212121;
}





.big-img-exhbtn {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
  height: auto;
  width: auto;
  max-width: 80%;
  max-height: 80%;

  padding: 70px 0px;

  /* display: none; */

}


.exhbtn-close-btn-warapper {
  display:  inline-block;  
  width: 100%;
  position: fixed;
  bottom: 8%;
  left: 0px;
  z-index:400;
}

.exhbtn-close-btn {
  text-align: center;
  cursor: pointer;
}




/* counter */


.counter {
  float: right;
  position: relative;
  bottom: 0px;
  /* margin-left: 50px; */
  /* padding-top: 12px; */
}


.counter p {
  margin: 0px;
}


.ya {
  position: relative;
  bottom: 1.5px;
  display: none;
}


.counter-cursor {
  display: none;
}


.cursor-l {
  display: none;
  position: fixed;
  left: 130px;
  bottom: 87px;
}


.cursor-r {
  display: none;
  position: fixed;
  right: 130px;
  bottom: 87px;
}





/* cv */


.cv-text-wrapper {
  /* position: absolute;
  top: 0; */
  width: 60%;
  margin:0 auto;
  /* margin-left: 250px; */
  z-index: 102;
  margin-bottom: 100px
}





.y-c p {
  padding: 0px  0px;
  margin: 0;
}


.year {
  float: left;
}


.columns p {
  /* padding-left: 3.2em; */
  padding-left: 3.2em;

  /* text-indent: -50px; */
}



.cv-entry {
  clear: left;
}









/* info */

.info-wrapper {
  position: absolute;
  top: 0;
  margin-left: 250px;
  margin-top: 5px;
  z-index: 100;
}


hr {
  border-width: 1px 0px 0px 0px; /* 太さ */
  border-style: solid; /* 線種 */
  border-color: #DDDDDD;   /* 線色 */
  height: 1px;         /* 高さ(※古いIE用) */
}




.big-img-wrapper-info {
  width: 100%;
  height: auto;
  padding: 25px 25px 0px 50px;
  background-color: #212121;
  z-index:100;
  padding-bottom: 150px;
  float: left;
}





.detail li {
  margin-bottom: 15px;
}


.detail p {
  margin-top: 0;
}


.detail li img {
  width: 50%;
}





.info-link {
  font-size: 75%;
  padding: 6px 10px 6px 10px;
  border:1px solid #676767;
}


.info-link:hover {
  border: none;
  background-color: #DDDDDD;
  color: #212121;
}



.dd:hover {
  /* opacity: 0; */
  cursor: pointer;
}














@media (max-width: 1500px ) {


  /* .header-dummy {
    height: 30px;
    margin-bottom: 70px;
    display: block;
    width: 100%;
    top: 0;
  }
  
  

  .tumbnails {
    z-index: 0;
    display: grid;
    text-align: center;
  
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); 
    grid-auto-rows: 170px;
  
    gap: 100px 50px;
  
    margin-bottom: 300px;
    max-width: 100%px;
  
    margin: 0 auto;
  }



  .thumb-wrapper p {
    font-size: 15px;
    cursor: pointer;
    margin-top: 15px;
    margin-bottom: 0px;
  } */
  
  



  .big-img-wrapper { 
    position: fixed;
    top: 0;
    left: 0;
    max-width: 100%;
    /* max-width: 100%; */
    width: 100%;
    height: 100%;
    z-index: 10;
  
    cursor: url("cursor_close.png"), pointer;
  
    text-align: center;
    padding: 0px 60px
  
  } 
  
  
  
  .big-img-t {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%); /* Safari用 */
    transform: translateY(-50%);
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 90%;
  
    padding:40px 0px;
  
    display: none;
  
  }
  
  
  
  .big-img-y {
    position: relative;
    top: 48%;
    -webkit-transform: translateY(-50%); /* Safari用 */
    transform: translateY(-50%);
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 80%;
  
    padding:50px 0px;
  
    display: none;
  
  }
  
  
  
  
  .big-img-yyy {
    position: relative;
    top: 48%;
    -webkit-transform: translateY(-50%); /* Safari用 */
    transform: translateY(-50%);
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 70%;
  
    display: none;
  
  }



}





@media (max-width: 1112px) {
  .cv-text-wrapper {
    position: static;
    top: 0;
    width: 100%;
    margin-left: 0px;
    z-index: 100;
    margin-bottom: 100px
  }
}













/* responsive */

@media (max-width: 670px ) {

  body {
    margin: 0;
    font-family: 'Times New Roman', 'Amiri', serif;
    color: #DDDDDD;
    background-color: #212121;
    font-size: 17px;
    letter-spacing: 0.02em;
    line-height: 22px;
  }
  
  
  
  .container {
    max-width: 100%;
    padding: 0px 20px;
  }


  header {
    height: 52px;
  }

  .header-dummy {
    height: 70px;
    margin-bottom: 0px;
    display: block;
    width: 100%;
    top: 0;
  }
  


  .header-left {
    float: left;
    margin-top: 15px;
  }
  
  
  .header-right {
    /* z-index: 200; */
    display: none;
  }
  
  
  
  .header-right li {
    margin-top: 18px;
    float: right;
  }



  #menu-icon {
    position: fixed;
    top: 0px;
    right: 18px;
    z-index: 2000;
  
    margin: 16px 5px;
  
    display: block !important;

    cursor: pointer;
  }



  #paintings {
    width: 81px;
    margin-right:16px;
  }
  
  
  #info {
    width: 44px;
  }
  
  
  .fa-circle {
    font-size: 11px;
    position: relative;
    top: -1.75px;
    /* display: none; */
  }


  


  
  
  
  /* //////////////////////////? */
  
  
  .top-wrapper {
    max-width:1280px;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 200px;
  }
  
  
  
  #top-img {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: 100%;
  }
  
  
  
  .top-text p {
    width: 100%;
    text-align: left;
    padding-top: 0px;
    padding-left: 0px;
  }




  .tumbs {
    margin-top: 20px;
    margin-bottom: 200px;
    padding: 0px 20px;
  }
  
  
  
  .tumbnails {
    z-index: 0;
    display: grid;
    text-align: center;
  
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); 
    grid-auto-rows: 150px;
  
    gap: 100px 20px;
    /* align-items: center; */
  
    padding-top: 0px;
    margin-bottom: 280px;
  
    /* opacity: 0; */
  }



  



  .t-t {
    width: 75px;
  }


  .t-s {
    width: 75px;
  }



  .t-y {
    width: 100px;
  }









  .thumb-wrapper p {
    font-size: 14px;
    cursor: pointer;
    margin-top: 10px;
  }
  
  

  
  
  .big-img-wrapper { 
    position: fixed;
    top: 0px;
    right:0px;
    left: 0px;
    bottom:0px;

    
    max-width: 100%;
    /* max-width: 100%; */
    width: 100%;
    height: 100%;
    z-index: 10;
  
  
    text-align: center;
    padding: 25px 20px 0px 20px;
  
  } 
  
  
  
  .big-img-t {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-48%); /* Safari用 */
    transform: translateY(-48%);
    height: auto;
    width: auto;
    max-width: 90%;
    max-height: 100%;

    padding-bottom: 150px;

  
    display: none;
  
  }
  
  
  
  .big-img-y {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%); /* Safari用 */
    transform: translateY(-50%);
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%;

    padding-bottom: 150px;
  
    display: none;
  
  }
  
  
  
  
  .big-img-yyy {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%); /* Safari用 */
    transform: translateY(-50%);
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%;

    padding-bottom: 150px;

  
    display: none;
  
  }
  
  

  
  .change-btn-wrapper {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
  }


  .change-btn-wrapper-m {
    width: 100%;
    display: block;
    /* position: fixed;
    bottom: 120px; */
    text-align: center;
    margin: 0 auto;
    z-index: 100;
  }


  .ya {
    position: relative;
    bottom: 1.5px;
    display:inline;
  }


  .cursor_prev_du {
    margin-left: 20px;
  }


  .cursor_next_du {
    margin-right: 20px;
  }




  
  .cursor-l {
    display: block;
    position: fixed;
    left: 40%;
    bottom: 86px;
  }
  
  
  .cursor-r {
    display: block;
    position: fixed;
    right: 40%;
    bottom: 86px;
  }



  
  
  .prev-btn {
    width:50%;
    height: 100%;
    float: left;
    z-index: 200;
  }
  
  
  
  .next-btn {
    width:50%;
    height: 100%;
    float: left;
    z-index: 200;
  
  }



  #prev-r {
    float: left;
    margin-top: 280px;
    padding: 0px 12px;
    height:18px;
  
    /* display: block; */
  }
  
  
  
  #next-r {
    float: right;
    margin-top: 280px;
    padding: 0px 12px;
    height: 18px;
  
    /* display: block; */
  }
  
  
  
  

  .close-btn-wrapper {
    height: 100px;
    text-align: center;
    margin: 0 auto;
    bottom: 50;
    z-index: 101;
  }


  .close-btn {
    cursor: pointer;
    float: none;
    padding: 15px 0px 10px 0px;
    bottom: 0px;
    margin: 0 auto;
    position: relative;
    right: 0px;
    bottom: 0px;
    text-align: center;
    width: 90px;
  }



  .close-btn p {
    margin: 0 auto;
    font-size: 80%;
    padding: 3px 8px 3px 8px;
    border:1px solid #676767;
    opacity: 1;
  }


  #close_c {
    display: none;
  }
  
  
  .counter {
    float:none;
    position: relative;
    bottom: 5px;
    margin: 0px;
    font-size: 15px;
  }



  

  /* CV */

  .cv-text-wrapper {
    position: static;
    top: 80px;
    margin-left: 0px;
    z-index: 0;
  }






  .cv-text-wrapper {
    position: static;
    top: 0;
    width: 100%;
    margin-left: 0px;
    z-index: 100;
    margin-bottom: 100px
  }



  /* info */
 

  .info-wrapper {
    position: static;
    top: 0;
    margin-left: 0px;
    margin-top: 5px;
    z-index: 100;
  }


  .info-img-y {
    width: 100%;
  }





  .info-img-t {
    width: 250px;
  }

  .info-link {
    padding: 6px 10px;
  }



  .big-img-wrapper-info {
   
    position: absolute;
    top: 20px;
    width: 100%;
    height: auto;
    padding: 0px 20px 100px 20px;
    background-color: #212121;
    z-index:100;
    /* display:none; */
  }
  
  
  
  
  


  
  
  .close-detail-btn-s {
    display: inline;
    margin-bottom: 20px;
  }


  .close-detail-btn-s img {
    width: 12px;
  }

  
  .close-detail-btn:hover {
    cursor: url("cursor_close2.png");
  }
  
  
  
  .detail li {
    margin-bottom: 10px;
  }
  
  
  .detail li img {
    width: 100%;
  }
  


  .big-img-exhbtn {
    max-width: 100%;
    max-height: 100%;
  }


  .exhbtn-close-btn-warapper {
    bottom: 12%;
  }

  .exhbtn-close-btn{
    font-size: 13px;
  }

   
}


