@charset "utf-8";
a {
  text-decoration: none;
}
li {
  list-style: none;
}
.LT {
  display: none
}
.LB {
  display: none
}
.RT {
  display: none
}
.RB {
  display: none
}
.topline {
  width: 98%;
  height: 6px;
  position: fixed;
  top: 1%;
  left: 1%;
  z-index: 50000;
}
.leftline {
  width: 6px;
  height: 98%;
  position: fixed;
  top: 1%;
  left: 1%;
  z-index: 50001;
}
.rightline {
  width: 6px;
  height: 98%;
  position: fixed;
  top: 1%;
  right: 1%;
  z-index: 50001;
}
.bottomline {
  width: 98%;
  height: 6px;
  position: fixed;
  bottom: 1%;
  left: 1%;
  z-index: 50000;
}
.gradationB {
  position: fixed;
  bottom: 1%;
  width: 100%;
  height: 40px;
  z-index: 100;
}
.spaceB {
  position: fixed;
  bottom: 0%;
  width: 100%;
  height: 1vh;
  z-index: 99;
}
body {
  color: #B0B0B0;
  font-family: averia-serif-libre;
  font-style: normal;
  font-weight: 300;
}
.titles {
  position: fixed;
  top: 8%;
  right: 2%;
  bottom: none;
  left: none;
  width: 28%;
  letter-spacing: 0.08em;
  z-index: 51000;
}
.titles h1 {
  font-family: ten-mincho-text, serif;
  font-weight: 400;
  font-style: italic;
  text-align: center;
  font-size: 1.6vmax;
  letter-spacing: 0.6em;
  border-bottom: 2px solid #B3B3B3;
  padding-bottom: 5px;
}
.titles h1 a {
  color: #676767;
}
.photograher {
  position: absolute;
  top: -62%;
  right: 62%;
  width: 6vmax;
}
.studio {
  position: absolute;
  top: 119%;
  right: 12%;
  width: 7vmax;
}
.menu {
  list-style: none;
  font-style: normal;
  font-weight: 400;
  font-size: 1.3vmax;
  letter-spacing: 3px;
  height: 94%;
  width: 12vmax;
  position: fixed;
  right: 2%;
  top: 3%;
  z-index: 20000;
}
.menu a {
  color: #B5B5B5;
}
.Galley {
  letter-spacing: 0.46em;
  font-size: 1.1em;
  position: absolute;
  bottom: 68%;
}
.Galley a {
  color: #878787;
}
.koumoku .food {
  font-size: 0.9em;
  letter-spacing: 0.06em;
  margin-right: 0.5em;
  position: absolute;
  right: 14%;
  bottom: 63%;
}
.koumoku .mono {
  font-size: 0.9em;
  letter-spacing: 0.06em;
  position: absolute;
  right: 14%;
  bottom: 57%;
}
.koumoku .hito {
  font-size: 0.9em;
  letter-spacing: 0.06em;
  margin-left: 5em;
  position: absolute;
  right: 14%;
  margin-right: 0.7em;
  bottom: 51%;
}
.koumoku .spatial {
  font-size: 0.9em;
  letter-spacing: 0.06em;
  position: absolute;
  right: 14%;
  bottom: 45%;
}
.biography {
  font-size: 1em;
  position: absolute;
  bottom: 37%;
}
.biography a {
  color: #878787;
}
.contact {
  font-size: 1.1em;
  letter-spacing: 0.25em;
  position: absolute;
  bottom: 28%;
}
.contact a {
  color: #878787;
}
.roba img {
  width: 7vmax;
  height: 5.75vmax;
  object-fit: contain
}
.roba {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: fixed;
  right: 1.7%;
  bottom: 2.5%;
  z-index: 50002;
}
.osaka {
  font-size: 1.1vmax;
  text-align: center;
  margin-top: -0.3vh;
  color: #989898;
}
.main {
  position: fixed;
  width: 70%;
  height: 100%;
  left: 4%
}
.chaild {
  position: absolute;
  width: 63vmin;
  height: 58vmin;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.mainul img {
  width: 100%;
  height: 20%;
  object-fit: cover;
  border-radius: 0.7vw;
}
.mainul p {
  font-size: 2.4vmin;
  color: #ADADAD;
}
.gImg1 img {
  position: absolute;
  top: 0%;
  object-position: 0% 68%;
  opacity: 0;
  animation-name: a1;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
}
@keyframes a1 {
  from {
    opacity: 0;
    transform: translateX(-20%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.caption1 {
  position: absolute;
  top: -3.6%;
  opacity: 0;
  animation-name: ap1;
  animation-duration: 1.5s;
  animation-delay: 0.2s;
  animation-fill-mode: forwards;
}
@keyframes ap1 {
  from {
    opacity: 0;
    transform: translateX(-80%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.gImg2 img {
  position: absolute;
  top: 27%;
  object-position: 0% 60%;
  opacity: 0;
  animation-name: a2;
  animation-duration: 1.5s;
  animation-delay: 0.4s;
  animation-fill-mode: forwards;
}
@keyframes a2 {
  from {
    opacity: 0;
    transform: translateX(-20%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.caption2 {
  position: absolute;
  top: 23.4%;
  opacity: 0;
  animation-name: ap2;
  animation-duration: 1.5s;
  animation-delay: 0.6s;
  animation-fill-mode: forwards;
}
@keyframes ap2 {
  from {
    opacity: 0;
    transform: translateX(-80%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.gImg3 img {
  position: absolute;
  top: 54%;
  object-position: 0% 52%;
  opacity: 0;
  animation-name: a3;
  animation-duration: 1.5s;
  animation-delay: 0.8s;
  animation-fill-mode: forwards;
}
@keyframes a3 {
  from {
    opacity: 0;
    transform: translateX(-20%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.caption3 {
  position: absolute;
  top: 50.4%;
  opacity: 0;
  animation-name: ap3;
  animation-duration: 1.5s;
  animation-delay: 1s;
  animation-fill-mode: forwards;
}
@keyframes ap3 {
  from {
    opacity: 0;
    transform: translateX(-80%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.gImg4 img {
  position: absolute;
  top: 80%;
  object-position: 0% 55%;
  opacity: 0;
  animation-name: a4;
  animation-duration: 1.5s;
  animation-delay: 1.2s;
  animation-fill-mode: forwards;
}
@keyframes a4 {
  from {
    opacity: 0;
    transform: translateX(-20%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.caption4 {
  position: absolute;
  top: 75.5%;
  opacity: 0;
  animation-name: ap4;
  animation-duration: 1.5s;
  animation-delay: 1.4s;
  animation-fill-mode: forwards;
}
@keyframes ap4 {
  from {
    opacity: 0;
    transform: translateX(-80%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.gImg1 .caption1 {
  transition: 0.4s;
}
.gImg1:hover .caption1 {
  font-size: 2.8vmin;
  color: #8E8E8E;
  top: -4.4%;
  letter-spacing: 0.2vmin;
}
.gImg2 .caption2 {
  transition: 0.4s;
}
.gImg2:hover .caption2 {
  font-size: 2.8vmin;
  color: #8E8E8E;
  top: 22.6%;
  letter-spacing: 0.2vmin;
}
.gImg3 .caption3 {
  transition: 0.4s;
}
.gImg3:hover .caption3 {
  font-size: 2.8vmin;
  color: #8E8E8E;
  top: 49.6%;
  letter-spacing: 0.2vmin;
}
.gImg4 .caption4 {
  transition: 0.4s;
}
.gImg4:hover .caption4 {
  font-size: 2.6vmin;
  color: #8E8E8E;
  top: 74.9%;
  letter-spacing: 0.2vmin;
}
.gImg1 img {
  transition: 0.4s;
  border: 1px solid #FFFFFF;
}
.gImg1:hover img {
  -webkit-box-shadow: 1vh 1vh 0.5vh #EBEBEB;
  box-shadow: 1vh 1vh 0.5vh #EBEBEB;
  border: 1px solid #FFFFFF;
  margin-left: -0.8vmin;
}
.gImg2 img {
  transition: 0.4s;
  border: 1px solid #FFFFFF;
}
.gImg2:hover img {
  -webkit-box-shadow: 1vh 1vh 0.5vh #EBEBEB;
  box-shadow: 1vh 1vh 0.5vh #EBEBEB;
  border: 1px solid #FFFFFF;
  margin-left: -0.8vmin;
}
.gImg3 img {
  transition: 0.4s;
  border: 1px solid #FFFFFF;
}
.gImg3:hover img {
  -webkit-box-shadow: 1vh 1vh 0.5vh #EBEBEB;
  box-shadow: 1vh 1vh 0.5vh #EBEBEB;
  border: 1px solid #FFFFFF;
  margin-left: -0.8vmin;
}
.gImg4 img {
  transition: 0.4s;
  border: 1px solid #FFFFFF;
}
.gImg4:hover img {
  -webkit-box-shadow: 1vh 1vh 0.5vh #EBEBEB;
  box-shadow: 1vh 1vh 0.5vh #EBEBEB;
  border: 1px solid #FFFFFF;
  margin-left: -0.8vmin;
}
.modoru {
  display: none;
}
body {
  -webkit-animation: fadeIn 2.5s ease 0s 1 normal;
  animation: fadeIn 2.5s ease 0s 1 normal;
}
@keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@media(max-width:1400px) {
  .topline {
    width: 98%;
    height: 4px;
    position: fixed;
    top: 1%;
    left: 1%;
  }
  .leftline {
    width: 4px;
    height: 98%;
    position: fixed;
    top: 1%;
    left: 1%;
  }
  .rightline {
    width: 4px;
    height: 98%;
    position: fixed;
    top: 1%;
    right: 1%;
  }
  .bottomline {
    width: 98%;
    height: 4px;
    position: fixed;
    bottom: 1%;
    left: 1%;
  }
  .titles {
    top: 5.5%;
    right: 2.1%;
    width: 25.5%;
    z-index: 8000;
  }
  .titles h1 {
    font-size: 2vmax;
    margin-top: 1px;
  }
  .menu {
    font-size: 1.65vmax;
    z-index: 8000;
    width: 19vmin;
  }
  .roba {
    bottom: 3%;
    right: 2.5%;
    z-index: 8000;
  }
  .roba img {
    width: 7vmax;
    height: 5.75vmax;
  }
  .osaka {
    font-size: 1.1vmax;
  }
}
@media(max-width:500px) {
  .LT {
    display: block;
    position: fixed;
    top: 2%;
    left: 3%;
    z-index: 50002;
  }
  .RT {
    display: block;
    position: fixed;
    top: 2%;
    right: 3%;
    z-index: 50002;
  }
  .LB {
    display: block;
    position: fixed;
    bottom: 2%;
    left: 3%;
    z-index: 50002;
  }
  .RB {
    display: block;
    position: fixed;
    bottom: 2%;
    right: 3%;
    z-index: 50002;
  }
  .topline {
    width: 94%;
    height: 4px;
    position: fixed;
    top: 2%;
    left: 3%;
  }
  .leftline {
    width: 4px;
    height: 96%;
    position: fixed;
    top: 2%;
    left: 3%;
  }
  .rightline {
    width: 4px;
    height: 96%;
    position: fixed;
    top: 2%;
    right: 3%;
  }
  .bottomline {
    width: 94%;
    height: 4px;
    position: fixed;
    bottom: 2%;
    left: 3%;
  }
  .titles {
    display: none;
    top: 6%;
    right: 5%;
    width: 60vmin;
    z-index: 8000;
  }
  .titles h1 {
    font-size: 4.7vmin;
  }
  .photograher {
    position: absolute;
    top: -52%;
    right: 62%;
    width: 16vmin;
  }
  .studio {
    right: 5%;
    width: 18vmin;
  }
  .menu {
    display: none;
  }
  .Galley {
    position: absolute;
    bottom: 66%;
    font-size: 1em;
  }
  .koumoku .food {
    position: absolute;
    right: 3%;
    bottom: 59%;
  }
  .koumoku .mono {
    position: absolute;
    right: 3%;
    bottom: 53%;
  }
  .koumoku .hito {
    position: absolute;
    right: 3%;
    bottom: 47%;
  }
  .koumoku .spatial {
    position: absolute;
    right: 3%;
    bottom: 41%;
  }
  .biography {
    position: absolute;
    bottom: 33%;
    font-size: 1em;
    letter-spacing: 0.1em;
  }
  .contact {
    position: absolute;
    bottom: 25%;
    font-size: 1em;
  }
  .roba {
    position: fixed;
    right: 4.5%;
    bottom: 3%;
  }
  .roba img {
    width: 70px;
    height: 58px;
  }
  .osaka {
    font-size: 1.4vmax;
  }
  .gradationT {
    top: 11%;
  }
  .main {
    width: 92%;
  }
  .chaild {
    width: 80vmin;
    height: 67vmin;
    top: 47%;
  }
  .mainul img {
    width: 100%;
    height: 20%;
    border-radius: 1.5vmin;
  }
  .mainul p {
    font-size: 3.5vmin;
  }
  .caption1 {
    top: -4.3%;
  }
  .gImg1:hover .caption1 {
    font-size: 4vmin;
    top: -5.1%;
  }
  .caption2 {
    top: 22.7%;
  }
  .gImg2:hover .caption2 {
    font-size: 4vmin;
    top: 21.9%;
  }
  .caption3 {
    top: 49.7%;
  }
  .gImg3:hover .caption3 {
    font-size: 4vmin;
    top: 48.9%;
  }
  .caption4 {
    top: 74.8%;
  }
  .gImg4:hover .caption4 {
    font-size: 3.5vmin;
    top: 74.4%;
  }
  .modoru p {
    color: #5C5C5C
  }
  .modoru {
    position: fixed;
    left: 7%;
    bottom: 4%;
    display: inline-block;
    font-size: 2.8vmax;
    color: #B5B5B5;
    border: 1px solid #CBCBCB;
    border-radius: 5px;
    padding-top: 3px;
    padding-right: 5px;
    padding-bottom: 3px;
    padding-left: 5px;
    z-index: 101;
    background: rgba(255, 255, 255, 0.7);
    -webkit-box-shadow: 0px 0px 3px #FFFFFF;
    box-shadow: 0px 0px 3px #FFFFFF;
  }
}
@media(max-height:500px) {
  .LT {
    display: block;
    position: fixed;
    top: 2%;
    left: 1%;
    z-index: 50002;
  }
  .RT {
    display: block;
    position: fixed;
    top: 2%;
    right: 1%;
    z-index: 50002;
  }
  .LB {
    display: block;
    position: fixed;
    bottom: 3%;
    left: 1%;
    z-index: 50002;
  }
  .RB {
    display: block;
    position: fixed;
    bottom: 3%;
    right: 1%;
    z-index: 50002;
  }
  .topline {
    width: 98%;
    height: 4px;
    position: fixed;
    top: 2%;
    left: 1%;
  }
  .leftline {
    width: 4px;
    height: 95%;
    position: fixed;
    top: 2%;
    left: 1%;
  }
  .rightline {
    width: 4px;
    height: 95%;
    position: fixed;
    top: 2%;
    right: 1%;
  }
  .bottomline {
    width: 98%;
    height: 4px;
    position: fixed;
    bottom: 3%;
    left: 1%;
  }
  .titles {
    display: none;
    top: 9%;
    left: 2%;
    width: 25%;
  }
  .titles h1 {
    font-size: 4.7vmin;
    padding-bottom: 0.5vmin;
    letter-spacing: 0.3em;
  }
  .photograher {
    position: absolute;
    top: -50%;
    right: 62%;
    width: 16vmin;
  }
  .studio {
    right: 5%;
    top: 115%;
    width: 18vmin;
  }
  .menu {
    display: none;
    font-size: 4.3vmin;
    width: 28vmin;
    right: 2.1%;
  }
  .Galley {
    position: absolute;
    top: 9%;
    bottom: none;
    font-size: 1em;
  }
  .koumoku .food {
    position: absolute;
    top: 18%;
    right: 3%;
    bottom: none;
  }
  .koumoku .mono {
    position: absolute;
    top: 26%;
    right: 3%;
    bottom: none;
  }
  .koumoku .hito {
    position: absolute;
    top: 34%;
    right: 3%;
    bottom: none;
  }
  .koumoku .spatial {
    position: absolute;
    top: 42%;
    right: 3%;
    bottom: none;
  }
  .biography {
    position: absolute;
    top: 52%;
    bottom: none;
    font-size: 1em;
    letter-spacing: 0.1em;
  }
  .contact {
    position: absolute;
    top: 65%;
    bottom: none;
    font-size: 1em;
  }
  .roba {
    position: fixed;
    right: 3%;
    bottom: 5%;
  }
  .roba img {
    width: 60px;
    height: 49px;
  }
  .osaka {
    font-size: 1.4vmax;
  }
  .main {
    width: 92%;
  }
  .chaild {
    width: 80vmin;
    height: 67vmin;
    top: 50%;
  }
  .mainul img {
    width: 100%;
    height: 20%;
    border-radius: 1.5vmin;
  }
  .mainul p {
    font-size: 3.5vmin;
  }
  .caption1 {
    top: -4.3%;
  }
  .gImg1:hover .caption1 {
    font-size: 4vmin;
    top: -5.1%;
  }
  .caption2 {
    top: 22.7%;
  }
  .gImg2:hover .caption2 {
    font-size: 4vmin;
    top: 21.9%;
  }
  .caption3 {
    top: 49.7%;
  }
  .gImg3:hover .caption3 {
    font-size: 4vmin;
    top: 48.9%;
  }
  .caption4 {
    top: 74.8%;
  }
  .gImg4:hover .caption4 {
    font-size: 3.5vmin;
    top: 74.4%;
  }
  .modoru p {
    color: #5C5C5C
  }
  .modoru {
    position: fixed;
    left: 3%;
    bottom: 6%;
    display: inline-block;
    font-size: 2.8vmax;
    color: #B5B5B5;
    border: 1px solid #CBCBCB;
    border-radius: 5px;
    padding-top: 3px;
    padding-right: 5px;
    padding-bottom: 3px;
    padding-left: 5px;
    z-index: 101;
    background: rgba(255, 255, 255, 0.7);
    -webkit-box-shadow: 0px 0px 3px #FFFFFF;
    box-shadow: 0px 0px 3px #FFFFFF;
  }
}