@charset "UTF-8";

/* FONT
================================================== */
body {
  font-family: 'Arial', 'Noto Sans Japanese', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;
}

/* WRAP
================================================== */


body {}

.l_wrap {
  clear: both;
  margin: 1em auto 3em;
  max-width: 900px;
  font-size: 1em;
  line-height: 1.4;
  color: #2e2e2e;
  z-index: 2;
  position: relative;

}

.l_wrap h1,
.l_wrap h2,
.l_wrap h3,
.l_wrap h4,
.l_wrap h5 {
  font-weight: normal;
}

.l_wrap h1 {
  margin: 0 auto 1em;
  font-size: 1.6em;
}

.l_wrap h2 {
  margin: 0 auto;
  padding: 1em 0;
  font-size: 1.4em;
}

.l_wrap h3 {
  margin: 0 auto;
  font-size: 1.25em;
}

.l_wrap h4 {
  margin: 0 auto;
  font-size: 1.15em;
}

.l_wrap h5 {
  margin: 0 auto;
  font-size: 1em;
}

.l_wrap p {
  margin: 0;
  padding: .5em 1em;
}

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

.l_wrap li {
  margin: 0;
  list-style: none;
}

.l_wrap li a {
  padding: 0.25em;
}

.l_wrap img {
  padding: 1em;
  max-width: 100%;
  height: auto;
  box-sizing: border-box;
}

.l_wrap hr {
  margin: 0 auto 1em;
  border: 1px #ebebeb solid;
}

/* SECTION
================================================== */
.section_demo {

  max-width: 900px;
  position: fixed;
  top: 70px;
  width: 100%;
}



.section_demo1 {
  display: none;
}

.section_demo1 .target {
  background-color: #82AE46;

}

.section_demo1 .target .active a {
  background-color: #82AE46;
}

.section_demo1 .target .active a:hover {
  background-color: #82AE46;
  !important;
}

.section_demo1 .target .active a:before {
  background-color: #82AE46 !important;
}

.section_demo1 .active a {
  background-color: #82AE46;
  ;
}

.section_demo1 .active a:hover {
  background-color: #a3d064 !important;
}





.section_demo_list .target {
  background-color: #82AE46;
  padding: 3% 0 3% 0;

}

.section_demo .trigger {
  width: 100%;
  z-index: 0;
  line-height: 1em;
  background-color: #82AE46;
}

.section_demo .trigger a {
  position: relative;
  display: block;
  padding: 3%;
  color: #fff;
  text-decoration: none;
  -webkit-transition: .35s all ease;
  transition: .35s all ease;
  text-align: left;
  font-size: 16px;
}

.section_demo .trigger a:hover {
  background-color: #a3d064;
}

.section_demo .single {
  width: 100%;
  z-index: 0;
  line-height: 1em;
  background-color: #82AE46;
}

.section_demo .single a {
  position: relative;
  display: block;
  padding: 3%;
  color: #fff;
  text-decoration: none;
  -webkit-transition: .35s all ease;
  transition: .35s all ease;
  text-align: left;
  font-size: 14px;
}

.section_demo .single a:hover {
  background-color: #a3d064;
}

.section_demo .trigger a:before,
.section_demo .trigger a:after {
  position: absolute;
  display: block;
  content: '';
  width: 2px;
  background-color: #fff;
  -webkit-transition: .25s all ease;
  transition: .25s all ease;
  border-radius: 10px;
}

.section_demo .trigger a:before {
  top: .75em;
  right: 20px;
  height: 12px;
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.section_demo .trigger a:after {
  top: .75em;
  right: 13px;
  height: 12px;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.section_demo .target {
  z-index: 1;
  display: none;
  margin: 0 auto;
  padding: 0;
  color: #fff;
  padding: 5% 0 5% 0;
}

.section_demo .target .target a {
  background-color: #82AE46;

}

.section_demo .target .target a:hover {
  background-color: #a3d064;
}

.section_demo .target .trigger a {
  background-color: #82AE46;

}

.section_demo .target .trigger a:before,
.section_demo .target .trigger a:after {
  background-color: #fff;
}

.section_demo .target .trigger a:before {
  top: .5em;
  right: 16px;
}

.section_demo .target .trigger a:after {
  top: .85em;
  right: 16px;
}

.section_demo .target .active a {
  /* 子階層のアクティブ箇所 */
  padding-left: 1.5em;
  padding-right: 1.5em;
  color: #fff;
}

.section_demo .target .active a:hover {
  background-color: #a3d064;
  font-size: 14px;
}

.section_demo .target .active a:before,
.section_demo .target .active a:after {
  -ms-transform: rotate(0);
  -webkit-transform: rotate(0);
  transform: rotate(0);
}

.section_demo .target .active a:before {
  top: .65em;
  left: 1em;
  width: 3px;
  height: 12px;
}

.section_demo .target .active a:after {
  display: none;
}

.section_demo .target .active a:hover {
  background-color: #a3d064 !important;
}

.section_demo .target ul li a {
  padding: 2% 0 2% 5%;
  font-size: 14px;
  text-decoration: none;
}

.section_demo .target ul li a:hover {
  background-color: #a3d064;
}

.section_demo .target a {
  display: block;
  color: #fff;
  -webkit-transition: .35s all ease;
  transition: .35s all ease;
}

.section_demo .active a {
  color: #fff;
}

.section_demo .active a:hover {
  background-color: #a3d064;
}

.section_demo .active a:before,
.section_demo .active a:after {
  background-color: #fff;
}

.section_demo .active a:before {
  top: .65em;
  right: 16px;
  height: 16px;
}

.section_demo .active a:after {
  top: .65em;
  right: 16px;
  height: 16px;
}

.section_demo>ul>li {
  border-bottom: 1px #f5f5f5 solid;
}

.section_demo>ul>li:last-of-type {
  border-bottom: 0;
}

/* BUTTON
================================================== */
.btn_hamburger {
  position: fixed;
  right: 0;
  top: 0;
  width: 40px;
  height: 56px;
  background-color: #82AE46;
  &::after {
    content: "MENU";
    color: white;
    position: absolute;
    width: 40px;
    top: 45px;
  }
}

.btn_hamburger a {
  position: relative;
  display: block;
  height: 30px;
  -webkit-transition: all .4s;
  transition: all .4s;
  box-sizing: border-box;
}

.btn_hamburger span {
  position: absolute;
  display: inline-block;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 2px;
  -webkit-transition: all .4s;
  transition: all .4s;
  box-sizing: border-box;
}

.btn_hamburger span:nth-of-type(1) {
  top: 7px;
}

.btn_hamburger span:nth-of-type(2) {
  top: 21px;
}

.btn_hamburger span:nth-of-type(3) {
  top: 35px;
}

.btn_hamburger span:nth-of-type(2)::after {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 2px;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.btn_hamburger .active span:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.btn_hamburger .active span:nth-of-type(2)::after {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.btn_hamburger .active span:nth-of-type(1) {
  -webkit-transform: translateY(20px) scale(0);
  -ms-transform: translateY(20px) scale(0);
  transform: translateY(20px) scale(0);
}

.btn_hamburger .active span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) scale(0);
  -ms-transform: translateY(-20px) scale(0);
  transform: translateY(-20px) scale(0);
}