@charset "UTF-8";
/* blog content common */
body {
  --preset--color--black: #000000;
  --preset--color--cyan-bluish-gray: #abb8c3;
  --preset--color--white: #ffffff;
  --preset--color--pale-pink: #f78da7;
  --preset--color--vivid-red: #cf2e2e;
  --preset--color--luminous-vivid-orange: #ff6900;
  --preset--color--luminous-vivid-amber: #fcb900;
  --preset--color--light-green-cyan: #7bdcb5;
  --preset--color--vivid-green-cyan: #00d084;
  --preset--color--pale-cyan-blue: #8ed1fc;
  --preset--color--vivid-cyan-blue: #0693e3;
  --preset--color--vivid-purple: #9b51e0;
}
.has-black-color { color: var(--preset--color--black) !important; }
.has-cyan-bluish-gray-color { color: var(--preset--color--cyan-bluish-gray) !important; }
.has-white-color { color: var(--preset--color--white) !important; }
.has-pale-pink-color { color: var(--preset--color--pale-pink) !important; }
.has-vivid-red-color { color: var(--preset--color--vivid-red) !important; }
.has-luminous-vivid-orange-color { color: var(--preset--color--luminous-vivid-orange) !important; }
.has-luminous-vivid-amber-color { color: var(--preset--color--luminous-vivid-amber) !important; }
.has-light-green-cyan-color { color: var(--preset--color--light-green-cyan) !important; }
.has-vivid-green-cyan-color { color: var(--preset--color--vivid-green-cyan) !important; }
.has-pale-cyan-blue-color { color: var(--preset--color--pale-cyan-blue) !important; }
.has-vivid-cyan-blue-color { color: var(--preset--color--vivid-cyan-blue) !important; }
.has-vivid-purple-color { color: var(--preset--color--vivid-purple) !important; }

.has-small-font-size { font-size: 13px!important; }
.has-medium-font-size { font-size: 20px!important; }
.has-large-font-size { font-size: 36px!important; }
.has-x-large-font-size { font-size: 42px!important; }

.has-text-align-left { text-align: left; }
.has-text-align-right { text-align: right; }
.has-text-align-center { text-align: center; }

.wp-block-image { font-size: 0; }
.wp-block-image.size-full,
.wp-block-image .size-full { max-width: 100%!important; height: auto; }
.wp-block-image.size-large,
.wp-block-image .size-large { max-width: 100%!important; height: auto; }
.wp-block-image.size-medium,
.wp-block-image .size-medium { max-width: 80%!important; height: auto; }
.wp-block-image.alignleft { text-align: left; }
.wp-block-image.alignright { text-align: right; }
.wp-block-image.aligncenter { text-align: center; }
.wp-block-image .alignleft { display: table; margin-right: auto; }
.wp-block-image .alignright { display: table; margin-left: auto; }
.wp-block-image .aligncenter { display: table; margin-right: auto; margin-left: auto; }
.wp-block-image img { height: auto; }
.wp-block-image figcaption { width: 100%; caption-side: bottom; }
.wp-block-image .alignleft figcaption { display: table-caption; text-align: center; }
.wp-block-image .aligncenter figcaption { display: table-caption; text-align: center; }
.wp-block-image .alignright figcaption { display: table-caption; text-align: right; }
.wp-block-table.alignleft figcaption { text-align: left; }
.wp-block-table.alignright figcaption { text-align: right; }
.wp-block-table.aligncenter figcaption { text-align: center; }
.wp-block-embed iframe { width: 100%; display: block; margin: 0 auto; }
.wp-block-embed iframe[src^="https://www.youtube.com/"] { aspect-ratio: 16 / 9; height: auto; }
.wp-block-gallery { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; align-items: flex-start; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.wp-block-gallery .wp-block-image { display: flex; flex-grow: 1; justify-content: center; position: relative; flex-direction: column; max-width: 100%!important; }
.wp-block-gallery .blocks-gallery-caption { width: 100%; }
.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) { width: 50%; -webkit-flex-basis: 50%; -ms-flex-preferred-size: 50%; flex-basis: 50%; }
.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) { width: 33.333%; -webkit-flex-basis: 33.333%; -ms-flex-preferred-size: 33.333%; flex-basis: 33.333%; }
@media screen and (max-width: 768px) {
  .wp-block-image.size-large,
  .wp-block-image .size-large { max-width: 100%!important; }
  .wp-block-image.size-medium,
  .wp-block-image .size-medium { max-width: 100%!important; }
  .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) { width: 100%; -webkit-flex-basis: 100%; -ms-flex-preferred-size: 100%; flex-basis: 100%; }
  .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) img { width: 100%; }
}


