*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 62.5%;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1; }

h1, h2, h3, h4, h5, h6, p, dl, dd, ol, ul {
  margin: 0;
  padding: 0; }

body {
  font-size: 1em;
  font-family: sans-serif; }

img {
  max-width: 100%;
  height: auto; }

.titles {
  text-align: center; }

.content {
  width: 100%;
  margin: auto; }
  @media screen and (max-width: 48em) {
    .content {
      width: auto;
      margin-left: 3.33%;
      margin-right: 3.33%; } }

.imgsp,
.brsp {
  display: none; }

@media screen and (max-width: 48em) {
  .imgpc,
  .brpc {
    display: none; }
  .imgsp,
  .brsp {
    display: inline; } }

.accordion__title {
  line-height: 1;
  cursor: pointer;
  -webkit-transition: opacity .4s;
  -o-transition: opacity .4s;
  transition: opacity .4s;
  position: relative; }
  @media screen and (max-width: 48em) {
    .accordion__title {
      font-size: 1.8rem; } }
  .accordion__title:hover {
    opacity: .7; }
    .accordion__title:hover::after {
      -webkit-transform: rotate(-135deg) translate(-20%, -20%);
      -ms-transform: rotate(-135deg) translate(-20%, -20%);
      transform: rotate(-135deg) translate(-20%, -20%); }
  .accordion__title::after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    position: absolute;
    right: 1.5rem;
    line-height: 1;
    width: 15px;
    height: 15px;
    border-right: solid 3px #fff;
    border-bottom: solid 3px #fff;
    -webkit-transform: rotate(-135deg) translate(-20%, -20%);
    -ms-transform: rotate(-135deg) translate(-20%, -20%);
    transform: rotate(-135deg) translate(-20%, -20%);
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    top: 0;
    bottom: 0;
    margin: auto 0; }
  .accordion__title--close::after {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); }
  .accordion__title--close:hover {
    opacity: .7; }
    .accordion__title--close:hover::after {
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg); }

