.c-kv-small.bg-colum-list {
  background-image: url(../img/column/bg_kv_list.jpg);
}
@media (max-width: 768px) {
  .c-kv-small.bg-colum-list {
    background-image: url(../img/column/bg_kv_list_sp.jpg);
  }
}

.c-kv-small.bg-colum-detail {
  background-image: url(../img/column/bg_kv_detail.jpg);
}
@media (max-width: 768px) {
  .c-kv-small.bg-colum-detail {
    background-image: url(../img/column/bg_kv_detail_sp.jpg);
  }
}

/*************************
* list
*************************/
.sec-column-list {
  padding: 94px 0 90px;
}
@media (max-width: 768px) {
  .sec-column-list {
    padding-top: 60px;
    padding-bottom: 80px;
  }
}
.sec-column-list .column-tag-area-title {
  padding-right: 1.5em;
  position: relative;
  flex-shrink: 0;
  font-size: 14px;
  line-height: 1.71;
}
.sec-column-list .column-tag-area-title::before {
  content: "";
  display: block;
  margin-right: 1em;
  width: 1px;
  height: 1.25em;
  position: absolute;
  right: 0;
  top: 0.3em;
  background-color: #B7B7B7;
}
.sec-column-list .column-tag-area {
  padding: 0.75em 2em 0.5em;
  display: flex;
  align-items: flex-start;
  font-size: 14px;
  line-height: 1.42;
  border-top: 1px solid #B7B7B7;
  border-bottom: 1px solid #B7B7B7;
}
@media (max-width: 768px) {
  .sec-column-list .column-tag-area {
    padding: 0.75em 0 0.5em;
  }
}
.sec-column-list .column-tag-list {
  padding-top: 0.15em;
  display: flex;
  flex-wrap: wrap;
}
.sec-column-list .column-tag-list li {
  margin-right: 1em;
  margin-bottom: 0.5em;
}

.archive-column-wrap {
  margin-top: 64px;
  width: 100%;
}

/**************************
* detail
*************************/
.p-column-article {
  padding-top: 92px;
  padding-bottom: 120px;
}
@media (max-width: 768px) {
  .p-column-article {
    padding-top: 60px;
    padding-bottom: 80px;
  }
}

/**************************
* post
*************************/
.p-post-title {
  position: relative;
  padding: 0 0 0.5em 1.25em;
  border-bottom: 1px solid #B7B7B7;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.37;
}
@media (max-width: 768px) {
  .p-post-title {
    font-size: 24px;
  }
}
.p-post-title::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  width: 8px;
  height: 100%;
  display: block;
  width: 8px;
  height: 80%;
  background: linear-gradient(#d99840 0%, #e4754d 20.2%, #e05669 40.39%, #c64789 61.08%, #9547a3 80.3%, #404fae 100%);
}

.p-post-date {
  position: relative;
  font-size: 10px;
  line-height: 1.7;
}

.p-post-category {
  padding: 0.25em 1em;
  background: #f0f0f0;
  border-radius: 5px;
  font-size: 14px;
}

.p-post-header {
  margin-top: 1em;
}

.p-post-header-category-list li {
  margin-right: 8px;
  margin-bottom: 8px;
  padding: 0.25em;
  display: inline-block;
  line-height: 1;
  border: 1px solid #B7B7B7;
  background-color: #B7B7B7;
  color: inherit;
  border-radius: 4px;
}
.p-post-header-category-list li a {
  display: block;
}

.p-post-header-tag-list li {
  margin-right: 8px;
  margin-bottom: 8px;
  padding: 0.25em;
  display: inline-block;
  font-size: 14px;
  line-height: 2.14;
}

