@charset "utf-8";
@import url("font.css");
@import url("variable.css");
/*==========================================================*/
/* initial value
/*==========================================================*/
html {
  scroll-behavior: smooth;
}
body {
  font-size: 13px;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
}
main#str-main * {
  box-sizing: content-box;
}
main#str-main .modal, main#str-main .modal * {
  box-sizing: border-box;
}
#Breadcrumb {
  margin: 0;
}
#Cont {
  width: 100%;
}
#main_contents {
  position: relative;
  margin-bottom: 20px;
  background: var(--color-wh);
  color: var(--color-bk);
  font-family: var(--font-Shippori);
  background: url(../images/product_features_bg_pc.jpg) no-repeat center center / cover;
  background-attachment: fixed;
}
#main_contents a:hover {
  text-decoration: none;
}
@media screen and (max-width: 750px) {
  #main_contents {
    background: url(../images/product_features_bg_sp.jpg) no-repeat center center / cover;
    background-attachment: fixed;
  }
  .pc-only {
    display: none;
  }
}
@media screen and (min-width: 751px) {
  .sp-only {
    display: none;
  }
}



/*==========================================================*/
/* global navigatio
/*==========================================================*/
.global_navigation {
  position: absolute;
  width: 100%;
  top: 0;
  right: 0;
  z-index: 200;
}
.global_navigation.is-active {
  position: fixed;
  width: 100%;
  background: rgba(255, 255, 255, 0.5);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
.global_navigation-inner {
  position: relative;
  z-index: 1;
}
.global_navigation-list_wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: min(calc((59 / var(--w-base)) * 100vw), 59px);
  margin-right: min(calc((33 / var(--w-base)) * 100vw), 33px);
  padding: min(calc((8 / var(--w-base)) * 100vw), 8px) 0;
}
.global_navigation-list a {
  display: inline-block;
  color: var(--color-wh);
  font-size: min(calc((14 / var(--w-base)) * 100vw), 14px);
}
.global_navigation.is-active .global_navigation-list a {
  color: var(--color-bk);
}
.global_navigation-logo {
  margin: 0 auto 0 min(calc((33 / var(--w-base)) * 100vw), 33px);
  width: min(calc((35 / var(--w-base)) * 100vw), 35px);
  opacity: 0;
}
.global_navigation.is-active .global_navigation-logo {
  opacity: 1;
}
.global_navigation-menu_button__sp {
  display: none;
}

@media screen and (max-width: 750px) {
  .global_navigation {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
  }
  .global_navigation.is-active { /* メニューボタン押した時 */
    z-index: 9999;
    background: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .global_navigation::before {  /* ぼかし背景 */
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 0;
    height: 100vh;
    background: none;
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    opacity: 0;
    transition: var(--transition-type-1);
  }
  .global_navigation.is-active::before { /* ぼかし背景 / メニューボタン押した時 */
    opacity: 1;
    z-index: 100;
    width: 100%;
    position: relative;
  }
  .global_navigation-inner {
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 100vh;
    background: rgba(255, 255, 255, 0.8);
    overflow: hidden;
    transition: var(--transition-type-1);
  }
  .global_navigation-inner.is-active { /* メニューボタン押した時 */
    z-index: 9999;
    margin-right: 0;
    width: min(calc((480 / var(--w-base-sp)) * 100vw), 480px);
  }
  .global_navigation-list_wrap {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    gap: 0;
    margin: min(calc((300 / var(--w-base-sp)) * 100vw), 300px) -1% 0;
    padding: 0;
    transition: 0.1s;
    opacity: 0;
  }
  .global_navigation-list_wrap.is-active { /* メニューボタン押した時 */
    margin-right: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    opacity: 1;
    transition: var(--transition-type-3);
  }
  .global_navigation-logo {
    margin: 0;
    width: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
  }
  .global_navigation-list {
    margin-top: min(calc((97 / var(--w-base-sp)) * 100vw), 97px);
  }
  .global_navigation-list + .global_navigation-list {
    margin-top: min(calc((48 / var(--w-base-sp)) * 100vw), 48px);
  }
  .global_navigation-list a {
    color: var(--color-bk);
    font-size: min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
    font-weight: var(  --font-weight-Med);
  }
  .global_navigation-menu_button__sp {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: min(calc((10 / var(--w-base-sp)) * 100vw), 10px);
    position: absolute;
    top: 0;
    right: 0;
    z-index: 100;
    transform: translateY(-50%);
    margin: min(calc((70 / var(--w-base-sp)) * 100vw), 70px) min(calc((40 / var(--w-base-sp)) * 100vw), 40px) 0 0;
    width: min(calc((50 / var(--w-base-sp)) * 100vw), 50px);
  }
  .global_navigation-menu_button__sp.is-active { /* メニューボタン押した時 */
    z-index: 9999;
  }
  .global_navigation-menu_button__sp::before,
  .global_navigation-menu_button__sp::after {
    content: "";
    display: inline-block;
    width: min(calc((50 / var(--w-base-sp)) * 100vw), 50px);
    height: min(calc((4 / var(--w-base-sp)) * 100vw), 4px);
    background: var(--color-wh);
    transition: var(--transition-type-1);
  }
  .global_navigation-menu_button__sp.is-active::before { /* メニューボタン押した時 */
    position: absolute;
    top: 0;
    left: 0;
    transform: rotate(45deg);
    background: var(--color-bk);
  }
  .global_navigation-menu_button__sp.is-active::after { /* メニューボタン押した時 */
    position: absolute;
    top: 0;
    left: 0;
    transform: rotate(-45deg);
    background: var(--color-bk);
  }
}

@media screen and (orientation: landscape) and (max-width: 750px) {
  .global_navigation::before {  /* ぼかし背景 */
    width: 100%;
    height: 0;
  }
  .global_navigation.is-active::before { /* ぼかし背景 / メニューボタン押した時 */
    height: 100vh;
  }
  .global_navigation-inner {
    margin: -30% 0 0;
    width: 100%;
    height: auto;
  }
  .global_navigation-inner.is-active { /* メニューボタン押した時 */
    margin-top: 0;
    width: 100%;
  }
  .global_navigation-list_wrap {
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    gap: 0;
    margin: 0;
    padding: min(calc((8 / var(--w-base-sp)) * 100vw), 8px) 0;
    transition: 0.1s;
    opacity: 0;
  }
  .global_navigation-list_wrap.is-active { /* メニューボタン押した時 */
    margin-right: 0;
    opacity: 1;
  }
  .global_navigation-logo {
    margin: 0 auto 0 min(calc((33 / var(--w-base-sp)) * 100vw), 33px);
    width: min(calc((45 / var(--w-base-sp)) * 100vw), 45px);
  }
  .global_navigation-list,
  .global_navigation-list + .global_navigation-list {
    margin: 0 min(calc((29 / var(--w-base-sp)) * 100vw), 29px) 0 0;
  }
  .global_navigation-list a {
    font-size: min(calc((14 / var(--w-base-sp)) * 100vw), 14px);
  }
  .global_navigation-menu_button__sp {
    gap: min(calc((5 / var(--w-base-sp)) * 100vw), 5px);
    margin: min(calc((20 / var(--w-base-sp)) * 100vw), 20px) min(calc((20 / var(--w-base-sp)) * 100vw), 20px) 0 0;
    width: min(calc((18 / var(--w-base-sp)) * 100vw), 18px);
  }
  .global_navigation-menu_button__sp.is-active { /* メニューボタン押した時 */
    z-index: 9999;
  }
  .global_navigation-menu_button__sp::before,
  .global_navigation-menu_button__sp::after {
    width: 100%;
    height: min(calc((2 / var(--w-base-sp)) * 100vw), 2px);
  }
}



/*==========================================================*/
/* header
/*==========================================================*/
.header {
  position: relative;
  z-index: 10;
}
.header-inner {
  position: relative;
  z-index: 10;
  overflow: hidden;
}
.header-title {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-left: min(calc((96 / var(--w-base)) * 100vw), 96px);
  height: 100vh;
}
.header-title-main {
  display: inline-block;
  color: var(--color-wh);
  font-size: min(calc((78 / var(--w-base)) * 100vw), 78px);
  font-weight: var(--font-weight-reg);
  font-feature-settings: "palt";
  letter-spacing: 0.2em;
  line-height: calc(120 / 78);
  opacity: 0;
  opacity: var(--transition-type-1);
}
.header-title-main.is-active {
  opacity: 1;
}
.header-statement {
  width: 100%;
}
.header-statement-inner {
  width: 100%;
  height: 100vh;
  min-height: 700px;
  letter-spacing: 0.06em;;
  display: flex;
  margin-left: min(calc((100 / var(--w-base)) * 100vw), 100px);
  flex-direction: column;
  justify-content: end;
  align-items: flex-start;
}
.header-heading {
  margin-bottom: min(calc((29 / var(--w-base)) * 100vw), 29px);
  color: var(--color-wh);
  font-size: min(calc((50 / var(--w-base)) * 100vw), 50px);
  letter-spacing: 0.06em;
  line-height: 1;
  /* transform: translateY(-10%); */
}
.header-sentence {
  margin-bottom: max(calc((132 / 700) * 100vh), 132px);
  color: var(--color-wh);
  font-size: min(calc((20 / var(--w-base)) * 100vw), 20px);
  letter-spacing: 0.06em;
  line-height: calc(38 / 20);
  /* transform: translateY(-10%); */
}
.header-emphasis {
  margin-top: min(calc((31 / var(--w-base)) * 100vw), 31px);
  color: var(--color-wh);
  font-size: min(calc((32 / var(--w-base)) * 100vw), 32px);
  letter-spacing: 0.06em;
  line-height: 1;
  /* transform: translateY(-10%); */
}
.header-paragraph-end {
  margin-bottom: min(calc((14 / var(--w-base)) * 100vw), 14px);
}
.product_section {
  padding: min(calc((100 / var(--w-base)) * 100vw), 100px) 0;
}
.product_banner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: min(calc((1200 / var(--w-base)) * 100vw), 1200px);
  margin: 0 auto;
  transition: var(--transition-type-1);
}
.product_item {
  box-shadow: 0 min(calc((4 / var(--w-base)) * 100vw), 4px) min(calc((7 / var(--w-base)) * 100vw), 7px) rgba(0, 0, 0, 0.35);
  width: min(calc((590 / var(--w-base)) * 100vw), 590px);
}
.product-visual-wrap {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  width: 100%;
  height: min(calc((392 / var(--w-base)) * 100vw), 392px);
}
.product-visual-wrap.is-active {
  bottom: 0;
}
.product-visual-wrap-highball {
  margin-bottom: min(calc((121 / var(--w-base)) * 100vw), 121px);
}
.product-visual-inner {
  position: absolute;
  bottom: 0;
  /* margin-top: min(calc((103 / var(--w-base)) * 100vw), 103px); */
  padding-bottom: min(calc((58 / var(--w-base)) * 100vw), 58px);
  width: 100%;
}
.product-visual-inner-highball {
  padding-bottom: 0;
}
.product-visual-blur_bg { /* ぼかし背景 */
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transform: translateY(0%);
  margin-top: min(calc((58 / var(--w-base)) * 100vw), 58px);
  width: 100%;
  height: min(calc((317 / var(--w-base)) * 100vw), 317px);
  background: rgba(59, 45, 31, 0.3);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
.product-visual-blur_bg-highball {
  margin-top: 0;
}
.product-visual {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, 1fr);
  justify-content: center;
  align-items: center;
  width: 100%;
}
.product-visual-highball {
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(1, 1fr);
  height: min(calc((317 / var(--w-base)) * 100vw), 317px);
}
.product_text-highball {
  position: relative;
  margin-top: min(calc((16 / var(--w-base)) * 100vw), 16px);
}
.product_text-highball::after {
  position: absolute;
  content: "";
  display: block;
  width: min(calc((81 / var(--w-base)) * 100vw), 81px);
  height: min(calc((49 / var(--w-base)) * 100vw), 49px);
  background-image: url(../images/new.svg);
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
  top: min(calc((-40 / var(--w-base)) * 100vw), -40px);
  left: min(calc((-32 / var(--w-base)) * 100vw), -32px);
}
.product_name {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  margin: auto auto 0 0;
}
.product_name-highball {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
  margin: 0 auto min(calc((5 / var(--w-base)) * 100vw), 5px) 0;
  text-align: center;
}
.product_name-main {
  color: var(--color-wh);
  font-size: min(calc((50 / var(--w-base)) * 100vw), 50px);
  letter-spacing: 0.03em;
  line-height: calc(63 / 50);
}
.product_name-main-highball {
  font-size: min(calc((40 / var(--w-base)) * 100vw), 40px);
  line-height: calc(54 / 40);
  text-align: center;
}
.product_copy-highball {
  margin-bottom: min(calc((24 / var(--w-base)) * 100vw), 24px);
  color: var(--color-wh);
  font-size: min(calc((18 / var(--w-base)) * 100vw), 18px);
  line-height: calc(36 / 18);
  text-align: center;
}
.product_button-highball {
  display: block;
  position: relative;
  color: #fff;
  font-size: min(calc((16 / var(--w-base)) * 100vw), 16px);
  width: min(calc((240 / var(--w-base)) * 100vw), 240px);
  margin: 0 auto;
  padding: 0 0 0 min(calc((40 / var(--w-base)) * 100vw), 40px);
  border: solid 1px #fff;
  box-sizing: border-box!important;
  transition: opacity .3s;
  line-height: calc(44 / 16);
}
.product_button-highball:hover {
  opacity: .7;
}
.product_button-highball::after {
  content: "";
  display: block;
  position: absolute;
  width: min(calc((7 / var(--w-base)) * 100vw), 7px);
  height: min(calc((14 / var(--w-base)) * 100vw), 14px);
  background-image: url(../images/highball_arrow.svg);
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
  top: 50%;
  right: min(calc((15.7 / var(--w-base)) * 100vw), 15.7px);
  transform: translateY(-50%);
}
.brand_logo {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  margin: auto auto 0;
  width: min(calc((327 / var(--w-base)) * 100vw), 327px);
}
.featured_product {
  grid-column: 2 / 3;
  grid-row: 1 / 3;
  margin-left: min(calc((59 / var(--w-base)) * 100vw), 59px);
  width: min(calc((120 / var(--w-base)) * 100vw), 120px);
}
.featured_product-highball {
  grid-column: 1 / 2;
  grid-row: 1 / 4;
  margin-right: min(calc((106 / var(--w-base)) * 100vw), 106px);
  width: min(calc((133.52 / var(--w-base)) * 100vw), 133.52px);
}
.float-banner {
  display: none;
  position: fixed;
  bottom: min(calc((60 / var(--w-base)) * 100vw), 60px);
  right: min(calc((20 / var(--w-base)) * 100vw), 20px);
  width: min(calc((206 / var(--w-base)) * 100vw), 206px);
  transition: opacity .3s;
  z-index: 99;
}
.float-banner:hover {
  opacity: .7!important;
}
.header-scroll_button {
  position: fixed;
  bottom: min(calc((60 / var(--w-base)) * 100vw), 60px);
  right: min(calc((50 / var(--w-base)) * 100vw), 50px);
  width: min(calc((120 / var(--w-base)) * 100vw), 120px);
  height: min(calc((120 / var(--w-base)) * 100vw), 120px);
}
.header-scroll_button.is-active {
  display: none;
}
.scroll_button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;  border: 1px solid var(--color-wh);
  border-radius: 50%;
  transition: var(--transition-type-2);
  cursor: pointer;
}
.header-scroll_button.is-active .scroll_button {
  display: none;
}
.scroll_button-text {
  color: var(--color-wh);
  font-size: min(calc((18 / var(--w-base)) * 100vw), 18px);
}
.product-visual-annotation {
  position: absolute;
  color: #fff;
  font-size: min(calc((12 / var(--w-base)) * 100vw), 12px);
  right: min(calc((100 / var(--w-base)) * 100vw), 100px);
  bottom: min(calc((-30 / var(--w-base)) * 100vw), -30px);
}

