@charset "UTF-8";

/* ==========================================================
   ■ 0. 全セクション共通：基本リセット ＆ 余白統率ルール
   ========================================================== */
.page-common {
    font-family: "Noto Sans JP", sans-serif;
    color: #333333;
    line-height: 1.8;
    background-color: #ffffff;
}

.c-detailFv,
.interviewDetail__career,
.interviewDetail__job,
.interviewDetail__schedule,
.interviewDetail__story,
.interviewDetail__message {
    width: 100% !important;
    max-width: none !important; 
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;  
    padding-right: 0 !important; 
    box-sizing: border-box !important;
}

.c-detailFv__outer,
.interviewDetail__careerInner,
.interviewDetail__careerContOuter,
.interviewDetail__jobInner,
.interviewDetail__scheduleInner,
.interviewDetail__storyInner,
.interviewDetail__messageInner {
    max-width: 720px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
}

.c-detailTtl {
    margin-bottom: 45px !important;
}
.c-detailTtl--center {
    text-align: center !important;
}
.c-detailTtl__en {
    font-size: 24px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    color: #1e4461 !important; 
    text-transform: uppercase !important;
    display: inline-block !important;
    margin-bottom: -10px !important;
}
.c-detailTtl__ja {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #999999 !important;
    letter-spacing: 0.04em !important;
}

/* ==========================================================
   ■ 社員インタビュー個別ページ用：一覧へ戻るボタン
   ========================================================== */
.c-back-to-list {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto 30px auto;
  padding: 0;
  text-align: left;
}

.c-back-to-list__link {
  display: inline-flex;
  align-items: center;
  font-size: 13px;
  font-weight: 700;
  color: #1e4461;
  text-decoration: none !important;
  letter-spacing: 0.15em;
  transition: opacity 0.25s ease, transform 0.25s ease;
}

.c-back-to-list__arrow {
  position: relative;
  width: 16px;
  height: 1px;
  background-color: #1e4461;
  margin-right: 10px;
  transition: transform 0.25s ease;
}

.c-back-to-list__arrow::before {
  content: "";
  position: absolute;
  left: 0;
  top: -3px;
  width: 6px;
  height: 6px;
  border-left: 1px solid #1e4461;
  border-bottom: 1px solid #1e4461;
  transform: rotate(45deg);
}

.c-back-to-list__link:hover {
  opacity: 0.7;
}

.c-back-to-list__link:hover .c-back-to-list__arrow {
  transform: translateX(-4px);
}

@media screen and (max-width: 1000px) {
  .c-back-to-list {
    padding: 0 15px;
    margin-bottom: 20px;
  }
}

/* ==========================================================
   ■ 1. メインビジュアル (Fv) - PC版スタイル
   ========================================================== */
.c-detailFv {
    margin-top: 140px !important;
    margin-bottom: 100px !important;
    display: block !important;
}
.c-detailFv__cont {
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 40px !important;
}
.c-detailFv__right {
    flex: 0 0 auto !important;
    width: 320px !important; 
    height: 400px !important; 
    border-radius: 12px !important;
    overflow: hidden !important; 
    position: relative !important;
    box-sizing: border-box !important;
    background-color: #f9f9f9;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.12) !important;
}
.c-detailFv__right img[src$=".webp"] {
    display: block !important;
    border-radius: 0 !important;
    width: 100% !important;  
    height: 100% !important; 
    object-fit: cover !important; 
    object-position: 50% 15% !important; 
}
.c-detailFv__right img[src$=".jpg"] {
    display: none !important;  
}
.c-detailFv__left {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}
.c-detailFv__year {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #444444 !important;
    margin: 0 0 12px 0 !important;
    display: flex !important;
    align-items: center !important;
}
.c-detailFv__year::before {
    content: "" !important;
    display: inline-block !important;
    width: 9px !important;
    height: 9px !important;
    background-color: #1e4461 !important; 
    border-radius: 50% !important;
    margin-right: 8px !important;
}
.c-detailFv__catBox {
    display: flex !important;
    gap: 8px !important;
    margin: 0 0 25px 0 !important;
}
.c-detailFv__cat span {
    display: inline-block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #555555 !important;
    background-color: #f5f5f5 !important;
    padding: 5px 10px !important;
    border-radius: 4px !important;
}
.c-detailFv__name {
    font-size: 34px !important;
    font-weight: 800 !important;
    color: #222222 !important;
    margin: 0 0 20px 0 !important;
}
.c-detailFv__position {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #555555 !important;
    line-height: 1.6 !important;
    margin: 0 0 30px 0 !important;
}
.c-detailFv__word {
    font-size: 17px !important;
    font-weight: 800 !important;
    color: #222222 !important;
    line-height: 1.6 !important;
    letter-spacing: 0.1em !important; 
    word-break: keep-all !important;   
    overflow-wrap: normal !important;   
}
.c-detailFv__scroll { display: none !important; }

