.titleContainer {
  background-image: url(../images/action/bg_title.jpg); }
  @media screen and (max-width: 769px) {
    .titleContainer {
      background-image: url(../images/action/sp/bg_title.jpg); } }

article {
  max-width: 900px;
  margin: 0 auto;
  background: url(../images/common/dot_line.svg) bottom left repeat-x;
  background-size: 6px auto;
  padding-bottom: 30px; }
  article h1 {
    color: #3E3735;
    font-size: 26px;
    text-align: left;
    line-height: 1.7692307692;
    background: url(../images/common/dot_line.svg) bottom left repeat-x;
    background-size: 6px auto;
    padding-bottom: 40px;
    margin-bottom: 20px; }
    @media screen and (max-width: 769px) {
      article h1 {
        font-size: 4.4444444444vw; } }
  article .infoBox {
    font-size: 12px;
    float: left;
    padding-top: 10px; }
    @media screen and (max-width: 769px) {
      article .infoBox {
        font-size: 3.3333333333vw; } }
    article .infoBox .date {
      display: inline-block;
      border-right: 1px solid #3E3735;
      /*font-family: 'Indulta SemiSerif', sans-serif;*/
      font-family: 'Secular One', sans-serif;
      padding-right: 2em;
      margin-right: 2em;
      letter-spacing: 0.1em; }
    article .infoBox .category {
      color: #298948;
      display: inline-block;
      font-weight: bold; }
      article .infoBox .category a {
        color: #298948; }
        article .infoBox .category a:hover {
          text-decoration: underline; }
    article .infoBox .tags {
      color: #525252;
      padding-top: 10px; }
      article .infoBox .tags span::after {
        content: ","; }
      article .infoBox .tags span:last-of-type::after {
        content: ""; }
  article .snsBox {
    float: right; }
    article .snsBox ul li {
      display: inline-block;
      margin-left: 10px; }
      article .snsBox ul li img {
        width: 32px;
        height: auto; }
  article .content {
    clear: both;
    padding-top: 30px;
    line-height: 2; }
  @media screen and (max-width: 769px) {
    article h1 {
      padding-bottom: 5.5555555556vw;
      margin-bottom: 5.5555555556vw; }
    article .infoBox {
      float: none;
      padding-top: 0; }
    article .snsBox {
      float: none;
      margin-top: 4.1666666667vw; }
      article .snsBox ul li {
        margin-left: 0;
        margin-right: 4.1666666667vw; }
        article .snsBox ul li img {
          width: 8.8888888889vw; } }

.blogContainer {
  padding-top: 0; }
  .blogContainer h2 {
    line-height: 1.5; }
    @media screen and (max-width: 769px) {
      .blogContainer h2 {
        font-size: 3.8888888889vw; } }

.bgGrey .blogContainer {
  padding-top: 60px; }

.newsBox div {
  margin: 0 auto;
  width: 769px;
  max-width: 100%; }

.newsBox h2 {
  display: inline-block;
  line-height: 40px; }

.newsBox a.btn {
  display: inline-block;
  width: 250px;
  margin-left: 30px;
  color: #fff;
  background: #298948; }
  .newsBox a.btn:hover {
    color: #298948;
    background: #fff; }

@media screen and (max-width: 850px) {
  .newsBox h2 {
    display: block;
    margin: 0 auto 1em;
    text-align: center; }
  .newsBox a.btn {
    display: block;
    margin-left: 0;
    margin: 0 auto; } }

@media screen and (max-width: 769px) {
  .newsBox h2 {
    font-size: 3.8888888889vw; } }

.linksContainer.pt60 {
  padding-top: 60px; }
  @media screen and (max-width: 769px) {
    .linksContainer.pt60 {
      padding-top: 0; } }

.linksContainer .small.wide {
  max-width: 1200px;
  margin: 0 auto; }
  .linksContainer .small.wide strong {
    letter-spacing: 0.1em; }
  .linksContainer .small.wide li {
    background-image: url(../images/common/link/link_w02.jpg); }
    .linksContainer .small.wide li p {
      display: none; }
  @media screen and (max-width: 769px) {
    .linksContainer .small.wide li {
      height: 41.6666666667vw;
      width: 100vw;
      background-image: url(../images/common/link/sp/link_l02.jpg); }
      .linksContainer .small.wide li a {
        position: relative; }
        .linksContainer .small.wide li a p {
          display: block; }
        .linksContainer .small.wide li a strong {
          font-size: 4.4444444444vw;
          margin-bottom: 0.5em; }
          .linksContainer .small.wide li a strong::after {
            display: none; }
        .linksContainer .small.wide li a::before {
          content: "";
          background: rgba(41, 137, 72, 0.7);
          height: 8.8888888889vw;
          right: 0;
          position: absolute;
          top: calc(50% - 1.2em);
          width: 8.8888888889vw; }
        .linksContainer .small.wide li a::after {
          content: "";
          background: url(../images/common/arw.svg) center center no-repeat;
          display: block;
          height: 3.8888888889vw;
          right: .7em;
          position: absolute;
          top: calc(50% - 0.5em);
          width: 3.8888888889vw; } }

@media screen and (max-width: 769px) {
  .newsContainer h2 {
    font-size: 3.8888888889vw; } }

.newsContainer dl {
  border: none; }


.innerContainer.border + .border {
    padding-top: 0;
}

.innerContainer.border > div {
    border: 1px solid #298948;
    padding: 30px;
}

.innerContainer.border > div .h3 + .btnBox {
    margin-top: 20px;
}

.innerContainer.border > div p {
    color: #525252;
    width: 500px;
    text-align: center;
    margin: 20px auto;
    font-size: 14px;
}

.innerContainer.border > div .btnBox {
    margin: 0 auto;
    width: 250px;
}

.innerContainer.border > div .btnBox .btn {
    position: relative;
    background: #298948;
    color: #fff;
}

.innerContainer.border > div .btnBox .btn:hover {
    background: #fff;
    color: #298948;
}

.innerContainer.border > div .btnBox .btn[target="_blank"]:after {
    content: "";
    position: absolute;
    display: block;
    width: 1.5em;
    height: 1.4em;
    right: 1em;
    top: .5em;
    background: url(../images/common/link/ico_link_f.svg) no-repeat;
    background-size: contain;
}

.innerContainer.border > div .btnBox .btn[target="_blank"]:hover:after {
    background-image: url(../images/common/link/ico_link_g.svg);
}

@media screen and (max-width: 769px) {
    .innerContainer.border > div p {
        font-size: 3.8888888889vw;
    }
}

@media screen and (max-width: 769px) {
    .innerContainer.border > div {
        padding: 8.3333333333vw;
    }

    .innerContainer.border > div .h3 {
        font-size: 5vw;
    }

    .innerContainer.border > div p {
        width: auto;
        line-height: 1.8571428571;
    }

    .innerContainer.border > div .btnBox {
        width: 61.1111111111vw;
    }

    .innerContainer.border > div .btnBox .btn {
        font-size: 3.6111111111vw;
    }
}