@charset "UTF-8";
/*
  /rakurakucloud/jidootai/asset/css/object/module/m-info-detail.css
  お知らせ詳細（プレスリリース等）記事用CSS
*/

.m-info-detail-fv {
  background-color: var(--white);
  overflow: hidden;
  padding: 70px 0;
  position: relative;
  text-align: center;
  @media screen and (max-width: 840px) {
    padding: 30px 0;
  }
  @media screen and (max-width: 600px) {
    background-color: var(--rjidootai-bg-sub-03);
  }
}
.m-info-detail-fv__inner {
  margin: 0 auto;
  max-width: 1120px;
  padding: 0 40px;
  position: relative;
  z-index: 10;
}
.m-info-detail-fv-title {
  font-size: clamp(22px, 4vw, 30px);
  font-weight: 700;
  line-height: 1.3;
  @media screen and (max-width: 600px) {
    text-align: left;
  }
}
.m-info-detail-fv-title__small {
  @media screen and (min-width: 841px) {
    display: none;
  }
  @media screen and (max-width: 840px) {
    display: block;
    font-size: clamp(14px, 3vw, 20px);
    padding: 0 0 10px;
    font-weight: 400;
  }
}
.m-info-detail-fv-title__sub {
  display: block;
  font-size: clamp(14px, 2vw, 20px);
  font-weight: 400;
  line-height: 1.6;
  padding: 20px 0 0;
  @media screen and (max-width: 600px) {
    padding: 15px 0 0;
  }
}
.m-info-detail-fv__deco {
  align-items: center;
  display: flex;
  height: 385px;
  justify-content: center;
  position: absolute;
  width: 373px;
}
.m-info-detail-fv__deco.m-info-detail-fv__deco--right {
  right: -70px;
  top: -165px;
  transform: rotate(151.43deg);
  @media screen and (max-width: 840px) {
    right: -143px;
    top: -161px;
  }
  @media screen and (max-width: 600px) {
    right: -144px;
    top: -179px;
    transform: rotate(170.43deg);
  }
}
.m-info-detail-fv__deco.m-info-detail-fv__deco--left {
  bottom: -152px;
  left: -74px;
  transform: rotate(-28.57deg);
  @media screen and (max-width: 840px) {
    bottom: -167px;
    left: -133px;
  }
  @media screen and (max-width: 600px) {
    display: none;
  }
}
.m-info-detail-fv__deco-inner {
  flex-shrink: 0;
}
.m-info-detail-fv__image-wrap {
  height: 224px;
  overflow: hidden;
  position: relative;
  width: 200px;
  @media screen and (max-width: 840px) {
    width: 106px;
    height: 142px;
  }
}

.m-info-detail-section {
  & .l-common-section__inner {
    max-width: 1000px;
  }
}


/* ==========================================================================
   記事本体
   ========================================================================== */
.m-info-detail-article {
  margin: 0;
}

/* 日付・カテゴリ */
.m-info-detail-article__head {
  align-items: center;
  border-bottom: 1px solid var(--gray-bg-01);
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  padding: 0 0 20px;
}
.m-info-detail-article__date {
  font-size: 16px;
  font-weight: 500;
  line-height: 2;
  margin: 0;
}
.m-info-detail-article__category {
  background-color: var(--gray-bg-02);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7;
  min-width: 140px;
  padding: 3px 20px;
  text-align: center;
}

/* リード文 */
.m-info-detail-article__lead {
  font-size: 16px;
  line-height: 2;
  margin: 30px 0 0;
  @media screen and (max-width: 600px) {
    font-size: 14px;
  }
}

/* 図版 */
.m-info-detail-article__figure {
  margin: 40px auto;
  max-width: 1000px;
}
.m-info-detail-article__image {
  display: block;
  height: auto;
  width: 100%;
}

/* ==========================================================================
   本文（見出し・段落）
   ========================================================================== */
.m-info-detail-article__body {
  margin: 30px 0 0;
}
.m-info-detail-article__heading {
  background-color: var(--gray-bg-02);
  border-left: 5px solid var(--rjidootai-primary);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  margin: 40px 0 0;
  padding: 22px 15px 17px 20px;
  &:first-child {
    margin: 0;
  }
  @media screen and (max-width: 600px) {
    font-size: 18px;
    margin: 30px 0 0;
    padding: 17px 15px 13px 15px;
  }
}
.m-info-detail-article__sub-heading {
  border-bottom: 2px dashed var(--gray-bg-01);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  margin: 40px 0 0;
  padding: 0 0 15px;
  @media screen and (max-width: 600px) {
    font-size: 16px;
    margin: 30px 0 0;
  }
}
.m-info-detail-article__item-heading {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  margin: 30px 0 0;
  @media screen and (max-width: 600px) {
    font-size: 15px;
    margin: 25px 0 0;
  }
}
.m-info-detail-article__text {
  font-size: 16px;
  line-height: 2;
  margin: 20px 0 0;
  @media screen and (max-width: 600px) {
    font-size: 14px;
  }
}

