@charset "UTF-8";
/*
---------------------------------------------------------------------------------------------------------------------
メインビジュアル
---------------------------------------------------------------------------------------------------------------------
*/
#mv-back {
  position: fixed;
  top: 0;
  background-image: url("../img/top/mv-sp.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100vh; }
  @media (min-width: 768px) {
    #mv-back {
      background-image: url("../img/top/mv-pc.webp"); } }
  #mv-back::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0));
    height: 100%;
    mix-blend-mode: multiply;
    z-index: 10; }
    @media (min-width: 768px) {
      #mv-back::before {
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)); } }

#mv-top {
  overflow: hidden;
  margin-top: 100vh; }
  #mv-top .main-title {
    position: absolute;
    top: 15%;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: auto;
    z-index: 10; }
    @media (min-width: 768px) {
      #mv-top .main-title {
        top: 0;
        bottom: 0;
        left: inherit;
        width: 50%; } }
    #mv-top .main-title .main-title-in {
      color: #fff;
      text-align: center; }
      #mv-top .main-title .main-title-in h1 {
        font-size: 1.5em;
        font-weight: 400; }
        @media (min-width: 768px) {
          #mv-top .main-title .main-title-in h1 {
            font-size: 1.5em; } }
        @media (min-width: 1250px) {
          #mv-top .main-title .main-title-in h1 {
            font-size: 1.875em; } }
      #mv-top .main-title .main-title-in .en {
        width: 260px;
        margin-top: 30px; }
        @media (min-width: 768px) {
          #mv-top .main-title .main-title-in .en {
            margin-top: 60px; } }
      #mv-top .main-title .main-title-in h2 {
        font-size: 0.9em;
        font-weight: 400;
        margin: 30px auto 0; }
        @media (min-width: 768px) {
          #mv-top .main-title .main-title-in h2 {
            font-size: 1.375em;
            margin: 60px auto 0; } }

/*
---------------------------------------------------------------------------------------------------------------------
カオスを構造に変えるのが仕事です。
---------------------------------------------------------------------------------------------------------------------
*/
#about {
  position: relative;
  background-color: #000;
  width: 95%;
  margin: auto;
  border-radius: 10px; }
  @media (min-width: 1024px) {
    #about {
      border-radius: 20px;
      width: 98%;
      padding: 80px 0 80px; } }
  @media (min-width: 1200px) {
    #about {
      padding: 120px 0 120px; } }
  #about .about-in {
    max-width: 1400px;
    margin: auto; }
    @media (min-width: 1024px) {
      #about .about-in {
        display: flex;
        align-items: center; } }
    #about .about-in .about-box {
      position: relative; }
      @media (min-width: 1024px) {
        #about .about-in .about-box {
          width: 50%; } }
      #about .about-in .about-box .txt {
        text-align: center;
        padding: 40px 0; }
        #about .about-in .about-box .txt h2 {
          text-align: center;
          font-family: "Barlow Condensed", sans-serif;
          font-size: 3.0em;
          font-weight: 600;
          line-height: 0.8em; }
          @media (min-width: 768px) {
            #about .about-in .about-box .txt h2 {
              font-size: 4em; } }
          @media (min-width: 1200px) {
            #about .about-in .about-box .txt h2 {
              font-size: 5.6em; } }
        #about .about-in .about-box .txt p {
          font-size: 0.9em;
          line-height: 1.8em;
          text-align: justify;
          display: inline-block;
          margin-top: 30px; }
          @media (min-width: 768px) {
            #about .about-in .about-box .txt p {
              font-size: 0.95em;
              margin-top: 40px; } }
          @media (min-width: 1200px) {
            #about .about-in .about-box .txt p {
              font-size: 1.125em;
              margin-top: 60px; } }
          @media (min-width: 1400px) {
            #about .about-in .about-box .txt p {
              line-height: 2.2em; } }
        #about .about-in .about-box .txt .common-btn {
          margin-top: 20px;
          display: flex;
          justify-content: center; }
          @media (min-width: 1024px) {
            #about .about-in .about-box .txt .common-btn {
              margin-top: 60px; } }
          @media (min-width: 1200px) {
            #about .about-in .about-box .txt .common-btn {
              margin-top: 100px; } }
      #about .about-in .about-box .back img {
        position: relative;
        border-radius: 5px; }
        @media (min-width: 768px) {
          #about .about-in .about-box .back img {
            border-radius: 0px; } }
      #about .about-in .about-box ul li:first-child img {
        border-radius: 10px; }
      @media (min-width: 1024px) {
        #about .about-in .about-box ul li:first-child {
          display: none; } }
      #about .about-in .about-box ul li:last-child {
        display: none; }
        @media (min-width: 1024px) {
          #about .about-in .about-box ul li:last-child {
            display: block; } }
      #about .about-in .about-box .moji {
        position: absolute;
        bottom: 20px;
        left: 20px;
        width: 50%; }
        @media (min-width: 768px) {
          #about .about-in .about-box .moji {
            width: 30%; } }
        @media (min-width: 1024px) {
          #about .about-in .about-box .moji {
            width: 50%; } }
        @media (min-width: 1200px) {
          #about .about-in .about-box .moji {
            bottom: 40px;
            left: 40px; } }

