/*
/asset/css/page/p-function.css
functionページFV以外用CSS
*/
.p-function-note {
  margin: 10px 0 0;
  line-height: 1;
}
/* 1カラムの場合 */
.p-function-1column-item {
  position: relative;
  background-color: var(--rdenshihozon-bg-sub-03);
  border-radius: 10px;
  padding: 40px 60px;
  @media screen and (max-width: 840px) {
    padding: 50px 30px 35px;
  }
  &:nth-of-type(n + 2) {
    margin: 30px 0 0;
    @media screen and (max-width: 840px) {
      padding: 50px 30px 35px;
    }
  }
}
.p-function-1column-item__content {
  display: grid;
  grid-auto-rows: 1fr;
  grid-template-columns: 1.2fr 0.8fr;
  grid-template-rows: min-content;
  gap: 20px 30px;
  grid-template-areas: "image title" "image detail";
  @media screen and (max-width: 840px) {
    grid-auto-rows: auto;
    grid-template-columns: 1fr;
    grid-template-areas: "title" "image" "detail";
  }
  @media screen and (max-width: 600px) {
    gap: 20px;
  }
}
.p-function-1column-item-title {
  font-size: 24px;
  font-weight: 700;
  grid-area: title;
  color: var(--rdenshihozon-primary);
  @media screen and (max-width: 840px) {
    font-size: 20px;
    text-align: center;
  }
}
.p-function-1column-item__sub-title {
  font-size: 18px;
  font-weight: 700;
  @media screen and (max-width: 840px) {
    font-size: 16px;
  }
}
.p-function-1column-item__text {
  margin: 20px 0 0;
}
.p-function-1column-item__image-wrap {
  grid-area: image;
  text-align: center;
  video {
    object-fit: contain;
  }
}
.p-function-1column-item__image {
  max-width: 400px;
  @media screen and (max-width: 1024px) {
    margin: 0;
  }
}
.p-function-1column-item__detail {
  grid-area: detail;
}
/* 3カラムの場合 */
.p-function-3cloumn-list {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, 1fr);
  margin: 40px 0 0;
  @media screen and (max-width: 840px) {
    grid-template-columns: 1fr;
  }
}
.p-function-3cloumn-item {
  border-radius: 10px;
  padding: 40px 30px;
  background: var(--rdenshihozon-bg-sub-03);
}
.p-function-3cloumn-item-title {
  position: relative;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  color: var(--rdenshihozon-primary);
  @media screen and (max-width: 600px) {
    font-size: 18px;
  }
}
.p-function-3cloumn-item__text {
  margin: 20px 0 0;
}