/* 背景動画 */
.header-bg-video {
  position: absolute;
  z-index: 0;
  top: 0;
  right:0;
  left:0;
  bottom:0;
  width: 100%;
  height: 100vh;
  min-height: 700px;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background-color: #000;
}
.header-bg-video::-webkit-scrollbar{
  display: none;
}
.header-bg-video.is-active {
  position: fixed;
  height: 100vh;
  min-height: 700px;
}
.header-video {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;  /* 16:9 → (16 / 9) * 100 */
  height: 120%; /* 16:9 → (9 / 16) * 100 */
  min-height: 100%;
  min-width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  transition: opacity .2s;
}
.movie-note {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.movie-note-text {
  position: absolute;
  bottom: 0;
  right: 0;
  margin: min(calc((20 / var(--w-base)) * 100vw), 20px);
  color: var(--color-wh);
  font-size: min(calc((16 / var(--w-base)) * 100vw), 16px);
  letter-spacing: 0.06em;
}
.movie-note-text.is-active {
  position: fixed;
}

@media screen and (max-width: 750px) {
  .header {
    z-index: 10;
  }
  .header-title {
    margin: 0;
    margin-left: min(calc((38 / var(--w-base-sp)) * 100vw), 38px);
  }
  .header-title-main {
    font-size: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
    line-height: calc(120 / 100);
  }
  .header-title-main span:nth-of-type(1) {
    display: block;
    letter-spacing: 0.147em;
  }
  .header-title-main span:nth-of-type(2) {
    display: block;
  }
  .header-statement {
    height: auto;
  }
  .header-statement-inner {
    height: min(calc((1300 / var(--w-base-sp)) * 100vw), 1300px);
    margin-left: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
  }
  .header-heading {
    margin-bottom: min(calc((60 / var(--w-base-sp)) * 100vw), 29px);
    font-size: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
  }
  .header-emphasis {
    margin-top: min(calc((49 / var(--w-base-sp)) * 100vw), 49px);
    margin-bottom: min(calc((180 / var(--w-base-sp)) * 100vw), 180px);
    font-size: min(calc((38 / var(--w-base-sp)) * 100vw), 38px);
    line-height: calc(60 / 38);
  }
  .header-sentence {
    margin-bottom: min(calc((338 / var(--w-base-sp)) * 100vw), 338px);
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
    font-weight: var(  --font-weight-Med);
    letter-spacing: 0.01em;
    line-height: calc(50 / 28);
  }
  .header-paragraph-end {
    margin-bottom: min(calc((29 / var(--w-base-sp)) * 100vw), 29px);
  }
  .product_section {
    padding: min(calc((100 / var(--w-base-sp)) * 100vw), 100px) 0;
  }
  .product_banner {
    flex-direction: column;
    gap: min(calc((40 / var(--w-base-sp)) * 100vw), 40px) 0;
  }
  .product_item {
    box-shadow: 0 min(calc((4 / var(--w-base-sp)) * 100vw), 4px) min(calc((7 / var(--w-base-sp)) * 100vw), 7px) rgba(0, 0, 0, 0.35);
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
  }
  .product-visual-wrap {
    position: relative;
    height: 100vh;
  }
  .product-visual-wrap-highball {
    margin-bottom: 0;
  }
  .product-visual-inner {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 0;
    height: 100vh;
  }
  .product-visual {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: initial;
    bottom: initial;
  }
  .product_text-highball {
    margin-top: min(calc((0 / var(--w-base-sp)) * 100vw), 0px);
  }
  .product_text-highball::after {
    width: min(calc((173 / var(--w-base-sp)) * 100vw), 173px);
    height: min(calc((104 / var(--w-base-sp)) * 100vw), 104px);
    top: 0;
    left: min(calc((-32 / var(--w-base-sp)) * 100vw), -32px);
  }
  .product-visual-blur_bg { /* ぼかし背景 */
    margin-top: 0;
    width: 100%;
    height: 100%;
  }
  .featured_product {
    margin: 0 auto;
    width: min(calc((230 / var(--w-base-sp)) * 100vw), 230px);
  }
  .featured_product-highball {
    width: min(calc((250 / var(--w-base-sp)) * 100vw), 250px);
  }
  .product_name {
    margin: min(calc((100 / var(--w-base-sp)) * 100vw), 100px) 0 0 0;
    text-align: center;
  }
  .product_name-main {
    font-size: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
    line-height: calc(63 / 60);
  }
  .product_name-main-highball {
    font-size: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
    line-height: calc(81 / 60);
  }
  .brand_logo {
    margin: min(calc((21 / var(--w-base-sp)) * 100vw), 21px) 0 0;
    width: min(calc((468 / var(--w-base-sp)) * 100vw), 468px);
  }
  .header-scroll_button {
    bottom: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
    right: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    width: min(calc((120 / var(--w-base-sp)) * 100vw), 120px);
    height: min(calc((120 / var(--w-base-sp)) * 100vw), 120px);
  }
  .scroll_button-text {
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
  }
  .product_copy-highball {
    margin-bottom: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
    line-height: calc(64 / 28);
  }
  .product_button-highball {
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
    width: min(calc((480 / var(--w-base-sp)) * 100vw), 480px);
    padding: 0 0 0 min(calc((107 / var(--w-base-sp)) * 100vw), 107px);
    border: solid 1px #fff;
    box-sizing: border-box!important;
    transition: inherit;
    line-height: calc(88 / 28);
  }
  .product_button-highball:hover {
    opacity: 1;
  }
  .product_button-highball::after {
    content: "";
    display: block;
    position: absolute;
    width: min(calc((14 / var(--w-base-sp)) * 100vw), 14px);
    height: min(calc((27 / var(--w-base-sp)) * 100vw), 27px);
    background-image: url(../images/highball_arrow.svg);
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
    top: 50%;
    right: min(calc((15.7 / var(--w-base-sp)) * 100vw), 15.7px);
  }
  .float-banner {
    bottom: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
    right: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
    width: min(calc((304 / var(--w-base-sp)) * 100vw), 304px);
    max-width: 210px;
    transition: opacity .3s;
  }
  .float-banner:hover {
    opacity: 1;
  }
  .product-visual-annotation {
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
    right: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    bottom: min(calc((-53 / var(--w-base-sp)) * 100vw), -53px);
  }

  /* 背景動画 */
  .header-bg-video {
    position: absolute;
    height: min(calc((1300 / var(--w-base-sp)) * 100vw), 1300px);
    aspect-ratio: 75 / 119;
    overflow: hidden;
  }
  .header-bg-video.is-active {
    position: fixed;
  }
  .header-video {
    width: 140vw;  /* 75:119 → (75 / 119) * 100 */
    height: auto; /* 75:119 → (119 / 75) * 100 */
    aspect-ratio: 75 / 119;
  }
  .movie-note-text {
    margin-right: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    margin-bottom: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
  }
}
@media (min-aspect-ratio: 16/9) {
  .header-video {
    width: 120%;
    height: auto;
  }
}
@media (max-aspect-ratio: 9/16) {
  .header-video {
    width: auto;
    height: 140%;
  }
}

@media screen and (orientation: landscape) and (max-width: 750px) {
  .header-title {
    margin: 0;
    padding: 0 0 0 min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
  }
  .header-title-main {
    font-size: min(calc((50 / var(--w-base-sp)) * 100vw), 50px);
  }
  .header-title-main span:nth-of-type(1) {
    display: inline;
    letter-spacing: 0.147em;
  }
  .header-title-main span:nth-of-type(2) {
    display: inline;
  }
  .header-statement {
    margin: 0 0 0 min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
  }
  .header-sentence {
    font-size: min(calc((15 / var(--w-base-sp)) * 100vw), 15px);
    line-height: calc(38 / 15);
  }
  .header-paragraph-end {
    margin-bottom: min(calc((15 / var(--w-base-sp)) * 100vw), 15px);
  }
  .product-visual {
    display: grid;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(2, 1fr);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .featured_product {
    margin: 0 0 0 min(calc((59 / var(--w-base-sp)) * 100vw), 59px);
    width: min(calc((120 / var(--w-base-sp)) * 100vw), 120px);
  }
  .product_name {
    margin: auto auto 0;
    text-align: left;
  }
  .product_name-main {
    font-size: min(calc((50 / var(--w-base-sp)) * 100vw), 50px);
    line-height: calc(30 / 25);
  }
  .brand_logo {
    margin: 0 auto;
    width: min(calc((424 / var(--w-base-sp)) * 100vw), 424px);
  }
  .header-scroll_button {
    bottom: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    right: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
    width: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
    height: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
  }
  .scroll_button-text {
    font-size: min(calc((10 / var(--w-base-sp)) * 100vw), 10px);
  } */

  /* 背景動画 */
  .header-bg-video {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    aspect-ratio: 16 / 9;
  }
  .header-video {
    width: auto;
    height: 120vh;
    aspect-ratio: 16 / 9;
  }
  .movie-note-text {
    margin: min(calc((10 / var(--w-base-sp)) * 100vw), 10px);
    font-size: min(calc((12 / var(--w-base-sp)) * 100vw), 12px);
  }
}



/*==========================================================*/
/* about
/*==========================================================*/
.about {
  position: relative;
  padding-top: min(calc((200 / var(--w-base)) * 100vw), 200px);
  z-index: 11;
  background: var(--color-lgy);
}
.about-section {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
  height: 100vh;
  background: var(--color-lgy);
}
.about-section_01 {
  z-index: 2;
}
.about-section_02 {
  z-index: 1;
}
.about-section_01.is-active {
  position: sticky;
  top: 0;
}
.about-section_02.is-active {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.about-section-inner {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: min(calc((60 / var(--w-base)) * 100vw), 60px);
  position: relative;
  margin: 0 auto;
  width: min(calc((1200 / var(--w-base)) * 100vw), 1200px);
}
.about-section-img_area {
  position: relative;
  width: min(calc((744 / var(--w-base)) * 100vw), 744px);
  height: min(calc((644 / var(--w-base)) * 100vw), 644px);
}
.about-section_01 .about-section-img-large {
  position: absolute;
  top: 0;
  right: 0;
  width: min(calc((488 / var(--w-base)) * 100vw), 488px);
  transform: translateY(200px);
}
.about-section_02 .about-section-img-large {
  position: absolute;
  top: 0;
  left: 0;
  width: min(calc((488 / var(--w-base)) * 100vw), 488px);
  transform: translateY(180px);
}
.about-section_01 .about-section-img-small {
  position: absolute;
  bottom: 0;
  left: 0;
  width: min(calc((315 / var(--w-base)) * 100vw), 315px);
}
.about-section_02 .about-section-img-small {
  position: absolute;
  bottom: 0;
  right: 0;
  width: min(calc((288 / var(--w-base)) * 100vw), 288px);
}
.about-caption {
  margin-top: min(calc((152 / var(--w-base)) * 100vw), 152px);
}
.about-caption-text {
  font-size: min(calc((32 / var(--w-base)) * 100vw), 32px);
  letter-spacing: 0.06em;
  line-height: calc(50 / 32);
}
.about-copy-paragraph {
  margin-top: min(calc((34 / var(--w-base)) * 100vw), 34px);
  font-size: min(calc((16 / var(--w-base)) * 100vw), 16px);
  letter-spacing: 0;
  line-height: calc(30 / 16);
}
.about-copy-paragraph + .about-copy-paragraph {
  margin-top: min(calc((19 / var(--w-base)) * 100vw), 19px);
}
.about-copy-note {
  margin-top: min(calc((18 / var(--w-base)) * 100vw), 18px);
  text-indent: -2.9%;
  margin-left: 2.9%;
  color: var(--color-gy);
  font-size: min(calc((12 / var(--w-base)) * 100vw), 12px);
  letter-spacing: 0;
  line-height: calc(25 / 12);
}
.about-copy-note + .about-copy-note {
  margin-top: 0;
}

@media screen and (max-width: 750px) {
  .about {
    z-index: 10;
    height: auto;
    padding-top: 40px;
    padding-bottom: 120px;
  }
  .about-section {
    flex-direction: column;
    padding-top: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
    height: auto;
  }
  .about-section + .about-section {
    padding-top: min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
  }
  .about-section_01.is-active {
    position: relative;
    top: 0;
  }
  .about-section_02.is-active {
    position: relative;
    top: 0;
    left: 0;
    transform: translateX(0);
  }
  .about-section-inner {
    display: block;
    margin: 0 min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
  }
  .about-section_01 .about-section-img_area,
  .about-section_02 .about-section-img_area {
    width: 100%;
    height: min(calc((623 / var(--w-base-sp)) * 100vw), 623px);
  }
  .about-section_01 .about-section-img-large {
    width: min(calc((453 / var(--w-base-sp)) * 100vw), 453px);
  }
  .about-section_02 .about-section-img-large {
    top: inherit;
    bottom: 0;
    width: min(calc((453 / var(--w-base-sp)) * 100vw), 453px);
  }
  .about-section_01 .about-section-img-small {
    width: min(calc((293 / var(--w-base-sp)) * 100vw), 293px);
  }
  .about-section_02 .about-section-img-small {
    top: 0;
    bottom: initial;
    width: min(calc((293 / var(--w-base-sp)) * 100vw), 293px);
  }
  .about-caption {
    margin-top: min(calc((70 / var(--w-base-sp)) * 100vw), 70px);
  }
  .about-caption-text {
    font-size: min(calc((50 / var(--w-base-sp)) * 100vw), 50px);
    letter-spacing: 0.06em;
    line-height: calc(72 / 50);
  }
  .about-copy-paragraph {
    margin-top: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
    letter-spacing: 0.04em;
    line-height: calc(44 / 28);
  }
  .about-copy-paragraph + .about-copy-paragraph {
    margin-top: min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
  }
  .about-copy-note {
    margin-top: min(calc((29 / var(--w-base-sp)) * 100vw), 29px);
    text-indent: -3.2%;
    margin-left: 3.2%;
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
  }
  .about-copy-note + .about-copy-note {
    margin-top: 0;
  }
}

/*==========================================================*/
/* howto
/*==========================================================*/

.howto_banner {
  box-shadow: 0 min(calc((4 / var(--w-base)) * 100vw), 4px) min(calc((7 / var(--w-base)) * 100vw), 7px) rgba(0, 0, 0, 0.35);
  width: min(calc((1200 / var(--w-base)) * 100vw), 1200px);
  margin: 0 auto;
  transition: var(--transition-type-1);
}

.howto_banner:hover {
  opacity: .7;
}

@media screen and (max-width: 750px) {
  .howto_banner {
    box-shadow: 0 min(calc((4 / var(--w-base-sp)) * 100vw), 4px) min(calc((7 / var(--w-base-sp)) * 100vw), 7px) rgba(0, 0, 0, 0.35);
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
  }
}

/*==========================================================*/
/* movie
/*==========================================================*/
.movie {
  position: relative;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  background: linear-gradient(0deg, var(--color-wh) 68.6%, var(--color-lgy) 31.4%);
}
.movie_banner {
  box-shadow: 0 min(calc((4 / var(--w-base)) * 100vw), 4px) min(calc((7 / var(--w-base)) * 100vw), 7px) rgba(0, 0, 0, 0.35);
  width: min(calc((1200 / var(--w-base)) * 100vw), 1200px);
  margin: min(calc((60 / var(--w-base)) * 100vw), 60px) auto 0;
  transition: var(--transition-type-1);
}
.movie_banner:hover {
  opacity: .7;
}
.movie-section-inner {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin: 0 auto;
  width: min(calc((1200 / var(--w-base)) * 100vw), 1200px);
  height: min(calc((980 / var(--w-base)) * 100vw), 980px);
}
.movie-section-box {
  display: block;
  position: relative;
  width: 0;
  opacity: 0;
  overflow: hidden;
}
.movie-section-thumbnail {
  position: relative;
  width: min(calc((1200 / var(--w-base)) * 100vw), 1200px);
  height: 100%;
}
.movie-section-icon {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: min(calc((34 / var(--w-base)) * 100vw), 34px);
  width: min(calc((385 / var(--w-base)) * 100vw), 385px);
}

@media screen and (max-width: 750px) {
  .movie {
    z-index: 10;
    background: linear-gradient(0deg, var(--color-wh) 70%, var(--color-lgy) 0%);
  }
  .movie_banner {
    box-shadow: 0 min(calc((4 / var(--w-base-sp)) * 100vw), 4px) min(calc((7 / var(--w-base-sp)) * 100vw), 7px) rgba(0, 0, 0, 0.35);
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
  }
  .movie-section-inner {
    align-items: center;
    padding: 0 min(calc((40 / var(--w-base-sp)) * 100vw), 40px) 0;
    height: 100vh;
  }
  .movie-section-box {
    width: 0;
  }
  .movie-section-icon {
    margin-bottom: min(calc((57 / var(--w-base-sp)) * 100vw), 57px);
    width: min(calc((400 / var(--w-base-sp)) * 100vw), 400px);
  }
}



.gotenba_banner {
  margin-top: min(calc((100 / var(--w-base)) * 100vw), 100px);
}

/*==========================================================*/
/* product
/*==========================================================*/
.product {
  position: relative;
  padding: min(calc((100 / var(--w-base-sp)) * 100vw), 100px) 0;
  z-index: 11;
}
.product-quality-section {
  position: relative;
  top: 0;
  left: 0;
  padding-bottom: min(calc((440 / var(--w-base)) * 100vw), 440px);
  width: 100%;
  height: 100%;
  z-index: 6;
}
.product-quality-section.is-active {
  position: fixed;
}
.product-quality-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transform: translate(-100%, 0);
}
.product-quality-img picture {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
.product-quality-copy {
  position: relative;
  top: min(calc((280 / var(--w-base)) * 100vw), 280px);
  z-index: 1;
  margin: 0 auto;
  padding: min(calc((75 / var(--w-base)) * 100vw), 75px) 0;
  width: min(calc((960 / var(--w-base)) * 100vw), 960px);
  background: var(--color-wh);
  text-align: center;
}
.product-quality-paragraph {
  font-size: min(calc((18 / var(--w-base)) * 100vw), 18px);
  letter-spacing: 0.06em;
  line-height: calc(36 / 18);
}
.product-quality-paragraph + .product-quality-paragraph {
  margin-top: min(calc((25 / var(--w-base)) * 100vw), 25px);
}
.product-quality-paragraph .note {
  font-size: min(calc((10 / var(--w-base)) * 100vw), 10px);
  letter-spacing: 0;
  line-height: 1;
  vertical-align: text-top;
}
.product-quality-copy-note {
  position: absolute;
  bottom: 0;
  right: 0;
  margin: min(calc((15 / var(--w-base)) * 100vw), 15px);
}
.product-quality-copy-note-text {
  color: var(--color-dgy);
  font-size: min(calc((12 / var(--w-base)) * 100vw), 12px);
  letter-spacing: 0.011em;
  line-height: calc(20 / 12);
}
.product-features-section {
  position: relative;
  margin: min(calc((80 / var(--w-base)) * 100vw), 80px) auto 0;
  width: min(calc((1196 / var(--w-base)) * 100vw), 1196px);
  height: 100%;
  border: solid 2px #91602A;
  background-color: rgba(255, 255, 255, .6);
}
.product-features-section-inner {
  margin: min(calc((4 / var(--w-base)) * 100vw), 4px);
  padding: min(calc((80 / var(--w-base)) * 100vw), 80px) 0;
  border: solid 1px #91602A;
}
.product-features-section-contents {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* 商品特徴 */
.product-title {
  font-size: min(calc((46 / var(--w-base)) * 100vw), 46px);
  line-height: 1.261;
  color: #91602A;
  text-align: center;
}
.product-text {
  margin-top: min(calc((40 / var(--w-base)) * 100vw), 40px);
  font-size: min(calc((16 / var(--w-base)) * 100vw), 16px);
  line-height: 1.875;
  text-align: center;
}
.product-text span {
  color: #7C7C7C;
  display: block;
  font-size: min(calc((12 / var(--w-base)) * 100vw), 12px);
  margin-top: min(calc((20 / var(--w-base)) * 100vw), 20px);
}

.product-features-section_01 {
  display: grid;
  /* margin-top: min(calc((60 / var(--w-base)) * 100vw), 60px); */
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(3, auto);
  justify-content: center;
  align-items: center;
  column-gap: min(calc((120 / var(--w-base)) * 100vw), 120px);
  row-gap: min(calc((58 / var(--w-base)) * 100vw), 58px);
}
.product-features-main_img {
  grid-column: 1 / 2;
  grid-row: 1 / 4;
  position: relative;
  top: 0;
  width: min(calc((173 / var(--w-base)) * 100vw), 173px);
  margin-bottom: auto;
}
.product-features_01 {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
}
.product-features_02 {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
}
.product-features_03 {
  grid-column: 2 / 3;
  grid-row: 3 / 4;
}
.product-features-caption {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: min(calc((12 / var(--w-base)) * 100vw), 12px);
}
.product-features-caption-img {
  display: block;
  height: min(calc((16 / var(--w-base)) * 100vw), 16px);
}
.product-features-caption-text {
  font-size: min(calc((32 / var(--w-base)) * 100vw), 32px);
  letter-spacing: 0.05em;
  line-height: 1;
}
.product-features-copy {
  margin-top: min(calc((8 / var(--w-base)) * 100vw), 8px);
}
.product-features-copy-text {
  font-size: min(calc((16 / var(--w-base)) * 100vw), 16px);
  letter-spacing: 0.011em;
  line-height: calc(26 / 16);
}
.product-features-note {
  margin-top: min(calc((61 / var(--w-base)) * 100vw), 61px);
}
.product-features-note li {
  color: #7C7C7C;
  font-size: min(calc((12 / var(--w-base)) * 100vw), 12px);
}
.product-features-note p {
  font-size: min(calc((12 / var(--w-base)) * 100vw), 12px);
  color: #7C7C7C;
  margin-top: min(calc((16 / var(--w-base)) * 100vw), 16px);
}
/* 製法 */ /* 熟成 */
.product-recipe,
.product-mature {
  padding-bottom: min(calc((300 / var(--w-base)) * 100vw), 300px);
  width: 100%;
  height: 100%;
  opacity: 0;
}
.product-recipe {
  padding-top: min(calc((200 / var(--w-base)) * 100vw), 200px);
}
.product-recipe .product-features-section-wrap,
.product-mature .product-features-section-wrap {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(1, auto);
  justify-content: center;
  align-items: center;
  gap: min(calc((50 / var(--w-base)) * 100vw), 50px);
  margin: auto;
  width: min(calc((821 / var(--w-base)) * 100vw), 821px);
}
.product-recipe-main_img,
.product-mature-main_img {
  width: min(calc((300 / var(--w-base)) * 100vw), 300px);
}
.product-recipe-wrap,
.product-mature-wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: min(calc((51 / var(--w-base)) * 100vw), 51px);
}
.product-recipe-copy-text,
.product-mature-copy-text {
  font-size: min(calc((18 / var(--w-base)) * 100vw), 18px);
  letter-spacing: 0.04em;
  line-height: calc(32 / 18);
}
a.product-recipe-detail {
  display: block;
  position: relative;
  margin: 0 0 0 auto;
  padding-right: min(calc((23 / var(--w-base)) * 100vw), 23px);
  border-bottom: 1px solid var(--color-gd);
}
a.product-recipe-detail::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: rotate(-45deg);
  -moz-transform-origin: 100% 100%;
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
  width: 1px;
  height: 10px;
  background: var(--color-gd);
}
.product-recipe-detail-text {
  color: var(--color-gd);
  font-size: min(calc((18 / var(--w-base)) * 100vw), 18px);
  letter-spacing: 0.04em;
  line-height: calc(32 / 18);
}
.product-summary {
  bottom: 0;
  left: 0;
  z-index: 10;
  margin: 0 auto;
  padding: min(calc((20 / var(--w-base)) * 100vw), 20px) 0;
  width: min(calc((821 / var(--w-base)) * 100vw), 821px);
}
.product-summary-text {
  margin: 0 auto;
  width: min(calc((960 / var(--w-base)) * 100vw), 960px);
}
.product-summary-caption,
.product-summary-copy {
  display: block;
  font-size: min(calc((12 / var(--w-base)) * 100vw), 12px);
  letter-spacing: 0.011em;
  line-height: calc(20 / 12);
}

@media screen and (max-width: 750px) {
  .product {
    padding: min(calc((100 / var(--w-base-sp)) * 100vw), 100px) 0 min(calc((160 / var(--w-base-sp)) * 100vw), 160px);;
  }
  .product-quality-section {
    padding-bottom: 50vh;
  }
  .product-quality-copy {
    top: min(calc((400 / var(--w-base-sp)) * 100vw), 400px);
    padding: min(calc((80 / var(--w-base-sp)) * 100vw), 80px) 0 min(calc((120 / var(--w-base-sp)) * 100vw), 120px);
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
  }
  .product-quality-paragraph {
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
    letter-spacing: 0;
    line-height: calc(64 / 28);
  }
  .product-quality-paragraph + .product-quality-paragraph {
    margin-top: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
  }
  .product-quality-paragraph .note {
    font-size: min(calc((10 / var(--w-base-sp)) * 100vw), 10px);
  }
  .product-quality-copy-note {
    margin: 0 min(calc((28 / var(--w-base-sp)) * 100vw), 28px) min(calc((20 / var(--w-base-sp)) * 100vw), 20px) 0;
  }
  .product-quality-copy-note-text {
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
    line-height: calc(30 / 20);
  }
  .product-features-section {
    position: relative;
    margin: min(calc((100 / var(--w-base-sp)) * 100vw), 100px) auto 0;
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
    height: 100%;
  }
  .product-features-section-inner {
    margin: min(calc((4 / var(--w-base-sp)) * 100vw), 4px);
    padding: min(calc((98 / var(--w-base-sp)) * 100vw), 98px) 0;
    border: solid 1px #91602A;
  }
  .product-features-section_01 {
    display: block;
    /* margin-top: min(calc((100 / var(--w-base-sp)) * 100vw), 100px); */
    padding: 0 min(calc((40 / var(--w-base-sp)) * 100vw), 40px) 0 min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    width: auto;
  }
  .product-title {
    font-size: min(calc((60 / var(--w-base-sp)) * 100vw),60px);
  }
  .product-text {
    margin-top: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
  }
  .product-text span {
    margin-top: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
  }
  .product-features-main_img {
    position: relative;
    margin: 0 auto;
    width: min(calc((202 / var(--w-base-sp)) * 100vw), 202px);
  }
  .product-features {
    margin-top: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
    width: 100%;
  }
  .product-features + .product-features {
    margin-top: min(calc((90 / var(--w-base-sp)) * 100vw), 90px);
  }
  .product-features-item {
    height: 100%;
  }
  .product-features-caption {
    gap: min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
  }
  .product-features-caption-text {
    font-size: min(calc((50 / var(--w-base-sp)) * 100vw), 50px);
  }
  .product-features-caption-img {
    height: min(calc((28 / var(--w-base)) * 100vw), 28px);
  }
  .product-features-copy {
    margin-top: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
  }
  .product-features-copy-text {
    font-size: min(calc((27 / var(--w-base-sp)) * 100vw), 27px);
    letter-spacing: 0.02em;
    line-height: calc(40 / 27);
  }
  .product-features-note {
    margin-top: min(calc((50 / var(--w-base-sp)) * 100vw), 50px);;
    margin-right: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
  }
  .product-features-note li {
    font-size: min(calc((22 / var(--w-base-sp)) * 100vw), 22px);
  }
  .product-recipe,
  .product-mature {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 0;
    margin: 0;
    padding: 0 min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    width: auto;
    height: 83vh;
    opacity: 0;
  }
  .product-mature {
    padding-bottom: min(calc((260 / var(--w-base)) * 100vw), 260px);
  }
  .product-recipe .product-features-section-wrap,
  .product-mature .product-features-section-wrap {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 0;
    margin: min(calc((100 / var(--w-base-sp)) * 100vw), 100px) 0 0;
    width: 100%;
    transition: opacity .2s;
  }
  .product-recipe .product-features-section-wrap {
    margin: min(calc((220 / var(--w-base-sp)) * 100vw), 220px) 0 0;
  }
  .product-recipe-main_img,
  .product-mature-main_img {
    margin: 0;
    width: 100%;
  }
  .product-recipe-wrap {
    gap: 0;
  }
  .product-recipe-copy,
  .product-mature-copy {
    margin: min(calc((100 / var(--w-base-sp)) * 100vw), 100px) 0 0;
  }
  .product-recipe-copy-text,
  .product-mature-copy-text {
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
    letter-spacing: 0.04em;
    line-height: calc(44 / 28);
  }
  a.product-recipe-detail {
    margin-top: min(calc((89 / var(--w-base-sp)) * 100vw), 89px);
    padding-right: min(calc((56 / var(--w-base-sp)) * 100vw), 56px);
  }
  a.product-recipe-detail::after {
    height: min(calc((24 / var(--w-base-sp)) * 100vw), 24px);
  }
  .product-recipe-detail-text {
    font-size: min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
    line-height: calc(32 / 30);
  }
  .product-summary {
    padding: min(calc((26 / var(--w-base-sp)) * 100vw), 26px) min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    width: auto;
  }
  .product-summary-text {
    width: 100%;
  }
  .product-summary-caption,
  .product-summary-copy {
    font-size: min(calc((22 / var(--w-base-sp)) * 100vw), 22px);
    line-height: calc(32 / 22);
  }
}



/*==========================================================*/
/* cmgallery
/*==========================================================*/
.cmgallery {
  position: relative;
  /* margin-top: 1200px; */
  z-index: 11;
  background: var(--color-dbe);
}
.cmgallery-title {
  padding-top: min(calc((112 / var(--w-base)) * 100vw), 112px);
  text-align: center;
}
.cmgallery-title-text {
  color: var(--color-wh);
  font-size: min(calc((60 / var(--w-base)) * 100vw), 60px);
  letter-spacing: 0.06em;
  line-height: calc(62 / 60);
}
.cmgallery-section-inner {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
  justify-content: center;
  align-items: center;
  column-gap: min(calc((40 / var(--w-base)) * 100vw), 40px);
  row-gap: min(calc((60 / var(--w-base)) * 100vw), 60px);
  padding-bottom: min(calc((120 / var(--w-base)) * 100vw), 120px);
  margin-top: min(calc((74 / var(--w-base)) * 100vw), 74px);
}
.cmgallery-thumbnail-box {
  width: min(calc((460 / var(--w-base)) * 100vw), 460px);
}
.cmgallery-thumbnail {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.cmgallery-thumbnail_icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(calc((60 / var(--w-base)) * 100vw), 60px);
}
.cmgallery-movie_caption {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: min(calc((25 / var(--w-base)) * 100vw), 25px)  min(calc((20 / var(--w-base)) * 100vw), 20px);
  background: var(--color-wh);
}
.cmgallery-movie_caption-main,
.cmgallery-movie_caption-sub {
  font-size: min(calc((18 / var(--w-base)) * 100vw), 18px);
  letter-spacing: 0.02em;
  line-height: calc(34 / 18);
}

#section06 {
  padding: min(calc((120 / var(--w-base)) * 100vw), 120px) 0;
}

.about__link {
  display: block;
  margin: 0 auto;
  width: min(calc((960 / var(--w-base)) * 100vw), 960px);
  transition: opacity var(--transition-type-1);
}

.about__link:hover {
  opacity: 0.7;
}

@media screen and (max-width: 750px) {
  .cmgallery-title {
    padding-top: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
  }
  .cmgallery-title-text {
    font-size: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
    letter-spacing: 0;
    line-height: calc(63 / 60);
  }
  .cmgallery-section-inner {
    display: grid;
    grid-template-columns: repeat(1, auto);
    grid-template-rows: repeat(4, auto);
    column-gap: 0;
    row-gap: 0;
    margin-top: min(calc((80 / var(--w-base-sp)) * 100vw), 80px);
    padding-bottom: min(calc((120 / var(--w-base-sp)) * 100vw), 120px);
  }
  .cmgallery-thumbnail-box {
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
  }
  .cmgallery-thumbnail-box + .cmgallery-thumbnail-box {
    margin-top: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
  }
  .cmgallery-thumbnail_icon {
    width: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
  }
  .cmgallery-movie_caption {
    padding: min(calc((35 / var(--w-base-sp)) * 100vw), 25px)  min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
  }
  .cmgallery-movie_caption-main,
  .cmgallery-movie_caption-sub {
    font-size: min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
    line-height: calc(34 / 30);
  }
  #section06 {
    padding: min(calc((120 / var(--w-base-sp)) * 100vw), 120px) 0;
  }
  .about__link {
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
  }
}

