@charset "UTF-8";
/*==========================================================================
entry
========================================================================== */
article{
  padding-bottom: 4em;
}
.article_entry {
  text-align: left;
  padding: 0em 0;
}
.article_entry .inner_contents {
  background-color: #FFF;
}
@media screen and (max-width: 900px) {
  .article_entry {
    padding: 0;
  }
  .article_entry .inner_contents {
    padding: 20px;
  }
}

/*==========================================================================
entry
========================================================================== */
.entry_hdr{
  position: relative;
}
.entry_meta {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: flex-start;
  align-items: stretch;
  padding-right: 100px;
  align-items: center;
}
.entry_meta li {
  display: inline-block;
}
.entry_day{
}
.entry_meta .taglist{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
  gap: 5px;
}
.entry_meta .taglist li {
  font-size: 14px;
  color: #fff;
  border-radius: 50px;
  display: block;
  background: var(--mc);
  text-align: center;
  padding: 0px 15px;
  letter-spacing: 0;
}
.entry_meta .taglist li:last-child {
  margin-right: 10px;
}
.entry_meta .taglist li a{
  display: block;
  width: 100%;
  height: 100%;
}
.entry_day li{
  margin-right: 1em;
}
.entry_date,
.entry_update{
  font-size: clamp(12px, 3vw, 14px);
}
@media screen and (max-width: 767px) {
  .entry_meta .taglist{
    width: 100%;
  }
  .entry_meta .taglist li{
    display: inline-block;
  }
  .entry_meta .taglist li a{
    font-size: 12px;
  }
  .entry_day{
    margin-left: 0em;
    padding: 0 0.5em 0 0;
  }
}


/*==========================================================================
entry_ttl
========================================================================== */
.entry_ttl {
  font-weight: bold;
  font-size: clamp(30px, 3vw, 37px);
  line-height: 1.8;
  margin: 1em auto 1em;
}
@media screen and (max-width: 767px) {
  .entry_ttl {
    line-height: 1.6;
  }
}

/*==========================================================================
entry_thum
========================================================================== */
.entry_thum {
  overflow: hidden;
  margin: 0em auto 0;
}
.entry_thum img{
  width: 100%;
}


/*==========================================================================
entry_detail
========================================================================== */
.entry_detail{
  padding: 0 0 2em;
}
.entry_detail p>a:not([class]) {
  color: #0999ff;
  text-decoration: underline;
}

.entry_detail p a:hover {
  text-decoration: none;
}

.entry_detail img.aligncenter {
  margin: auto;
  display: block;
  text-align: center;
  margin: 2em auto 1em;
}
.entry_detail h2 {
  font-size: 24px;
  font-size: clamp(18px, 2.5vw, 24px);
  margin: 3em auto 2em;
  padding: 0.4em 0.7em;
  font-weight: bold;
  color: #FFF;
  line-height: 1.6;
  background-color: var(--mc);
}

.entry_detail h3 {
  font-size: 22px;
  font-size: clamp(18px, 2.5vw, 22px);
  margin: 3em auto 2em;
  padding: 0.4em 0.7em;
  border-bottom: 2px solid  var(--mc);
  color:  var(--black);
  font-weight: bold;
}

.entry_detail h4 {
  font-size: 20px;
  font-size: clamp(16px, 2.5vw, 20px);
  margin: 3em auto 2em;
  padding: 0.4em 0.7em 0.4em;
  border-left: 2px solid  var(--mc);
  color:  var(--black);
  font-weight: bold;
}

.entry_detail p {
  font-size: 18px;
  font-size: clamp(16px, 2.5vw, 18px);
  margin: 1em auto 0.5em;
  padding: 0 1em;
  line-height: 1.8;
}

