@charset "UTF-8";
.liaison-content,
.liaison-content::before,
.liaison-content::after {
  box-sizing: border-box;
}

.liaison-content {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 0 120px;
}

@media screen and (max-width: 768px) {
  .liaison-content {
    margin: 0 0 88px;
  }
}

.liaison-content label {
  cursor: pointer;
  text-align: center;
  position: absolute;
  padding: 4px 16px 0;
  width: 100%;
  max-width: 260px;
  bottom: -80px;
  height: 56px;
  background: #fefefe;
  border-radius: 2px;
  box-shadow: 0 0 6px rgba(1, 49, 90, 0.18);
}

@media screen and (max-width: 768px) {
  .liaison-content label {
    max-width: 220px;
    height: 48px;
    bottom: -60px;
  }
}

.liaison-content label::before {
  content: '';
  position: absolute;
  top: 50%;
  left: calc( 50% - 47px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 7px;
  border-color: transparent transparent transparent #005aa6;
  transform: translate(-50%, -50%) rotate(90deg);
  z-index: 100;
}

@media screen and (max-width: 520px) {
  .liaison-content label::before {
    bottom: 21px;
    left: calc( 50% - 38px);
    border-width: 4px 0 4px 6px;
  }
}

.liaison-content label::after {
  position: absolute;
  content: "詳細を開く";
  bottom: 15px;
  left: calc( 50% + 8px);
  transform: translateX(-50%);
  color: #005aa6;
  font-weight: bold;
  line-height: 2.5rem;
  z-index: 2;
}

@media screen and (max-width: 768px) {
  .liaison-content label::after {
    bottom: 12px;
  }
}

.liaison-content input {
  opacity: 0;
  position: absolute;
}

.liaison-content input:focus-visible + label {
  outline: solid 2px #D97500;
}

.liaison-content input:checked + label::before {
  left: calc( 50% - 30px);
  transform: translate(-50%, -50%) rotate(-90deg);
}

@media screen and (max-width: 768px) {
  .liaison-content input:checked + label::before {
    left: calc( 50% - 32px);
  }
}

.liaison-content input:checked + label:after {
  content: "閉じる";
}

.liaison-content .liaison-col .tbl table {
  table-layout: fixed;
}

.liaison-content .liaison-col .tbl table tbody:nth-child(2) {
  display: none;
  height: 0;
  overflow: hidden;
}

.liaison-content input:checked ~ .liaison-col .tbl table tbody:nth-child(2) {
  display: table-row-group;
  height: auto;
  overflow: initial;
}

.tbl table {
  margin: 0;
}

.tbl table tbody tr th,
.tbl table tbody tr td {
  padding: 10px;
}

.tbl table tbody tr th {
  width: 150px;
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .tbl table tbody tr th {
    width: 118px;
  }
}

@media screen and (max-width: 520px) {
  .tbl table tbody tr th {
    width: 92px;
    height: 65px;
  }
}

.tbl table tbody tr td {
  vertical-align: middle;
  font-feature-settings: "palt";
  word-break: break-all;
}

.tbl table tbody tr td a {
  color: #005aa6;
}

.tbl table tbody tr:nth-of-type(3) td a {
  color: #333333;
}

/*# sourceMappingURL=../../../maps/general/pages/visit.css.map */