/*==========================================================*/
/* modal
/*==========================================================*/
.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -10000;
  width: 100%;
  height: 100%;
  z-index: 10000;
}
.modal-cover {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 10001;
}
main#str-main .modal-inner {
  box-sizing: border-box;
}
.modal-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: auto;
  padding: min(calc((80 / var(--w-base)) * 100vw), 80px) min(calc((80 / var(--w-base)) * 100vw), 80px) min(calc((28 / var(--w-base)) * 100vw), 28px);
  width: min(calc((1120 / var(--w-base)) * 100vw), 1120px);
  background: var(--color-wh);
  box-sizing: border-box;
  z-index: 10002;
}
.modal-content {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(1, auto);
  padding: min(calc((10 / var(--w-base)) * 100vw), 10px);
  width: min(calc((960 / var(--w-base)) * 100vw), 960px);
  background: var(--color-dgd);
  box-sizing: border-box;
}
.modal-content .text_area {
  margin: min(calc((20 / var(--w-base)) * 100vw), 20px) min(calc((30 / var(--w-base)) * 100vw), 30px) min(calc((20 / var(--w-base)) * 100vw), 20px) min(calc((20 / var(--w-base)) * 100vw), 20px);
}
.modal-caption-text {
  color: var(--color-wh);
  font-size: min(calc((18 / var(--w-base)) * 100vw), 18px);
  letter-spacing: 0.06em;
  line-height: calc(26 / 18);
}
.modal-paragraph {
  margin-top: min(calc((26 / var(--w-base)) * 100vw), 26px);
  color: var(--color-wh);
  font-size: min(calc((14 / var(--w-base)) * 100vw), 14px);
  letter-spacing: 0.1em;
  line-height: calc(24 / 14);
}
.modal-paragraph + .modal-paragraph {
  margin-top: min(calc((34 / var(--w-base)) * 100vw), 34px) ;
}
.modal-content .img_area {
  width: min(calc((636 / var(--w-base)) * 100vw), 636px);
}
.modal-inner .note_area {
  margin-top: min(calc((5 / var(--w-base)) * 100vw), 5px) ;
  line-height: calc(14 / 10);
  text-align: right;
}
.modal-inner .note-text {
  color: var(--color-dgd);
  font-size: min(calc((10 / var(--w-base)) * 100vw), 10px);
  letter-spacing: 0;
}
.modal-inner .close-button {
  position: absolute;
  top: 0;
  right: 0;
  transform: rotate(45deg);
  margin: min(calc((20 / var(--w-base)) * 100vw), 20px) min(calc((20 / var(--w-base)) * 100vw), 20px) 0 0;
  width: min(calc((40 / var(--w-base)) * 100vw), 40px);
  height: min(calc((40 / var(--w-base)) * 100vw), 40px);
  border: none;
  border-radius: 50%;
  background: var(--color-dbe);
  cursor: pointer;
}
.modal-inner .close-button::before,
.modal-inner .close-button::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--color-wh);
}
.modal-inner .close-button::before {
  transform: translate(-50%, -50%);
  width: min(calc((2 / var(--w-base)) * 100vw), 2px);
  height: min(calc((23 / var(--w-base)) * 100vw), 23px);
}
.modal-inner .close-button::after {
  transform: translate(-50%, -50%);
  width: min(calc((23 / var(--w-base)) * 100vw), 23px);
  height: min(calc((2 / var(--w-base)) * 100vw), 2px);
}

