@charset "UTF-8";
/* CSS Document */
/*====================FV========================*/
.fv {
  background: url(../../images/main/gls_fv.jpg) no-repeat center center fixed;
  background-size: cover;
  height: 100vh;
  position: relative;
}
.fv h1 {
  width: 340px;
  position: absolute;
  left: calc(50% + 25px);
  top: calc(50% - 150px);
}
.fvlogo {display: none;}

/*====================main========================*/
.topconts {
  position: relative;
  z-index: 30;
}

.topconts_under .flex {
  justify-content: center;
}
.topatt {
  width: 980px;
  margin: -90px auto 0;
  text-align: right;
}
/*====================img move========================*/
.slick-slider {
  background: #000;
}

.slick-list {
  padding: 0 !important;
}

.slide_all {
  position: relative;
}

.slider_wrap {
  position: relative;
  height: 650px;
  overflow: hidden;
}

.slide_ep {
  width: 560px;
  height: 450px;
  margin: 0 auto 0;
  position: relative;
  transform: translatey(-50%);
  top: 50%;
}

.slide_conts {
  z-index: 2;
  position: relative;
}

.slide_conts .bg {
  background-size: auto 100%;
  position: absolute;
  opacity: 0.6;
  height: 100%;
  width: 100%;
}

.slide_conts .bg.parts_1 {
  background: url(../../images/main/slide_01.jpg) no-repeat center center;
  background-size: cover;
  height: 700px;
}

.slide_conts .bg.parts_2 {
  background: url(../../images/main/slide_02.jpg) no-repeat center center;
  background-size: cover;
  height: 700px;
}

.slide_conts .bg.parts_3 {
  background: url(../../images/main/slide_03.jpg) no-repeat center center;
  background-size: cover;
  height: 700px;
}

.slide_inner {
  width: 100%;
  height: 700px;
  position: relative;
  color: #f8f9fb;
}

button.slick-next.slick-arrow {
  border: none;
  background: none;
  position: absolute;
  right: 10%;
  top: 400px;
  color: #333;
  width: 30px;
  height: 30px;
  border: 2px solid;
  border-color: #686868 #686868 transparent transparent;
  transform: rotate(45deg);
  z-index: 20;
  overflow: hidden;
  outline: none;
  cursor: pointer;
  transition: all .3s;
}

button.slick-prev.slick-arrow {
  border: none;
  background: none;
  position: absolute;
  left: 10%;
  top: 400px;
  color: #333;
  width: 30px;
  height: 30px;
  border: 2px solid;
  border-color: transparent transparent #686868 #686868;
  transform: rotate(45deg);
  z-index: 20;
  overflow: hidden;
  outline: none;
  cursor: pointer;
  transition: all .3s;
}

button.slick-prev.slick-arrow:hover, button.slick-next.slick-arrow:hover {
  opacity: 0.6;
}

.blkbg {
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: 10;
  opacity: 0;
}

.blkbg.show {
  background: rgba(0, 0, 0, 0.6);
  animation: ImgOpct 1.2s forwards;
  opacity: 0;
}

.blkbg.out {
  background: rgba(0, 0, 0, 0.6);
  animation: ImgMinus 1.2s forwards;
  opacity: 0;
}

h4.slide_title.eng {
  font-size: 54px;
  letter-spacing: 6px;
  margin-bottom: 0.4em;
  text-align: left;
  line-height: 1.26;
}

.jp_txt {
  line-height: 2.4;
  font-size: 1.2em;
  margin: 0 0 3%;
}

.eng_min_txt {
  line-height: 2.2;
  color: #ccc;
}

.photomv {
  width: 500px;
  position: relative;
  background-color: #fffcf2;
  margin: 50px 27px;
  opacity: 0;
  z-index: 20;
  opacity: 0;
}

.anmpls {
  animation: ImgOpct .3s forwards;
}

.photomv_bg {
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
  background: #fffcf2;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: 10;
}
.anmpls .photomv_bg {animation: ImgMv 1.2s cubic-bezier(0.4, 0, 0.2, 1) forwards; animation-delay: .15s;}
.photomv_img { position: relative; z-index: 5;  opacity: 0; background: rgba(255,255,255,0.99);}
.anmpls .photomv_img {animation: ImgOpct .3s forwards;}

