#cpo-page .lower-title .lower-title-wrapper::before {
  background-color: #007A40;
}
#cpo-page .lower-sub-title h2::after {
  background-color: #007A40;
}
#cpo-page .btn-regular {
  background-color: #007A40;
}
#cpo-page .btn-line {
  border-color: #007A40;
  color: #007A40;
}
#cpo-page .btn-line:before {
  background-color: #007A40;
}
#cpo-page .btn-line:hover {
  background-color: #007A40;
  color: #fff;
}
#cpo-page .btn-line:hover:before {
  background-color: #fff;
}
#cpo-page p.step-gray {
  color: #007A40;
}
#cpo-page li.number-step-item::after {
  background-color: #007A40;
}
#cpo-page #read-wrapper {
  padding: 6rem 0;
}
#cpo-page #read-wrapper .inner-1100 {
  gap: 6rem;
}
@media (max-width: 767px) {
  #cpo-page #read-wrapper .inner-1100 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
#cpo-page #read-wrapper .image-wrapper {
  width: 25rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#cpo-page #read-wrapper .image-wrapper img {
  width: 12rem;
}
#cpo-page #position .middle-wrapper {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 767px) {
  #cpo-page #position .middle-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3rem;
  }
}
#cpo-page #position .middle-wrapper .image-wrapper {
  width: 48%;
}
@media (max-width: 767px) {
  #cpo-page #position .middle-wrapper .image-wrapper {
    width: 100%;
  }
}
#cpo-page #position .middle-wrapper .target-wrapper {
  width: 48%;
}
@media (max-width: 767px) {
  #cpo-page #position .middle-wrapper .target-wrapper {
    width: 100%;
  }
}
#cpo-page #position .middle-wrapper .target-wrapper .sidebar-text {
  display: block;
}
#cpo-page #position .middle-wrapper .target-wrapper .sidebar-text::before {
  background-color: #007A40;
  width: 6rem;
  left: 0;
}
#cpo-page #position .middle-wrapper .target-wrapper .sidebar-text::after {
  background-color: #007A40;
  width: 6rem;
  right: 0;
}
#cpo-page #position .middle-wrapper .target-wrapper ul.target-list {
  gap: 1rem;
}
#cpo-page #position .middle-wrapper .target-wrapper ul.target-list li {
  padding: 2.5rem 2rem;
  width: 100%;
  font-size: 1.6rem;
  border: 1px solid #007A40;
  background-color: #fff;
  line-height: 1.5;
  position: relative;
  text-align: center;
}
@media (max-width: 767px) {
  #cpo-page #position .middle-wrapper .target-wrapper ul.target-list li {
    width: 100%;
  }
}
#cpo-page #position .middle-wrapper .target-wrapper ul.target-list li::before {
  position: absolute;
  top: 1rem;
  left: 1rem;
  width: 2rem;
  height: 2rem;
  content: "";
  -webkit-mask-image: url("../img/common/icon_check.svg");
          mask-image: url("../img/common/icon_check.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #007A40;
}
#cpo-page #position .count-wrapper p {
  text-align: center;
}
#cpo-page #about-cpo {
  margin: 5rem 0 0;
}
#cpo-page #about-cpo ul.reach-list {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 767px) {
  #cpo-page #about-cpo ul.reach-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2rem;
  }
}
#cpo-page #about-cpo ul.reach-list li {
  width: 31%;
  padding: 3rem 2rem;
  background-color: #fff;
}
@media (max-width: 767px) {
  #cpo-page #about-cpo ul.reach-list li {
    width: 100%;
  }
}
#cpo-page #about-cpo ul.reach-list li .image-wrapper img {
  max-height: 10rem;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper .certification-title {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper .certification-title img {
  width: 6rem;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table {
  width: 100%;
  border-collapse: collapse;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table tr {
  border-top: 1px solid #d6d6d6;
  border-bottom: 1px solid #d6d6d6;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table th,
#cpo-page #about-cpo ul.summary-list .content-wrapper table td {
  padding: 2rem;
  font-size: 1.4rem;
  line-height: 1.8;
}
@media (max-width: 767px) {
  #cpo-page #about-cpo ul.summary-list .content-wrapper table th,
  #cpo-page #about-cpo ul.summary-list .content-wrapper table td {
    font-size: 1.2rem;
    padding: 1rem;
  }
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table th {
  width: 14rem;
  background-color: #f1f1f4;
  vertical-align: middle;
}
@media (max-width: 767px) {
  #cpo-page #about-cpo ul.summary-list .content-wrapper table th {
    width: 10rem;
  }
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table .teacher-wrapper {
  gap: 2rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media (max-width: 767px) {
  #cpo-page #about-cpo ul.summary-list .content-wrapper table .teacher-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table .teacher-wrapper img {
  width: 14rem;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table table.curriculum-table {
  width: 100%;
  border-collapse: collapse;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table table.curriculum-table tr {
  border: 1px solid #d6d6d6;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table table.curriculum-table th {
  width: 3rem;
  vertical-align: middle;
  text-align: center;
  background-color: #fff !important;
  border-right: 1px solid #d6d6d6;
  background-color: #f1f1f4;
  white-space: nowrap;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table table.curriculum-table td {
  padding: 1rem 2.5rem 1rem 1rem;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table table.curriculum-table tr:not(:first-child) {
  display: none;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table table.curriculum-table.is-open tr:not(:first-child) {
  display: table-row;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table table.curriculum-table tr:first-child {
  cursor: pointer;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table table.curriculum-table tr:first-child td {
  position: relative;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table table.curriculum-table tr:first-child td::after {
  position: absolute;
  top: 50%;
  right: 1.4rem;
  width: 1rem;
  height: 1rem;
  content: "";
  border: 0;
  border-top: solid 0.2rem #007A40;
  border-right: solid 0.2rem #007A40;
  -webkit-transform: translateY(-50%) rotate(135deg);
          transform: translateY(-50%) rotate(135deg);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  pointer-events: none;
}
#cpo-page #about-cpo ul.summary-list .content-wrapper table table.curriculum-table.is-open tr:first-child td::after {
  -webkit-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}
#cpo-page #apply {
  margin: 5rem 0 0;
}
#cpo-page #apply ul.apply-list {
  row-gap: 3rem;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#cpo-page #apply ul.apply-list table {
  width: 100%;
  border-collapse: collapse;
}
#cpo-page #apply ul.apply-list table th,
#cpo-page #apply ul.apply-list table td {
  padding: 2rem;
  font-weight: 700;
  font-size: 1.4rem;
  text-align: center;
  border: 1px solid #d6d6d6;
}
#cpo-page #apply ul.apply-list table th {
  background-color: #007A40;
  color: #fff;
}
#cpo-page #apply ul.apply-list table td {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 100%;
}
#cpo-page #apply ul.apply-list table.apply-table thead {
  display: table-header-group;
}
#cpo-page #apply ul.apply-list table.apply-table tbody {
  display: table-row-group;
}
#cpo-page #apply ul.apply-list table.apply-table thead tr,
#cpo-page #apply ul.apply-list table.apply-table tbody tr {
  display: table-row;
  -webkit-box-flex: initial;
      -ms-flex: initial;
          flex: none;
  max-width: none;
  width: auto;
}
#cpo-page #apply ul.apply-list table.apply-table th,
#cpo-page #apply ul.apply-list table.apply-table td {
  display: table-cell;
  vertical-align: middle;
  height: auto;
  -webkit-box-align: initial;
      -ms-flex-align: initial;
          align-items: initial;
  -webkit-box-pack: initial;
      -ms-flex-pack: initial;
          justify-content: initial;
  -webkit-box-flex: initial;
      -ms-flex-positive: initial;
          flex-grow: initial;
}
#cpo-page #apply ul.apply-list table.apply-table thead th:nth-child(1) {
  width: 26%;
}
#cpo-page #apply ul.apply-list table.apply-table thead th:nth-child(2) {
  width: 20%;
}
#cpo-page #apply ul.apply-list table.apply-table thead th:nth-child(3) {
  width: 34%;
}
#cpo-page #apply ul.apply-list table.apply-table thead th:nth-child(4) {
  width: 20%;
}
#cpo-page #apply ul.apply-list table.apply-table tbody tr + tr td {
  border-top: 2px solid #d6d6d6;
}
#cpo-page #apply ul.apply-list table.apply-table td.schedule-data-cell {
  color: #007A40;
  font-weight: 700;
  line-height: 1.6;
  word-break: break-word;
}
@media (max-width: 767px) {
  #cpo-page #apply ul.apply-list table.apply-table thead {
    display: none;
  }
  #cpo-page #apply ul.apply-list table.apply-table tbody tr {
    display: block;
    margin-bottom: 2rem;
    border: 1px solid #d6d6d6;
  }
  #cpo-page #apply ul.apply-list table.apply-table tbody tr:last-child {
    margin-bottom: 0;
  }
  #cpo-page #apply ul.apply-list table.apply-table tbody td {
    display: block;
    width: 100%;
    text-align: left;
  }
  #cpo-page #apply ul.apply-list table.apply-table tbody td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 0.6rem;
    font-weight: 700;
    color: #007A40;
  }
}
#cpo-page #apply ul.apply-list table a {
  display: block;
  color: #fff;
  padding: 1rem 2rem 1rem 4rem;
  font-size: 1.4rem;
  font-weight: 700;
  border-radius: 0.5rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
  background-color: #007A40;
}
#cpo-page #apply ul.apply-list table a::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 1rem;
  width: 2rem;
  height: 2rem;
  -webkit-mask-image: url("../img/common/icon_arrow_white.svg");
          mask-image: url("../img/common/icon_arrow_white.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: #fff;
}
#cpo-page #apply ul.apply-list table a:hover {
  opacity: 0.6;
}
#cpo-page #apply ul.apply-list li.sub-title-item.wide-title {
  width: 100%;
}
#cpo-page #apply ul.apply-list li.sub-title-item.narrow-title {
  width: 48%;
}
@media (max-width: 767px) {
  #cpo-page #apply ul.apply-list li.sub-title-item.narrow-title {
    width: 100%;
  }
}
#cpo-page #step {
  margin: 5rem 0 0;
}
#cpo-page #step ul.step-list a.btn-line {
  margin: 0;
}
#cpo-page #price {
  margin: 5rem 0 0;
}
@media (max-width: 767px) {
  #cpo-page #price .content-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#cpo-page #price .content-wrapper .price-item-wrapper {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: 2rem;
}
#cpo-page #price .content-wrapper .price-item-wrapper .flex-item {
  width: 49%;
}
@media (max-width: 767px) {
  #cpo-page #price .content-wrapper .price-item-wrapper .flex-item {
    width: 100%;
  }
}
#cpo-page #price .content-wrapper .price-item-wrapper .price-item {
  background-color: #f1f1f4;
  gap: 3em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2rem 4rem;
  border-radius: 1rem;
}
@media (max-width: 767px) {
  #cpo-page #price .content-wrapper .price-item-wrapper .price-item {
    width: 100%;
  }
}
#cpo-page #price .content-wrapper .price-item-wrapper .price-item img {
  width: 6.7rem;
}
#cpo-page #update {
  margin: 5rem 0 0;
}
#cpo-page #faq {
  margin: 5rem 0 0;
}
#cpo-page #faq .faq-read-wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
#cpo-page #faq .faq-read-wrapper .image-wrapper {
  gap: 1rem;
}
#cpo-page #faq .faq-read-wrapper .image-wrapper img {
  width: 7rem;
}
#cpo-page #cta {
  margin: 7rem 0 0;
}
#cpo-page #cta .inner-1100 {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 3rem;
}
@media (max-width: 767px) {
  #cpo-page #cta .inner-1100 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 2rem;
  }
}
#cpo-page #cta .image-wrapper img {
  width: 13rem;
}
#cpo-page #related-page .inner-1100 {
  position: relative;
}
#cpo-page #related-page .others-wrapper {
  position: absolute;
  bottom: -3rem;
  right: 5%;
}
#cpo-page #related-page .others-wrapper a {
  color: #6d6d6d;
}