@charset "UTF-8";
/* ------ キーヴィジュアル ------ */
.kv {
  background: url(../../images/access/kv.jpg) no-repeat center center;
  background-size: cover;
}

.sec-ttl-box:before {
  background: url(../../images/access/sec_ttl_icon.png) no-repeat left center;
  background-size: contain;
  width: 56px;
}
@media (-webkit-min-device-pixel-ratio: 2) and (max-width: 640px) {
  .sec-ttl-box:before {
    background: url(../../images/access/sec_ttl_icon@2x.png) no-repeat left center;
    background-size: contain;
  }
}
@media (min-width: 641px) {
  .sec-ttl-box:before {
    width: 76px;
  }
}

.address-txt {
  font-size: clamp(16px, 1rem + 0.4vw, 20px);
  letter-spacing: 0.06em;
  line-height: 1.65;
  margin: 10px 0 0;
}
@media (min-width: 641px) {
  .address-txt {
    font-size: 2rem;
    margin: 10px 0 0;
  }
}

.sec-access-detail {
  margin: 29px 0 0;
  padding: 23px 0 25px;
}
@media (min-width: 641px) {
  .sec-access-detail {
    margin: 49px 0 0;
    padding: 33px 0 45px;
  }
}

.access-detail-block {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
@media (min-width: 641px) {
  .access-detail-block {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.access-detail-wrap {
  margin: 20px 0 0;
}
@media (min-width: 641px) {
  .access-detail-wrap {
    width: 420px;
    margin: 20px 0 0;
  }
}

.access-detail-box {
  font-size: clamp(16px, 1rem + 0.4vw, 20px);
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.06em;
  line-height: 1.8;
}
@media (min-width: 641px) {
  .access-detail-box {
    font-size: 2rem;
  }
}
.access-detail-box:nth-child(n+2) {
  margin: 20px 0 0;
}
@media (min-width: 641px) {
  .access-detail-box:nth-child(n+2) {
    margin: 30px 0 0;
  }
}

.access-detail-head {
  color: #f6921e;
  font-weight: 700;
}

@media (min-width: 641px) {
  .access-detail-img {
    margin: 15px 0 0;
  }
}
.access-detail-img img {
  margin: 0 auto;
}

/* ------ 南町二丁目商店会館（コミュニティーホール） ------ */
.sec-commu {
  margin: 22px 0 0;
}
@media (min-width: 641px) {
  .sec-commu {
    margin: 42px 0 0;
  }
}

.commu-wrap {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  margin: 23px 0 0;
}
@media (min-width: 641px) {
  .commu-wrap {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin: 36px 0 0;
  }
}

.commu-table {
  white-space: nowrap;
  overflow-y: hidden !important;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  margin: 30px 0 0;
}
@media (min-width: 641px) {
  .commu-table {
    margin: 0;
  }
}
.commu-table table,
.commu-table th,
.commu-table td {
  border: 1px solid #494949;
  vertical-align: middle;
  width: 100%;
  padding: 0.5em 1.1em;
}
.commu-table th {
  background-color: rgba(84, 171, 226, 0.1);
  font-weight: 500;
  text-align: center;
}
.commu-table td {
  line-height: 1.35;
  padding-top: 0.7em;
  padding-bottom: 0.7em;
}
.commu-table .time-name {
  text-align: center;
  line-height: 1.94;
  padding: 0 0.5em;
}
.commu-table .time {
  line-height: 1.64;
}
.commu-table .clr-01 {
  color: #54abe2;
}

.commu-img-box .commu-img:nth-child(n+2) {
  margin: 21px 0 0;
}
@media (min-width: 641px) {
  .commu-img-box .commu-img:nth-child(n+2) {
    margin: 21px 0 0;
  }
}
.commu-img-box .commu-img img {
  margin: 0 auto;
}

.bnr-content {
  margin: 41px auto 0;
}
@media (min-width: 641px) {
  .bnr-content {
    margin: 81px auto 0;
  }
}

@media (min-width: 641px) {
  footer {
    margin: 61px 0 0;
  }
}