.sidebar__list {
    width:160px
}
.faq__block {
    margin:0 0 80px
}
.faq__block:last-child {
    margin:0
}
.faq__block__ttl {
    color:#06C735;
    font-size:24px;
    font-weight:700;
    margin:0 0 17px
}
.faq__item {
    border-bottom:1px solid #f4f4f4
}
.faq__item:first-child {
    border-top:1px solid #f4f4f4
}
.faq__item:first-child .faq__item__des {
    display:block
}
.faq__item__ttl {
    position:relative;
    padding:25px 40px 25px 5px;
    -webkit-transition:.4s;
    transition:.4s;
    cursor:pointer
}
.faq__item__ttl::before {
    content:"";
    position:absolute;
    top:26px;
    right:0;
    width:15px;
    height:15px;
    border-radius:50%;
    background:#e3f7f0
}
.faq__item__ttl::after {
    content:"";
    position:absolute;
    top:30px;
    right:5px;
    padding:2px;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
    border-right:1px solid #06C735;
    border-bottom:1px solid #06C735;
    -webkit-transition:.4s;
    transition:.4s
}
.faq__item__ttl.opened {
    padding:25px 40px 20px 5px
}
.faq__item__ttl.opened::after {
    top:32px;
    -webkit-transform:rotate(-135deg);
    transform:rotate(-135deg)
}
.faq__item__ttl span {
    display:block;
    position:relative;
    padding:0 0 0 50px;
    font-weight:700
}
.faq__item__ttl span::before {
    content:"Q";
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    position:absolute;
    top:-5px;
    left:0;
    color:#06C735;
    font-size:18px;
    font-weight:700;
    background:#f2fcf7;
    width:30px;
    height:30px;
    border-radius:50%;
    padding:0 0 3px 3px
}
.faq__item__des {
    display:none
}
.faq__item__txt {
    position:relative;
    padding:6px 0 25px 55px
}
.faq__item__txt::before {
    content:"A";
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    position:absolute;
    top:0;
    left:5px;
    color:#e57225;
    font-size:18px;
    font-weight:700;
    background:#f9eee8;
    width:30px;
    height:30px;
    border-radius:50%;
    padding:0 0 3px 3px
}
@media only screen and (max-width:767px) {
    .sidebar__list {
        width:100%
    }
}


/* case__list */
.case__list {
    margin-bottom:5em;
}

.faq__block__ttl {
    padding: 0.5em 1em;
    background-color: #effcf5;
    margin: 0 0 0.5em;
    color: #1bc028;
    font-weight:bold;
}

.case__list ul  {
    list-style: none!important;
    margin-left: 1em;
}

.case__list ul li {
    padding: 1em 0;
    list-style: none!important;
    border-bottom: 1px dotted #ccc!important;
    line-height: 1.6;
}

.case__list ul li a {
    color: initial;
    text-decoration: underline;
}

    .case__list ul li a:hover,
    .case__list ul li a:focus {
        text-decoration: none;
    }


.case__cat__link {
    text-align: left;
    margin:2em 0 0 1em;
}

.case__cat__link a {
    display:block;
    position:relative;
    color:#06C735;
    font-size:14px;
    font-weight:700;
    line-height:1.2142857143;
    padding:0 0 0 23px
}
.case__cat__link a:before {
    content:"";
    position:absolute;
    top:2px;
    left:0;
    width:15px;
    height:15px;
    border-radius:50%;
    background:#06C735
}
.case__cat__link a:after {
    content:"";
    position:absolute;
    top:7px;
    left:3px;
    padding:2px;
    width:1px;
    height:1px;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
    border-top:1px solid #fff;
    border-right:1px solid #fff
}

.case__list ul li a {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    text-decoration: none;
}

.case__list ul li a .thumb {
    flex-basis: 81px;
    margin-right:19px;
}

.case__list ul li a .txt {
    flex-basis: calc(100% - 100px);
}

.case__list ul li img {
    border-radius: 9px;
}

.case__list ul li a .txt span {
    display:block;
    margin: 0 0 4.5px;
}

.case__list ul li a .txt span.en {
    font-size: 9px;
    color: #999;
    font-size:12px;
}

.case__list ul li a .txt span.ja {
    display: inline-block;
    vertical-align: middle;
}


.faq__block__ttl {
    padding-bottom:0.5em;
    border-bottom:1px solid #f4f4f4
}
.case__list {
    margin-bottom:5em;

}

.case__list ul  {
    margin-left: 1em;
}

