@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400&display=swap&text=0123456789-');
@import url('https://fonts.googleapis.com/css2?family=Cormorant:wght@500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200&display=swap');
@import url("grid.css");

::-webkit-scrollbar {
  display: none;
}

:root {
  --base-color: #000;
  --link-color: #666;
  --linkhover-color: #999;
  --border-color: #ccc;
  --white-color: #fff;
  --base-background-color: #fff;
}

body {
  background-color: #000 !important;
  color: #FFF;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
  width: 100vw;
  opacity: 1;
}

a {
  display: block;
  color: var(--white-color);
  text-decoration-line: none;
}

a:hover {
  color: #FFF;
  opacity: 0.6;
}

a img:hover {
  opacity: 0.8;
}

.underline {
  border-bottom: 3px solid var(--base-color);
  padding-bottom: 0.5rem;
}

.center {
  text-align: center;
}

.fade-in {
  opacity: 1;
  transition: 1s;
}

.fade-out {
  opacity: 0;
  transition: 1s;
}

/*ヘッダー
-------------------------------------*/
.head {
  display: flex;
  flex-direction: row;
  padding: 1rem 0 0 0;
}

.head h1 {
  padding: 1rem 0;
  font-weight: 700;
  letter-spacing: 3px;
}

nav ul {
  display: flex;
  flex-direction: row;
  justify-content: center;
  list-style: none;
  margin-bottom: 0.5rem;
}

nav li {
  display: block;
  flex: 0 0 12%;
}

nav li a {
  text-decoration: none;
  text-align: center;
  white-space: nowrap;
}

nav a:hover {
  text-decoration: underline;
}

nav a {
  padding: 1rem;
}

.main_menu.current {
  text-decoration: underline 0.75px !important;
  text-underline-offset: 0.1em;
}

/*文字サイズ
-------------------------------------*/
.fs-3x { font-size: 3rem; }
.fs-2x { font-size: 2rem; }
.fs-lg { font-size: 1.33rem; }
.fs-m { font-size: 1rem; }
.fs-sm { font-size: 0.875rem; }
.fs-xs { font-size: 0.75rem; }

.p-top-2 {
  padding-top: 2rem !important;
}

.heading {
  text-align: left;
  padding: 1rem 2rem;
}

.sub_menu {
  display: none;
}

.global_navigationn .collection-menu:hover,
.global_navigationn .collection-menu:active {
  cursor: pointer;
}

.global_navigationn .collection-menu:hover .sub_menu,
.global_navigationn .collection-menu.view .sub_menu {
  cursor: pointer;
  display: block;
}

.global_navigationn li {
  flex: 0 0 10%;
}

.main_menu.collection-menu {
  text-decoration: none;
  text-align: center;
  padding: 1rem;
  flex-direction: column;
  display: flex;
  align-items: center;
}

.collection-menu-inr {
  width: max-content;
}

.collection-menu-inr a {
  padding-top: 0;
  padding-bottom: 0;
  text-align: left;
}

.main_menu {
  text-align: center;
}

.about_contents {
  line-height: 4rem;
  padding-bottom: 5rem;
}

.header.fixed {
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .sp-only {
    display: none !important;
  }

  /* PC時はMENUボタンを非表示 */
  #open,
  #close {
    display: none !important;
  }

  #navi {
    display: block !important;
  }

  .header_logo {
    top: 30px;
    left: 2rem;
    margin: auto;
    width: 142px;
    position: absolute;
    z-index: 50;
  }

  .row.menu {
    padding-right: 4rem;
    z-index: -1;
  }

  .snsbox {
    top: 30px;
    right: 4rem;
    margin: auto;
    width: 18px;
    position: absolute;
    z-index: 50;
  }

  .main.page-about {
    width: 100%;
  }

  .Feature__TextWithImageWrapper {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
  }

  .Feature__TextWithImageWrapper .Feature__Image {
    width: 50%;
    height: 100vh;
    overflow: auto;
    position: fixed;
    left: 0;
    -ms-overflow-style: none;
  }

  #changePic {
    animation: imgfade 4s infinite;
    opacity: 0;
  }

  @keyframes imgfade {
    0% { opacity: 0; }
    25% { opacity: 1; }
    50% { opacity: 1; }
    75% { opacity: 1; }
    100% { opacity: 0; }
  }

  .Feature__TextWithImageWrapper .Feature__Image::-webkit-scrollbar {
    display: none;
  }

  .Feature__TextWithImageWrapper .Feature__Text {
    position: relative;
    width: 50%;
    text-align: center;
    padding-top: 22rem;
  }

  .pc-only.about-second-text-contents {
    margin-top: 30rem;
    margin-bottom: 15rem;
  }

  .Feature__ImageWrapper .Feature__Image.parallax-bg {
    background-image: url(../img/26SUMMER/collection/hero.jpg);
    height: 100vh;
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }

  .Feature__Text {
    text-align: center;
    padding: 6rem 2rem;
  }

  .Feature__Text img {
    width: 20%;
    margin: auto;
    padding-bottom: 5rem;
  }
}