@media screen and (min-width: 769px) {
  .p-page-people3 img.pc-only-img {
    object-position: 60% center !important;
  }
}

/* ==========================================================
   ■ 2. 経歴セクション (Career) - グレー背景化
   ========================================================== */
.interviewDetail__career {
    background-color: #fafafa !important;
    padding: 80px 0 80px 0 !important;
    margin-bottom: 80px !important; 
}
.interviewDetail__careerCont {
    display: flex !important;
    flex-direction: row-reverse !important; 
    align-items: stretch !important;
    gap: 40px !important;
}
.interviewDetail__careerLeft {
    flex: 0 0 40% !important;
}
.interviewDetail__careerLeft img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 12px !important;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.12) !important;
}
.interviewDetail__careerRight {
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
}
.interviewDetail__careerBox {
    width: 100% !important;
    border-left: 2px solid #eaeaea !important;
    padding-left: 24px !important;
}
.interviewDetail__careerItem {
    position: relative !important;
    margin-bottom: 25px !important;
}
.interviewDetail__careerItem::before {
    content: "" !important;
    position: absolute !important;
    left: -31px !important;
    top: 6px !important;
    width: 12px !important;
    height: 12px !important;
    background-color: #1e4461 !important; 
    border-radius: 50% !important;
}
.interviewDetail__careerNum {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #888888 !important;
    margin-bottom: 3px !important;
}
.interviewDetail__careerTxt {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #333333 !important;
    line-height: 1.6 !important;
}

/* ==========================================================
   ■ 3. 仕事の概要 (Job) - グレーの境界線にピタッと接地
   ========================================================== */
.interviewDetail__job {
    background-color: #ffffff !important;
    padding: 0 0 40px 0 !important;
    margin-top: 0px !important;
    margin-bottom: 20px !important;
}
.interviewDetail__jobInner {
    max-width: 720px !important;
}
.interviewDetail__jobInner .c-detailTtl {
    margin-top: -20px !important;
    padding-top: 0px !important;
    margin-bottom: 45px !important;
}
.interviewDetail__jobCont {
    font-size: 14px !important;
    color: #555555 !important;
    line-height: 2.1 !important;
    text-align: left !important; 
}

/* ==========================================================
   ■ 4. スケジュール (Schedule) - PC版基本設定
   ========================================================== */
