@charset "UTF-8";
/* CSS Document */



body {
  font-family:
    "Helvetica Neue",
    Helvetica,
    "Hiragino Kaku Gothic ProN",
    "Yu Gothic",
    "Noto Sans JP",
    sans-serif;
}



body{
  margin:0;
  background:#000;
  color:#fff;
}

#cover{
  height:100vh;
  background:#000;

  display:flex;
  justify-content:center;
  align-items:center;
  position:relative;
}

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

.logo{
  width:280px;
  opacity:0;
  animation:fadeUp .8s ease forwards;
}

.season{
  margin-top:24px;
  opacity:0;
  animation:fadeUp .8s ease .3s forwards;
}

.scroll{
  position:absolute;
　  font-size: 12px;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  bottom:40px;
  left:50%;
  transform:translateX(-50%);
  opacity:0;
  animation:fadeIn .8s ease .8s forwards,
            float 2s ease-in-out infinite 1.6s;
}

@keyframes fadeUp{
  from{
    opacity:0;
    transform:translateY(20px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes fadeIn{
  to{
    opacity:1;
  }
}

@keyframes float{
  0%,100%{ transform:translateX(-50%) translateY(0); }
  50%{ transform:translateX(-50%) translateY(8px); }
}



.gallery{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:60px;
    padding:100px;
}

.item{
    opacity:0;
    transform:translateY(40px);
    transition:opacity .8s ease, transform .8s ease;
}

.item.show{
    opacity:1;
    transform:translateY(0);
}

.item img{
    width:100%;
    display:block;
}


.btn{
  display:inline-block;
  padding:14px 36px;
  border:1px solid #fff;
  color:#fff;
  text-decoration:none;
  letter-spacing:.2em;
  font-size:12px;
  text-transform:uppercase;
  transition:.3s ease;
}

.btn:hover{
  background:#000;
  color:#000;
}



/* ==========================
   HERO IMAGE
========================== */

.hero{
  position:sticky;
  top:0;

  min-height:110vh; /* ←少し余裕を持たせる */
  padding-bottom:10vh;

  display:flex;
  justify-content:center;
  align-items:center;

  background:#000;
	
}

.hero img{
  width:min(35vw, 550px);
  aspect-ratio:auto;
  height:auto;
  display:block;
}
/* ==========================
   CONTENT
========================== */

.content{
  position:relative;
  z-index:2;

  background:#000;

  margin-top:-10vh;
  border-radius:0px 0px 0 0;

  padding:4vw 12vw;
	
}

.content-inner{
  max-width:1400px;
  margin:0 auto;
}

/* ==========================
   SINGLE IMAGE
========================== */

.look-single{
  margin-bottom:10vw;
}

.look-single img{
  width:100%;
  display:block;
  aspect-ratio:3/4;
  object-fit:cover;
}

/* ==========================
   2 COLUMN GRID
========================== */

.look-grid{
  display:grid;
  grid-template-columns:repeat(1fr);
  gap:80px;
  margin-bottom:20vw;
  padding:150px;

}

.look-grid img{
  width:100%;
  display:block;
  object-fit:cover;
}

.look-large img{
  border:4px solid #000;
}

/* ==========================
   CREDIT
========================== */


.credit h2{
  font-size:18px;
  font-weight:400;
  letter-spacing:.15em;

  margin-bottom:10px;
}

.credit{
  margin-top:16px;
  display:flex;
  justify-content:flex-end;
}

.credit p{
  font-size:9px;
  line-height:1.9;
  text-align:right;
  letter-spacing:0.1em;
}

a{
  text-decoration:none;
  color:inherit;
}
	

/* ==========================
   TEXT BLOCK
========================== */

.text-block{
  max-width:700px;
  margin:0 auto 10vw;
}

.text-block h2{
  font-size:24px;
  font-weight:400;
  letter-spacing:.15em;

  margin-bottom:25px;
}

.text-block p{
  font-size:14px;
  line-height:2.4;
  letter-spacing:.08em;
}
/* ==========================
   look-large
========================== */

.look-large{
  width:min(35vw, 550px);
  margin:8vw auto 0;
}

.look-large img{
  width:100%;
  display:block;
}

.look-large .credit{
  margin-top:16px;
  text-align:right;
}


/* ==========================
   SPACER
========================== */

.space{
  height:10vw;
}


/* ==========================
   INTRO
========================== */

.intro{
  background:#000;
  position:relative;
  z-index:10;
}

.intro-banner{
  position:relative;
  width:100%;
   height:90vw; /* 好きな高さ */
  aspect-ratio:16/9;
  overflow:hidden;

}


@media (max-width: 767px){

  .look-grid{
    grid-template-columns: 1fr;
    gap: 30;
    padding: 0;
    margin-bottom: 0;
  }

  .look-grid img{
    width: 100%;
    height: auto;
    display: block;
  }

  .look-large img{
    border: 0;
  }

}

@media (max-width: 767px){
  .hero .logo{
    width: 80vw;
    max-width: 350px;
  }
}


 .divlogo{
    width:180px;
    height:auto;
    margin-bottom:15px;
  }

}

 .divlogo{
    width:180px;
    height:auto;
    margin-bottom:15px;
  }

.store-btn{
  display:inline-block;

  padding:14px 60px;

  border:1px solid #fff;

  color:#fff;
  text-decoration:none;

  font-size:11px;
  letter-spacing:0.25em;

  transition:.3s ease;
}


.store-btn:hover{
  background:#fff;
  color:#000;
}


@media (max-width: 767px){

  .content{
    padding: 4vw 4vw;
  }

}