@charset "utf-8";

/* full about */

body {
  font-size: 16px;
  line-height: 1.8em;
}

picture {
  line-height: 0;
}

@media screen and (max-width: 768px) {
  body {
    font-size: 14px;
    line-height: 1.8em;
  }
}

.logoscale {
  animation: logoscale_anime 0.5s ease forwards;
}
@keyframes logoscale_anime {
  0% {
    opacity: 0;
    transform: scale(1000);
  }
  0% {
    opacity: 1;
    transform: scale(1000);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.flag {
  animation: flag_anime .5s ease 0s 1 forwards;
}
@keyframes flag_anime {
  0% {
    transform: scale(0);
    opacity: 1;
  }
  100% {
    transform: scale(1) rotate(720deg);
    opacity: 1;
  }
}

.manufade {
  animation: manufade_anime 1.5s ease 1s 1 forwards;
}
@keyframes manufade_anime {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.leftwave {
  animation: leftwave_anime 5s ease infinite;
}
@keyframes leftwave_anime {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  30% {
    -webkit-transform: translate3d(-25%, 0, 0);
    transform: translate3d(-25%, 0, 0);
  }
  35% {
    -webkit-transform: translate3d(-25%, 0, 0);
    transform: translate3d(-25%, 0, 0);
  }
  60% {
    -webkit-transform: translate3d(0, -6%, 0);
    transform: translate3d(0, -6%, 0);
  }
  70% {
    -webkit-transform: translate3d(0, -6%, 0);
    transform: translate3d(0, -6%, 0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.leftwave2 {
  animation: leftwave_anime2 5s ease infinite;
}
@keyframes leftwave_anime2 {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  20% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  50% {
    -webkit-transform: translate3d(-25%, 0, 0);
    transform: translate3d(-25%, 0, 0);
  }
  55% {
    -webkit-transform: translate3d(-25%, 0, 0);
    transform: translate3d(-25%, 0, 0);
  }
  80% {
    -webkit-transform: translate3d(0, -5%, 0);
    transform: translate3d(0, -5%, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5%, 0);
    transform: translate3d(0, -5%, 0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.rightwave {
  animation: rightwave_anime 5s ease infinite;
}
@keyframes rightwave_anime {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  30% {
    -webkit-transform: translate3d(25%, 0, 0);
    transform: translate3d(25%, 0, 0);
  }
  35% {
    -webkit-transform: translate3d(25%, 0, 0);
    transform: translate3d(25%, 0, 0);
  }
  60% {
    -webkit-transform: translate3d(0, -6%, 0);
    transform: translate3d(0, -6%, 0);
  }
  70% {
    -webkit-transform: translate3d(0, -6%, 0);
    transform: translate3d(0, -6%, 0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.rightwave2 {
  animation: rightwave_anime2 5s ease infinite;
}
@keyframes rightwave_anime2 {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  20% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  50% {
    -webkit-transform: translate3d(25%, 0, 0);
    transform: translate3d(25%, 0, 0);
  }
  55% {
    -webkit-transform: translate3d(25%, 0, 0);
    transform: translate3d(25%, 0, 0);
  }
  80% {
    -webkit-transform: translate3d(0, -5%, 0);
    transform: translate3d(0, -5%, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5%, 0);
    transform: translate3d(0, -5%, 0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.cloudleft {
  animation: cloudleft_anime 12s ease infinite;
}
@keyframes cloudleft_anime {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  35% {
    -webkit-transform: translate3d(-40%, 0, 0);
    transform: translate3d(-40%, 0, 0);
  }
  45% {
    -webkit-transform: translate3d(-40%, 0, 0);
    transform: translate3d(-40%, 0, 0);
  }
  80% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.cloudright {
  animation: cloudright_anime 14s ease infinite;
}
@keyframes cloudright_anime {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  35% {
    -webkit-transform: translate3d(50%, 0, 0);
    transform: translate3d(50%, 0, 0);
  }
  45% {
    -webkit-transform: translate3d(50%, 0, 0);
    transform: translate3d(50%, 0, 0);
  }
  80% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.yure {
  animation: yure_anime 8s ease infinite;
}
@keyframes yure_anime {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  10% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  20% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  30% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}

.yure2 {
  animation: yure_anime 6s ease infinite;
}
@keyframes yure_anime {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  10% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  20% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  30% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}

.fuwa {
  animation: fuwa_anime 6s ease infinite;
}
@keyframes fuwa_anime {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  30% {
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
  35% {
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
  60% {
    -webkit-transform: translate3d(0, 5%, 0);
    transform: translate3d(0, 5%, 0);
  }
  65% {
    -webkit-transform: translate3d(0, 5%, 0);
    transform: translate3d(0, 5%, 0);
  }
  80% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fuwaoval {
  animation: fuwaoval_anime 6s ease infinite;
}
@keyframes fuwaoval_anime {
  0% {
    top: 50%;
  }
  50% {
    top: 40%;
  }
  100% {
    top: 50%;
  }
}

.katakata {
  animation: katakata_anime 5s ease infinite;
}
@keyframes katakata_anime {
  0% {
    -webkit-transform: rotate(0deg);
    transform: translate3d(0deg);
  }
  60% {
    -webkit-transform: rotate(0deg);
    transform: translate3d(0deg);
  }
  62% {
    -webkit-transform: rotate(-4deg);
    transform: translate3d(-4deg);
  }
  64% {
    -webkit-transform: rotate(4deg);
    transform: translate3d(4deg);
  }
  66% {
    -webkit-transform: rotate(-4deg);
    transform: translate3d(-4deg);
  }
  68% {
    -webkit-transform: rotate(4deg);
    transform: translate3d(4deg);
  }
  70% {
    -webkit-transform: rotate(0deg);
    transform: translate3d(0deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
    transform: translate3d(0deg);
  }
}

.yurayura {
  animation: yurayura_anime 4s ease infinite;
}
@keyframes yurayura_anime {
  0% {
    -webkit-transform: rotate(0deg);
    transform: translate3d(0deg);
  }
  25% {
    -webkit-transform: rotate(15deg);
    transform: translate3d(15deg);
  }
  50% {
    -webkit-transform: rotate(0deg);
    transform: translate3d(0deg);
  }
  74% {
    -webkit-transform: rotate(-15deg);
    transform: translate3d(-15deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
    transform: translate3d(0deg);
  }
}

.header {
  position: relative;
  background: url(../img/about/header_bg_pc.jpg) center no-repeat;
  background-size: cover;
  overflow: hidden;
}
.header_inner {
  position: relative;
  padding: 60px 0 110px;
  z-index: 2;
}
.header_logo {
  max-width: 340px;
  margin: 0 auto 28px;
  opacity: 0;
}
.header_title {
  max-width: 320px;
  margin: 0 auto 30px;
  opacity: 0;
}
.header_menu_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 900px;
  width: 86%;
  margin: 0 auto 20px;
  opacity: 0;
}
.header_menu_item {
  display: block;
  width: 23.5%;
  transition: .25s;
}
.header_menu_item:hover {
  transform: rotate(-4deg) scale(1.1);
}
.header_btn_top {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 90px;
  height: 90px;
  transition: .25s;
}
.header_sns_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  opacity: 0;
}
.header_sns_item {
  display: block;
  width: 55px;
  height: 55px;
  margin: 0 10px;
  transition: .25s;
}
.header_sns_item_tw {
  background: url(../img/top/icon_twitter.svg) center no-repeat;
  background-size: 100%;
}
.header_sns_item_tw:hover {
  transform: scale(1.075);
} 
.header_btn_top:hover {
  transform: rotate(360deg) scale(1.15);
}
.header_bg_cloud_full {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/about/header_cloud_full_pc.png) center no-repeat;
  background-size: cover;
  z-index: 1;
}
.header_parts_wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.header_parts {
  position: absolute;
}
.header_cloud1 {
  top: 0;
  left: 20%;
  width: 11.27%
}
.header_cloud2 {
  top: 3%;
  left: 77%;
  width: 8.27%
}
.header_cloud3 {
  top: 8%;
  right: 0%;
  width: 12.22%
}
.header_cloud4 {
  top: 23%;
  left: 0;
  width: 11.27%
}
.header_cloud5 {
  top: 39%;
  left: 72%;
  width: 11.49%
}
.header_cloud6 {
  top: 75%;
  left: 0;
  width: 14.45%
}
.header_cloud7 {
  top: 73%;
  left: 17%;
  width: 12.51%
}
.header_cloud8 {
  top: 75%;
  left: 75%;
  width: 13.32%
}
.header_oval {
  top: 50%;
  left: 10%;
  width: 80%;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .header {
    background: url(../img/about/header_bg_sp.jpg) center no-repeat;
    background-size: cover;
  }
  .header_inner {
    padding: 55px 0 20vw;
  }
  .header_logo {
    max-width: 53%;
    min-width: 200px;
    width: 53%;
    margin: 0 auto 26px;
  }
  .header_title {
    max-width: 53%;
    min-width: 200px;
    width: 53%;
    margin: 0 auto 20px;
  }
  .header_menu_item {
    width: 47.5%;
    margin: 0 0 2.25%;
  }
  .header_sns_item {
    display: block;
    width: 10.6vw;
    height: 10.6vw;
  }
  .header_btn_top {
    position: absolute;
    top: 7px;
    left: 7px;
    width: 60px;
    height: 60px;
  }
  .header_cloud1 {
    top: 0;
    left: 24%;
    width: 17.86%
  }
  .header_cloud2 {
    top: 2%;
    left: 78%;
    width: 13.33%
  }
  .header_cloud3 {
    top: 7%;
    right: 0%;
    width: 19.46%
  }
  .header_cloud4 {
    top: 30%;
    left: 0;
    width: 20.53%
  }
  .header_cloud5 {
    top: 30%;
    left: 78%;
    width: 18.4%
  }
  .header_cloud6 {
    top: 85%;
    left: 0;
    width: 23.2%
  }
  .header_cloud7 {
    top: 77%;
    left: 17%;
    width: 20%
  }
  .header_cloud8 {
    top: 79%;
    left: 74%;
    width: 21.33%
  }
  .header_oval {
    top: 7%;
    left: 3%;
    width: 89.33%;
  }
}

.intro {
  position: relative;
  padding: 0 0 7%;
  background: url(../img/about/intro_bg_ptn.png) center top;
}
.intro_bg_wrap {
  position: relative;
  padding: 17.42vw 0 2vw;
  border-bottom: 10px solid #BE1C2D;
  background: url(../img/about/intro_bg_pc.jpg) center no-repeat;
  background-size: cover;
  overflow: hidden;
}
.intro_title {
  position: absolute;
  top: -5.5vw;
  left: 45.25%;
  width: 9.5%;
  z-index: 2;
  opacity: 0;
}
.intro_title img:last-of-type {
  position: absolute;
  bottom: -7.75%;
  left: -4%;
  width: 120%;
}
.intro_catch {
  position: relative;
  width: 87.84%;
  margin: 0 auto;
  z-index: 2;
}
.intro_cast4 {
  width: 76.13%;
  margin: 0 auto;
}
.intro_imgset1_wrap {
  position: absolute;
  bottom: 19%;
  left: 2%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  width: 96%;
  z-index: 2;
}
.intro_imgset1 {
  width: 23.5%;
}
.intro_imgset2 {
  width: 23%;
}
.intro_slider {
  width: 90%;
  max-width: 900px;
  margin: -7vw auto 0;
  box-sizing: border-box;
  background: #FFFCCE
}
.intro_slide_inner {
  padding: 4.5% 4.5% 80px;
}
.intro_slide_text {
  height: 9em;
  margin: 4.5% 0;
  line-height: 1.8em;
  overflow-y: hidden;
}
.mCSB_draggerContainer {
  background: #E8B449;
  opacity: 1 !important
}
.mCSB_scrollTools {
  opacity: 1;
}
.mCS-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 16px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  background-color: rgba(0,0,0,1);
}
.mCSB_scrollTools .mCSB_draggerRail {
  display: none;
  width: 16px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
.intro_slider .slick-dots {
  bottom: 4.5%;
  transition: .25s;
}
.intro_slider .slick-dots li {
  width: 50px !important;
  height: 50px !important;
  margin: 0 5px !important;
}
.intro_slider .slick-dots li button {
  width: 50px;
  height: 50px;
  padding: 0;
  font-weight: 700;
  font-size: 16px;
  color: #fff;
  line-height: 50px;
  text-align: center;
  opacity: .55;
  transition: .25s;
}
.intro_slider .slick-dots li button:before {
  content: "";
}
.intro_slider .slick-dots li:nth-of-type(odd) button {
  background: url(../img/about/intro_slide_dot1_bg.svg) center no-repeat;
  background-size: 100%;
}
.intro_slider .slick-dots li:nth-of-type(even) button {
  background: url(../img/about/intro_slide_dot2_bg.svg) center no-repeat;
  background-size: 100%;
}
.intro_slider .slick-dots li button:hover,
.intro_slider .slick-dots li.slick-active button {
  opacity: 1;
}

.intro_imgset2_wrap {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  z-index: 2;
  overflow: hidden;
}
.intro_imgset2_item {
  width: 49.65%;
}

.intro_parts {
  position: absolute;
  z-index: 0;
}
.intro_parts.intro_wave1 {
  top: 28%;
  left: 0;
  width: 10.98%;
}
.intro_parts.intro_wave2 {
  top: 5%;
  right: 0;
  width: 13.17%;
}
.intro_parts.intro_wave3 {
  top: 83%;
  left: 0;
  width: 10.98%;
}
.intro_parts.intro_wave4 {
  top: 86%;
  right: 0;
  width: 13.17%;
}
.intro_parts.intro_wave5 {
  top: 49%;
  left: 91%;
  width: 7.46%;
  z-index: 2;
}

.intro_parts.intro_cloud2 {
  top: 2%;
  left: 68%;
  width: 11.93%;
  z-index: 2;
}
.intro_parts.intro_cloud3 {
  top: 4%;
  left: 14%;
  width: 15.95%;
}
.intro_parts.intro_cloud4 {
  top: 29%;
  left: 36.75%;
  width: 14.56%;
}
.intro_parts.intro_cloud5 {
  top: 30%;
  left: 76%;
  width: 14.34%;
}
.intro_parts.intro_cloud6 {
  top: 36%;
  left: 11%;
  width: 14.56%;
}
.intro_parts.intro_cloud7 {
  top: 61%;
  left: 80%;
  width: 8.27%;
  z-index: 2;
}
.intro_parts.intro_cloud8 {
  top: 77%;
  left: 0;
  width: 9.51%;
  z-index: 2;
}
.intro_parts.intro_cloud9 {
  top: 80.5%;
  left: 66%;
  width: 13.32%;
  z-index: 2;
}
.intro_parts.intro_cloud10 {
  top: 85%;
  left: 19%;
  width: 13.03%;
}

@media screen and (max-width: 768px) {
  .intro {
    padding: 0 0 20%;
  }
  .intro_bg_wrap {
    padding: 45vw 0 15vw;
    background: url(../img/about/intro_bg_sp.jpg) center no-repeat;
    background-size: cover;
  }
  .intro_title {
    position: absolute;
    top: -15vw;
    left: 36.925%;
    width: 26.15%;
  }
  .intro_title img:last-of-type {
    bottom: -5.5%;
    left: -4%;
    width: 62%;
  }
  .intro_catch {
    position: relative;
    width: 86%;
    margin: 0 auto;
    z-index: 2;
  }
  .intro_cast4 {
    position: relative;
    width: 100%;
    margin: -3% 0 0;
    overflow: hidden;
    z-index: 2;
  }
  .intro_cast4 img {
    display: block;
    width: 116%;
    margin: 0 0 0 -8%;
  }
  .intro_imgset1_wrap {
    position: relative;
    bottom: 0;
    left: 0;
    align-items: flex-end;
    width: 96%;
    margin: -8% auto 0;
  }
  .intro_imgset1 {
    width: 49%;
  }
  .intro_imgset2 {
    width: 49%;
  }
  .intro_slider {
    margin: -13vw auto 0;
  }
  .intro_slide_text {
    height: 16.2em;
  }
  .intro_imgset2_item {
    width: 100%;
  }

  .intro_parts.intro_wave1 {
    top: 8.75%;
    left: 0;
    width: 17.6%;
    z-index: 2;
  }
  .intro_parts.intro_wave2 {
    top: 8.5%;
    right: 0;
    width: 21.06%;
  }
  .intro_parts.intro_wave3 {
    top: 50%;
    left: 0;
    width: 17.6%;
    z-index: 2;
  }
  .intro_parts.intro_wave4 {
    top: 58.5%;
    right: 0;
    width: 21.06%;
    z-index: 2;
  }
  .intro_parts.intro_wave5 {
    top: 63%;
    left: 56%;
    width: 12%;
    z-index: 2;
  }
  
  .intro_parts.intro_cloud2 {
    top: 1%;
    left: 70%;
    width: 19.2%;
    z-index: 2;
  }
  .intro_parts.intro_cloud3 {
    top: 4%;
    left: 4%;
    width: 25.6%;
  }
  .intro_parts.intro_cloud4 {
    top: 30%;
    left: 29%;
    width: 23.2%;
  }
  .intro_parts.intro_cloud5 {
    top: 33%;
    left: 88%;
    width: 15.73%;
  }
  .intro_parts.intro_cloud6 {
    top: 39%;
    left: -1%;
    width: 23.2%;
  }
  .intro_parts.intro_cloud7 {
    top: 80%;
    left: 53%;
    width: 16.8%;
    z-index: 2;
  }
  .intro_parts.intro_cloud8 {
    top: 91.65%;
    left: -1.5%;
    width: 19.2%;
    z-index: 2;
  }
  .intro_parts.intro_cloud9,
  .intro_parts.intro_cloud10 {
    display: none;
  }
}

.diagram {
  position: relative;
  padding: 13.17vw 0 10vw;
  background: url(../img/about/diagram_bg_ptn.png) center;
}
.diagram_title {
  position: absolute;
  top: -3.5vw;
  left: 45.025%;
  width: 9.95%;
}
.diagram_inner {
  position: relative;
  width: 65.88%;
  margin: 0 auto;
  z-index: 2;
}
.diagram_map img {
  pointer-events: auto;
}
.diagram_parts_wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.diagram_parts {
  position: absolute;
}
.diagram_person1 {
  top: 3%;
  left: 54%;
  width: 9.29%;
  z-index: 2;
}
.diagram_person2 {
  top: 20%;
  left: 3%;
  width: 12.73%;
}
.diagram_person3 {
  top: 33%;
  left: 80%;
  width: 13.32%;
  z-index: 2;
}
.diagram_person4 {
  top: 52%;
  left: 6%;
  width: 13.03%;
  z-index: 2;
}
.diagram_person5 {
  top: 68.5%;
  left: 84%;
  width: 14.56%;
}
.diagram_wave1 {
  top: 35%;
  left: 0;
  width: 10.98%;
}
.diagram_wave2 {
  top: 14%;
  right: 0; 
  width: 13.17%;
}
.diagram_wave3 {
  top: 70%;
  left: 0;
  width: 10.98%;
}
.diagram_wave4 {
  top: 57%;
  right: 0; 
  width: 13.17%;
}
.diagram_cloud0 {
  top: 4%;
  left: 39.5%;
  width: 9.59%;
}
.diagram_cloud1 {
  top: 0;
  left: 10%;
  width: 14.34%;
}
.diagram_cloud2 {
  top: 3%;
  left: 78%;
  width: 15.95%;
}
.diagram_cloud3 {
  top: 86%;
  left: 0;
  width: 13.1%
}

@media screen and (max-width: 768px) {
  .diagram {
    padding: 30.75vw 0 45vw;
  }
  .diagram_title {
    position: absolute;
    top: -14vw;
    left: 36.4%;
    width: 27.2%;
  }
  .diagram_inner {
    width: 93.33%;
  }
  .diagram_person1 {
    top: 6.5%;
    left: 56%;
    width: 16.8%;
    z-index: 2;
  }
  .diagram_person2 {
    top: 1.75%;
    left: 12%;
    width: 22.66%;
  }
  .diagram_person3 {
    top: 81%;
    left: 36.5%;
    width: 23.73%;
    z-index: 2;
  }
  .diagram_person4 {
    top: 79%;
    left: 8%;
    width: 23.73%;
    z-index: 2;
  }
  .diagram_person5 {
    top: 79.5%;
    left: 69%;
    width: 26.93%;
  }
  .diagram_wave1,
  .diagram_wave2,
  .diagram_wave3,
  .diagram_wave4 {
    display: none;
  }
  .diagram_cloud0 {
    display: none;
  }
  .diagram_cloud1 {
    top: 4%;
    left: -6.5%;
    width: 17.6%;
  }
  .diagram_cloud2 {
    top: 2%;
    left: 73%;
    width: 25.6%;
  }
  .diagram_cloud3 {
    display: none;
  }
}

.staff {
  position: relative;
  padding: 11.5vw 0 0;
  background: url(../img/about/staff_bg_ptn.png) center;
}
.staff_title {
  position: absolute;
  top: -5vw;
  left: 45.025%;
  width: 9.95%;
}
.staff_inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.staff_wrap {
  position: relative;
  max-width: 900px;
  width: 90%;
  margin: 0 auto 20px;
  padding: 2.5%;
  z-index: 3;
}
.staff_wrap.staff1 {
  background:
  url(../img/about/staff_corner1.png) left top no-repeat,
  url(../img/about/staff_corner2.png) right top no-repeat,
  url(../img/about/staff_corner3.png) left bottom no-repeat,
  url(../img/about/staff_corner4.png) right bottom no-repeat,
  url(../img/about/staff_bg_ptn1.jpg) center repeat-y;
  background-size:
  4.5% auto,
  4.5% auto,
  4.5% auto,
  4.5% auto,
  100% auto;
}
.staff_wrap.staff2 {
  background:
  url(../img/about/staff_corner1.png) left top no-repeat,
  url(../img/about/staff_corner2.png) right top no-repeat,
  url(../img/about/staff_corner3.png) left bottom no-repeat,
  url(../img/about/staff_corner4.png) right bottom no-repeat,
  url(../img/about/staff_bg_ptn2.jpg) center repeat-y;
  background-size:
  4.5% auto,
  4.5% auto,
  4.5% auto,
  4.5% auto,
  100% auto;
}
.staff_wrap.staff3 {
  background:
  url(../img/about/staff_corner1.png) left top no-repeat,
  url(../img/about/staff_corner2.png) right top no-repeat,
  url(../img/about/staff_corner3.png) left bottom no-repeat,
  url(../img/about/staff_corner4.png) right bottom no-repeat,
  url(../img/about/staff_bg_ptn3.jpg) center repeat-y;
  background-size:
  4.5% auto,
  4.5% auto,
  4.5% auto,
  4.5% auto,
  100% auto;
}
.staff_wrap.staff4 {
  background:
  url(../img/about/staff_corner1.png) left top no-repeat,
  url(../img/about/staff_corner2.png) right top no-repeat,
  url(../img/about/staff_corner3.png) left bottom no-repeat,
  url(../img/about/staff_corner4.png) right bottom no-repeat,
  url(../img/about/staff_bg_ptn4.jpg) center repeat-y;
  background-size:
  4.5% auto,
  4.5% auto,
  4.5% auto,
  4.5% auto,
  100% auto;
}
.staff_wrap.staff5 {
  background:
  url(../img/about/staff_corner1.png) left top no-repeat,
  url(../img/about/staff_corner2.png) right top no-repeat,
  url(../img/about/staff_corner3.png) left bottom no-repeat,
  url(../img/about/staff_corner4.png) right bottom no-repeat,
  url(../img/about/staff_bg_ptn5.jpg) center repeat-y;
  background-size:
  4.5% auto,
  4.5% auto,
  4.5% auto,
  4.5% auto,
  100% auto;
}
.staff_set {
  padding: 1% 3%;
  background: url(../img/about/bg_ptn_base.jpg) center;
}
.staff5 .staff_set {
  padding: 2% 3%;
}
.staff_name {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}
.staff_name_text {
  width: calc(100% - 70px);
}
.staff_name_icon {
  position: relative;
  width: 50px;
  height: 50px;
}
.staff_name_icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 20px;
  background: #fff;
  transform: translateX(-50%) translateY(-50%);
  transition: .25s;
}
.staff_name_icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 2px;
  background: #fff;
  transform: translateX(-50%) translateY(-50%);
}
.active .staff_name_icon::before {
  opacity: 0;
}
.staff_name_icon1 {
  background: url(../img/about/staff_btn_bg1.png) center no-repeat;
  background-size: 100%;
}
.staff_name_icon2 {
  background: url(../img/about/staff_btn_bg2.png) center no-repeat;
  background-size: 100%;
}
.staff_name_icon3 {
  background: url(../img/about/staff_btn_bg3.png) center no-repeat;
  background-size: 100%;
}
.staff_name_icon4 {
  background: url(../img/about/staff_btn_bg4.png) center no-repeat;
  background-size: 100%;
}
.staff_name_icon5 {
  background: url(../img/about/staff_btn_bg5.png) center no-repeat;
  background-size: 100%;
}

.staff_prof {
  display: none;
}
.staff_prof_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 94%;
  margin: 15px auto;
}
.staff_prof_wrap.noph {
  display: block;
}
.staff_prof_photo {
  width: 24%;
}
.staff_prof_text {
  width: 72%;
}
.staff_prof_wrap.noph .staff_prof_text {
  width: 100%;
}

.staff_photoset_wrap {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 0 0 3.5%;
}
.staff_photoset_wrap::before {
  content: "";
  position: absolute;
  top: 9%;
  left: 0;
  width: 100%;
  height: 91%;
  background: url(../img/about/staff_imgset_bg_ptn.png) center;
  z-index: 0;
}
.staff_photoset_item {
  position: relative;
  width: 49.75%;
  z-index: 2;
}

.staff_parts_wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.staff_parts {
  position: absolute;
}
.staff_title_wave1 {
  top: 3%;
  left: 38%;
  width: 5.12%;
}
.staff_title_wave2 {
  top: 6.5%;
  left: 55%;
  width: 5.41%;
}
.staff_wave1 {
  top: 15%;
  left: 0;
  width: 10.98%;
}
.staff_wave2 {
  top: 5%;
  right: 0;
  width: 13.17%;
}
.staff_wave3 {
  top: 56%;
  left: 0;
  width: 10.98%;
}
.staff_wave4 {
  top: 38%;
  right: 0;
  width: 13.17%;
}
.staff_wave5 {
  top: 9%;
  left: 10%;
  width: 6.51%;
}
.staff_wave6 {
  top: 19%;
  right: 10%;
  width: 7.02%;
}
.staff_wave7 {
  top: 44%;
  left: 8%;
  width: 8.56%;
}
.staff_wave8 {
  top: 56%;
  right: 7%;
  width: 9.59%;
}

@media screen and (max-width: 768px) {
  .staff {
    padding: 34vw 0 0;
  }
  .staff_title {
    top: -11vw;
    left: 36.4%;
    width: 27.2%;
  }
  .staff_set {
    padding: 3% 4%;
  }
  .staff5 .staff_set {
    padding: 3% 5%;
  }
  .staff_name_text {
    width: calc(100% - 80px);
  }
  .staff_name_icon {
    position: relative;
    width: 38px;
    height: 38px;
  }
  .staff_name_icon::before {
    height: 14px;
  }
  .staff_name_icon::after {
    width: 14px;
  }
  .staff_prof_photo {
    width: 70%;
    margin: 3% 15%;
  }
  .staff_prof_text {
    width: 100%;
  }
  .staff_photoset_wrap {
    padding: 12% 0 6.5%;
  }
  .staff_photoset_wrap::before {
    top: 18%;
    height: 82%;
  }
  .staff_photoset_item {
    width: 100%;
  }
  .staff_title_wave1 {
    top: 4vw;
    left: 27%;
    width: 11.46%;
  }
  .staff_title_wave2 {
    top: 18vw;
    left: 62%;
    width: 12%;
  }
  .staff_wave1 {
    top: 10%;
    left: -5%;
    width: 12.26%;
    z-index: 3;
  }
  .staff_wave2 {
    top: 2%;
    right: -7%;
    width: 15.73%;
  }
  .staff_wave3 {
    top: 41%;
    left: -5%;
    width: 12.26%;
    z-index: 3;
  }
  .staff_wave4 {
    top: 57%;
    right: -7%;
    width: 15.73%;
    z-index: 3;
  }
  .staff_wave5,
  .staff_wave6,
  .staff_wave7,
  .staff_wave8 {
    display: none;
  }
}


.bottom {
  
}
.bottom_roadshow_wrap {
  padding: 20px 0 18px;
  background: url(../../teaser2/img/bg_gold.jpg) center no-repeat;
  background-size: cover;
  overflow: hidden;
}
.bottom_roadshow {
  width: 90%;
  max-width: 264px;
  margin: 0 auto;
}
.bottom_billing_wrap {
  padding: 7% 0 37%;
  background: url(../img/about/bottom_bg_pc.jpg) center bottom no-repeat;
  background-size: cover;
}
.bottom_billing {
  width: 46.85%;
  max-width: 640px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .bottom_roadshow_wrap {
    padding: 4% 0;
  }
  .bottom_billing_wrap {
    padding: 10% 0 60%;
    background: url(../img/about/bottom_bg_sp.jpg) center bottom no-repeat;
    background-size: cover;
  }
  .bottom_billing {
    width: 94%;
    max-width: 94%;
    margin: 0 auto;
  }
}

.pagetop {
  position: fixed;
  bottom: 10px;
  right: 10px;
  width: 90px;
  height: 90px;
  background: url(../img/about/btn_pagetop.svg) center no-repeat;
  background-size: 100%;
  cursor: pointer;
  z-index: 10;
  transition: .25s;
}
.pagetop:hover {
  transform: rotate(360deg) scale(1.15);
}
@media screen and (max-width: 768px) {
  .pagetop {
    width: 60px;
    height: 60px;
  }
}

/* modal */
.profModal #cboxClose {
	position: absolute;
	top: 25px;
	right: 25px;
	display: block;
	background: url("../img/about/modal_btn_close.svg") center no-repeat;
  background-size: 100%;
	width: 55px;
	height: 55px;
	text-indent: -9999px;
	transition: all .5s;
	z-index: 200;
}
.profModal .cboxIframe {
  padding: 25px;
  box-sizing: border-box;
  background: url(../img/about/modal_bg_ptn.png) center;
}