/* ---------------
  #course キャンペーン時用調整
--------------- */
.campaign-label {
  width: 238px;
  height: 28px;
  margin-top: 8px;
  padding: 0 0 3px 4px;
  background-color: #f5440f;
  text-align: left;
}
.campaign-label_blank {
  height: 36px;
}
.campaign-label span {
  position: relative;
  padding-left: 33px;
  font-size: 1.3rem;
  color: #fff;
}
.campaign-label span::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url("../images/ic_coin01.png") no-repeat center/84%;
  width: 32px;
  height: 21px;
  top: -2px;
  left: 0;
}
.campaign-label small {
  font-size: 90%;
}
.campaign-label strong {
  font-size: 140%;
  font-weight: bold;
}
.campaign .course-price_label {
  background-color: #fff;
  color: #111;
  border: 1px solid #333;
}
.course-thumb.target {
  position: relative;
}
.course-thumb.target::before {
  content: "無制限コースのみ対象";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  padding: 3px 10px 5px 16px;
  font-size: 1.4rem;
  color: #fff;
  background-color: #d97d03;
  border-radius: 18px 0 0 0;
}
  /* -------------------------------------------------------
  SP
--------------------------------------------------------- */

@media screen and (max-width: 768px) {
  /* ---------------
  #course キャンペーン時用調整
--------------- */
  .campaign .campaign-label {
    width: 100%;
    height: inherit;
  }
  .campaign-label_blank {
    min-height: 28px;
    height: inherit;
  }
  .campaign-label span {
    font-size: 1.0rem;
    padding-left: 3px;
  }
  .campaign-label span::before {
    display: none;
  }
  .campaign-label strong {
    font-size: 120%;
  }
  .course-thumb.target::before {
    padding: 2px 6px 4px 10px;
    font-size: 1.0rem;
  }
}

/* ---------------
  .cp-ribbon キャンペーンリボン設定
--------------- */
.cp-ribbon_area {
  padding: 20px 0 20px;
  text-align: center;
}

/* ---------------
  250520 日経パソコンEdu CP用
--------------- */
.np01 .cp-ribbon_area {
  text-align: center;
}
.np01 .pcOnly {
  display: block;
}
.np01 .spOnly {
  display: none;
}
@media screen and (max-width: 768px) {
  .np01 .pcOnly {
    display: none;
  }
  .np01 .spOnly {
    display: block;
  }
}