a:link {
  color: #601981;
}

.kw-mv.hover {
  display: block;
}
.kw-mv.hover:hover {
  opacity: .8;
}
.kw-mv img {
  width: 100%;
}

.kw-mvTxt {
  background-color: #000;
  padding: 50px 30px 80px;
}

.kw-mvTxt img {
  max-width: 568px;
  margin: auto;
}

.kw-period {
  max-width: 568px;
  margin: auto;
  padding: 30px 30px 50px;
}

.kw-period img {
  max-width: 528px;
}

.kw-name {
  padding: 100px 30px;
  background-color: #000;
}

.kw-name img {
  display: block;
  max-width: 350px;
  margin: auto;
}

.kw-cnt {
  background-image: url(/hotel_kawashima/images/open/bg.jpg);
  background-size: cover;
  background-position: right top;
}

.kw-cnt > div {
  padding: 100px 30px;
}

.kw-cnt > div:nth-of-type(1) {
  border-bottom: 1px solid #000;
}

.kw-cnt-inner {
  max-width: 460px;
  margin: 0 auto;
}

.kw-ttl {
  margin-bottom: 50px;
}

.kw-ttl--1 img {
  max-width: 384px;
}

.kw-ttl--2 img {
  max-width: 378px;
}

.kw-ttl--3 img {
  max-width: 378px;
  padding-top: 50px;
  padding-bottom: 5px;
}

.kw-ttl--menu {
  text-align: center;
  margin-bottom: 30px;
}

.kw-ttl--menu img {
  max-width: 116px;
  transform: translateX(-32px);
}

.kw-txt {
  font-family: 'Shuei Yokobuto Min M';
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.9em;
}

.kw-menu {
  padding: 100px 30px;
  border-bottom: 1px solid #000;
}

.kw-menu a:hover {
  opacity: .8;
}

.kw-menu-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 920px;
  margin: 0 auto 100px;
}

.kw-menu-list > a {
  display: block;
  width: calc(50% - 45px);
  margin-top: 30px;
}

.kw-chair {
  display: block;
  width: 148px;
  margin: auto;
}

.kw-chair img {
  width: 100%;
}

.map {
  max-width: 500px;
  width: 100%;
  margin: 0 auto;
}
.gmap {
  width: 100%;
}
.title_middle {
  font-family: 'Shuei Yokobuto Min M';
  font-size: 20px;
  letter-spacing: 0.1em;
  line-height: 1.9em;
  padding-top: 30px;
}
.red {
  color: #dc0a0a;
}

a.kw-reservation {
  font-size: 180%;
  background: #000000;
  padding: 25px;
  border: 2px solid #fff;
  color: #fff;
  display: block;
  width: 430px;
  box-sizing: border-box;
}
.kw-reservation:hover {
  background: #1d1d1d;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

@media only screen and (max-width: 640px) {
  .kw-mvTxt {
    padding: 30px 30px 60px;
  }
  .kw-period {
    padding: 20px 30px 25px;
  }
  .kw-name {
    padding: 50px 30px;
  }
  .kw-name img {
    max-width: 200px;
  }
  .kw-cnt > div {
    padding: 50px 30px;
    max-width: 100%;
  }
  .kw-ttl {
    margin-bottom: 30px;
  }
  .kw-ttl--3 img {
    max-width: 100%;
  }
  .kw-ttl--menu img {
    max-width: 100px;
    transform: translateX(-15px);
  }
  .kw-menu {
    padding: 50px 30px;
  }
  .kw-menu-list {
    margin-bottom: 50px;
  }
  .kw-menu-list > a {
    width: 100%;
    margin-top: 18px;
  }
  .kw-chair {
    width: 140px;
  }
  .gmap {
    width: 100%;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}

@media only screen and (max-width: 480px) {
  a.kw-reservation {
    font-size: 5.4vw;
    padding: 5vw;
    width: 84vw;
  }
}

@media only screen and (max-width: 374px) {
  .kw-mvTxt,
  .kw-period,
  .kw-name,
  .kw-cnt > div,
  .kw-menu {
    padding-left: 15px;
    padding-right: 15px;
  }
}