@media screen and (max-width: 768px) {
  .pc-only {
    display: none !important;
  }

  .head {
    flex-direction: column;
    text-align: left;
    margin-bottom: 20px;
  }

  .telbox {
    margin-left: 0;
    text-align: center;
  }

  .head #open,
  #close {
    position: absolute;
    top: 28px;
    right: 12px;
  }

  nav ul {
    flex-direction: column;
  }

  nav li {
    padding-top: 0;
    margin-bottom: 0;
  }

  header {
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
  }

  .global_navigationn {
    width: 100vw;
    height: 110vh;
    background-color: #000;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    margin-top: -10px;
  }

  .global_navigationn ul {
    position: absolute;
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
  }

  .header_logo {
    top: 30px;
    left: 0;
    right: 0;
    margin: auto;
    width: 142px;
    position: absolute;
  }

  a.current_page {
    text-decoration: underline !important;
  }

  /* スマホ時はMENUボタンを表示 */
  #open {
    display: block;
    background: url(../img/hamburger_menu.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 25px;
    height: 25px;
    border: none;
    position: absolute;
    top: 40px;
    left: 25px;
  }

  #close {
    display: block;
    background: url(../img/close_button.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 25px;
    height: 25px;
    border: none;
    position: absolute;
    top: 38px;
    left: 25px;
  }

  /* スマホ時はメニューを非表示 */
  #navi {
    display: none;
  }

  .Feature__ImageWrapper .Feature__Image.parallax-bg:before {
    background-image: url(../img/26SUMMER/collection/sp-hero.jpg);
    width: 100%;
    height: 100%;
    background-position: top;
    background-size: 100%;
    background-repeat: no-repeat;
    left: 0;
    position: fixed;
    top: 0;
    z-index: -1;
    content: "";
  }

  .Feature__Image.parallax-bg {
    height: 100%;
    width: 100%;
  }

  .sns_contents {
    display: flex;
    text-align: center;
    margin: 0;
    margin-left: auto;
    margin-right: auto;
    margin-top: 70px;
  }

  .sns_contents .icon {
    padding: 2rem;
  }

  .sns_contents img {
    width: 22px;
    height: 22px;
  }

  .Feature__Text {
    text-align: center;
    padding: 6rem 2rem;
  }

  .Feature__Text img {
    width: 30%;
    margin: auto;
    padding-bottom: 5rem;
  }
}

/*コンテンツ画像
-------------------------------------*/
.Feature__Image {
  position: relative;
  background: transparent 0% 0% no-repeat padding-box;
  opacity: 1;
}

.Feature__ImageWrapper .text_contents,
.Feature__ImageWrapper .Collection_Items {
  position: relative;
  z-index: 1001;
}

.scroll_lock .Feature__ImageWrapper .text_contents,
.scroll_lock .Feature__ImageWrapper .Collection_Items {
  z-index: -10;
}

.main.page-collection .Feature__Image img,
.main.page-index .Feature__Image img {
  background-color: #000;
  padding-bottom: 3rem;
}

.Feature__Image p {
  position: absolute;
  bottom: 38px;
  left: 18px;
  padding: 0;
  margin: 0;
  text-align: left;
  letter-spacing: NaNpx;
  color: #FFFFFF;
  opacity: 1;
}

.Collection_Item {
  position: relative;
  padding: 1rem 2.2rem;
  background-color: #000;
}

.Collection_Item.main_item {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 5rem;
}

.Collection_Item p {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  position: absolute;
  left: 0;
  padding: 0;
  letter-spacing: NaNpx;
  color: #FFFFFF;
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.4);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  line-height: 4em;
}

.main .Collection_Item:hover p {
  opacity: 1;
}

.Feature__ImageWrapper .double_column {
  display: flex;
}