.interviewDetail__schedule {
    background-color: #fafafa !important;
    padding: 80px 0 !important;
    margin-bottom: 120px !important;
}
.interviewDetail__scheduleInner {
    max-width: 720px !important;
}
.interviewDetail__scheduleCont {
    display: flex !important;
    flex-direction: row !important; 
    align-items: center !important;
    justify-content: space-between !important;
    gap: 80px !important;
}
.interviewDetail__scheduleLeft {
    flex: 1 !important;
    max-width: 100% !important; 
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}
.interviewDetail__scheduleLeft img {
    width: 80% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important; 
    object-fit: cover !important;      
    border-radius: 12px !important;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.12) !important; 
}
.interviewDetail__scheduleRight {
    flex: 0 0 250px !important;
    width: 250px !important;
    max-width: 250px !important;
}
.interviewDetail__scheduleBox {
    margin-top: 0 !important;
}
.interviewDetail__scheduleItem {
    display: flex !important; 
    align-items: flex-start !important;
    padding: 15px 0 !important;
    position: relative !important; 
    border-bottom: none !important;
}
.interviewDetail__scheduleItem::after {
    content: "" !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important; 
    max-width: 250px !important; 
    height: 1px !important;
    background-color: #f0f0f0 !important; 
}
.interviewDetail__scheduleNum {
    font-size: 14px !important;
    font-weight: 800 !important;
    color: #1e4461 !important;
    width: 60px !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
}
.interviewDetail__scheduleTxt {
    font-size: 14px !important;
    color: #555555 !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

/* ==========================================================
   ■ 5. インタビュー詳細 (My Story) - PC版スタイル
   ========================================================== */
.interviewDetail__story {
    margin-bottom: 120px !important;
}
.interviewDetail__storyCont {
    margin-top: 0 !important;
    margin-bottom: 45px !important;
    border-bottom: 1px solid #f7f7f7 !important;
    padding-bottom: 35px !important;
}
.interviewDetail__storyCont:last-of-type {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.interviewDetail__storyTtl {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #1e4461 !important;
    margin-bottom: 12px !important;
    line-height: 1.5 !important;
}
.interviewDetail__storyTxt {
    font-size: 14px !important;
    color: #444444 !important;
    line-height: 2 !important;
}

/* ==========================================================
   ■ 6. メッセージセクション (Message) - PC版スタイル
   ========================================================== */
.interviewDetail__message {
    margin-bottom: 120px !important;
}
html body .interviewDetail__messageInner {
    display: flex !important;
    align-items: stretch !important;
    background-color: #fafbfd !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid #eef2f6 !important;
    width: 100% !important;
    max-width: 720px !important;
    padding-left: 0 !important;   
    padding-right: 0 !important;  
    box-sizing: border-box !important;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.12) !important;
}
html body .interviewDetail__messageInner .interviewDetail__messageBox {
    flex: 1 !important;
    padding: 40px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}
.interviewDetail__messageTxt {
    font-size: 13.5px !important;
    color: #444444 !important;
    line-height: 1.9 !important;
}
html body .interviewDetail__messageInner .interviewDetail__messagePhoto {
    flex: 0 0 340px !important;
    width: 340px !important;
    max-width: 340px !important;
    min-width: 340px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}
html body .interviewDetail__messageInner .interviewDetail__messagePhoto img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
/* ==========================================================
   ■ インタビュー詳細テキスト強調用 (太字 ＋ オレンジ下線・調整機能付き)
   ========================================================== */
.interviewDetail__storyTxt .u-text-highlight {

  --line-start: 65%;
  --line-opacity: 0.2;
  color: inherit !important;
  font-weight: 800 !important;
  background: linear-gradient(
    transparent var(--line-start), 
    rgba(243, 152, 0, var(--line-opacity)) var(--line-start)
  ) !important;
  
  padding-bottom: 2px !important;
  padding-left: 2px !important;
  padding-right: 2px !important;
  letter-spacing: 0.03em;
}

/* ==========================================================
   ■ 7. 他の記事を見る (Other Interview) - ナビゲーション調整
   ========================================================== */
.otherInterview__inner .c-detailTtl__ja {
    font-size: 16px !important;       
    font-weight: 800 !important;       
    color: #444444 !important;         
    letter-spacing: 0.05em !important;
    margin-top: 5px !important;
}

/* ==========================================================
   ■ 7.5 PC大画面（1001px以上）用の適切な横幅拡張と余白設定
   ========================================================== */
@media screen and (min-width: 1001px) {
    .c-detailFv__outer,
    .interviewDetail__careerInner,
    .interviewDetail__careerContOuter,
    .interviewDetail__jobInner,
    .interviewDetail__scheduleInner,
    .interviewDetail__storyInner,
    .interviewDetail__messageInner {
        max-width: 900px !important;
        padding-left: 40px !important;  
        padding-right: 40px !important;
    }
}

/* ==========================================================
   ■ 8. スマホ・レスポンシブ環境修正（768px以下の画面に一括適用）
   ========================================================== */
@media screen and (max-width: 768px) {
    .c-detailFv__outer, .interviewDetail__careerInner, .interviewDetail__careerContOuter,
    .interviewDetail__jobInner, .interviewDetail__scheduleInner, .interviewDetail__storyInner {
        padding-left: 35px !important;  
        padding-right: 35px !important; 
        max-width: 100% !important; 
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    html body .interviewDetail__messageInner {
        display: flex !important;
        flex-direction: column !important; 
        padding-left: 0 !important;
        padding-right: 0 !important;
        max-width: 100% !important; 
        width: 100% !important;
        box-sizing: border-box !important;
        background-color: #fafbfd !important; 
        border: 1px solid #eef2f6 !important;
        border-radius: 16px !important; 
        overflow: hidden !important; 
    }

    .c-detailFv, .interviewDetail__career, .interviewDetail__job, 
    .interviewDetail__schedule, .interviewDetail__story, .interviewDetail__message {
        margin-top: 50px !important;
        margin-bottom: 50px !important;
    }

    /* -----------------------------------------
       ★ 経歴セクション (Career) スマホ専用構造ロック
       ----------------------------------------- */
    html body .interviewDetail__careerCont {
        display: flex !important;
        flex-direction: column !important; 
        align-items: center !important;
        width: 100% !important;
        gap: 0 !important;
    }
    html body .interviewDetail__careerLeft {
        order: 1 !important; 
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 30px !important;
        overflow: hidden !important;
        position: relative !important;
        border-radius: 12px !important;
    }
    html body .interviewDetail__careerLeft img {
        width: 100% !important;
        height: auto !important; 
        object-fit: cover !important;
    }
    html body .interviewDetail__careerRight {
        order: 2 !important; 
        width: 100% !important;
        padding: 0 !important;
    }
    html body .interviewDetail__careerBox { 
        padding-left: 24px !important; 
    }
    html body .interviewDetail__careerItem::before { 
        left: -31px !important; 
    }
    html body .interviewDetail__careerTxt {
        font-size: 13px !important;
    }

    /* -----------------------------------------
       ★ スケジュールセクション (Schedule) スマホ専用
       ----------------------------------------- */
    html body .interviewDetail__scheduleCont {
        display: flex !important;
        flex-direction: column !important; 
        align-items: center !important;
        width: 100% !important;
    }
    html body .interviewDetail__scheduleRight {
        order: 1 !important; 
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
    }
    html body .interviewDetail__scheduleRight .c-detailTtl {
        text-align: center !important; 
        margin-bottom: 35px !important; 
        width: 100% !important;
    }
    html body .interviewDetail__scheduleBox {
        width: 100% !important;
        max-width: 280px !important; 
        margin: 0 auto !important;
    }
    html body .interviewDetail__scheduleItem {
        display: flex !important; 
        align-items: flex-start !important;
        padding: 14px 0 !important;
        position: relative !important; 
        border-bottom: none !important;
    }
    html body .interviewDetail__scheduleItem::after {
        width: 100% !important; 
    }
    html body .interviewDetail__scheduleNum {
        font-size: 14px !important;
        font-weight: 800 !important;
        color: #1e4461 !important;
        width: 65px !important;
        flex-shrink: 0 !important;
    }
    html body .interviewDetail__scheduleTxt {
        font-size: 13px !important;
    }
    html body .interviewDetail__scheduleLeft {
        order: 2 !important; 
        width: 100% !important;
        max-width: 440px !important; 
        margin: 35px auto 0 auto !important; 
        flex: none !important;
        overflow: hidden !important;
        position: relative !important;
        border-radius: 16px !important; 
    }
    html body .interviewDetail__scheduleLeft img {
        width: 100% !important;
        height: 220px !important; 
        object-fit: cover !important;
        border-radius: 16px !important;
        box-shadow: 0 6px 15px rgba(0, 0, 0, 0.12) !important;
    }

    /* 8-1. ファーストビュー（FV）スマホ・タブレット共通基本 */
    .c-detailFv {
        margin-top: 100px !important; 
        margin-bottom: 60px !important;
    }
    .c-detailFv__cont {
        display: flex !important;
        flex-direction: column !important; 
    }
    .c-detailFv__right {
        order: 1 !important; 
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 5.2 !important; 
        margin: 0 0 20px 0 !important;    
        flex: none !important;
        border-radius: 16px !important;
        overflow: hidden !important;
        position: relative !important;
    }
    .c-detailFv__right img.pc-only-img,
    .c-detailFv__right img[src$=".webp"] {
        display: none !important;
    }
    .c-detailFv__right img.sp-only-img,
    .c-detailFv__right img[src$=".jpg"] {
        display: block !important; 
        width: 100% !important;
        height: 100% !important; 
        object-fit: cover !important;
        object-position: center 5% !important; 
        transform: scale(1.0) !important; 
        transform-origin: center 5% !important; 
    }
    .c-detailFv__left {
        order: 2 !important;
        width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important; 
        text-align: left !important;                
    }
    .c-detailFv__year {
        font-size: 14px !important;
        font-weight: 700 !important;
        letter-spacing: 0.05em !important;
        margin: 0 0 16px 0 !important; 
        display: inline-flex !important;
        align-items: center !important;
    }
    .c-detailFv__catBox { 
        margin: 0 0 24px 0 !important; 
        justify-content: flex-start !important; 
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
    .c-detailFv__cat span {
        padding: 6px 14px !important;
        font-size: 12px !important;
        font-weight: 700 !important;
        background-color: #f5f5f5 !important;
        color: #555555 !important;
        border-radius: 4px !important;
    }
    .c-detailFv__name { 
        font-size: 32px !important;
        font-weight: 800 !important;
        letter-spacing: 0.03em !important;
        color: #222222 !important;
        margin: 0 0 12px 0 !important; 
    }
    .c-detailFv__position { 
        font-size: 14px !important;
        font-weight: 700 !important;
        color: #666666 !important;
        margin: 0 0 24px 0 !important; 
        line-height: 1.6 !important;
    }
    .c-detailFv__word { 
        font-size: 16px !important; 
        font-weight: 800 !important;
        color: #222222 !important;
        line-height: 1.8 !important;
        margin-bottom: 10px !important;
        max-width: 100% !important;
    }

    /* 8-3. 工作概要セクション (Job) */
    .interviewDetail__job {
        padding: 40px 0 !important;
    }
    .interviewDetail__jobInner .c-detailTtl {
        margin-top: 0 !important;
        margin-bottom: 12px !important; 
    }
    .interviewDetail__jobCont {
        font-size: 14px !important;
        color: #444444 !important;
        line-height: 2.0 !important;
        text-align: left !important; 
    }

    /* 8-5. インタビュー詳細セクション (My Story) */
    .interviewDetail__storyCont {
        margin-bottom: 35px !important;
        padding-bottom: 25px !important;
    }
    .interviewDetail__storyTtl {
        font-size: 15px !important;
        line-height: 1.5 !important;
    }
    .interviewDetail__storyTxt {
        font-size: 13px !important;
        line-height: 1.9 !important;
    }

    /* 8-6. メッセージセクション (Message) */
    .interviewDetail__messageBox {
        flex: none !important;
        width: 100% !important;
        padding: 30px 24px !important; 
        box-sizing: border-box !important;
        order: 1 !important; 
    }
    .interviewDetail__messageBox .c-detailTtl {
        margin-bottom: 24px !important; 
    }
    .interviewDetail__messageTxt {
        font-size: 14px !important;
        color: #444444 !important;
        line-height: 2.0 !important;
        text-align: left !important; 
    }
    
    html body main section div.interviewDetail__messageInner div.interviewDetail__messagePhoto {
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important; 
        height: auto !important; 
        margin: 0 !important;
        padding: 0 24px 30px 24px !important; 
        box-sizing: border-box !important;
        order: 2 !important; 
    }
    
    html body main section div.interviewDetail__messageInner div.interviewDetail__messagePhoto img {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 11 !important; 
        object-fit: cover !important; 
        border-radius: 12px !important; 
        transform: none !important;
    }
} 

/* ==========================================================
   ■ 9. 【500px〜768px専用】中間幅での各枠の再上書き競合リセット
   ========================================================== */
@media screen and (min-width: 500px) and (max-width: 768px) {
    html body .c-detailFv__right {
        width: 100% !important;
        max-width: 320px !important; 
        margin-left: auto !important; 
        margin-right: auto !important;
        margin-bottom: 30px !important;
        height: auto !important; 
        aspect-ratio: 4 / 5.2 !important; 
    }
    html body .c-detailFv__right img[src$=".jpg"] {
        object-position: center 10% !important; 
        transform: scale(1.0) !important; 
    }

    html body .interviewDetail__careerLeft {
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 35px !important;
    }
    html body .interviewDetail__careerLeft img {
        width: 100% !important;
        height: auto !important; 
        aspect-ratio: 4 / 3 !important; 
        object-fit: cover !important;               
        object-position: center 0% !important;    
        border-radius: 12px !important;
    }

    html body .interviewDetail__scheduleLeft {
        max-width: 440px !important;
        margin: 35px auto 0 auto !important;
    }
    html body .interviewDetail__scheduleLeft img {
        width: 100% !important;
        height: 240px !important;
        aspect-ratio: 16 / 10 !important;
    }
    html body .interviewDetail__scheduleRight {
        max-width: 100% !important; 
    }
    html body .interviewDetail__scheduleBox {
        max-width: 280px !important;
    }

    html body .interviewDetail__messageInner {
        display: flex !important;
        flex-direction: column !important;
    }
    html body .interviewDetail__messageBox {
        width: 100% !important;
    }
}

/* ==========================================================
   ■ 10. 【500px以下専用】極小スマホ画面での再上書き競合リセット
   ========================================================== */
@media screen and (max-width: 500px) {
    html body .c-detailFv__right {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important; 
        aspect-ratio: 4 / 5.2 !important; 
    }
    html body .c-detailFv__right img[src$=".jpg"] {
        object-position: center 5% !important; 
        transform: scale(1.0) !important; 
    }
    
    html body main section div.interviewDetail__messageInner div.interviewDetail__messagePhoto {
        padding: 0 24px 30px 24px !important;
    }
    
    html body main section div.interviewDetail__messageInner div.interviewDetail__messagePhoto img {
        aspect-ratio: 16 / 11 !important; 
    }
}

/* ==========================================================================
   ■ interview_1.html 限定：その他の社員インタビュー見出しの位置調整
   ========================================================================== */
body.page-interview-detail-1 .interview h2 {
    margin-top: -40px !important;    
    margin-bottom: 40px !important;  
    white-space: nowrap !important; 
    font-size: clamp(20px, 3.2vw, 28px) !important; 
}

/* ==========================================================================
   ■ 11. SP用：メッセージセクションの写真すべてに位置調整を適用（768px以下一律）
   ========================================================================== */
@media screen and (max-width: 768px) {
    html body main section div.interviewDetail__messageInner div.interviewDetail__messagePhoto img {
        object-position: 50% 0% !important;
    }
}

/* ==========================================================================
   ■ 全社員インタビュー個別詳細ページ（1〜4共通）：フェードアップ表示の最終受け皿設定
   ========================================================================== */
html body main .js-fade-up {
  opacity: 0 !important;
  transform: translateY(30px) !important; 
  transition: opacity 0.8s ease, transform 0.8s ease !important; 
  will-change: opacity, transform !important;
}

html body main .js-fade-up.is-active {
  opacity: 1 !important;
  transform: translateY(0) !important;
}