@charset "UTF-8";
header{
  position: relative;
}
.screenーbk{
  position: absolute;
  z-index: 10;
  width: 100%;
  height: 100vh;
  background: #000;
}

/* タイトルスライド↓ */
.swiper-container{
  overflow: hidden;
  width: 100%;
  height: 100vh;
  background-color: #333;
  position: relative;
  /* margin-bottom: 120px; */
}
/* @keyframes zoom {
0% {
  transform: scale(1);
}
100% {
  transform: scale(1.2);
}
} */
/* @media screen and (min-width:768px){
  .swiper-container{
    width: 92%;
    margin: auto;
    height: calc(100vh - 35px);
  }
} */
.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img{
animation: zoom 10s linear 0s 1 normal both;  
}
.slide-text{
position: absolute;
top: 50%;
left: 50%;
font-size: 46px;
font-weight: bold;
text-shadow: 2px 2px 8px #000;
color: #fff;
transform: translate(-50%,-50%);
}
.slide-img img{
object-fit: cover;
height: 100vh;
width: 100vw;
}
/* タイトルスライド↑ */

h2{
  text-align: left;
  font-size: 18px;
  letter-spacing: .3em;
  display: flex;
  justify-content: center;
  color: #fff;
  text-shadow: 0 3px 6px #ccc;
  position: absolute;
  left: 13vw;
  bottom: 21vh;
  margin: auto;
  z-index: 3;
}
@media screen and (min-width:768px){
  h2{
    font-size:27px;
    text-align: center;
    bottom: 45vh;
    left: 0;
    right: 0;
  }
}