@media screen and (max-width: 750px) {
  .modal {
    overflow-y: scroll;
  }
  main#str-main .modal * {
    box-sizing: border-box;
  }
  .modal-inner {
    position: relative;
    margin: min(calc((40 / var(--w-base-sp)) * 100vw), 100px) 0;
    padding: min(calc((100 / var(--w-base-sp)) * 100vw), 100px) 0 min(calc((27 / var(--w-base-sp)) * 100vw), 27px);
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
    top: 0;
    transform: translateX(-50%);
    height: auto;
  }
  .modal-content {
    display: grid;
    grid-template-columns: repeat(1, auto);
    grid-template-rows: repeat(2, auto);
    margin: 0 auto;
    padding: min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
    width: min(calc((630 / var(--w-base-sp)) * 100vw), 630px);
  }
  .modal-content .text_area {
    margin: min(calc((59 / var(--w-base-sp)) * 100vw), 59px) 0 0 0;
  }
  .modal-caption {
    text-align: center;
  }
  .modal-caption-text {
    font-size: min(calc((34 / var(--w-base-sp)) * 100vw), 34px);
    line-height: calc(44 / 34);
  }
  .modal-paragraph {
    margin-top: min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
    padding: 0 min(calc((5 / var(--w-base-sp)) * 100vw), 5px);
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
    line-height: calc(24 / 14);
  }
  .modal-paragraph + .modal-paragraph {
    margin-top: min(calc((60 / var(--w-base-sp)) * 100vw), 60px) ;
  }
  .modal-content .img_area {
    margin-top: min(calc((56 / var(--w-base-sp)) * 100vw), 56px) ;
    width: 100%;
  }
  .modal-inner .note_area {
    margin: min(calc((15 / var(--w-base-sp)) * 100vw), 15px) min(calc((8 / var(--w-base-sp)) * 100vw), 8px) 0 0;
    line-height: calc(30 / 20);
  }
  .modal-inner .note-text {
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
  }
  .modal-inner .close-button {
    margin: min(calc((20 / var(--w-base-sp)) * 100vw), 20px) min(calc((20 / var(--w-base-sp)) * 100vw), 20px) 0 0;
    width: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
    height: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
  }
  .modal-inner .close-button::before {
    width: min(calc((4 / var(--w-base-sp)) * 100vw), 4px);
    height: min(calc((26 / var(--w-base-sp)) * 100vw), 26px);
  }
  .modal-inner .close-button::after {
    width: min(calc((26 / var(--w-base-sp)) * 100vw), 26px);
    height: min(calc((4 / var(--w-base-sp)) * 100vw), 4px);
  }
}