/*
---------------------------------------------------------------------------------------------------------------------
共通
---------------------------------------------------------------------------------------------------------------------
*/
.title-area {
  margin-bottom: 30px; }
  @media (min-width: 1024px) {
    .title-area {
      display: flex;
      justify-content: space-between;
      align-items: end;
      margin-bottom: 60px; } }
  .title-area .common-btn {
    display: flex;
    justify-content: flex-end; }

.common-title h2 {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 3em;
  font-weight: 700;
  line-height: 0.8em; }
  @media (min-width: 768px) {
    .common-title h2 {
      font-size: 4em; } }
  @media (min-width: 1200px) {
    .common-title h2 {
      font-size: 8em; } }
.common-title p {
  font-size: 1em;
  line-height: 1.4em;
  margin-top: 10px; }
  @media (min-width: 768px) {
    .common-title p {
      font-size: 1.125em; } }
  @media (min-width: 1200px) {
    .common-title p {
      font-size: 1.5em;
      margin-top: 20px; } }

.back-bokasi {
  backdrop-filter: blur(6px);
  position: relative;
  margin: auto; }

/*
---------------------------------------------------------------------------------------------------------------------
プロジェクト　ストーリー
---------------------------------------------------------------------------------------------------------------------
*/
#project {
  padding: 60px 0 0; }
  @media (min-width: 1024px) {
    #project {
      padding: 160px 0 0; } }
  #project .title-area {
    padding: 5%; }
  #project .card-project {
    overflow: hidden; }
    @media (min-width: 1024px) {
      #project .card-project {
        margin-top: 40px; } }
    #project .card-project .swiper-area {
      position: relative;
      padding-left: 5%; }
      @media (min-width: 768px) {
        #project .card-project .swiper-area .swiper {
          padding-left: 0%; } }
      #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide {
        position: relative;
        padding-right: 5%; }
        @media (min-width: 768px) {
          #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide {
            display: flex;
            padding-right: 0; } }
        #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .thumbnail {
          position: relative; }
          @media (min-width: 768px) {
            #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .thumbnail {
              width: 55%; } }
          @media (min-width: 1024px) {
            #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .thumbnail {
              width: 65%; } }
          #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .thumbnail a .imgWrap {
            position: relative;
            overflow: hidden;
            display: block;
            z-index: 1;
            border-radius: 10px; }
            @media (min-width: 1024px) {
              #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .thumbnail a .imgWrap {
                border-radius: 20px; } }
            #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .thumbnail a .imgWrap img {
              width: 100%;
              height: auto;
              display: block;
              transition-duration: 0.8s;
              transform: scale(1);
              border-radius: 10px; }
              @media (min-width: 1024px) {
                #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .thumbnail a .imgWrap img {
                  border-radius: 20px; } }
              #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .thumbnail a .imgWrap img:hover {
                transform: scale(1.04); }
        #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info {
          display: flex;
          align-items: center;
          position: relative; }
          @media (min-width: 768px) {
            #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info {
              width: 45%;
              padding-left: 20px; } }
          @media (min-width: 1024px) {
            #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info {
              width: 35%;
              padding-left: 20px; } }
          @media (min-width: 1250px) {
            #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info {
              padding: 0 40px; } }
          #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in {
            margin-top: 10px; }
            @media (min-width: 768px) {
              #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in {
                margin-top: 0; } }
            #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in .txt {
              margin: 10px 0 0 0; }
              @media (min-width: 1200px) {
                #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in .txt {
                  margin: 20px 0 0 0; } }
              #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in .txt h2 {
                font-size: 1.125em;
                font-feature-settings: "palt";
                font-weight: normal;
                letter-spacing: 0.04em;
                line-height: 1.4em; }
                @media (min-width: 1024px) {
                  #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in .txt h2 {
                    font-size: 1.6vw; } }
              #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in .txt p {
                font-size: 0.9em;
                line-height: 1.6em;
                margin-top: 10px; }
                @media (min-width: 768px) {
                  #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in .txt p {
                    font-size: 1.00em;
                    margin-top: 20px; } }
                @media (min-width: 1200px) {
                  #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in .txt p {
                    font-size: 1.125em; } }
            #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in .common-btn {
              margin-top: 20px;
              display: flex;
              justify-content: flex-end; }
              @media (min-width: 1024px) {
                #project .card-project .swiper-area .swiper .swiper-wrapper .swiper-slide .opus-info .opus-info-in .common-btn {
                  justify-content: flex-start;
                  margin-top: 40px; } }
  #project .slider-thumbnail1 {
    margin-top: 30px;
    width: 100%;
    padding: 0 0 0 5%; }
    @media (min-width: 1024px) {
      #project .slider-thumbnail1 {
        margin-top: 40px; } }
    #project .slider-thumbnail1 .swiper-slide {
      width: 90px;
      margin-right: 10px;
      opacity: 0.5; }
      @media (min-width: 768px) {
        #project .slider-thumbnail1 .swiper-slide {
          width: 150px; } }
      @media (min-width: 1200px) {
        #project .slider-thumbnail1 .swiper-slide {
          width: 180px; } }
      #project .slider-thumbnail1 .swiper-slide:last-child {
        margin-right: 0; }
      #project .slider-thumbnail1 .swiper-slide img {
        border-radius: 5px; }
        @media (min-width: 1024px) {
          #project .slider-thumbnail1 .swiper-slide img {
            border-radius: 8px; } }
    #project .slider-thumbnail1 .swiper-slide-thumb-active {
      opacity: 1; }
  #project .swiper-button-prev, #project .swiper-button-next {
    top: 50%; }
  #project .swiper-slide-next, #project .swiper-slide-prev {
    opacity: 0; }
  #project .project-Btn {
    display: flex;
    justify-content: flex-end;
    margin-top: 20px;
    padding-right: 5%; }
    @media (min-width: 1024px) {
      #project .project-Btn {
        margin-top: 40px; } }