/* スクロール↓ */
.scroll {
  display: inline-block;
  position: absolute;
  left: 6vw;
  bottom: 18vh;
  z-index: 2;
  padding: 10px 10px 110px;
  /* overflow: hidden; */
}
@media screen and (min-width:768px){
  .scroll {
    bottom: 0;
    bottom: 10vh;
  }
}
.scroll::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 18.5vh;
  background: #444;
}
@media screen and (min-width:768px){
  .scroll::before {
    height: 100px;
  }
}
.scroll::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 18.5vh;
  background: #fff;
}
@media screen and (min-width:768px){
  .scroll::after {
    height: 100px;
  }
}
.scroll::after {
  animation: sdl 2.5s cubic-bezier(1, 0, 0, 1) infinite;
  z-index: 100;
}
@keyframes sdl {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
/* スクロール↑ */


.inner_cap{
  padding: 100px 0 0;
}
@media screen and (min-width:768px){
  .inner_cap{
    display: flex;
    justify-content: center;
    /* align-items: center; */
    flex-direction:row-reverse;
    padding: 100px 0 0;
  }
}
@media screen and (min-width:768px){
  .inner_cap > div:nth-child(1) {
    width: 135px;
  }
  .inner_cap > div:nth-child(2) {
    width: 240px;
    margin-right: 50px;
  }
}
.en-catch{
  font-family: 'Noto Serif JP', serif;
  font-size: 13px;
  color: #767676;
  letter-spacing: 2px;
  margin-block-start: 1em;
  text-align: center;
}
@media screen and (min-width:768px){
  .en-catch{
    font-size: 12px;
    font-size: 13px;
    letter-spacing: 1.5px;
    margin-top: -5px;
  }
}
.inner_cap .en-catch{
  text-align: center;
}

h3{
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  letter-spacing: .55em;
  font-size: 20px;
  color: #707070;
  text-align: left;
  line-height: 2;
  margin:  20px auto 50px;
}
@media screen and (min-width:768px){
  h3{
    font-size: 25px;
    line-height: 1.8;
  }
}
@media screen and (min-width:768px){
  .inner_cap h3{
    padding: 0 0 80px;
  }
}

/* @media screen and (min-width:768px){
  h3:before{
    content: "";
    width: 70%;
    height: 1px;
    background: #333;
    position: absolute;
    left: -100%;
    top: 30%;
  }
  h3:after{
    content: "";
    width: 70%;
    height: 1px;
    background: #333;
    position: absolute;
    right: -100%;
    top: 30%;
  }
}
@media screen and (min-width:1024px){
  h3:before{
    width: 100%;
    left: -130%;
  }
  h3:after{
    width: 100%;
    right: -130%;
  }
} */

h4{
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  margin: 0 auto;
  letter-spacing: 6px;
  line-height: 2.1;
  color: #707070;
  width: 100%;
  text-align: left;
  font-size: 14px;
  padding: 0 5vw;
  display: flex;
  align-items: center;
  margin-block-start: 1em;
}
@media screen and (min-width:768px){
  h4{
    font-size: 15px;
    margin: 0 auto 0;
    padding: 0;
    line-height: 2;
    letter-spacing: 5.5px;
  }
}

.pc-block {
  display: none;
}
.pc-inline-block {
  display: none;
}
@media screen and (min-width:768px) {
  .pc-block {
    display: block; 
  }
  .pc-none {
    display: none;
  }
  .pc-inline-block {
    display: inline-block;
  }
}

/* インタビューセリフテキスト */
.ints{
	color: #A5A5A5!important;
	font-weight: bold!important;
}


/* 動画ここから */
#movie{
  margin: 0 auto 100px;
  font-size: 30px;
  display: block;
  width: 100%;
  padding-top: 100px;
}
@media screen and (min-width:768px){
  #movie{
    /* height: 60vh; */
    /* margin: 0 auto 280px; */
    margin: 0 auto;
    padding-top: 10px;
  }
}
#movie p{
  position: absolute;
  top:40%;
  left: 0;
  right: 0;
  margin: auto;
}
#movie h5{
  text-align: center;
  font-size: 13px;
  margin-bottom: 20px;
}
#movie h5 span{
  font-size: 18px;
}
@media screen and (min-width:768px){
  #movie h5{
    font-size: 13px;
    margin-bottom: 20px;
  }
  #movie h5 span{
    font-size: 18px;
  }
}
#movie h6{
  text-align: center;
  margin: 10px auto 0;
}
#movie h6 a{
  font-size: 13px;
  display: inline-block;
}
#movie h6 a:hover{
  text-decoration: none;
}
@media screen and (min-width:768px){
  #movie h6{
    margin: 10px auto 110px;
  }
  #movie h6 a{
    font-size: 13px;
  }
}

.line{
  width: 100%;
  border-top: 1px dotted #707070;
  margin: auto;
}
@media screen and (min-width:768px){
  .line{
    width: 82vw;
  }
}
/* Reportここから */
.creator{
  position: relative;
  padding: 50px 0 50px;
  margin: 0 auto;
}
@media screen and (min-width:768px){
  .creator{
    padding: 100px 0 0;
    margin: 0 8vw 100px;
  }
}
.creator .text_area p{
  text-align: center;
}
.creator .text_area > div{
  position: relative;
}
.creator h3{
  text-align: left;
  margin: 20px auto 126px;
}
@media screen and (min-width:768px){
  .creator h3{
    padding: 0 0 80px;
    margin: 20px auto 50px;
  }
}
.creator .ttl_text{
  display: none;
}
@media screen and (min-width:768px){
  .creator .ttl_text{
    display: block;
    font-size: 15px;
  }
}
.creator a:hover{
  text-decoration: none;
  opacity: .8;
}
.creator .soon:hover{
  opacity: 1 !important;
}
.creator .soon img:hover{
  opacity: 1 !important;
}

/* @media screen and (min-width:900px){
  .creator .box{
    margin-top: 0;
    margin-left: 10vw;
  }
}
@media screen and (min-width:1200px){
  .creator .box{
    margin-left: 3vw;
  }
} */

