@charset "UTF-8";
/*==========================================
変数 inc.scss
===========================================*/
/*Regular*/
@font-face {
  font-family: "Bebas Neue";
  src: url("fonts/BebasNeue-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap; }
/*==========================================
変数 fonts.scss
===========================================*/
/*===================================
userSS 追加
=====================================*/
.bottomCtsLink-block {
  margin-top: 0%; }

/*==========================================
　company
===========================================*/
@media screen and (max-width: 960px) {
  .sec-company {
    margin-bottom: 120px; } }
.sec-company .flex-side {
  display: flex;
  justify-content: space-between;
  position: relative; }
  @media screen and (max-width: 1200px) {
    .sec-company .flex-side {
      justify-content: flex-start;
      flex-direction: column; } }
  @media screen and (max-width: 1200px) {
    .sec-company .flex-side {
      align-items: center;
      justify-content: flex-start; } }
  .sec-company .flex-side.reverse {
    flex-direction: row-reverse; }
.sec-company .left-side {
  width: 20%;
  min-width: 180px;
  position: relative;
  height: auto;
  top: 0;
  left: 0;
  z-index: 1;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: flex-start; }
  @media screen and (max-width: 1200px) {
    .sec-company .left-side {
      width: 100%;
      padding: 0; } }
  @media screen and (max-width: 960px) {
    .sec-company .left-side .item-add-wrap {
      margin-top: 1.5em;
      margin-bottom: 1.5em; } }
  @media screen and (max-width: 960px) {
    .sec-company .left-side .item-add-wrap .item-add-list {
      margin-top: 1.5em;
      margin-bottom: 1.5em; } }
.sec-company .right-side {
  width: 80%;
  top: 0;
  position: relative;
  padding: 0 0% 0 6%; }
  @media screen and (max-width: 1200px) {
    .sec-company .right-side {
      width: 100%;
      padding: 0 0% 0 0%; } }
  .sec-company .right-side .item-ttl {
    padding: 0.25em 0px 30px;
    margin-bottom: 40px;
    font-size: clamp(2.8rem, 1.6666666667vw, 3.2rem);
    line-height: 1.5; }
    @media screen and (max-width: 960px) {
      .sec-company .right-side .item-ttl {
        margin: 1em 0 0.4em;
        font-size: clamp(2rem, 1.0416666667vw, 2rem); } }
    .sec-company .right-side .item-ttl.border {
      position: relative; }
      .sec-company .right-side .item-ttl.border::after {
        content: "";
        width: 100%;
        display: block;
        height: 1px;
        background: #333333;
        position: absolute;
        bottom: -10px; }
.sec-company .sticky {
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 20%;
  bottom: 0;
  overflow-x: hidden;
  overflow-y: hidden;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100%; }
  @media screen and (max-width: 1200px) {
    .sec-company .sticky {
      position: relative;
      top: auto;
      bottom: auto;
      right: auto;
      display: block !important;
      height: 100% !important;
      width: 100%;
      max-width: 100%;
      margin: auto;
      padding: 0;
      overflow: visible; } }
  @media screen and (min-width: 961px) {
    .sec-company .sticky:hover {
      overflow-y: scroll !important; } }
  .sec-company .sticky:hover::-webkit-scrollbar {
    width: 7px;
    display: none !important; }
  .sec-company .sticky:hover::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.1); }
  .sec-company .sticky:hover::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.3); }
  .sec-company .sticky:hover::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.1); }
.sec-company .cts-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: column;
  width: 100%; }
  @media screen and (max-width: 960px) {
    .sec-company .cts-head {
      width: 100%;
      min-width: 70px; } }
.sec-company .cts-body {
  width: 100%; }
  @media screen and (max-width: 960px) {
    .sec-company .cts-body {
      width: 100%; } }
.sec-company .cts-wrap {
  max-width: 100%;
  margin-inline: auto; }
  @media screen and (max-width: 960px) {
    .sec-company .cts-wrap {
      max-width: 100%; } }