/*
---------------------------------------------------------------------------------------------------------------------
ワーク
---------------------------------------------------------------------------------------------------------------------
*/
#work {
  padding: 60px 0 60px; }
  @media (min-width: 768px) {
    #work {
      padding: 120px 0 100px; } }
  @media (min-width: 1200px) {
    #work {
      padding: 180px 0 160px; } }
  #work .title-area {
    max-width: 1200px;
    width: 90%;
    margin: 0 auto 30px; }
    @media (min-width: 1200px) {
      #work .title-area {
        margin: 0 auto 60px;
        padding: 0; } }
  #work .work-grid {
    max-width: 1200px;
    margin: auto;
    width: 90%; }
    @media (min-width: 768px) {
      #work .work-grid .o-4column {
        margin: 0 -15px; }
        #work .work-grid .o-4column .col-xl-4 {
          padding: 0 15px; } }
    @media (min-width: 1200px) {
      #work .work-grid .o-4column {
        margin: 0 -30px; }
        #work .work-grid .o-4column .col-xl-4 {
          padding: 0 30px; } }
    #work .work-grid .o-4column .col-xl-4 {
      margin-bottom: 30px; }
      @media (min-width: 1200px) {
        #work .work-grid .o-4column .col-xl-4 {
          margin-bottom: 60px; } }
    #work .work-grid .common-btn {
      display: flex;
      justify-content: flex-end; }

/*
---------------------------------------------------------------------------------------------------------------------
ニュース
---------------------------------------------------------------------------------------------------------------------
*/
#news {
  position: relative;
  background-color: #000;
  border-radius: 15px;
  width: 95%;
  max-width: 1600px;
  padding: 40px 0;
  margin: auto; }
  @media (min-width: 768px) {
    #news {
      padding: 60px 0; } }
  @media (min-width: 1024px) {
    #news {
      border-radius: 20px;
      width: 98%;
      padding: 80px 0; } }
  @media (min-width: 1200px) {
    #news {
      padding: 140px 0 100px; } }
  #news .news-in {
    max-width: 1200px;
    margin: auto;
    width: 90%; }
    @media (min-width: 768px) {
      #news .news-in {
        width: 80%; } }
    @media (min-width: 1024px) {
      #news .news-in {
        display: flex; } }
    @media (min-width: 1024px) {
      #news .news-in .title-news {
        width: 300px; } }
    @media (min-width: 1200px) {
      #news .news-in .title-news {
        width: 370px; } }
    #news .news-in .title-news .common-title {
      display: flex;
      align-items: flex-end; }
      @media (min-width: 1024px) {
        #news .news-in .title-news .common-title {
          display: block; } }
      #news .news-in .title-news .common-title h2 {
        font-size: 3em;
        margin-right: 20px; }
        @media (min-width: 768px) {
          #news .news-in .title-news .common-title h2 {
            font-size: 4em; } }
        @media (min-width: 1200px) {
          #news .news-in .title-news .common-title h2 {
            font-size: 5em; } }
      #news .news-in .title-news .common-title p {
        margin-top: 0px;
        position: relative;
        top: 3px; }
        @media (min-width: 1024px) {
          #news .news-in .title-news .common-title p {
            margin-top: 40px; } }
    @media (min-width: 1024px) {
      #news .news-in .news-post-area {
        width: calc(100% - 300px); } }
    @media (min-width: 1200px) {
      #news .news-in .news-post-area {
        width: calc(100% - 370px); } }
    #news .news-in .news-post-area ul {
      margin-top: 10px; }
      @media (min-width: 768px) {
        #news .news-in .news-post-area ul {
          margin-top: 20px; } }
      @media (min-width: 1024px) {
        #news .news-in .news-post-area ul {
          margin-top: -40px; } }
      #news .news-in .news-post-area ul li {
        border-bottom: 1px solid #fff; }
        #news .news-in .news-post-area ul li a {
          color: #fff; }
          #news .news-in .news-post-area ul li a:hover .news-box > .txt-in > h3 {
            color: #00F5FF; }
          #news .news-in .news-post-area ul li a:hover .news-box > .txt-in > .arrow-type > svg > .st0 {
            fill: #00F5FF; }
          #news .news-in .news-post-area ul li a .news-box {
            padding: 20px 0; }
            @media (min-width: 768px) {
              #news .news-in .news-post-area ul li a .news-box {
                display: flex;
                align-items: center; } }
            @media (min-width: 1024px) {
              #news .news-in .news-post-area ul li a .news-box {
                padding: 40px 0; } }
            #news .news-in .news-post-area ul li a .news-box h5 {
              font-size: 0.7em;
              font-weight: 400;
              margin-bottom: 4px; }
              @media (min-width: 768px) {
                #news .news-in .news-post-area ul li a .news-box h5 {
                  width: 120px;
                  margin-bottom: 0; } }
              @media (min-width: 1024px) {
                #news .news-in .news-post-area ul li a .news-box h5 {
                  font-size: 1.0em; } }
            #news .news-in .news-post-area ul li a .news-box .txt-in {
              display: flex;
              align-items: center;
              justify-content: space-between; }
              @media (min-width: 768px) {
                #news .news-in .news-post-area ul li a .news-box .txt-in {
                  width: calc(100% - 120px); } }
              #news .news-in .news-post-area ul li a .news-box .txt-in h3 {
                font-size: 0.9em;
                line-height: 1.8em;
                font-feature-settings: "palt";
                letter-spacing: 0.04em;
                text-align: justify;
                width: calc(100% - 40px);
                transition: .5s;
                word-break: break-all;
                display: -webkit-box;
                -webkit-line-clamp: 2;
                -webkit-box-orient: vertical;
                overflow: hidden; }
                @media (min-width: 1200px) {
                  #news .news-in .news-post-area ul li a .news-box .txt-in h3 {
                    font-size: 1.0em; } }
              #news .news-in .news-post-area ul li a .news-box .txt-in .arrow-type svg .st0 {
                fill: #fff;
                transition: .5s; }
    #news .news-in .news-post-area .common-btn {
      display: flex;
      justify-content: flex-end;
      margin-top: 40px; }

