:root {
  --color-white: #fff;
  --color-txt: #4b4b4b;
  --color-main: #9b51e0;
  --color-sub: #f6edff;
  --color-sub02: #ebc8ff;
  --color-sub03: #c699e2;
  --color-gray: #adadad;
  --color-accent: #ff62b6;
}

/* =======================================================
news
======================================================= */
.l-news {
  padding-bottom: 20.1875rem;
}
@media screen and (max-width: 767px) {
  .l-news {
    padding-bottom: 10rem;
  }
}

@media screen and (min-width: 768px) {
  .p-news {
    width: 43.75rem;
  }
}
.p-news .c-hgroup {
  margin-bottom: 2rem;
}
.p-news .p-post__ttl {
  padding-bottom: 1.125rem;
  margin-bottom: 1.5rem;
  font-size: 2.25rem;
  font-weight: 700;
  color: var(--color-main);
  letter-spacing: 0.01em;
  border-bottom: 0.375rem solid var(--color-sub);
}
@media screen and (max-width: 767px) {
  .p-news .p-post__ttl {
    font-size: 2rem;
    letter-spacing: 0.02em;
  }
}
.p-news .p-post__cont {
  display: grid;
  gap: 2rem;
}
.p-news .p-post__cont > * {
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: calc(22.5/15);
  letter-spacing: 0.02em;
}
.p-news .p-post__cont .p-news__post-ttl {
  padding: 0.125rem 1.25rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: calc(36/24);
  color: var(--color-main);
  background: var(--color-sub);
  border-radius: 1.25rem;
}
@media screen and (max-width: 767px) {
  .p-news .p-post__cont .p-news__post-ttl {
    padding: 0.25rem 1.25rem;
  }
}
.p-news .p-post__cont .p-news__post-subttl {
  display: flex;
  gap: 0.875rem;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: calc(30/20);
}
.p-news .p-post__cont .p-news__post-subttl::before {
  flex: 0 1 1.25rem;
  height: 1.25rem;
  margin-top: 0.3125rem;
  content: "";
  background: var(--color-main);
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .p-news .p-post__cont .p-news__post-subttl::before {
    flex: 0 1 1.875rem;
    height: 1.875rem;
    margin-top: 0;
  }
}