main h1 {
  align-items: center;
  text-align: center;
}

section.parking-info {
  margin: 5rem auto;
}

.parking-info h3 {
  font-size: 1.8rem;
  position: relative;
  line-height: 1.4;
  text-align: center;
  font-weight: 600;
  margin-bottom: 2.4rem;
}

.title {
  width: 100%;
  height: 140px;
  background-color: #14A17A;
  background-image: radial-gradient(#31b791 1px, rgba(0, 0, 0, 0) 1px);
  background-size: 20px 20px;
}

@media screen and (max-width: 559px) {

  .title {
    height: 100px;
  }
}

.title-inner {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  padding: 42.5px 0 42.5px;
}

@media screen and (max-width: 559px) {

  .title-inner {
    padding: 32.5px 0 32.5px;
  }
}

.title-inner img {
  max-width: 100%;
  height: auto;
}

@media screen and (max-width: 559px) {

  .title-inner img {
    height: 35px;
    width: auto;
  }
}

.heading {
  max-width: 900px;
  margin: 0 auto;
  padding: 50px 0;
}

.heading img {
  max-width: 100%;
  height: auto;
}

@media screen and (max-width: 559px) {

  .heading img {
    max-width: 95%;
    height: 90px;
  }
}

.content-inner {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}

.content-heading {
  margin: 0 auto;
  margin-bottom: 32px;
}

.content-heading h2 {
  font-size: 3.0rem;
  font-weight: bold;
  padding: 0 10px;
  line-height: 1.4;
}

@media screen and (max-width: 768px) {

  .content-heading h2 {
    font-size: 2.6rem;
  }
}

@media screen and (max-width: 559px) {

  .content-heading h2 {
    font-size: 2.0rem;
  }
}

.text-block-container {
  padding: 0.5rem;
  margin: auto;
}



div.content-text {
  margin: 1.8rem auto;
  font-size: 1.6rem;
  line-height: 3.2rem;
  max-width: 768px;
  margin: 1rem auto;
  padding: 0 10px;
}

p.content-text {
  text-align: center;
}


div.content-text > h3::after {
  position: absolute;
  content: "";
  border-bottom: 3px dashed #14A17A;
  width: 18rem;
  height: auto;
  width: 8rem;
  top: 2.8rem;
  left: 50%;
  transform: translateX(-50%);
}


.content-text.hikari-text {
  text-align: justify;
  font-size: 1.6rem;
}

.text-block-container hr {
  max-width: 768px;
  margin: 3.8rem 1rem;
}

.text-block-container .content-text .notes {
  font-size: smaller;
  text-indent: -2.8rem;
  display: inline-block;
  text-align: justify;
  margin-top: 1rem;
  padding-left: 2.8rem;
}


.parking p.content-text > br.sp {
  display: none;
}

span.park-num.color-red {
  color: red;
  font-size: large;
}

span.park-text.color-red {
  color: red;
  font-size: large;
}

.wrap.content.parking ol.content-text {
  list-style: decimal;
  text-align: justify;
  font-size: 1.6rem;
  padding: 0.5rem 0 0.5rem 3rem;
}

.wrap.content.parking ol.content-text > li:not(:last-child) {
  margin-bottom: 1.6rem;
}

@media screen and (max-width: 659px) {


  .parking .content-text {
    font-size: 1.4rem;
    line-height: 2.8rem;
    padding: 0.6rem;
    text-align: justify;
  }

  .wrap.content.parking ol.content-text {
    font-size: unset;
  }

  .parking p.content-text > br.pc {
    display: none;
  }

  .parking p.content-text > br.sp {
    display: initial;
  }
}

.content-text span {
  font-size: 1.6rem;
}

@media screen and (max-width: 559px) {

  .content-text span {
    font-size: 1.0rem;
  }
}


.line-top {
  width: 100%;
  height: 30px;
  background-image: url(../../../images/color-line_top.png);
  background-size: contain;
  background-repeat: repeat-x;
}

.line-bottom {
  width: 100%;
  height: 30px;
  background-image: url(../../../images/color-line_bottom.png);
  background-position: left bottom;
  background-size: contain;
  background-repeat: repeat-x;
}

.bg-area {
  background-color: #FFF7E0;
  background-size: 80px 80px;
  background-image: linear-gradient(rgba(246, 232, 190, 0.7) 1%, rgba(246, 232, 190, 0.7) 1%, rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0) 99%, rgba(246, 232, 190, 0.7) 99%, rgba(246, 232, 190, 0.7) 100%), linear-gradient(90deg, rgba(246, 232, 190, 0.7) 1%, rgba(246, 232, 190, 0.7) 1%, rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0) 99%, rgba(246, 232, 190, 0.7) 99%, rgba(246, 232, 190, 0.7) 100%), linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 25%, rgba(246, 232, 190, 0.4) 25%, rgba(246, 232, 190, 0.4) 26%, rgba(0, 0, 0, 0) 26%, rgba(0, 0, 0, 0) 50%, rgba(246, 232, 190, 0.4) 50%, rgba(246, 232, 190, 0.4) 51%, rgba(0, 0, 0, 0) 51%, rgba(0, 0, 0, 0) 75%, rgba(246, 232, 190, 0.4) 75%, rgba(246, 232, 190, 0.4) 76%, rgba(0, 0, 0, 0) 76%, rgba(0, 0, 0, 0) 100%), linear-gradient(90deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 25%, rgba(246, 232, 190, 0.4) 25%, rgba(246, 232, 190, 0.4) 26%, rgba(0, 0, 0, 0) 26%, rgba(0, 0, 0, 0) 50%, rgba(246, 232, 190, 0.4) 50%, rgba(246, 232, 190, 0.4) 51%, rgba(0, 0, 0, 0) 51%, rgba(0, 0, 0, 0) 75%, rgba(246, 232, 190, 0.4) 75%, rgba(246, 232, 190, 0.4) 76%, rgba(0, 0, 0, 0) 76%, rgba(0, 0, 0, 0) 100%);
}

div.wrap.content.parking {
  padding: 5px;
  background-color: #ffffff;
  -moz-border-radius: 55px;
  -webkit-border-radius: 55px;
  border-radius: 55px;
}

@media screen and (max-width: 559px) {

  div.wrap.content.parking {
    padding: 5px;
    -moz-border-radius: 35px;
    -webkit-border-radius: 35px;
    border-radius: 35px;
  }
}

.park-img {
  width: 100%;
  margin-bottom: 1rem;
}

.park-img > img {
  width: 100%;
}

div.content-text > .content-text a {
  display: inline-block;
  width: 5rem;
}

section.parking-info::before {
  content: "";
  display: block;
  height: 8rem;
  margin-top: -8rem;
}

.wrap {
  max-width: 1024px;
}


.content-inner {
  border: solid #14A17A 5px;
  -moz-border-radius: 50px;
  -webkit-border-radius: 50px;
  border-radius: 50px;
  box-sizing: border-box;
  padding: 35px 0;
}

@media screen and (max-width: 559px) {
  .content-inner {
    border: solid #14A17A 3px;
    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
    border-radius: 30px;
    padding-bottom: 1rem;
  }

  .parking-info h3 {
    font-size: 1.5rem;
  }

  span.park-text.color-red {
    font-size: medium;
  }
}

@media (min-width: 769px) {
  section.parking-info {
    margin: 5rem 1rem;
  }
}