.catch:before {
  content: none; }

.catch .shopBox {
  overflow: hidden;
  height: 0;
  padding-bottom: 15%; }

.catch .textBox .title {
  font-size: 30px; }

.mainContent {
  max-width: 1500px;
  margin: auto; }
  .mainContent .shopList {
    position: relative;
    max-width: 900px;
    margin: 3% auto 3%;
    padding: 3%;
    color: white;
    background: black; }
    .mainContent .shopList:before {
      position: absolute;
      z-index: 0;
      top: 0;
      left: 0;
      display: block;
      content: '';
      border-top: 30px solid #22140F;
      border-right: 30px solid transparent;
      border-bottom: 30px solid transparent;
      border-left: 30px solid #372018; }
    .mainContent .shopList .titleBox {
      position: relative;
      text-align: right; }
      .mainContent .shopList .titleBox .title {
        font-size: 40px;
        font-weight: lighter;
        text-align: center;
        position: absolute;
        top: 50%;
        transform: translate(0, -50%);
        width: 100%;
        color: #a76e38; }
        .mainContent .shopList .titleBox .title .en {
          font-size: 16px;
          font-weight: lighter;
          display: block;
          color: #a76e38; }
      .mainContent .shopList .titleBox .bg {
        width: 50%; }
    .mainContent .shopList .shopItem .textBox {
      font-size: 14px;
      line-height: 1.6;
      margin: 10% auto;
      text-align: left;
      line-height: 2;
      text-align: center; }
    .mainContent .shopList .shopItem .galleryBox {
      margin-bottom: 100px; }
      .mainContent .shopList .shopItem .galleryBox .prevBtn {
        position: absolute;
        top: 50%;
        left: 0;
        z-index: 1;
        transform: translate(120px, -50%); }
        .mainContent .shopList .shopItem .galleryBox .prevBtn img {
          width: 20px; }
      .mainContent .shopList .shopItem .galleryBox .nextBtn {
        width: 20px;
        position: absolute;
        top: 50%;
        right: 0;
        z-index: 1;
        transform: translate(-120px, -50%); }
        .mainContent .shopList .shopItem .galleryBox .nextBtn img {
          width: 20px; }
      .mainContent .shopList .shopItem .galleryBox .sliderBox .item img {
        width: 100%;
        margin: auto;
        opacity: 0.3;
        transition: 0.4s 0.1s; }
      .mainContent .shopList .shopItem .galleryBox .sliderBox .item.slick-current img {
        opacity: 1;
        transition: 0.4s 0.1s; }
    .mainContent .shopList .shopItem .info {
      width: 45%;
      float: right;
      line-height: 1.8;
      letter-spacing: 0.05em; }
      .mainContent .shopList .shopItem .info .infoTitleBox .infoTitle {
        line-height: 1;
        font-size: 20px;
        margin-bottom: 15px;
        color: #a76e38;
        font-weight: normal; }
      .mainContent .shopList .shopItem .info .access {
        margin-bottom: 10px;
        border-bottom: 1px solid #474747;
        padding-bottom: 10px; }
      .mainContent .shopList .shopItem .info dl dt {
        float: left;
        width: 15%; }
      .mainContent .shopList .shopItem .info dl dd {
        float: left;
        width: 80%; }
        .mainContent .shopList .shopItem .info dl dd:before {
          content: ":";
          color: gray;
          margin-right: 10px; }
  .mainContent .mapBox {
    width: 50%;
    float: left; }
    .mainContent .mapBox #map_canvas, .mainContent .mapBox #map_canvas02 {
      padding-bottom: 60%; }
    .mainContent .mapBox .title {
      text-align: center; }
    .mainContent .mapBox .toMapBtn {
      font-size: 14px;
      margin: 5% 0; }
      .mainContent .mapBox .toMapBtn a {
        line-height: 20px;
        display: inline-block;
        padding: 2% 10%;
        width: 80%;
        text-align: center;
        text-decoration: none;
        background: #372018; }
        .mainContent .mapBox .toMapBtn a:hover {
          transition: 0.3s;
          background: #9A6430; }
        .mainContent .mapBox .toMapBtn a img {
          width: auto;
          height: 20px;
          vertical-align: middle; }
  .mainContent .company {
    width: 80%;
    margin: auto;
    padding: 5% 5% 10%;
    color: black;
    border: 1px solid #b7b7b7; }
    .mainContent .company .title {
      font-size: 18px;
      margin-bottom: 10px;
      padding-bottom: 10px;
      border-bottom: 1px solid gray; }
    .mainContent .company .subtitle {
      font-size: 11px;
      font-weight: bold;
      line-height: 1;
      margin: 14px 0 5px;
      padding-left: 4px;
      border-left: 2px solid gray; }
  .mainContent .companyBox {
    position: relative;
    color: black;
    max-width: 900px;
    margin: 3% auto 3%;
    padding: 3%;
    background: rgba(247, 246, 244, 0.7); }
    .mainContent .companyBox .title {
      font-size: 24px;
      border-bottom: 1px dashed gray;
      margin-bottom: 20px; }
    .mainContent .companyBox .subtitle {
      border-left: 4px solid gray;
      margin-top: 20px;
      line-height: 1;
      padding-left: 5px;
      margin-bottom: 5px; }
