@charset "UTF-8";
/*====================================

  ■メディアクエリ

=====================================*/
/*====================================

  ■変数　　※文字色、背景色など使い回せるもののみ使用

=====================================*/
/*===============================

2カラム

===============================*/
.separateContents {
  margin: 0 auto;
  padding: 0 15px;
}
@media screen and (min-width: 768px) {
  .separateContents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px 1.5rem 0;
  }
}
.separateContents .separateContentsMain {
  width: 100%;
  margin: 0;
  padding: 0 0 20px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .separateContents .separateContentsMain {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    max-width: 825px;
  }
}
.separateContents .separateContentsSub {
  width: 100%;
  margin: 0;
  padding: 0 0 20px;
}
@media screen and (min-width: 768px) {
  .separateContents .separateContentsSub {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    max-width: 240px;
    margin: 0 0 0 30px;
  }
}
@media screen and (min-width: 1200px) {
  .separateContents .separateContentsSub {
    margin: 0 0 0 65px;
  }
}

/*===============================

タームリスト

===============================*/
.postCategory {
  background: #eaf9ff;
  padding: 15px 15px 50px;
  margin: 0 auto 15px;
  height: 140px;
  overflow: hidden;
  position: relative;
  border-bottom: none;
  /*
  .postCategoryChild{
    > li{
      list-style: none;
      display: inline-block;
      margin: 0 10px 10px 0;
      > span{
        display: inline-block;
        > a{ 
          display: inline-block;
          background: #AAAAAA;
          color: #FFFFFF;
          border-radius: 3px;
          padding: 2px 10px;
          font-size: 11px;
          @include mixins.mq(min-xs) {
            transition: .3s;
            font-size: 14px;
            padding: 5px 15px;
            &:hover{
              opacity: .7;
            }
          }
        }
      }
    }
  }
  */
}
@media screen and (min-width: 768px) {
  .postCategory {
    padding: 20px 30px 50px;
    margin: 0 auto 10px;
  }
}
.postCategory .postCategoryParent {
  display: block;
  padding: 0;
  margin: 0;
}
.postCategory .postCategoryParent > li {
  display: inline-block;
  list-style: none;
  position: relative;
  margin: 0;
}
.postCategory .postCategoryParent > li > span {
  position: relative;
  display: block;
  margin: 0 10px 10px 0;
  min-width: 120px;
}
.postCategory .postCategoryParent > li > span > a {
  display: block;
  background: #7dacbe;
  position: relative;
  z-index: 1;
  padding: 4px 15px;
  font-size: 12px;
  color: #fff;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .postCategory .postCategoryParent > li > span > a {
    border-radius: 5px;
    font-size: 15px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .postCategory .postCategoryParent > li > span > a:hover {
    opacity: 0.7;
  }
}
.postCategory .postCategoryOpen {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  border: none;
  background: rgb(255, 255, 255);
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(255, 255, 255)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0) 100%);
  text-align: center;
  padding: 50px 0 20px;
  z-index: 10;
  color: #000;
}
.postCategory .postCategoryOpen span {
  display: inline-block;
  padding: 0;
  font-weight: bold;
  font-size: 13px;
  background: url(../img/icon_downarrow01_black.svg) no-repeat center center/13px auto;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  border: 1px solid #000;
}
@media screen and (min-width: 768px) {
  .postCategory .postCategoryOpen {
    opacity: 1;
  }
  .postCategory .postCategoryOpen:hover {
    opacity: 1;
  }
}
.postCategory.open {
  margin: 0 auto 30px;
}
.postCategory.open .postCategoryOpen {
  background: none;
  padding: 0 0 10px;
}
.postCategory.open .postCategoryOpen span {
  background: url(../img/icon_uparrow01_black.svg) no-repeat center center/13px auto;
}

.postCategoryheadline {
  margin: 0 0 15px;
  padding: 0 0 10px;
  border-bottom: 1px solid #7cabbe;
  line-height: 1;
}
.postCategoryheadline .el_text {
  display: inline-block;
  font-size: 18px;
  letter-spacing: 3px;
}

