@charset "UTF-8";
/* Scss Document */
/* CSS Document */
@media screen and (max-width: 768px) {
  .pc_ver {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .sp_ver {
    display: none;
  }
}
/* marginとpadding */
/* コンテンツ部分の最大サイズ */
.mt0 {
  margin-top: 0px !important;
}
.mt10 {
  margin-top: 10px !important;
}
.mt20 {
  margin-top: 20px !important;
}
.mt30 {
  margin-top: 30px !important;
}
.mt40 {
  margin-top: 40px !important;
}
.mt50 {
  margin-top: 50px !important;
}
.mt60 {
  margin-top: 60px !important;
}
.mt70 {
  margin-top: 70px !important;
}
.mt80 {
  margin-top: 80px !important;
}
.mt90 {
  margin-top: 90px !important;
}
.mt100 {
  margin-top: 100px !important;
}
.mt110 {
  margin-top: 110px !important;
}
.mt120 {
  margin-top: 120px !important;
}
.mt130 {
  margin-top: 130px !important;
}
.mt140 {
  margin-top: 140px !important;
}
.mt150 {
  margin-top: 150px !important;
}
.mt160 {
  margin-top: 160px !important;
}
/**
 * SVG画像をアイコンに使いたい的ないろいろ
 *
 *  [Html] SVG塗りつぶしの色をBackground-Imageとして扱うときに変更する
 * https://code.i-harness.com/ja/q/cbfa3c
 */
/**
 * 下記SVGを変更した場合、インポートする側のCSSも更新する必要があります。注意してください。
 *
*/
@media screen and (min-width: 769px) {
  #pageTitle {
    background: url("/common/img/kumanokodo/titlebg.jpg") center bottom no-repeat;
    background-size: cover;
  }
}
@media screen and (max-width: 768px) {
  #pageTitle .inner {
    background: url("/common/img/kumanokodo/titlebg.jpg") center bottom no-repeat;
    background-size: cover;
  }
}
#topsection {
  background-color: #efefef;
  position: relative;
  min-height: 280px;
}
#topsection .inner {
  position: relative;
  z-index: 2;
}
#topsection .texts {
  font-weight: 700;
  line-height: 2;
  text-align: left;
}
@media screen and (min-width: 769px) {
  #topsection .texts {
    font-size: 128%;
    padding-top: 60px;
  }
}
@media screen and (max-width: 768px) {
  #topsection .texts {
    font-size: 86%;
    padding-top: 20px;
  }
}
#topsection:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 110px;
  content: "";
  display: block;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20500%20500%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20preserveAspectRatio%3D%22none%22%3E%3Cpolyline%20points%3D%22500%200%20500%20500%200%20500%22%20fill%3D%22%23FFF%22%20%2F%3E%3C%2Fsvg%3E");
  background-size: 100% 110px;
  background-repeat: no-repeat;
  background-position: left 45%;
  z-index: 1;
}
main h2 {
  margin-top: 40px;
  font-size: 143%;
  font-weight: 900;
  padding-bottom: 10px;
  border-bottom: solid 2px #1c2585;
  margin-bottom: 20px;
}
#spots {
  text-align: left;
}
#spots section {
  display: flex;
  justify-content: space-between;
}
#spots .leftParts {
  min-height: 300px;
}
@media screen and (min-width: 769px) {
  #spots .leftParts {
    width: 285px;
    background: url("/common/img/kumanokodo/busstop.png") left 44px center no-repeat;
  }
}
@media screen and (max-width: 768px) {
  #spots .leftParts {
    width: 45%;
    background: url("/common/img/kumanokodo/busstop_sp.png") left 25px center no-repeat;
    background-size: 50% auto;
  }
}
#spots .leftParts .busStop {
  position: relative;
}
#spots .leftParts .busStop div {
  position: relative;
  background-color: #e7e8f7;
  text-align: center;
}
@media screen and (min-width: 769px) {
  #spots .leftParts .busStop div {
    width: 208px;
  }
}
@media screen and (max-width: 768px) {
  #spots .leftParts .busStop div {
    width: 80%;
  }
}
#spots .leftParts .busStop div span {
  display: inline-block;
  color: #1c2585;
  font-weight: 900;
  padding: .3em 3% .3em 20px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2014.9%2036.2%22%20width%3D%2214.9%22%20height%3D%2236.2%22%20preserveAspectRatio%3D%22xMinYMid%22%3E%3Cpath%20fill%3D%22%231c2585%22%20d%3D%22M8.5%2C34.3V30.2h3.8v-19H8.5v-2a4.5%2C4.5%2C0%2C0%2C0%2C3.6-4.5A4.7%2C4.7%2C0%2C0%2C0%2C7.5.1%2C4.6%2C4.6%2C0%2C0%2C0%2C2.9%2C4.7%2C4.7%2C4.7%2C0%2C0%2C0%2C6.5%2C9.2v2H2.7V30.3H6.5v4.1H.1v1.9H15V34.4H8.5Z%22%20transform%3D%22translate%28-0.1%20-0.1%29%22%2F%3E%3C%2Fsvg%3E");
  background-size: auto 2em;
  background-repeat: no-repeat;
  background-position: left 45%;
}
@media screen and (min-width: 769px) {
  #spots .leftParts .busStop div span {
    font-size: 114%;
  }
}
#spots .leftParts .busStop:after {
  position: absolute;
  display: block;
  content: "";
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 50%;
  height: 1px;
  background-color: #e7e8f7;
  z-index: -1;
}
#spots .rightParts {
  padding-bottom: 35px;
  font-size: 114%;
}
@media screen and (min-width: 769px) {
  #spots .rightParts {
    width: calc(100% - 295px);
  }
}
@media screen and (max-width: 768px) {
  #spots .rightParts {
    width: 52%;
  }
}
#spots .rightParts h3 {
  font-weight: 900;
  padding: .3em 0;
}
#spots .rightParts > p {
  margin-top: .7em;
}
@media screen and (max-width: 768px) {
  #spots .rightParts > p {
    font-size: 86%;
  }
}
#spots .rightParts > div {
  margin-top: .7em;
}
@media screen and (min-width: 769px) {
  #spots .rightParts > div {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (min-width: 769px) {
  #spots .rightParts > div .photos {
    width: 320px;
  }
}
#spots .rightParts > div .photos img {
  width: 100%;
}
@media screen and (min-width: 769px) {
  #spots .rightParts > div .texts {
    width: calc(100% - 340px);
  }
}
@media screen and (max-width: 768px) {
  #spots .rightParts > div .texts {
    margin-top: 1em;
    font-size: 86%;
    line-height: 1.8;
  }
}
#spots section:last-child {
  min-height: 200px;
}
#spots section:last-child .leftParts {
  background: none;
}
#contactBox {
  margin: 80px auto 0;
  background-color: #f1f1f1;
  width: 90%;
  max-width: 1120px;
}
@media screen and (min-width: 769px) {
  #contactBox {
    padding: 30px;
  }
}
@media screen and (max-width: 768px) {
  #contactBox {
    padding: 15px;
  }
}
#contactBox h2 {
  font-size: 127%;
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 769px) {
  #contactBox h2 + p {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  #contactBox h2 + p {
    text-align: left;
  }
}
#contactBox .inner {
  margin-top: 2em;
  padding: 20px;
  background-color: #FFF;
}
@media screen and (min-width: 769px) {
  #contactBox .inner {
    display: flex;
    justify-content: space-between;
  }
}
#contactBox .inner > div {
  text-align: center;
}
@media screen and (min-width: 769px) {
  #contactBox .inner > div {
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    border-left: solid 1px #dfdfdf;
  }
}
#contactBox .inner > div:first-child {
  border-left: none;
}
@media screen and (max-width: 768px) {
  #contactBox .inner > div + div {
    margin-top: 20px;
  }
}
#contactBox .inner .address {
  text-align: left;
  margin: 0 auto;
  line-height: 1.5;
}
#contactBox .inner .address div {
  width: 100%;
}
#contactBox .inner .address div h5 {
  font-weight: 900;
  margin-bottom: .5em;
}
#contactBox .inner .tell {
  color: #1c2585;
  font-size: 171.4%;
  font-weight: 900;
}
#contactBox .inner .icons {
  padding-right: 20px;
}
.noticeBoxGray + #contactBox {
  margin: 20px auto 0;
}
/* 公開後追加 ================================================== */
.accordionTrigger {
  cursor: pointer;
  position: relative;
}
.accordionTrigger::after {
  display: block;
  position: absolute;
  right: 18px;
  content: "+";
  width: 20px;
  height: 20px;
  font-size: 20px;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .accordionTrigger::after {
    top: 50%;
    transform: translateY(-50%);
    padding-bottom: 10px;
  }
}
@media screen and (min-width: 769px) {
  .accordionTrigger::after {
    top: 50%;
    transform: translateY(-50%);
  }
}
.accordionTrigger.is-active:after {
  content: "-";
}
.accordionContents {
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: 0.3s;
}
.accordionContents.is-open {
  line-height: normal;
  height: auto;
  opacity: 1;
}