@charset "UTF-8";

/* contents
---------------------------------------------------------- */
@media screen and (max-width: 767px) {
  .contents { padding-bottom: 30px; }
}


/* sec-top-open
---------------------------------------------------------- */
.sec-top-open { padding-bottom: 100px; }

@media screen and (max-width: 767px) {
  .sec-top-open { padding-bottom: 50px; }
}

/* sec-top-01
---------------------------------------------------------- */
.sec-top-01 { padding-bottom: 100px; }

@media screen and (max-width: 767px) {
  .sec-top-01 { padding-bottom: 50px; }
}

/* sec-top-02
---------------------------------------------------------- */
.sec-top-02 {
  padding: 85px 0 30px;
  background: url("/n_mori/img/bg_top_sec_01.png") repeat;
}

@media screen and (max-width: 767px) {
  .sec-top-02 {
    padding: 20px 0;
    background-size: 119px 164px;
  }
}

/* sec-top-03
---------------------------------------------------------- */
.sec-top-03 { padding: 40px 0 0; }

@media screen and (max-width: 767px) {
  .sec-top-03 { padding: 30px 0 0; }
}

/* sec-top-04
---------------------------------------------------------- */
.sec-top-04 {
  padding: 40px 0;
  background: url("/n_mori/img/bg_top_sec_01.png") repeat;
}

@media screen and (max-width: 767px) {
  .sec-top-04 { padding: 45px 0 35px; }
}

/* sec-top-05
---------------------------------------------------------- */
.sec-top-05 { padding-top: 90px; }

@media screen and (max-width: 767px) {
  .sec-top-05 { padding-top: 22px; }
}

/* ico-top-calendar
---------------------------------------------------------- */
.ico-top-calendar { padding-left: 50px; }
  .ico-top-calendar:before {
    position: absolute;
    top: -10px;
    left: 0;
    width: 42px;
    height: 44px;
    background: url("/n_mori/common/img/ico_calendar_03.png") no-repeat;
    background-size: 42px 44px;
    content: "";
  }

@media screen and (max-width: 767px) {
  .ico-top-calendar { padding-left: 25px; }
    .ico-top-calendar:before {
      top: 0;
      width: 21px;
      height: 22px;
      background-size: 21px 22px;
    }
}

/* ico-top-news
---------------------------------------------------------- */
.ico-top-news { padding-left: 44px; }
  .ico-top-news:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 36px;
    background: url("/n_mori/common/img/ico_pc_01.png") no-repeat;
    content: "";
  }

@media screen and (max-width: 767px) {
  .ico-top-news { padding-left: 24px; }
    .ico-top-news:before {
      top: 4px;
      width: 20px;
      height: 18px;
      background-size: 20px 18px;
    }
}

/* ico-top-tree
---------------------------------------------------------- */
.ico-top-tree { padding-left: 42px; }
  .ico-top-tree:before {
    position: absolute;
    bottom: 5px;
    left: 0;
    width: 42px;
    height: 66px;
    background: url("/n_mori/common/img/ico_tree_01.png") no-repeat;
    content: "";
  }

@media screen and (max-width: 767px) {
  .ico-top-tree { padding-left: 28px; }
    .ico-top-tree:before {
      bottom: 5px;
      width: 21px;
      height: 33px;
      background-size: 21px 33px;
    }
}

/* ico-top-gallery
---------------------------------------------------------- */
.ico-top-gallery { padding-left: 70px; }
  .ico-top-gallery:before {
    position: absolute;
    bottom: 5px;
    left: 0;
    width: 58px;
    height: 60px;
    background: url("/n_mori/common/img/ico_gallery_01.png") no-repeat;
    content: "";
  }

@media screen and (max-width: 767px) {
  .ico-top-gallery { padding-left: 34px; }
    .ico-top-gallery:before {
      bottom: 5px;
      width: 29px;
      height: 30px;
      background-size: 29px 30px;
    }
}

/* ico-top-useful
---------------------------------------------------------- */
.ico-top-useful { padding-left: 44px; }
  .ico-top-useful:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 36px;
    height: 36px;
    background: url("/n_mori/common/img/ico_important_02.png") no-repeat;
    content: "";
  }