/*===============================

ブログ一覧

===============================*/
.blogSelectTitle {
  line-height: 1.4;
  padding: 0 0 3px 15px;
  margin: 0 0 30px;
  position: relative;
  font-weight: bold;
  font-size: 20px;
}
@media screen and (min-width: 768px) {
  .blogSelectTitle {
    font-size: 25px;
  }
}
.blogSelectTitle::before {
  content: "";
  display: inline-block;
  background: #b1e1f5;
  width: 5px;
  height: 100%;
  border-radius: 4px;
  position: absolute;
  top: 0;
  left: 0;
}

.blogArchiveWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 20px);
  padding: 0 0 20px;
  margin: 0 0 0 -10px;
}
@media screen and (min-width: 768px) {
  .blogArchiveWrap {
    width: calc(100% + 30px);
    margin: 0 0 0 -15px;
  }
}

.blogArchiveItem {
  width: calc(50% - 20px);
  margin: 0 10px 20px;
}
@media screen and (min-width: 768px) {
  .blogArchiveItem {
    width: calc(33.3333333333% - 30px);
    margin: 0 15px 30px;
  }
}
.blogArchiveItem a {
  display: block;
}
@media screen and (min-width: 768px) {
  .blogArchiveItem a {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .blogArchiveItem a:hover {
    opacity: 0.7;
  }
}

.blogArchiveThum {
  text-align: center;
  margin: 0 auto 10px;
  line-height: 1;
}
.blogArchiveThum img {
  display: inline-block;
  max-width: 100%;
  width: 100%;
  height: auto;
}

.blogArchiveDate {
  color: #666;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 12px;
}
.blogArchiveDate time {
  display: inline-block;
  margin: 0 10px 0 0;
}

.blogArchiveCat {
  font-weight: bold;
  font-size: 12px;
}
.blogArchiveCat a {
  color: #1c6ddd;
}
@media screen and (min-width: 768px) {
  .blogArchiveCat a:hover {
    text-decoration: underline;
  }
}

.blogArchiveTitle {
  font-weight: bold;
  line-height: 1.4;
  margin: 10px 0;
}
.blogArchiveTitle a {
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .blogArchiveTitle a {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .blogArchiveTitle a:hover {
    opacity: 1;
    text-decoration: underline;
  }
}

.blogArchiveTag {
  font-size: 10px;
  text-align: left;
}
.blogArchiveTag > span {
  display: inline-block;
  text-align: left;
  margin: 0 10px 5px 0;
}
.blogArchiveTag a {
  color: #666;
}
@media screen and (min-width: 768px) {
  .blogArchiveTag a {
    text-decoration: underline;
  }
}

/*===============================

サイド

===============================*/
.side {
  margin: 0;
  padding: 0;
}

.sideHeadline {
  background: #000;
  color: #FFFFFF;
  font-size: 16px;
  text-align: center;
  padding: 2px 10px 2px;
  margin: 0 0 15px;
}

.blogTag .blogTagList {
  background: #eaf9ff;
  padding: 15px 10px 5px;
  margin: 0 auto 15px;
}
.blogTag .blogTagList li {
  list-style: none;
  display: inline-block;
  margin: 0 5px 10px;
}
.blogTag .blogTagList li a {
  display: inline-block;
  background: #7dacbe;
  position: relative;
  z-index: 1;
  padding: 2px 10px;
  font-size: 12px;
  color: #fff;
  text-align: center;
  border-radius: 5px;
}

.blogConnection .blogConnectionWrap {
  padding: 0 0 30px;
}
.blogConnection .blogConnectionWrap .blogConnectionItem {
  padding: 0 0 10px;
  margin: 0 0 20px;
  border-bottom: 1px solid #CCCCCC;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.blogConnection .blogConnectionWrap .blogConnectionItem .blogConnectionItem__left {
  width: 30%;
  margin: 0 5% 0 0;
}
.blogConnection .blogConnectionWrap .blogConnectionItem .blogConnectionItem__left .blogConnectionThum {
  text-align: center;
  margin: 0 auto 5px;
}
.blogConnection .blogConnectionWrap .blogConnectionItem .blogConnectionItem__left .blogConnectionThum img {
  display: inline-block;
  max-width: 100%;
  width: 100%;
  height: auto;
}
.blogConnection .blogConnectionWrap .blogConnectionItem .blogConnectionItem__right {
  width: 65%;
}
.blogConnection .blogConnectionWrap .blogConnectionItem .blogConnectionItem__right .blogConnectionDate {
  color: #666;
  font-size: 12px;
}
.blogConnection .blogConnectionWrap .blogConnectionItem .blogConnectionItem__right .blogConnectionDate span {
  display: inline-block;
}
.blogConnection .blogConnectionWrap .blogConnectionItem .blogConnectionItem__right .blogConnectionTitle {
  font-weight: bold;
  line-height: 1.4;
  font-size: 12px;
}
.blogConnection .blogConnectionWrap .blogConnectionItem:last-child {
  padding: 0;
  margin: 0;
  border: none;
}

/*===========================
archive.php ページネーション
===========================*/
.wp-pagenavi {
  text-align: center;
  padding: 0;
  margin: 0 auto 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.wp-pagenavi h2 {
  display: none;
}
.wp-pagenavi .navigation {
  margin: 0 auto;
}
.wp-pagenavi > a,
.wp-pagenavi > span {
  border: none;
  padding: 2px 3px;
  margin: 0;
  background: none;
  color: #000;
  border: none;
  border-right: none;
  min-width: 28px;
  font-size: 14px;
  display: inline-block;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-decoration: none;
  position: relative;
}
.wp-pagenavi > a:hover,
.wp-pagenavi > span:hover {
  opacity: 1;
  background-color: #000;
  color: #fff;
}
.wp-pagenavi > a > span,
.wp-pagenavi > span > span {
  display: inline-block;
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  border: none;
  padding: 0;
  margin: 0;
  line-height: 1;
}
.wp-pagenavi > span.current {
  font-weight: normal;
  background-color: #000;
  color: #fff;
}
.wp-pagenavi > span.pages {
  background: none;
  color: #000;
  margin: 0 10px 0 0;
}

/*===========================
single.php ページネーション
===========================*/
.paginate__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 0 50px;
}
.paginate__wrap a {
  display: block;
  padding: 5px;
  color: #000;
  font-size: 14px;
  background: none;
  border-radius: 0;
  text-decoration: none;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .paginate__wrap a:hover {
    color: #000;
  }
}
.paginate__wrap a i {
  display: inline-block;
  margin: 0;
  opacity: 1 !important;
}
.paginate__wrap .paginate__block--back span {
  display: inline-block;
  font-size: 13px;
  background: #85d0ee;
  color: #fff;
  padding: 3px 15px;
  border-radius: 15px;
}
.paginate__wrap .paginate__block--next {
  min-width: 38px;
}
.paginate__wrap .paginate__block--prev {
  min-width: 38px;
}

/*===============================

ブログ詳細

===============================*/
#main-visual.sl--column {
  padding: 15px;
}
@media screen and (min-width: 768px) {
  #main-visual.sl--column {
    padding: 6rem 2rem;
  }
}
#main-visual.sl--column .sub-title {
  text-align: left;
  font-size: 15px;
}
@media screen and (min-width: 768px) {
  #main-visual.sl--column .sub-title {
    text-align: center;
    font-size: 19px;
  }
}
#main-visual.sl--column .page-title {
  font-size: 20px;
  line-height: 1.4;
  margin: 0;
  text-align: left;
}
@media screen and (min-width: 768px) {
  #main-visual.sl--column .page-title {
    font-size: 30px;
    line-height: 50px;
    text-align: center;
  }
}

