@charset "UTF-8";
.header {
  display: none; }
  @media (max-width: 1100px) {
    .header {
      display: flex; } }
  .header.active {
    display: flex !important; }

.slider {
  position: relative;
  width: 100%;
  height: 100vh;
  z-index: 1;
  overflow: hidden; }
  .slider::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 2;
    background-color: rgba(0, 0, 0, 0.4); }
@-webkit-keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  100% {
    -webkit-transform: scale(1.15);
    transform: scale(1.15); } }
@keyframes zoomUp {
  /* 1.15倍させる指定 */
  0% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  100% {
    -webkit-transform: scale(1.15);
    transform: scale(1.15); } }
  .slider swiper-container {
    position: relative; }
  .slider .swiper-slide {
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .slider .swiper-slide-active .swiper-img,
  .slider .swiper-slide-duplicate-active .swiper-img,
  .slider .swiper-slide-prev .swiper-img {
    /* ８秒かけて拡大させる */
    -webkit-animation: zoomUp 8s linear 0s;
    animation: zoomUp 8s linear 0s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both; }
  .slider .swiper-img {
    background-size: cover;
    background-position: center center;
    /* 背景画像は中央を軸に表示させる */
    height: 100vh; }
    .slider .swiper-img.slider01 {
      background-image: url("../images/top/pc_slide01.jpg"); }
    .slider .swiper-img.slider02 {
      background-image: url("../images/top/pc_slide02.jpg"); }
    .slider .swiper-img.slider03 {
      background-image: url("../images/top/pc_slide03.jpg"); }
  .slider .on-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    line-height: 1.5;
    z-index: 3;
    width: 90%; }
    @media (max-width: 768px) {
      .slider .on-text {
        padding-top: 75px; } }
    .slider .on-text .logo {
      max-width: 26.0rem;
      margin: 0 auto 5.0rem; }
    .slider .on-text .menu {
      display: flex;
      justify-content: center;
      align-items: center; }
      @media (max-width: 768px) {
        .slider .on-text .menu {
          display: none; } }
      .slider .on-text .menu li {
        margin: 0 1.0rem; }
        .slider .on-text .menu li a {
          display: block;
          color: #fff;
          font-size: 1.4rem;
          line-height: 1;
          position: relative; }
        .slider .on-text .menu li:last-child {
          width: 1.5rem; }