/*
---------------------------------------------------------------------------------------------------------------------
メッセージ
---------------------------------------------------------------------------------------------------------------------
*/
#message {
  position: relative;
  width: 80%;
  margin: auto;
  max-width: 1200px;
  padding: 70px 0 50px; }
  @media (min-width: 768px) {
    #message {
      width: 90%;
      display: flex;
      align-items: center; } }
  @media (min-width: 1024px) {
    #message {
      padding: 120px 0 100px; } }
  #message .txt {
    margin-top: 10px; }
    @media (min-width: 768px) {
      #message .txt {
        width: 60%;
        padding-right: 4%;
        display: flex;
        align-items: center;
        margin-top: 0; } }
    #message .txt .txt-in p {
      font-size: 0.9em;
      line-height: 1.8em; }
      @media (min-width: 1024px) {
        #message .txt .txt-in p {
          font-size: 1.0em; } }
      @media (min-width: 1200px) {
        #message .txt .txt-in p {
          font-size: 1.125em; } }
    #message .txt .txt-in .common-btn {
      margin-top: 20px; }
  #message .place {
    position: relative; }
    @media (min-width: 768px) {
      #message .place {
        width: 40%; } }
    #message .place .speech {
      position: absolute;
      top: -40px;
      left: 0;
      width: 150px; }
      @media (min-width: 1024px) {
        #message .place .speech {
          top: -50px;
          width: 200px; } }
    #message .place .photo h6 {
      position: relative;
      top: -5px;
      font-size: 0.9em;
      text-align: right; }
      @media (min-width: 768px) {
        #message .place .photo h6 {
          font-size: 1.125em; } }
      @media (min-width: 1200px) {
        #message .place .photo h6 {
          font-size: 1.125em; } }
    #message .place .photo img {
      border-radius: 10px; }
      @media (min-width: 1024px) {
        #message .place .photo img {
          border-radius: 20px; } }

