  .header {
  position: relative;
}

.header__inner {
  position: fixed;
  z-index: 9998;
  width: 100%;
  height: 70px;
  background-color: #fff;
}

.header__row {
  position: relative;
}

.header__logo__kgs img {
  position: absolute;
  left: 20px;
  margin-top: 12px;
  margin-bottom: 17px;
  max-width: 314px;
}

.header__logo__sfc img {
  position: absolute;
  right: 34px;
  margin-top: 12px;
  margin-bottom: 12px;
}

.headerNav {
  position: absolute;
  z-index: 9997;
  width: 50%;
  margin-left: 50%;
  padding-top: 70px;
  background-color: #107110;
}

.headerNav__list {
  display: flex;
  justify-content: space-between;
}

.headerNav__listItem {
  position: relative;
  padding: 30px 20px 27px 20px;
}

.headerNav__listItem:first-child {
  padding-left: 30px;
}

.headerNav__listItem:last-child {
  padding-right: 30px;
}

.headerNav__title {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 2.4rem;
  letter-spacing: 0.05em;
  cursor: pointer;
  color: #fff;
}

.current {
  padding-bottom: 1px;
  border-bottom: 1px solid #fff;
}



/* -----keyvisual--------------- */

main {
  padding-top: 0;
}

.keyvisual {
  background-color: #f6f6f6;
  width: 100%;
  height: 350px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.keyvisualCopy {
  position: relative;
  /* position: absolute;
  transform: translateX(-50%);
  top: 185px;
  left: 50%;
  margin: 0;
  text-align: center; */
}

.keyvisual__text {
  position: absolute;
  top: 185px;
  left: 50%;
  margin: 0;
  transform: translateX(-50%);
  text-align: center;
}




table {
  border-collapse: collapse;
  border-spacing: 0;
}

.outlineContents {
  margin-top: 100px;
  width: 100%;
}

.outlineContents__table {
  margin: 0 auto 50px;
  width: 1064px;
}

.outlineContents__tbody {
  border-right: 1px solid #a3a3a3;
  border-bottom: 1px solid #a3a3a3;
}

.outlineContents__tr {
  width: 100%;
}

.outlineContents__th {
  padding: 10px 0;
  width: 20%;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 4.0rem;
  letter-spacing: 0.05em;
  background-color: #658665;
  border-top: 1px solid #a3a3a3;
  border-left: 1px solid #a3a3a3;
}

.outlineContents__th_sub {
  color: #fff;
  font-size: 1.2rem;
  line-height: 2.5rem;
  letter-spacing: 0.05em;
}

.outlineContents__td {
  padding: 20px;
  width: 80%;
  color: #181818;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 2.5rem;
  letter-spacing: 0.05em;
  border-top: 1px solid #a3a3a3;
  border-left: 1px solid #a3a3a3;
}

.outlineContents__location {
  display: flex;
}

.outlineContents__map {
  margin-left: 15px;
}

ol {
  margin: 0;
  padding: 0;
}

.outlineContents__li {
  color: #181818;
  font-size: 1.6rem;
  line-height: 2.5rem;
  letter-spacing: 0.05em;
}

.mt-p {
  margin-top: 10px;
}

.pl-p {
  padding-left: 15px;
}

.outlineContents__p {
  position: relative;
  color: #181818;
  font-size: 1.6rem;
  line-height: 2.5rem;
  letter-spacing: 0.05em;
}

.outlineContents__p::before {
  display: block;
  position: absolute;
  top: 6px;
  left: 0;
  width: 12px;
  height: 12px;
  background-color: #181818;
  content: "";
}

.text__link {
  color: #107110;
  font-size: 1.6rem;
  line-height: 2.5rem;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #107110;
}

.text__link:hover {
  color: #1aac76;
}



.footer__text {
  margin: 25px auto 10px auto;
  padding-top: 6px;
  color: #181818;
  font-size: 1.6rem;
  line-height: 4.0rem;
  letter-spacing: 0.05em;
  text-align: center;
  border-top: 2px solid #f6f6f6;
}




@media screen and (max-width: 1217px) {
  .outlineContents {
    padding: 0 30px;
    width: auto;
  }

  .outlineContents__table {
    width: 100%;
  }
}




@media screen and (max-width: 1024px)  {
  /*--logo縮小--*/
  .header__logo__kgs img {
    margin-top: 17px;
    margin-left: 11px;
    width: 160px;
    height: 21px;
  }

  .logo_sp {
    display: none;
  }

  .header__inner {
    position: fixed;
    z-index: 9998;
    width: 100%;
    height: 51px;
    background-color: #fff;
  }

  .headerNav {
    display: none;
  }

  /*--globalNav--*/
  .globalNav {
    display: none;
    position: fixed;
    z-index: 9999;
    padding-top: 51px;
    top: 0;
    left: 0;
    width: 100%;
  }

  .globalNav__list {
    background-color: #107110;
  } 
  
  .globalNav__listItem {
    padding-top: 8px;
    padding-bottom: 8px;
    width: 100%;
    border-bottom: 1px solid rgba(255,255,255,0.14);
  }
  
  .globalNav__listItem:first-child {
    padding-top: 20px;
  }

  .globalNav__listItem:last-child {
    padding-bottom: 24px;
  }
  
  .globalNav__title {
    padding-left: 43px;
    color: #fff;
    font-size: 1.4rem;
    line-height: 4.0rem;
    letter-spacing: 0.05em;
  }

  .globalNav__title::after {
    display: inline-block;
    position: absolute;
    content: "";
    right: 50px;
    width: 16px;
    height: 6px;
    margin-top: 10px;
    background-image: url(/kgs/common/img/menu__arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
  }

  .globalNav__title:first-child::after {
    margin-top: 15px;
  }

  /*--ハンバーガーメニュー--*/
  .menuTrigger {
    cursor: pointer;
    display: block;
    position: fixed;
    z-index: 9999;
    right: 0;
    background-color: #107110;
  }

  .menuTrigger__bar {
    display: block;
    position: relative;
    width: 22px;
    height: 18px;
    margin: 17px 15px 16px 14px;
  }

  .menuTrigger__bar>span {
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #70aa70;
  }

  .menuTrigger__bar_01 {
    top: 0;
  }

  .menuTrigger__bar_02 {
    top: 50%;
    transition: translate(-50%,-50%);
  }

  .menuTrigger__bar_03 {
    top: 100%;
  }

  
  /*ハンバーガーメニュークリック時*/
  .menuTrigger.close .menuTrigger__bar_01 {
    transform: translateX(2px) translateY(9px) rotate(45deg);
    transition: transform .3s;
  }
  
  .menuTrigger.close .menuTrigger__bar_02 {
    opacity: 0;
    transition: transform .3s;
  }

  .menuTrigger.close .menuTrigger__bar_03 {
    transform: translateX(2px) translateY(-9px) rotate(-45deg);
    transition: transform .3s;
  }

  .outlineContents__location {
    display: block;
  }
  
  .outlineContents__map {
    width: 100%;
    margin-top: 20px;
    margin-left: 0;
  }
}



@media screen and (max-width: 750px) {
  /* PC非表示 SP表示 */
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }



  .header__logo__kgs img {
    margin-top: 17px;
    margin-left: 0;
  }

  .keyvisual {
    width: 100%;
    height: 50vw;
    background-color: #f6f6f6;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
  }

  .keyvisualCopy {
    position: relative;
  }

  .keyvisual__text {
    position: absolute;
    top: 28vw;
  }

  .keyvisual__text img {
    margin: 0 auto;
    width: 100%;
    left: 50%; 
  }



  table {
    border-collapse: collapse;
    border-spacing: 0;
  }
  
  .outlineContents {
    padding: 0 5vw;
    width: auto;
  }
  
  .outlineContents__table {
    margin: 12vw auto 10vw;
    width: 100%;
    border-right: 1px solid #a3a3a3;
    border-bottom: 1px solid #a3a3a3;
  }
  
  .outlineContents__tr {
    width: 100%;
  }
  
  .outlineContents__th {
    padding: 5px 0;
    width: 20%;
    color: #fff;
    font-size: 1.1rem;
    font-weight: bold;
    line-height: 1.5rem;
    letter-spacing: 0.05em;
    /* background-color: #658665;
    border-top: 1px solid #a3a3a3;
    border-left: 1px solid #a3a3a3; */
  }
  
  .outlineContents__th_sub {
    color: #fff;
    font-size: 0.9rem;
    line-height: 1.5rem;
    letter-spacing: 0.05em;
  }
  
  .outlineContents__td {
    padding: 10px;
    width: 80%;
    color: #181818;
    font-size: 1.1rem;
    font-weight: bold;
    line-height: 1.5rem;
    letter-spacing: 0.05em;
    border-top: 1px solid #a3a3a3;
    border-left: 1px solid #a3a3a3;
  }
  
  ol {
    margin: 0;
    padding: 0;
  }

  .inner {
    margin: 0;
    padding: 0;
    text-indent: -11px;
    padding-left: 11px;
  }
  
  .outlineContents__li {
    color: #181818;
    font-size: 1.1rem;
    line-height: 1.5rem;
    letter-spacing: 0.05em;
  }
  
  .mt-p {
    margin-top: 7px;
  }
  
  .pl-p {
    padding-left: 12px;
  }
  
  .outlineContents__p {
    position: relative;
    color: #181818;
    font-size: 1.1rem;
    line-height: 1.5rem;
    letter-spacing: 0.05em;
  }
  
  .outlineContents__p::before {
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 10px;
    height: 10px;
    background-color: #181818;
    content: "";
  }
  
  .text__link {
    color: #107110;
    font-size: 1.1rem;
    line-height: 1.5rem;
    letter-spacing: 0.05em;
    border-bottom: 1px solid #107110;
  }
  
  .text__link:hover {
    color: #1aac76;
  }
  

  
  .footer {
    padding-left: 10px;
    padding-right: 10px;
  }

  .footer__text {
    margin: 50px auto 20px auto;
    color: #181818;
    font-size: 1.0rem;
    line-height: 2.0rem;
    letter-spacing: 0.05em;
    text-align: center;
    border-top: 2px solid #f6f6f6;
  }



}