.p-post-contents .p-toc__link {
  text-decoration: none;
}
.p-post-contents .p-toc__link:hover {
  text-decoration: underline;
}
.p-post-contents .p-toc {
  margin: 2em 0 4em;
  padding: 1.25em 2em;
  background-color: #F2F2F2;
  font-size: 16px;
  line-height: 2.12;
}
.p-post-contents .p-toc__title {
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 1px solid #F2F2F2;
  font-size: 16px;
  font-weight: 500;
  line-height: 2.12;
}
.p-post-contents .p-toc__list {
  color: #1268DB;
}
.p-post-contents .p-toc__list li {
  margin-top: 0.25em;
}
.p-post-contents .p-toc__list > li {
  padding-left: 0;
}
.p-post-contents .p-toc__list > li:before {
  display: none;
}
.p-post-contents .p-toc__list ul li:before {
  content: "";
  display: block;
  position: absolute;
  top: 1em;
  left: 2px;
  color: inherit;
  background-color: #1268DB;
  height: 1px;
  width: 6px;
}

.p-post-contents {
  padding-bottom: 90px;
  font-size: 16px;
  line-height: 1.75;
  word-break: break-all;
}
@media (max-width: 768px) {
  .p-post-contents {
    font-size: 15px;
  }
}
.p-post-contents h2 {
  padding: 1em 0.5em;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  background-color: #EBEBEB;
}
@media (max-width: 768px) {
  .p-post-contents h2 {
    font-size: 18px;
  }
}
.p-post-contents * + h2 {
  margin-top: 82px;
}
@media (max-width: 768px) {
  .p-post-contents * + h2 {
    margin-top: 48px;
  }
}
.p-post-contents h3 {
  padding: 1em 0.5em;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.33;
  background-color: #EBEBEB;
}
@media (max-width: 768px) {
  .p-post-contents h3 {
    font-size: 16px;
  }
}
.p-post-contents * + h3 {
  margin-top: 48px;
}
@media (max-width: 768px) {
  .p-post-contents * + h3 {
    margin-top: 30px;
  }
}
.p-post-contents h4 {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 768px) {
  .p-post-contents h4 {
    font-size: 15px;
  }
}
.p-post-contents b, .p-post-contents strong {
  font-weight: 700;
}
.p-post-contents > * {
  margin-bottom: 1.5em;
}
.p-post-contents ul li {
  position: relative;
  padding-left: 1em;
}
.p-post-contents ul li:before {
  content: "";
  display: block;
  position: absolute;
  top: calc(0.75em - 3px);
  left: 2px;
  color: inherit;
  background-color: #023793;
  height: 6px;
  width: 6px;
}
.p-post-contents ol {
  list-style-type: none;
  counter-reset: li;
}
.p-post-contents ol > li:before {
  counter-increment: li;
}
.p-post-contents ol > li:before {
  counter-increment: li -1;
}
.p-post-contents ol > li, .p-post-contents ol ol > li {
  position: relative;
  margin-top: 0.25em;
  margin-left: 1em;
  padding-left: 0;
}
.p-post-contents a {
  text-decoration: underline;
  text-underline-offset: 0.5em;
  outline: none;
}
.p-post-contents a:hover {
  text-decoration: none;
}
.p-post-contents ol > li:before, .p-post-contents ol ol > li:before {
  content: counter(li);
  counter-increment: li;
  position: absolute;
  right: calc(100% + 0.5em);
  top: 0.25em;
  display: block;
  font-family: inherit;
  line-height: 1.1;
  padding: 0;
  transform: scale(0.95);
  white-space: nowrap;
  width: auto;
}
.p-post-contents ol ol {
  counter-reset: li2;
  padding-left: 1em;
}
.p-post-contents ol ol > li:before {
  content: counter(li) "-" counter(li2);
  counter-increment: li2;
}
.p-post-contents ol ol ol {
  counter-reset: li3;
}
.p-post-contents ol ol ol > li:before {
  content: counter(li) "-" counter(li2) "-" counter(li3);
  counter-increment: li3;
}
.p-post-contents ol ul li {
  margin-left: 0;
  padding-left: 1em;
}
.p-post-contents ol ul li:before {
  counter-increment: none;
}
.p-post-contents blockquote {
  margin: 50px auto !important;
  width: 100%;
  padding: 1em;
  border: 1px solid #000;
}
.p-post-contents cite {
  display: block;
  color: #737373;
  font-size: 0.8em;
  text-align: right;
}
.p-post-contents .line01 {
  background: linear-gradient(transparent 60%, #ffff80 60%);
  font-weight: bold;
  font-size: 1.8rem;
}

.p-recommend-block {
  margin-bottom: 30px;
}

.p-recommend-block-title {
  position: relative;
  padding-left: 1em;
  font-size: 1.8rem;
  font-weight: 700;
}

.p-recommend-block-title::before {
  position: absolute;
  top: calc(50% - 4px);
  left: 0;
  width: 8px;
  height: 8px;
  content: "";
  background-color: #000;
  border-radius: 4px;
}

.p-recommended {
  margin-top: 1em;
  padding: 20px;
  border: solid 1px #000;
  display: flex;
}
@media (max-width: 768px) {
  .p-recommended {
    flex-direction: column;
  }
}

.p-recommended .thumbnail {
  flex-shrink: 0;
  width: 240px;
  height: auto;
}
.p-recommended .thumbnail a:hover, .p-recommended .thumbnail a:active {
  opacity: 0.8;
}

.p-recommended .thumbnail img {
  width: 100%;
  height: 100%;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
  object-fit: cover;
}

.p-recommended__body {
  margin-left: 32px;
}
@media (max-width: 768px) {
  .p-recommended__body {
    margin-top: 20px;
    margin-left: 0;
  }
}
.p-recommended__body .category {
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 8px;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .p-recommended__body .category {
    padding: 6px 0;
    font-size: 10px;
  }
}
.p-recommended__body .category a {
  text-decoration: none;
  padding: 6px 16px;
  font-size: 1.2rem;
  color: #202020;
  background-color: #f2f2f2;
  border-radius: 5px;
}
.p-recommended__body .title {
  margin: 0.5em 0;
  font-size: 20px;
  font-weight: 700;
}
@media (max-width: 768px) {
  .p-recommended__body .title {
    font-size: 16px;
  }
}
.p-recommended__body .title a {
  text-decoration: none;
  color: #000;
}
.p-recommended__body .title a:hover, .p-recommended__body .title a:active {
  text-decoration: underline;
}

.p-blog-img {
  margin: 76px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 102px;
  max-width: 100%;
  width: auto;
}
.p-blog-img img {
  width: auto;
  height: auto;
  max-width: 100%;
}

.p-post-banner {
  margin: 30px auto;
  width: 70%;
}
@media (max-width: 768px) {
  .p-post-banner {
    width: 100%;
  }
}

.p-post-banner a {
  display: block;
}
.p-post-banner a:hover, .p-post-banner a:active {
  opacity: 0.8;
}

.p-border-line {
  border: 1px solid #000;
  padding: 1em;
}

.p-border-doted {
  border: 1px dotted #000;
  padding: 1em;
}

.btn-column-contact-link {
  position: relative;
  margin: 0 auto;
  padding: 2.5em 1em;
  display: block;
  text-align: center;
  width: 100%;
  max-width: 680px;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.08em;
  color: #fff;
  background: linear-gradient(90deg, #25d484 0%, 50%, #31ddcb 70.5%, 100%, #25d484);
  background-size: 200% auto;
  border-radius: 50px;
  transition: 0.3s background ease-in-out;
}
@media (max-width: 768px) {
  .btn-column-contact-link {
    padding: 1.5em 1em;
  }
}
.btn-column-contact-link::before {
  content: "";
  display: block;
  width: 52px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.btn-column-contact-link::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background: url(../img/column/arrow.svg) no-repeat center/contain;
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
}
@media (hover: hover) {
  .btn-column-contact-link:hover {
    background-position: right center;
  }
  .btn-column-contact-link:hover span::before {
    background-position: right center;
  }
}
@media (hover: none) {
  .btn-column-contact-link:active {
    background-position: right center;
  }
  .btn-column-contact-link:active span::before {
    background-position: right center;
  }
}
.btn-column-contact-link span {
  position: relative;
  padding-left: 2.5em;
  display: inline-block;
}
.btn-column-contact-link span:after {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: "";
  display: block;
  width: 2em;
  height: 2em;
  background: url(../img/column/icon_mail.svg) no-repeat center/contain;
  z-index: 1;
}/*# sourceMappingURL=column.css.map */