.sec-company .pageTtl-basic {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column; }
  .sec-company .pageTtl-basic .ttl-en {
    margin-bottom: 0.2em;
    line-height: 1;
    letter-spacing: 0.12em;
    transition: 0.3s ease-in-out;
    font-size: clamp(1.8rem, 3.125vw, 6rem); }
    @media screen and (max-width: 960px) {
      .sec-company .pageTtl-basic .ttl-en {
        font-size: clamp(2.8rem, 8.125vw, 6rem); } }
  .sec-company .pageTtl-basic .ttl-ja {
    letter-spacing: 0.1em;
    transition: 0.3s ease-in-out;
    font-size: clamp(1.6rem, 1.09375vw, 2.1rem); }
.sec-company .pageTtl-num {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-direction: column;
  transition: 0.3s ease-in-out;
  color: #c4c4c4;
  text-align: right; }
  @media screen and (min-width: 961px) {
    .sec-company .pageTtl-num {
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl; } }
  @media screen and (max-width: 960px) {
    .sec-company .pageTtl-num {
      align-items: flex-start;
      margin-inline: auto 0;
      position: absolute;
      right: 0;
      bottom: 4rem; } }
  .sec-company .pageTtl-num .ttl-en {
    line-height: 1;
    margin-bottom: 1rem;
    letter-spacing: 0.12em;
    transition: 0.3s ease-in-out;
    font-size: clamp(2.8rem, 3.4375vw, 6rem);
    font-weight: 900; }
    .sec-company .pageTtl-num .ttl-en.show {
      letter-spacing: 0.1em; }
    @media screen and (min-width: 961px) {
      .sec-company .pageTtl-num .ttl-en {
        margin-left: 0.5em; } }
  .sec-company .pageTtl-num .ttl-num {
    line-height: 0.75;
    letter-spacing: 0em;
    transition: 0.3s ease-in-out;
    font-size: clamp(2rem, 15.104167vw, 29rem);
    font-weight: bold;
    font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, sans-serif; }
.sec-company .cts-list {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  max-width: 100%;
  margin-inline: auto; }
  @media screen and (max-width: 960px) {
    .sec-company .cts-list {
      max-width: 100%;
      margin-inline: auto; } }
  .sec-company .cts-list .cts-item {
    width: 100%; }
    @media screen and (min-width: 961px) {
      .sec-company .cts-list .cts-item {
        width: calc(88% / 3); }
        .sec-company .cts-list .cts-item:nth-of-type(n + 4) {
          margin-top: 90px; }
        .sec-company .cts-list .cts-item:not(:nth-of-type(3n + 1)) {
          margin-left: 6%; } }
    @media screen and (max-width: 960px) {
      .sec-company .cts-list .cts-item {
        width: calc(96% / 2); }
        .sec-company .cts-list .cts-item:nth-of-type(n + 3) {
          margin-top: 60px; }
        .sec-company .cts-list .cts-item:not(:nth-of-type(2n + 1)) {
          margin-left: 4%; } }
    .sec-company .cts-list .cts-item.show .item-paperBottom {
      bottom: 1px;
      opacity: 1; }
    .sec-company .cts-list .cts-item.show:nth-of-type(3n+1) .item-paperBottom {
      animation: hurueru .2s forwards 1.7s, bottom_move 1.0s forwards 2.1s; }
    .sec-company .cts-list .cts-item.show:nth-of-type(3n+2) .item-paperBottom {
      animation: hurueru .2s forwards 1.9s, bottom_move 1.0s forwards 2.3s; }
    .sec-company .cts-list .cts-item.show:nth-of-type(3n+3) .item-paperBottom {
      animation: hurueru .2s forwards 2.1s, bottom_move 1.0s forwards 2.5s; }
    .sec-company .cts-list .cts-item a {
      position: relative; }
      @media (hover: hover) {
        .sec-company .cts-list .cts-item a:hover:hover .item-img img {
          bottom: -20px; } }
