@charset "UTF-8";

/* @keyframes fadeInFixedEntry は完全に削除します */

.fixed-entry-wrap{
    position: fixed;
    right:0;
    bottom: 40px;
    z-index:999;
    display: grid;
    gap: 12px;
}

.fixed-entry-text{
    position: relative;
    padding: 12px 40px;
    background-color: white;
    border-radius: 4px 0 0 4px;
    font-size: 1.4rem;
    filter: drop-shadow(1.0087px 1.0087px 3.026px rgba(0, 0, 0, 0.2));
    
    /* 初期状態: 透明で非表示、クリック不可 */
    opacity: 0; 
    visibility: hidden; 
    pointer-events: none; 

    /* クラス変更時のフェードイン・フェードアウトに使うtransition */
    /* opacity と visibility の変化にかかる時間を設定 */
    transition: background-color 0.3s ease, 
                transform 0.3s ease, 
                opacity 0.6s ease-out, /* フェードアウト/インにかける時間 */
                visibility 0.6s ease-out; /* visibility の変化時間 */
    
    /* ブラウザのレンダリング最適化を促す */
    will-change: opacity, visibility, transform; 
}

/* JavaScriptで初期フェードイン後に付与するクラス */
/* ボタンが表示される状態 */
.fixed-entry-text.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto; /* 表示時はクリック可能 */
}

.a-button.fixed-entry-text.on-white {
    background-color: #00bfd3; 
    --button-background-color: #00bfd3;
    --button-icon-color: #fff;
}

/* JavaScriptでスクロール時に非表示にする場合に付与するクラス */
/* is-visible より後に定義することで、is-hidden が優先されるようにする */
.a-button.fixed-entry-text.is-hidden {
    opacity: 0; 
    visibility: hidden; 
    pointer-events: none; /* クリック不可 */
}


@media screen and (max-width: 768px) {
    .fixed-entry-wrap{
        bottom: 10px;
    }
}

@media screen and (max-width: 1050px) {

}

.p-graduate__scrollDown {
    right: auto;
    left: 30px;
  }