.blogSingleThum {
  text-align: center;
  line-height: 1;
  margin: 0 auto 15px;
}
.blogSingleThum img {
  display: inline-block;
}

.blogSingleDate {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 30px;
  font-size: 13px;
}
.blogSingleDate .blogSingleDateItem {
  color: #666666;
  margin: 0 5px 0 0;
}
.blogSingleDate .blogSingleDateItem:first-child::after {
  content: "　/　";
}

.post__content {
  padding: 0 0 30px;
  /*===============
  段落
  ===============*/
  /*===============
  太字タグ
  ===============*/
  /*===============
  iタグ
  ===============*/
  /*===============
  リンクタグ
  ===============*/
  /*===============
  リストタグ
  ===============*/
  /*===============
  番号付きリストタグ
  ===============*/
  /*===============
  引用タグ単語
  ===============*/
  /*===============
  引用タグ長文
  ===============*/
  /*===============
  見出しタグ
  ===============*/
  /*===============
  強調タグ
  ===============*/
  /*===============
  テーブルタグ
  ===============*/
  /*===============
  imgタグ
  ===============*/
  /*===============
  ボタン
  ===============*/
  /*=============================================
  目次　※プラグイン「Table of Contents Plus」
  =============================================*/
  /*=============================================
  CTAエリア
  =============================================*/
  /*=============================================
  監修者情報
  =============================================*/
}
.post__content .clearfix > *:first-child {
  margin-top: 0;
}
.post__content p {
  margin-bottom: 15px;
}
.post__content p a {
  display: inline;
  text-decoration: underline;
}
.post__content strong {
  font-weight: bold;
}
.post__content b {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(75%, #ff8c8c));
  background: linear-gradient(transparent 75%, #ff8c8c 75%);
}
.post__content i {
  font-style: italic;
  font-weight: bold;
  background: #ffe8e8;
  color: #000;
}
.post__content a {
  display: block;
  border-radius: 5px;
  margin: 0 0 10px;
  color: #85d0ee;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.post__content a:hover {
  opacity: 0.7;
}
.post__content ul a,
.post__content ol a,
.post__content table a,
.post__content h1 a,
.post__content h2 a,
.post__content h3 a,
.post__content h4 a,
.post__content h5 a,
.post__content h6 a {
  display: inline;
  margin: 0;
  padding: 0;
  background: none;
  text-decoration: underline;
}
.post__content ul a:hover,
.post__content ol a:hover,
.post__content table a:hover,
.post__content h1 a:hover,
.post__content h2 a:hover,
.post__content h3 a:hover,
.post__content h4 a:hover,
.post__content h5 a:hover,
.post__content h6 a:hover {
  text-decoration: none;
  opacity: 1;
}
.post__content ul {
  padding: 0;
  margin: 20px 0 30px;
}
.post__content ul li {
  list-style: none;
  padding: 5px 0 5px 15px;
  margin: 0 0 5px;
  position: relative;
  border-bottom: 1px solid #EEEEEE;
}
.post__content ul li::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background: #85d0ee;
  position: absolute;
  top: 50%;
  left: 0;
  bottom: auto;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
}
.post__content ol {
  padding: 0 0 0 18px;
  margin: 20px 0 30px;
}
.post__content ol li {
  padding: 5px 0;
  margin: 0 0 5px;
  position: relative;
  border-bottom: 1px solid #EEEEEE;
}
.post__content q {
  padding: 0px 15px;
  margin: 20px 0;
  position: relative;
  display: inline;
  border-radius: 5px;
}
.post__content q::before {
  content: "”";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 0;
  font-weight: bold;
  font-size: 2rem;
  color: #85d0ee;
}
.post__content q::after {
  content: "”";
  display: inline-block;
  position: absolute;
  bottom: -2px;
  right: 0;
  line-height: 0;
  font-weight: bold;
  font-size: 2rem;
  color: #85d0ee;
}
.post__content blockquote {
  padding: 15px 35px;
  margin: 20px 0;
  background: #85d0ee;
  position: relative;
  display: block;
  border-radius: 5px;
}
.post__content blockquote p {
  margin: 0;
}
.post__content blockquote::before {
  content: "”";
  display: inline-block;
  position: absolute;
  top: 9px;
  left: 15px;
  line-height: 1;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1;
  font-weight: bold;
  font-size: 2rem;
  color: #85d0ee;
}
.post__content blockquote::after {
  content: "”";
  display: inline-block;
  position: absolute;
  bottom: 2px;
  right: 15px;
  line-height: 1;
  font-weight: bold;
  font-size: 2rem;
  color: #85d0ee;
}
.post__content h1 {
  margin: 20px 0;
  font-size: 24px;
  padding: 0 0 10px;
  color: #000;
  border-bottom: solid 2px #85d0ee;
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  .post__content h1 {
    font-size: 30px;
    padding: 0 0 10px;
  }
}
.post__content h2 {
  line-height: 1.4;
  padding: 0 0 3px 15px;
  margin: 40px 0 20px;
  position: relative;
  font-weight: bold;
  font-size: 20px;
}
@media screen and (min-width: 768px) {
  .post__content h2 {
    font-size: 25px;
  }
}
.post__content h2::before {
  content: "";
  display: inline-block;
  background: #b1e1f5;
  width: 5px;
  height: 100%;
  border-radius: 4px;
  position: absolute;
  top: 0;
  left: 0;
}
.post__content h3 {
  margin: 20px 0;
  font-size: 16px;
  font-weight: bold;
  padding: 6px 15px 5px;
  color: #fff;
  background: #85d0ee;
  position: relative;
}
@media screen and (max-width: 767px) {
  .post__content h3 {
    font-size: 20px;
  }
}
.post__content h3::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: calc(100% - 20px);
  position: absolute;
  top: 10px;
  left: 0;
  background: #85d0ee;
  border-radius: 5px;
}
.post__content h4 {
  font-weight: bold;
  display: block;
  margin: 20px 0;
  padding: 0 0 10px;
  border-bottom: 1px solid #06adef;
  color: #000;
  position: relative;
  font-size: 15px;
}
.post__content h5 {
  font-weight: bold;
  margin: 20px 0;
  padding: 0 5px;
  font-size: 16px;
  border-bottom: 1px solid #CCCCCC;
}
.post__content h5 + h6 {
  margin-top: 0;
}
.post__content h6 {
  font-weight: bold;
  margin: 20px 0;
  padding: 0 5px;
  font-size: 14px;
  display: inline-block;
  border-bottom: 1px solid #CCCCCC;
}
.post__content em {
  font-family: "Times New Roman", "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "ＭＳ Ｐゴシック", serif;
  font-style: italic;
  font-size: 1.5rem;
  color: #000;
}
.post__content p em {
  font-size: 1.5rem;
  color: #000;
}
.post__content .wp-block-table table {
  border-collapse: collapse;
  width: 100%;
  margin: 30px 0;
  border: none;
  border-top: 1px solid #85d0ee;
  border-left: 1px solid #85d0ee;
  table-layout: fixed;
}
.post__content .wp-block-table table tbody tr th {
  border: none;
  border-right: 1px solid #85d0ee;
  border-bottom: 1px solid #85d0ee;
  background: #85d0ee;
  color: #000;
  padding: 10px;
  width: 33%;
  font-weight: bold;
  text-align: left;
}
.post__content .wp-block-table table tbody tr td {
  border: none;
  border-right: 1px solid #85d0ee;
  border-bottom: 1px solid #85d0ee;
  padding: 10px;
  text-align: left;
  width: 100%;
  font-size: 14px;
}
.post__content .wp-block-table table caption {
  padding-top: 5px;
  padding-bottom: 5px;
  color: #000;
  text-align: left;
  caption-side: bottom;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .post__content .wp-block-table:not(.horizontal) table {
    display: block;
    border-top: none;
    border-left: none;
  }
}
@media screen and (max-width: 767px) {
  .post__content .wp-block-table:not(.horizontal) table tbody {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .post__content .wp-block-table:not(.horizontal) table tbody tr {
    border-left: 1px solid #85d0ee;
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .post__content .wp-block-table:not(.horizontal) table tbody tr:first-child {
    border-top: 1px solid #85d0ee;
  }
}
@media screen and (max-width: 767px) {
  .post__content .wp-block-table:not(.horizontal) table tbody tr th {
    width: 100%;
    display: block;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .post__content .wp-block-table:not(.horizontal) table tbody tr td {
    width: 100%;
    display: block;
    text-align: left;
  }
}
.post__content .wp-block-table:not(.horizontal) table tbody tr td:first-child {
  background: #eaf9ff;
  color: #000;
}
@media screen and (max-width: 767px) {
  .post__content .wp-block-table:not(.horizontal) table caption {
    display: block;
  }
}
.post__content .wp-block-table.horizontal table tbody tr:first-child td {
  background: #eaf9ff;
  color: #000;
}
.post__content figure {
  margin: 30px 0;
}
.post__content figure img {
  display: inline-block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 500px;
}
.post__content figcaption {
  padding-top: 5px;
  padding-bottom: 5px;
  color: #000;
  text-align: left;
  caption-side: bottom;
  text-align: center;
}
.post__content .wp-block-image {
  float: none;
}
.post__content .wp-block-button {
  text-align: center;
  width: 100%;
}
.post__content .wp-block-button .wp-block-button__link {
  display: inline-block;
  font-size: 16px;
  font-weight: 700;
  width: 100%;
  max-width: 300px;
  margin: 0 auto 30px;
  text-align: center;
  color: #000;
  border: none;
  background-color: #fff74a;
  border-radius: 100px;
  position: relative;
}
.post__content .wp-block-button .wp-block-button__link::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 12px;
  right: 20px;
  content: url(../img/ico_arrow.svg);
}
.post__content .wp-block-button .wp-block-button__link.blank::after {
  content: url(../img/icon_link.svg);
}
.post__content #toc_container {
  width: auto;
  display: table;
  width: 100% !important;
  max-width: 100%;
  margin: 30px auto 30px;
}
.post__content #toc_container .toc_title {
  font-size: 18px;
  margin: 0 auro 4px;
}
.post__content #toc_container .toc_title .toc_toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 15px;
}
.post__content #toc_container .toc_title .toc_toggle a {
  display: inline-block;
  color: #000;
}
.post__content #toc_container .toc_list {
  max-width: 500px;
  margin: 20px auto;
}
.post__content #toc_container .toc_list ul {
  padding: 0;
  margin: 0;
}
.post__content #toc_container .toc_list li {
  list-style: none;
  padding: 0 0 0 15px;
  border: none;
}
.post__content #toc_container .toc_list li a {
  display: block;
  color: #000;
  padding: 5px 0 5px 15px;
  margin: 0 auto 7px;
  border-bottom: 1px solid #EEEEEE;
}
.post__content #toc_container .toc_list li::before {
  display: none;
}
.post__content #toc_container .toc_list > li {
  padding: 0;
}
.post__content #toc_container .toc_list > li > a {
  position: relative;
  padding: 0 0 0 15px !important;
  font-weight: normal;
  font-size: 16px;
}
.post__content #toc_container .toc_list > li > a::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background: #85d0ee;
  position: absolute;
  top: 50%;
  left: 0;
  bottom: auto;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
}
.post__content #toc_container .toc_list > li > ul > li > a {
  position: relative;
  padding: 0 0 0 15px !important;
  font-size: 14px;
}
.post__content #toc_container .toc_list > li > ul > li > a::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 2px;
  background: #85d0ee;
  position: absolute;
  top: 50%;
  left: 0;
  bottom: auto;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
}
.post__content #toc_container .toc_list > li > ul > li > ul > li > a {
  position: relative;
  padding: 0 0 0 15px !important;
  font-size: 12px;
}
.post__content .blogCard {
  margin: 0 auto 30px;
}
.post__content .blogCard .blogCardInner {
  padding: 30px 30px 0;
}
.post__content .blogCard .blogCardInner .blogCardWrap {
  padding: 0 0 20px;
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem {
  padding: 0 0 10px;
  margin: 0 0 20px;
  border-bottom: 1px solid #CCCCCC;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__left {
  width: 30%;
  margin: 0 5% 0 0;
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__left .blogCardThum {
  text-align: center;
  margin: 0 auto 5px;
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__left .blogCardThum img {
  display: inline-block;
  max-width: 100%;
  width: 100%;
  height: auto;
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right {
  width: 65%;
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right .blogCardDate {
  color: #000;
  font-size: 12px;
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right .blogCardDate span {
  display: inline-block;
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right .blogCardTitle {
  font-weight: bold;
  line-height: 1.4;
  font-size: 15px;
  margin: 0 0 4px;
}
@media screen and (min-width: 768px) {
  .post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right .blogCardTitle {
    font-size: 20px;
  }
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right .blogCardTitle a {
  display: inline-block;
  color: #000;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right .blogCardTitle a:hover {
    text-decoration: underline;
  }
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right .blogCardUrl {
  font-weight: bold;
  line-height: 1.4;
  font-size: 13px;
  margin: 0 0 15px;
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right .blogCardUrl a {
  display: inline-block;
  color: #1c6ddd;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right .blogCardUrl a:hover {
    text-decoration: underline;
  }
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem .blogCardItem__right .blogArchiveTag span a {
  display: inline-block;
  color: #000;
  font-size: 14px;
  text-decoration: underline;
}
.post__content .blogCard .blogCardInner .blogCardWrap .blogCardItem:last-child {
  padding: 0;
  margin: 0;
  border: none;
}
.post__content .supervisorOuter {
  margin: 0 auto 30px;
}
.post__content .supervisorOuter .supervisorHeadline {
  border-bottom: 1px solid #000;
  margin: 0 0 20px;
}
.post__content .supervisorOuter .supervisorHeadline span {
  display: inline-block;
  vertical-align: bottom;
  padding: 2px 10px 4px;
  color: #fff;
  background: #000;
}
.post__content .supervisorOuter .supervisor {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
}
.post__content .supervisorOuter .supervisor .supervisor__left {
  width: 100%;
  max-width: 75px;
  margin: 0 15px 0 0;
}
@media screen and (min-width: 768px) {
  .post__content .supervisorOuter .supervisor .supervisor__left {
    max-width: 150px;
    margin: 0 30px 0 0;
  }
}
.post__content .supervisorOuter .supervisor .supervisor__left .supervisorThum img {
  display: inline-block;
  border-radius: 100%;
  height: auto;
}
.post__content .supervisorOuter .supervisor .supervisor__right {
  width: 100%;
}
.post__content .supervisorOuter .supervisor .supervisor__right .supervisorBelonging {
  font-size: 14px;
  color: #999999;
}
.post__content .supervisorOuter .supervisor .supervisor__right .supervisorName {
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 5px;
}
.post__content .supervisorOuter .supervisor .supervisor__right .supervisorText {
  font-size: 12px;
}

/*投稿が何もなかった時の表示用*/
.null__block {
  width: 100%;
  text-align: center;
  padding: 20px;
  background: #fff;
  border-radius: 5px;
  margin: 0 auto 30px;
}

/*左寄せ*/
.alignleft {
  margin-top: 10px;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .alignleft {
    text-align: left;
    margin-right: 20px;
    margin-bottom: 20px;
  }
}

/*右寄せ*/
.alignright {
  margin-top: 10px;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .alignright {
    text-align: right;
    margin-left: 20px;
    margin-bottom: 20px;
  }
}

.aligncenter {
  text-align: center;
}