/*
Theme Name: Selva Habrecad Theme
Theme URI: https://www.selva-i.co.jp/habrecad
Description: selva habrecad site
Author: SELVA
Author URI: https://www.selva-i.co.jp/
Version: 1.0
*/

/*
 共通
---------------------------------------------*/
a,
a:hover,
a:active,
a:visited,
a:focus{
  color:inherit;
}
body{
  background: #f3f3ee;
}
#content{
  width:1100px;
  margin:40px auto 100px;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
#main{
  width:68%;
}
#aside{
  width:29%;
}
.pc {
  display: block !important;
}
.sp {
  display: none !important;
}
@media  screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
  #content{
 	width:100%;
 	margin:30px auto 60px;
 	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
  }
  #main{
 	width:94%;
 	margin:0 auto;
  }
  #aside{
 	width:94%;
 	margin:20px auto 0;
  }
}

/*
 header
---------------------------------------------*/
.header__top__wrap {
  position: fixed;
  top: 0;
  background: #fff;
  width: 100%;
  z-index: 2;
}
.home .header__top__wrap {
  background: rgba(255,255,255,0.9);
}
.header__top__wrap .header__top {
  align-items: center;
  display: flex;
  margin: auto;
  max-width: 1000px;
  padding: 12px 2%;
}
.header__top__wrap .header__top .logo {
  max-width: 160px;
}
.header__top__wrap .header__top .b1__wrap {
  display: flex;
  margin-left: auto;
}
.header__top__wrap .header__top .b1__wrap .tel {
  font-size: 1.3rem;
}
.header__top__wrap .header__top .b1__wrap .tel img {
  width: 286px;
}
.header__top__wrap .header__top .b1__wrap .h_btn {
  filter: drop-shadow(0 4px 4px rgba(0,0,0,.16));
  margin-left: 1em;
  width: 200px;
}
@media screen and (max-width: 767px){
  .header__top__wrap {
    position: fixed;
    top: 0;
    background: rgba(255,255,255,0.9);
    width: 100%;
    z-index: 2;
  }
  .header__top__wrap .header__top {
    align-items: center;
    display: flex;
    margin: auto;
    max-width: 1000px;
    padding: 12px 2%;
  }
  .header__top__wrap .header__top .logo {
    max-width: 130px;
  }
  .header__top__wrap .header__top .b1__wrap {
    display: flex;
    margin-left: auto;
  }
  .header__top__wrap .header__top .b1__wrap .tel {
    font-size: 1.3rem;
  }
  .header__top__wrap .header__top .b1__wrap .tel img {
    width: 286px;
  }
  .header__top__wrap .header__top .b1__wrap .h_btn {
    filter: drop-shadow(0 4px 4px rgba(0,0,0,.16));
    margin-left: 1em;
    width: 160px;
  }
}

/*
 footer
---------------------------------------------*/
footer {
  background: #00808b;
  color: #fff;
  padding: 2em 5% .2em;
}
footer .b1__wrap {
  align-items: center;
  display: flex;
  margin: auto;
  max-width: 720px;
}
footer .b1__wrap div {
  font-size: 1.8rem;
  font-weight: 700;
  margin-right: 30px;
  width: 160px;
  text-align: center;
}
footer .b1__wrap div img {
  margin-bottom: .5em;
}
footer ul {
  display: flex;
  justify-content: center;
  margin: 2em 0 1em;
}
footer ul li {
  margin: 0 1em;
}
footer ul li a:link,
footer ul li a:visited,
footer ul li a:hover,
footer ul li a:active{
  color:#fff;
}
footer .cpr {
  font-size: 1.2rem;
  text-align: center;
}
@media screen and (max-width: 767px){
  footer .b1__wrap {
    display: block;
    text-align: center;
  }
  footer .b1__wrap div {
    font-size: 1.6rem;
    margin-right: 0;
    margin: 0 auto 1em;
  }
  footer .b1__wrap div img {
    margin-bottom: .5em;
  }
  footer ul {
    margin: 4em 0 2em;
  }
  footer .cpr {
    font-size: 1.0rem;
  }
}