/* 関連リンク行 */
.m-info-detail-article__relation {
  word-break: break-all;
}

/* 注釈 */
.m-info-detail-article__note {
  font-size: 14px;
  line-height: 1.8;
  margin: 20px 0 0;
  @media screen and (max-width: 600px) {
    font-size: 13px;
  }
}

/* テーブル */
.m-info-detail-table {
  margin: 30px 0 0;
}
.m-info-detail-table__scroll {
  -webkit-overflow-scrolling: touch;
  display: block;
  max-width: 100%;
  min-width: 0;
  overflow: auto;
}
.m-info-detail-table__table {
  border-collapse: collapse;
  min-width: 800px;
  table-layout: fixed;
  width: 100%;
}
.m-info-detail-table__head-empty {
  background-color: var(--white);
  border: 1px solid var(--gray-08);
  width: 8%;
}
.m-info-detail-table__head-empty.m-info-detail-table__head-empty--item {
  width: 14%;
}
.m-info-detail-table__head {
  background-color: var(--gray-bg-02);
  border: 1px solid var(--gray-08);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  padding: 15px 10px;
  text-align: center;
  width: 26%;
  @media screen and (max-width: 600px) {
    font-size: 14px;
    padding: 12px 8px;
  }
}

.m-info-detail-table__head.m-info-detail-table__head--feature {
  background-color: var(--rjidootai-bg-main);
  border-color: var(--rjidootai-primary);
  color: var(--white);
}
.m-info-detail-table__group,
.m-info-detail-table__row-head {
  background-color: var(--gray-bg-02);
  border: 1px solid var(--gray-08);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
  padding: 15px 10px;
  text-align: center;
  vertical-align: middle;
  @media screen and (max-width: 600px) {
    font-size: 13px;
    padding: 12px 8px;
  }
}
.m-info-detail-table__cell {
  border: 1px solid var(--gray-08);
  font-size: 14px;
  line-height: 1.6;
  padding: 15px;
  text-align: left;
  vertical-align: middle;
  @media screen and (max-width: 600px) {
    font-size: 13px;
    padding: 12px 10px;
  }
}
.m-info-detail-table__cell.m-info-detail-table__cell--feature {
  background-color: var(--rjidootai-bg-sub-03);
}

/* ==========================================================================
   情報ボックス（会社情報・会社概要・お問い合わせ先）
   ========================================================================== */
.m-info-detail-box {
  background-color: var(--gray-bg-02);
  border-radius: 10px;
  margin: 40px 0 0;
  padding: 25px 30px 30px;
  @media screen and (max-width: 600px) {
    padding: 20px 15px 25px;
  }
}
.m-info-detail-box__title {
  border-bottom: 1px solid var(--rjidootai-primary);
  border-left: none;
  color: var(--rjidootai-primary);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  margin: 30px 0 0;
  padding: 0 10px 10px 0;
  &:first-child {
    margin: 0;
  }
  @media screen and (max-width: 600px) {
    font-size: 16px;
  }
}
.m-info-detail-box__company {
  border-bottom: 1px solid var(--rjidootai-bg-sub-03);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  margin: 20px 0 0;
  padding: 0 0 10px;
}
.m-info-detail-box-definition {
  display: flex;
  flex-wrap: wrap;
  margin: 20px 0 0;
}
.m-info-detail-box-definition__term {
  border-bottom: 1px solid var(--rjidootai-bg-sub-03);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  padding: 4px 10px 4px 0;
  width: 100px;
  @media screen and (max-width: 600px) {
    width: 90px;
  }
}
.m-info-detail-box-definition__description {
  border-bottom: 1px solid var(--rjidootai-bg-sub-03);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  padding: 4px 0;
  width: calc(100% - 100px);
  word-break: break-all;
  @media screen and (max-width: 600px) {
    width: calc(100% - 90px);
  }
}
.m-info-detail-box__link {
  color: var(--link);
  text-decoration: underline;
  &:hover {
    text-decoration: none;
  }
}
.m-info-detail-box__note {
  display: block;
  font-size: 12px;
  line-height: 1.8;
  margin: 20px 0 0;
}
