@charset "utf-8";

/* ------------------------------------------------------------------
top
------------------------------------------------------------------ */
/* mv
-------------------------------------------------------------- */
.bx-wrapper {
  margin: 0;
  box-shadow: none;
  border: 0;
}

.bxslider img {
  max-width: none;
  width: auto;
  height: auto;
  display: block;
}

.bx-wrapper .bx-pager.bx-default-pager a {
  background: #cecccc;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #000;
}

.bx-wrapper .bx-pager {
  bottom: -20px;
}

@media (max-width:767px) {
  .bxslider img {
    max-width: 100%;
  }
}

/* news
-------------------------------------------------------------- */
#news {
  align-items: center;
  margin: 40px 0;
  padding: 15px 15px 15px 30px;
  background: #f4f4f4;
}

#news .ttlArea {
  width: 250px;
}

#news .ttlArea h2 {
  align-items: center;
}

#news .ttlArea h2 img {
  margin-bottom: 10px;
}

#news .ttlArea h2 span {
  display: inline-block;
  line-height: 1;
}

#news .ttlArea h2 .en {
  margin: 0 10px 8px;
  font-size: 2.6rem;
  font-weight: 600;
}

#news .ttlArea h2 .jp {
  font-size: 1.4rem;
}

#news .detailArea {
  width: calc(100% - 250px);
  height: 200px;
  background: #fff;
  overflow-y: auto;
}

#news .detailArea::-webkit-scrollbar {
  background: #d8d8d8;
  width: 10px;
}

#news .detailArea::-webkit-scrollbar-thumb {
  background-color: #737373;
}

#news .detailArea::-webkit-scrollbar-thumb:hover {
  background-color: #737373;
}

#news .detailArea ul {
  padding: 15px 20px;
}

#news .detailArea li {
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid #d8d8d8;
}

#news .detailArea li:last-child {
  margin: 0;
  border: none;
}

#news .detailArea li .ttl {
  padding-bottom: 10px;
}

#news .detailArea li .date {
  width: 100px;
  font-weight: 700;
  color: #666;
}

#news .detailArea li h3 {
  width: calc(100% - 100px);
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}

#news .detailArea li .detail p {
  padding-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.7;
}

#news .detailArea li .detail p a {
  color: #e93030;
}

@media (max-width:767px) {
  #news {
    margin: 80px 0 30px;
    padding: 0;
  }

  #news .ttlArea {
    width: 100%;
    background: #fff;
  }

  #news .ttlArea h2 {
    justify-content: center;
  }

  #news .ttlArea h2 img {
    width: 40px;
  }

  #news .ttlArea h2 .en {
    font-size: 2.4rem;
  }

  #news .ttlArea h2 .jp {
    font-size: 1.3rem;
  }

  #news .detailArea {
    width: 100%;
    height: 200px;
    border: 10px solid #f4f4f4;
  }

  #news .detailArea::-webkit-scrollbar {
    width: 6px;
  }

  #news .detailArea li {
    padding-bottom: 5px;
    margin-bottom: 10px;
  }

  #news .detailArea li .date {
    width: 100%;
  }

  #news .detailArea li h3 {
    width: 100%;
    font-size: 1.4rem;
  }

  #news .detailArea li .detail p {
    padding-bottom: 10px;
    font-size: 1.3rem;
  }

}

/* movie
-------------------------------------------------------------- */
#movie .ttlArea {
  margin-bottom: 20px;
  justify-content: space-between;
  align-items: center;
  border-bottom: 2px solid #252525;
}

#movie .ttlArea h2 {
  align-items: center;
}

#movie .ttlArea h2 img {
  margin-bottom: 10px;
}

#movie .ttlArea h2 span {
  display: inline-block;
  line-height: 1;
}

#movie .ttlArea h2 .en {
  margin: 0 10px 8px;
  font-size: 2.6rem;
  font-weight: 600;
}

#movie .ttlArea h2 .jp {
  font-size: 1.4rem;
}

#movie .ttlArea .btn a {
  margin-right: 10px;
  gap: 5px;
}

#movie .ttlArea .btn img {
  transform: rotate(90deg);
}

#movie .ttlArea .btn span {
  font-weight: 500;
}

#movie .movieWrap {
  gap: 20px;
}

#movie .movieWrap .movieBox {
  width: calc(50% - 10px);
}

#movie .movieWrap .movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  height: 0;
}

#movie .movieWrap .movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@media (max-width:767px) {
  #movie .ttlArea {
    border-bottom: 1px solid #252525;
  }

  #movie .ttlArea h2 img {
    width: 40px;
  }

  #movie .ttlArea h2 .en {
    font-size: 2.4rem;
  }

  #movie .ttlArea h2 .jp {
    font-size: 1.3rem;
  }

  #movie .ttlArea .btn a {
    margin-right: 5px;
  }

  #movie .ttlArea .btn img {
    width: 18px;
  }

  #movie .movieWrap .movieBox {
    margin: auto;
    width: 80%;
  }

}