@media screen and (min-width: 768px) {
  .Collection_Items {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .Collection_Item {
    width: 33.33%;
    padding: 1rem 0.75rem;
  }

  .Collection_Items {
    padding: 0 4rem;
  }
}

.Collection_Items a:hover {
  color: #FFF;
  opacity: 0.6;
}

/*メインコンテンツ
-------------------------------------*/
.main {
  position: absolute;
  top: 0;
}

.text_contents {
  background-color: #000;
  color: #FFF;
  padding: 6rem;
  text-align: center;
  letter-spacing: 0px;
  opacity: 1;
  width: 100%;
  line-height: 2rem;
}

.text_contents p.title {
  margin-bottom: 1rem;
}

.text_contents p.title span {
  font-size: 1rem;
}

@media screen and (max-width: 768px) {
  .text_contents p.title span {
    font-size: 0.8rem;
  }
}

/*フッター
-------------------------------------*/
footer {
  background-color: var(--white-color);
}

footer h5 {
  border-bottom: 1px solid var(--border-color);
}

.footer {
  display: flex;
}

.copyright {
  text-align: left;
  padding: 3rem 2rem;
  background-color: #000;
  color: #FFF;
}

.line_icon {
  right: 4rem;
  position: absolute;
  font-size: 0.7rem;
  padding: 2rem 0;
  background-color: #000;
  color: #FFF;
}

.line_icon img {
  text-align: right;
  width: 18px;
  height: 18px;
}

/* stockist
-------------------------------------*/
.stockist a {
  padding: 0;
  color: #000;
  display: inline-table;
  text-decoration-line: underline;
}

.stockist.modal-open {
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  padding: 1rem;
  display: block;
  font-weight: unset;
  margin-bottom: 0;
  color: var(--white-color);
  white-space: nowrap;
}

.stockist.modal-open:hover {
  color: var(--linkhover-color);
  text-decoration: underline;
}

#stockist-modal {
  display: none;
}

.stockist.overlay {
  display: none;
}

.overlay-bkground {
  position: absolute;
  width: 100vw;
  height: 100vh;
  z-index: 98;
  left: 0;
  opacity: 0;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.view.overlay {
  width: 85vw;
  height: 65vh;
  background: rgba(225, 225, 225, 0.5);
  display: flex;
  align-items: center;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99;
}

.stockist .window {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 3rem;
}

.stockist-text {
  display: flex;
  padding: 2rem;
  z-index: 200;
}

.stockist .text {
  font-size: 1.4rem;
  margin: 0;
  letter-spacing: 0.56px;
  color: #000;
  opacity: 1;
  z-index: 100;
  text-align: center;
  line-height: 6rem;
}

.stockist-section {
  padding: 1rem 5rem;
}

.stockist .close {
  display: block;
  background: url(../img/close_button.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 16px;
  height: 16px;
  border: none;
  position: absolute;
  top: 22px;
  right: 20px;
  z-index: 200;
}

.stockist .close:hover {
  cursor: pointer;
}

.stockist p {
  display: block;
}

.scroll_lock {
  overflow: hidden;
}

.munu_none_display {
  background-color: unset;
}

.munu_none_display li {
  display: none;
}

.munu_none_display .sp-only.sns_contents {
  display: none !important;
}

.stockist-padding-section {
  padding: 5rem;
}

@media screen and (max-width: 768px) {
  .stockist-text {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 101;
  }

  .stockist .window {
    overflow-y: scroll;
    overflow-x: hidden;
  }

  .text_contents.collection {
    margin-top: calc(500 * (100vw / 375));
    font-size: 2.4rem;
    font-weight: 100;
    letter-spacing: 0px;
  }

  .stockist .window {
    display: inline-grid;
  }

  .view.overlay {
    width: 80vw;
    height: 70vh;
    overflow-x: scroll;
  }

  .stockist-section,
  .stockist .text {
    padding: 1rem;
    width: 100%;
  }

  .stockist .text {
    padding-top: 1rem;
  }
}

/*popup
-------------------------------------*/
#popup {
  display: none;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  z-index: 998;
}

#popup .popup-inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

#popup .popup-content {
  width: 90rem;
  height: fit-content;
  position: relative;
}

#popup .coupon-link {
  transition: .3s;
}

#popup .popup-closebtn {
  width: 3rem;
  height: 3rem;
  position: absolute;
  top: 1.1rem;
  right: 1.4rem;
  z-index: 999;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  #popup .popup-content {
    width: 40rem;
    padding: 0 calc(50 * (100vw / 750));
  }

  #popup .popup-closebtn {
    width: calc(50 * (100vw / 750));
    height: calc(50 * (100vw / 750));
    top: calc(18 * (100vw / 750));
    right: calc(66 * (100vw / 750));
  }

  #popup .coupon-link:hover {
    opacity: 1;
  }
}