/*==========================================================*/
/* first view (load)
/*==========================================================*/
.first_view {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20000;
  width: 100%;
  height: 100%;
  background: var(--color-wh);
  transition: var(--transition-type-4);
  opacity: 1;
  transition: opacity 1s z-index 1s;
}
.first_view.hide {
  opacity: 0;
  z-index: -20;
}
.first_view-caption {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.first_view-caption-img {
  display: block;
  width: min(calc((400 / var(--w-base)) * 100vw), 360px);
}
.first_view-caption-text {
  display: block;
  margin-top: min(calc((65 / var(--w-base)) * 100vw), 65px);
  color: var(--color-bk);
  font-size: min(calc((78 / var(--w-base)) * 100vw), 78px);
  font-family: var(--font-Shippori);
  font-weight: var(--font-weight-reg);
  letter-spacing: 0.2em;
  line-height: calc(120 / 78);
  font-feature-settings: "palt";
}
.first_view-note_text {
  position: absolute;
  bottom: 0;
  right: 0;
  margin: 0 min(calc((30 / var(--w-base)) * 100vw), 30px) min(calc((30 / var(--w-base)) * 100vw), 30px) 0;
  color: var(--color-gy);
  font-size: min(calc((12 / var(--w-base)) * 100vw), 12px);
  font-family: var(--font-Shippori);
  letter-spacing: 0em;
  line-height: calc(25 / 12);
}
.first_view .overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  background: var(--color-wh);
  opacity: 1;
  transition: var(--transition-type-4);
}
.first_view .overlay.is-active {
  z-index: -100;
  opacity: 0;
}

