.ygen_wrap {
  width: 100%;
  overflow: hidden;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  line-height: 2em; }
  @media (max-width: 560px) {
    .ygen_wrap {
      font-size: 14px; } }
  .ygen_wrap a.c-key {
    color: #004D39;
    text-decoration: underline; }
  .ygen_wrap p {
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    line-height: 2em; }
  .ygen_wrap .note {
    font-size: .8em;
    line-height: 1.6em;
    color: #004D39; }
  .ygen_wrap .flex_2 {
    display: flex;
    justify-content: space-between; }
    .ygen_wrap .flex_2 p {
      width: 48%; }
    .ygen_wrap .flex_2 figure {
      width: 48%; }
    @media (max-width: 560px) {
      .ygen_wrap .flex_2 {
        flex-direction: column; }
        .ygen_wrap .flex_2 p {
          width: 100%;
          margin-bottom: 1rem; }
        .ygen_wrap .flex_2 figure {
          width: 100%; } }
  .ygen_wrap section.ygen_0 {
    width: 100%;
    overflow: hidden; }
    .ygen_wrap section.ygen_0 .top_wrap {
      width: 100%;
      height: 50vw;
      position: relative; }
      @media (max-width: 1000px) {
        .ygen_wrap section.ygen_0 .top_wrap {
          position: static;
          height: auto; } }
      .ygen_wrap section.ygen_0 .top_wrap .title {
        position: absolute;
        top: 0;
        left: 0;
        width: 50vw; }
        .ygen_wrap section.ygen_0 .top_wrap .title h1 {
          width: 90%;
          max-width: 522px;
          position: absolute;
          top: 25vw;
          left: 25vw;
          transform: translate(-50%, -50%); }
        @media (max-width: 1000px) {
          .ygen_wrap section.ygen_0 .top_wrap .title {
            position: relative;
            width: 100vw;
            height: 50vh; }
            .ygen_wrap section.ygen_0 .top_wrap .title h1 {
              top: 25vh;
              left: 50vw; } }
      .ygen_wrap section.ygen_0 .top_wrap .movie {
        width: 50vw;
        height: 50vw;
        position: absolute;
        overflow: hidden;
        top: 0;
        right: 0;
        transition: .5s; }
        .ygen_wrap section.ygen_0 .top_wrap .movie:hover {
          width: 85vw; }
        .ygen_wrap section.ygen_0 .top_wrap .movie video {
          height: 100%;
          width: auto;
          position: absolute;
          top: 0;
          left: 50%;
          transform: translateX(-50%); }
        @media (max-width: 1000px) {
          .ygen_wrap section.ygen_0 .top_wrap .movie {
            position: relative;
            top: auto;
            width: 100vw;
            height: 56vw; }
            .ygen_wrap section.ygen_0 .top_wrap .movie video {
              width: 100%;
              height: auto; } }
        .ygen_wrap section.ygen_0 .top_wrap .movie .movie__btn {
          position: absolute;
          z-index: 2;
          right: 40px;
          bottom: 40px; }
          @media (max-width: 560px) {
            .ygen_wrap section.ygen_0 .top_wrap .movie .movie__btn {
              right: 15px;
              bottom: 15px; } }
          .ygen_wrap section.ygen_0 .top_wrap .movie .movie__btn button {
            font-size: .8rem;
            background-color: transparent;
            border: none;
            cursor: pointer;
            outline: none;
            padding: 13px 0 0 0;
            background-image: url("../img/investor/u-gaku2/sound_off.svg");
            background-position: center top;
            background-repeat: no-repeat;
            appearance: none;
            color: white; }
            .ygen_wrap section.ygen_0 .top_wrap .movie .movie__btn button.active {
              background-image: url("../img/investor/u-gaku2/sound_on.svg"); }
        .ygen_wrap section.ygen_0 .top_wrap .movie .popup-youtube {
          position: absolute;
          z-index: 3;
          left: 50%;
          top: 50%;
          transform: translate(-50%, -50%);
          transition: .3s; }
          .ygen_wrap section.ygen_0 .top_wrap .movie .popup-youtube img {
            transition: .3s; }
          .ygen_wrap section.ygen_0 .top_wrap .movie .popup-youtube:hover img {
            transform: scale(110%); }
  .ygen_wrap section.ygen_title h2 {
    text-align: center;
    font-weight: 700;
    color: #004D39;
    font-size: 38px; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_title h2 {
        font-size: 25px; } }
    .ygen_wrap section.ygen_title h2 span {
      display: block;
      color: black;
      font-size: .6em;
      position: relative; }
      .ygen_wrap section.ygen_title h2 span::before, .ygen_wrap section.ygen_title h2 span::after {
        content: "";
        display: block;
        width: 7em;
        height: 1px;
        background-color: black;
        position: absolute;
        top: 50%;
        left: 50%; }
      .ygen_wrap section.ygen_title h2 span::before {
        transform: translateX(-14em); }
      .ygen_wrap section.ygen_title h2 span::after {
        transform: translateX(6em); }
  .ygen_wrap .w-980 {
    width: 90%;
    max-width: 980px;
    margin: 200px auto auto;
    position: relative; }
    @media (max-width: 560px) {
      .ygen_wrap .w-980 {
        margin: 100px auto auto; } }
    .ygen_wrap .w-980 .base_img {
      position: absolute;
      z-index: -1; }
      .ygen_wrap .w-980 .base_img::after {
        display: block;
        content: "";
        background-color: rgba(0, 0, 0, 0.05);
        width: 100%;
        height: 100%;
        position: absolute;
        z-index: -1;
        top: 20%;
        left: 20%; }
    .ygen_wrap .w-980 h4 {
      font-size: 40px;
      margin-bottom: 40px; }
      @media (max-width: 560px) {
        .ygen_wrap .w-980 h4 {
          font-size: 25px;
          margin-bottom: 25px; } }
    .ygen_wrap .w-980 p {
      word-break: break-all;
      margin-bottom: 1em; }
    .ygen_wrap .w-980 .white_base {
      box-sizing: border-box;
      background-color: white;
      padding: 40px; }
      @media (max-width: 1000px) {
        .ygen_wrap .w-980 .white_base {
          padding: 20px; } }
  .ygen_wrap .sep_wrap {
    width: 100%;
    margin: 200px auto auto;
    position: relative; }
    @media (max-width: 560px) {
      .ygen_wrap .sep_wrap {
        margin: 100px auto auto; } }
    .ygen_wrap .sep_wrap .sep_img {
      width: 90%;
      max-width: 950px;
      margin: auto; }
    .ygen_wrap .sep_wrap::after {
      content: "";
      display: block;
      position: absolute;
      z-index: -1;
      background-color: #004D39;
      width: 50vw;
      height: 400px;
      bottom: -50px;
      right: 0; }
      @media (max-width: 1000px) {
        .ygen_wrap .sep_wrap::after {
          height: 300px; } }
      @media (max-width: 560px) {
        .ygen_wrap .sep_wrap::after {
          height: 180; } }
    .ygen_wrap .sep_wrap.left::after {
      right: auto;
      left: 0; }
  .ygen_wrap section.ygen_1 .base_img {
    width: 27%;
    margin-top: 80px; }
    .ygen_wrap section.ygen_1 .base_img::after {
      width: 100%;
      height: 100%;
      top: 20%;
      left: -60%; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_1 .base_img {
        width: 105%;
        margin-top: 25px; } }
  .ygen_wrap section.ygen_1 h3 {
    transform: translateX(-40px); }
    @media (max-width: 1000px) {
      .ygen_wrap section.ygen_1 h3 {
        transform: translateX(-20px); } }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_1 h3 {
        transform: none; } }
  .ygen_wrap section.ygen_1 .white_base {
    width: 70%;
    margin: -200px 0px auto auto; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_1 .white_base {
        width: 90%;
        margin: 60vw -5% auto auto; } }
  .ygen_wrap section.ygen_2 .base_img {
    width: 66%;
    top: 30px;
    left: 17%; }
    .ygen_wrap section.ygen_2 .base_img::after {
      width: 100%;
      height: 100%;
      top: 20%;
      left: 60%; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_2 .base_img {
        width: 96%;
        top: 25px;
        left: 2%; } }
  .ygen_wrap section.ygen_2 h3 {
    transform: translateX(-80px); }
    @media (max-width: 1000px) {
      .ygen_wrap section.ygen_2 h3 {
        transform: translateX(-20px); } }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_2 h3 {
        transform: none; } }
  .ygen_wrap section.ygen_2 .white_base {
    width: 100%;
    margin: 40% 0px auto auto; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_2 .white_base {
        margin: 56vw 0px auto auto; } }
  .ygen_wrap section.ygen_3 .base_img {
    width: 60%;
    top: 450px;
    left: -20%; }
    @media (max-width: 1000px) {
      .ygen_wrap section.ygen_3 .base_img {
        left: -20px; } }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_3 .base_img {
        width: 100%;
        top: 25px;
        left: -7%; } }
    .ygen_wrap section.ygen_3 .base_img video {
      width: 100%; }
    .ygen_wrap section.ygen_3 .base_img::after {
      width: 200%;
      height: 160%;
      top: -100%;
      left: -100%; }
      @media (max-width: 560px) {
        .ygen_wrap section.ygen_3 .base_img::after {
          top: -10%;
          left: 15%; } }
  .ygen_wrap section.ygen_3 .white_base {
    width: 60%;
    margin: -300px 0px auto auto; }
    @media (max-width: 1000px) {
      .ygen_wrap section.ygen_3 .white_base {
        width: 50%; } }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_3 .white_base {
        width: 100%;
        margin: 50vw -5% auto auto; } }
    .ygen_wrap section.ygen_3 .white_base h5 {
      color: #004D39;
      font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-size: 16px;
      font-weight: bold; }
      @media (max-width: 560px) {
        .ygen_wrap section.ygen_3 .white_base h5 {
          font-size: 12px; } }
    .ygen_wrap section.ygen_3 .white_base dl {
      font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
      font-size: 14px;
      text-align: left;
      line-height: 1.8em;
      font-weight: bold;
      display: flex;
      flex-wrap: wrap;
      box-sizing: border-box;
      padding-left: 1rem; }
      .ygen_wrap section.ygen_3 .white_base dl dt {
        width: 7em; }
      .ygen_wrap section.ygen_3 .white_base dl dd {
        width: calc(100% - 8em); }
      @media (max-width: 560px) {
        .ygen_wrap section.ygen_3 .white_base dl {
          font-size: 12px;
          padding-left: 6px; } }
  .ygen_wrap section.ygen_4 .base_img {
    width: 45%;
    top: 35px;
    right: 0; }
    .ygen_wrap section.ygen_4 .base_img::after {
      width: 200%;
      height: 100%;
      top: 20%;
      left: 15%; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_4 .base_img {
        width: 100%;
        top: 25px; } }
  .ygen_wrap section.ygen_4 h3 {
    margin-left: 45%; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_4 h3 {
        margin-left: auto;
        text-align: right; } }
  .ygen_wrap section.ygen_4 .white_base {
    width: 52%;
    margin: auto auto auto 0px; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_4 .white_base {
        width: 90%;
        margin: 58vw auto auto -5%; } }
  @media (max-width: 560px) {
    .ygen_wrap section.ygen_5 {
      padding-top: 230px; } }
  .ygen_wrap section.ygen_5 .base_img {
    width: 27%;
    margin-top: 80px; }
    .ygen_wrap section.ygen_5 .base_img::after {
      width: 200%;
      height: 100%;
      top: 30%;
      left: -60%; }
    @media (max-width: 1000px) {
      .ygen_wrap section.ygen_5 .base_img {
        width: 32%; } }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_5 .base_img {
        width: 35%;
        margin-top: -230px; } }
  .ygen_wrap section.ygen_5 h3 {
    transform: translateX(-40px); }
    @media (max-width: 1000px) {
      .ygen_wrap section.ygen_5 h3 {
        transform: translateX(-20px); } }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_5 h3 {
        transform: none; } }
  .ygen_wrap section.ygen_5 .white_base {
    width: 60%;
    margin: -200px 0px auto auto; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_5 .white_base {
        width: 80%;
        margin: 20px 0px auto auto; } }
  .ygen_wrap section.ygen_6 .base_img {
    width: calc(100% - 80px);
    margin: 35px auto auto 40px; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_6 .base_img {
        width: 100%;
        margin: 25px auto auto 20px; } }
    .ygen_wrap section.ygen_6 .base_img video {
      width: 100%;
      max-width: 100%; }
    .ygen_wrap section.ygen_6 .base_img::after {
      width: 100%;
      height: 100%;
      top: 20%;
      left: 30%; }
  .ygen_wrap section.ygen_6 h3 {
    text-align: right; }
  .ygen_wrap section.ygen_6 .white_base {
    width: 60%;
    margin: 40% auto auto 0; }
    @media (max-width: 560px) {
      .ygen_wrap section.ygen_6 .white_base {
        width: 80%; } }
  .ygen_wrap section.ygen_6 video {
    width: 90%;
    max-width: 580px; }
  .ygen_wrap section.wrap_slide {
    position: relative;
    width: 100%;
    margin: 200px auto; }
    @media (max-width: 560px) {
      .ygen_wrap section.wrap_slide {
        margin: 100px auto; } }
    .ygen_wrap section.wrap_slide .slider {
      width: 100%; }
      .ygen_wrap section.wrap_slide .slider img {
        width: 100%; }
      .ygen_wrap section.wrap_slide .slider .slick-slide {
        height: auto !important; }
      .ygen_wrap section.wrap_slide .slider .slick-next {
        right: calc(25% + 24px) !important;
        top: calc(100% + 30px); }
      .ygen_wrap section.wrap_slide .slider .slick-prev {
        left: 25% !important;
        top: calc(100% + 30px); }
      .ygen_wrap section.wrap_slide .slider .slick-arrow {
        z-index: 2 !important; }
      .ygen_wrap section.wrap_slide .slider .slick-arrow:before {
        content: "" !important; }
      .ygen_wrap section.wrap_slide .slider .slick-arrow:before {
        content: "" !important;
        width: 47px;
        height: 47px;
        position: absolute;
        top: 0;
        left: 0; }
      .ygen_wrap section.wrap_slide .slider .slick-next:before {
        background: url("../img/investor/u-gaku2/slide_arrow_right.svg") !important;
        background-size: contain !important; }
      .ygen_wrap section.wrap_slide .slider .slick-prev:before {
        background: url("../img/investor/u-gaku2/slide_arrow_left.svg") !important;
        background-size: contain !important; }
    .ygen_wrap section.wrap_slide .slick-slide {
      margin-right: 0.5vw !important;
      margin-left: 0.5vw !important; }
    .ygen_wrap section.wrap_slide::after {
      content: "";
      display: block;
      position: absolute;
      z-index: -1;
      width: 100%;
      background-color: #004D39;
      height: 70%;
      left: 0;
      bottom: -95px; }