.entry_detail em {
  background: linear-gradient(transparent 60%, #ffff66 60%);
  font-weight: bold;
  font-style: normal;
}

.entry_detail figure.aligncenter {
  margin: 2em auto 1em;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
}

.entry_detail figure>img {
  max-width: 100%;
  margin: 1em auto 0.5em;
}

figure figcaption.wp-caption-text {
  text-align: center;
  margin-top: 5px;
  font-size: 14px;
}

figure figcaption.wp-caption-text a {
  color: blue;
}

figure figcaption.wp-caption-text a:hover {
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .entry_detail figure {
      width: 100% !important;
  }
}

.entry_detail blockquote {
  background-color:#F8F8F8;
  padding: 1em;
  margin: 3em auto;
  max-width: 100%;
  position: relative;
}
.entry_detail blockquote p{
  font-size: 16px;
  font-size: clamp(14px, 2.5vw, 16px);
}

.entry_detail ul {
  margin: 1em auto 0.5em;
  padding: 0.5em 0.5em 0.5em 2em;
  list-style: none;
  font-size: 16px;
  font-size: clamp(15px, 2.5vw, 16px);
}
.entry_detail ul li{
  position: relative;
}
.entry_detail ul li:before{
  border-radius: 50%;
  width: 5px;
  height: 5px;
  display: block;
  position: absolute;
  left: -14px;
  top: 11px;
  content: "";
  background: var(--mc);
}
.entry_detail ul li ul{
  margin: 0em auto 0.5em -2em;
  padding: 0.5em 0.5em 0.5em 4em;
  list-style: none;
  background-color: #fff;
  z-index: 10;
  position: relative;
}
.entry_detail ol {
  margin: 1em auto 0.5em;
  padding: 0.5em 0.5em 0.5em 2em;
  list-style: decimal;
  font-size: 16px;
  font-size: clamp(15px, 2.5vw, 16px);
}
.entry_detail ol li ol{
  margin: 0em auto 0.5em -2em;
  padding: 0.5em 0.5em 0.5em 4em;
  list-style: decimal;
  background-color: #fff;
  z-index: 10;
  position: relative;
}
.entry_detail blockquote ul li ul,
.entry_detail blockquote ol li ol{
  background-color: #F8F8F8;
}
.entry_detail table ul li ul,
.entry_detail table ol li ol{
  background-color: #bfdbb0;
}

.entry_detail blockquote ul,
.entry_detail table ul,
.entry_detail blockquote ol,
.entry_detail table ol {
  margin-top: 0px;
}

.entry_detail table {
  margin: 1em auto 0.5em;
  width: 100%;
  text-align: center;
  border-collapse: collapse;
  border-spacing: 0;
}

.entry_detail table p:first-child,
.entry_detail table ul:first-child,
.entry_detail table ol:first-child {
  margin-top: 0px;
}

.entry_detail table th {
  padding: 0.5em;
  background: var(--mc);
  color: #FFF;
  border: solid 1px #f7fcff;
}

.entry_detail table td {
  padding: 0.5em;
  background-color: #f7fcff;
  border: solid 1px var(--mc);
}


/*==========================================================================
toc_container
========================================================================== */

#toc_container li,#toc_container ul {
  margin: 0;
  padding: 0
}

#toc_container.no_bullets li,#toc_container.no_bullets ul,#toc_container.no_bullets ul li,.toc_widget_list.no_bullets,.toc_widget_list.no_bullets li {
  background: 0 0;
  list-style-type: none;
  list-style: none
}

#toc_container.have_bullets li {
  padding-left: 12px
}

#toc_container ul ul {
  margin-left: 1.5em
}

#toc_container {
  background: #f9f9f9;
  border: 1px solid #aaa;
  padding: 10px;
  margin-bottom: 1em;
  width: auto;
  display: table;
  font-size: 95%
}

#toc_container.toc_light_blue {
  background: #edf6ff
}

#toc_container.toc_white {
  background: #fff
}

#toc_container.toc_black {
  background: #000
}

#toc_container.toc_transparent {
  background: none transparent
}

#toc_container p.toc_title {
  text-align: center;
  font-weight: 700;
  margin: 0;
  padding: 0
}

#toc_container.toc_black p.toc_title {
  color: #aaa
}

#toc_container span.toc_toggle {
  font-weight: 400;
  font-size: 90%
}

#toc_container p.toc_title+ul.toc_list {
  margin-top: 1em
}

.toc_wrap_left {
  float: left;
  margin-right: 10px
}

.toc_wrap_right {
  float: right;
  margin-left: 10px
}

#toc_container a {
  text-decoration: none;
  text-shadow: none
}

#toc_container a:hover {
  text-decoration: underline
}

.toc_sitemap_posts_letter {
  font-size: 1.5em;
  font-style: italic
}