@media screen and (max-width: 750px) {
  .first_view-caption-img {
    width: min(calc((482 / var(--w-base-sp)) * 100vw), 482px);
  }
  .first_view-caption-text {
    margin-top: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
    font-size: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
    text-indent: min(calc((32 / var(--w-base-sp)) * 100vw), 32px);
    line-height: calc(120 / 100);
  }
  .first_view-caption-text span:nth-of-type(1) {
    display: block;
    letter-spacing: 0.147em;
  }
  .first_view-caption-text span:nth-of-type(2) {
    display: block;
    margin-top: min(calc((16 / var(--w-base-sp)) * 100vw), 16px);
  }
  .first_view-note_text {
    margin: 0 min(calc((40 / var(--w-base-sp)) * 100vw), 40px) min(calc((44 / var(--w-base-sp)) * 100vw), 44px) 0;
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
    line-height: calc(25 / 20);
  }
}

@media screen and (orientation: landscape) and (max-width: 750px) {
  .first_view-caption-img {
    width: min(calc((360 / var(--w-base)) * 100vw), 360px);
  }
  .first_view-caption-text {
    margin-top: min(calc((65 / var(--w-base)) * 100vw), 65px);
    font-size: min(calc((78 / var(--w-base)) * 100vw), 78px);
    text-indent: 0;
    line-height: calc(120 / 78);
  }
  .first_view-caption-text span:nth-of-type(1) {
    display: inline;
    letter-spacing: inherit;
  }
  .first_view-caption-text span:nth-of-type(2) {
    display: inline;
    margin-top: 0;
  }
  .first_view-note_text {
    margin: 0 min(calc((30 / var(--w-base)) * 100vw), 30px) min(calc((30 / var(--w-base)) * 100vw), 30px) 0;
    font-size: min(calc((12 / var(--w-base)) * 100vw), 12px);
    line-height: calc(25 / 12);
  }
}

@keyframes toRight {
  100% {
    background-position: left 0% center;
  }
}
.fade-text{
  display: block;
  position: relative;
  color: transparent;
  background-clip: text;
  -webkit-background-clip: text;
  background-size: 300% 300%;
}
.fade-text::after {
  content: '';
  position: absolute;
  display: block;
  width: 100%;
  height: 4px;
  top: -2px;
  left: 0;
  background-color: #fff;
}