/*
 nav （表示なし）
---------------------------------------------*/
nav{
  position:absolute;
  width: 100%;
}
nav #menu-global{
  padding: 12px 0;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  /*-webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;*/
  max-width: 1000px;
  margin: 0 auto;
}
nav #menu-global li a{
  display:inline-block;
  padding: 0 60px 0 0;
  font-size: 1.5rem;
  font-weight: bold;
  position:relative;
}
nav #menu-global li a:hover{
  color:#f5ae66;
  transition:.3s;
}
nav #menu-global li.current_page_item a:after{
  display:block;
  content:"";
  width:24px;
  height:3px;
  background:#f5ae66;
  position:absolute;
  bottom:-6px;
  left:calc(50% - 42px);
}
.sp_btn{
  display:none;
}
@media  screen and (max-width: 720px) {
  nav #menu-global li.current_page_item a:after {
    left: calc(50% - 12px);
    background:#15b2a5;
  }
  /*　ハンバーガーボタン　*/
  .hamburger {
    display : block;
    position: fixed;
    z-index : 3;
    right : 8px;
    top   : 8px;
    width : 42px;
    height: 42px;
    cursor: pointer;
    text-align: center;
  }
  .hamburger span {
    display : block;
    position: absolute;
    width   : 30px;
    height  : 2px ;
    left    : 6px;
    background : #555;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
  }
  .hamburger span:nth-child(1) {
    top: 10px;
  }
  .hamburger span:nth-child(2) {
    top: 20px;
  }
  .hamburger span:nth-child(3) {
    top: 30px;
  }

  /* ナビ開いてる時のボタン */
  .hamburger.active span:nth-child(1) {
    top : 16px;
    left: 6px;
    background :#fff;
    -webkit-transform: rotate(-45deg);
    -moz-transform   : rotate(-45deg);
    transform        : rotate(-45deg);
  }

  .hamburger.active span:nth-child(2),
  .hamburger.active span:nth-child(3) {
    top: 16px;
    background :#fff;
    -webkit-transform: rotate(45deg);
    -moz-transform   : rotate(45deg);
    transform        : rotate(45deg);
  }

  nav.globalMenuSp{
    position: fixed;
    z-index : 2;
    top  : 0;
    left : 0;
    color: #fff;
    background: rgba(0,0,0,0.8);
    text-align: center;
    width: 100%;
    display:none;
  }

  nav.globalMenuSp #menu-global {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    display:block;
    padding: 80px 0 0;
  }

  nav.globalMenuSp #menu-global li {
    list-style-type: none;
    padding: 0;
    width: 100%;
    transition: .4s all;
    margin-bottom: 40px;
  }

  nav.globalMenuSp #menu-global li a {
    display: block;
    color: #fff;
    padding: 1em 0;
    text-decoration :none;
    width:100%;
    padding:0; 
  }

  /* このクラスを、jQueryで付与・削除する */
  nav.globalMenuSp.active {
    display:block;
    height:100%;
  }
}

@media screen and (max-width: 720px){
  .home header .header__main__wrap {
      /*padding: 52px 4% 16px;*/
  }
}

/*
 pageTitle
---------------------------------------------*/
.listPageTitle{
  background: center center / cover url(assets/img/0000.jpg) no-repeat;
  text-align: center;
  padding: 148px 0 80px;
  font-size: 3.8rem;
}
.pageTitle{
  background: center center / cover url(assets/img/0000.jpg) no-repeat;
  text-align: center;
  padding: 148px 0 80px;
  font-size: 3.8rem;
}
@media  screen and (max-width: 720px) {
	.listPageTitle{
	    padding: 85px 0 30px;
	    font-size: 2.4rem;
	}
	.pageTitle{
    	padding: 85px 0 30px;
	    font-size: 2.4rem;
	}
}

.archiveTitle,
.searchTitle{
  font-size: 2.8rem;
  text-align: left;
  margin-bottom: 30px;
}
.tag .archiveTitle:before{
  content:"#";
}
@media  screen and (max-width: 768px) {
	.archiveTitle,
	.searchTitle{
		font-size: 2.2rem;
	    margin-bottom: 20px;
	}
}

