@charset "utf-8";
/* CSS Document */
html, body {
  height: 100%;
  width: 100%;
  margin: 0 auto;
  color: #333333;
  background-color: #FFFFFF;
  line-height: 1;
}
body {
  position: relative;
}
section {
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 999;
}
/*--PCstyle*/
#contents {
  margin: 0 10vw 10vw 10vw;
  font-family: Helvetica, '游ゴシック', 'Yu Gothic', YuGothic, HiraKakuProN-W3, 'メイリオ', Meiryo, sans-serif;
  color: #333;
  line-height: 1.9;
}
#contents .title {
  font-size: 0.9vw;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 2em;
  font-family: Helvetica, '游ゴシック', 'Yu Gothic', YuGothic, HiraKakuProN-W3, 'メイリオ', Meiryo, 'Lato', sans-serif;
  color: #a5a5a5;
  margin: 5vw 0 2vw 1rem;
}
#contents .contents_body {
  padding: 0 0 5% 0;
}
#contents .title_lower {
  font-family: 'Lato', sans-serif;
  font-size: 0.9vw;
  font-weight: 400;
  letter-spacing: .1em;
  margin: 0 0 2vh 1rem;
}
#contents .contents_body .flexbox {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
#contents .webd_box {
  width: 33.33%;
  box-sizing: border-box;
  padding: 0 1rem 1rem 1rem;
}
#contents .webd_box img {
  width: 100%;
}
#contents .ban_photo_box {
  width: 33.33%;
  box-sizing: border-box;
  padding: 0 1rem 1rem 1rem;
}
#contents .ban_photo_box img {
  width: 100%;
}
/*--Work*/
/*about--*/
.about_kv::before {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100vh;
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-image: url("../img/contents/kv.png");
  background-size: cover;
}
.about_wrap {
  margin-top: 75vh;
  background-color: #EDEDED; /*背景*/
}
#about_contents {
  overflow: hidden;
  margin: auto 10vw 0 10vw;
  font-family: Helvetica, '游ゴシック', 'Yu Gothic', YuGothic, HiraKakuProN-W3, 'メイリオ', Meiryo, sans-serif;
  color: #333;
  line-height: 1.9;
}
#about_contents .title {
  font-family: Helvetica, '游ゴシック', 'Yu Gothic', YuGothic, HiraKakuProN-W3, 'メイリオ', Meiryo, 'Lato', sans-serif;
  font-weight: 400;
  color: #a5a5a5;
  margin: 5vw 0 2vw 0;
}
.profile::after {
  content: url("../img/contents/cat_02.svg");
  display: flex;
  flex-direction: row-reverse;
  margin-top: 10vw;
  line-height: 0;
}
.profile_contact::before {
  content: "";
  display: block;
  border-top: 1px solid #9c9c9b;
  padding-bottom: 7.5vw;
  line-height: 0;
}
.p_text {
  font-size: 0.9vw;
  letter-spacing: .1em;
  line-height: 2em;
}
.profile_rubi {
  font-size: 0.9vw;
  font-weight: bold;
  letter-spacing: .1em;
  padding: none;
}
.profile_name {
  font-size: 3vw;
  letter-spacing: .1em;
  margin: 0 0 7.5vw;
  position: relative;
}
.profile_name_position {
  font-size: 1vw;
  letter-spacing: .1em;
  vertical-align: middle;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  line-height: 4vw;
  border-left: 1px solid #9c9c9b;
  color: #9c9c9b;
  font-weight: normal;
  padding-left: 2.5vw;
}
#about_contents .contents_body {
  padding: 5% 0;
}
#about_contents .contents_body .flexbox {
  display: flex;
  flex-wrap: wrap;
}
#about_contents .flexbox p {
  font-size: 100%;
  text-align: left;
}
#about_contents .flexbox p:last-child {
  font-size: 14px;
  text-align: left;
}
#about_contents .ban_photo_box p {
  max-width: 225px;
}
#about_contents .ban_photo_box {
  width: 25%;
  padding-bottom: 20px;
}
#about_contents .ban_photo_box img {
  width: 100%;
}
.profile_contact {
  text-align: center;
}
.profile_contact p {
  margin-bottom: 20px;
}
/*--about*/
/*Tabletstyle--*/
@media screen and (max-width: 1366px) {
  #contents {
    padding: 0 0 0 0;
  }
  #contents .webd_box {
    width: 50%;
  }
  #contents .ban_photo_box {
    width: 50%;
  }
  #contents .title {
    font-size: 1.5vw;
    margin: 5vw 0 2vw 1rem;
  }
  #contents .title_lower {
    font-size: 1.5vw;
    letter-spacing: .1em;
    margin: 0 0 2vh 1rem;
  }
  /*about--*/
  .about_kv::before {
    background-image: url("../img/contents/kv_tab.png");
  }
  .p_text {
    font-size: 1.5vw;
    letter-spacing: .1em;
    line-height: 2em;
  }
  .profile_rubi {
    font-size: 1.5vw;
    font-weight: bold;
    letter-spacing: .1em;
    padding: none;
  }
  .profile_name_position {
    font-size: 1.5vw;
    letter-spacing: .1em;
  }
  .profile_name {
    font-size: 3vw;
    letter-spacing: .1em;
    margin: 0 0 7.5vh;
    position: relative;
  }
}
/*--SPstyle*/
/*スマホ表示基準(max-width: 767px)*/
@media screen and (max-width: 1000px) {
  #contents .contents_body {
    padding: 8% 5% 0 5%;
  }
  #contents .contents_body .flexbox {
    display: block;
  }
  #contents .webd_box {
    width: 100%;
    padding: 0 0 1rem 0;
  }
  #contents .webd_box img {
    width: 100%;
  }
  #contents .webd_box p {
    max-width: 100%;
  }
  #contents .ban_photo_box {
    width: 100%;
    padding: 0 0 1rem 0;
  }
  #contents .ban_photo_box img {
    width: 100%;
  }
  #contents .ban_photo_box p {
    max-width: 100%;
  }
  #contents .title {
    font-size: 3vw;
  }
  #contents .title_lower {
    font-size: 2.5vw;
  }
  /*about--*/
  .about_wrap {
    margin-top: 50vh;
  }
  .about_kv::before {
    margin-top: 10vh;
    background-image: url("../img/contents/kv_sp.png");
    background-position: left top;
    background-size: 100% auto;
  }
  .p_text {
    font-size: 2.5vw;
    letter-spacing: .1em;
    line-height: 2em;
  }
  .profile_rubi {
    font-size: 2.5vw;
    font-weight: bold;
    letter-spacing: .1em;
    padding: 7.5vh 0 0;
  }
  .profile_name_position {
    font-size: 2.5vw;
  }
  .profile_name {
    font-size: 5vw;
    letter-spacing: .1em;
    margin: 0 0 7.5vh;
    position: relative;
  }
  .profile_contact button {
    display: none!important;
  }
  #about_contents .contents_body {
    padding: 8% 5%;
  }
}
/*SPstyle--*/