/* location
-------------------------------------------------------------- */
#location {
  padding: 50px 0;
}

#location h2 {
  margin-bottom: 20px;
  align-items: center;
  border-bottom: 2px solid #252525;
}

#location h2 img {
  margin-bottom: 10px;
}

#location h2 span {
  display: inline-block;
  line-height: 1;
}

#location h2 .en {
  margin: 0 10px 8px;
  font-size: 2.6rem;
  font-weight: 600;
}

#location h2 .jp {
  font-size: 1.4rem;
}

#location .locationWrap {
  gap: 20px;
}

#location .locationWrap .locationBox {
  position: relative;
  justify-content: space-between;
  padding: 20px;
  width: calc(50% - 10px);
}

#location .locationWrap .locationBox.location01 {
  background: #ebe2d9;
}

#location .locationWrap .locationBox.location02 {
  background: #eee6f2;
}

#location .locationWrap .locationBox.location03 {
  background: #d0e5ea;
}

#location .locationWrap .locationBox.location04 {
  background: #f1d7dd;
}

#location .locationWrap .locationBox.location05 {
  background: #dfe3f3;
}

#location .locationWrap .locationBox.location06 {
  background: #ececd9;
}

#location .locationWrap .locationBox .cat {
  position: absolute;
  top: 20px;
  left: -5px;
  display: inline-block;
  color: #fff;
  padding: 8px 20px;
  font-size: 1.2rem;
  line-height: 1;
  z-index: 2;
}

#location .locationWrap .locationBox .cat:before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 5px transparent;
}

#location .locationWrap .locationBox.location01 .cat {
  background: #7b4a1c;
}

#location .locationWrap .locationBox.location01 .cat:before {
  border-right: solid 5px #7b4a1c;
}

#location .locationWrap .locationBox.location02 .cat {
  background: #551576;
}

#location .locationWrap .locationBox.location02 .cat:before {
  border-right: solid 5px #551576;
}

#location .locationWrap .locationBox.location03 .cat {
  background: #156576;
}

#location .locationWrap .locationBox.location03 .cat:before {
  border-right: solid 5px #156576;
}

#location .locationWrap .locationBox.location04 .cat {
  background: #76152c;
}

#location .locationWrap .locationBox.location04 .cat:before {
  border-right: solid 5px #76152c;
}

#location .locationWrap .locationBox.location05 .cat {
  background: #152876;
}

#location .locationWrap .locationBox.location05 .cat:before {
  border-right: solid 5px #152876;
}

#location .locationWrap .locationBox.location06 .cat {
  background: #757615;
}

#location .locationWrap .locationBox.location06 .cat:before {
  border-right: solid 5px #757615;
}

#location .locationWrap .locationBox figure {
  position: relative;
  width: 45%;
}

#location .locationWrap .locationBox figure a {
  display: block;
}

#location .locationWrap .locationBox figure::after {
  position: absolute;
  bottom: 3px;
  right: 3px;
  width: 23px;
  height: 22px;
  background: url(../img/common/ico_search.svg) no-repeat center / contain;
  content: "";
}

#location .locationWrap .locationBox dl {
  width: 50%;
}

#location .locationWrap .locationBox dt {
  padding: 5px 0;
  font-weight: 700;
  line-height: 1.5;
}

#location .locationWrap .locationBox dd {
  font-size: 1.4rem;
  line-height: 1.5;
}

@media (max-width:767px) {
  #location h2 {
    border-bottom: 1px solid #252525;
  }

  #location h2 img {
    width: 40px;
  }

  #location h2 .en {
    font-size: 2.4rem;
  }

  #location h2 .jp {
    font-size: 1.3rem;
  }

  #location .btn a {
    margin-right: 5px;
  }

  #location .btn img {
    width: 18px;
  }

  #location .locationWrap .locationBox {
    display: block;
    padding: 10px 10px 20px;
  }

  #location .locationWrap .locationBox .cat {
    top: 10px;
    padding: 6px 10px;
    font-size: 1rem;
  }

  #location .locationWrap .locationBox .cat:before {
    border-bottom: solid 3px transparent;
  }

  #location .locationWrap .locationBox figure {
    width: 100%;
  }

  #location .locationWrap .locationBox figure::after {
    width: 16px;
    height: 15px;
  }

  #location .locationWrap .locationBox dl {
    width: 100%;
  }

  #location .locationWrap .locationBox dd {
    font-size: 1.2rem;
  }
}


/* bnrArea
-------------------------------------------------------------- */
.bnrArea ul {
  padding-bottom: 30px;
  justify-content: space-between;
}

.bnrArea li {
  width: 48.9%;
}

.bnrArea li:first-child {
  width: 51%;
  margin-top: -15px;
}

@media (max-width:767px) {
  .bnrArea ul {
    margin: auto;
    max-width: 70%;
  }

  .bnrArea li {
    width: 97%;
  }

  .bnrArea li:first-child {
    width: 100%;
    margin-top: -15px;
  }
}