.news {
  background: #161616;
  margin: 88px 0;
  padding: 20px 0 25px;
}
.news .ni {
  max-width: 1096px;
}
.news h3 {
  color: #fff;
  margin: 0;
  border-right: 1px solid #fff;
  width: 125px;
  padding-top: 34px;
}
.news .block {
  height: 140px;
  padding: 34px 67px 20px;
  color: #fff;
  overflow-y: scroll;
}
.news .date {
  width: 215px;
}
.news h4 {
  flex: 1;
  margin: 0;
}

.award {
  text-align: center;
  background: #222;
  margin-top: 93px;
  padding: 30px 0 25px;
}
.award .okage {
  background: #fff;
  padding: 0 15px;
}
.award .okage .oi {
  text-align: left;
  max-width: 950px;
  margin: 32px auto 0;
  padding: 5px 0;
}

.charm {
  background: #fff url(../img/tchrm-bg.png) repeat 0 0;
  display: flex;
  align-items: end;
  gap: 45px;
  padding-bottom: 74px;
}
.charm img {
  width: 66.66%;
  max-width: calc(100% - 425px);
}
.charm-info {
  width: 370px;
  color: #fff;
}
.charm-info h3 {
  font-size: 37px;
  padding-top: 127px;
  margin: 0 0 60px;
  background: transparent url(../img/ttl-chm.png) no-repeat 0 0;
}
.charm-info h4 {
  font-size: 28px;
  margin: 0 0 55px;
}
.charm-info p {
  font-size: 18px;
  margin: 0;
  line-height: 2.4;
}

.facility {
  background: transparent url(../img/tfclty-bg.png) repeat 0 0;
}
.facility .block1 {
  background: transparent url(../img/fhead-bg.jpg) no-repeat 50% 0;
  color: #fff;
}
.facility .block1 .fb1-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 52px 0 40px;
}
.facility .block1 .fb1-intr {
  text-align: center;
  font-size: 23px;
  color: #cdce74;
  margin: 0 0 50px;
}
.facility .block1 .fb1-msg {
  text-align: center;
  margin: 0 0 60px;
  font-size: 18px;
  line-height: 1.77;
}
.facility .block1 .fb1-shinto {
  margin: 35px 0 72px;
  font-size: 18px;
  line-height: 1.66;
}
.facility .block1 .fb1-link {
  text-align: center;
}
.facility .block1 h3 {
  font-size: 37px;
  text-align: center;
  padding-top: 120px;
  background: transparent url(../img/ttl-fcty.png) no-repeat 50% 0;
  margin: 0 0 5px;
}
.facility .block2 {
  padding: 125px 15px 210px;
  background: #fff url(../img/tfclty-bg.png) repeat 0 0;
}
.facility .block2 .row {
  max-width: 1312px;
  margin: 0 auto;
  display: flex;
  align-items: center;
}
.facility .block2 .row + .row {
  margin-top: 50px;
}
.facility .block2 .row > img {
  width: 45.73%;
  display: inline-block;
  margin-left: 2.44%;
  position: relative;
  z-index: 1;
}
.facility .block2 .row .fb2-info {
  background: rgba(182, 149, 93, 0.48);
  margin-left: -1.37%;
  width: 53.2%;
  position: relative;
  z-index: 2;
  padding: 36px 60px 25px 76px;
}
.facility .block2 .row .fb2-info dl {
  display: flex;
  align-items: flex-end;
  gap: 19px;
}
.facility .block2 .row .fb2-info dl dd {
  font-size: 23px;
  margin: 0;
  line-height: 32px;
}
.facility .block2 .row .fb2-info dl dt {
  font-size: 37px;
  font-weight: bold;
  margin: 0;
  line-height: 40px;
}
.facility .block2 .row .fb2-info p {
  font-size: 18px;
  line-height: 1.94;
}
.facility .block2 .row .fb2-link {
  text-align: right;
  margin-right: 40px;
}
.facility .block2 .row:nth-child(even) {
  flex-direction: row-reverse;
}
.facility .block2 .row:nth-child(even) > img {
  margin-left: 0;
  margin-right: 2.44%;
}
.facility .block2 .row:nth-child(even) .fb2-info {
  margin-left: 0;
  margin-right: -1.37%;
}
.facility .block2 .row:nth-child(even) .fb2-link {
  margin-right: 0;
}
.facility .block2 .row:nth-child(1) dd {
  color: #161691;
}
.facility .block2 .row:nth-child(2) dd {
  color: #573206;
}
.facility .block2 .row:nth-child(3) dd {
  color: #203319;
}
.facility .block2 .fb2-plan {
  margin-top: 155px;
  text-align: center;
}