.opening {
  position: relative;
  z-index: 98;
  margin-bottom: 95px; }
  @media (max-width: 768px) {
    .opening {
      margin-bottom: 135px; } }
  .opening-block {
    width: 94%;
    max-width: 1068px;
    margin: 0 auto;
    box-shadow: 0px 1px 20px 7px rgba(187, 187, 187, 0.4); }
    .opening-block .top {
      position: absolute;
      width: 94%;
      max-width: 1068px;
      height: 20px;
      line-height: 0;
      top: -20px;
      left: 50%;
      transform: translateX(-50%);
      z-index: 99;
      background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 70%, white 71%, white 100%);
      /* FF3.6-15 */
      background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 70%, white 71%, white 100%);
      /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 70%, white 71%, white 100%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
      /* IE6-9 */ }
      .opening-block .top img {
        width: 100%; }
      @media (max-width: 768px) {
        .opening-block .top {
          background: url("../images/top/opening_bg_sp.png") no-repeat center top;
          background-size: 100%;
          height: 30px;
          top: -30px; }
          .opening-block .top img {
            display: none; } }
    .opening-block .bottom {
      background-color: #fff;
      display: flex;
      justify-content: space-between;
      padding: 15px 35px 60px; }
      @media (max-width: 768px) {
        .opening-block .bottom {
          display: block;
          padding: 15px 2.9% 40px; } }
      .opening-block .bottom .open-close {
        width: 64%;
        display: flex;
        flex-flow: column; }
        @media (max-width: 768px) {
          .opening-block .bottom .open-close {
            width: 100%; } }
        .opening-block .bottom .open-close .title {
          font-size: 1.8rem;
          border-bottom: 1px solid #000;
          padding: 10px 0 5px; }
          @media (max-width: 768px) {
            .opening-block .bottom .open-close .title {
              font-size: 2.0rem;
              text-align: center; } }
        .opening-block .bottom .open-close .close .text-area {
          padding: 25px 35px 25px 35px; }
          @media (max-width: 768px) {
            .opening-block .bottom .open-close .close .text-area {
              padding: 30px 2.9% 25px; } }
          .opening-block .bottom .open-close .close .text-area .text01 {
            font-size: 2.8rem;
            line-height: 1.5; }
            @media (max-width: 768px) {
              .opening-block .bottom .open-close .close .text-area .text01 {
                font-size: 3.0rem;
                text-align: center; } }
          @media (max-width: 768px) {
            .opening-block .bottom .open-close .close .text-area .date {
              text-align: center;
              font-size: 1.8rem; } }
          .opening-block .bottom .open-close .close .text-area .text02 {
            font-size: 1.4rem;
            color: #b02004;
            margin-top: 10px; }
            @media (max-width: 768px) {
              .opening-block .bottom .open-close .close .text-area .text02 {
                text-align: center;
                font-size: 1.6rem;
                line-height: 1.5;
                margin-top: 30px; } }
        .opening-block .bottom .open-close .pre .text-area {
          padding: 25px 35px 25px 20px; }
          @media (max-width: 768px) {
            .opening-block .bottom .open-close .pre .text-area {
              padding: 30px 2.9% 25px; } }
          .opening-block .bottom .open-close .pre .text-area .text01 {
            font-size: 2.8rem;
            line-height: 1.5; }
            @media (max-width: 768px) {
              .opening-block .bottom .open-close .pre .text-area .text01 {
                font-size: 3.0rem;
                text-align: center; } }
          @media (max-width: 768px) {
            .opening-block .bottom .open-close .pre .text-area .date {
              text-align: center;
              font-size: 1.8rem; } }
        .opening-block .bottom .open-close .pre .exibi-area {
          padding: 25px 35px 25px 30px;
          margin-bottom: 20px;
          background-color: #f9f9f9; }
          @media (max-width: 768px) {
            .opening-block .bottom .open-close .pre .exibi-area {
              padding: 30px 2.9% 25px; } }
          .opening-block .bottom .open-close .pre .exibi-area dl {
            margin-bottom: 12px; }
            .opening-block .bottom .open-close .pre .exibi-area dl dt {
              font-size: 1.4rem;
              margin-bottom: 3px;
              line-height: 1; }
            .opening-block .bottom .open-close .pre .exibi-area dl dd {
              font-size: 1.7rem;
              line-height: 1.5; }
              .opening-block .bottom .open-close .pre .exibi-area dl dd .text02 {
                font-size: 2rem;
                color: #b02004;
                line-height: 1.5; }
                .opening-block .bottom .open-close .pre .exibi-area dl dd .text02 span {
                  font-size: 1.6rem; }
          .opening-block .bottom .open-close .pre .exibi-area .sp-link a {
            text-decoration: underline;
            font-size: 1.4rem; }
            .opening-block .bottom .open-close .pre .exibi-area .sp-link a:hover {
              opacity: 0.5; }
        .opening-block .bottom .open-close .open {
          display: flex;
          flex-flow: column; }
          .opening-block .bottom .open-close .open .text-area {
            padding: 25px 35px 24px 25px; }
            @media (max-width: 768px) {
              .opening-block .bottom .open-close .open .text-area {
                padding: 30px 2.9% 30px; } }
            .opening-block .bottom .open-close .open .text-area .text01 {
              font-size: 2.8rem;
              line-height: 1.5;
              color: #b02004; }
              @media (max-width: 768px) {
                .opening-block .bottom .open-close .open .text-area .text01 {
                  font-size: 3.0rem;
                  text-align: center; } }
            @media (max-width: 768px) {
              .opening-block .bottom .open-close .open .text-area .date {
                text-align: center;
                font-size: 1.8rem; } }
            .opening-block .bottom .open-close .open .text-area .text02 {
              font-size: 1.4rem;
              margin-top: 10px; }
              @media (max-width: 768px) {
                .opening-block .bottom .open-close .open .text-area .text02 {
                  text-align: center;
                  font-size: 1.6rem;
                  line-height: 1.5;
                  margin-top: 30px; } }
          .opening-block .bottom .open-close .open .exibi-area {
            padding: 25px 35px 25px 30px;
            margin-bottom: 20px;
            background-color: #f9f9f9; }
            @media (max-width: 768px) {
              .opening-block .bottom .open-close .open .exibi-area {
                padding: 30px 2.9% 25px; } }
            .opening-block .bottom .open-close .open .exibi-area dl {
              margin-bottom: 12px; }
              .opening-block .bottom .open-close .open .exibi-area dl dt {
                font-size: 1.4rem;
                margin-bottom: 3px;
                line-height: 1; }
              .opening-block .bottom .open-close .open .exibi-area dl dd {
                font-size: 1.7rem;
                line-height: 1.5; }
                .opening-block .bottom .open-close .open .exibi-area dl dd .text02 {
                  font-size: 2rem;
                  color: #b02004;
                  line-height: 1.5; }
                  .opening-block .bottom .open-close .open .exibi-area dl dd .text02 span {
                    font-size: 1.6rem; }
            .opening-block .bottom .open-close .open .exibi-area .inui {
              margin-bottom: 20px;
              font-size: 1.2rem;
              line-height: 1.2; }
              .opening-block .bottom .open-close .open .exibi-area .inui span {
                color: #b02004; }
            .opening-block .bottom .open-close .open .exibi-area .sp-link a {
              text-decoration: underline;
              font-size: 1.4rem; }
              .opening-block .bottom .open-close .open .exibi-area .sp-link a:hover {
                opacity: 0.5; }
        .opening-block .bottom .open-close .banner {
          margin-top: auto; }
          @media (max-width: 768px) {
            .opening-block .bottom .open-close .banner img {
              width: 100%; } }
        .opening-block .bottom .open-close .button {
          margin-top: 7px; }
          @media (max-width: 768px) {
            .opening-block .bottom .open-close .button {
              margin-bottom: 40px; } }
      .opening-block .bottom .facebook {
        width: 33.3%;
        height: 420px; }
        @media (max-width: 768px) {
          .opening-block .bottom .facebook {
            width: 100%;
            text-align: center; } }
        .opening-block .bottom .facebook .fb-page iframe {
          height: 420px !important; }
  .opening::after {
    position: absolute;
    content: "";
    bottom: -57px;
    left: 50%;
    width: 1px;
    height: 57px;
    background-color: #cccccc; }
    @media (max-width: 768px) {
      .opening::after {
        height: 85px;
        bottom: -85px; } }

.collection {
  margin-bottom: 105px; }
  .collection-list {
    display: flex;
    margin-bottom: 5.0rem; }
    @media (max-width: 768px) {
      .collection-list {
        flex-wrap: wrap; } }
    .collection-list li {
      width: 16.667%;
      border-right: 1px solid #fff; }
      @media (max-width: 768px) {
        .collection-list li {
          width: 50%;
          margin-bottom: 25px; } }
      .collection-list li a {
        display: block; }
        .collection-list li a span {
          display: block;
          text-align: center;
          margin-top: 0.5rem;
          font-size: 1.4rem; }
          @media (max-width: 768px) {
            .collection-list li a span {
              font-size: 1.6rem;
              line-height: 1.25; } }
        .collection-list li a .image {
          overflow: hidden;
          line-height: 0; }
          .collection-list li a .image img {
            transition-duration: 3s; }
        .collection-list li a:hover .image img {
          transform: scale(1.2);
          transition-duration: 3s; }

.about {
  padding: 50px 3% 145px;
  background: url("../images/top/about_bg.png") no-repeat 0 0;
  background-size: cover;
  position: relative; }
  @media (max-width: 768px) {
    .about {
      background-position: 7% 0;
      padding-bottom: 200px; } }
  .about::after {
    position: absolute;
    content: "";
    top: -67px;
    left: 50%;
    width: 1px;
    height: 96px;
    background-color: #cccccc; }
  .about .c_title01 {
    margin-bottom: 0; }
    @media (max-width: 768px) {
      .about .c_title01 {
        margin-bottom: 20px; } }
  .about .text {
    text-align: center;
    font-size: 1.2rem;
    margin-bottom: 50px; }
    @media (max-width: 768px) {
      .about .text {
        font-size: 1.6rem;
        line-height: 1.5;
        padding: 0 3.2%; } }
  .about-list {
    display: flex;
    justify-content: space-between; }
    @media (max-width: 768px) {
      .about-list {
        display: block; } }
    .about-list__item {
      width: 49.5%;
      padding: 2.5rem; }
      @media (max-width: 768px) {
        .about-list__item {
          width: 100%; } }
      .about-list__item a {
        display: flex;
        flex-flow: column;
        align-items: center;
        justify-content: center;
        background-color: rgba(0, 0, 0, 0.6);
        color: #fff;
        font-size: 1.8rem;
        height: 248px; }
        @media (max-width: 768px) {
          .about-list__item a {
            height: 225px;
            font-size: 2.0rem; } }
        .about-list__item a .icon {
          line-height: 0;
          margin-bottom: 5px; }
        .about-list__item a:hover {
          opacity: .7; }
      .about-list__item:first-child {
        background: url("../images/top/about_bg01.jpg") no-repeat center center;
        background-size: cover; }
        .about-list__item:first-child a .icon {
          width: 1.6rem; }
      .about-list__item:last-child {
        background: url("../images/top/about_bg02.jpg") no-repeat center center;
        background-size: cover; }
        .about-list__item:last-child a .icon {
          width: 3.6rem;
          margin-top: 5px; }
      @media (max-width: 768px) {
        .about-list__item + .about-list__item {
          margin-top: 20px; } }