/*
 breadcrumb
---------------------------------------------*/
.breadcrumb{
  /*background:#fff;*/
  padding:1rem 0;
  /*-webkit-box-shadow: 0 2px 3px rgb(0 0 0 / 10%);
  -moz-box-shadow: 0 2px 3px rgba(0,0,0,.1);
  box-shadow: 0 2px 3px rgb(0 0 0 / 10%);*/
}
.breadcrumb ul{
  width:1100px;
  margin:0 auto;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.breadcrumb ul li{
  font-size:1.4rem;
  padding:0 3rem 0 0;
  position: relative;
}
.breadcrumb ul li:last-child{
  padding:0;
}
.breadcrumb ul li:not(:last-child):after{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.3rem;
  margin: auto;
  width: 4px;
  height: 4px;
  border-top: 1px solid #00808b;
  border-right: 1px solid #00808b;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.breadcrumb ul li a{
  font-size:1.4rem;
}
.breadcrumb ul li a:hover{
  color:#00808b;
  transition: .3s;
}
@media  screen and (max-width: 768px) {
	.breadcrumb ul{
	  width: 100%;
	  box-sizing:border-box;
	  padding:0 10px;
	}
  .breadcrumb ul li,
  .breadcrumb ul li a{
    font-size:1.2rem;
  }
}

/*
 blogList
---------------------------------------------*/
.blogList{
 	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.blogList .blog__item{
	width:48%;
	max-width:359px;
	background:#fff;
	overflow: hidden;
	padding-bottom:20px;
	margin-bottom:30px;
	box-shadow: 0 3px 6px rgb(49 49 49 / 5%);
}
.blogList .blog__item a{
	display:block;
}
.blogList .blog__item .blog__thumb{
  overflow: hidden;
}
.blogList .blog__item .blog__thumb img{
  width:100%;
  height:auto;
}
.blogList .blog__item .blog__thumb .noImage{
  width:100%;
  height:210px;
  background:#f8f8f8;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 90px 0;
  box-sizing: border-box;
  color: #aaa;
}
.blogList .blog__item a:hover .blog__thumb img,
.blogList .blog__item a:hover .blog__thumb .noImage{
  -moz-transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  transition: .3s;
}
.blogList .blog__item .blog__info{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 15px 20px 10px;
}
.blogList .blog__item .blog__info .date{
  font-size:1.4rem;
  color: #aaa;
}
.blogList .blog__item .blog__info .cat span{
  display:block;
  font-size: 1.2rem;
  color: #fff;
  padding: 1px 10px;
  border-radius: 2rem;
  display: block;
  background: #42c8db;
  white-space: nowrap;
}
.blogList .blog__item .blog__info .cat span.uncategorized{
	background: #ccc;
}
.blogList .blog__item .blog__info .cat span.category01,
.blogList .blog__item .blog__info .cat span.category06{
	background: #00808b;
}
.blogList .blog__item .blog__info .cat span.category02,
.blogList .blog__item .blog__info .cat span.category07{
	background: #ff9900;
}
.blogList .blog__item .blog__info .cat span.category03,
.blogList .blog__item .blog__info .cat span.category08{
	background: #ffc427;
}
.blogList .blog__item .blog__info .cat span.category04,
.blogList .blog__item .blog__info .cat span.category09{
	background: #66ccff;
}
.blogList .blog__item .blog__info .cat span.category05,
.blogList .blog__item .blog__info .cat span.category10{
	background: #f24444;
}
.blogList .blog__item .blog__title{
	font-size: 1.8rem;
  padding: 0 20px 10px;
  font-weight: bold;
}
.blogList .blog__item a:hover{
  opacity:0.7;
  transition: .3s;
}
.blogList .blog__item .blog__cont{
  font-size: 1.3rem;
  padding: 0 20px;
}
.blogList .blog__item .blog__tags{
	padding: 10px 20px 0;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}
.blogList .blog__item .blog__tags a{
	font-size: 1.3rem;
	font-weight:bold;
	margin-left:10px;
	margin-top: 5px;
	color: #ff4e2d;
}
.blogList .blog__item .blog__tags a:before{
	content:"#";
}
@media  screen and (max-width: 768px) {
	.blogList{
	 	width:100%;
	}
}
@media  screen and (max-width: 767px) {
	.blogList{
	 	display:block;
	}
	.blogList .blog__item{
	 	width:100%;
	}
}

/* 
 article
------------------------------------------*/
.article{
	background: #fff;
	padding: 30px 30px 30px;
	box-shadow: 0 3px 6px rgb(49 49 49 / 5%);
}
.article .article__title{
	font-size:2.6rem;
}
.article .article__info{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	padding: 15px 0 0;
  	margin-bottom: 2rem;
}
.article .article__thumb{
	text-align:center;
}
.article .date{
	color: #aaa;
	text-align: right;
}
.article .article__info .cat span{
	display:block;
	font-size: 1.4rem;
	color: #fff;
	padding: 2px 12px;
	border-radius:2rem;
	display: block;
	background: #42c8db;
	white-space: nowrap;
}
.article .article__info .cat span.uncategorized{
	background: #ccc;
}
.article .article__info .cat span.category01,
.article .article__info .cat span.category06{
	background: #00808b;
}
.article .article__info .cat span.category02,
.article .article__info .cat span.category07{
	background: #ff9900;
}
.article .article__info .cat span.category03,
.article .article__info .cat span.category08{
	background: #ffc427;
}
.article .article__info .cat span.category04,
.article .article__info .cat span.category09{
	background: #66ccff;
}
.article .article__info .cat span.category05,
.article .article__info .cat span.category10{
	background: #f24444;
}
.article .article__info .tags{
  width:100%;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.article .article__info .tags span{
	font-size: 1.4rem;
	font-weight:bold;
	margin-left:10px;
	margin-top: 5px;
	color: #ff4e2d;
}
.article .article__info .tags span:before{
	content:"#";
}
.article .article__cont{
  line-height:1.6;
}
/* SNSシェア */
.at-share-btn-elements{
  margin-top:60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.at-share-btn-elements a{
  width:calc((100% / 3) - 14px);
}
.at-share-btn-elements a .at-label{
  font-size:16px !important;
}
@media  screen and (max-width: 768px) {
  .article {
    padding: 20px 10px;
  }
  .article .article__title{
    font-size:2.0rem;
    text-align:left;
  }
  .article .article__info .cat span{
    font-size: 1.3rem;
    padding: 3px 25px;
  }
  .article .article__info .tags span{
    font-size: 1.3rem;
  }
  .at-resp-share-element .at-share-btn .at-icon-wrapper{
    float:none !important;
    margin: 0 auto;
    display: block;
  }
}

/* 
 article__cont （記事のレイアウトパーツ）
------------------------------------------*/
.article__cont img{
  width:auto;
  height:auto;
  max-width:100%;
  margin: 0.5em 0;
}
.article__cont img.aligncenter{
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.article__cont img.alignright{
  float:right;
  margin: 0.5em 0 0.5em 1em;
}
.article__cont img.alignleft{
  float:left;
  margin: 0.5em 1em 0.5em 0;
}

.article__cont p:after{
  content:"";
  display:block;
  clear:both;
}
.article__cont p + p {
  margin-top: 1.5rem !important;
}

/* 見出し */
.article__cont h1{
  margin: 4.0rem 0 3.0rem;
  padding: 10px 12px;
  border-left: 4px solid #00808b;
  box-sizing: border-box;
  line-height: 1.4;
  font-size: 2.2rem;
  font-weight: bold;
  background: #f3f3ee;
  text-align:left;
}
.article__cont h2 {
  margin: 3.0rem 0 2.0rem;
  position: relative;
  padding: 0 0 4px;
  border-bottom: 4px solid #f3f3ee;
  font-size: 2.1rem;
  font-weight: bold;
  text-align: left;
}
.article__cont h2:before {
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 12%;
  height: 4px;
  content: '';
  background: #00808b;
}
.article__cont h3{
  margin: 3.0rem 0 2.0rem;
  padding: 0 8px ;
  border-left: 4px solid #00808b;
  box-sizing: border-box;
  font-size: 1.9rem;
  font-weight: bold;
  line-height: 1.4;
}
.article__cont h4,
.article__cont h5,
.article__cont h6{
  margin: 2.0rem 0 1.0rem;
}

/* 引用 */
.article__cont blockquote {
  position: relative;
  padding: 35px 20px 10px 20px;
  margin:0 20px;
  box-sizing: border-box;
  font-style: italic;
  background: #f8f8f8;
  color: #555;
  font-size:1.5rem;
}
.article__cont blockquote:before{
  display: inline-block;
  position: absolute;
  top: 13px;
  left: 15px;
  content: "\f10d";
  font-family: 'Font Awesome 5 Free';
  color: #d1d1d1;
  font-size: 28px;
  line-height: 1;
  font-weight: 900;
}
.article__cont blockquote p {
  padding: 0;
  margin: 10px 0;
  line-height: 1.7;
}
.article__cont blockquote cite {
  display: block;
  text-align: right;
  color: #888888;
  font-size: 0.9em;
}

/* twitter */
.article__cont .twitter-tweet{
  margin-right:auto;
  margin-left:auto;
}

/* 関連記事 */
.article__cont a[href^="https://www.selva-i.co.jp/habrecad/"]:not(.no_style,h1 a,h2 a,h3 a,table a,ul a,ol a,.blog-detail__return_link,.inquiry__btn_link){
  display: block;
  width: 100%;
  padding: 38px 38px 10px 20px;
  border: 2px solid #00808b;
  box-sizing: border-box;
  background: #f3f3ee;
  color:#00808b;
  position: relative;
  border-radius: 6px;
  text-decoration: none;
  margin: 2rem 0;
  font-size:1.4rem;
  font-weight:bold;
}
.article__cont .saboxplugin-wrap a[href^="https://www.selva-i.co.jp/habrecad/"]{
  border:none;
  padding:0;
  background:inherit;
  border-radius:0;
  margin:0;
  font-size:inherit;
  font-weight:normal;
}
.article__cont a[href^="https://www.selva-i.co.jp/habrecad/"]:not(.no_style,h1 a,h2 a,h3 a,table a,ul a,ol a,blockquate a):before{
  content: "関連記事";
  display: block;
  font-size: 12px;
  color: rgb(255, 255, 255);
  width: 56px;
  text-align: center;
  position: absolute;
  left: 20px;
  top: 10px;
  background: #222;
  padding: 3px 5px;
  line-height: 1.2;
}
.article__cont a[href^="https://www.selva-i.co.jp/habrecad/"]:not(.no_style,h1 a,h2 a,h3 a,table a,ul a,ol a,blockquate a,.blog-detail__return_link,.inquiry__btn_link):after{
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  right: 18px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #00808b;
  border-right: 2px solid #00808b;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.article__cont .saboxplugin-wrap a[href^="https://www.selva-i.co.jp/habrecad/"]:before,
.article__cont .saboxplugin-wrap a[href^="https://www.selva-i.co.jp/habrecad/"]:after{
  content:none;
}
.article__cont a[href^="https://www.selva-i.co.jp/habrecad/"]:not(.no_style,h1 a,h2 a,h3 a,table a,ul a,ol a,blockquate a,.blog-detail__return_link,.inquiry__btn_link):hover{
  text-decoration: none;
  color:#fff;
  transition: .3s;
  background: #00808b;
}
.article__cont .saboxplugin-wrap a[href^="https://www.selva-i.co.jp/habrecad/"]:hover{
  background:inherit;
}
.article__cont a[href^="https://www.selva-i.co.jp/habrecad/"]:not(.no_style,h1 a,h2 a,h3 a,table a,ul a,ol a,blockquate a,.blog-detail__return_link,.inquiry__btn_link):hover:after{
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
.article__cont .saboxplugin-wrap a[href^="https://www.selva-i.co.jp/habrecad/"]:hover:after{
  border:none;
}

/* 表 */
.article__cont table{
  width:100%;
  font-size: 1.4rem;
  border-collapse: collapse;
  border:1px solid #d8d8d8;
  margin:2rem 0;
}
.article__cont table th{
  background:#00808b;
  color:#fff;
  text-align:center;
  padding:6px 12px;
  border:1px solid #fff;
   font-weight:normal
}
.article__cont table td{
  padding:10px 12px;
  border:1px solid #d8d8d8;
}

/* リスト */
.article__cont ul:not(#toc_container ul),
.article__cont ol:not(#toc_container ol){
  font-size:1.6rem;
  margin:2rem 0;
}
.article__cont ul:not(#toc_container ul) li{
  margin-bottom:8px;
  list-style:disc;
}
.article__cont ul:not(#toc_container ul){
  padding: 0 1rem 0 3rem;
}
/*.article__cont ul:not(#toc_container ul) li:before{
  content:  "";
  width:  10px;
  height:  10px;
  display:  inline-block;
  background-color: #ff9900;
  border-radius:  50%;   
  margin-right: 8px;
}*/
.article__cont ol:not(#toc_container ol){
  counter-reset:list;
  list-style-type:none;
  padding: 0 1rem 0 1.5rem;
}
.article__cont ol:not(#toc_container ol) li{
  position:relative;
  padding: 0 0 0px 18px;
  margin: 8px 0;
  line-height: 20px;
  border: dashed 1px transparent;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
.article__cont ol:not(#toc_container ol) li:before{
  counter-increment: list;
  content: counter(list);
  position: absolute;
  left: -10px;
  width: 20px;
  height: 20px;
  text-align: center;
  line-height:20px;
  font-size:1.2rem;
  background: #ffda71;
  color: #fff;
  border-radius: 50%;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.article__cont ul:not(#toc_container ul).list-style2{
  padding: 0 1rem 0 1rem;
}
.article__cont ul:not(#toc_container ul).list-style2 li{
  list-style:none;
}
.article__cont ul:not(#toc_container ul).list-style2 li:before{
  display: inline-block;
  content: "\f00c";
  font-family: 'Font Awesome 5 Free';
  color: #ff4e2d;
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  background: none;
  width: auto;
  height: auto;
  border-radius: 0;
  margin-right: 5px;
}

/* その他 */
.article__cont .yellowline {
  background: -webkit-gradient(linear,left top,left bottom,color-stop(60%,transparent),color-stop(40%,yellow));
  background: linear-gradient(transparent 60%,yellow 40%);
  color: #000;
  font-weight: 600;
}

/* 目次 */
#toc_container{
  padding: 1em 1em 1em 2em;
  box-sizing: border-box;
  margin:2rem 0;
}
#toc_container{
  padding: 1em 2em;
  box-sizing: border-box;
  border: none !important;
}
#toc_container p.toc_title {
  font-weight: bold;
  text-align: left;
  color: #00808b;
}
#toc_container .toc_list  li{
  margin-bottom:5px;
  font-size:1.4rem;
}
#toc_container .toc_list > li:before{
  content:  "";
  width:  6px;
  height:  6px;
  display:  inline-block;
  background-color: #ffda71;
  border-radius:  50%;   
  margin-right: 8px;
}
#toc_container a {
  color: inherit;
}

@media only screen and (max-width: 767px){
  .article__cont h1{
    margin: 3.0rem 0 1.5rem;
    font-size: 1.8rem;
  }
  .article__cont h2 {
    margin: 3.0rem 0 1.5rem;
    font-size: 1.8rem;
  }
  .article__cont h3{
    margin: 3.0rem 0 1.5rem;
    font-size: 1.8rem;
  }
  .article__cont h4,
  .article__cont h5,
  .article__cont h6{
    margin: 1.0rem 0 1.0rem;
  }
  .article__cont blockquote{
    margin:0;
  }
}

/*
asideList
---------------------------------------------*/
.asideList{
 	background:#fff;
 	padding:15px 20px 20px;
 	margin-bottom:30px;
	box-shadow: 0 3px 6px rgb(49 49 49 / 5%);
}
.asideList h3{
 	font-size: 2.0rem;
 	padding-bottom: 10px;
}
.asideList ul li a{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align: center;
  -ms-flex-align: center;
	align-items: center;
	padding: 10px 12px 10px 0;
  border-bottom: 1px solid #dfdfdf;
  position:relative;
}
.asideList ul li a:after{
	content:"";
	position:absolute;
	bottom:10px;
	right:0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 12px 12px;
	border-color: transparent transparent #ffda71 transparent;
}
.asideList ul li a:hover{
	opacity:0.7rem;
	transition: .3s;
}
.asideList ul li a .thumb{
	margin-right:15px;
	width:100px;
}
.asideList ul li a .noImage{
	width: 100px;
  height: 58px;
  background: #f8f8f8;
  text-align: center;
  font-size: 1.2rem;
  font-weight: bold;
  padding: 20px 0;
  box-sizing: border-box;
  color: #aaa;
  margin-right:15px;
}
.asideList ul li a .ttl{
	font-size:1.3rem;
	line-height:1.4;
	width: calc(100% - 100px);
}

/*
asideList widget
---------------------------------------------*/
.widget{
	list-style:none;
	background:#fff;
 	padding:15px 20px 20px;
 	margin-bottom:20px;
  	box-shadow: 0 3px 6px rgb(49 49 49 / 5%);
}
/* widget_search */
.wp-block-search__label{
 	font-size: 2.0rem;
	padding-bottom: 20px;
	display: block;
	font-weight: bold;
}
.wp-block-search .wp-block-search__input{
	border: 1px solid #cdcdcd;
	border-radius: 3px;
	padding: 0 16px;
}
.wp-block-search .wp-block-search__button.has-icon{
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: none;
	background: #00808b;
	padding: 0;
	margin-left: 5px;
}
.wp-block-search .wp-block-search__button.has-icon:hover{
  background: #333;
  transition:.3s;
}
.wp-block-search .wp-block-search__button.has-icon svg{
	fill: #fff;
}
/* widget_categories */
.widget_categories{
	padding:20px;
}
.wp-block-categories-list li a{
	display: block;
    padding: 12px 10px;
    margin-bottom: 10px;
    font-size: 1.4rem;
    background: #f6f6f6;
}
.wp-block-categories-list li:last-child a{
    margin-bottom: 0;
}
.wp-block-categories-list li a:hover{
    background-color:#009962;
    color:#fff;
}

/* 
 pagination
------------------------------------------*/
.pagination{
  width:100%;
  margin:20px 0 0;
  position: static;
}
.pagination .nav-links{
  display: flex;
  justify-content: center;
}
.pagination .page-numbers{
  display: block;
  border: #fff 1px solid;
  width: 38px;
  height: 38px;
  line-height: 38px;
  margin: 0 3px;
  text-align: center;
  background-color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  color: #00808b;
}
.pagination a.page-numbers:hover,
.pagination .page-numbers.current{
  background: #00808b;
  color: #fff;
}
.pagination .page-numbers.dots{
  background:none;
  border:none;
}
.pagination .page-numbers.next{
  margin-left: 10px;
  position: relative;
}
.pagination .page-numbers.prev{
  margin-right: 10px;
  position: relative;
}
.pagination .page-numbers.prev:after, 
.pagination .page-numbers.next:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 6px;
  height: 6px;
  border-top: 2px solid #00808b;
  border-right: 2px solid #00808b;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pagination .page-numbers.prev:after{
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.pagination .page-numbers.prev:hover:after, 
.pagination .page-numbers.next:hover:after {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
.pager01__text{
 	text-align: center;
 	font-size:1.3rem;
 	margin:10px 0 20px;
}

/*embedはみ出し防止 */
iframe{
  max-width: 100%;
}
@media only screen and (max-width: 767px){
  .wp-embed {
    padding: 15px;
  }
  p.wp-embed-heading {
    margin: 0 0 10px;
    font-weight: 600;
    font-size: 18px;
  }
  .wp-embed-featured-image.square {
    margin-right: 10px;
  }
  .wp-embed-footer {
    margin-top: 10px;
  }
}

/*
資料ダウンロードページ
---------------------------------------------*/
.dlpageWrap{
    padding: 120px 0 100px;
    max-width: 1000px;
    margin: 0 auto;
}
.dlpageWrap h1{
    font-size: 2.8rem;
    text-align: center;
    margin-bottom: 50px;
    color:#00808b;
}
.dlpageWrap--form form{
    max-width: 500px;
    margin: 0 auto;
}
.dlpageWrap--form form .req {
    background: #ff9900;
    color: #fff;
    font-size: 1.2rem;
    margin-right: 8px;
    padding: 2px 8px;
}
.dlpageWrap--form form input.txt{
    background: #fff;
    border: none;
    border-radius: 10px;
    font-size: 1.6rem;
    margin: 5px 0 20px;
    padding: 8px 2% 12px;
    width: 96%;
}
.dlpageWrap--form form input[type="submit"]{
      background: linear-gradient(to right, #00a6b0, #00808b);
    border: none;
    border-radius: 10px;
    color: #fff;
    cursor: pointer;
    display: block;
    font-size: 2.0rem;
    font-weight: 700;
    margin: 40px auto 0;
    padding: 0.6em 30px;
    transition: .4s;
}
.dlpageWrap--form form input[type="submit"]:hover {
    background: #00808b;
}
.dlpageWrap--download{
  text-align:center;
}
.dlpageWrap--download .dl_btn a{
      background: linear-gradient(to right, #00a6b0, #00808b);
    border: none;
    border-radius: 10px;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 2.0rem;
    font-weight: 700;
    margin: 40px auto 0;
    padding: 1.0em 40px;
    transition: .4s;
}
.dlpageWrap--download .dl_btn a:hover {
    background: #00808b;
}
@media screen and (max-width: 720px){
.dlpageWrap h1 {
    font-size: 2.2rem;
    letter-spacing: 0;
    margin-bottom: 30px;
}
.dlpageWrap {
    padding: 80px 4% 30px;
}
.dlpageWrap--form form input[type="submit"]{
    margin: 30px auto 0;
    padding: 0.6em 0;
	width: 100%;
    box-sizing: border-box;
}
.dlpageWrap--download .dl_btn a{
	padding: 0.6em 0;
	width: 100%;
    box-sizing: border-box;
}
}