.photomv_img {
  width: 100%;
}

ul.dot-class {
  width: 100%;
  text-align: center;
}

ul.dot-class li {
  display: inline-block;
}

ul.dot-class li button {
  border-radius: 100px;
  height: 30px;
  width: 30px;
}

#arrows img {
  width: auto;
}

#arrow .slick-next:before {
  content: "";
}

#arrow .slick-after:before {
  content: "";
}

/*====================top========================*/
@keyframes ImgMv {
  0% {
    width: 100%;
    transform-origin: left top;
    -ms-transform-origin: left top;
  }
  100% {
    width: 0;
    transform-origin: left top;
    -ms-transform-origin: left top;
  }
}

@keyframes ImgOpct {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes ImgMinus {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.topconts_under {
  position: relative;
  margin-top: 120px;
}

.under_icon {
  width: 460px;
  position: absolute;
  right: 0;
  top: -350px;
  right: -50px;
}

.top_cat {
  margin: 0 0 120px;
}

.top_cat .title {
  color: #262626;
  transform: translate(80px, -25px);
}
.top_cat.food_con .title{transform: translate(48px, -27px);}
.top_cat.food_con .photomv{margin-bottom: 0;}



.top_cat .title h3 {
  font-size: 52px;
  line-height: 1;
  letter-spacing: 8px;
}

.top_cat .title .mintxt {
  display: block;
  font-size: 0.8em;
  line-height: 1.1;
}
.top_cat .title .mintxt.txt_inline{display: inline-block;}

.top_cat .title .min {
  font-size: 18px;
}

.top_cat .title p.min {
  font-weight: bold;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W6", Hiragino Kaku Gothic ProN, Arial, Meiryo, メイリオ, sans-serif;
}

.conts_item {
  width: 300px;
  margin: 0 auto 0 120px;
  position: relative;
  z-index: 10;
}

.conts_item img {
  width: 100%;
}

.juice_con .conts_item img{
  width: 80%;
  margin-left: 50px;
}

.conts_item.food_item img {
  width: 140%;
  margin: -5% 0 0 -35%;
}

.top_cat .note {
  width: 378px;
  margin: 40px auto 0;
  font-size: 0.98em;
  color: #262626;
  font-weight: 100;
  line-height: 1.6;
  letter-spacing: 0.3px;
}

a.link {
  color: #554928;
  font-weight: bold;
  border: solid 1px #d6d1c3;
  display: inline-block;
  margin: 5% 0 0;
  padding: 0.2em 2em;
}

.border {
  background: #f1ebdb;
  height: 60px;
  position: absolute;
  margin-top: -40px;
}

.flex_01 {flex-flow: row-reverse;}
.flex_01 .border {width: calc(52%); left: 0;}
.top_cat.flex_02 .conts_item { width: 340px; margin: 0 auto 0 30px;}
.top_cat.flex_02 .conts_item.coffee{width: 230px;}
.top_cat.flex_02 .note { margin: 40px 0 0; }
.top_cat.flex_02 .title {transform: translate(0px, -25px);}
.top_cat.flex_02 .border { width: calc(52%); right: 0;}
.store {
  width: 950px;
  margin: 120px auto 80px;
  text-align: center;
  border-top: dashed 1px #d8d3c5;
  padding-top: 90px;
}

.store .shopview.photomv { width: 560px; margin-right: 65px;}

.store h3 {
  font-size: 60px;
  letter-spacing: 5px;
  margin: 5px 0 -40px;
  position: relative;
}

.store h4.logo {
  width: 230px;
  margin: 58px auto 0.6em;
}

@media screen and (max-width: 1024px) {
  .wrapper {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
  .photomv {width: 45%;}
   body{width: 1024px;}
    
  .fv {
    background: none;
    position: relative;
    width: 100%;
    z-index: 1;
  }
      .fv:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        background: url(../../images/sp/gls_fv_sp.jpg) center no-repeat;
        background-size: cover;
      }
}





