﻿ /* **************************************************

  		　        　トップページ

************************************************** */

/* **************************************************
  		　        スライドショー
************************************************** */
.carousel {
    width:100%;
    height:calc(100svh - var(--header-height));
    margin:0 auto;
    position:relative;
}

.viewport {
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;

    /* ★ スクロールバーを非表示にする */
    -ms-overflow-style: none;    /* IE, Edge */
    scrollbar-width: none;        /* Firefox */
}
.viewport::-webkit-scrollbar {
    display: none;                /* Chrome, Safari */
}

/* 横並びトラック */
.track{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:100%;
    height:calc(100vh - var(--header-height));
}
.slide{
    position:relative;
    scroll-snap-align:start;
    width:100%;
    height:calc(100svh - var(--header-height));
}
.slide img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

/* テキストキャプション */
.caption {
    position:absolute;
}
#slide1 .caption {
    left:3rem; 
    bottom:0rem;
}
#slide2 .caption {
    right:3rem; 
    top:3rem;
}
#slide3 .caption {
    right:3rem; 
    top:3rem;
}
#slide4 .caption {
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
}

#slide1 .caption h2 img ,
#slide2 .caption h2 img ,
#slide3 .caption h2 img ,
#slide4 .caption h2 img {
    width:auto;
    height:40vh;
}

/* 操作 */
.control {
    position:absolute;
     width:100%;
    bottom:2rem;
    display:flex;
    justify-content:center;

}
/* 矢印 */
.arrow {
    display:grid;
    place-items:center;
    border-radius:999px;
    background:none;
    border:none;
    color:#fff;
    text-decoration:none;
    font-size:1.8rem;
    user-select:none;
    cursor:pointer;
}
.arrow:hover{}
.prev{ left:0px }
.next{ right:0px }

/* ドット */
.dots{
    display:flex;
    align-items:center;
    gap:1.6rem;
    border-radius:999px;
    margin:0 2rem;
}
.dots button{
    width:0.4rem;
    height:0.4rem;
    border-radius:999px;
    border:2px solid #fff;
    background:transparent;
    background:#fff; 
    padding:0;
    cursor:pointer;
}
.dots button.active { 
    width:0.75rem;
    height:0.75rem;
    background:#fff; 
    opacity:1;
}

/* **************************************************
  		　        新着情報
************************************************** */
section#news {
    margin-top:3rem;
    padding-bottom:3rem;
}
section#news ul {
    margin-top:3rem;
    display:flex;
    justify-content:center;
}
section#news ul li {
    display:inline-flex;
    justify-content: flex-start;
    flex-direction: column;
    margin:0 auto 5rem;
    flex-basis:30%;
}
section#news ul li div time {
    color:#707070;
    text-align:left;
    font-size:1.2rem;
    line-height:1.6em;
}
section#news ul li figure img {
    display: block;
    width:100%;
    max-width:640px;
    height: auto;
    margin:2rem 0;
}
section#news ul li h2 {
    font-size:1.2rem;
    line-height:1.6em;
}
section#news div.more_news {
    text-align:center;
}
section#news div.more_news a {
    border-radius:5rem;
    border:1px solid #000;
    font-weight:600;
    font-size:1.2rem;
    padding:1rem 4rem;
    display:inline-block;
}

/* **************************************************
  		　        源太について
************************************************** */
section#about {
    background:url('../img/index/about_bg.svg') #000 no-repeat center center;
    background-size:auto 150% ;
    padding:5rem 0;
}
section#about h2 {
    text-align:left;
    margin-bottom:1rem;
}
section#about h2 span {
    color:#fff;
    font-size:1.2rem;
}
section#about h2 b {
    color:#fff;
    font-weight:800;
    font-size:2.8rem;
}
section#about div.about_inner {
    width:960px;
    max-width:80%;
    margin:0 auto;
}
section#about p {
    color:#fff;
    text-align:left;
    font-size:1.1rem;
    line-height:1.8em;
    
}
section#about img {
    width:100%;
    height:auto;
    margin:2rem 0 2rem 0;
}
/* フェードイン前の状態（非表示＋少し下にずらす） */
section#about .css-anime {
    opacity: 0;
    transition: opacity 2.5s ease, transform 2.5s ease;
}

/* 画面内に入ったら付けるクラス（最終状態） */
section#about .css-anime-on {
    opacity: 1;
    transform: translateY(0);
}

/* **************************************************
  		　       源太の逸品・メニューPDF
************************************************** */
section#ippin {
    padding:4rem 0;
}
section#ippin dl {
    display:flex;
    justify-content: space-between;
    flex-wrap:wrap;
    width:100%;
    height:auto;
    margin-top:4rem;
}
section#ippin dl div {
    flex-basis:31%;
}
section#ippin dl div dd {
    font-weight:600;
    font-size:1.6rem;
    margin-top:1rem;
}
section#ippin div.more_ippin {
    text-align:center;
    margin-top:3rem;
}
section#ippin div.more_ippin a {
    border-radius:5rem;
    font-weight:600;
    font-size:1.2rem;
    padding:1rem 2rem;
    display:inline-block;
    background:#000;
    color:#fff;
}
section#ippin dl div {
  opacity: 0;
  /* transform: translateY(1rem);
  transition: transform .6s ease-out; */
    transition: opacity 2.5s ease, transform 2.5s ease;
}
section#ippin dl div.css-anime-on {
  opacity: 1;
  transform: translateY(0);
}

  
  