@media screen and (max-width: 767px) {
  .ico-top-useful { padding-left: 24px; }
    .ico-top-useful:before {
      top: 2px;
      width: 18px;
      height: 18px;
      background-size: 18px 18px;
    }
}

/* ico-top-window
---------------------------------------------------------- */
.ico-top-window { padding-left: 44px; }
  .ico-top-window:before {
    position: absolute;
    top: 2px;
    left: 0;
    width: 32px;
    height: 32px;
    background: url("/n_mori/common/img/ico_window_01.png") no-repeat;
    content: "";
  }

@media screen and (max-width: 767px) {
  .ico-top-window { padding-left: 21px; }
    .ico-top-window:before {
      width: 16px;
      height: 16px;
      background-size: 16px 16px;
    }
}

/* mod-top-hero
---------------------------------------------------------- */
.mod-top-hero {
  overflow: hidden;
  position: relative;
}
  .mod-top-hero .hero-top-slider {}
    .mod-top-hero .hero-top-slider .item-slider img { width: 100%; }
      .mod-top-hero .hero-top-slider .item-slider .image {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
      }
    .mod-top-hero .hero-top-slider .slick-arrow {
      overflow: hidden;
      position: absolute;
      top: 50%;
      z-index: 2;
      width: 50px;
      height: 50px;
      margin-top: -25px;
      outline: none;
      text-indent: -999px;
    }
    .mod-top-hero .hero-top-slider .slick-prev {
      left: 50%;
      margin-left: -600px;
      background: url("/n_mori/img/btn_hero_prev.png") no-repeat;
    }
    .mod-top-hero .hero-top-slider .slick-next {
      left: 50%;
      margin-left: 550px;
      background: url("/n_mori/img/btn_hero_next.png") no-repeat;
    }
    .mod-top-hero .hero-top-slider .slick-dots {
      position: absolute;
      top: 517px;
      right: 12px;
      z-index: 3;
    }
      .mod-top-hero .hero-top-slider .slick-dots li { margin-bottom: 14px; }
      .mod-top-hero .hero-top-slider .slick-dots li:last-child { margin-bottom: 0; }
        .mod-top-hero .hero-top-slider .slick-dots button {
          overflow: hidden;
          display: block;
          width: 12px;
          height: 12px;
          background: transparent;
          border: 2px solid #fff;
          border-radius: 10px;
          text-indent: -999px;
          font-size: 0;
          outline: none;
        }
        .mod-top-hero .hero-top-slider .slick-dots li.slick-active button { background-color: #fff; }
  .mod-top-hero .btn-scroll {
    position: absolute;
    left: 50%;
    bottom: 30px;
    z-index: 3;
    display: block;
    padding-bottom: 30px;
    background: url("/n_mori/img/ico_top_scroll.png") bottom center no-repeat;
    color: #fff;
    font-family: 'Noto Serif';
    font-size: 16px;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
   -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .mod-top-hero .hero-top-slider:after {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding-top: 3.4375%;
    background: url("/n_mori/img/bg_hero_frame_pc.png") bottom center no-repeat;
    background-size: cover;
    z-index: 2;
    content: "";
  }

@media screen and (min-width: 768px) and (max-width: 1230px) {
  .mod-top-hero .hero-top-slider .slick-prev {
    left: 60px;
    margin-left: 0;
  }
  .mod-top-hero .hero-top-slider .slick-next {
    left: auto;
    right: 60px;
    margin-left: 0;
  }
}

@media screen and (min-width: 768px) {
  .mod-top-hero .hero-top-slider .slick-dots button:hover { background: #fff; }
  .mod-top-hero .hero-top-slider .slick-arrow:hover, .mod-top-hero .btn-scroll:hover { opacity: 0.7};
}

@media screen and (max-width: 767px) {
  .mod-top-hero .hero-top-slider:after { display: none; }
  .mod-top-hero .btn-scroll { display: none; }
}

/* box-top-news-wrapper
---------------------------------------------------------- */
.box-top-news-wrapper {
  position: relative;
  min-height: 716px;
}
  .box-top-news-wrapper .ttl-cmn-01 { margin-bottom: 40px; }

@media screen and (max-width: 1024px) {
  .box-top-news-wrapper { min-height: 0; }
    .box-top-news-wrapper .ttl-cmn-01,
    .box-top-news-wrapper .box-button,
    .box-top-news-wrapper .mod-top-news .box-info { padding-right: 0; }
    .box-top-news-wrapper .ttl-cmn-01 { margin-bottom: 6px; }
    .box-top-news-wrapper .box-button { margin-bottom: 45px; }
}

/* box-top-gallery-wrapper
---------------------------------------------------------- */
.box-top-gallery-wrapper {
  position: relative;
  min-height: 716px;
}
  .box-top-gallery-wrapper .ttl-cmn-01,
  .box-top-gallery-wrapper .mod-card-list-01,
  .box-top-gallery-wrapper .box-button { padding-right: 280px; }
  .box-top-gallery-wrapper .ttl-cmn-01 { margin-bottom: 40px; }
  .box-top-gallery-wrapper .mod-top-news .box-info { padding-right: 290px; }
  
  .box-top-gallery-wrapper .mod-card-list-01 .box-card-slider .item { width: 49%; }

@media screen and (max-width: 1024px) {
  .box-top-gallery-wrapper { min-height: 0; }
    .box-top-gallery-wrapper .ttl-cmn-01,
    .box-top-gallery-wrapper .mod-card-list-01,
    .box-top-gallery-wrapper .box-button { padding-right: 0; }
    .box-top-gallery-wrapper .ttl-cmn-01 { margin-bottom: 15px; }
    .box-top-gallery-wrapper .box-button { margin-bottom: 45px; }
}

@media screen and (max-width: 767px) {
    .mod-card-list-01 .box-card .image img { margin: 0 auto; }
}

/* btn-top-gallery
---------------------------------------------------------- */
.btn-top-gallery {
  position: absolute;
  top: 35px;
  right: 300px;
  display: block;
  padding-left: 20px;
  background: url("/n_mori/common/img/ico_bullet_01.png") left center no-repeat;
  font-family: 'Sawarabi Mincho';
  font-size: 16px;
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .btn-top-gallery { top: 50px; }
}

@media screen and (max-width: 767px) {
  .btn-top-gallery { display: none; }
}

/* box-top-lunch
---------------------------------------------------------- */
.box-top-lunch {
  position: absolute;
  top: 45px;
  right: 0;
  z-index: 1;
  width: 280px;
  height: 716px;
  padding: 105px 28px 0;
  background: url("/n_mori/img/bg_top_lunch_01_pc.png") no-repeat;
}
  .box-top-lunch .ttl-main { margin-bottom: 5px; }
    .box-top-lunch .ttl-main .ttl-inner {
      display: block;
      padding-left: 45px;
      background: url("/n_mori/img/ico_lunch_01.png") left center no-repeat;
      font-family: 'Sawarabi Mincho';
      font-size: 17px;
      line-height: 1.2;
      letter-spacing: -1px;
    }
      .box-top-lunch .ttl-main small {
        display: block;
        font-size: 21px;
        letter-spacing: normal;
      }
  .box-top-lunch .ttl-sub {
    margin-bottom: 5px;
    font-family: 'Sawarabi Mincho';
    font-size: 18px;
    text-align: center;
  }
    .box-top-lunch .ttl-sub .icon {
      display: inline-block;
      padding: 2px 0 0 18px;
      background: url("/n_mori/img/ico_lunch_02.png") left center no-repeat;
      padding-left: 18px;
    }
  .box-top-lunch .box-lunch-menu { padding: 0 7px; }
    .box-top-lunch .box-menu-item { margin-bottom: 15px; }
    .box-top-lunch .box-menu-item:last-child { margin-bottom: 0; }
      .box-top-lunch .box-menu-item .image { margin-bottom: 10px; }
        .box-top-lunch .box-menu-item .image img { width: 100%; }
      .box-top-lunch .box-menu-item .ttl-menu {
        font-size: 14px;
        font-weight: bold;
        line-height: 1.2;
      }
      .box-top-lunch .box-menu-item .list-info {
        margin-bottom: 5px;
        font-size: 12px;
      }
        .box-top-lunch .box-menu-item .list-info dt {
          float: left;
          width: 34px;
          clear: left;
        }
        .box-top-lunch .box-menu-item .list-info dd { white-space: nowrap; }
      .box-top-lunch .box-menu-item .btn-menu-01 {
        position: relative;
        display: block;
        padding: 2px 0;
        background: #fff;
        border: 1px solid #0c0c0c;
        font-family: 'Sawarabi Mincho';
        font-size: 14px;
        text-align: center;  
        text-decoration: none;
      }
        .box-top-lunch .box-menu-item .btn-menu-01:after {
          position: absolute;
          width: 16px;
          height: 12px;
          top: 50%;
          right: 5px;
          margin-top: -6px;
          background: url("/n_mori/img/ico_arrow_01.png") no-repeat;
          content: "";
        }

@media screen and (min-width: 768px) {
  .box-top-lunch .box-menu-item .btn-menu-01:hover { opacity: 0.7; }
}

@media screen and (max-width: 1024px) {
  .box-top-lunch {
    position: static;
    width: auto;
    height: auto;    
    padding: 0;
    background: none;
    line-height: 1.4;
  }
    .box-top-lunch .box-top-lunch-in {
      width: 300px;
      height: 322px;
      margin: 0 auto;
      padding: 42px 15px 0;
      background: url("/n_mori/img/bg_top_lunch_01_sp.png") no-repeat;
      background-size: 300px 322px;
    }
    .box-top-lunch .ttl-main {
      margin-bottom: 15px;
      text-align: center;
    }
      .box-top-lunch .ttl-main .ttl-inner {
        display: inline-block;
        padding-left: 25px;
        background-size: 18px 22px;
        font-size: 19px;
        letter-spacing: normal;
      }
        .box-top-lunch .ttl-main small {
          display: inline;
          font-size: 19px;
        }
    .box-top-lunch .ttl-sub {
      margin-bottom: 8px;
      font-size: 15px;
    }
      .box-top-lunch .ttl-sub .icon {
        display: inline-block;
        padding: 0 0 0 12px;
        background: url("/n_mori/img/ico_lunch_02.png") left center no-repeat;
        background-size: 8px 11px;
      }
    .box-top-lunch .box-lunch-menu { padding: 0; }
    .box-top-lunch .box-menu-item { margin-bottom: 20px; }
    .box-top-lunch .box-menu-item:last-child { margin-bottom: 0; }
      .box-top-lunch .box-menu-item .image {
        float: left;
        width: 117px;
        margin: 0;
      }
      .box-top-lunch .box-menu-item .box-info {
        overflow: hidden;
        margin: 0;
        padding-left: 10px;
      }
        .box-top-lunch .box-menu-item .list-info dd {
          overflow: hidden;
          white-space: normal;
        }
      .box-top-lunch .box-menu-item .btn-menu-01 {
        clear: both;
        font-size: 10px;
      }
        .box-top-lunch .box-menu-item .btn-menu-01:after {
          width: 8px;
          height: 6px;
          margin-top: -3px;
          background-size: 8px 6px;
        }
}

/* list-top-contents-01
---------------------------------------------------------- */
.list-top-contents-01 {
  overflow: hidden;
  margin-bottom: 80px;
}
  .list-top-contents-01 li {
    float: left;
    width: 20%;
    font-family: 'Sawarabi Mincho';
    font-size: 24px;
  }
    .list-top-contents-01 .box-item {
      position: relative;
      display: block;
      text-decoration: none;
    }
      .list-top-contents-01 .box-item .image img { width: 100%; }
      .list-top-contents-01 .box-item .box-title {
        position: absolute;
        top: 50%;
        width: 100%;
        padding: 0 5px;
        text-align: center;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
      }
        .list-top-contents-01 .box-item .box-title .title {
          position: relative;
          padding-top: 60px;
          color: #fff;
          font-family: 'Sawarabi Mincho';
          line-height: 1.33;
          text-shadow: 0px 0px 13px rgba(132, 71, 43, 0.75);
        }
          .list-top-contents-01 .box-item .box-title .title:after {
            position: absolute;
            left: 50%;
            z-index: 0;
            -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            transform: translateX(-50%);
            content: "";
          }
          .list-top-contents-01 .box-item .box-title .icon-01:after {
            top: -20px;
            width: 68px;
            height: 82px;
            background: url("/n_mori/img/ico_content_01.png") no-repeat;
          }
          .list-top-contents-01 .box-item .box-title .icon-02:after {
            top: -5px;
            width: 52px;
            height: 56px;
            background: url("/n_mori/img/ico_content_02.png") no-repeat;
          }
          .list-top-contents-01 .box-item .box-title .icon-03:after {
            top: -10px;
            width: 98px;
            height: 74px;
            background: url("/n_mori/img/ico_content_03.png") no-repeat;
          }
          .list-top-contents-01 .box-item .box-title .icon-04:after {
            top: -35px;
            width: 108px;
            height: 94px;
            background: url("/n_mori/img/ico_content_04.png") no-repeat;
          }
          .list-top-contents-01 .box-item .box-title .icon-05:after {
            top: 0;
            width: 70px;
            height: 56px;
            background: url("/n_mori/img/ico_content_05.png") no-repeat;
          }

@media screen and (min-width: 768px) {
  .list-top-contents-01 .box-item:hover { opacity: 0.7; }
}

@media screen and (min-width: 768px) and (max-width: 1330px) {
  .list-top-contents-01 .box-item .box-title .title { font-size: 18px; }
}

@media screen and (max-width: 767px) {
  .list-top-contents-01 li {
    width: 33.333%;
    font-size: 8px;
  }
    .list-top-contents-01 li:nth-child(1),
    .list-top-contents-01 li:nth-child(2) {
      width: 50%;
      font-size: 12px;
    }
    .list-top-contents-01 li:nth-child(3) { clear: left; }
    .list-top-contents-01 .box-item .box-title .title {
      padding-top: 30px;
      font-size: 12px;
      text-shadow: 0px 0px 6px rgba(132, 71, 43, 0.75);
    }
      .list-top-contents-01 .box-item .box-title .icon-01:after {
        top: -9px;
        width: 34px;
        height: 41px;
        background-size: 34px 41px;
      }
      .list-top-contents-01 .box-item .box-title .icon-02:after {
        top: -7px;
        width: 26px;
        height: 28px;
        background-size: 26px 28px;
      }
      .list-top-contents-01 .box-item .box-title .icon-03:after {
        top: 0;
        width: 32px;
        height: 24px;
        background-size: 32px 24px;
      }
      .list-top-contents-01 .box-item .box-title .icon-04:after {
        top: -10px;
        width: 36px;
        height: 34px;
        background-size: 36px 34px;
      }
      .list-top-contents-01 .box-item .box-title .icon-05:after {
        top: 8px;
        width: 23px;
        height: 19px;
        background-size: 23px 19px;
      }
}

/* list-top-contents-02
---------------------------------------------------------- */
.list-top-contents-02 { overflow: hidden; }
  .list-top-contents-02 li {
    float: left;
    width: 33.3%;
  }
    .list-top-contents-02 li .box-item {
      position: relative;
      display: block;
      text-decoration: none;
    }
      .list-top-contents-02 li .box-item .image img { width: 100%; }
      .list-top-contents-02 .box-item .box-info {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        padding: 25px 38px 0;
        color: #fff;
      }
        .list-top-contents-02 .box-item .ttl-main {
          margin-bottom: 5px;
          font-family: 'Crimson Text';
          font-size: 40px;
          line-height: 1.2;
        }
        .list-top-contents-02 .box-item .ttl-sub {
          font-size: 16px;
          font-weight: bold;
          text-shadow: 0px 0px 13px rgba(132, 71, 43, 0.75);
        }

				.ttl-sub-txt {
					position: absolute;
					bottom: 0;
					right: 38px;
					
				}
				
      .list-top-contents-02 li:first-child .box-item .box-info {
        padding: 25px 38px 90%;
      }

@media screen and (min-width: 768px) {
  .list-top-contents-02 .box-item:hover { opacity: 0.7; }
}

@media screen and (min-width: 768px) and (max-width: 1330px) {
  .list-top-contents-02 .box-item .box-info { padding: 15px 20px 0; }
    .list-top-contents-02 .box-item .ttl-main { font-size: 28px; }
    .list-top-contents-02 .box-item .ttl-sub { font-size: 14px; }
      .list-top-contents-02 li:first-child .box-item .box-info { padding: 15px 20px 80%; }
				.ttl-sub-txt { right: 20px; }
}

@media screen and (max-width: 767px) {
  .list-top-contents-02 li { width: 100%; }
    .list-top-contents-02 li:nth-child(2n+1) { clear: left; }
      .list-top-contents-02 .box-item .box-info { padding: 10px 15px 0; }
        .list-top-contents-02 .box-item .ttl-main {
          font-size: 21px;
          line-height: 1.1;
        }
        .list-top-contents-02 .box-item .ttl-sub {
          font-size: 12px;
          text-shadow: 0px 0px 6px rgba(132, 71, 43, 0.75);
        }
				.ttl-sub-txt { right: 10px; }
      .list-top-contents-02 li:first-child .box-item .box-info { padding: 10px 15px 90%; }
				
}

/* bnr_top_artistclub
---------------------------------------------------------- */
.bnr_top_artistclub {
	position:relative;
}
.btn_artistclub {
	position:absolute;
	top: 83%;
	left: 1.5%;
}
.btn_artistclub2 {
	position:absolute;
	top: 70%;
	left: 1.5%;
}
.btn_artistclub3 {
	position:absolute;
	top: 70%;
	left: 16.4%;
}
.bnr_top_artistclub img {
	width: 100%;
}

.btn_artistclub a:hover, .btn_artistclub2 a:hover, .btn_artistclub3 a:hover {
	opacity: 0.7;
}

@media screen and (max-width: 767px) {	
.btn_artistclub img, .btn_artistclub2 img, .btn_artistclub3 img {
	width: 30%;
}
}

/* list-top-useful
---------------------------------------------------------- */
.list-top-useful {
  margin: -20px -10px 145px;
  text-align: center;
}
  .list-top-useful li { margin: 20px 5px 0; }
    .list-top-useful .box-useful {
      width: 150px;
      height: 120px;
      padding: 0 2px;
    }
    .list-top-useful .box-useful img { width: 100%; }
    /*  多言語向けスタイル
    ****************************************/
    .china .list-top-useful .box-useful, .eng .list-top-useful .box-useful {
      width: 180px;
    }
    
      .list-top-useful .box-useful .text {
        padding-top: 50px;
        font-family: 'Sawarabi Mincho';
        font-size: 14px;
        line-height: 1.1;
      }
        .list-top-useful .box-useful .icon-01 { background-position: center 4px; }
        .list-top-useful .box-useful .icon-02 { background-position: center top; }
        .list-top-useful .box-useful .icon-03 { background-position: center top; }
        .list-top-useful .box-useful .icon-04 { background-position: center top; }
        .list-top-useful .box-useful .icon-05 { background-position: center 5px; }
        .list-top-useful .box-useful .icon-06 {
          margin-top: -5px;
          padding-top: 55px;
          background-position: center top;
        }
        .list-top-useful .box-useful .icon-07 { background-position: center top; }

@media screen and (max-width: 767px) {
  .list-top-useful { margin: -15px -5px 25px; }
    .list-top-useful li { margin: 15px 5px 0; }
      .list-top-useful .box-useful {
        width: 75px;
        height: 65px;
        padding: 0;
      }
      /* 多言語向けスタイル
      ****************************************/
      .china .list-top-useful .box-useful, .eng .list-top-useful .box-useful {
        width: 91px;
      }
      
        .list-top-useful .box-useful .text {
          padding-top: 25px;
          font-size: 12px;
          letter-spacing: -0.5px;
        }
        .list-top-useful .box-useful .icon-01 {
          background-size: 15px 19px;
          background-position: center top;
        }
        .list-top-useful .box-useful .icon-01 { background-size: 15px 19px; }
        .list-top-useful .box-useful .icon-02 { background-size: 16px 23px; }
        .list-top-useful .box-useful .icon-03 { background-size: 21px 21px; }
        .list-top-useful .box-useful .icon-04 { background-size: 20px 20px; }
        .list-top-useful .box-useful .icon-05 { background-size: 28px 20px; }
        .list-top-useful .box-useful .icon-06 {
          padding-top: 30px;
          background-size: 18px 24px;
        }
        .list-top-useful .box-useful .icon-07 { background-size: 28px 24px; }
}

/* box-top-links
---------------------------------------------------------- */
.box-top-links {
  overflow: hidden;
  position: relative;
}
  .box-top-links .box-links-slider { margin: -20px 0 0 -52px; }
    .box-top-links .item {
      float: left;
      width: 25%;
      margin-top: 20px;
      padding-left: 52px;
    }
      .box-top-links .box-card-link { display: block; }
        .box-top-links .box-card-link .image img { width: 100%; }

@media screen and (min-width: 768px) {
  .box-top-links .box-card-link:hover { opacity: 0.7; }
}

@media screen and (max-width: 767px) {
  .box-top-links .box-links-slider {
    margin: 0 0 0 -25px;
    padding-bottom: 40px;
  }
    .box-top-links .item {
      margin-top: 0;
      padding-left: 25px;
    }
      .box-top-links .box-links-slider .slick-arrow {
        overflow: hidden;
        position: absolute;
        bottom: 0;
        right: 0;
        width: 25px;
        height: 25px;
        outline: none;
        text-indent: -999px;
      }
      .box-top-links .box-links-slider .slick-prev {
        right: 30px;
        background: url("/n_mori/common/img/btn_prev_01.png") no-repeat;
        background-size: 25px 25px;
      }
      .box-top-links .box-links-slider .slick-next {
        right: 0;
        background: url("/n_mori/common/img/btn_next_01.png") no-repeat;
        background-size: 25px 25px;
      }
}


.top-open-ttl {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
  font-family: 'Sawarabi Mincho';
  font-size: 26px;
}
  .top-open-ttl::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 34px;
    margin-right: 10px;
    background: url("../img/ico_open.png") no-repeat;
  }
.top-open-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 40px 20px 20px;
  background-color: #f6f4f2;
  font-family: 'Sawarabi Mincho';
}
  .top-open-list li {
    width: 12.28%;
    margin-right: 2.19%;
    margin-bottom: 30px;
  }
    .top-open-list li:last-child {
      margin-right: 0;
    }
    .top-open-list li figure {
      margin-bottom: 5px;
      border: 1px solid #777777;
      background-color: #e4e4e4;
      text-align: center;
    }
      .top-open-list li img {
        max-width: 100%;
      }
    .top-open-list li .top-open-status {
      font-size: 16px;
      text-align: center;
    }
    .top-open-list li .top-open-note1 {
      text-align: center;
      line-height: 1.3;
      font-size: 13px;
    }
    .top-open-list li .top-open-note2 {
      font-size: 13px;
      text-align: right;
      line-height: 1.3;
    }
    
    .top-open-list li.is-open figure {
      background-color: #fff;
    }
    .top-open-list li.is-open .top-open-status {
      color: #749f52;
    }
    
    .top-open-list li.is-holiday .top-open-status {
      color: #b04032;
    }
.top-open-sp {
  display: none;
}
@media screen and (max-width: 1024px) {
  .top-open-list {
    display: block;
    padding-top: 20px;
  }
    .top-open-list li {
      display: flex;
      align-items: center;
      width: 100%;
      margin-right: 0;
      margin-bottom: 0;
      padding-top: 10px;
      padding-bottom: 10px;
      border-top: 1px solid #777777;
    }
    .top-open-list li:last-child {
      border-bottom: 1px solid #777777;
    }
      .top-open-col {
        padding-left: 10px;
        font-size: 14px;
      }
        .top-open-col:first-child {
          width: 15%;
          padding-left: 0;
        }
        .top-open-col:nth-child(2) {
          width: 42%;
        }
        .top-open-col:last-child {
          width: 43%;
        }
      .top-open-list li .top-open-status {
        font-size: 100%;
        text-align: left;
      }
      .top-open-list li .top-open-note1 {
        text-align: left;
        font-size: 14px;
      }
      .top-open-list li .top-open-note2 {
        text-align: left;
      }
  .top-open-pc {
    display: none;
  }
  .top-open-sp {
    display: block;
  }
  img.top-open-sp {
    display: inline;
  }
}