#contentsContainer .p-mv .c-mv_thema span {
  font-size: 14px;
  display: block;
}

#contentsContainer .case-list .c-card_list .c-card_banner {
  width: 100%;
}

#contentsContainer .case-list .c-card_banner a {
  min-height: 150px;
}

.function .c-card_banner,
.device-list .c-card_banner {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
}

#contentsContainer .function .c-card_banner .c-card_wrap,
#contentsContainer .device-list .c-card_banner .c-card_wrap {
  background: #fff;
  border: 2px solid #DADDE0;
  border-radius: 8px;
  min-height: 134px;
  padding: 28px 32px;
  position: relative;
  height: 100%;
  display: inherit;
  grid-template-rows: inherit;
  grid-row: inherit;
}

#contentsContainer .device-list .c-card_banner .c-card_wrap {
  padding: 12px;
}

#contentsContainer .device-list .c-card_banner a.c-card_link:last-child {
  margin-bottom: 0;
}

#contentsContainer .function .c-card_banner img.c-card_img,
#contentsContainer .device-list .c-card_banner img.c-card_img {
  aspect-ratio: inherit;
  border-bottom: 0;
  border-radius: 0;
  margin: auto;
}

.function.l-gridLayout__fourColumnLayout,
.device-list.l-gridLayout__fourColumnLayout {
  gap: 16px;
}

#contentsContainer .notes .c-sec_subNormalTtl,
#contentsContainer .case .c-sec_subNormalTtl,
#contentsContainer .plan .c-sec_subNormalTtl,
#contentsContainer .device .c-sec_subNormalTtl,
#contentsContainer .partner .c-sec_subNormalTtl {
  font-size: 18px;
}

.-marginB0 {
  margin-bottom: 0 !important;
}

.-gap20 {
  gap: 20px;
}

.-overflowWrap {
  overflow-wrap: anywhere;
}

#contentsContainer .function img.-wAuto {
  width: auto;
}

#contentsContainer .c-tagList > li.-green {
  color: #2E5F27;
  background-color: #DEE8DB;
}

#contentsContainer .c-tagList > li.-purple {
  color: #7521A2;
  background-color: #DFE0ED;
}

#contentsContainer .c-txtBgBox_wrap {
  gap: 40px;
}

#contentsContainer .c-txtBgBox {
  position: relative;
  background-color: #eff1f2 !important;
}

#contentsContainer .c-txtBgBox::after {
  content: "＋";
  font-size: 18px;
  font-weight: bold;
  position: absolute;
  top: 50%;
  right: -32px;
  transform: translateY(-50%);
}

#contentsContainer .c-txtBgBox .c-txtBgBox_ttl {
  color: #d7063b !important;
}

#contentsContainer .c-txtBgBox:last-child:after {
  content: "";
}

.p-cost-ex {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.p-cost-ex + * {
  margin-top: 15px;
}
.p-cost-ex_label {
  background-color:
  #2b7bb2; color:
  #fff;
  padding: 4px 6px;
  border-radius: 6px;
  margin-right: 0.5em;
}

#contentsContainer .-insideTable .c-table th {
  border-style: solid;
  border-color: #EFF1F2;
  border-width: 2px 0 2px 4px;
}

#contentsContainer .-insideTable .c-table td {
  border-style: solid;
  border-color: #EFF1F2;
  border-width: 2px 4px;
}

@media screen and (min-width: 769px) {
  .-noTitle {
    padding-top: 48px;
  }
  #contentsContainer .c-table.c-table--half {
    min-width: 230px !important;
    width: auto !important;
  }
}

@media screen and (max-width: 768px) {
  #contentsContainer .c-paragraphBox .c-card_banner a {
    min-height: auto;
  }
  #contentsContainer .function .c-card_banner .c-card_wrap {
    padding: 16px;
  }
  #contentsContainer .c-txtBgBox_wrap {
    gap: 30px;
  }
  #contentsContainer .notes .c-sec_subNormalTtl,
  #contentsContainer .case .c-sec_subNormalTtl,
  #contentsContainer .plan .c-sec_subNormalTtl {
    font-size: 17px;
  }
  #contentsContainer .device .c-sec_subNormalTtl,
  #contentsContainer .partner .c-sec_subNormalTtl {
    font-size: 16px;
  }
  #contentsContainer .c-txtBgBox::after {
    content: "＋";
    font-size: 16px;
    position: absolute;
    top: auto;
    bottom: -26px;
    right: 50%;
    transform: translateX(50%);
  }
  .p-cost-ex {
    font-size: 16px;
    text-align: left;
  }
  .p-cost-ex_label {
    padding: 2px 6px;
  }
}

.c-unitBox__inner {
  display: flex;
  gap: 20px;
  flex-direction: row;
}

@media screen and (max-width: 768px) {
  .c-unitBox__inner {
    gap: 0;
    flex-direction: column;
  }
}

/* 利用シーンごとのプラン調整 */
#contentsContainer .secPlan .c-card_banner img {
  aspect-ratio: auto;
  object-fit: none;
}
@media screen and (max-width: 768px) {
  #contentsContainer .secPlan .c-card_banner--hasPic img {
    width: auto;
  }
}
@media screen and (min-width: 769px) {
  #contentsContainer .secPlan .c-card_banner--hasPic img {
    width: 22%;
  }
  #contentsContainer .c-card_banner--hasPic a {
    padding-right: calc(32px + 22% + 8px);
  }
}