@keyframes hurueru {
  0% {
    transform: translate(0px, 0px) rotateZ(0deg); }
  25% {
    transform: translate(1px, 1px) rotateZ(1deg); }
  50% {
    transform: translate(0px, 2px) rotateZ(0deg); }
  75% {
    transform: translate(2px, 0px) rotateZ(-1deg); }
  100% {
    transform: translate(0px, 0px) rotateZ(0deg); } }
@keyframes bottom_move {
  0% {
    bottom: 1px;
    opacity: 1; }
  50% {
    bottom: -100px;
    opacity: 1; }
  100% {
    bottom: -100px;
    opacity: 0; } }
  .sec-company .cts-list .item-wrap {
    border-radius: 2vmax;
    overflow: visible;
    pointer-events: none;
    box-shadow: 4px 8px 15px rgba(0, 0, 0, 0.5); }
    @media screen and (max-width: 960px) {
      .sec-company .cts-list .item-wrap {
        border-radius: 4vmax; } }
  .sec-company .cts-list .item-head {
    position: relative;
    z-index: 4;
    pointer-events: auto; }
  .sec-company .cts-list .item-body {
    pointer-events: auto;
    position: relative;
    z-index: 3; }
  .sec-company .cts-list .item-ttl-wrap {
    margin-top: 20%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start; }
  .sec-company .cts-list .item-ttl-en {
    font-size: clamp(2rem, 1.875vw, 3.6rem);
    letter-spacing: 0.12em;
    font-weight: bold;
    margin-bottom: 14%;
    font-family: "Outfit", "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
    line-height: 1;
    white-space: nowrap; }
    @media screen and (max-width: 960px) {
      .sec-company .cts-list .item-ttl-en {
        font-size: clamp(1.8rem, 1.875vw, 3.6rem); } }
  .sec-company .cts-list .item-ttl-ja {
    font-size: clamp(1.6rem, 1.25vw, 2.4rem);
    letter-spacing: 0.15em;
    font-weight: 400;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-family: "Zen Old Mincho", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif; }
  .sec-company .cts-list .item-paperTop {
    position: relative;
    display: block;
    top: 0;
    z-index: 2;
    width: 100.5%; }
    .sec-company .cts-list .item-paperTop img {
      width: 100%; }
  .sec-company .cts-list .item-paperBottom {
    position: absolute;
    display: block;
    bottom: 0;
    z-index: 3;
    pointer-events: none;
    opacity: 1;
    transform-origin: top left;
    width: 100%; }
    @media screen and (max-width: 960px) {
      .sec-company .cts-list .item-paperBottom {
        width: 100.5%; } }
    .sec-company .cts-list .item-paperBottom img {
      width: 100%; }
  .sec-company .cts-list .item-img {
    font-size: 0;
    overflow: hidden;
    position: absolute;
    bottom: 0;
    z-index: 0;
    border-radius: 2vmax;
    width: 100%; }
    @media screen and (max-width: 960px) {
      .sec-company .cts-list .item-img {
        border-radius: 4vmax; } }
    .sec-company .cts-list .item-img img {
      transition: all 0.8s ease;
      scale: 1.05;
      bottom: 0;
      position: relative; }