.creator .section-lineup{
  /* overflow: hidden; */
  position: relative;
  z-index: 2;
}
.creator .section-lineup .inner{
  margin: 0 auto;
  /* width: 80%; */
  padding-left: 0;
  /* padding-right: 4rem; */
}
@media screen and (min-width:768px){
  .creator .section-lineup .inner{
    /* padding-left: 260vw; */
  }
}
/* @media screen and (min-width:900px){
  .creator .section-lineup .inner{
    padding-left: 28vw;
  }
}
@media screen and (min-width:1200px){
  .creator .section-lineup .inner{
    padding-left: 20vw;
  }
} */
.creator .slick-slide{
  float: none;
  line-height: 0 !important;
}
@media screen and (max-width:767px){
  .creator .slick-slide{
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
@media screen and (min-width:768px){
  .creator .slick-slide{
    margin: 0 1vw !important;
  }
  .creator .slick-slide a{
    overflow: hidden;
    display: block;
  }
  .creator .slick-slide a img{
    transition:1s all;
    margin: 0 auto;
  }
  /* .creator .slick-slide a img:hover{
    transform:scale(1.1,1.1);
    transition:1s all;
  } */
}
.creator .slick-track{
  display: flex !important;
  /* justify-content: space-between; */
}

.creator .lineup-carousel li,.creator .lineup-carousel-top li{
  text-align: center;
  /* margin-right: 24px; */
}
.creator .lineup-carousel img,.creator .lineup-carousel-top img{
  display: block;
  width:100%;
}
.creator .section-lineup .slick-list{
  overflow: hidden;
}
.creator .section-lineup .slick-arrow {
  display: inline-flex;
  width: 130px;
  height: 150px;
  align-items: center;
  justify-content: center;
  transform: scale(.08);
}
@media screen and (min-width:768px){
  .creator .section-lineup .slick-arrow {
    transform: scale(.1);
    display: none;/*記事が4つ以上になったら消す*/
  }
}
.creator .section-lineup .slick-next,.creator .section-lineup .slick-prev{
position: absolute;
top: 46%;
cursor: pointer;
color: transparent;
border: none;
outline: none;
}

.slick-num{
  width: 20%;
}
.slick-nav-arrows{
  width: 100%;
  margin: auto;
  height: 1px;
}
.creator .section-lineup .slick-next-food {
  right: 20vw;
  background: url(../img/icon/slide-right.png) no-repeat;
  background-size: contain;
  position: absolute;
  z-index: 10;
}
@media screen and (min-width:768px){
  .creator .section-lineup .slick-next-food {
    right: 25vw;
  }
}
@media screen and (min-width:1200px){
  .creator .section-lineup .slick-next-food {
    right: 28.5vw
  }
}
.creator .section-lineup .slick-prev-food {
  left: 20vw;
  background: url(../img/icon/slide-left.png) no-repeat;
  background-size: contain;
  position: absolute;
  z-index: 10;
}
@media screen and (min-width:768px){
  .creator .section-lineup .slick-prev-food{
    left: 25vw;
  }
}
@media screen and (min-width:1200px){
  .creator .section-lineup .slick-prev-food{
    left: 28.5vw
  }
}
.creator .section-lineup .slick-next-food, .creator .section-lineup .slick-prev-food{
  top: 131px;
}
@media screen and (min-width:768px){
  .creator .section-lineup .slick-next-food, .creator .section-lineup .slick-prev-food{
    top: 166px;
  }
}
.creator .section-lineup .slick-next-food:hover, .creator .section-lineup .slick-prev-food:hover{
  cursor: pointer;
}
.creator .slick-disabled{
  opacity: 0;
}
.creator .num{
  text-align: left;
  font-size: 13px;
  margin-top: 30px;
  font-family: 'Noto Serif JP', serif;
  color: #868686;
  padding-left: 10.5vw;
  letter-spacing: 2px;
}
@media screen and (min-width:768px){
  .creator .num{
    margin-top: 30px;
    font-size: 13px;
    letter-spacing: 2px;
    padding-left: 0;
  }
}
.creator .text{
  text-align: left;
  font-size: 18px;
  padding-left: 10vw;
  padding-right: 10vw;
  letter-spacing: 2px;
  margin: 6px 0;
  line-height: 1.8;
}
@media screen and (min-width:768px){
  .creator .text{
    font-size: 18px;
    padding-left: 0;
    padding-right: 0;
    letter-spacing: 2px;
    margin: 3px 0;
  }
}
.creator .place{
  text-align: left;
  font-size: 13px;
  color: #868686;
  padding-left: 10vw;
  letter-spacing: 2px;
}
@media screen and (min-width:768px){
  .creator .place{
    font-size: 13px;
    padding-left: 0;
    letter-spacing: 2px;
  }
}
.creator .slick-num{
  position: absolute;
  top: 196px;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
  font-size: 13px;
  letter-spacing: 2px;
}
.creator .slick-num span{
  font-family: 'Noto Serif JP', serif;
}
@media screen and (min-width:768px){
  .creator .slick-num{
    top: 227px;
    font-size: 18px;
    letter-spacing: 2px;
  }
}


#youtube{
  margin: 100px auto;
  text-align: center;
}
#youtube .inner dl{
  margin-bottom: 60px;
}
#youtube .inner dl dt{
  width: 80vw;
  margin: auto;
}
#youtube .inner dl dd.name{
  text-align: center;
  font-size: 18px;
  margin: 21px auto 15px;
  letter-spacing: 2px;
}
#youtube .inner dl dd.text{
  font-size: 14px;
  color: #868686;
  text-align: left;
  width: 80vw;
  margin: auto;
  line-height: 2;
  letter-spacing: 2.1px;
  text-align: justify;

}
@media screen and (min-width:768px){
  #youtube .inner{
    margin: 100px auto 100px;
  }
  #youtube .inner{
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px 40px;
  }
  #youtube .inner dl{
    margin-bottom: 0;
  }
  #youtube .inner dl dt{
    width: 100%;
  }
  #youtube .inner dl dt a{
    display: block;
    width: 100%;
    height: 100%;
  }
  #youtube .inner dl dd.name, #youtube .inner_flex dl dd.name{
    font-size: 18px;
    margin: 23px auto;
    letter-spacing: 2px;
    text-align: center;
  }
  #youtube .inner dl dd.text,#youtube .inner_flex dl dd.text{
    font-size: 14px;
    width: 100%;
    letter-spacing: 2px;
    text-align: left;
    line-height: 2;
    color: #868686;
  }
  #youtube .inner_flex{
    display: flex;
    justify-content: space-between;
    margin: 0 8vw;
  }
  #youtube .inner_flex dl{
    width: 32%;
  }
}