.a-icon_name_feedback {
    -webkit-mask-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='41' height='36' viewBox='0 0 41 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_657_44)'%3E%3Cpath d='M29.4721 19.3364C28.9869 23.3766 26.3407 24.991 25.1978 26.1629C24.0532 27.3383 24.2582 27.5723 24.3351 29.296C24.3479 29.5093 24.317 29.7229 24.2441 29.9237C24.1712 30.1246 24.058 30.3084 23.9114 30.4638C23.7648 30.6192 23.5879 30.7429 23.3916 30.8274C23.1954 30.9118 22.9839 30.9552 22.7703 30.9548H18.2295C18.016 30.9544 17.8048 30.9106 17.6088 30.8259C17.4129 30.7412 17.2362 30.6175 17.0896 30.4622C16.943 30.307 16.8296 30.1236 16.7562 29.923C16.6829 29.7225 16.6511 29.5092 16.663 29.296C16.663 27.6048 16.8202 27.2118 15.802 26.1629C14.5037 24.8646 11.4492 23.0316 11.4492 17.9903C11.4414 16.738 11.693 15.4978 12.1884 14.3477C12.6837 13.1976 13.4119 12.1626 14.3271 11.3079C15.2423 10.4532 16.3246 9.79731 17.5058 9.38167C18.6871 8.96602 19.9416 8.79959 21.1904 8.89286C22.4391 8.98613 23.655 9.33709 24.7614 9.9236C25.8678 10.5101 26.8407 11.3195 27.6188 12.3006C28.3968 13.2818 28.9632 14.4135 29.2822 15.6245C29.6011 16.8354 29.6658 18.0993 29.4721 19.3364Z' stroke='%2365D6DE' stroke-width='2.0625' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.8691 30.8613V33.4443C17.8691 34.1499 18.262 34.729 18.7454 34.729H22.2526C22.7395 34.729 23.1307 34.1482 23.1307 33.4443V30.8613M19.1674 12.8555C18.1587 12.856 17.1914 13.257 16.4783 13.9704C15.7652 14.6838 15.3646 15.6513 15.3646 16.66M33.0254 18.3358H36.1585M29.8718 8.06534L32.0944 5.8428M31.5801 27.0415L33.8027 29.2623M20.4999 2.06055V4.594M8.95156 5.84109L11.1587 8.06534M7.24323 29.2623L9.45039 27.0415M7.97439 18.3358H4.84302' stroke='%2365D6DE' stroke-width='2.0625' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_657_44'%3E%3Crect width='41' height='36' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
        mask-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='41' height='36' viewBox='0 0 41 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_657_44)'%3E%3Cpath d='M29.4721 19.3364C28.9869 23.3766 26.3407 24.991 25.1978 26.1629C24.0532 27.3383 24.2582 27.5723 24.3351 29.296C24.3479 29.5093 24.317 29.7229 24.2441 29.9237C24.1712 30.1246 24.058 30.3084 23.9114 30.4638C23.7648 30.6192 23.5879 30.7429 23.3916 30.8274C23.1954 30.9118 22.9839 30.9552 22.7703 30.9548H18.2295C18.016 30.9544 17.8048 30.9106 17.6088 30.8259C17.4129 30.7412 17.2362 30.6175 17.0896 30.4622C16.943 30.307 16.8296 30.1236 16.7562 29.923C16.6829 29.7225 16.6511 29.5092 16.663 29.296C16.663 27.6048 16.8202 27.2118 15.802 26.1629C14.5037 24.8646 11.4492 23.0316 11.4492 17.9903C11.4414 16.738 11.693 15.4978 12.1884 14.3477C12.6837 13.1976 13.4119 12.1626 14.3271 11.3079C15.2423 10.4532 16.3246 9.79731 17.5058 9.38167C18.6871 8.96602 19.9416 8.79959 21.1904 8.89286C22.4391 8.98613 23.655 9.33709 24.7614 9.9236C25.8678 10.5101 26.8407 11.3195 27.6188 12.3006C28.3968 13.2818 28.9632 14.4135 29.2822 15.6245C29.6011 16.8354 29.6658 18.0993 29.4721 19.3364Z' stroke='%2365D6DE' stroke-width='2.0625' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.8691 30.8613V33.4443C17.8691 34.1499 18.262 34.729 18.7454 34.729H22.2526C22.7395 34.729 23.1307 34.1482 23.1307 33.4443V30.8613M19.1674 12.8555C18.1587 12.856 17.1914 13.257 16.4783 13.9704C15.7652 14.6838 15.3646 15.6513 15.3646 16.66M33.0254 18.3358H36.1585M29.8718 8.06534L32.0944 5.8428M31.5801 27.0415L33.8027 29.2623M20.4999 2.06055V4.594M8.95156 5.84109L11.1587 8.06534M7.24323 29.2623L9.45039 27.0415M7.97439 18.3358H4.84302' stroke='%2365D6DE' stroke-width='2.0625' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_657_44'%3E%3Crect width='41' height='36' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
  }

/* o-graduateEntry内のボタンをテキストに合わせてコンパクトに */
.o-graduateEntry__links {
    justify-content: center;
  }
  
  .o-graduateEntry__linkWrap {
    max-width: 450px;
  }
  
  .o-graduateEntry__linkButton {
    aspect-ratio: unset;
    --button-min-height: 150px;
  }
  
  @media screen and (max-width: 768px) {
    .o-graduateEntry__linkButton {
      aspect-ratio: unset;
    }
  }

/* require / flow セクション末尾の注釈テキスト */
.p-recruitment__note {
    color: #6D6D6D;
    font-size: 1.4rem;
    line-height: 1.8;
    margin-top: 40px;
    padding: 0 65px;
  }
  
  @media screen and (max-width: 768px) {
    .p-recruitment__note {
      font-size: 1.3rem;
      margin-top: 24px;
      padding: 0;
    }
  }

  /* People （採用メディア）調整 */
  .p-single__imageOnly {
    margin: 0 auto 98px;
    max-width: 1240px;
    padding: 0 40px;
  }


  .p-single__imageOnly img {
    width: 100%;
    height: auto;
    display: block;
  }
  
  .p-single__imageOnly__caption {
    margin-top: 8px;
    font-size: 13px;
    color: #666;
    text-align: center;
  }

  @media screen and (max-width: 768px) {
    .p-single__imageOnly {
      width: 100%;
      margin-bottom: 52px;
      padding: 0;
    }
  }