.fade-text.to__right {
  background-image: linear-gradient(to right, #000 30%, rgba(0, 0, 0, 0) 60%);
  background-position: left 100% center;
  -webkit-animation: toRight var(--duration, 2.4s) var(--ease) var(--delay, 0.6s) forwards;
  animation: toRight var(--duration, 2.4s) var(--ease) var(--delay, 0.6s) forwards;
}

/*==========================================================*/
/* 2025 add
/*==========================================================*/
.anchor-nav {
  padding: min(calc((30 / var(--w-base)) * 100vw), 30px) 0;
  background-color: #F5F6FA;
}
.anchor-nav__list {
  display: flex;
  justify-content: center;
}
.anchor-nav__item {
  position: relative;
  width: min(calc((304 / var(--w-base)) * 100vw), 304px);
  text-align: center;
}

.anchor-nav__item:nth-child(n+2)::after {
  position: absolute;
  content: "";
  display: block;
  width: 0.5px;
  height: min(calc((34 / var(--w-base)) * 100vw), 34px);
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  background-color: #91602A;
}

.anchor-nav__item a {
  position: relative;
  color: #91602A;
  text-decoration: none;
  font-size: min(calc((16 / var(--w-base)) * 100vw), 16px);
  transition: var(--transition-type-1);
}

.anchor-nav__item a::before {
  position: absolute;
  content: "";
  display: block;
  background-image: url(../images/arrow-down.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: min(calc((17.06 / var(--w-base)) * 100vw), 17.06px);
  height: min(calc((8.53 / var(--w-base)) * 100vw), 8.53px);
  top: 50%;
  transform: translateY(-50%);
  right: max(calc((-25 / var(--w-base)) * 100vw), -25px);
}

.anchor-nav__item a:hover {
  opacity: .7;
}

.feature-title {
  width: min(calc((959 / var(--w-base)) * 100vw), 959px);
  margin: min(calc((60 / var(--w-base)) * 100vw), 60px) auto 0;
}
.nonchill-content__wrapper {
  width: min(calc((960 / var(--w-base)) * 100vw), 960px);
  margin: min(calc((40 / var(--w-base)) * 100vw), 40px) auto 0;
}
.nonchill-content {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(1, auto);
  padding: min(calc((10 / var(--w-base)) * 100vw), 10px);
  width: 100%;
  background: var(--color-dgd);
  box-sizing: border-box;
}
.nonchill-content .text_area {
  margin: min(calc((20 / var(--w-base)) * 100vw), 20px) min(calc((30 / var(--w-base)) * 100vw), 30px) min(calc((20 / var(--w-base)) * 100vw), 20px) min(calc((20 / var(--w-base)) * 100vw), 20px);
}
.nonchill-caption-text {
  color: var(--color-wh);
  font-size: min(calc((18 / var(--w-base)) * 100vw), 18px);
  letter-spacing: 0.06em;
  line-height: calc(26 / 18);
}
.nonchill-paragraph {
  margin-top: min(calc((26 / var(--w-base)) * 100vw), 26px);
  color: var(--color-wh);
  font-size: min(calc((14 / var(--w-base)) * 100vw), 14px);
  letter-spacing: 0.1em;
  line-height: calc(24 / 14);
}
.nonchill-paragraph + .nonchill-paragraph {
  margin-top: min(calc((34 / var(--w-base)) * 100vw), 34px) ;
}
.nonchill-content .img_area {
  width: min(calc((636 / var(--w-base)) * 100vw), 636px);
}
.nonchill-note_area {
  margin-top: min(calc((5 / var(--w-base)) * 100vw), 5px);
  text-align: right;
}
.nonchill-note_area .note-text {
  color: var(--color-dgd);
  font-size: min(calc((10 / var(--w-base)) * 100vw), 10px);
  letter-spacing: 0;
}

@media screen and (max-width: 750px) {
  .anchor-nav {
    padding: min(calc((84 / var(--w-base-sp)) * 100vw), 84px) 0;
  }
  .anchor-nav__list {
    flex-wrap: wrap;
    align-items: center;
  }
  .anchor-nav__item {
    box-sizing: border-box;
    padding-right: min(calc((25 / var(--w-base-sp)) * 100vw), 25px);
    width: min(calc((310 / var(--w-base-sp)) * 100vw), 310px);
  }

  /* .anchor-nav__item:last-child {
    width: min(calc((380 / var(--w-base-sp)) * 100vw), 380px);
  } */

  .anchor-nav__item:nth-child(n+2)::after {
    height: min(calc((76 / var(--w-base-sp)) * 100vw), 76px);
  }

  .anchor-nav__item:nth-child(n+3) {
    margin-top: min(calc((70 / var(--w-base-sp)) * 100vw), 70px);
  }

  .anchor-nav__item::after {
    position: absolute;
    content: "";
    display: block;
    width: 0.5px;
    height: min(calc((76 / var(--w-base-sp)) * 100vw), 76px);
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    background-color: #91602A;
  }

  .anchor-nav__item:nth-child(2n)::before,
  .anchor-nav__item:last-child::before {
    position: absolute;
    content: "";
    display: block;
    width: 0.5px;
    height: min(calc((76 / var(--w-base-sp)) * 100vw), 76px);
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    background-color: #91602A;
  }

  .anchor-nav__item a {
    display: inline-block;
    position: relative;
    color: #91602A;
    text-decoration: none;
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
    transition: var(--transition-type-1);
  }

  .anchor-nav__item a::before {
    width: min(calc((26.02 / var(--w-base-sp)) * 100vw), 26.02px);
    height: min(calc((13.01 / var(--w-base-sp)) * 100vw), 13.01px);
    top: 50%;
    transform: translateY(-50%);
    right: max(calc((-46 / var(--w-base-sp)) * 100vw), -46px);
  }

  .anchor-nav__item a:hover {
    opacity: .7;
  }

  .feature-title {
    width: min(calc((590 / var(--w-base-sp)) * 100vw), 590px);
    margin: min(calc((120 / var(--w-base-sp)) * 100vw), 120px) auto 0;
  }
  .nonchill-content__wrapper {
    margin: min(calc((40 / var(--w-base-sp)) * 100vw), 40px) auto 0;
    width: min(calc((590 / var(--w-base-sp)) * 100vw), 530px);
  }
  .nonchill-content {
    display: grid;
    grid-template-columns: repeat(1, auto);
    grid-template-rows: repeat(2, auto);
    padding: min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
    box-sizing: border-box!important;
  }
  .nonchill-content .text_area {
    margin: min(calc((59 / var(--w-base-sp)) * 100vw), 59px) 0 0 0;
  }
  .nonchill-caption {
    text-align: center;
  }
  .nonchill-caption-text {
    font-size: min(calc((34 / var(--w-base-sp)) * 100vw), 34px);
    line-height: calc(44 / 34);
  }
  .nonchill-paragraph {
    margin-top: min(calc((30 / var(--w-base-sp)) * 100vw), 30px);
    padding: 0 min(calc((5 / var(--w-base-sp)) * 100vw), 5px);
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
    line-height: calc(24 / 14);
  }
  .nonchill-paragraph + .nonchill-paragraph {
    margin-top: min(calc((60 / var(--w-base-sp)) * 100vw), 60px) ;
  }
  .nonchill-content .img_area {
    margin-top: min(calc((56 / var(--w-base-sp)) * 100vw), 56px) ;
    width: 100%;
  }
  .nonchill-note_area {
    margin: min(calc((15 / var(--w-base-sp)) * 100vw), 15px) min(calc((8 / var(--w-base-sp)) * 100vw), 8px) 0 0;
    line-height: calc(30 / 20);
  }
  .nonchill-note_area .note-text {
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
  }
}

/* Fathers Day */

.fathersday {
  padding: min(calc((100 / var(--w-base)) * 100vw), 100px) 0 0;
}

.fathersday__nav-item:first-child::before,
.fathersday__nav-item:last-child::before  {
  position: absolute;
  content: "";
  display: block;
  width: 0.5px;
  height: min(calc((34 / var(--w-base)) * 100vw), 34px);
  top: 50%;
  transform: translateY(-50%);
  background-color: #91602A;
}

.fathersday__nav-item:first-child::before {
  left: 0;
}
.fathersday__nav-item:last-child::before {
  right: 0;
}

.fathersday__title,
.fathersday__leadtext {
  color: #91602A;
}

.fathersday__title,
.fathersday__leadtext,
.fathersday__text {
  text-align: center;
}

.fathersday__title--large {
  display: block;
  width: fit-content;
  margin: 0 auto;
  position: relative;
  font-size: min(calc((32 / var(--w-base)) * 100vw), 32px);
  line-height: 1;
}

.fathersday__title--large::after {
  position: absolute;
  content: "";
  display: block;
  width: 96%;
  height: 1px;
  bottom: min(calc((-5 / var(--w-base)) * 100vw), -5px);
  left: 0;
  background-color: #91602A;
}

.fathersday__title--middle {
  display: block;
  width: fit-content;
  margin: min(calc((98 / var(--w-base)) * 100vw), 98px) auto 0;
  padding: min(calc((9 / var(--w-base)) * 100vw), 9px) min(calc((40 / var(--w-base)) * 100vw), 40px);
  position: relative;
  font-size: min(calc((40 / var(--w-base)) * 100vw), 40px);
  line-height: 1;
  border-left: solid 1px #91602A;
  border-right: solid 1px #91602A;
}

.fathersday__leadtext {
  margin-top: min(calc((60 / var(--w-base)) * 100vw), 60px);
  font-size: min(calc((28 / var(--w-base)) * 100vw), 28px);
  line-height: 2.14;
}

.fathersday__text--large {
  margin-top: min(calc((80 / var(--w-base)) * 100vw), 80px);
  font-size: min(calc((20 / var(--w-base)) * 100vw), 20px);
}
.fathersday__text--middle {
  margin-top: min(calc((20 / var(--w-base)) * 100vw), 20px);
  font-size: min(calc((16 / var(--w-base)) * 100vw), 16px);
}
.fathersday__text--small {
  margin-top: min(calc((20 / var(--w-base)) * 100vw), 20px);
  font-size: min(calc((12 / var(--w-base)) * 100vw), 12px);
  letter-spacing: -0.02rem;
  color: #7C7C7C;
}

.fathersday__box-banner {
  width: min(calc((960 / var(--w-base)) * 100vw), 960px);
  margin: min(calc((50 / var(--w-base)) * 100vw), 50px) auto 0;
}

.fathersday__shop-banner {
  display: block;
  margin: min(calc((40 / var(--w-base)) * 100vw), 40px) auto 0;
  width: min(calc((520 / var(--w-base)) * 100vw), 520px);
  transition: var(--transition-type-1);
}

.fathersday__shop-banner:hover {
  opacity: .7;
}

.banner {
  padding: 8.57vw 0 7.1vw;
}
.banner__link {
  display: block;
  width: 68.6vw;
  margin: 0 auto;
  transition: opacity .3s;
}
.banner__link:hover {
  opacity: .7;
}

@media screen and (max-width: 750px) {
  .fathersday {
    padding: min(calc((150 / var(--w-base-sp)) * 100vw), 150px) 0 0;
  }

  .fathersday__nav-item:first-child::before,
  .fathersday__nav-item:last-child::before  {
    position: absolute;
    content: "";
    display: block;
    width: 0.5px;
    height: min(calc((76 / var(--w-base-sp)) * 100vw), 76px);
    top: 50%;
    transform: translateY(-50%);
    background-color: #91602A;
  }

  .fathersday__title--large {
    font-size: min(calc((50 / var(--w-base-sp)) * 100vw), 50px);
  }

  .fathersday__title--large::after {
    bottom: min(calc((-9 / var(--w-base-sp)) * 100vw), -9px);
  }

  .fathersday__title--middle {
    margin: min(calc((150 / var(--w-base-sp)) * 100vw), 150px) auto 0;
    padding: min(calc((16 / var(--w-base-sp)) * 100vw), 16px) min(calc((56 / var(--w-base-sp)) * 100vw), 56px);
    font-size: min(calc((50 / var(--w-base-sp)) * 100vw), 50px);
  }

  .fathersday__leadtext {
    margin-top: min(calc((93 / var(--w-base-sp)) * 100vw), 93px);
    font-size: min(calc((36 / var(--w-base-sp)) * 100vw), 36px);
    line-height: 2.1;
  }

  .fathersday__text--large {
    margin-top: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
    font-size: min(calc((36 / var(--w-base-sp)) * 100vw), 36px);
  }
  .fathersday__text--middle {
    margin-top: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
  }
  .fathersday__text--small {
    margin-top: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    font-size: min(calc((20 / var(--w-base-sp)) * 100vw), 20px);
  }

  .fathersday__box-banner {
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
    margin: min(calc((50 / var(--w-base-sp)) * 100vw), 50px) auto 0;
  }

  .fathersday__shop-banner {
    margin: min(calc((60 / var(--w-base-sp)) * 100vw), 40px) auto 0;
    width: min(calc((400 / var(--w-base-sp)) * 100vw), 400px);
  }

  .fathersday__shop-banner:hover {
    opacity: 1;
  }

  .banner {
    padding: 16vw 0 17.3vw;
  }
  .banner__link {
    display: block;
    width: 89.3vw;
    margin: 0 auto;
  }

  .banner__link:hover {
    opacity: 1;
  }
}

/* special movie */
.special-movie {
  padding: min(calc((100 / var(--w-base)) * 100vw), 100px) 0;
}

.special-movie__title {
  color: #91602A;
}

.special-movie__title--large {
  font-size: min(calc((50 / var(--w-base)) * 100vw), 50px);
  line-height: 1;
  text-align: center;
}

.special-movie__title--middle {
  display: block;
  width: fit-content;
  margin: min(calc((81 / var(--w-base)) * 100vw), 81px) auto 0;
  padding: min(calc((6 / var(--w-base)) * 100vw), 6px) min(calc((31 / var(--w-base)) * 100vw), 31px);
  position: relative;
  font-size: min(calc((32 / var(--w-base)) * 100vw), 32px);
  line-height: 1;
  border-left: solid 1px #91602A;
  border-right: solid 1px #91602A;
}

.special-movie__text {
  margin-top: min(calc((56 / var(--w-base)) * 100vw), 56px);
  font-size: min(calc((16 / var(--w-base)) * 100vw), 16px);
  line-height: 1.875;
  text-align: center;
}

.movie-area {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: min(calc((1200 / var(--w-base)) * 100vw), 1200px);
  column-gap: min(calc((30 / var(--w-base)) * 100vw), 30px);
  row-gap: min(calc((60 / var(--w-base)) * 100vw), 60px);
  margin: min(calc((60 / var(--w-base)) * 100vw), 60px) auto 0;
}
.movie-area.vertical {
  column-gap: min(calc((60 / var(--w-base)) * 100vw), 60px);
}

.movie-area__thumbnail-box {
  width: min(calc((380 / var(--w-base)) * 100vw), 380px);
}
.movie-area.vertical .movie-area__thumbnail-box {
  width: min(calc((300 / var(--w-base)) * 100vw), 300px);
}

.movie-area__thumbnail {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.movie-area__thumbnail-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(calc((102 / var(--w-base)) * 100vw), 102px);
}

.movie-area__thumbnail_img {
  filter: brightness(80%);
}

.movie-area__thumbnail_img,
.movie-area__thumbnail-icon {
  transition: var(--transition-type-1);
}

.movie-area__thumbnail:hover .movie-area__thumbnail_img {
  transform: scale(1.1);
  filter: brightness(100%);

}

.movie-area__thumbnail:hover .movie-area__thumbnail-icon {
  transform: translate(-50%, -50%) scale(1.05);
}

.movie-area__caption {
  margin-top: min(calc((11 / var(--w-base)) * 100vw), 11px);
  text-align: center;
  font-size: min(calc((20 / var(--w-base)) * 100vw), 20px);
  letter-spacing: 0em;
  line-height: calc(38 / 20);
}

#section06 {
  padding: min(calc((120 / var(--w-base)) * 100vw), 120px) 0;
}

.about__link {
  display: block;
  margin: 0 auto;
  width: min(calc((960 / var(--w-base)) * 100vw), 960px);
  transition: opacity var(--transition-type-1);
}

.about__link:hover {
  opacity: 0.7;
}

@media screen and (max-width: 750px) {
  .special-movie {
    padding: min(calc((100 / var(--w-base-sp)) * 100vw), 100px) 0;
  }

  .special-movie__title--large {
    font-size: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
  }

  .special-movie__title--middle {
    margin: min(calc((120 / var(--w-base-sp)) * 100vw), 120px) auto 0;
    padding: min(calc((6 / var(--w-base-sp)) * 100vw), 6px) min(calc((31 / var(--w-base-sp)) * 100vw), 31px);
    position: relative;
    font-size: min(calc((50 / var(--w-base-sp)) * 100vw), 50px);
    line-height: 1;
    border-left: solid 1px #91602A;
    border-right: solid 1px #91602A;
  }

  .special-movie__text {
    margin-top: min(calc((80 / var(--w-base-sp)) * 100vw), 80px);
    font-size: min(calc((28 / var(--w-base-sp)) * 100vw), 28px);
    line-height: 1.6;
    text-align: center;
  }

  .movie-area {
    flex-wrap: wrap;
    margin-top: min(calc((60 / var(--w-base-sp)) * 100vw), 60px);
    row-gap: min(calc((100 / var(--w-base-sp)) * 100vw), 100px);
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
  }

  /* .movie-area.vertical {
    flex-wrap: nowrap;
    justify-content: space-between;
  } */

  .movie-area__thumbnail-box {
    width: 100%;
  }

  .movie-area.vertical .movie-area__thumbnail-box {
    width: min(calc((300 / var(--w-base-sp)) * 100vw), 300px);
  }

  .movie-area__thumbnail-icon {
    width: min(calc((180 / var(--w-base-sp)) * 100vw), 180px);
  }

  .movie-area__thumbnail:hover .movie-area__thumbnail_img {
    opacity: 1;
    transform: scale(1);
    filter: brightness(80%);
  }

  .movie-area__thumbnail:hover .movie-area__thumbnail-icon {
    transform: translate(-50%, -50%) scale(1);
  }

  .movie-area__caption {
    margin-top: min(calc((40 / var(--w-base-sp)) * 100vw), 40px);
    font-size: min(calc((36 / var(--w-base-sp)) * 100vw), 36px);
    line-height: calc(58 / 36);
  }
  .movie-area__caption.nowrap {
    display: flex;
    justify-content: flex-end;
    white-space: nowrap;
  }
  .movie-area__caption
  #section06 {
    padding: min(calc((120 / var(--w-base-sp)) * 100vw), 120px) 0;
  }
  .about__link {
    width: min(calc((670 / var(--w-base-sp)) * 100vw), 670px);
  }
}