/*
---------------------------------------------------------------------------------------------------------------------
ブログ　Podcast「図ットモ」更新中！
---------------------------------------------------------------------------------------------------------------------
*/
#bolg {
  position: relative;
  background-color: #000;
  border-radius: 15px;
  width: 95%;
  max-width: 1600px;
  padding: 40px 0;
  margin: auto; }
  @media (min-width: 768px) {
    #bolg {
      padding: 60px 0; } }
  @media (min-width: 1024px) {
    #bolg {
      border-radius: 20px;
      width: 98%;
      padding: 80px 0; } }
  @media (min-width: 1200px) {
    #bolg {
      padding: 140px 0 100px; } }
  #bolg .blog-in {
    margin: auto;
    max-width: 1200px;
    width: 90%; }
    #bolg .blog-in .title-area {
      padding: 0; }
      @media (min-width: 768px) {
        #bolg .blog-in .title-area {
          display: flex;
          align-items: flex-end;
          justify-content: space-between; } }
      #bolg .blog-in .title-area .common-title {
        display: flex;
        align-items: center; }
        #bolg .blog-in .title-area .common-title h2 {
          margin-right: 15px; }
        #bolg .blog-in .title-area .common-title p {
          margin: 0; }
      #bolg .blog-in .title-area .common-btn {
        margin-top: 20px; }
    #bolg .blog-in .bolg-grid {
      margin-top: 50px; }
      @media (min-width: 768px) {
        #bolg .blog-in .bolg-grid .o-4column .col-xl-4 {
          padding: 0 10px; }
        #bolg .blog-in .bolg-grid .o-4column {
          margin: 0 -10px; } }
      @media (min-width: 1024px) {
        #bolg .blog-in .bolg-grid .o-4column .col-xl-4 {
          padding: 0 15px; }
        #bolg .blog-in .bolg-grid .o-4column {
          margin: 0 -15px; } }
      @media (min-width: 1200px) {
        #bolg .blog-in .bolg-grid .o-4column .col-xl-4 {
          padding: 0 30px; }
        #bolg .blog-in .bolg-grid .o-4column {
          margin: 0 -30px; } }
      #bolg .blog-in .bolg-grid .o-4column .col-xl-4 {
        margin-bottom: 30px; }
        @media (min-width: 1200px) {
          #bolg .blog-in .bolg-grid .o-4column .col-xl-4 {
            margin-bottom: 60px; } }
      #bolg .blog-in .bolg-grid .common-btn {
        display: flex;
        justify-content: flex-end; }
        @media (min-width: 1200px) {
          #bolg .blog-in .bolg-grid .common-btn {
            margin-top: 20px; } }
    #bolg .blog-in .bolg-box a:hover .bolg-box-in > .iCatch > img {
      transform: scale(1.04); }
    #bolg .blog-in .bolg-box a:hover .bolg-box-in > .txt > h3 {
      color: #00F5FF; }
    #bolg .blog-in .bolg-box a .bolg-box-in {
      display: flex; }
      @media (min-width: 768px) {
        #bolg .blog-in .bolg-box a .bolg-box-in {
          display: block; } }
      #bolg .blog-in .bolg-box a .bolg-box-in .iCatch {
        position: relative;
        border-radius: 5px;
        overflow: hidden;
        display: block;
        z-index: 1;
        width: 40%; }
        @media (min-width: 768px) {
          #bolg .blog-in .bolg-box a .bolg-box-in .iCatch {
            border-radius: 10px;
            width: 100%; } }
        #bolg .blog-in .bolg-box a .bolg-box-in .iCatch img {
          border-radius: 5px;
          transition: .5s;
          transform: scale(1); }
          @media (min-width: 1024px) {
            #bolg .blog-in .bolg-box a .bolg-box-in .iCatch img {
              border-radius: 10px; } }
      #bolg .blog-in .bolg-box a .bolg-box-in .txt {
        color: #fff;
        width: 60%;
        padding-left: 10px; }
        @media (min-width: 768px) {
          #bolg .blog-in .bolg-box a .bolg-box-in .txt {
            margin-top: 10px;
            width: 100%;
            padding-left: 0; } }
        #bolg .blog-in .bolg-box a .bolg-box-in .txt h5 {
          font-size: 0.8em; }
          @media (min-width: 1024px) {
            #bolg .blog-in .bolg-box a .bolg-box-in .txt h5 {
              font-size: 0.9em; } }
        #bolg .blog-in .bolg-box a .bolg-box-in .txt h3 {
          font-size: 1.0em;
          line-height: 1.4em;
          font-feature-settings: "palt";
          letter-spacing: 0.04em;
          margin-top: 5px;
          transition: .5s; }
          @media (min-width: 1024px) {
            #bolg .blog-in .bolg-box a .bolg-box-in .txt h3 {
              font-size: 1.25em;
              margin-top: 10px; } }
  #bolg .podcast-in {
    margin: 60px auto 0;
    max-width: 1200px;
    width: 90%;
    border: 1px solid #fff;
    border-radius: 15px;
    padding: 30px 20px 15px; }
    @media (min-width: 768px) {
      #bolg .podcast-in {
        display: flex;
        padding: 30px;
        margin: 60px auto 0; } }
    @media (min-width: 1024px) {
      #bolg .podcast-in {
        border-radius: 30px;
        margin: 80px auto 0; } }
    #bolg .podcast-in .photo {
      width: 80%;
      margin: auto; }
      @media (min-width: 768px) {
        #bolg .podcast-in .photo {
          width: 220px; } }
      #bolg .podcast-in .photo img {
        border-radius: 10px; }
        @media (min-width: 1024px) {
          #bolg .podcast-in .photo img {
            border-radius: 20px; } }
    #bolg .podcast-in .contact {
      margin-bottom: 10px; }
      @media (min-width: 768px) {
        #bolg .podcast-in .contact {
          margin-bottom: 0;
          width: calc(100% - 220px);
          padding-left: 5%; } }
      @media (min-width: 1024px) {
        #bolg .podcast-in .contact {
          display: flex;
          align-items: center;
          padding-left: 2%; } }
      #bolg .podcast-in .contact .contact-in {
        padding: 20px 0 0 0; }
        @media (min-width: 768px) {
          #bolg .podcast-in .contact .contact-in {
            padding: 0; } }
        @media (min-width: 1024px) {
          #bolg .podcast-in .contact .contact-in {
            width: 300px; } }
        #bolg .podcast-in .contact .contact-in .title {
          text-align: center; }
          #bolg .podcast-in .contact .contact-in .title h2 {
            font-family: "Barlow Condensed", sans-serif;
            font-size: 3em;
            font-weight: 700;
            line-height: 0.8em; }
            @media (min-width: 768px) {
              #bolg .podcast-in .contact .contact-in .title h2 {
                font-size: 4.0em; } }
            @media (min-width: 1200px) {
              #bolg .podcast-in .contact .contact-in .title h2 {
                font-size: 5.6em; } }
          #bolg .podcast-in .contact .contact-in .title h3 {
            font-size: 0.9em;
            margin-top: 10px; }
            @media (min-width: 768px) {
              #bolg .podcast-in .contact .contact-in .title h3 {
                font-size: 1.0em; } }
            @media (min-width: 1200px) {
              #bolg .podcast-in .contact .contact-in .title h3 {
                font-size: 1.125em; } }
        #bolg .podcast-in .contact .contact-in ul.podcast-link {
          margin: 20px 0 0 0; }
          @media (min-width: 1024px) {
            #bolg .podcast-in .contact .contact-in ul.podcast-link {
              margin: 40px 0 0 0; } }
      #bolg .podcast-in .contact .new-episode {
        border-radius: 10px;
        margin-top: 30px; }
        @media (min-width: 768px) {
          #bolg .podcast-in .contact .new-episode {
            display: flex;
            align-items: center; } }
        @media (min-width: 1024px) {
          #bolg .podcast-in .contact .new-episode {
            margin-top: 0;
            width: calc(100% - 300px); } }
        @media (min-width: 768px) {
          #bolg .podcast-in .contact .new-episode .new-episode-in {
            padding-left: 5%; } }
        #bolg .podcast-in .contact .new-episode .new-episode-in h6 {
          font-size: 1.0em;
          border-bottom: 1px solid #fff;
          padding-bottom: 3px;
          display: inline-block; }
          @media (min-width: 1200px) {
            #bolg .podcast-in .contact .new-episode .new-episode-in h6 {
              font-size: 1.25em; } }
        #bolg .podcast-in .contact .new-episode .new-episode-in h3 {
          margin-top: 10px; }
          #bolg .podcast-in .contact .new-episode .new-episode-in h3 a {
            font-size: 0.9em;
            font-weight: 600;
            font-feature-settings: "palt";
            letter-spacing: 0.04em;
            line-height: 1.6em;
            color: #fff;
            transition: .5s; }
            @media (min-width: 1200px) {
              #bolg .podcast-in .contact .new-episode .new-episode-in h3 a {
                font-size: 1.125em; } }
            #bolg .podcast-in .contact .new-episode .new-episode-in h3 a:hover {
              color: #00F5FF; }