/* 2025年追加分 */
@media screen and (min-width:768px){
  #youtube .pcsp .inner_flex{
    justify-content: center;
  }
  #youtube .pcsp.text_ttl{
    margin: 10px auto 20px;
  }
}
@media screen and (max-width:767px){
  #youtube .pcsp.text_ttl{
    margin: 10px auto 20px;
  }
  #youtube .pcsp dl{
    width: 76vw;
    margin: auto;
  }
  #youtube .pcsp dl .name{
    text-align: center;
    font-size: 18px;
    margin: 21px auto 15px;
    color: #868686;
    letter-spacing: 2px;
  }
  #youtube .pcsp .text{
    font-size: 14px;
    color: #868686;
    text-align: left;
    margin: auto;
    line-height: 2;
    letter-spacing: 2.1px;
    text-align: justify;
  }
}
/* 2025年追加分 */


.scroll_text{
  position: absolute;
  font-size: 1.4rem;
  z-index: 2;
  bottom: 22.5vh;
  color: #fff;
  left: 50%;
  transform: translateX(-50%);
}
.scroll_text a{
  color: #fff;
}
.scroll_text a:hover{
  text-decoration: none;
  opacity: .5;
}
@media screen and (min-width:768px){
  .scroll_text{
    bottom: 115px;
  }
}