.case__list ul li {
    list-style: disc;
    padding: 1em 0;

}

.case__list ul li a {
    color: initial;
    text-decoration: underline;
}

    .case__list ul li a:hover,
    .case__list ul li a:focus {
        text-decoration: none;
    }


/*single*/
.single_case .c-fv__ttl {
    padding-left: 1em;
    padding-right: 1em;
}

.single_case .post p ,
.single_case .wp-block-list li {
    color: #303134;
    text-align: justify;
}

.single_case .post p  {
    line-height: 1.789!important;
    margin-bottom: 1.25em;
    color: #303134;
}

.single_case .post .wp-block-image  {
    margin: 1.25em auto;
    padding: 0;
}

.single_case .post .wp-block-image img {
    margin:  auto;
    text-align: center;
    border-radius:18px;
}

.single_case .wp-block-list {
    margin: 1.25em 0;
    font-size:90%;
    line-height: 1.6;
}

.single_case .wp-block-list li {
    list-style: disc;
    margin-left: 1.25em;
    line-height: 1.6;
}

.single_case h2.wp-block-heading {
    padding: 0.5em 1em;
    background-color: #effcf5;
    border-radius: 4.5px;
    margin: 2em 0 1em;
    color: #1bc028;
    font-weight:bold;
}

.single_case h3.wp-block-heading {
    margin: 2em 0 0.5em ;
    padding: 0 0 0.5em ;
    border-bottom: 1px solid #303134;
    font-weight:bold;
}

/*single__pagenation*/
.single__pagenation {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.single__pagenation li a {
    display:block;
    width:-webkit-fit-content;
    width:-moz-fit-content;
    width:fit-content;
    position:relative;
    color:#06C735;
    font-size:14px;
    font-weight:700;
    line-height:1.3;
    padding:0 40px 2px 0
}

.single__pagenation li a  {
    position:relative;
    z-index: 123;
    border-bottom:1px solid #06C735;
    padding:0 0 2px;
    -webkit-transition:.4s;
    transition:.4s
}
.single__pagenation li a::before {
    content:"";
    position:absolute;
    top:50%;
    right:0;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%);
    width:53px;
    height:53px;
    background:#f2fcf7;
    border-radius:50%
}
.single__pagenation li a::after {
    content:"";
    position:absolute;
    top:45%;
    right:25px;
    -webkit-transform:translateY(-50%) rotate(45deg);
    transform:translateY(-50%) rotate(45deg);
    padding:2px;
    border-top:1px solid #06C735;
    border-right:1px solid #06C735
}

.single__pagenation li.prev a {
    padding:0 0 2px 55px
}
.single__pagenation li.prev a::before {
    top:50%;
    right:auto;
    right:initial;
    left:0
}
.single__pagenation li.prev a::after {
    right:auto;
    right:initial;
    left:25px;
    padding:2px;
    border-top:none;
    border-right:none;
    border-left:1px solid #06C735;
    border-bottom:1px solid #06C735
}

.single__pagenation li.next a {
    padding:0 55px 2px 0 
}


/*sidebar*/
.sidebar__sp {
  display: none!important;
}

.sidebar__archive {
  width: 80%;
}

.sidebar__ttl {
  border: none;
  pointer-events: none;
  padding: 2em 0 1em;
  margin-top: 2em;
  background-image: none;
  border-top: 1px dotted #ccc;
}

.sidebar__ttl:before,
.sidebar__ttl:after {
  display: none;
}


.sidebar__archive ul  {
  padding: 0;
  margin: 0;
}

.sidebar__archive ul li {
  padding: 0.5em 0;
  margin: 0;
  color: #000;
  border-bottom: 1px dotted #ccc;
}

.sidebar__archive ul li a {
  font-size: 85%;
  width: 100%;
  display: block;
  text-decoration: none;
  line-height: 1.456789;
  color: #000;
}


@media only screen and (max-width:767px) {

  .sidebar__sp {
    display: block!important;
  }

  .sidebar__list__sp .sidebar__list {
    display: block;
    width: 100%;
    margin-top: -3.5em;
  }

      .single_case .sidebar__list__sp .sidebar__list {
        margin-top: 3.5em;
      }

  .sidebar__list__sp .sidebar__list li {
    width: 100%;
  }

  .sidebar__sp .sidebar__ttl {
      border-top: none;
    margin-top: 0.5em;
    }

  .sidebar__sp .sidebar__archive {
    padding: 0 1em;
    width: 100%;
    margin-bottom: 2.5em;
    box-sizing: border-box;
  }

}
