@charset "UTF-8";
.common-btn-type1 {
  display: inline-block; }
  .common-btn-type1 a:hover .btn-design.ye {
    background-color: #f1ff4e;
    color: #000; }
  .common-btn-type1 a:hover .btn-design.ye > svg {
    fill: #000; }
  .common-btn-type1 a:hover .btn-design.bl {
    background-color: #000;
    color: #f1ff4e; }
  .common-btn-type1 a:hover .btn-design.bl > svg {
    fill: #f1ff4e; }
  .common-btn-type1 a:hover .btn-design.bl2 {
    background-color: #000;
    color: #fff; }
  .common-btn-type1 a:hover .btn-design.bl2 > svg > .st0 {
    stroke: #fff; }
  .common-btn-type1 a .btn-design {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 30px;
    border-radius: 50%;
    transition: .5s; }
    @media (min-width: 1024px) {
      .common-btn-type1 a .btn-design {
        padding: 15px 40px; } }
    @media (min-width: 1250px) {
      .common-btn-type1 a .btn-design {
        padding: 20px 50px; } }
    .common-btn-type1 a .btn-design p {
      font-size: 0.9em;
      font-weight: bold;
      margin-right: 10px; }
      @media (min-width: 1250px) {
        .common-btn-type1 a .btn-design p {
          font-size: 0.9em; } }
    .common-btn-type1 a .btn-design svg {
      width: 15px;
      transition: .5s; }
      @media (min-width: 1250px) {
        .common-btn-type1 a .btn-design svg {
          width: 15px; } }
    .common-btn-type1 a .btn-design.ye {
      border: 1px solid #f1ff4e;
      color: #f1ff4e; }
      .common-btn-type1 a .btn-design.ye svg {
        fill: #f1ff4e; }
    .common-btn-type1 a .btn-design.bl {
      background-color: #f1ff4e;
      color: #000; }
      .common-btn-type1 a .btn-design.bl svg {
        fill: #000; }
    .common-btn-type1 a .btn-design.bl2 {
      border: 1px solid #000;
      color: #000; }
      .common-btn-type1 a .btn-design.bl2 svg .st0 {
        fill: none;
        stroke: #000; }

.common-title {
  text-align: center;
  color: #fff;
  margin: 20px auto 0; }
  .common-title h2 {
    font-size: 1.75em;
    color: #F1FF4E; }
    @media (min-width: 1024px) {
      .common-title h2 {
        font-size: 2.25em; } }
  .common-title h3 {
    font-size: 1.125em;
    line-height: 1.4em;
    margin-top: 20px; }
    @media (min-width: 1024px) {
      .common-title h3 {
        font-size: 1.5em; } }

ul.recruit-ul {
  max-width: 1200px;
  width: 90%;
  margin: 30px auto 0; }
  @media (min-width: 1024px) {
    ul.recruit-ul {
      margin: 60px auto 0; } }
  ul.recruit-ul li {
    position: relative;
    border-top: 1px solid #707070;
    padding: 30px 0; }
    @media (min-width: 1024px) {
      ul.recruit-ul li {
        padding: 0; } }
    ul.recruit-ul li:last-child {
      border-bottom: 1px solid #707070; }
    ul.recruit-ul li a:hover .title > h3 {
      color: #F1FF4E; }
    ul.recruit-ul li a:hover .txt > h4, ul.recruit-ul li a:hover .txt > h5, ul.recruit-ul li a:hover .txt > p {
      color: #F1FF4E; }
    ul.recruit-ul li a:hover svg > g > .st0 {
      fill: #F1FF4E; }
    ul.recruit-ul li a, ul.recruit-ul li .comingsoon {
      color: #fff;
      padding: 20px 0;
      text-decoration: none; }
      @media (min-width: 1024px) {
        ul.recruit-ul li a, ul.recruit-ul li .comingsoon {
          padding: 40px 0; } }
      @media (min-width: 1024px) {
        ul.recruit-ul li a.info, ul.recruit-ul li .comingsoon.info {
          display: flex;
          align-items: center; } }
      @media (min-width: 1024px) {
        ul.recruit-ul li a, ul.recruit-ul li .comingsoon {
          display: flex; } }
      ul.recruit-ul li a .title, ul.recruit-ul li .comingsoon .title {
        margin-bottom: 20px;
        padding-right: 60px; }
        @media (min-width: 1024px) {
          ul.recruit-ul li a .title, ul.recruit-ul li .comingsoon .title {
            width: 35%;
            padding-right: 5%;
            margin-bottom: 0; } }
        ul.recruit-ul li a .title h3, ul.recruit-ul li .comingsoon .title h3 {
          font-size: 1.6em; }
      @media (min-width: 1024px) {
        ul.recruit-ul li a .txt, ul.recruit-ul li .comingsoon .txt {
          width: 65%;
          padding-right: 80px; } }
      ul.recruit-ul li a .txt h4, ul.recruit-ul li .comingsoon .txt h4 {
        font-size: 1.125em;
        transition: .5s; }
        @media (min-width: 1024px) {
          ul.recruit-ul li a .txt h4, ul.recruit-ul li .comingsoon .txt h4 {
            font-size: 1.375em; } }
      ul.recruit-ul li a .txt h5, ul.recruit-ul li .comingsoon .txt h5 {
        font-size: 0.8em;
        line-height: 1.4em;
        transition: .5s; }
        @media (min-width: 1024px) {
          ul.recruit-ul li a .txt h5, ul.recruit-ul li .comingsoon .txt h5 {
            font-size: 0.9em; } }
      ul.recruit-ul li a .txt p, ul.recruit-ul li .comingsoon .txt p {
        font-size: 0.8em;
        line-height: 1.6em;
        text-align: justify;
        margin-top: 10px;
        transition: .5s; }
        @media (min-width: 1024px) {
          ul.recruit-ul li a .txt p, ul.recruit-ul li .comingsoon .txt p {
            font-size: 0.9em;
            margin-top: 20px; } }
      ul.recruit-ul li a svg, ul.recruit-ul li .comingsoon svg {
        position: absolute;
        top: 30px;
        right: 0;
        display: flex;
        margin: auto;
        width: 30px; }
        @media (min-width: 1024px) {
          ul.recruit-ul li a svg, ul.recruit-ul li .comingsoon svg {
            top: 0;
            bottom: 0;
            width: 40px; } }
        ul.recruit-ul li a svg .st0, ul.recruit-ul li .comingsoon svg .st0 {
          fill: #fff;
          transition: .5s; }
        ul.recruit-ul li a svg .st1, ul.recruit-ul li .comingsoon svg .st1 {
          fill: #222324;
          transition: .5s; }
    ul.recruit-ul li .comingsoon .title {
      margin-bottom: 0; }
      ul.recruit-ul li .comingsoon .title h3 {
        color: #707070; }
    ul.recruit-ul li .comingsoon svg .st0 {
      fill: #707070;
      transition: .5s; }
  ul.recruit-ul.before li svg {
    top: 0;
    bottom: 0; }

/*
---------------------------------------------------------------------------------------------------------------------
スライダー左右矢印ボタン
---------------------------------------------------------------------------------------------------------------------
*/
.card-common {
  /* 前への矢印カスタマイズ */
  /* 次への矢印カスタマイズ */
  /* 画像サイズ調整 */
  /* 前へ次への矢印カスタマイズ */
  /* 前へ次への矢印カスタマイズ */ }
  .card-common .swiper-button-next {
    right: 12px; }
  .card-common .swiper-button-prev {
    left: 12px; }
  .card-common .swiper-button-prev::after {
    background-image: url("../../img/parts/slide-btn-R.svg"); }
  .card-common .swiper-button-next::after {
    background-image: url("../../img/parts/slide-btn-R.svg"); }
  .card-common .swiper-slide img {
    height: auto;
    width: 100%; }
  .card-common .swiper-button-prev,
  .card-common .swiper-button-next {
    height: 30px;
    width: 30px; }
    @media (min-width: 1250px) {
      .card-common .swiper-button-prev,
      .card-common .swiper-button-next {
        height: 45px;
        width: 45px; } }
  .card-common .swiper-button-prev::after,
  .card-common .swiper-button-next::after {
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    margin: auto;
    height: 30px;
    width: 30px; }
    @media (min-width: 1250px) {
      .card-common .swiper-button-prev::after,
      .card-common .swiper-button-next::after {
        height: 45px;
        width: 45px; } }

/*
---------------------------------------------------------------------------------------------------------------------
ページナビ
---------------------------------------------------------------------------------------------------------------------
*/
.wp-pagenavi {
  margin: 20px auto 10px;
  display: flex;
  align-items: center;
  justify-content: center; }
  @media (min-width: 1250px) {
    .wp-pagenavi {
      margin: 20px auto 10px; } }
  .wp-pagenavi a, .wp-pagenavi span {
    font-family: "Roboto", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: #fff;
    transition: .5s;
    border: 1px solid #fff;
    border-radius: 50px;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 4px; }
    .wp-pagenavi a:hover, .wp-pagenavi span:hover {
      background-color: white;
      color: #000; }
  .wp-pagenavi span.current {
    color: #000;
    background-color: #F1FF4E;
    border: 1px solid #F1FF4E;
    font-weight: bold; }
  .wp-pagenavi .nextpostslink, .wp-pagenavi .previouspostslink {
    color: #fff;
    transition: .5s;
    transition: .5s; }
    .wp-pagenavi .nextpostslink:hover, .wp-pagenavi .previouspostslink:hover {
      color: #000; }

/*
---------------------------------------------------------------------------------------------------------------------
エントリー
---------------------------------------------------------------------------------------------------------------------
*/
#entry {
  padding-top: 120px; }
  @media (min-width: 1024px) {
    #entry {
      padding-top: 200px; } }
  #entry .entry-in {
    position: relative;
    overflow: hidden; }
    #entry .entry-in .photo {
      max-width: 1200px;
      margin: auto;
      width: 80%; }
      @media (min-width: 1024px) {
        #entry .entry-in .photo {
          width: 90%; } }
      #entry .entry-in .photo img {
        border-radius: 10px; }
        @media (min-width: 1024px) {
          #entry .entry-in .photo img {
            border-radius: 20px; } }
    #entry .entry-in .common-btn-type1 {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      height: 100%; }
    #entry .entry-in .back-txt {
      position: absolute; }
      #entry .entry-in .back-txt.ue {
        top: 5%; }
      #entry .entry-in .back-txt.shita {
        bottom: 5%; }
      #entry .entry-in .back-txt .YokoScroll {
        display: flex;
        align-items: center;
        overflow: hidden; }
        #entry .entry-in .back-txt .YokoScroll .slideshow {
          display: flex; }
          #entry .entry-in .back-txt .YokoScroll .slideshow figure {
            width: 1500px; }
            @media (min-width: 768px) {
              #entry .entry-in .back-txt .YokoScroll .slideshow figure {
                width: 2000px; } }
            @media (min-width: 1024px) {
              #entry .entry-in .back-txt .YokoScroll .slideshow figure {
                width: 3000px; } }
          #entry .entry-in .back-txt .YokoScroll .slideshow.show1 {
            animation: loop-slide1 200s infinite linear 1s both; }
          #entry .entry-in .back-txt .YokoScroll .slideshow.show2 {
            animation: loop-slide2 200s infinite linear 1s both; }
@keyframes loop-slide1 {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-100%); } }
@keyframes loop-slide2 {
  from {
    transform: translateX(-100%); }
  to {
    transform: translateX(0); } }
/*
---------------------------------------------------------------------------------------------------------------------
右下スクロールで表示するボタン
---------------------------------------------------------------------------------------------------------------------
*/
#you-come {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 99;
  opacity: 0;
  transform: translateY(100px);
  background-color: #F1FF4E;
  padding: 10px 0 0;
  width: 100%;
  text-align: center;
  height: 100px; }
  @media (min-width: 768px) {
    #you-come {
      font-size: 1.0em;
      width: 680px;
      padding: 15px 0 0;
      border-top-left-radius: 30px; } }
  #you-come h4 {
    font-size: 0.7em;
    display: inline-block;
    color: #000;
    background-color: #fff;
    padding: 6px 15px;
    border-radius: 20px; }
    @media (min-width: 768px) {
      #you-come h4 {
        font-size: 1.0em; } }
  #you-come ul {
    display: flex; }
    #you-come ul li {
      width: 50%;
      position: relative; }
      #you-come ul li:first-child::after {
        position: absolute;
        top: 20%;
        left: 100%;
        margin: 0;
        content: "";
        width: 1px;
        height: 60%;
        background-color: #000; }
        @media (min-width: 768px) {
          #you-come ul li:first-child::after {
            font-size: 1.0em; } }
      #you-come ul li a {
        color: #000; }
        #you-come ul li a:hover .meeting-btn > img {
          right: 20px; }
        #you-come ul li a .meeting-btn {
          display: flex;
          align-items: center;
          padding: 10px; }
          @media (min-width: 768px) {
            #you-come ul li a .meeting-btn {
              padding: 15px; } }
          #you-come ul li a .meeting-btn .txt {
            text-align: left; }
            @media (min-width: 768px) {
              #you-come ul li a .meeting-btn .txt {
                display: flex;
                align-items: center; } }
            #you-come ul li a .meeting-btn .txt h3 {
              font-size: 1.0em; }
              @media (min-width: 768px) {
                #you-come ul li a .meeting-btn .txt h3 {
                  font-size: 1.375em; } }
            #you-come ul li a .meeting-btn .txt h5 {
              font-size: 0.8em; }
              @media (min-width: 768px) {
                #you-come ul li a .meeting-btn .txt h5 {
                  font-size: 1.0em; } }
          #you-come ul li a .meeting-btn img {
            width: 26px;
            position: absolute;
            top: 0;
            bottom: 0;
            margin: auto;
            right: 20px;
            transition: .5s; }
            @media (min-width: 768px) {
              #you-come ul li a .meeting-btn img {
                right: 30px; } }