ul.podcast-link {
  display: flex;
  justify-content: center; }
  ul.podcast-link li {
    margin-right: 5px; }
    @media (min-width: 768px) {
      ul.podcast-link li {
        margin-right: 8px; } }
    ul.podcast-link li a {
      position: relative;
      margin-right: 5px;
      font-size: 0.8em;
      color: #fff; }
      @media (min-width: 768px) {
        ul.podcast-link li a {
          margin-right: 8px;
          font-size: 0.9em; } }
      ul.podcast-link li a::after {
        position: absolute;
        bottom: 0;
        left: 0;
        content: '';
        width: 100%;
        height: 1px;
        background: #fff;
        transform: scale(0, 1);
        transform-origin: right top;
        transition: transform .3s; }
      ul.podcast-link li a:hover::after {
        transform-origin: left top;
        transform: scale(1, 1); }

/*
---------------------------------------------------------------------------------------------------------------------
ビジョン
---------------------------------------------------------------------------------------------------------------------
*/
#vision {
  width: 95%;
  max-width: 1600px;
  padding: 10px 0;
  margin: auto; }
  @media (min-width: 1024px) {
    #vision {
      border-radius: 20px;
      width: 98%;
      padding: 20px 0; } }
  #vision .photo {
    margin: auto; }
    #vision .photo img {
      border-radius: 10px; }
      @media (min-width: 1024px) {
        #vision .photo img {
          border-radius: 20px; } }