/* 独自ヘッダー */
.fix-header {
  background-color: #fff;
  box-sizing: border-box !important;
  display: block;
  width: 100%;
}

.fix-navi {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: calc(13 / var(--w-base) * 100vw) 0;
  margin: 0 auto;
  width: calc(960 / var(--w-base) * 100vw);
}

.fix-navi_logo {
  display: block;
  width: calc(34 / var(--w-base) * 100vw);
}

.fix-navi_list {
  display: flex;
  justify-content: flex-end;
  gap: 0 min(calc(30 / var(--w-base) * 100vw), 30px);
}

.fix-navi_item a {
  color: #91602A;
  font-size: min(calc(14 / var(--w-base) * 100vw), 14px);
  text-decoration: none;
}

.fix-navi_item.active a {
  text-decoration: underline;
  text-underline-offset: 4px;
}

.fix-navi_sp {
  display: none;
}

@media screen and (min-width: 1081px) {
  .fix-navi {
    display: flex !important;
  }
}

@media screen and (max-width: 1080px) {
  .header-child {
    /* padding-top: 65px; */
    margin-top: 65px;
  }

  .fix-header {
    padding: 13px 20px 13px 20px;
    position: fixed;
    top: 65px;
    left: 0;
    z-index: 100;
    transform: translateY(0);
    transition: transform .3s ease-out;
    width: 100%;
    height: 65px;
  }

  .is-hidden {
    transform: translateY(-100%);
  }

  .is-lock {
    overflow: hidden;
  }

  .fix-navi {
    padding: 0;
    width: 100%;
  }

  .fix-navi_logo {
    width: 37.5px;
  }

  .fix-navi_list {
    background-color: rgba(255, 255, 255, .95);
    display: none;
    text-align: center;
    position: absolute;
    top: 64px;
    left: 0;
    width: 100%;
    height: 100svh;
    z-index: 10;
  }

  .fix-navi_item a {
    font-size: 18px;
  }

  .fix-navi_item.active a {
    text-decoration: none;
  }

  .fix-navi_item {
    margin-top: 40px;
  }

  .fix-navi_sp {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .fix-navi_sp-text {
    color: #91602A;
    font-size: 8px;
    margin-top: 8px;
    text-align: center;
  }

  .hamburger {
    width: 25px;
    min-height: 18px;
    position: relative;
  }

  .hamburgerIcon {
    background-color: #91602A;
    display: block;
    width: 100%;
    height: 2px;
    transition: transform ease-in-out .2s;
  }

  .hamburgerIcon:nth-child(2) {
    margin: 6px 0;
  }

  .fix-navi_sp.is-open .hamburgerIcon:nth-child(1) {
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
  }

  .fix-navi_sp.is-open .hamburgerIcon:nth-child(2) {
    opacity: 0;
  }

  .fix-navi_sp.is-open .hamburgerIcon:nth-child(3) {
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
  }
}