#you-come.UpMove {
  animation: UpAnime 0.5s forwards; }

@keyframes UpAnime {
  from {
    opacity: 0;
    transform: translateY(100px); }
  to {
    opacity: 1;
    transform: translateY(0); } }
@media (min-width: 768px) {
  @keyframes UpAnime {
    from {
      opacity: 0;
      transform: translateY(100px); }
    to {
      opacity: 1;
      transform: translateY(0); } } }
/*　下に下がる動き　*/
#you-come.DownMove {
  animation: DownAnime 0.5s forwards; }

@keyframes DownAnime {
  from {
    opacity: 1;
    transform: translateY(0); }
  to {
    opacity: 1;
    transform: translateY(100px); } }
@media (min-width: 768px) {
  @keyframes DownAnime {
    from {
      opacity: 1;
      transform: translateY(0); }
    to {
      opacity: 1;
      transform: translateY(100px); } } }
/*
---------------------------------------------------------------------------------------------------------------------
動画プレイボタン
---------------------------------------------------------------------------------------------------------------------
*/
.video-play-button {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  box-sizing: content-box;
  display: block;
  padding: 18px 20px 18px 28px;
  transition: 0.5S; }

.video-play-button:before {
  content: "";
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  animation: pulse-border 1500ms ease-out infinite; }
  @media (min-width: 768px) {
    .video-play-button:before {
      width: 70px;
      height: 70px; } }

.video-play-button:before {
  background-color: #DC3A81; }

.video-play-button:after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  transition: all 200ms;
  transition: .5s; }
  @media (min-width: 768px) {
    .video-play-button:after {
      width: 70px;
      height: 70px; } }

.video-play-button:after {
  background-color: #DC3A81; }

.video-play-button img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 6px;
  right: 0;
  z-index: 3;
  width: 15px;
  height: auto;
  margin: auto;
  border-radius: 0; }

.video-play-button span {
  display: block;
  position: relative;
  z-index: 3;
  width: 0;
  height: 0;
  border-left: 32px solid #fff;
  border-top: 22px solid transparent;
  border-bottom: 22px solid transparent; }

@keyframes pulse-border {
  0% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
    opacity: 1; }
  100% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
    opacity: 0; } }