.bhs {
  background: transparent url(../img/bg-bhs.jpg) no-repeat 100% 100%/cover;
}
.bhs-i {
  max-width: 1732px;
  padding: 55px 0 50px;
}
.bhs-i2 {
  background: transparent url(../img/ttl-bhs.png) no-repeat 0 0;
  padding-top: 120px;
  max-width: 953px;
}
.bhs-box {
  background: rgba(17, 17, 17, 0.45);
  padding: 45px 20px 55px 60px;
  color: #fff;
}
.bhs-box h3 {
  margin: 0 0 45px;
  font-size: 37px;
}
.bhs-box p {
  line-height: 2.1;
  font-size: 18px;
}

.map {
  text-align: center;
  padding: 93px 15px 85px;
}
.map h3 {
  margin: 0 0 100px;
  color: #fff;
  font-size: 37px;
  padding-top: 93px;
  background: transparent url(../img/ttl-map.png) no-repeat 50% 0;
}

.meal {
  background: transparent url(../img/meal-bg.jpg) no-repeat 50% 50%/cover;
  padding: 240px 15px 182px;
}
.meal_i {
  max-width: 1200px;
  margin: 0 auto;
  gap: 35px;
}
.meal h4 {
  background: transparent url(../img/ttl-meal2.png) no-repeat 0 -20px;
  width: 100%;
  font-size: 30px;
  margin: 0 auto 35px;
  max-width: 1200px;
  padding-top: 100px;
  color: #fff;
}
.meal .info {
  width: calc(50% - 35px);
  display: flex;
  flex-direction: column;
  align-content: stretch;
}
.meal .info p {
  font-size: 18px;
  line-height: 1.75;
  margin: 0 0 auto;
  color: #fff;
}
.meal .info .link {
  margin: auto 0 0;
}
.meal .img {
  width: 50%;
}

.option {
  color: #fff;
  padding: 30px 15px 117px;
}
.option-i {
  max-width: 1532px;
  margin: 0 auto;
}
.option h3 {
  font-size: 37px;
  padding-top: 86px;
  background: transparent url(../img/ttl-opt.png) no-repeat 50% 0;
  text-align: center;
}
.option-main {
  margin: 0 auto 140px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 46px;
  max-width: 1384px;
  text-align: center;
}
.option-box {
  width: 430px;
}
.option-box h4 {
  font-size: 37px;
  margin: 20px 0 0;
}
.option-box p {
  margin: 0 0 50px;
  font-size: 23px;
}
.option-link {
  text-align: center;
}

.access {
  padding-bottom: 126px;
}
.access h3 {
  max-width: 1666px;
  margin: 0 auto;
  padding: 107px 15px 0;
  background: transparent url(../img/ttl-acs.png) no-repeat 15px 0;
  font-size: 37px;
  color: #fff;
}
.access .ac-info {
  margin-top: 83px;
  background: transparent url(../img/access-bg.jpg) no-repeat 50% 50%/cover;
  text-align: center;
  padding: 40px 15px 0;
}

.other {
  padding: 95px 15px 130px;
}
.other table {
  width: 100%;
  max-width: 1256px;
  margin: 0 auto;
  text-align: left;
}
.other th, .other td {
  background: #fff;
  border: 3px solid #000;
  font-size: 24px;
  padding: 25px 10px 23px 34px;
}
.other th {
  width: 28%;
}
.other td {
  width: 71.2%;
}
.other td > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 787px;
  gap: 1em;
  flex-wrap: wrap;
}
.other td > div dl {
  max-width: 590px;
  margin: 0;
}
.other td > div dl dt {
  font-weight: normal;
  margin: 0 0 34px;
}
.other td > div dl dd {
  font-size: 18px;
  margin: 0;
}

/*# sourceMappingURL=top.css.map */
