/* ==================================================
   Stockholder セクション構造
================================================== */


.p-stockholder .p-stockholder__ir {
    width: 70%;
  }
.p-stockholder .p-stockholder__news {
  padding-right: 0px;
}  

/* ------------------------------
   News（レイアウト順・余白調整）
------------------------------ */
.p-stockholder__news {
  border-right: none !important;
  order: 1;
  padding-left: 60px;
  padding-right: 0;
}

/* ------------------------------
   IR メインコンテナ
------------------------------ */
.p-stockholder__ir {
  border-right: 1px solid #c6cbd2;
  padding-right: 40px;
  max-width: 563px;
}

/* .p-stockholder 配下限定調整 */
.p-stockholder .p-stockholder__ir {
  padding-left: 0;
}

/* リンク内 span の余白調整 */
.c-link--single a span {
  margin-top: 0px;
}

/* ==================================================
   IR Media（中央寄せ）
================================================== */
.p-stockholder__ir-media {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* ==================================================
   Message カード（グレー背景）
================================================== */
.p-stockholder__message {
  background-color: #f2f3f5;
  border-radius: 12px;
  overflow: hidden;
  padding: 10px;
}

/* ==================================================
   画像（レスポンシブ対応）
================================================== */

/* メッセージ画像 */
.p-stockholder__message-image {
  position: relative;
}

.p-stockholder__message-image img {
  width: 100%;
  height: auto;
  display: block;
}

/* IR 内の画像共通指定 */
.p-stockholder__ir img {
  width: 100%;
  height: auto;
  display: block;
}

/* ==================================================
   画像上テキスト（トップメッセージ）
================================================== */

#top_message {
  font-size: clamp(1.05rem, 2.4vw, 1.7rem);
}

#hiraku_briefing {
  font-size: clamp(1.05rem, 2.4vw, 1.5rem);
}

/* テキスト全体（画像に追従） */
.ceo-text {
  position: absolute;
  left: 40%;
  bottom: 38%;
  max-width: 88%;
  display: flex;
  flex-direction: column;
  gap: 1.5em;
}

/* テキスト本体（画面幅に応じて可変） */
.ceo-text a {
  text-decoration: none;
  line-height: 1.3;
  word-break: break-word; /* 日本語・英数字対応 */
}

/* ==================================================
   Container 余白調整
================================================== */
.l-container {
  padding-left: 0;
  padding-right: 0;
}

/* ==================================================
   SP（960px 以下）
================================================== */
@media screen and (max-width: 960.98px) {

  .p-stockholder .p-stockholder__ir {
    width: 100%;
  }


  /* News（SP） */
  .p-stockholder .p-stockholder__news {
    border-right: 0;
    width: 100%;
    padding-top: 40px;
    padding-right: 0;
    padding-bottom: 40px;
    padding-left: 0;
  }

  /* IR（SP） */
  .p-stockholder__ir {
    border-right: 0;
    width: 100%;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 40px;
  }

  .p-stockholder .p-stockholder__ir {
    max-width: 645px;
  }

  /* Container（SP） */
  .l-container {
    padding-left: 15px;
    padding-right: 15px;
  }

  /* 画像上テキスト（SP 調整） */
  .ceo-text {
    left: 45%;
    bottom: 39%;
    max-width: 90%;
    gap: 1.2em;
  }

  .ceo-text a {
    line-height: 1.35;
  }

  #top_message {
  font-size: clamp(0.9rem, 4vw, 2rem);
}

#hiraku_briefing {
  font-size: clamp(0.9rem, 4vw, 1.8rem);
}

  /* Message カード（SP 余白） */
  .p-stockholder__message {
    padding: 16px;
  }
}
