@charset "UTF-8";

/* 関数定義 =============================================================================== */
:root {
  --base-color: #fff;
  --text-color: #000;
  --main-color: #096944;
  --accent-color: #FFF043;
}

/* jQuery =============================================================================== */
.fadeInTop {
  transform: translate3d(0, -10px, 0);
  transition: 1.0s;
  opacity: 0;
}
.fadeInTop.animated {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

/* PC
=============================================================================== */
main {
  color: var(--text-color);
  background: var(--base-color);
  font-size: 16px;
  /* フォント指定
  font-family: ; */
  font-style: normal;
  line-height: 1.6;
  letter-spacing: 0.075em;
}
img {
  max-width: 100%;
}
.pc-only {
  display: block;
}
.sp-only {
  display: none;
}

/* メインビジュアル_mv */
.mv {
  display: block;
  width: 1040px;
  margin: 0 auto 30px;
}

/* h2セクションタイトル_content-title */
.content-title {
  margin-top: 15px;
  margin-bottom: 15px;
  font-size: 24px;
  font-weight: bold;
  padding-bottom: 10px;
  border-bottom: solid 3px #b7ebb2;
  position: relative;
}
.content-title::after {
  position: absolute;
  content: "";
  display: block;
  border-bottom: solid 3px #48b43e;
  bottom: -3px;
  width: 20%;
}

/* h3見出し_heading */
.heading {
  display: flex;
  align-items: center;
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: bold;
}
.heading::before {
  content: "";
  display: block;
  width: 8px;
  height: 30px;
  background-color: #009B0F;
  margin-right: 10px;
}

/* テキストマーカー */
.text-marker {
  background: linear-gradient(transparent 60%, #a9f067 60%);
}

/* 導入_intro */
.intro {
  width: 1040px;
  margin: 0 auto 45px;
}
.lead {
  margin-bottom: 60px;
}
.lead-text {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  line-height: 2.0;
}

/* キャンペーン詳細 */
.campaign {
  width: 1040px;
  margin: 0 auto 45px;
}
.content-text {
  display: block;
  margin-bottom: 30px;
}
.img_point-table {
  display: block;
  width: 100%;
  margin-bottom: 30px;
}

/* アコーディオンパネル */
.accordion-list{
  list-style: none;
  width: 100%;
  margin: 0 auto;
}
.accordion{
  margin: 15px 0;
}
.accordion-inner {
  border: 1px solid #ccc;
  border-radius: 4px;
}
.accordion-title {
  position: relative;
  cursor: pointer;
  padding: 2% 2% 2% 50px;
  transition: all .5s ease;
}
.accordion-title::before,
.accordion-title::after {
  position: absolute;
  content:'';
  width: 15px;
  height: 2px;
  background-color: var(--main-color);
}
.accordion-title::before {
  top: 50%;
  left: 15px;
  transform: rotate(0deg);
}
.accordion-title::after {
  top: 50%;
  left: 15px;
  transform: rotate(90deg);
}
.accordion-title.close::before {
  transform: rotate(45deg);
}
.accordion-title.close::after {
  transform: rotate(-45deg);
}
.accordion-box {
  display: none;
  background: #eef7ee;
	margin: 0 3% 3% 3%;
  padding: 3%;
  border-radius: 4px;
}

/* リンクエリア */
.link-area {
  width: 1040px;
  margin: 0 auto 60px;
}

/* リンクボタン_link-btn */
.link-btn_01 a {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 15px;
  padding: 30px 15px;
  width: 400px;
  height: 50px;
  background-color: var(--main-color);
  color: var(--base-color) !important;
  border-radius: 50px;
  font-size: 16px;
  text-decoration: none !important;
}
.link-btn_icon {
  width: 30px;
  margin-right: 10px;
}

/* リンクバナー */
.link-banner {
  margin: 30px auto;
}

/* トップページへ_return-btn */
.return-btn {
  display: block;
  width: 850px;
  height: 60px;
  margin: 150px auto 0;
}
.return-btn a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 30px;
  padding: 15px;
  background: #009B0F;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  color: #fff;
}
.return-btn a::before {
  position: absolute;
  content: '';
  display: block;
  width: 15px;
  height: 15px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
  top: 0;
  bottom: 0;
  margin: auto;
  right: 34px;
  transition-duration: 0.3s;
  z-index: 1;
}

/* SP
=============================================================================== */
@media screen and (max-width: 767px) {
  main {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  .pc-only {
    display: none;
  }
  .sp-only {
    display: block;
  }

  /* メインビジュアル_mv */
  .mv {
    width: 100%;
    margin: 0 auto 20px;
  }

  /* h2セクションタイトル_content-title */
  .content-title {
    font-size: 20px;
    margin-bottom: 15px;
  }
 
  /* h3見出し_heading */
  .heading {
    width: 100%;
    font-size: 17px;
    margin-top: 15px;
    margin-bottom: 5px;
  }
  .heading::before {
    content: "";
    display: block;
    width: 8px;
    height: 25px;
    margin-right: 7px;
  }

  /* 導入_intro */
  .intro {
    width: 100%;
    margin: 0 auto 30px;
    padding: 0 15px;
  }
  .lead {
    margin-bottom: 45px;
  }
  .lead-text {
    font-size: 16px;
    line-height: 1.85;
  }

  /* キャンペーン詳細 */
  .campaign {
    width: 100%;
    margin: 0 auto 30px;
    padding: 0 15px;
  }
  .content-text {
    display: block;
    margin-bottom: 20px;
  }
  .img_point-table {
    display: block;
    width: 100%;
    margin-bottom: 20px;
  }

  /* アコーディオンパネル */
  .accordion{
    margin: 10px 0;
  }
  .accordion-inner {
    border: 1px solid #ccc;
    border-radius: 3px;
  }
  .accordion-title {
    padding: 5% 2% 5% 40px;
  }
  .accordion-title::before,
  .accordion-title::after {
    width: 13px;
  }
  .accordion-title::before {
    left: 13px;
  }
  .accordion-title::after {
    left: 13px;
  }
  .accordion-box {
    margin: 0 3% 5% 3%;
    padding: 5% 3%;
    border-radius: 3px;
  }

  /* リンクエリア */
  .link-area {
    width: 100%;
    margin: 0 auto 30px;
    padding: 0 15px;
  }

  /* リンクボタン_link-btn */
  .link-btn_01 a {
    margin: 0 auto 10px;
    padding: 25px 15px;
    width: 300px;
    height: 40px;
    font-size: 14px;
  }
  .link-btn_icon {
    width: 25px;
    margin-right: 10px;
  }

  /* RETURN-BTN */
  .return-btn {
  width: 100%;
  height: 45px;
  margin: 60px auto 0;
  padding: 0 15px;
  }
  .return-btn a {
    margin-top: 15px;
    padding-top: 10px;
  }
  .return-btn a::before {
    right: 18px;
  }
  .return-btn a:active {
    opacity: 0.7;
  }

}

/*# sourceMappingURL=style.css.map */