/*------------------------------------------------------------------------------
  PC or ALL
------------------------------------------------------------------------------*/

.header-nav a .ja,
.header-nav a .en{
  font-weight: bold;
}

.mainvisual{
  width: auto;
  margin: 0 100px 10vmin;
  .mainvisual-catch div.copy{
    font-size: 3.8rem;
    line-height: 1.8;
    font-weight: normal;
  }
  .mainvisual-catch div.sub-text{
    font-size: 2.2rem;
  }
}

.footer{
  background: #051826;
  color: #fff;
  .footer-main .nav ul li a{
    color: inherit;
  }
  .logo a{
    filter: invert(88%) sepia(61%) saturate(0%) hue-rotate(229deg) brightness(107%) contrast(101%);
  }
  .footer-main:after{
    background: #1f303d;
  }
}

.home .page-content{

  .box-wrap.sm{
    max-width: 1132px;
  }

  .title-type02{
    &::before{
      position: static;
      display: block;
      width: 42px;
      height: 20px;
      margin: 0 auto 2vmin;
      background: url(../images/h2.png) no-repeat center center / contain;
      transform: none;
    }
    .ja{
      font-size: 3.6rem;
    }
    .en{
      font-size: 1.7rem;
      font-weight: normal;
      opacity: 1;
    }
  }

  .btn a{
    border-radius: 0;
  }

  .main-news{
    margin-bottom: 10vmin;
  }

  .main-menu{
    margin-bottom: 10vmin;
    padding: 10vmin 4vmin;
    background: var(--main-color);
    .box-h3{
      font-size: 3rem;
    }
    .copy{
      position: relative;
      margin-bottom: 2vmin;
      padding-bottom: 2vmin;
      font-size: 1.7rem;
      font-weight: normal;
      border-bottom: 2px solid #cfcec0;
      &::before{
        content:"";
        display: block;
        width: 15vmin;
        height: 2px;
        background: var(--main-color);
        position: absolute;
        bottom: -2px;
        left: 0;
      }
    }
    .box.image-text-type03 .box-h3, .box.image-text-type03 .copy, .box.image-text-type03 p, .box.image-text-type03 .btn{
      margin-left: 0;
    }
    .btn{
      display: inline-block;
      margin: 0 2vmin 0 0;
      &.btn-shop a::after{
        content:"\f1cc";
        font-size: 2rem;
      }
    }
  }

  .main-message{
    .btn{text-align: center;}
  }

  .main-con{
    .image-bg-type02 .text{
      max-width: 920px;
      text-align: left;
    }
    .box-h3{
      text-align: center;
      font-size: 3rem;
    }
    .copy{
      text-align: center;
      font-size: 1.7rem;
      font-weight: normal;
    }
    .btn{
      text-align: center;
    }
  }

  .main-gal{
    .swiper-pagination .swiper-pagination-bullet-active{
      background: var(--main-color-2);
    }
  }
}

/* 20240316 added by Fabo */
.mt-s { margin-top: 4vh !important;}
.mt-m { margin-top: 7vh !important;}
.mt-l { margin-top: 10vh !important;}

.mb-s { margin-bottom: 4vh !important;}
.mb-m { margin-bottom: 7vh !important;}
.mb-l { margin-bottom: 10vh !important;}

.contents-colorbox {
    margin: 0 0 6vh;
    padding: 35px;
    background: #f8f7f6;
    border-radius: 10px;
}
.contents-colorbox :first-child {
    margin-top: 0 !important;
}
.contents-colorbox :last-child {
    margin-bottom: 0 !important;
}

.page-content .image-text-type01 .text {
    overflow: hidden;
}
.page-content  .list-check-type01 {
    display: flex;
    justify-content: flex-start;
}

.align-center {
    text-align: center;
}


/*------------------------------------------------------------------------------
  TABLET and SHONE
------------------------------------------------------------------------------*/
@media screen and (max-width: 1024px) {
  .home .page-content{
    .main-menu{
      .btn {
        width: 100%;
        margin: 4vmin auto 0;
        text-align: center;
        & a{
          display: block;
          max-width: 100%;
          width: 50vmin;
          margin: 0 auto;
        }
      }
    }
  }
}

/*------------------------------------------------------------------------------
  TABLET ONLY
------------------------------------------------------------------------------*/
@media screen and (min-width: 600px) and (max-width: 1024px) {}

/*------------------------------------------------------------------------------
  SPHONE ONLY
------------------------------------------------------------------------------*/
@media screen and (max-width: 599px) {

  .mainvisual{
    margin: 0 4vmin 10vmin;
    .mainvisual-catch div.copy{
      font-size: 2rem;
    }
    .mainvisual-catch div.sub-text{
      font-size: 1.3rem;
    }
  }

  .home .page-content{
    padding: 0;
    .box-wrap.lg{
      /* padding: 0; */
    }
    .box-wrap.sm{
      padding: 0 4vmin;
    }


    .main-message{
      .box .image img{
        height: 30vh;
      }
    }

  }
}


/* ======================================
    2024/04/10 added by sakamoto
    ======================================== */

.img_size ul li .image, .blog-type04 .swiper-slide .image {
    max-height: 200px;
}


@media screen and (max-width: 599px) {
.img_size ul li .image, .blog-type04 .swiper-slide .image {
    max-height: 150px;
}
}