.bottomCtsLink-block .CtsLink-list {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  max-width: 100%;
  margin-inline: auto;
  z-index: 5;
  pointer-events: none;
  /*	  &.listL{
        @include min-width(mdL) {
          justify-content: flex-start;
        }
  		  .CtsLink-item{
  			  width: 30%;
  			  max-width: 515px;
  			  @include max-width(mdL) {
  				  width: 80%;
  			  }
          &:not(:first-of-type){
            @include min-width(mdL) {
              margin-left: 20%;
              top: 10vw;
              width: 26%;
              max-width: 446px;
            }
          }
  		  }
  	  }
  	  &.listS{
        @include min-width(mdL) {
          max-width: 100%;
          flex-wrap: wrap;
          justify-content: flex-end;
          z-index: 2;
          width: 100%;
          position: absolute;
          top: 50%;
          left: 43%;
          -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
        }
  		  .CtsLink-item{
  			  width: 48%;
  			  max-width: 278px;
  			  @include max-width(mdL) {
  				  width: 48%;
  			  }
  			  .item-ttl {	
  				  font-weight: bold;
  				  font-size: clamp(1.4rem, 1.6vw, 2.4rem);
  			  }
          &:not(:first-of-type){
            @include min-width(mdL) {
              margin-left: 24%;
              top: 0;
            }
          }
  		  }
  	  }*/ }
  @media screen and (min-width: 961px) {
    .bottomCtsLink-block .CtsLink-list.show {
      max-width: 100%; } }
  @media screen and (max-width: 960px) {
    .bottomCtsLink-block .CtsLink-list {
      max-width: 80%;
      margin-inline: auto; } }
  .bottomCtsLink-block .CtsLink-list .CtsLink-item {
    position: relative;
    pointer-events: auto; }
    @media screen and (min-width: 961px) {
      .bottomCtsLink-block .CtsLink-list .CtsLink-item:not(:first-of-type) {
        top: 5vw; } }
    .bottomCtsLink-block .CtsLink-list .CtsLink-item:not(:first-of-type) .rotation_animation {
      animation: animName 13s linear infinite; }
    .bottomCtsLink-block .CtsLink-list .CtsLink-item a {
      position: relative;
      display: block;
      padding: 8%;
      color: #fff; }
      @media (hover: hover) {
        .bottomCtsLink-block .CtsLink-list .CtsLink-item a:hover:hover .item-img img {
          transform: translate(-50%, -50%) scale(1.1); }
        .bottomCtsLink-block .CtsLink-list .CtsLink-item a:hover:hover .item-add-more {
          color: #333333; }
        .bottomCtsLink-block .CtsLink-list .CtsLink-item a:hover:hover .rotate_box {
          scale: 1.1; } }
  .bottomCtsLink-block .CtsLink-list .item-head {
    position: relative; }
  .bottomCtsLink-block .CtsLink-list .item-img {
    font-size: 0;
    overflow: hidden;
    position: relative; }
    .bottomCtsLink-block .CtsLink-list .item-img.gradationBlue {
      background: linear-gradient(to bottom right, rgba(92, 166, 200, 0.55), rgba(49, 113, 154, 0.55)); }
    .bottomCtsLink-block .CtsLink-list .item-img.gradationGray {
      background: linear-gradient(to bottom right, rgba(170, 170, 170, 0.55), rgba(0, 0, 0, 0.55)); }
    .bottomCtsLink-block .CtsLink-list .item-img.gradationRecruit {
      background: linear-gradient(to bottom right, rgba(0, 173, 206, 0.65), rgba(38, 181, 81, 0.65)); }
    .bottomCtsLink-block .CtsLink-list .item-img.schoolBlue {
      background: rgba(0, 82, 154, 0.55); }
    .bottomCtsLink-block .CtsLink-list .item-img img {
      transition: all 0.8s ease;
      aspect-ratio: 1; }
  .bottomCtsLink-block .CtsLink-list .item-inner {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; }
  .bottomCtsLink-block .CtsLink-list .item-ttl {
    font-weight: bold;
    font-size: clamp(2rem, 2.3vw, 5rem);
    letter-spacing: 0.1em;
    line-height: 1.5;
    transition: 0.3s ease-in-out;
    text-align: center; }
  .bottomCtsLink-block .CtsLink-list .btn-more-block {
    margin-top: 20px; }
    .bottomCtsLink-block .CtsLink-list .btn-more-block .btn-more-txt {
      font-size: clamp(1.2rem, 1.6vw, 1.8rem); }

/*# sourceMappingURL=company.css.map */
