@charset "utf-8";

/* ==========================================================================
   company.css
   会社案内ページ専用スタイル
   ------------------------------------------------------------------------
   ※1rem = 10px（reset.css の html { font-size: 62.5%; } 前提）
   ※タイトルセクション・パンくず・共通見出し（.c-heading）・
     ページ内リンク（.c-anchorlink）の共通スタイルは common.css にあります。
     ここではタイトルセクションの背景画像だけ指定します。
   ※余白・文字サイズはデザインJPG（1:1スケール）の実測値です。
   ========================================================================== */

/* ==========================================================================
   1. タイトルセクション
   ========================================================================== */
.c-pagetitle--company {
  background-image: url("/assets/img/company/img_title_bgimg_company.jpg");
}

/* ==========================================================================
   2. 代表挨拶
   ========================================================================== */
.p-message {
  margin-bottom: 7.2rem;
}

.p-message__body {
  display: grid;
  grid-template-columns: 35rem 1fr;
  align-items: start;
  column-gap: 5.8rem;
  margin-top: 5.6rem;
}

.p-message__img img {
  border-radius: 10px;
}

/* 直下の段落のみ。署名ブロック内の行間は下で個別に指定します */
.p-message__text > p + p {
  margin-top: 2.4rem;
}

.p-message__sign {
  margin-top: 3.2rem;
  text-align: right;
  line-height: 1.6;
}

.p-message__sign p + p {
  margin-top: 0.8rem;
}

/* 氏名だけ大きくする */
.p-message__personal {
  margin-left: 1.4rem;
  font-size: 2.4rem;
}

/* ------------------------------ タブレット・SP ------------------------------ */
@media screen and (max-width: 1023px) {
  .p-message {
    margin-bottom: 4rem;
  }

  .p-message__body {
    grid-template-columns: 1fr;
    margin-top: 2rem;
  }

  /* 写真は幅いっぱいには広げず、中央に置く（デザイン実測 207px） */
  .p-message__img {
    width: 20.7rem;
    margin-inline: auto;
  }

  .p-message__text {
    margin-top: 2.4rem;
  }

  .p-message__text > p + p {
    margin-top: 3rem;
  }

  .p-message__sign {
    margin-top: 5.6rem;
  }
}

/* ==========================================================================
   3. 会社概要
   ========================================================================== */
.p-outline {
  margin-bottom: 7.2rem;
  padding: 7.2rem 0;
  background-color: var(--color-bg-blue);
}

.p-outline__card {
  margin-top: 4.8rem;
  padding: 4.8rem 7.2rem 7.2rem;
  border-radius: 10px;
  background-color: #fff;
}

.p-outline__row {
  display: grid;
  grid-template-columns: 10.4rem 1fr;
  column-gap: 6.6rem;
  padding: 2rem 0;
  border-bottom: 1px solid var(--color-border-blue);
}

.p-outline__label {
  color: var(--color-main);
  font-size: 1.8rem;
  font-weight: 700;
}

/* 内容欄の空行。中身の無い段落にも1行分の高さを持たせる */
.p-outline__value p:empty::before {
  content: "\00a0";
}

/* 所在地だけは「拠点名＋住所」を1ブロックとして繰り返す */
.p-outline__office + .p-outline__office {
  margin-top: 3.2rem;
}

.p-outline__officename {
  font-size: 1.8rem;
  font-weight: 700;
}

/* 会社概要PDF。水色の帯の上に置くので、ボックスは白にする */
.p-outline__pdf {
  margin-top: 4.8rem;
}

.p-outline__pdf .c-pdfdl__inner {
  background-color: #fff;
}

/* ------------------------------ タブレット・SP ------------------------------ */
@media screen and (max-width: 1023px) {
  .p-outline {
    margin-bottom: 4.8rem;
    padding: 4rem 0;
  }

  .p-outline__card {
    margin-top: 2.4rem;
    padding: 0 1.6rem 2rem;
  }

  /* ラベルと値を縦に積む */
  .p-outline__row {
    grid-template-columns: 1fr;
    row-gap: 0.4rem;
  }

  /* SPの本文は15pxなので、ラベルと拠点名は16pxを明示する */
  .p-outline__label {
    font-size: 1.6rem;
    line-height: 1.6;
  }

  .p-outline__officename {
    font-size: 1.6rem;
  }

  .p-outline__pdf {
    margin-top: 2.4rem;
  }
}

/* ==========================================================================
   4. 沿革
   ========================================================================== */
.p-history {
  margin-bottom: 14.4rem;
}

.p-history__list {
  position: relative;
  display: grid;
  row-gap: 1.5rem;
  margin-top: 4.8rem;
}

.p-history__list::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 16.5rem;
  width: 1px;
  background-color: var(--color-border-blue);
}

/* 「年月 ／ ● ／ 内容」の3カラム */
.p-history__item {
  display: grid;
  grid-template-columns: 15.9rem 1.2rem 1fr;
}

.p-history__date {
  display: grid;
  grid-template-columns: 9.2rem 1fr;
}

/* 年・月とも青。タブレット・SPでは下の @media で縦積みにします */
.p-history__year,
.p-history__month {
  color: var(--color-main);
}

.p-history__dot {
  position: relative;
  width: 1.2rem;
  height: 1.2rem;
  margin-top: 1rem;
  border-radius: 50%;
  background-color: var(--color-main);
}

.p-history__body {
  padding-left: 3.3rem;
}

.p-history__text + .p-history__text {
  margin-top: 0.8rem;
}

/* 支給画像（680×510）を縮小して配置。次の項目との間隔は下marginで詰める */
.p-history__img {
  width: 34.8rem;
  margin: 2rem 0 1.2rem;
}

.p-history__img img {
  border-radius: 10px;
}

/* ------------------------------ タブレット・SP ------------------------------ */
@media screen and (max-width: 1023px) {
  .p-history {
    margin-bottom: 8rem;
  }

  .p-history__list {
    row-gap: 1.6rem;
    margin-top: 4rem;
  }

  /* ●の中心は左端から0.6rem（●の半径ぶん） */
  .p-history__list::before {
    left: 0.6rem;
  }

  .p-history__item {
    grid-template-columns: 1.2rem 1fr;
    column-gap: 2.4rem;
  }

  /* ●は年月の1行目の中央へ。行送り24px（15px×1.6）との差分（(24-12)÷2）だけ下げています */
  .p-history__dot {
    grid-area: 1 / 1 / 2 / 2;
    margin-top: 0.6rem;
  }

  .p-history__date {
    grid-area: 1 / 2 / 2 / 3;
    display: block;
    line-height: 1.6;
  }

  .p-history__year,
  .p-history__month {
    display: block;
  }

  .p-history__year:empty {
    display: none;
  }

  .p-history__body {
    grid-area: 2 / 2 / 3 / 3;
    padding-left: 0;
  }

  .p-history__img {
    width: 100%;
  }
}