.text_year{
  font-size: 18px;
  margin-top: 60px;
  text-align: center;
  letter-spacing: 2px;
}
.text_ttl{
  font-size: 18px;
  margin: 10px auto 50px;
  text-align: center;
}
.text_year2{
  margin: 70px auto 30px;
}

@media screen and (min-width:768px){
  .text_year2{
    margin: 70px auto -50px;
  }
}


.slick-track{
  display: flex !important;
  /* justify-content: space-between; */
}
.section-lineup-sp{
  /* overflow: hidden; */
  position: relative;
  z-index: 2;
}
.section-lineup-sp .lineup{
  position: relative;
}
.lineup-carousels-sp li{
  text-align: center;
  margin: 0 12px;
}
.lineup-carousels-sp img{
  display: block;
  width:100%;
}
.lineup-carousels-sp li .name{
  text-align: center;
  font-size: 18px;
  margin: 21px auto 15px;
  color: #868686;
  letter-spacing: 2px;
}
.lineup-carousels-sp li .cap{
  font-size: 14px;
  color: #868686;
  text-align: left;
  margin: auto;
  line-height: 2;
  letter-spacing: 2.1px;
  text-align: justify;
}

.section-lineup-sp .slick-list{
  overflow: hidden;
  padding-right: 10vw;
  padding-left: 10vw;
}
.section-lineup-sp .slick-arrow {
  display: inline-flex;
  width:130px;
  height:150px;
  align-items: center;
  justify-content: center;
}
.section-lineup-sp .slick-next,.section-lineup-sp .slick-prev{
position: absolute;
top: 46%;
cursor: pointer;
color: transparent;
border: none;
outline: none;
}
.section-lineup-sp .slick-next-food {
    z-index: 2;
    display: block !important;
    background: transparent;
    bottom: -30px;
    padding: 0;
    position: absolute;
    content: '';
    width: 12px;
    height: 12px;
    border: 0;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    position: absolute;
    right: 9.5vw;
    margin-top: -4px;
    transform: rotate(45deg);
  
}
.section-lineup-sp .slick-prev-food {
    z-index: 2;
    display: block !important;
    background: transparent;
    bottom: -30px;
    padding: 0;
    content: '';
    width: 12px;
    height: 12px;
    border: 0;
    border-bottom: solid 2px #333;
    border-left: solid 2px #333;
    position: absolute;
    left: 9.5vw;
    margin-top: -4px;
    transform: rotate(45deg);
}
.section-lineup-sp .slick-next-food, .section-lineup-sp .slick-prev-food-sp{
  top: 20vw;
}
.section-lineup-sp .slick-next-food-sp:hover, .section-lineup-sp .slick-prev-food-sp:hover{
  cursor: pointer;
}
.section-lineup-sp .slick-next-food-sp{
  right: 20vw;
  background: url(../img/icon/slide-right.png) no-repeat;
  background-size: contain;
  position: absolute;
  transform: scale(.08);
  z-index: 10;
}
.section-lineup-sp .slick-prev-food-sp {
  left: 20vw;
  background: url(../img/icon/slide-left.png) no-repeat;
  background-size: contain;
  position: absolute;
  transform: scale(.08);
  z-index: 10;
}
.section-lineup-sp .slick-next-food-sp, .section-lineup-sp .slick-prev-food-sp{
  top: -105px;
}

.section-lineup-sp .slick-num{
  position: absolute;
  top: -40px;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
  font-size: 13px;
  letter-spacing: 2px;
}
.section-lineup-sp .slick-num span{
  font-family: 'Noto Serif JP', serif;
}
@media screen and (min-width:768px){
  .section-lineup-sp .slick-num{
    top: 227px;
    font-size: 18px;
    letter-spacing: 2px;
  }
}