.header {
  position: relative;
  z-index: 3;
  background: #fff;
  border-bottom: solid 1px #ececec; }
  .header__logo {
    max-width: 50%;
    line-height: 2;
    font-size: 10px;
    padding: 10px; }
    .header__logo__img {
      vertical-align: bottom; }
  .header .drawer-hamburger {
    width: 3rem; }

.navs {
  padding-top: 60px;
  background: #80C34B; }
  .navs__item:not(:last-child) {
    border-bottom: solid 1px #6AA639; }
  .navs__ancher {
    color: #fff;
    display: block;
    padding: 1.5rem 5%;
    font-size: 1.6rem; }
    .navs__ancher:hover {
      text-decoration: none; }

.contacts {
  text-align: center;
  border: 1px solid #d0cfcf;
  margin: 2rem 5.25%;
  padding: 1.5rem 3.25%;
  border-radius: 3px;
  font-size: 1.25rem;
  line-height: 1.5; }
  .contacts__ttl {
    color: #6AA639;
    font-size: 1.6rem;
    margin: 0 0 1.3rem; }
  .contacts__tel {
    line-height: 1;
    font-size: 10px;
    margin: 0 0 .725rem; }
  .contacts__caption {
    font-size: .88rem;
    margin-top: .5rem; }
  .contacts__chat {
    margin: 1rem 0; }
  .contacts__btn {
    font-size: 1.8rem;
    margin: 1rem 0; }
    .contacts__btn a {
      width: 100%; }

.btns {
  margin: 1rem 0;
  font-size: 1.4rem; }
  .btns--c {
    text-align: center; }
  .btns__ancher {
    display: inline-block;
    background: #80C34B;
    text-decoration: none;
    color: #fff;
    padding: 1.5rem 3.25%;
    min-width: 50%;
    border-radius: 4px; }
    .btns__ancher:hover {
      text-decoration: none; }

.ttls {
  font-size: 2rem;
  margin: 0 5.25% 2rem;
  color: #80C34B;
  padding: 1rem 0;
  border-bottom: 4px solid #80C34B; }

.mv {
  margin-bottom: 2rem; }

.blogs {
  text-align: center;
  margin: 3rem 0; }
  .blogs__ttl {
    font-size: 2rem;
    color: #89c648;
    margin-bottom: 1rem; }
  .blogs__read {
    font-size: 1.3rem;
    margin: 1.5rem 0; }
  .blogs__btns {
    font-size: 1.8rem; }

.promise {
  margin: 4rem 5.25%; }
  .promise__ttl {
    text-align: center;
    background: #89c648;
    color: #fff;
    font-size: 1.8rem;
    font-weight: normal;
    padding: 1.5rem 3.25%; }
  .promise__list {
    border: solid 4px #89c648;
    border-top: none;
    padding: 1.5rem 7.25%;
    margin: 0;
    font-size: 1.4rem;
    line-height: 1.4;
    list-style-type: none; }
  .promise__item {
    position: relative;
    padding: 0 0 0 2.2rem;
    margin: .5rem 0; }
    .promise__item::before {
      content: '\f061';
      font-family: FontAwesome;
      color: #80C34B;
      font-size: 2rem;
      position: absolute;
      left: 0;
      top: -.5rem; }

.about__sttl {
  margin: 0 5.25% 2rem;
  padding: 1.5rem 3.5rem 1.5rem 2rem;
  background: #80C34B;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.4; }

.about__read {
  margin: 0 5.25% 3rem; }
  .about__read__item {
    font-size: 1.4rem;
    line-height: 1.4;
    margin: 1.5rem 0; }

.about__box {
  font-size: 1.3rem;
  line-height: 1.6;
  margin: 0 5.25% 3rem;
  padding: 0 3.25%; }

.about__txt {
  margin: 1rem 0; }

.about__bititem {
  border: 3px solid #89c648;
  padding: 1.5rem;
  margin: 1.5rem 0; }
  .about__bititem__ttl {
    color: #43a513;
    font-size: 1.4rem;
    margin: 0 0 1rem; }

.about__citing {
  margin: 0 5.25% 4rem; }
  .about__citing__ttl {
    font-size: 1.5rem;
    color: #43a513;
    margin: 3rem 0 2rem; }
    .about__citing__ttl::after {
      top: 1.4rem;
      border-right-color: #89c648;
      border-bottom-color: #89c648; }
    .about__citing__ttl__inner {
      display: block;
      position: relative;
      padding: 1.5rem 0 0; }
      .about__citing__ttl__inner::before, .about__citing__ttl__inner::after {
        content: '';
        display: block;
        height: .25rem;
        position: absolute;
        top: 0; }
      .about__citing__ttl__inner::before {
        width: 45%;
        background: #43a513;
        left: 0; }
      .about__citing__ttl__inner::after {
        width: 55%;
        background: #89c648;
        right: 0; }
  .about__citing__box {
    font-size: 1.3rem;
    line-height: 1.5; }

.case {
  margin-top: 3rem; }
  .case__read {
    margin: 0 5.25% 3rem; }
    .case__read__item {
      font-size: 1.4rem;
      line-height: 1.4;
      margin: 1.5rem 0; }
  .case__sttl {
    margin: 0 5.25% 2rem;
    padding: 1.5rem 3.5rem 1.5rem 2rem;
    background: #80C34B;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.4; }
  .case__box {
    font-size: 1.3rem;
    line-height: 1.6;
    margin: 0 5.25% 3rem;
    padding: 0; }
  .case__txt {
    margin: 1rem 0; }
  .case__item {
    border: 3px solid #B6DB9B;
    width: 88%;
    border-radius: 6px;
    margin: 2rem 0 2rem;
    padding: 1.2rem 5.25%;
    position: relative; }
    .case__item:nth-child(even) {
      margin-left: auto; }
      .case__item:nth-child(even)::before {
        -webkit-transform: skew(134deg, 11deg) rotateX(-360deg) rotateY(-560deg);
        transform: skew(134deg, 11deg) rotateX(-360deg) rotateY(-560deg);
        left: -12px; }
      .case__item:nth-child(even)::after {
        left: -5rem;
        -webkit-transform: rotate(-40deg);
        -ms-transform: rotate(-40deg);
        transform: rotate(-40deg); }
    .case__item:not(:nth-child(even))::before {
      -webkit-transform: skew(-134deg, -11deg);
      -ms-transform: skew(-134deg, -11deg);
      transform: skew(-134deg, -11deg);
      right: -13px; }
    .case__item:not(:nth-child(even))::after {
      right: -5rem;
      -webkit-transform: rotateY(-180deg) rotate(-40deg);
      transform: rotateY(-180deg) rotate(-40deg); }
    .case__item::before {
      content: '';
      display: block;
      position: absolute;
      width: 20px;
      height: 20px;
      bottom: 10px;
      background: #ffffff;
      border-right: 3px solid #B6DB9B;
      border-bottom: 3px solid #B6DB9B; }
    .case__item::after {
      content: '\f2a0';
      font-family: FontAwesome;
      display: block;
      position: absolute;
      font-size: 4rem;
      line-height: 1;
      bottom: -.5rem;
      color: #80C34B; }
    .case__item__ttl {
      font-size: 1.5rem;
      line-height: 1.2;
      color: #43a513;
      margin: 0 0 .725rem; }
  .case__attention {
    border: 5px solid #89c648;
    margin: 3rem 0;
    padding: 1.5rem 5.25%; }
    .case__attention__ttl {
      color: #43a513;
      font-size: 1.4rem;
      margin: 0 0 1rem; }

.bullying__sttl {
  margin: 0 5.25% 2rem;
  padding: 1.5rem 3.5rem 1.5rem 2rem;
  background: #80C34B;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.4; }

.bullying__box {
  font-size: 1.3rem;
  line-height: 1.6;
  margin: 0 5.25% 3rem;
  padding: 0 3.25%; }

.bullying__txt {
  margin: 1rem 0; }

.bullying__stopNavi {
  border: 1px solid #bee2a1;
  padding: 2.5rem 5.25% 1.5rem;
  margin: 4rem 0 3rem;
  position: relative; }
  .bullying__stopNavi__catch {
    position: absolute;
    font-size: .88rem;
    background: #80C34B;
    color: #fff;
    padding: 1rem 5.25%;
    border-radius: 5px;
    left: 3.25%;
    top: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    text-align: center; }
    .bullying__stopNavi__catch::after {
      content: '';
      display: inline-block;
      width: 0;
      height: 0;
      border-top: 6px solid transparent;
      border-left: 6px solid transparent;
      border-right: 6px solid #80C34B;
      border-bottom: 6px solid #80C34B;
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto;
      -webkit-transform: rotate(45deg) translate(25%, 25%);
      -ms-transform: rotate(45deg) translate(25%, 25%);
      transform: rotate(45deg) translate(25%, 25%); }
  .bullying__stopNavi__ttl {
    text-align: center;
    color: #43a513;
    font-size: 2rem;
    line-height: 1.4;
    margin: 0 0 .725rem; }
  .bullying__stopNavi__caption {
    font-size: 1rem;
    display: block;
    font-weight: normal; }
  .bullying__stopNavi__read {
    font-size: 1.1rem;
    margin: 1rem 0; }
  .bullying__stopNavi__btn {
    border-radius: 9%/50%;
    border: 1px solid #80C34B;
    text-align: center;
    overflow: hidden;
    font-size: 1.4rem; }
  .bullying__stopNavi__ancher {
    display: block;
    text-decoration: none;
    color: #fff;
    background: #62b03b;
    border: 2px solid #fff;
    border-radius: 9%/50%;
    padding: 1rem 1rem;
    position: relative; }
    .bullying__stopNavi__ancher::after {
      content: '\f138';
      display: inline-block;
      font-family: FontAwesome;
      margin: 0 0 0 .5rem; }

.footer {
  background: #62b03b;
  text-align: center;
  color: #fff;
  padding: 1.5rem 0;
  line-height: 1.4; }
