@charset "UTF-8";



/*intro
--------------------------------- */
.intro{}

/* for sp*/
@media screen and (max-width: 767px) {
  .intro{}
}


/*town
--------------------------------- */
.town{
  padding: 0 0 140px 0;
}
.town .gaikan{
  margin: 100px 0 0 0;
}
/*
.town .lp{
  position: relative;
  padding: 0 45px;
}
.town .lp::after{
  content: "";
  position: absolute;
  right: 0;
  bottom: 30px;
  display: block;
  width: 40px;
  height: 40px;
  background: url("../img/landplan/lp_dir.svg") no-repeat center center;
  background-size: cover;
}*/
.town .pointList{
  display: flex;
  flex-wrap: wrap; 
  justify-content: space-between;
  max-width: 880px;
  margin: 70px auto 0 auto;
}
.town .pointList section{
  width: calc((400 / 880) * 100%);
  margin: 80px 0 0 0;
}
.town .pointList section h5{
  padding: 0 0 0 0.15em;
  font-size: clamp(calc(20px * var(--font-markup)), calc(20vw / var(--vw-pc)), 20px);/*20 / 16*/
  line-height: 1.0;
  text-align: center;
  letter-spacing: 0.15em;
}
.town .pointList section h5::after{
  content: "";
  display: block;
  width: 100%;
  height: 10px;
  margin: 30px 0 0 0;
  background-color: transparent;  
  background-image: radial-gradient(circle, var(--color-key01) 1.5px, transparent 1.5px), radial-gradient(circle, var(--color-key01) 1.5px, transparent 1.5px);
  background-position: 0 3px, 4.5px 9px;
  background-size: 9px 12px;
}
.town .pointList section h5 + p{
  margin: 30px 0 0 0;
  text-align: left;
  letter-spacing: normal;
}
.town .pointList section figure{
  margin: 40px 0 0 0;
}



/* for sp*/
@media screen and (max-width: 767px) {
  .town{
    padding-bottom: 80px;
  }
  .town .gaikan{
    margin-top: 50px;
  }  
  /*.town .lp{
    padding: 0 0 10px 0;
  }
  .town .lp::after{
    right: auto;
    left: 0;
  }*/
  .town .pointList{
    display: block;
    width: 85%;
    margin: 30px auto 0 auto;
  }
  .town .pointList section{
    width: 100%;
    margin-top: 40px;
  }
  .town .pointList section h5{
    font-size: clamp(calc(16px * var(--font-markup)), calc(16vw / var(--vw-sp)), 16px);/*20 / 16*/
  }
  .town .pointList section h5::after{
    margin-top: 20px;
  }
  .town .pointList section h5 + p{
    margin-top: 20px;
  }
  .town .pointList section figure{
    margin-top: 30px;
  }
}
/* for SP landscape*/
@media screen and (max-width:767px) and (orientation: landscape) {

}

/* for tablet*/
@media only screen and (min-device-width: 768px) and (max-device-width: 834px) and (orientation:portrait) {
/*縦向きのみの記述 --- iPad Pro12.9はPC表示*/

}

/*guideline
--------------------------------- */
.guideline{
  padding: 130px 0;
  background: var(--color-white);
}
.guideline ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 890px;
  margin: 0 auto;
}
.guideline ul li{
  width: calc((250 / 890) * 100%);
  margin: 80px 0 0 0;
}
.guideline ul li h5{
  margin: 25px 0 0 0;
  font-size: clamp(calc(18px * var(--font-markup)), calc(18vw / var(--vw-pc)), 18px);/*18 / 16*/
  text-align: center;
}
.guideline ul li p{
  margin: 25px 0 0 0;
  text-align: left;
}
.guideline .gaikan{
  margin: 100px 0 0 0;
}

/* for sp*/
@media screen and (max-width: 767px) {
  .guideline{
    padding: 60px 0;
  }
  .guideline ul{
    display: block;
    width: 85%;
  }
  .guideline ul li{
    width: 100%;
    margin-top: 40px;
  }
  .guideline ul li h5{
    margin-top: 15px;
    font-size: clamp(calc(18px * var(--font-markup)), calc(18vw / var(--vw-sp)), 18px);/*18 / 16*/
  }
  .guideline ul li p{
    margin-top: 15px;
  }
  .guideline .gaikan{
    margin-top: 50px;
  }
  
}
/*set aos
--------------------------------- */
/* for pc*/
@media screen and (min-width: 768px) {
}

/* for sp*/
@media screen and (max-width: 767px) {
}