.wp-block-image {
  margin-top: 40px;
  margin-bottom: 40px;
}
.wp-block-gallery { margin: 30px -10px 30px!important; }
.wp-block-gallery .wp-block-image { margin: 0; padding: 10px;}
.wp-block-gallery .blocks-gallery-caption { margin-top: 5px; padding: 0 10px; }
.wp-block-embed { margin: 0 0 30px; }
.wp-block-table { margin: 0 0 30px; }
.wp-element-caption {
  font-size: 1.2rem;
  margin-top: 7px;
  line-height: 1.6666666667;
}
.wp-block-columns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 20px;
  margin: 40px 0;
}
.wp-block-columns .wp-block-image {
  margin-bottom: 0;
  margin-top: 0;
}
.wp-block-quote {
  font-weight: 400;
  padding: 30px 40px;
  background-color: #f7f8f8;
  margin: 30px 0;
  border-radius: 10px;
}
.wp-block-quote p {
  margin-top: 0;
  position: relative;
}
.wp-block-quote p::before {
  content: "“";
  display: block;
  position: absolute;
  top: -15px;
  font-size: 4rem;
  left: -20px;
  line-height: 1;
}
.wp-block-quote p::after {
  content: "”";
  display: block;
  position: absolute;
  bottom: -30px;
  font-size: 4rem;
  right: -20px;
  line-height: 1;
}
.wp-block-quote p:last-of-type {
  margin-bottom: 0;
}
.wp-block-quote cite {
  font-size: 1.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-style: normal;
  margin-top: 20px;
}
.wp-block-quote cite a {
  display: block;
  color: #232323;
  text-decoration: none;
  font-size: 1.2rem;
}
.wp-block-quote cite a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .wp-block-image {
    margin: 25px 0;
  }
  .wp-block-gallery { margin: 25px 0 25px!important; }
  .wp-block-gallery .wp-block-image { margin-bottom: 15px; padding: 0; }
  .wp-block-gallery .wp-block-image:last-of-type { margin-bottom: 0; }
  .wp-block-gallery .blocks-gallery-caption { padding: 0; }
  .wp-block-embed { margin: 0 0 25px; }
  .wp-block-table { margin: 0 0 25px; }
  .wp-element-caption { font-size: 1.2rem; margin-top: 7px; }
  .wp-block-columns {
    gap: 10px;
  }
  .wp-block-column {
    margin-top: 0;
    margin-bottom: 30px;
  }
  .wp-block-column:last-of-type {
    margin-bottom: 0;
  }
  .wp-block-column .wp-block-image {
    margin-top: 0;
  }
  .wp-block-quote {
    padding: 20px 25px 25px;
  }
  .wp-block-quote p::before {
    left: -15px;
    font-size: 3rem;
    top: -10px;
  }
  .wp-block-quote p::after {
    right: -15px;
    font-size: 3rem;
    bottom: -25px;
  }
  .wp-block-quote cite {
    font-size: 1rem;
    font-size: 1.2rem;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .wp-block-quote cite a {
    font-size: 1rem;
    margin-top: 0;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}


.postContent {
  width: 100%;
  margin: 0; }
  .postContent > *:first-child {
    margin-top: 0!important;
  }
  .postContent > *:last-child {
    margin-bottom: 0!important;
  }
  .postContent img {
    border-radius: 10px;
  }
  .postContent h2 {
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 1.6666666667;
    margin-bottom: 35px;
  }
  .postContent h2 span {
    font-weight: inherit;
    font-size: inherit;
  }
  .postContent h2::after {
    content: "";
    display: block;
    width: 100%;
    height: 3px;
    background: repeating-linear-gradient(to right, #8cd0df 0 33.333%, #7fc697 33.333% 66.666%, #d7a476 66.666% 100%);
    margin-top: 10px;
  }
  .postContent h3 {
    font-size: 2rem;
    font-weight: 500;
    margin-bottom: 30px;
    margin-top: 65px;
    padding-left: 10px;
    border-bottom: 1px solid #dcdddd;
    padding-bottom: 10px;
  }
  .postContent p {
    line-height: 1.875;
    margin-bottom: 1.6em;
  }
  .postContent ul,
  .postContent ol {
    list-style: none;
  }
  .postContent > ul,
  .postContent > ol {
    margin: 30px 0 40px;
  }
  .postContent ul li,
  .postContent ol li {
    line-height: 1.875;
    position: relative;
  }
  .postContent ul li {
    line-height: 1.875;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .postContent ul li::before {
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    border-radius: 5px;
    background-color: #8cd0df;
    margin-right: 10px;
    min-width: 5px;
    position: relative;
    top: 14px;
  }
  .postContent ol {
    counter-reset: olnum 0;
  }
  .postContent ol li {
    padding-left: 2rem;
  }
  .postContent ol li::before {
    counter-increment: olnum 1;
    content: counter(olnum) ". ";
    color: #232323;
    position: absolute;
    top: 0;
    left: 0;
  }
  .postContent table th,
  .postContent table td {
    padding: 15px;
    border: 1px solid #272727;
  }
@media screen and (max-width: 768px) {
  .postContent h2 {
    font-size: 2rem;
    line-height: 1.6;
    margin-top: 40px;
    margin-bottom: 25px;
  }
  .postContent h2::after {
    margin-top: 10px;
  }
  .postContent h3 {
    font-size: 1.8rem;
    margin-top: 40px;
    margin-bottom: 30px;
  }
  .postContent p {
    line-height: 1.875;
    margin-top: 25px;
    margin-bottom: 25px;
  }
  .postContent > ul,
  .postContent > ol {
    margin: 30px 0;
  }
  .postContent ul li,
  .postContent ol li {
    line-height: 1.5625;
  }
  .postContent ul li::before {
    width: 6px;
    height: 6px;
    min-width: 6px;
    top: 8px;
    margin-right: 15px;
  }
}

.postContent mark { font-style: normal; font-weight: inherit; }
.postContent em { font-style: italic; }
.postContent b,
.postContent strong { font-weight: 700; }
.postContent sup { top: -0.5em; }
.postContent sup { top: -0.5em; }
.postContent sub,
.postContent sup { font-size: 75%; line-height: 0; position: relative; }
.postContent s,
.postContent strike,
.postContent del { text-decoration: line-through; }
.postContent blockquote { font-style: normal; }
.postContent blockquote > *:first-child { margin-top: 0; }
.postContent blockquote > *:last-child { margin-bottom: 0; }
.postContent blockquote p:last-of-type { margin-bottom: 0; }
.postContent table { width: 100%; table-layout: fixed; }


.singleCard {
  border: 1px solid #efefef;
  background-color: #fff;
  border-radius: 10px;
}
.singleCard__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: inherit;
  text-decoration: none;
  padding: 20px;
}
@media screen and (max-width: 768px) {
  .singleCard__inner {
    padding: 15px;
  }
}
.singleCard__inner:hover .singleCard__ttl {
  text-decoration: underline;
}
.singleCard__fig {
  width: 220px;
  min-width: 220px;
}
@media screen and (max-width: 768px) {
  .singleCard__fig {
    width: 105px;
    min-width: 105px;
  }
}
.singleCard__figImg {
  width: 100%;
  height: auto;
  aspect-ratio: 220/150;
}
.singleCard__text {
  padding-left: 30px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .singleCard__text {
    padding-left: 10px;
  }
}
.singleCard__info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.singleCard__date {
  font-size: 1.6rem;
  font-weight: 500;
  margin-right: 10px;
  position: relative;
  top: -1px;
}
@media screen and (max-width: 768px) {
  .singleCard__date {
    font-size: 1rem;
    margin-right: 10px;
  }
}
.singleCard__category {
  font-size: 1.4rem;
  font-weight: 500;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 26px;
  border: 1px solid #232323;
  padding: 0 12px 2px;
  border-radius: 26px;
  margin-right: 10px;
}
@media screen and (max-width: 768px) {
  .singleCard__category {
    font-size: 1rem;
    padding: 0 10px 1px;
    height: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 1px;
  }
}
p.singleCard__ttl,
.singleCard__ttl {
  line-height: 1.875;
  margin: 12px 0 0;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media screen and (max-width: 768px) {
  p.singleCard__ttl,
  .singleCard__ttl {
    font-size: 1.4rem;
    line-height: 1.43;
    margin: 7px 0 0;
  }
}