/*
---------------------------------------------------------------------------------------------------------------------
スキル　やまもとじゅんぺいができること。
---------------------------------------------------------------------------------------------------------------------
*/
#skills {
  position: relative;
  margin: 80px 0; }
  @media (min-width: 768px) {
    #skills {
      margin: 140px 0;
      padding: 40px 0 0 0; } }
  @media (min-width: 1200px) {
    #skills {
      margin: 140px 0; } }
  #skills .skills-title {
    padding-left: 5%; }
    @media (min-width: 768px) {
      #skills .skills-title {
        position: absolute;
        top: 0;
        left: 0;
        display: flex;
        padding-left: 0; } }
    #skills .skills-title h2 {
      font-family: "Barlow Condensed", sans-serif;
      font-size: 3em;
      font-weight: 700;
      line-height: 0.8em;
      margin-bottom: 10px; }
      @media (min-width: 768px) {
        #skills .skills-title h2 {
          display: none; } }
    #skills .skills-title img {
      display: none; }
      @media (min-width: 768px) {
        #skills .skills-title img {
          display: inline-block;
          width: 50px; } }
      @media (min-width: 1024px) {
        #skills .skills-title img {
          width: 60px; } }
      @media (min-width: 1200px) {
        #skills .skills-title img {
          width: 90px; } }
    #skills .skills-title p {
      font-size: 1.125em; }
      @media (min-width: 768px) {
        #skills .skills-title p {
          font-size: 1.25em;
          margin: 0 0 0 10px; } }
      @media (min-width: 1200px) {
        #skills .skills-title p {
          font-size: 1.5em; } }
  #skills .skills-in {
    max-width: 1600px;
    margin: auto;
    width: 96%; }
    @media (min-width: 768px) {
      #skills .skills-in {
        display: flex;
        align-items: center; } }
    #skills .skills-in .graph {
      max-width: 600px;
      width: 80%;
      margin: 30px auto 0; }
      @media (min-width: 768px) {
        #skills .skills-in .graph {
          margin: 0 auto;
          max-width: 800px;
          width: 40%;
          padding-left: 4%; } }
    #skills .skills-in .skill-card {
      padding: 0 15px 40px;
      position: relative;
      overflow: hidden;
      max-width: 500px;
      margin: 20px auto 0; }
      @media (min-width: 768px) {
        #skills .skills-in .skill-card {
          max-width: 700px;
          width: 60%;
          padding: 40px 15px;
          margin: 0; } }
      @media (min-width: 1200px) {
        #skills .skills-in .skill-card {
          padding: 50px 15px; } }
      #skills .skills-in .skill-card .swiper-slide-prev, #skills .skills-in .skill-card .swiper-slide-next {
        opacity: 0; }
      #skills .skills-in .skill-card .swiper-button-prev, #skills .skills-in .skill-card .swiper-button-next {
        top: inherit;
        bottom: 0;
        right: 20px; }
      #skills .skills-in .skill-card .swiper-button-prev {
        right: 56px;
        left: inherit; }
        @media (min-width: 1024px) {
          #skills .skills-in .skill-card .swiper-button-prev {
            right: 70px; } }
    #skills .skills-in .skills-box {
      position: relative;
      background-color: #000000;
      border-radius: 10px;
      height: 350px;
      padding: 20px 20px 0; }
      @media (min-width: 1024px) {
        #skills .skills-in .skills-box {
          border-radius: 20px;
          height: 450px;
          padding: 40px 40px 0; } }
      @media (min-width: 1200px) {
        #skills .skills-in .skills-box {
          height: 550px;
          padding: 60px 60px 0; } }
      #skills .skills-in .skills-box .contact-1 {
        display: flex; }
        #skills .skills-in .skills-box .contact-1 .txt-common.txt-L {
          width: 50%;
          padding-right: 15px; }
        #skills .skills-in .skills-box .contact-1 .txt-common h2 {
          font-family: "DotGothic16", sans-serif;
          font-weight: 400;
          font-size: 1.25em;
          line-height: 1.4em; }
          @media (min-width: 768px) {
            #skills .skills-in .skills-box .contact-1 .txt-common h2 {
              font-size: 1.45em; } }
          @media (min-width: 1200px) {
            #skills .skills-in .skills-box .contact-1 .txt-common h2 {
              font-size: 1.75em; } }
        #skills .skills-in .skills-box .contact-1 .txt-common img {
          width: 130px;
          margin-top: 10px; }
          @media (min-width: 1024px) {
            #skills .skills-in .skills-box .contact-1 .txt-common img {
              width: 200px; } }
          @media (min-width: 1200px) {
            #skills .skills-in .skills-box .contact-1 .txt-common img {
              width: 240px;
              margin-top: 20px; } }
        #skills .skills-in .skills-box .contact-1 .txt-common p {
          font-size: 0.8em;
          line-height: 1.6em;
          text-align: justify;
          margin: 20px 0 0 0; }
          @media (min-width: 1024px) {
            #skills .skills-in .skills-box .contact-1 .txt-common p {
              font-size: 1.0em; } }
          @media (min-width: 1200px) {
            #skills .skills-in .skills-box .contact-1 .txt-common p {
              font-size: 1.125em;
              margin: 40px 0 0 0; } }
        #skills .skills-in .skills-box .contact-1 .photo {
          width: 50%; }
          #skills .skills-in .skills-box .contact-1 .photo img {
            border-radius: 5px; }
            @media (min-width: 1024px) {
              #skills .skills-in .skills-box .contact-1 .photo img {
                border-radius: 10px; } }
          #skills .skills-in .skills-box .contact-1 .photo.skill-4 {
            position: absolute;
            right: 5%;
            bottom: 0; }
            @media (min-width: 768px) {
              #skills .skills-in .skills-box .contact-1 .photo.skill-4 {
                width: 40%; } }
      #skills .skills-in .skills-box .contact-2 {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 5px;
        padding: 0 20px; }
        @media (min-width: 1024px) {
          #skills .skills-in .skills-box .contact-2 {
            padding: 0 40px;
            bottom: 20px; } }
        @media (min-width: 1200px) {
          #skills .skills-in .skills-box .contact-2 {
            padding: 0 60px; } }
        #skills .skills-in .skills-box .contact-2 .contact-2-in {
          position: relative; }
          #skills .skills-in .skills-box .contact-2 .contact-2-in h3 {
            border-bottom: 1px solid #fff;
            font-family: "DotGothic16", sans-serif;
            font-weight: 400;
            font-size: 1.125em;
            padding-bottom: 10px; }
            @media (min-width: 1024px) {
              #skills .skills-in .skills-box .contact-2 .contact-2-in h3 {
                font-size: 1.35em; } }
            @media (min-width: 1200px) {
              #skills .skills-in .skills-box .contact-2 .contact-2-in h3 {
                font-size: 1.75em;
                padding-bottom: 20px; } }
          #skills .skills-in .skills-box .contact-2 .contact-2-in h4 {
            font-size: 0.9em;
            font-feature-settings: "palt";
            letter-spacing: 0.04em;
            margin: 10px 0 5px 0; }
            @media (min-width: 1024px) {
              #skills .skills-in .skills-box .contact-2 .contact-2-in h4 {
                font-size: 1.0em; } }
            @media (min-width: 1200px) {
              #skills .skills-in .skills-box .contact-2 .contact-2-in h4 {
                font-size: 1.125em;
                margin: 20px 0 5px 0; } }
          #skills .skills-in .skills-box .contact-2 .contact-2-in a:hover .btn > p {
            color: #00F5FF; }
          #skills .skills-in .skills-box .contact-2 .contact-2-in a:hover .btn > svg {
            transform: scale(1.1); }
            #skills .skills-in .skills-box .contact-2 .contact-2-in a:hover .btn > svg #en {
              fill: #00F5FF;
              stroke: none; }
            #skills .skills-in .skills-box .contact-2 .contact-2-in a:hover .btn > svg #ya {
              fill: #000; }
            #skills .skills-in .skills-box .contact-2 .contact-2-in a:hover .btn > svg #X {
              fill: #000; }
          #skills .skills-in .skills-box .contact-2 .contact-2-in a .btn {
            padding: 20px 0;
            position: relative; }
            @media (min-width: 1024px) {
              #skills .skills-in .skills-box .contact-2 .contact-2-in a .btn {
                padding: 30px 0; } }
            #skills .skills-in .skills-box .contact-2 .contact-2-in a .btn p {
              font-size: 0.8em;
              font-feature-settings: "palt";
              letter-spacing: 0.04em;
              line-height: 1.4em;
              text-align: justify;
              color: #fff;
              padding-right: 40px;
              transition: .5s; }
              @media (min-width: 1024px) {
                #skills .skills-in .skills-box .contact-2 .contact-2-in a .btn p {
                  font-size: 1.0em; } }
              @media (min-width: 1200px) {
                #skills .skills-in .skills-box .contact-2 .contact-2-in a .btn p {
                  font-size: 1.125em;
                  padding-right: 60px; } }
            #skills .skills-in .skills-box .contact-2 .contact-2-in a .btn svg {
              position: absolute;
              top: 0;
              bottom: 0;
              right: 0;
              width: 30px;
              margin: auto;
              transition: .5s; }
              @media (min-width: 1200px) {
                #skills .skills-in .skills-box .contact-2 .contact-2-in a .btn svg {
                  width: 35px; } }
              #skills .skills-in .skills-box .contact-2 .contact-2-in a .btn svg #X {
                fill: #fff; }
              #skills .skills-in .skills-box .contact-2 .contact-2-in a .btn svg #en {
                fill: none;
                stroke: #fff; }
              #skills .skills-in .skills-box .contact-2 .contact-2-in a .btn svg #ya {
                fill: #fff; }
          #skills .skills-in .skills-box .contact-2 .contact-2-in ul.podcast-link {
            padding: 5px 0 20px;
            justify-content: flex-start; }
            @media (min-width: 1024px) {
              #skills .skills-in .skills-box .contact-2 .contact-2-in ul.podcast-link {
                padding: 20px 0; } }
  #skills .waku {
    background-color: #000000;
    border: 2px solid #fff;
    font-family: "DotGothic16", sans-serif;
    font-weight: 400;
    padding: 30px;
    border-radius: 10px;
    margin: 0 auto 60px; }
    @media (min-width: 1024px) {
      #skills .waku {
        border-radius: 15px;
        padding: 80px;
        margin: 0 auto 60px; } }
    #skills .waku .item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 20px; }
      @media (min-width: 768px) {
        #skills .waku .item {
          margin-bottom: 40px; } }
      #skills .waku .item h3 {
        font-size: 1.125em; }
        @media (min-width: 768px) {
          #skills .waku .item h3 {
            font-size: 1.25em; } }
        @media (min-width: 1024px) {
          #skills .waku .item h3 {
            font-size: 1.75em; } }
      #skills .waku .item img {
        width: 80px;
        margin-right: -30px; }
        @media (min-width: 1024px) {
          #skills .waku .item img {
            width: 140px;
            margin-right: -80px; } }
    #skills .waku p {
      font-size: 0.85em;
      text-align: justify;
      line-height: 1.6em; }
      @media (min-width: 1024px) {
        #skills .waku p {
          font-size: 1.125em; } }