#toc_anc{
      display: inline-block;
      margin-top: -100px;
      padding-top: 100px;
  }
  .entry_detail #toc_container {
    padding: 1.5em 1.5em 0;
    background: #fff;
    border: 1px dotted #999;
    color: #000;
    margin: 1.5em auto;
    position: relative;
    z-index: 9;
    width: 100%;
  }
  .entry_detail #toc_container .toc_title {
    text-align: left;
    color: #000;
    border-bottom: 1px dotted #999;
    margin-bottom: 1em;
    font-size: 16px;
    font-weight: bold;
  }
  .entry_detail #toc_container .toc_title::before {
    content: "";
    background: url("../img/common/icon_toc.svg")no-repeat top left;
    width: 1.2em;
    height: 1.2em;
    display: inline-block;
    background-size: contain;
    vertical-align: middle;
    margin-right: 0.4em;
  }
  .entry_detail #toc_container .toc_list {
    list-style-type: none !important;
    counter-reset: li;
    margin: auto;
    word-wrap: break-word;
  }
  .entry_detail #toc_container .toc_list > li {
    counter-increment: li2;
    position: relative;
    margin-bottom: 1em;
    line-height: 1.5;
    font-size: 16px;
    text-indent: 0em;
    padding-left: 1.44em;
  }
  .entry_detail #toc_container ul li:before {
    display: none;
  }
  .entry_detail #toc_container .toc_list > li a, .entry_detail #toc_container .toc_list > li ul li a {
    color: #000;
    text-decoration: none;
  }
  .entry_detail #toc_container .toc_list > li a:hover, .entry_detail #toc_container .toc_list > li ul li a:hover {
    text-decoration: underline !important;
  }
  .entry_detail #toc_container .toc_list > li:after {
    counter-increment: li;
    content: "・""";
    position: absolute;
    left: 0px;
    top: 3px;
    bottom: 0;
    margin: auto;
    background: none;
    font-size: 14px;
    font-family: "Hind";
    font-weight: 700;
    color: #000;
  }
  .entry_detail #toc_container .toc_list > li ul {
    counter-reset: li3;
    margin-top: 0.2em;
    padding-left: 2em;
    margin-bottom: 1em;
  }
  .entry_detail #toc_container .toc_list > li > ul > li {
    position: relative;
    margin-bottom: 0em;
    line-height: 1.8;
    font-size: 14px;
    text-indent: 0em;
    padding-left: 0em;
    color: #767676;
    counter-increment: li3;
  }
  .entry_detail #toc_container .toc_list > li > ul li > ul {
    counter-reset: li4;
    padding-left: 2.3em;
    display: none;
  }
  .entry_detail #toc_container .toc_list > li > ul li:after {
    content: "・""";
    position: absolute;
    left: -1.3em;
    top: -3px;
    background: none;
    font-family: "Hind";
    font-size: 1.3em;
    color: #000;
  }
  .entry_detail #toc_container .toc_list > li > ul li > ul li {
    text-indent: 0em;
    padding-left: 1.5em;
    margin-bottom: 0;
  }
  .entry_detail #toc_container .toc_list > li > ul li > ul li:after {
    counter-increment: li4;
    content: ""counter(li2) "-"counter(li3) "-"counter(li4);
    position: absolute;
    left: -1.6em;
    top: -3px;
    background: none;
    font-family: "Hind";
    font-size: 1.3em;
    color: #000;
  }


/*==========================================================================
editor
========================================================================== */
.sns_share {
  margin: 1em auto 3em;
}
.sns_share ul{
  padding: 1em 0em;
  margin: 0 auto;
  max-width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  gap: 1%;
}
.sns_share li {
  width: 32.6%;
}
.sns_share li a{
  width: 100%;
  display: block;
  border: 1px solid var(--mc);
  padding: 10px 20px;
  font-size: 14px;
  text-align: center;
  transition: all .4s ease;
}
.sns_share li a:hover{
  background-color:var(--mc);
  color: #FFF;
}
.sns_share li a img{
  width: 19px;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
  position: relative;
  top: -1px;
}
@media screen and (max-width: 767px) {
  .sns_share li {
    width: 100%;
    margin-bottom: 5px;
  }
}

/*==========================================================================
pagenav
========================================================================== */
.pagenav{
  margin: 2em auto;
  text-align: center;
}
.pagenav .tolist a{
  width: 100%;
  max-width: 240px;
  margin: auto;
  display: block;
  border: 1px solid var(--mc);
  padding: 10px 20px;
  font-size: 14px;
  text-align: center;
  transition: all .4s ease;
}
.pagenav .tolist a:hover{
  background-color:var(--mc);
  color: #FFF;
}