@charset "UTF-8";

html{
  scroll-behavior: smooth;
}

.kodawari .breadcrumb-box {
  position: absolute;
  transform: translateX(-50%);
  left: 50%;
  top: 16px;
  z-index: 5;
  width: 1200px;
  margin: 0 auto;
}
.breadcrumb-item {
  color: #ffffff;
}
.breadcrumb a {
  color: #ffffff;
}
.breadcrumb-item + .breadcrumb-item:before {
  color: #ffffff;
}
.kodawari.tdksp .breadcrumb-item {
  color: #5F5F5F;
}
.kodawari.tdksp .breadcrumb a {
  color: #5F5F5F;
}
.kodawari.tdksp .breadcrumb-item + .breadcrumb-item:before {
  color: #5F5F5F;
}
.kodawari.tatechokai .breadcrumb-item {
  color: #5F5F5F;
}
.kodawari.tatechokai .breadcrumb a {
  color: #5F5F5F;
}
.kodawari.tatechokai .breadcrumb-item + .breadcrumb-item:before {
  color: #5F5F5F;
}
/* =============================
  fixed page: うまさへのこだわり
============================= */

.kodawari{
  background:#fff;
  position: relative;
}

/* ---------- MV ---------- */
.kodawari-mv{
  position: relative;
  min-height: 350px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;

  /* MV背景はここで差し替え */
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page101-pc.png") center/cover no-repeat;
}

.kodawari-mv::after{
  content:"";
  position:absolute;
  inset:0;
}

.kodawari-mv__breadcrumb{
  position:absolute;
  top: 18px;
  left: 18px;
  z-index: 2;
  font-size: 12px;
  letter-spacing: .08em;
  color:#fff;
}
.kodawari-mv__breadcrumb a{
  color:#fff;
  text-decoration:none;
}
.kodawari-mv__breadcrumb span{
  margin: 0 4px;
}

.kodawari-mv__title{
  position: relative;
  z-index: 2;
  color:#fff;
}
.kodawari-mv__title h1{
  margin:0;
  font-size: 46px;
  letter-spacing: .04em;
  font-weight: 500;
  color: #fff;
}

/* ---------- Intro ---------- */
.kodawari-intro{
  padding: 70px 0;
  text-align:center;
}
.kodawari-intro__inner{
  max-width: 1200px;
  margin: 0 auto;
}
.kodawari-intro h2{
  margin: 0 0 50px;
  font-size: 26px;
  letter-spacing: .04em;
  font-weight: 500;
}
.kodawari-intro p{
  margin:0;
  font-size: 15px;
  line-height: 2;
  letter-spacing: 0;
  color:#333;
}

/* ---------- 3 Column ---------- */
.kodawari-three{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 0 140px;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.kodawari-three__image{
  position: relative;
  overflow:hidden;
}
.kodawari-three__image img{
  width: 100%;
  height: auto;
  display:block;
}

.kodawari-three__vertical{
  position:absolute;
  transform: translate(-50%, -50%);
  left: 50%;
  top: 48%;
  z-index: 3;
  color:#fff;
  font-size: 24px;
  letter-spacing: .04em;
  font-weight: 500;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

.kodawari-three__text{
  margin: 20px 0 0;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0;
  color:#333;
  font-family: "Zen Kaku Gothic New", sans-serif;
}



/* =============================
   Hover animation
============================= */

.kodawari-three__image{
  position: relative;
  overflow:hidden;
  cursor:pointer;
  transition: 0.4s;
  opacity: 1!important;
}

/* 画像ズーム */
.kodawari-three__image img{mix-blend-mode: multiply;}

/* オーバーレイ */
.kodawari-three__image::after{
  content:"";
  position:absolute;
  inset:0;
  background: #89A6B74D;
  mix-blend-mode: multiply;
  transition: background .4s ease;
}

/* 縦書き文字 */
.kodawari-three__vertical{
}

/* 右下アイコン */
.kodawari-three__icon{
  position:absolute;
  right:18px;
  bottom:18px;
  width: 21px;
  height: 21px;
  border:1px solid #fff;
  opacity: 1;
  transform: translateY(0px);
  transition: all .4s ease;
  z-index: 3;
}

.kodawari-three__icon::after{
  content:"";
  position:absolute;
  top: 50%;
  left:50%;
  width: 8px;
  height: 8px;
  border-right:1px solid #fff;
  border-bottom:1px solid #fff;
  transform: translate(-50%,-75%) rotate(45deg);
  transition: 0.4s;
}

/* ===== hover ===== */

.kodawari-three__item .kodawari-three__image:hover .kodawari-three__icon::after{
  transition: 0.4s;
  opacity: 0;
  top: 100%;
}

.kodawari-three__item .kodawari-three__image:hover img{
}

.kodawari-three__item .kodawari-three__image:hover::after{
  background-color: #89A6B7;
  mix-blend-mode: multiply;
  z-index: 2;
}

.kodawari-three__item kodawari-three__image:hover .kodawari-three__vertical{
  transform: translateY(-6px);
}

.kodawari-three__item kodawari-three__image:hover .kodawari-three__icon{
  opacity:1;
  transform: translateY(0);
}

/* =============================
  Detail section (texture + collage)
============================= */

.kodawari-detail{
  /* テクスチャ背景（差し替え） */
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/background01.png") center/contain;
  padding: 210px 0 80px;
}

.kodawari-detail.block02{
  background: #fff;
  padding: 300px 0 190px;
}

.kodawari-detail.block03{
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/background01.png") center/contain;
  padding: 115px 0 110px;
}

.kodawari-detail__block{
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  padding-bottom: 80px;
  position: relative;
}

.kodawari-detail__block:last-child{
  padding-bottom: 0;
}

/* アンカー飛び先の見切れ対策（固定ヘッダーある場合） */
.kodawari-detail__block{
  scroll-margin-top: 400px;
}
.kodawari-detail__block[id="id-02"]{
  scroll-margin-top: 400px;
}
.kodawari-detail__block[id="id-03"]{
  scroll-margin-top: 300px;
}


/* 縦タイトル（上部中央） */
.kodawari-detail__titleVertical{
  margin: 0 auto 28px;
  width: fit-content;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  letter-spacing: .04em;
  font-weight: 500;
  font-size: 24px;
  color: #333333;
  position: absolute;
  transform: translateX(-50%);
  left: 50%;
  top: -260px;
}
.block02 .kodawari-detail__titleVertical{
  top: -210px;
}
.block03 .kodawari-detail__titleVertical{
  top: -140px;
}
/* 2カラム */
.kodawari-detail__grid{
  display: grid;
  grid-template-columns: 0.98fr 1.02fr;
  gap: 138px;
  align-items: start;
}

.kodawari-detail__grid.is-reverse{
  grid-template-columns: 1.02fr 0.98fr;
  gap: 105px;
}
.kodawari-detail__grid.is-center{
  grid-template-columns: 0.97fr 1.03fr;
  gap: 110px;
  display: flex;
  width: 1200px;
  margin: 0 auto;
  padding-right: 100px;
  justify-content: space-between;
  align-items: center;
}
.kodawari-detail__grid.is-reverse.is-center{
  grid-template-columns: 0.97fr 1.03fr;
  gap: 110px;
  display: flex;
  width: 1200px;
  margin: 0 auto;
  padding-left: 100px;
  padding-right: 0;
  justify-content: space-between;
  align-items: start;
}
.kodawari-detail__grid.is-reverse .kodawari-collage{
  order: 2;
}
.kodawari-detail__grid.is-reverse .kodawari-text{
  order: 1;
  max-width: 502px;
  margin-left: auto;
}
.kodawari-detail__grid.is-center .kodawari-text{
  max-width: 400px;
  width: 400px;
  margin-right: auto;
  margin-left: 0;
  padding-top: 0;
}
/* text */
.kodawari-text{
  padding-top: 102px;
  position: relative;
}
.block02 .kodawari-text {
    padding-top: 72px;
}
.block03 .kodawari-text {
    padding-top: 160px;
}
.kodawari-text h4 {
  color: #C3AF5B;
  font-size: 18px;
  font-weight: 500;
  margin: 40px 0 15px;
  line-height: 1.6;
}
.is-reverse .kodawari-text{
  padding-top: 92px;
}
.kodawari-text__leadMark{
  width: 124px;
  height: 23px;
  margin: 0;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/text02.svg") center/cover no-repeat;
  position: absolute;
  top: 49px;
  left: -114px;
}
.block02 .kodawari-text__leadMark{
  top: 19px;
}
.block03 .kodawari-text__leadMark{
  top: 115px;
}
.is-reverse .kodawari-text__leadMark{
  top: 49px;
  left: -114px;
}

.kodawari-text__title{
  margin: 0 0 20px;
  font-size: 26px;
  letter-spacing: .04em;
  font-weight: 500;
  color: #333333;
}

.kodawari-text__body_link + .kodawari-text__title{
  margin-top: 50px;
}

.kodawari-text__body{
  margin: 0;
  font-size: 15px;
  line-height: 2;
  letter-spacing: 0;
  color: #333;
  max-width: 502px;
}

.kodawari-text__body_link {
  margin: 0;
  font-size: 17px;
  line-height: 1.4;
  letter-spacing: 0;
  color: #333;
  margin-bottom: 20px;
  display: block;
  font-family: "Zen Kaku Gothic New", sans-serif;
  text-decoration: underline;
}

.kodawari-text__body_link span {
  color: #C3AF5B;
  text-decoration: underline;
}
.kodawari-text__body_link:hover {
  text-decoration: none;
}

.kodawari-text__body_link:hover span {
  text-decoration: none;
}

/* collage base */
.kodawari-collage{
  position: relative;
  min-height: 532px;
}
.kodawari-collage.collage-03{
  min-height: unset;
}
.kodawari-detail__grid.is-center .kodawari-collage {min-height: unset;}
.kodawari-collage figure{
  margin:0;
  overflow:hidden;
  border-radius: 0;
}

.kodawari-collage img{
  width: 100%;
  min-width: 680px;
  height: auto;
  display:block;
}
.is-center.is-reverse .kodawari-collage img{
  min-width: unset;
  width: 560px;
}
.is-center .kodawari-collage img{
  min-width: unset;
  width: 590px;
}
/* collage 01（左：大、中央下：小） */
.collage-01__main{
  width: 100%;
}
.collage-01__sub{
  position:absolute;
  left: 40%;
  bottom: 0;
  width: 44%;
}

/* collage 02（右側に寄せたい場合の例） */
.collage-02__main{
  width: 100%;
  margin-left: auto;
}
.collage-02__sub{
  position:absolute;
  left: 0;
  bottom: 0;
  width: 48%;
}

/* collage 03（同じパターンでOK。必要に応じて調整） */
.collage-03__main{
  width: 100%;
}
.collage-03__sub{
  position:absolute;
  left: 42%;
  bottom: 0;
  width: 44%;
}
.page-text-link-button {
  display: flex;
  width: 400px;
  height: 60px;
  position: relative;
  justify-content: center;
  background: #D6C049;
  color: #fff;
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 0.04em;
  align-items: center;
  gap: 10px;
  margin-top: 30px;
}
.page-text-link-button p {
  position: relative;
  color: #fff;
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 0.04em;
  display: flex;
  line-height: 1;
  gap: 10px;
}
.page-text-link-button p:after {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  border: 1px solid #dedede;
  background: #ffffff;
}
.page-text-link-button p:before {
  content: "";
  display: block;
  position: absolute;
  right: 7px;
  top: 5px;
  width: 4px;
  height: 8px;
  background: url(https://gigaplus.makeshop.jp/tenjushuzou/img/icon_arrow_red.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transition: 0.3s;
}
.page-text-link-button:hover p:before {
  right: -7px;
  opacity: 0;
}

/* =============================
  Kurabito section
============================= */

.kurabito{
  /* 既存の紙テクスチャ背景に合わせるならここは透明でもOK */
  padding: 0;
}

.kurabito__inner{
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

/* --- lead --- */
.kurabito-lead{
  display:grid;
  grid-template-columns: 170px 1fr;
  gap: 35px;
  align-items: center;
  margin-bottom: 56px;
  width: 790px;
  margin: 0 auto;
  margin-bottom: 80px;
}

.kurabito-lead__photo{
  overflow:hidden;
  border-radius: 0;
}
.kurabito-lead__photo img{
  width:100%;
  height:auto;
  display:block;
}

.kurabito-lead__title{
  margin: 0 0 20px;
  font-weight: 500;
  letter-spacing: .04em;
  color: #5F5F5F;
  display: flex;
  align-items: center;
  gap: 14px;
}
.kurabito-lead__role{
  font-size: 26px;
  margin: 0;
}
.kurabito-lead__name{
  font-size: 13px;
  margin: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #707070;
  font-weight: 400;
  letter-spacing: 0;
}

.kurabito-lead__desc{
  margin: 0 0 14px;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0;
  color: #5F5F5F;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

/* --- grid --- */
.kurabito-grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 54px;
  margin-bottom: 80px;
}
.kurabito-grid + .kurabito-grid {
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 54px;
  margin-bottom: 0;
  width: 735px;
  margin: 0 auto;
}
.kurabito-card__img{
  position: relative;
  display:block;
  overflow:hidden;
}

.kurabito-card__img img{
  width:100%;
  height:auto;
  display:block;
}

.kurabito-card__title{
  margin: 10px 0;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: .08em;
  color: #5F5F5F;
  display: flex;
  align-items: center;
  gap: 14px;
  line-height: 1.4;
}
.kurabito-card__title span{
  font-size: 12px;
  letter-spacing: .1em;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #707070;
  font-weight: 400;
  letter-spacing: 0;
}

.kurabito-card__desc{
  margin: 0;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0;
  color: #5F5F5F;
  font-family: "Zen Kaku Gothic New", sans-serif;
}






@media screen and (max-width: 1440px) {

.kodawari .breadcrumb-box {
  top: 16rem;
  width: 1200rem;
}

.kodawari-mv{
  min-height: 350rem;
}

.kodawari-mv__breadcrumb{
  top: 18rem;
  left: 18rem;
  font-size: 12rem;
}
.kodawari-mv__breadcrumb span{
  margin: 0 4rem;
}

.kodawari-mv__title h1{
  font-size: 46rem;
}

.kodawari-intro{
  padding: 70rem 0;
}
.kodawari-intro__inner{
  max-width: 1200rem;
}
.kodawari-intro h2{
  margin: 0 0 50rem;
  font-size: 26rem;
}
.kodawari-intro p{
  font-size: 15rem;
}

/* ---------- 3 Column ---------- */
.kodawari-three{
  max-width: 1200rem;
  padding: 0 0 140rem;
  gap: 30rem;
}

.kodawari-three__vertical{
  font-size: 24rem;
}

.kodawari-three__text{
  margin: 20rem 0 0;
  font-size: 14rem;
}

.kodawari-three__icon{
  right:18rem;
  bottom:18rem;
  width: 21rem;
  height: 21rem;
  transform: translateY(0rem);
}

.kodawari-three__icon::after{
  width: 8rem;
  height: 8rem;
}

.kodawari-three__item .kodawari-three__image:hover img{
}

.kodawari-three__item kodawari-three__image:hover .kodawari-three__vertical{
  transform: translateY(-6rem);
}

.kodawari-detail{
  padding: 210rem 0 80rem;
}

.kodawari-detail.block02{
  padding: 300rem 0 190rem;
}

.kodawari-detail.block03{
  padding: 115rem 0 110rem;
}

.kodawari-detail__block{
  padding-bottom: 80rem;
}

.kodawari-detail__block:last-child{
  padding-bottom: 0;
}

/* アンカー飛び先の見切れ対策（固定ヘッダーある場合） */
.kodawari-detail__block{
  scroll-margin-top: 400rem;
}
.kodawari-detail__block[id="id-02"]{
  scroll-margin-top: 400rem;
}
.kodawari-detail__block[id="id-03"]{
  scroll-margin-top: 300rem;
}


/* 縦タイトル（上部中央） */
.kodawari-detail__titleVertical{
  margin: 0 auto 28rem;
  font-size: 24rem;
  top: -260rem;
}
.block02 .kodawari-detail__titleVertical{
  top: -210rem;
}
.block03 .kodawari-detail__titleVertical{
  top: -140rem;
}
/* 2カラム */
.kodawari-detail__grid{
  gap: 138rem;
}

.kodawari-detail__grid.is-reverse{
  gap: 105rem;
}
.kodawari-detail__grid.is-center{
  gap: 110rem;
  width: 1200rem;
  padding-right: 100rem;
}
.kodawari-detail__grid.is-reverse.is-center{
  gap: 110rem;
  width: 1200rem;
  padding-left: 100rem;
}
.kodawari-detail__grid.is-reverse .kodawari-text{
  max-width: 502rem;
}
.kodawari-detail__grid.is-center .kodawari-text{
  max-width: 400rem;
  width: 400rem;
}
.kodawari-text{
  padding-top: 102rem;
}
.block02 .kodawari-text {
    padding-top: 72rem;
}
.block03 .kodawari-text {
    padding-top: 160rem;
}
.kodawari-text h4 {
  font-size: 18rem;
  margin: 40rem 0 15rem;
}
.is-reverse .kodawari-text{
  padding-top: 92rem;
}
.kodawari-text__leadMark{
  width: 124rem;
  height: 23rem;
  top: 49rem;
  left: -114rem;
}
.block02 .kodawari-text__leadMark{
  top: 19rem;
}
.block03 .kodawari-text__leadMark{
  top: 115rem;
}
.is-reverse .kodawari-text__leadMark{
  top: 49rem;
  left: -114rem;
}

.kodawari-text__title{
  margin: 0 0 20rem;
  font-size: 26rem;
}

.kodawari-text__body_link + .kodawari-text__title{
  margin-top: 50rem;
}

.kodawari-text__body{
  font-size: 15rem;
  max-width: 502rem;
}

.kodawari-text__body_link {
  font-size: 17rem;
  margin-bottom: 20rem;
}

.kodawari-collage{
  min-height: 532rem;
}

.kodawari-collage img{
  min-width: 680rem;
}
.is-center.is-reverse .kodawari-collage img{
  width: 560rem;
}
.is-center .kodawari-collage img{
  width: 590rem;
}

.page-text-link-button {
  width: 400rem;
  height: 60rem;
  font-size: 18rem;
  gap: 10rem;
  margin-top: 30rem;
}
.page-text-link-button p {
  font-size: 18rem;
  gap: 10rem;
}
.page-text-link-button p:after {
  width: 18rem;
  height: 18rem;
}
.page-text-link-button p:before {
  right: 7rem;
  top: 5rem;
  width: 4rem;
  height: 8rem;
}
.page-text-link-button:hover p:before {
  right: -7rem;
}

.kurabito__inner{
  max-width: 1000rem;
}

/* --- lead --- */
.kurabito-lead{
  grid-template-columns: 170rem 1fr;
  gap: 35rem;
  margin-bottom: 56rem;
  width: 790rem;
  margin-bottom: 80rem;
}


.kurabito-lead__title{
  margin: 0 0 20rem;
  gap: 14rem;
}
.kurabito-lead__role{
  font-size: 26rem;
}
.kurabito-lead__name{
  font-size: 13rem;
}

.kurabito-lead__desc{
  margin: 0 0 14rem;
  font-size: 14rem;
}

/* --- grid --- */
.kurabito-grid{
  gap: 54rem;
  margin-bottom: 80rem;
}
.kurabito-grid + .kurabito-grid {
  gap: 54rem;
  width: 735rem;
}

.kurabito-card__title{
  margin: 10rem 0;
  font-size: 20rem;
  gap: 14rem;
}
.kurabito-card__title span{
  font-size: 12rem;
}

.kurabito-card__desc{
  font-size: 14rem;
}



}





@media screen and (max-width: 768px) {

  .kodawari-mv{
  }
  .kodawari-mv__title h1{
    font-size: 26px;
  }

  .kodawari-intro{
    padding: 52px 16px;
  }
  .kodawari-intro h2{
    font-size: 18px;
  }

  /* 横スライド：grid→横並び＆scroll */
  .kodawari-three{
    display:flex;
    overflow-x: auto;
    

    /* 端の余白を残す */
  }

  .kodawari-three__item{
    flex: 0 0 500rem;
    scroll-snap-align: start;
  }

  /* スクロールバー薄め（不要なら削除OK） */
  .kodawari-three::-webkit-scrollbar{
    height: 6px;
  }
  .kodawari-three::-webkit-scrollbar-thumb{
    background: rgba(0,0,0,.25);
    border-radius: 999px;
  }
  .kodawari-detail{
    padding: 64px 0 76px;
  }

  .kodawari-detail__block{
    padding-bottom: 64px;
  }

  .kodawari-detail__grid,
  .kodawari-detail__grid.is-reverse{
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .kodawari-detail__grid.is-reverse .kodawari-collage,
  .kodawari-detail__grid.is-reverse .kodawari-text{
    order: initial;
  }

  .kodawari-collage{
    min-height: 280px;
  }

  .collage-01__main,
  .collage-02__main,
  .collage-03__main{
  overflow: auto!important;
  }

  .collage-01__sub,
  .collage-02__sub,
  .collage-03__sub{
    width: 56%;
    left: 34%;
  }

  .kodawari-text__title{
    font-size: 16px;
  }

  .kurabito{
    padding: 0;
  }

  .kurabito-lead{
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: 36px;
  }
  .kurabito-lead__photo{
    max-width: 260px;
  }

  .kurabito-grid{
  }

  .kurabito-card{
    flex: 0 0 62%;
    scroll-snap-align: start;
  }

  .kurabito-grid::-webkit-scrollbar{
    height: 6px;
  }
  .kurabito-grid::-webkit-scrollbar-thumb{
    background: rgba(0,0,0,.25);
    border-radius: 999px;
  }

.kodawari .breadcrumb-box {
  top: 20rem;
  width: 680rem;
}

.kodawari-mv{
  min-height: 350rem;
  background: url(https://gigaplus.makeshop.jp/tenjushuzou/img/page101-sp.png) center / cover no-repeat;
}

.kodawari-mv__breadcrumb{
  top: 18rem;
  left: 18rem;
  font-size: 12rem;
}
.kodawari-mv__breadcrumb span{
  margin: 0 4rem;
}

.kodawari-mv__title h1{
  font-size: 48rem;
}

.kodawari-intro{
  padding: 80rem 0;
}
.kodawari-intro__inner{
  max-width: 680rem;
}
.kodawari-intro h2{
  margin: 0 0 50rem;
  font-size: 40rem;
}
.kodawari-intro p{
  font-size: 26rem;
}

/* ---------- 3 Column ---------- */
.kodawari-three{
  max-width: 100%;
  padding: 0 0 180rem;
  gap: 30rem;
  margin-left: 35rem;
  padding-right: 35rem;
}

.kodawari-three__vertical{
  font-size: 34rem;
  writing-mode: vertical-lr;
  text-orientation: inherit;
}
.kodawari-three__vertical{
  writing-mode: vertical-rl !important;
  -webkit-writing-mode: vertical-rl !important;
  text-orientation: upright !important;
  -webkit-text-orientation: upright !important;
  transform: none !important;
}
.kodawari-three__vertical span{

}

.kodawari-three__text{
  margin: 20rem 0 0;
  font-size: 26rem;
}

.kodawari-three__icon{
  right: 20rem;
  bottom: 20rem;
  width: 50rem;
  height: 50rem;
  transform: translateY(0rem);
}

.kodawari-three__icon::after{
  width: 18rem;
  height: 18rem;
}

.kodawari-three__item .kodawari-three__image:hover img{
}

.kodawari-three__item kodawari-three__image:hover .kodawari-three__vertical{
  transform: translateY(-6rem);
}

.kodawari-detail{
  padding: 270rem 0 50rem;
}

.kodawari-detail.block02{
  padding: 360rem 0 155rem;
}

.kodawari-detail.block03{
  padding: 110rem 0 140rem;
}

.kodawari-detail__block{
  padding-bottom: 100rem;
}

.kodawari-detail__block:last-child{
  padding-bottom: 0;
}

/* アンカー飛び先の見切れ対策（固定ヘッダーある場合） */
.kodawari-detail__block{
  scroll-margin-top: 650rem;
}
.kodawari-detail__block[id="id-02"]{
  scroll-margin-top: 550rem;
}
.kodawari-detail__block[id="id-03"]{
  scroll-margin-top: 500rem;
  padding-bottom: 80rem;
}


/* 縦タイトル（上部中央） */
.kodawari-detail__titleVertical{
  margin: 0 auto 28rem;
  font-size: 34rem;
  top: -340rem;
}
.block02 .kodawari-detail__titleVertical{
  top: -255rem;
}
.block03 .kodawari-detail__titleVertical{
  top: -155rem;
}
/* 2カラム */
.kodawari-detail__grid{
  gap: 105rem;
  width: 680rem;
  margin: 0 auto;
}

.kodawari-detail__grid.is-reverse{
  gap: 100rem;
}
.kodawari-detail__grid.is-center{
  gap: 50rem;
  width: 600rem;
  padding-right: 0;
  flex-direction: column;
}
.kodawari-detail__grid.is-reverse.is-center{
  gap: 50rem;
  width: 600rem;
  padding-left: 0;
  flex-direction: column;
}
.kodawari-detail__grid.is-reverse .kodawari-text{
  max-width: 600rem;
  padding-top: 0;
}
.kodawari-detail__grid.is-center .kodawari-text{
  max-width: 600rem;
  width: 600rem;
}
.kodawari-text{
  padding-top: 0;
  width: 600rem;
  margin: 0 auto;
}
.block02 .kodawari-text {
    padding-top: 0;
}
.block03 .kodawari-text {
    padding-top: 0;
}
.kodawari-text h4 {
  font-size: 30rem;
  margin: 50rem 0 20rem;
}
.is-reverse .kodawari-text{
  padding-top: 92rem;
}
.kodawari-text__leadMark{
  width: 178rem;
  height: 33rem;
  top: -55rem;
  left: -75rem;
}
.block02 .kodawari-text__leadMark{
  top: -55rem;
}
.block03 .kodawari-text__leadMark{
  top: -55rem;
  left: -75rem;
}
.is-reverse .kodawari-text__leadMark{
  top: 49rem;
  top: -55rem;
  left: unset;
  right: -75rem;
  transform: rotateY(180deg);
}

.kodawari-text__title{
  margin: 0 0 30rem;
  font-size: 40rem;
  line-height: 1.6;
}

.kodawari-text__body_link + .kodawari-text__title{
  margin-top: 70rem;
}

.kodawari-text__body{
  font-size: 26rem;
  max-width: 600rem;
  letter-spacing: 0.02em;
  line-height: 1.8;
}

.kodawari-text__body_link {
  font-size: 28rem;
  margin-bottom: 40rem;
  white-space: nowrap;
}

.kodawari-collage{
  min-height: auto;
}

.kodawari-collage img{
  min-width: 680rem;
}
.is-center.is-reverse .kodawari-collage img{
  width: 600rem;
}
.is-center .kodawari-collage img{
  width: 600rem;
}

.page-text-link-button {
  width: 500rem;
  height: 90rem;
  font-size: 28rem;
  gap: 20rem;
  margin: 0 auto;
  margin-top: 30rem;
}
.page-text-link-button p {
  font-size: 28rem;
  gap: 20rem;
  align-items: center;
}
.page-text-link-button p:after {
  width: 40rem;
  height: 40rem;
}
.page-text-link-button p:before {
  right: 15rem;
  top: 11rem;
  width: 9rem;
  height: 18rem;
}
.page-text-link-button:hover p:before {
  right: -7rem;
}

.kurabito__inner{
  max-width: 600rem;
}

/* --- lead --- */
.kurabito-lead{
  grid-template-columns: 262rem 1fr;
  gap: 35rem;
  margin-bottom: 56rem;
  width: 600rem;
  margin-bottom: 450rem;
  position: relative;
}


.kurabito-lead__title{
  margin: 0;
  gap: 14rem;
}
.kurabito-lead__role{
  font-size: 40rem;
}
.kurabito-lead__name{
  font-size: 24rem;
  margin-top: 10rem;
}

.kurabito-lead__desc{
  margin: 0;
  font-size: 26rem;
  position: absolute;
  width: 600rem;
  transform: translateX(-50%);
  left: 50%;
  bottom: -395rem;
}

/* --- grid --- */
.kurabito-grid{
  gap: 40rem 30rem;
  margin-bottom: 40rem;
  grid-template-columns: repeat(2, 1fr);
}
.kurabito-grid + .kurabito-grid {
  gap: 40rem 30rem;
  width: 600rem;
  grid-template-columns: repeat(2, 1fr);
}

.kurabito-card__title{
  margin: 10rem 0;
  font-size: 36rem;
  gap: 14rem;
}
.kurabito-card__title span{
  font-size: 24rem;
  margin-top: 10rem;
}

.kurabito-card__desc{
  font-size: 26rem;
  line-height: 1.6;
}

}



/* =============================
  Fixed page: 蔵見学
============================= */

.kengaku{
  background:#fff;
}

/* ---------- MV ---------- */
.kengaku-mv{
  position: relative;
  min-height: 350px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page401-pc.png") center/cover no-repeat;
}

.kengaku-mv::after{
  content:"";
  position:absolute;
  inset:0;
}

.kengaku-mv__title{
  position: relative;
  z-index: 2;
  color:#fff;
}
.kengaku-mv__title h1{
  margin:0;
  font-size: 45px;
  letter-spacing: .04em;
  font-weight: 500;
  color: #ffffff;
  z-index: 2;
  position: relative;
}
.kengaku-mv__title p{
  margin:0;
  font-size: 45px;
  letter-spacing: .04em;
  font-weight: 500;
  color: #2C1B00;
  -webkit-text-stroke-width: 10px;
  filter: blur(10px);
  position: absolute;
  top: 0;
  z-index: 1;
}

/* ---------- Intro ---------- */
.kengaku-intro{
  padding: 70px 0;
  text-align:center;
}
.kengaku-intro__inner{
  max-width: 1080px;
  margin: 0 auto;
}
.kengaku-intro h2{
  margin: 0 0 40px;
  font-size: 26px;
  letter-spacing: .04em;
  font-weight: 500;
  color: #333333;
}
.kengaku-intro p{
  margin:0;
  font-size: 15px;
  line-height: 2;
  letter-spacing: 0;
  color:#333;
}

/* ---------- Cards ---------- */
.kengaku-cards{
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 0 80px;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.kengaku-card__image{
  position: relative;
  display:block;
  overflow: auto;
}

.kengaku-card__image img{
  width: 100%;
  height: auto;
  display:block;
}

.kengaku-card__title{
  margin: 20px 0 20px;
  font-size: 20px;
  letter-spacing: .04em;
  font-weight: 500;
  color: #333;
  text-align:center;
}

.kengaku-card__text{
  margin:0;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: .02em;
  color:#333;
}

/* =============================
  Flow section
============================= */

.kengaku-flow{
  /* スクショに合わせて薄い紙色系 */
  background: #F7F4E2;
  padding: 60px 0 80px;
}

.kengaku-flow__inner{
  max-width: 1080px;
  margin: 0 auto;
  padding: 0;
}

.kengaku-flow__head{
  text-align:center;
  margin-bottom: 60px;
}

.kengaku-flow__emblem{
  width: 55px;
  height: 76px;
  margin: 0 auto 10px;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page405.png") center/contain no-repeat;
}

.kengaku-flow__title{
  margin: 0 0 30px;
  font-size: 26px;
  font-weight: 500;
  letter-spacing: .04em;
  color:#333;
}

.kengaku-flow__lead{
  margin: 0;
  font-size: 15px;
  line-height: 1.8;
  color:#333;
  letter-spacing: 0.02em;
}

/* grid */
.kengaku-flow__grid{
  position: relative;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}

/* 中央ライン */
.kengaku-flow__line{
  position:absolute;
  left: unset;
  top: 20px;
  right: 85px;
  bottom: 100px;
  width: 2px;
  background: #D6C049;
  z-index: 1;
}

/* step */
.kengaku-step{
  position: relative;
  display:grid;
  grid-template-columns: 1fr 180px;
  gap: 10px;
  align-items:start;
  padding: 0 0 50px;
  z-index: 2;
}

.kengaku-step + .kengaku-step {
  padding: 0;
}

.kengaku-flow__col {
  position: relative;
}

.kengaku-step:last-child{
  padding-bottom: 0;
}

.kengaku-step__no{
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: #D6C049;
  color:#fff;
  display: inline-flex;
  align-items:center;
  justify-content:center;
  font-size: 20px;
  font-weight: 400;
  margin-top: 0;
  margin-right: 10px;
  line-height: 1;
}

.kengaku-step__title{
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: .04em;
  color:#333;
  display: inline-block;
}

.kengaku-step__meta{
  margin: 0 0 15px;
  font-size: 15px;
  color: #5f5f5f;
}
.kengaku-cta__info__text__box .tenju-tel {
  display: none;
}
.kengaku-step__text{
  margin: 0;
  font-size: 14px;
  line-height: 1.8;
  color:#333;
  font-family: "Zen Kaku Gothic New", sans-serif;
  margin-top: 10px;
}


/* =============================
  Season section
============================= */

.kengaku-season{
  background: url(https://gigaplus.makeshop.jp/tenjushuzou/img/background01.png) center / contain;
}

.kengaku-season__inner{
  max-width: 1080px;
  margin: 0 auto;
  padding: 80px 0;
  text-align:center;
}

.kengaku-season__title{
  margin: 0 0 30px;
  font-size: 26px;
  font-weight: 500;
  letter-spacing: .04em;
  color:#333;
}

.kengaku-season__lead{
  margin: 0 0 60px;
  font-size: 15px;
  line-height: 1.8;
  color:#333;
  letter-spacing: 0.02em;
}

/* --- top strip --- */
.kengaku-season-strip{
  overflow:hidden;
}
.kengaku-season-strip__track{
  display:flex;
}
.kengaku-season-strip__item{
  flex: 0 0 20%;
}
.kengaku-season-strip__item img{

}

/* --- grid --- */
.kengaku-season__grid{
  display:grid;
  grid-template-columns: 1fr 580px 1fr;
  gap: 20px 20px;
  align-items:start;
  text-align:left;
  position: relative;
}

.kengaku-season__text h3{
  margin: 40px 0 15px;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: .04em;
  line-height: 1.6;
  color:#333;
}

.kengaku-season__text.aki-text {
    position: absolute;
    width: 230px;
    left: 0;
    top: 215px;
}
.kengaku-season__text.huyu-text {
    position: absolute;
    width: 230px;
    right: 0;
    top: 215px;
}
.kengaku-season__text p{
  margin:0;
  font-size: 14px;
  line-height: 1.8;
  color:#333;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

/* --- collage --- */
.season-collage{
  position: relative;
  width: 100%;
  max-width: 520px;
  margin: 0 auto;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.season-collage__img{
  position: relative;
  margin:0;
  overflow:hidden;
  border-radius: 2px;
}
.season-collage__img img{
  width:100%;
  height: 170px;
  object-fit: cover;
  display:block;
}

/* 季節ラベル */
.season-collage__label{
  position:absolute;
  left: 10px;
  bottom: 10px;
  padding: 6px 10px;
  background:#D7C15D;
  color:#fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  border-radius: 2px;
}

/* spacer（PCの2段目で中央を空にする） */
.kengaku-season__spacer{
  display:block;
}




/* photo box（スクショの白枠） */
.kengaku-step__photo{
  background:#fff;
}

.kengaku-step__photo img{
  width:100%;
  height:auto;
  display:block;
}

/* --- top strip (one image loop) --- */
.kengaku-season-strip{
  overflow:hidden;
}

.kengaku-season-strip__track{
  display:flex;
  will-change: transform;
}

.kengaku-season-strip__item{
  flex: 0 0 auto;
}

.kengaku-season-strip__item img{
  display:block;
  height: auto;
  width: 100vw;          /* 横長1枚を自然幅で */
  max-width: none;      /* 重要：縮まない */
  object-fit: cover;
}

/* 中央の季節画像（1枚） */
.kengaku-season__collageImg{
  margin: 0;
  overflow:hidden;
  border-radius: 2px;
}
.kengaku-season__collageImg img{
  width:100%;
  height:auto;
  display:block;
}

/* =============================
  Summary section
============================= */

.kengaku-summary{
  background:#fff;
  padding: 80px 0 100px;
}

.kengaku-summary__inner{
  max-width: 800px;
  margin: 0 auto;
  padding: 0;
}

.kengaku-summary__title{
  text-align:center;
  margin: 0 0 40px;
  font-size: 26px;
  font-weight: 500;
  letter-spacing: .04em;
  color:#333;
}

/* 定義リスト */
.kengaku-def{
  margin: 0;
  padding: 0;
}

.kengaku-def__row{
  display:grid;
  grid-template-columns: 180px 1fr;
  gap: 20px;
  padding: 24px 0;
  border-bottom: 1px solid #DEDEDE;
}

.kengaku-def dt{
  margin:0;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  color: #5F5F5F;
}

.kengaku-def dd{
  margin:0;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0;
  color:#333;
}
.kengaku-def dd strong{
  font-weight: 700
  ;
}
/* 注意ブロック */
.kengaku-notes{
  margin-top: 44px;
}

.kengaku-notes__block{
  padding: 20px 0;
  border-bottom: 1px solid rgba(0,0,0,.12);
}

.kengaku-notes__block:first-child{
  border-top: 1px solid rgba(0,0,0,.12);
}

.kengaku-notes__block h3{
  margin: 0 0 10px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .04em;
  color:#333;
}

.kengaku-notes__block p{
  margin:0;
  font-size: 13px;
  line-height: 2.0;
  letter-spacing: .02em;
  color:#333;
}

/* =============================
  CTA section
============================= */

.kengaku-cta{
  position: relative;
  overflow: hidden;
  color:#fff;
  background: #D6C049;
}

.kengaku-cta__mv {
  position: relative;
  inset:0;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page412-pc.png") center/cover no-repeat;
  z-index:0;
  height: 250px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* 背景写真 */
.kengaku-cta__bg{position: absolute;overflow: hidden;color: #fff;background: #D6C049;background: linear-gradient(transparent, #D6C049 55px, #D6C049);height: 50px;width: 100vw;top: 200px;}

.kengaku-cta__inner{
  position: relative;
  z-index:1;
  max-width: 900px;
  margin:0 auto;
  padding: 60px 0 80px;
}

/* 見出し */
.kengaku-cta__head{
  text-align:center;
  position: relative;
  z-index: 2;
  margin-bottom: 20px;
}

.kengaku-cta__head h2{
  margin: 0 0 20px;
  font-size: 36px;
  font-weight:500;
  letter-spacing: .06em;
  color: #000000;
  position: relative;
  z-index: 2;
}

.kengaku-cta__head p{
  font-size: 18px;
  letter-spacing: .02em;
  color: #000000;
  position: relative;
  z-index: 2;
}
.kengaku-cta__head__back{
  color: #ffffff;
  position: absolute;
  top: 0;
  z-index: 0;
}

.kengaku-cta__head__back p{
  color: #ffffff;
  margin: 0 0 20px;
  font-size: 36px;
  font-weight: 500;
  letter-spacing: .06em;
  z-index: 1;
  -webkit-text-stroke-width: 10px;
  filter: blur(10px);
}

.kengaku-cta__head__back p + p{
  color: #ffffff;
  font-size: 18px;
  letter-spacing: .02em;
  margin: 0;
}

/* コンテンツ */
.kengaku-cta__content{
}

.kengaku-cta__content .kengaku-cta__info__text{display: flex;justify-content: space-between;align-items: flex-end;padding-bottom: 20px;border-bottom: 1px solid #ffffff;margin-bottom: 40px;}

.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__info__text {
  padding-bottom: 0;
  border: none;
  align-items: flex-start;
  margin-bottom: 0;
}

.kengaku-cta__note{
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 0;
  display: flex;
  gap: 15px;
  align-items: end;
}
.kengaku-cta__note img{
  width: 40px;
}
.kengaku-cta__line{
  border:none;
  border-top:1px solid rgba(255,255,255,.5);
  margin:30px 0;
}

.kengaku-cta__tel{
  font-size:22px;
  letter-spacing:.06em;
}

.kengaku-cta__attention{
  margin-top:20px;
  font-size: 14px;
  line-height: 1.8;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.kengaku-cta__attention span{
  font-weight: 500;
  color: #e40000;
  background: #fff;
  padding: 0 2px 0 5px;
}

/* ボタン */
.kengaku-cta__buttons{
  display:flex;
  flex-direction:column;
  gap:26px;
  width: 350px;
}

.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons{
  height: auto;
  justify-content: space-between;
  gap: 145px;
  display: flex;
}
.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons p{
  font-size: 17px;
  font-weight: 500;
  letter-spacing: 0;
}
.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons p strong{
  font-size: 31px;
  letter-spacing: 0;
  line-height: 1;
}
.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons p strong a{
  color: #fff;
}
.kengaku-cta__btn{
  display:flex;
  align-items: center;
  justify-content:center;
  width: 350px;
  height: 60px;
  background:#fff;
  color:#333;
  text-decoration:none;
  font-size: 18px;
  letter-spacing: 0;
  transition:.3s;
  font-weight: 500;
  gap: 10px;
}
.kengaku-cta__btn img{
  width: 30px;
  height: auto;
  position: relative;
  top: 1px;
}
.kengaku-cta__btn:hover{
}

.kengaku-cta__btn.is-outline{
  background: #fff;
  border:1px solid #fff;
  color: #333333;
}



@media screen and (max-width: 1440px) {

/* =============================
  Fixed page: 蔵見学
============================= */

.kengaku{
  background:#fff;
}

/* ---------- MV ---------- */
.kengaku-mv{
  min-height: 350rem;
}

.kengaku-mv::after{
}

.kengaku-mv__title{
}
.kengaku-mv__title h1{
  font-size: 45rem;
}
.kengaku-mv__title p{
  font-size: 45rem;
  -webkit-text-stroke-width: 10rem;
  filter: blur(10rem);
}

/* ---------- Intro ---------- */
.kengaku-intro{
  padding: 70rem 0;
}
.kengaku-intro__inner{
  max-width: 1080rem;
}
.kengaku-intro h2{
  margin: 0 0 40rem;
  font-size: 26rem;
}
.kengaku-intro p{
  font-size: 15rem;
}

/* ---------- Cards ---------- */
.kengaku-cards{
  max-width: 1080rem;
  padding: 0 0 80rem;
  grid-template-columns: repeat(3, 1fr);
  gap: 30rem;
}

.kengaku-card__image{
}

.kengaku-card__image img{
}

.kengaku-card__title{
  margin: 20rem 0 20rem;
  font-size: 20rem;
}

.kengaku-card__text{
  font-size: 14rem;
}

.kengaku-flow{
  padding: 60rem 0 80rem;
}

.kengaku-flow__inner{
  max-width: 1080rem;
}

.kengaku-flow__head{
  margin-bottom: 60rem;
}

.kengaku-flow__emblem{
  width: 55rem;
  height: 76rem;
  margin: 0 auto 10rem;
}

.kengaku-flow__title{
  margin: 0 0 30rem;
  font-size: 26rem;
}

.kengaku-flow__lead{
  font-size: 15rem;
}

/* grid */
.kengaku-flow__grid{
  gap: 60rem;
}

/* 中央ライン */
.kengaku-flow__line{
  top: 20rem;
  right: 85rem;
  bottom: 100rem;
  width: 2rem;
}

/* step */
.kengaku-step{
  grid-template-columns: 1fr 180rem;
  gap: 10rem;
  padding: 0 0 50rem;
}

.kengaku-step + .kengaku-step {
}

.kengaku-flow__col {
}

.kengaku-step:last-child{
}

.kengaku-step__no{
  width: 34rem;
  height: 34rem;
  border-radius: 999rem;
  font-size: 20rem;
  margin-right: 10rem;
}

.kengaku-step__title{
  margin: 0 0 10rem;
  font-size: 18rem;
}

.kengaku-step__meta{
  margin: 0 0 15rem;
  font-size: 15rem;
}

.kengaku-step__text{
  font-size: 14rem;
  margin-top: 10rem;
}

.kengaku-season{
  background: url(https://gigaplus.makeshop.jp/tenjushuzou/img/background01.png) center / contain;
}

.kengaku-season__inner{
  max-width: 1080rem;
  padding: 80rem 0;
}

.kengaku-season__title{
  margin: 0 0 30rem;
  font-size: 26rem;
}

.kengaku-season__lead{
  margin: 0 0 60rem;
  font-size: 15rem;
}

/* --- top strip --- */
.kengaku-season-strip{
}
.kengaku-season-strip__track{
}
.kengaku-season-strip__item{
}
.kengaku-season-strip__item img{

}

/* --- grid --- */
.kengaku-season__grid{
  grid-template-columns: 1fr 580rem 1fr;
  gap: 20rem 20rem;
}

.kengaku-season__text h3{
  margin: 40rem 0 15rem;
  font-size: 20rem;
}

.kengaku-season__text.aki-text {
    width: 230rem;
    top: 215rem;
}
.kengaku-season__text.huyu-text {
    width: 230rem;
    top: 215rem;
}
.kengaku-season__text p{
  font-size: 14rem;
}

/* --- collage --- */
.season-collage{
  max-width: 520rem;
  gap: 10rem;
}

.season-collage__img{
  border-radius: 2rem;
}
.season-collage__img img{
  height: 170rem;
}

/* 季節ラベル */
.season-collage__label{
  left: 10rem;
  bottom: 10rem;
  padding: 6rem 10rem;
  font-size: 12rem;
  border-radius: 2rem;
}

.kengaku-season__spacer{
}

.kengaku-step__photo{
}

.kengaku-step__photo img{
}

.kengaku-season-strip{
}

.kengaku-season-strip__track{
}

.kengaku-season-strip__item{
}

.kengaku-season-strip__item img{
}

.kengaku-season__collageImg{
  border-radius: 0;
}
.kengaku-season__collageImg img{
}

.kengaku-summary{
  padding: 80rem 0 100rem;
}

.kengaku-summary__inner{
  max-width: 800rem;
}

.kengaku-summary__title{
  margin: 0 0 40rem;
  font-size: 26rem;
}

.kengaku-def{

}

.kengaku-def__row{
  grid-template-columns: 180rem 1fr;
  gap: 20rem;
  padding: 24rem 0;
}

.kengaku-def dt{
  font-size: 14rem;
}

.kengaku-def dd{
  font-size: 14rem;
}
.kengaku-def dd strong{
}
/* 注意ブロック */
.kengaku-notes{
  margin-top: 44rem;
}

.kengaku-notes__block{
  padding: 20rem 0;
}

.kengaku-notes__block:first-child{
}

.kengaku-notes__block h3{
  margin: 0 0 10rem;
  font-size: 13rem;
}

.kengaku-notes__block p{
  margin:0;
  font-size: 13rem;
}
.kengaku-cta{
}

.kengaku-cta__mv {
  height: 250rem;
}

/* 背景写真 */
.kengaku-cta__bg{
  background: linear-gradient(transparent, #D6C049 55rem, #D6C049);
  height: 50rem;
  top: 200rem;}

.kengaku-cta__inner{
  max-width: 900rem;
  padding: 60rem 0 80rem;
}

.kengaku-cta__head{
  margin-bottom: 20rem;
}

.kengaku-cta__head h2{
  margin: 0 0 20rem;
  font-size: 36rem;
}

.kengaku-cta__head p{
  font-size: 18rem;
}
.kengaku-cta__head__back{
}

.kengaku-cta__head__back p{
  margin: 0 0 20rem;
  font-size: 36rem;
  -webkit-text-stroke-width: 10rem;
  filter: blur(10rem);
}

.kengaku-cta__head__back p + p{
  font-size: 18rem;
}

/* コンテンツ */
.kengaku-cta__content{
}

.kengaku-cta__content .kengaku-cta__info__text{
  padding-bottom: 20rem;
  margin-bottom: 40rem;
}

.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__info__text {
}

.kengaku-cta__note{
  font-size: 16rem;
  gap: 15rem;
}
.kengaku-cta__note img{
  width: 40rem;
}
.kengaku-cta__line{
  margin:30rem 0;
}

.kengaku-cta__tel{
  font-size:22rem;
}

.kengaku-cta__attention{
  margin-top:20rem;
  font-size: 14rem;
}

.kengaku-cta__attention span{
  padding: 0 2rem 0 5rem;
}

/* ボタン */
.kengaku-cta__buttons{
  gap:26rem;
  width: 350rem;
}

.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons{
  gap: 145rem;
}
.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons p{
  font-size: 17rem;
}
.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons p strong{
  font-size: 31rem;
}
.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons p strong a{
}
.kengaku-cta__btn{
  width: 350rem;
  height: 60rem;
  font-size: 18rem;
  gap: 10rem;
}
.kengaku-cta__btn img{
  width: 30rem;
  top: 1rem;
}
.kengaku-cta__btn:hover{
}

.kengaku-cta__btn.is-outline{
  background: #fff;
  border:1rem solid #fff;

}


  
}


/* PC時：stripは静的表示（自動なし） */
@media (min-width: 769px){
  .kengaku-season-strip__track{
    transform: none !important;
  }
}


@media screen and (max-width: 768px) {

  .kengaku-mv{
    min-height: 350rem;
  }
  .kengaku-mv__title h1{
  }

  .kengaku-intro{
    padding: 52px 16px 40px;
  }
  .kengaku-intro h2{
    font-size: 17px;
  }

  .kengaku-cards{
    max-width: 100%;
    padding: 0 16px 68px;
  }

  .kengaku-card{
  }

  .kengaku-flow{
    padding: 64px 0 74px;
  }

  .kengaku-flow__grid{
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .kengaku-flow__line{
  }

  .kengaku-step{
    grid-template-columns: 28px 1fr;
    gap: 14px;
    padding: 16px 0 22px;
  }

  .kengaku-step__photo{
    grid-column: 1 / -1;
    margin-left: auto; /* 番号の分だけ下げる */
    max-width: 300rem;
  }
  .kengaku-season-strip__item img{
    height: 250rem;
  }
  .kengaku-summary{
    padding: 64px 0 70px;
  }

  .kengaku-summary__title{
    margin-bottom: 34px;
    font-size: 18px;
  }

  .kengaku-def__row{
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 18px 0;
  }

  .kengaku-def dt{
    font-size: 12px;
    opacity: 1;
  }

  .kengaku-def dd,
  .kengaku-notes__block p{
    font-size: 12px;
  }

  .kengaku-cta__inner{
    padding:60px 16px 70px;
  }

  .kengaku-cta__head h2{
    font-size:20px;
  }

  .kengaku-cta__content{
    grid-template-columns:1fr;
    gap:40px;
  }

  .kengaku-cta__tel{
    font-size:18px;
  }

  .kengaku-cta__btn{
    height:56px;
  }

.kengaku{
  background:#fff;
}

/* ---------- MV ---------- */
.kengaku-mv{
  min-height: 350rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page401-sp.png") center/cover no-repeat;
}

.kengaku-mv::after{
}

.kengaku-mv__title{
}
.kengaku-mv__title h1{
  font-size: 48rem;
}
.kengaku-mv__title p{
  font-size: 48rem;
  -webkit-text-stroke-width: 10rem;
  filter: blur(10rem);
}

/* ---------- Intro ---------- */
.kengaku-intro{
  padding: 80rem 0;
}
.kengaku-intro__inner{
  max-width: 680rem;
}
.kengaku-intro h2{
  margin: 0 0 40rem;
  font-size: 40rem;
}
.kengaku-intro p{
  font-size: 26rem;
  line-height: 1.8;
}

/* ---------- Cards ---------- */
.kengaku-cards{
  max-width: 600rem;
  padding: 0 0 100rem;
  grid-template-columns: repeat(1, 1fr);
  gap: 80rem;
}

.kengaku-card__image{
}

.kengaku-card__image img{
}

.kengaku-card__title{
  margin: 20rem 0 20rem;
  font-size: 34rem;
}

.kengaku-card__text{
  font-size: 26rem;
}

.kengaku-flow{
  padding: 80rem 0 100rem;
}

.kengaku-flow__inner{
  max-width: 680rem;
}

.kengaku-flow__head{
  margin-bottom: 60rem;
}

.kengaku-flow__emblem{
  width: 90rem;
  height: 125rem;
  margin: 0 auto 10rem;
}

.kengaku-flow__title{
  margin: 0 0 30rem;
  font-size: 40rem;
}

.kengaku-flow__lead{
  font-size: 26rem;
}

/* grid */
.kengaku-flow__grid{
  gap: 60rem;
}

/* 中央ライン */
.kengaku-flow__line{
  top: 150rem;
  right: 150rem;
  bottom: -250rem;
  width: 2rem;
}
.kengaku-flow__col + .kengaku-flow__col .kengaku-flow__line{
  top: 150rem;
  right: 150rem;
  bottom: 0;
  width: 2rem;
}
/* step */
.kengaku-step{
  grid-template-columns: 1fr;
  gap: 25rem;
  padding: 0 0 50rem;
}

.kengaku-step + .kengaku-step {
}

.kengaku-flow__col {
}

.kengaku-step:last-child{
}

.kengaku-step__no{
  width: 50rem;
  height: 50rem;
  border-radius: 999rem;
  font-size: 30rem;
  margin-right: 20rem;
  line-height: 1;
}

.kengaku-step__content {
  position: relative;
}

.kengaku-step__title{
  margin: 0 0 19rem;
  font-size: 30rem;
}

.kengaku-step__meta{
  margin: 0;
  font-size: 26rem;
}

.kengaku-step__text{
  font-size: 26rem;
  line-height: 1.6;
  position: absolute;
  width: 350rem;
  transform: translateY(25rem);
  margin-top: 0;
}

.kengaku-season{
  background: url(https://gigaplus.makeshop.jp/tenjushuzou/img/background01.png) center / contain;
}

.kengaku-season__inner{
  max-width: 100vw;
  padding: 100rem 0;
}

.kengaku-season__title{
  margin: 0 0 30rem;
  font-size: 40rem;
}

.kengaku-season__lead{
  margin: 0 0 80rem;
  font-size: 26rem;
}

/* --- top strip --- */
.kengaku-season-strip{
}
.kengaku-season-strip__track{
}
.kengaku-season-strip__item{
}
.kengaku-season-strip__item img{

}

/* --- grid --- */
.kengaku-season__grid{
  grid-template-columns: 1fr;
  gap: 20rem 20rem;
}

.kengaku-season__text {
  width: 320rem;
  margin-left: 35rem;
}

.kengaku-season__text h3{
  margin: 0 0 20rem;
  font-size: 34rem;
  text-align: center;
}
.kengaku-season__text.natsu-text {
    width: 320rem;
    position: absolute;
    top: unset;
    left: unset;
    margin-left: 0;
    right: 30rem;
}
.kengaku-season__text.aki-text {
    width: 320rem;
    top: unset;
    left: 30rem;
    bottom: 0;
    margin-left: 0;
}
.kengaku-season__text.huyu-text {
    width: 320rem;
    top: unset;
    position: absolute;
    bottom: 0;
    right: 30rem;
    margin-bottom: 47rem;
}
.kengaku-season__text p{
  font-size: 26rem;
}

/* --- collage --- */
.season-collage{
  max-width: 520rem;
  gap: 10rem;
}

.season-collage__img{
  border-radius: 2rem;
}
.season-collage__img img{
  height: 170rem;
}

/* 季節ラベル */
.season-collage__label{
  left: 10rem;
  bottom: 10rem;
  padding: 6rem 10rem;
  font-size: 12rem;
  border-radius: 2rem;
}

.kengaku-season__spacer{
}

.kengaku-step__photo{
}

.kengaku-step__photo img{
}

.kengaku-season-strip{
}

.kengaku-season-strip__track{
}

.kengaku-season-strip__item{
}

.kengaku-season-strip__item img{width: auto;}

.kengaku-season__collageImg{
  border-radius: 0;
  margin-bottom: 400rem;
}
.kengaku-season__collageImg img{
}

.kengaku-summary{
  padding: 100rem 0 100rem;
}

.kengaku-summary__inner{
  max-width: 680rem;
}

.kengaku-summary__title{
  margin: 0 0 30rem;
  font-size: 40rem;
}

.kengaku-def{

}

.kengaku-def__row{
  grid-template-columns: 1fr;
  gap: 15rem;
  padding: 30rem 0;
}

.kengaku-def dt{
  font-size: 25rem;
}

.kengaku-def dd{
  font-size: 26rem;
  line-height: 1.8;
}
.kengaku-def dd strong{
}
/* 注意ブロック */
.kengaku-notes{
  margin-top: 44rem;
}

.kengaku-notes__block{
  padding: 20rem 0;
}

.kengaku-notes__block:first-child{
}

.kengaku-notes__block h3{
  margin: 0 0 10rem;
  font-size: 13rem;
}

.kengaku-notes__block p{
  margin:0;
  font-size: 13rem;
}
.kengaku-cta{
}

.kengaku-cta__mv {
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page412-sp.png") center/cover no-repeat;
  height: 300rem;
}

/* 背景写真 */
.kengaku-cta__bg{
  background: linear-gradient(transparent, #D6C049 55rem, #D6C049);
  height: 50rem;
  top: 260rem;
  }

.kengaku-cta__inner{
  max-width: 680rem;
  padding: 60rem 0 80rem;
}

.kengaku-cta__head{
  margin-bottom: 15rem;
}

.kengaku-cta__head h2{
  margin: 0 0 20rem;
  font-size: 50rem;
  line-height: 1.3;
}

.kengaku-cta__head p{
  font-size: 24rem;
}
.kengaku-cta__head__back{
}

.kengaku-cta__head__back p{
  margin: 0 0 20rem;
  font-size: 50rem;
  -webkit-text-stroke-width: 10rem;
  filter: blur(10rem);
  line-height: 1.3;
}

.kengaku-cta__head__back p + p{
  font-size: 24rem;
}

/* コンテンツ */
.kengaku-cta__content{
}

.kengaku-cta__content .kengaku-cta__info__text{
  padding-bottom: 0;
  margin-bottom: 45rem;
  display: block;
  border: none;
}

.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__info__text {
}

.kengaku-cta__note{
  font-size: 16rem;
  gap: 15rem;
}
.kengaku-cta__note img{
  width: 40rem;
}
.kengaku-cta__line{
  margin:30rem 0;
}

.kengaku-cta__tel{
  font-size:22rem;
}

.kengaku-cta__attention{
  margin-top: 40rem;
  font-size: 26rem;
}

.kengaku-cta__attention span{
  padding: 0 5rem 0 5rem;
}

/* ボタン */
.kengaku-cta__buttons{
  gap:26rem;
  width: 600rem;
  margin: 0 auto;
}

.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons{
  gap: 145rem;
}
.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons p{
  font-size: 17rem;
  display: none;
}
.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons p strong{
  font-size: 31rem;
}
.kengaku-cta__content .kengaku-cta__info + .kengaku-cta__info .kengaku-cta__buttons p strong a{
}
.kengaku-cta__btn{
  width: 600rem;
  height: 100rem;
  font-size: 28rem;
  gap: 20rem;
}
.kengaku-cta__btn img{
  width: 30rem;
  top: 1rem;
}
.kengaku-cta__btn:hover{
}

.kengaku-cta__btn.is-outline{
  background: #fff;
  border:1rem solid #fff;

}

  .kengaku-cta__inner{
    padding: 40rem 0 100rem; /* 背景の色面を端まで */
  }

  .kengaku-cta__content{
    display: block;              /* 2カラム → 縦積み */
    padding: 0;
  }

  /* 2ブロック（上・下） */
  .kengaku-cta__info{
    width: 100%;
  }

  /* 1ブロック目と2ブロック目の間に区切り線 */
  .kengaku-cta__info + .kengaku-cta__info{
    margin-top: 45rem;
    padding-top: 45rem;
    border-top: 1px solid #ffffff;
  }

  /* テキストブロック（中央寄せ） */
  .kengaku-cta__info__text{
    text-align: center;
  }

  /* 2ブロック目の文章は横幅を少し絞る（スクショの雰囲気） */
  .kengaku-cta__info__text__box{
    max-width: 680rem;
    margin: 0;
    margin-bottom: 40rem;
  }
  .kengaku-cta__info__text__box .tenju-tel{
    font-size: 26rem;
    font-weight: 500;
    display: block;
  }
  .kengaku-cta__info__text__box .kengaku-cta__note{
    max-width: 500rem;
    margin: 0 auto;
    margin-bottom: 25rem;
  }
  .kengaku-cta__info__text__box .kengaku-cta__note img {
    width: 80rem;
  }
  /* アイコン＋文章（1行目） */
  .kengaku-cta__note{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20rem;
    margin: 0 0 40rem;
    font-size: 28rem;
    line-height: 1.6;
    color: #fff;
    text-align: left;
    letter-spacing: 0;
    font-weight: 500;
    width: max-content;
  }

  .kengaku-cta__note img{
    width: 61rem;
    height: auto;
    flex: 0 0 auto;
  }

  /* ボタン群 */
  .kengaku-cta__buttons{
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  /* 共通ボタン（スクショ：白い横長） */
  .kengaku-cta__btn{
  }

  .kengaku-cta__btn img{
    width: 65rem;
    height: auto;
  }

  /* 下の「お問い合わせ」ボタンは白枠ではなく、スクショだと白背景なので同じでOK
     もし白枠にしたいならここを外す */
  .kengaku-cta__btn.is-outline{
    background: #fff;
    border: 0;
    color: #333;
  }

  /* 電話ブロック（中央・大きい） */
  .kengaku-cta__buttons p{
    margin: 0 0 6px;
    font-size: 12px;
    color:#fff;
    letter-spacing: .04em;
  }

  .kengaku-cta__tel{
    display: inline-block;
    font-size: 60rem;
    font-weight: 500;
    letter-spacing: 0;
    margin-top: 0;
    line-height: 1;
  }
  .kengaku-cta__tel a{
    color:#fff;
    text-decoration: none;
  }

  /* 注意文章（赤い強調行） */
  .kengaku-cta__attention{text-align: left;}

  .kengaku-cta__attention span{
  }


}



/* =============================
  Fixed page: TDK Sake Project
============================= */

.tdksp{
  background:#fff;
}

/* ---------- MV ---------- */
.tdksp-mv{
  position: relative;
  min-height: 350px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page301-pc.png") center/cover no-repeat;
}

.tdksp-mv__title{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  z-index:2;
}

.tdksp-mv__title h1{
  margin:0;
  font-size: 46px;
  font-weight: 500;
  letter-spacing: .04em;
  color:#333;
}


.tdksp-intro{
  padding: 70px 0;
}

.tdksp-intro__inner{
  max-width: 900px;
  margin: 0 auto;
  text-align: left;
}

.tdksp-intro h2{
  margin: 0 0 40px;
  font-size: 26px;
  font-weight: 500;
  letter-spacing: .04em;
  color:#333;
  text-align: center;
}

.tdksp-intro p{
  margin:0;
  font-size: 15px;
  line-height: 2;
  letter-spacing: 0;
  color:#333;
}

/* =============================
  TDK Sake Project: Feature
============================= */

.tdksp-feature{
  background: #F2F7FA; /* スクショの薄いブルー寄り */
  padding: 80px 0 60px;
}

.tdksp-feature__inner{
  max-width: 900px;
  margin: 0 auto;
  padding: 0;
  text-align:center;
}

.tdksp-feature__title{
  margin: 0 0 25px;
  font-size: 26px;
  font-weight: 500;
  letter-spacing: .04em;
  color:#333;
}

.tdksp-feature__text{
  text-align:left;
  font-size: 15px;
  line-height: 1.8;
  letter-spacing: .02em;
  color:#333;
}

.tdksp-feature__text p{
  margin: 0 0 16px;
}
.tdksp-feature__text p:last-child{
  margin-bottom: 0;
}

.tdksp-feature__cta{
  margin-top: 40px;
  display:flex;
  justify-content:center;
}

/* 青いボタン（スクショ寄せ） */
.tdksp-ctaBtn{
  width: 100%;
  max-width: 550px;
  height: 60px;
  background: #1D618B;
  color:#fff;
  text-decoration:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 0 25px 0 20px;
  border-radius: 2px;
  letter-spacing: .04em;
}

.tdksp-ctaBtn__label{
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.02em;
}

.tdksp-ctaBtn__more{
  font-size: 16px;
  opacity: 1;
  position: relative;
  padding-right: 20px;
  letter-spacing: 0.04em;
  font-weight: 400;
  transition: 0.3s;
}

.tdksp-ctaBtn__more::before{
    content: "";
    position: absolute;
    display: block;
    right: -9px;
    top: 6px;
    width: 18px;
    height: 18px;
    border: 1px solid #DEDEDE;
    background: #fff;
}

.tdksp-ctaBtn__more::after{
  content:"";
  position:absolute;
  right: -1px;
  top: 50%;
  width: 6px;
  height: 6px;
  border-right: 1px solid #e40000;
  border-bottom: 1px solid #e40000;
  transform: translateY(-50%) rotate(-45deg);
  transition: 0.3s;
}

/* hover（上品） */
.tdksp-ctaBtn:hover{
  opacity: 1;
  transition: 0.3s;
}
.tdksp-ctaBtn:hover .tdksp-ctaBtn__more::after{
  opacity: 0;
  right: -10px;
  transition: 0.3s;
}
/* =============================
  Concept
============================= */

.tdksp-concept{
  background: #F2F7FA;
  padding: 0 0 80px;
}

.tdksp-concept__inner{
  max-width: 1200px;
  background: #ffffff;
  margin: 0 auto;
  padding: 60px 60px 0;
  text-align:center;
}

.tdksp-concept__title{
  margin: 0 0 25px;
  font-size: 22px;
  font-weight: 500;
  letter-spacing: .04em;
  color:#333;
  line-height: 1.6;
}

.tdksp-concept__lead{
  margin: 0 0 34px;
  font-size: 15px;
  line-height: 1.8;
  color:#333;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.tdksp-concept__figure{
  margin: 0;
}

.tdksp-concept__figure img{
  width: 100%;
  height: auto;
  display:block;
}

/* =============================
  TDKSP product block
============================= */

.tdksp-product{
  background:#fff;
  padding: 60px 0 60px;
  max-width: 1200px;
  margin: 0 auto;
}

.tdksp-product__inner{
  max-width: 1080px;
  margin: 0 auto;
  padding: 60px 0;
  border-top: 1px solid #DEDEDE;
}

.tdksp-product__head{
  text-align:center;
  margin-bottom: 30px;
}

.tdksp-product__title{
  margin: 0 0 10px;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
  color:#333;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  flex-wrap: wrap;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.tdksp-product__title span{
  color: #D6C049;
  margin: 0;
  font-size: 20px;
}

.tdksp-product__line{
  width: 34px;
  height: 1px;
  background: #C7B55A;
  display:inline-block;
}

.tdksp-product__meta{
  margin:0;
  font-size: 16px;
  line-height: 1.6;
  color: #5f5f5f;
  letter-spacing: 0.04em;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.tdksp-product__main{
  display:grid;
  grid-template-columns: 1fr;
  gap: 15px;
  align-items:start;
}

.tdksp-product__figure{
  margin:0;
}

.tdksp-product__figure img{
  width:100%;
  height:auto;
  display:block;
}

.tdksp-product__info{
  padding-top: 0;
  display: grid;
  grid-template-columns: 400px 364px 216px;
  grid-gap: 50px;
}

/* ボタン（左のゴールド帯を再現） */
.tdksp-product__btn{
  width: 400px;
  height: 60px;
  background: #D6C049;
  color:#fff;
  text-decoration:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  letter-spacing: .04em;
  font-size: 18px;
  margin-bottom: 0;
  transition: 0.3s;
  margin-top: 18px;
}
.tdksp-product__btnArrow {
  display: block;
  opacity: 1;
  position: relative;
  width: 0px;
  height: 0px;
  left: 10px;
  transition: 0.3s;
}
.tdksp-product__btnArrow::after{
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  border-right: 1px solid #e40000;
  border-bottom: 1px solid #e40000;
  transform: rotate(-45deg);
  display:inline-block;
  top: -1px;
  right: -1px;
  transition: 0.3s;
}
.tdksp-product__btnArrow::before {
    content: "";
    position: absolute;
    display: block;
    right: -9px;
    top: -7px;
    width: 18px;
    height: 18px;
    border: 1px solid #DEDEDE;
    background: #fff;
}
.tdksp-product__btn:hover {
  opacity: 1;
  transition: 0.3s;
}
.tdksp-product__btn:hover .tdksp-product__btnArrow::after {
  opacity: 0;
  right: -10px;
  transition: 0.3s;
}

/* 商品テキスト */
.tdksp-product__desc p{
  color:#333;
}
.tdksp-product__name{
  font-size: 16px;
  letter-spacing: 0;
  margin: 0 0 5px;
}
.tdksp-product__spec{
  font-size: 14px;
  margin: 0 0 7px;
}
.tdksp-product__price{
  font-size: 20px;
  font-weight: 400;
  margin-top: 7px;
}
.tdksp-product__price span{
  font-size: 14px;
}

/* 味わい（仮） */
.tdksp-taste{
  list-style:none;
  padding: 7px 13px;
  margin: 0;
  display:grid;
  gap: 5px;
  background: #FBF9F0;
  border-radius: 4px;
}
.tdksp-taste li{
  display:flex;
  justify-content: space-between;
  align-items: center;
  height: fit-content;
}
.tdksp-taste li img{
  height: 22px;
  width: auto;
}
.tdksp-taste__label{
  white-space: nowrap;
  color:#666;
}
.tdksp-taste__dots{
  letter-spacing: .18em;
  color:#C7B55A;
}

/* コメント枠 */
.tdksp-comment{
  margin-top: 30px;
  background: #F2F7FA;
  border-radius: 8px;
  padding: 20px 40px;
  display:flex;
  gap: 20px;
  align-items:flex-start;
}
.tdksp-comment img{
  width: 100px;
}
.tdksp-comment__icon{
  width: 24px;
  height: 24px;
  border-radius: 0;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/staff_icon.svg") center/cover no-repeat;
  flex: 0 0 auto;
  display: block;
}

.tdksp-comment__title{
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: 500;
  color:#333;
  letter-spacing: 0;
  display: flex;
  align-items: center;
  gap: 5px;
}

.tdksp-comment__text{
  margin: 0;
  font-size: 15px;
  line-height: 1.8;
  color:#333;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

/* =============================
  TDKSP set banner CTA
============================= */

.tdksp-setBanner{
  background:#fff;
  padding: 0;
}

.tdksp-setBanner__link{
  max-width: 1080px;
  margin: 0 auto;
  display:block;
  position: relative;
  height: 300px;
  overflow:hidden;
  text-decoration:none;
}

.tdksp-setBanner__bg{
  position:absolute;
  inset:0;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page306-pc.png") center/cover no-repeat;
  transition: .3s;
}

/* 左の枠（半透明） */
.tdksp-setBanner__box{
  position:absolute;
  left: 90px;
  top: 50%;
  transform: translateY(-50%);
  width: 520px;
  padding: 10px;
  background: rgba(0,0,0,.60);
  color:#fff;
  text-align: center;
}

.tdksp-setBanner__box__border{
  border: 1px solid #D6C049;
  padding: 23px 0;
}

.tdksp-setBanner__small{
  margin: 0;
  font-size: 18px;
  letter-spacing: 0;
  opacity: 1;
}

.tdksp-setBanner__title{
  margin: 5px 0 20px;
  font-size: 22px;
  font-weight: 500;
  letter-spacing: .02em;
  color: #fff;
  line-height: 1.4;
}

.tdksp-setBanner__btn{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  font-size: 16px;
  letter-spacing: .04em;
}

.tdksp-setBanner__arrow{
  display: block;
  opacity: 1;
  position: relative;
  width: 0px;
  height: 0px;
  left: 10px;
  top: -2px;
  transition: 0.3s;
}

.tdksp-setBanner__arrow::after{
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  border-right: 1px solid #e40000;
  border-bottom: 1px solid #e40000;
  transform: rotate(-45deg);
  display:inline-block;
  top: -1px;
  right: -1px;
  transition: 0.3s;
}
.tdksp-setBanner__arrow::before {
    content: "";
    position: absolute;
    display: block;
    right: -9px;
    top: -7px;
    width: 18px;
    height: 18px;
    border: 1px solid #DEDEDE;
    background: #fff;
}
.tdksp-setBanner__link:hover {
  opacity: 1;
  transition: 0.3s;
}
.tdksp-setBanner__link:hover .tdksp-setBanner__arrow::after {
  opacity: 0;
  right: -10px;
  transition: 0.3s;
}
.tdksp-setBanner__link:hover .tdksp-setBanner__btn {
  color: #e40000;
}



.tdksp-media{
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/background01.png") center/contain;
  padding: 80px 0;
}

.tdksp-media__inner{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
  display:grid;
  grid-template-columns: 1fr 710px;
  gap: 60px;
}

/* 左 */
.tdksp-media__title{
  font-size: 20px;
  font-weight: 500;
  line-height: 1.8;
  margin-bottom: 40px;
  padding-bottom: 15px;
  border-bottom: 1px solid #D6C049;
}

.tdksp-media__list{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap: 24px;
  font-size: 16px;
  line-height: 1.6;
  font-weight: 500;
}
.tdksp-media__list li:before{
  content: "●";
  color: #D6C049;
}
.tdksp-media__list a{
  color: #007DCB;
  text-decoration: underline;
  word-break: break-all;
  font-weight: 400;
}

.tdksp-media__list a:hover{
  text-decoration:none;
}

/* 右 商品 */
.tdksp-media__right{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.tdksp-card{
  overflow:hidden;
  transition: transform .3s ease;
}

.tdksp-card img{
  width:100%;
  display:block;
  padding: 11px 8px;
  background: #fff;
}

.tdksp-card__body{
  padding: 15px 0 0;
}

.tdksp-card__body .tdksp-taste {
    list-style: none;
    padding: 7px 13px;
    margin: 0;
    display: grid;
    gap: 5px;
    background: #FBF9F0;
    border-radius: 4px;
}

.tdksp-card__body .tdksp-taste li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: fit-content;
}

.tdksp-card__body .tdksp-taste li img {
    height: 22px;
    width: auto;
    padding: 0;
    background: none;
}

.tdksp-card__name{
  font-size: 16px;
  margin-bottom: 5px;
  font-weight: 500;
  line-height: 1.6;
  margin-top: 10px;
}

.tdksp-card__spec{
  font-size: 14px;
  color: #333;
  line-height: 1.6;
}

.tdksp-card__price{
  font-size: 20px;
  margin-top: 7px;
  font-weight:500;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
.tdksp-card__price span{
  font-size: 14px;
  margin-top: 0;
  font-weight:500;
  line-height: 1.4;
}

.tdksp-product-chart{
  background:#fff;
  padding: 80px 0 60px;
  max-width: 1080px;
  margin: 0 auto;
}

.tdksp-concept-chart__title {
  font-size: 22px;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 0.04em;
  font-weight: 500;
  margin-bottom: 20px;
}
.tdksp-concept-chart__title + div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: -20px;
}
.tdksp-concept-chart__title + div span {
  display: block;
  width: 5px;
  height: 5px;
  background: #e40000;
}

.tdksp-product-chart__inner{
  max-width: 1080px;
  margin: 0 auto;
  padding: 50px 0;
  border-top: 1px solid #DEDEDE;
}

.tdksp-product-chart__inner:nth-of-type(2){
  border-top: none;
}

.tdksp-product-chart__head{
  text-align:center;
  margin-bottom: 30px;
}

.tdksp-product-chart__title{
  margin: 0 0 10px;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
  color:#333;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  flex-wrap: wrap;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.tdksp-product-chart__title span{
  color: #D6C049;
  margin: 0;
  font-size: 20px;
}

.tdksp-product-chart__line{
  width: 34px;
  height: 1px;
  background: #C7B55A;
  display:inline-block;
}

.tdksp-product-chart__meta{
  margin:0;
  font-size: 16px;
  line-height: 1.6;
  color: #5f5f5f;
  letter-spacing: 0.04em;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.tdksp-product-chart__main{
  display:grid;
  grid-template-columns: 1fr;
  gap: 15px;
  align-items:start;
}

.tdksp-product-chart__figure{
  margin: 0 auto;
  width: 990px;
}

.tdksp-product-chart__figure img{
  width:100%;
  height:auto;
  display:block;
}

.tdksp-stores{
  background:#fff;
  padding: 80px 0 100px;
  border-top: 1px solid #DEDEDE;
  width: 1200px;
  margin: 0 auto;
}

.tdksp-stores__inner{
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 16px;
}

.tdksp-stores__title{
  text-align:center;
  margin: 0 0 20px;
  font-size: 22px;
  font-weight: 500;
  letter-spacing: .04em;
  color:#333;
  line-height: 1.6;
}
.tdksp-stores__title + div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 0px;
}
.tdksp-stores__title + div span {
  display: block;
  width: 5px;
  height: 5px;
  background: #e40000;
}


/* ブロック */
.tdksp-stores__block{
  margin-top: 30px;
}
.tdksp-stores__block + .tdksp-stores__block {
  margin-top: 40px;
}
.tdksp-stores__block:first-of-type{
  margin-top: 0;
}

.tdksp-stores__sub{
  text-align:center;
  margin: 0 0 15px;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: .06em;
  color:#333;
}

/* table */
.tdksp-tableWrap{
  border: 1px solid #DEDEDE;
  overflow: hidden; /* PCはそのまま */
}

.tdksp-table{
  width:100%;
  border-collapse: collapse;
  table-layout: fixed;
  background:#fff;
}

.tdksp-table th,
.tdksp-table td{
  border-bottom: 1px solid #DEDEDE;
  border-right: 1px solid #DEDEDE;
  padding: 8px 16px;
  font-size: 14px;
  line-height: 1.8;
  color:#333;
  vertical-align: top;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.tdksp-table td{
  padding: 11px 16px;
  font-size: 15px;
}

.tdksp-table th:last-child,
.tdksp-table td:last-child{
  border-right: 0;
}

.tdksp-table thead th{
  background: #FBF9F0;
  font-weight: 500;
  color: #707070;
  text-align: left;
}

.tdksp-table tbody tr:last-child td{
  border-bottom: 1px solid #DEDEDE;
}

/* 列幅（スクショに近い） */
.tdksp-table th:nth-child(1),
.tdksp-table td:nth-child(1){
  width: 250px;
}
.tdksp-table th:nth-child(2),
.tdksp-table td:nth-child(2){
  width: 450px;
}
.tdksp-table th:nth-child(3),
.tdksp-table td:nth-child(3){
  width: 200px;
  white-space: nowrap;
}



.tdksp-lastBanners{
  background:#fff;
  padding: 0 0 100px;
}

/* 下段2つ */
.tdksp-lastBanners__grid{
  max-width: 1080px;
  margin: 20px auto 0;
  padding: 0;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

/* サイズ調整（既存bannerを流用） */
.tdksp-setBanner--wide .tdksp-setBanner__link{
  max-width: 1080px;  /* 既存に合わせる */
  height: 300px;
  margin: 0 auto;
}

.tdksp-setBanner--half .tdksp-setBanner__link{
  height: 300px;
}

/* 背景画像差し替え（ここだけURLを本番に） */
.tdksp-setBanner__bg--set{
  background-image: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page306-pc.png");
}
.tdksp-setBanner__bg--daiginjo{
  background-image: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page318-pc.png");
}
.tdksp-setBanner__bg--junmai{
  background-image: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page319-pc.png");
}

/* 既存setBannerのboxが中央寄りにしたい場合（スクショっぽく） */
.tdksp-setBanner--half .tdksp-setBanner__box{
  left: unset;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 290px;
  height: 209px;
}
.tdksp-setBanner--half .tdksp-setBanner__box .tdksp-setBanner__box__border{
  padding: 37px 0;
}
.tdksp-setBanner--half .tdksp-setBanner__box .tdksp-setBanner__small{
  font-size: 20px;
  letter-spacing: 0.02em;
  line-height: 1.8;
}

.tdksp-setBanner--half .tdksp-setBanner__box .tdksp-setBanner__title{
  margin: 0 0 20px;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: .02em;
  color: #fff;
  line-height: 1.4;
}

@media screen and (max-width: 1440px) {

.tdksp-mv{
  min-height: 350rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page301-pc.png") center/cover no-repeat;
}

.tdksp-mv__title{
}

.tdksp-mv__title h1{
  font-size: 46rem;
}


.tdksp-intro{
  padding: 70rem 0;
}

.tdksp-intro__inner{
  max-width: 900rem;
}

.tdksp-intro h2{
  margin: 0 0 40rem;
  font-size: 26rem;
}

.tdksp-intro p{
  font-size: 15rem;
}

.tdksp-feature{
  padding: 80rem 0 60rem;
}

.tdksp-feature__inner{
  max-width: 900rem;
}

.tdksp-feature__title{
  margin: 0 0 25rem;
  font-size: 26rem;
}

.tdksp-feature__text{
  font-size: 15rem;
}

.tdksp-feature__text p{
  margin: 0 0 16rem;
}
.tdksp-feature__text p:last-child{
}

.tdksp-feature__cta{
  margin-top: 40rem;
}

.tdksp-ctaBtn{
  max-width: 550rem;
  height: 60rem;
  padding: 0 25rem 0 20rem;
  border-radius: 2rem;
}

.tdksp-ctaBtn__label{
  font-size: 15rem;
}

.tdksp-ctaBtn__more{
  font-size: 16rem;
  padding-right: 20rem;
}

.tdksp-ctaBtn__more::before{
    right: -9rem;
    top: 6rem;
    width: 18rem;
    height: 18rem;
}

.tdksp-ctaBtn__more::after{
  right: -1rem;
  width: 6rem;
  height: 6rem;
}

.tdksp-ctaBtn:hover{
}
.tdksp-ctaBtn:hover .tdksp-ctaBtn__more::after{
  right: -10rem;
}

.tdksp-concept{
  padding: 0 0 80rem;
}

.tdksp-concept__inner{
  max-width: 1200rem;
  padding: 60rem 60rem 0;
}

.tdksp-concept__title{
  margin: 0 0 25rem;
  font-size: 22rem;
}

.tdksp-concept__lead{
  margin: 0 0 34rem;
  font-size: 15rem;
}

.tdksp-concept__figure{
}

.tdksp-concept__figure img{
}

.tdksp-product{
  background:#fff;
  padding: 60rem 0 60rem;
  max-width: 1200rem;
}

.tdksp-product__inner{
  max-width: 1080rem;
  padding: 60rem 0;
}

.tdksp-product__head{
  margin-bottom: 30rem;
}

.tdksp-product__title{
  margin: 0 0 10rem;
  font-size: 20rem;
  gap: 10rem;
}

.tdksp-product__title span{
  font-size: 20rem;
}

.tdksp-product__line{
  width: 34rem;
  height: 1rem;
}

.tdksp-product__meta{
  font-size: 16rem;
}

.tdksp-product__main{
  gap: 15rem;
}

.tdksp-product__figure{
}

.tdksp-product__figure img{
}

.tdksp-product__info{
  grid-template-columns: 400rem 364rem 216rem;
  grid-gap: 50rem;
}

/* ボタン（左のゴールド帯を再現） */
.tdksp-product__btn{
  width: 400rem;
  height: 60rem;
  gap: 10rem;
  font-size: 18rem;
  margin-top: 18rem;
}
.tdksp-product__btnArrow {
  width: 0rem;
  height: 0rem;
  left: 10rem;
}
.tdksp-product__btnArrow::after{
  width: 6rem;
  height: 6rem;
  top: -1rem;
  right: -1rem;
}
.tdksp-product__btnArrow::before {
    right: -9rem;
    top: -7rem;
    width: 18rem;
    height: 18rem;
}
.tdksp-product__btn:hover {
}
.tdksp-product__btn:hover .tdksp-product__btnArrow::after {
  right: -10rem;
}

.tdksp-product__desc p{
}
.tdksp-product__name{
  font-size: 16rem;
  margin: 0 0 5rem;
}
.tdksp-product__spec{
  font-size: 14rem;
  margin: 0 0 7rem;
}
.tdksp-product__price{
  font-size: 20rem;
  margin-top: 7rem;
}
.tdksp-product__price span{
  font-size: 14rem;
}

/* 味わい（仮） */
.tdksp-taste{
  padding: 7rem 13rem;
  gap: 5rem;
  border-radius: 4rem;
}
.tdksp-taste li{
}
.tdksp-taste li img{
  height: 22rem;
}
.tdksp-taste__label{
}
.tdksp-taste__dots{
}

/* コメント枠 */
.tdksp-comment{
  margin-top: 30rem;
  border-radius: 8rem;
  padding: 20rem 40rem;
  gap: 20rem;
}
.tdksp-comment img{
  width: 100rem;
}
.tdksp-comment__icon{
  width: 24rem;
  height: 24rem;
}

.tdksp-comment__title{
  margin: 0 0 10rem;
  font-size: 16rem;
  gap: 5rem;
}

.tdksp-comment__text{
  font-size: 15rem;
}

.tdksp-setBanner{
}

.tdksp-setBanner__link{
  max-width: 1080rem;
  height: 300rem;
}

.tdksp-setBanner__bg{
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page306-pc.png") center/cover no-repeat;
}

/* 左の枠（半透明） */
.tdksp-setBanner__box{
  left: 90rem;
  width: 520rem;
  padding: 10rem;
}

.tdksp-setBanner__box__border{
  padding: 23rem 0;
}

.tdksp-setBanner__small{
  font-size: 18rem;
}

.tdksp-setBanner__title{
  margin: 5rem 0 20rem;
  font-size: 22rem;
}

.tdksp-setBanner__btn{
  gap: 10rem;
  font-size: 16rem;
}

.tdksp-setBanner__arrow{
  width: 0rem;
  height: 0rem;
  left: 10rem;
  top: -2rem;
}

.tdksp-setBanner__arrow::after{
  width: 6rem;
  height: 6rem;
  top: -1rem;
  right: -1rem;
}
.tdksp-setBanner__arrow::before {
    right: -9rem;
    top: -7rem;
    width: 18rem;
    height: 18rem;
}
.tdksp-setBanner__link:hover {
}
.tdksp-setBanner__link:hover .tdksp-setBanner__arrow::after {
  right: -10rem;
}
.tdksp-setBanner__link:hover .tdksp-setBanner__btn {
}

.tdksp-media{
  padding: 80rem 0;
}

.tdksp-media__inner{
  max-width: 1200rem;
  grid-template-columns: 1fr 710rem;
  gap: 60rem;
}

/* 左 */
.tdksp-media__title{
  font-size: 20rem;
  margin-bottom: 40rem;
  padding-bottom: 15rem;
}

.tdksp-media__list{
  gap: 24rem;
  font-size: 16rem;
}
.tdksp-media__list li:before{
}
.tdksp-media__list a{
}

.tdksp-media__list a:hover{
}

/* 右 商品 */
.tdksp-media__right{
  gap: 30rem;
}

.tdksp-card{
}

.tdksp-card img{
  padding: 11rem 8rem;
}

.tdksp-card__body{
  padding: 15rem 0 0;
}

.tdksp-card__body .tdksp-taste {
    padding: 7rem 13rem;
    gap: 5rem;
    border-radius: 4rem;
}

.tdksp-card__body .tdksp-taste li {
}

.tdksp-card__body .tdksp-taste li img {
    height: 22rem;
}

.tdksp-card__name{
  font-size: 16rem;
  margin-bottom: 5rem;
  margin-top: 10rem;
}

.tdksp-card__spec{
  font-size: 14rem;
}

.tdksp-card__price{
  font-size: 20rem;
  margin-top: 7rem;
}
.tdksp-card__price span{
  font-size: 14rem;
}

.tdksp-product-chart{
  background:#fff;
  padding: 80rem 0 60rem;
  max-width: 1080rem;
}

.tdksp-concept-chart__title {
  font-size: 22rem;
  margin-bottom: 20rem;
}
.tdksp-concept-chart__title + div {
  gap: 8rem;
  margin-bottom: -20rem;
}
.tdksp-concept-chart__title + div span {
  width: 5rem;
  height: 5rem;
}

.tdksp-product-chart__inner{
  max-width: 1080rem;
  padding: 50rem 0;
}

.tdksp-product-chart__inner:nth-of-type(2){
}

.tdksp-product-chart__head{
  margin-bottom: 30rem;
}

.tdksp-product-chart__title{
  margin: 0 0 10rem;
  font-size: 20rem;
  gap: 10rem;
}

.tdksp-product-chart__title span{
  font-size: 20rem;
}

.tdksp-product-chart__line{
  width: 34rem;
}

.tdksp-product-chart__meta{
  font-size: 16rem;
}

.tdksp-product-chart__main{
  gap: 15rem;
}

.tdksp-product-chart__figure{
  width: 990rem;
}

.tdksp-product-chart__figure img{
}

.tdksp-stores{
  padding: 80rem 0 100rem;
  width: 1200rem;
}

.tdksp-stores__inner{
  max-width: 1080rem;
  padding: 0 16rem;
}

.tdksp-stores__title{
  margin: 0 0 20rem;
  font-size: 22rem;
}
.tdksp-stores__title + div {
  gap: 8rem;
  margin-bottom: 0rem;
}
.tdksp-stores__title + div span {
  width: 5rem;
  height: 5rem;
}

/* ブロック */
.tdksp-stores__block{
  margin-top: 30rem;
}
.tdksp-stores__block + .tdksp-stores__block {
  margin-top: 40rem;
}
.tdksp-stores__block:first-of-type{
}

.tdksp-stores__sub{
  margin: 0 0 15rem;
  font-size: 18rem;
}

/* table */
.tdksp-tableWrap{
  border: 1px solid #DEDEDE;
}

.tdksp-table{
}

.tdksp-table th,
.tdksp-table td{
  padding: 8rem 16rem;
  font-size: 14rem;
}
.tdksp-table td {
    padding: 11rem 16rem;
    font-size: 15rem;
}

.tdksp-table th:last-child,
.tdksp-table td:last-child{
}

.tdksp-table thead th{
}

.tdksp-table tbody tr:last-child td{
}

/* 列幅（スクショに近い） */
.tdksp-table th:nth-child(1),
.tdksp-table td:nth-child(1){
  width: 250rem;
}
.tdksp-table th:nth-child(2),
.tdksp-table td:nth-child(2){
  width: 450rem;
}
.tdksp-table th:nth-child(3),
.tdksp-table td:nth-child(3){
  width: 200rem;
}



.tdksp-lastBanners{
  padding: 0 0 100rem;
}

/* 下段2つ */
.tdksp-lastBanners__grid{
  max-width: 1080rem;
  margin: 20rem auto 0;
  gap: 20rem;
}

/* サイズ調整（既存bannerを流用） */
.tdksp-setBanner--wide .tdksp-setBanner__link{
  max-width: 1080rem;  /* 既存に合わせる */
  height: 300rem;
}

.tdksp-setBanner--half .tdksp-setBanner__link{
  height: 300rem;
}

/* 背景画像差し替え（ここだけURLを本番に） */
.tdksp-setBanner__bg--set{
  background-image: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page306-pc.png");
}
.tdksp-setBanner__bg--daiginjo{
  background-image: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page318-pc.png");
}
.tdksp-setBanner__bg--junmai{
  background-image: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page319-pc.png");
}

/* 既存setBannerのboxが中央寄りにしたい場合（スクショっぽく） */
.tdksp-setBanner--half .tdksp-setBanner__box{
  right: 20rem;
  width: 290rem;
  height: 209rem;
}
.tdksp-setBanner--half .tdksp-setBanner__box .tdksp-setBanner__box__border{
  padding: 37rem 0;
}
.tdksp-setBanner--half .tdksp-setBanner__box .tdksp-setBanner__small{
  font-size: 20rem;
}

.tdksp-setBanner--half .tdksp-setBanner__box .tdksp-setBanner__title{
  margin: 0 0 20rem;
  font-size: 20rem;
}


}


@media screen and (max-width: 768px) {

.tdksp-mv{
  min-height: 350rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page301-sp.png") center/cover no-repeat;
}

.tdksp-mv__title{
}

.tdksp-mv__title h1{
  font-size: 48rem;
}


.tdksp-intro{
  padding: 80rem 0;
}

.tdksp-intro__inner{
  max-width: 680rem;
}

.tdksp-intro h2{
  margin: 0 0 55rem;
  font-size: 40rem;
  line-height: 1.6;
}

.tdksp-intro p{
  font-size: 26rem;
  line-height: 1.8;
}

.tdksp-feature{
  padding: 80rem 0 80rem;
}

.tdksp-feature__inner{
  max-width: 680rem;
}

.tdksp-feature__title{
  margin: 0 0 45rem;
  font-size: 40rem;
  line-height: 1.6;
}

.tdksp-feature__text{
  font-size: 26rem;
}

.tdksp-feature__text p{
  margin: 0 0 16rem;
}
.tdksp-feature__text p:last-child{
}

.tdksp-feature__cta{
  margin-top: 50rem;
}

.tdksp-ctaBtn{
  max-width: 600rem;
  height: 120rem;
  padding: 0 40rem 0 40rem;
  border-radius: 2rem;
  flex-direction: column;
  justify-content: center;
}

.tdksp-ctaBtn__label{
  font-size: 28rem;
}

.tdksp-ctaBtn__more{
  font-size: 28rem;
  padding-right: 50rem;
}

.tdksp-ctaBtn__more::before{
    right: -9rem;
    top: 6rem;
    width: 40rem;
    height: 40rem;
}

.tdksp-ctaBtn__more::after{
  right: 8rem;
  width: 12rem;
  height: 12rem;
}

.tdksp-ctaBtn:hover{
}
.tdksp-ctaBtn:hover .tdksp-ctaBtn__more::after{
  right: -10rem;
}

.tdksp-concept{
  padding: 0 0 80rem;
}

.tdksp-concept__inner{
  max-width: 680rem;
  padding: 80rem 40rem 0;
}

.tdksp-concept__title{
  margin: 0 0 35rem;
  font-size: 36rem;
}

.tdksp-concept__lead{
  margin: 0 0 60rem;
  font-size: 26rem;
  text-align: left;
}

.tdksp-concept__figure{
}

.tdksp-concept__figure img{
}

.tdksp-product{
  background:#fff;
  padding: 50rem 0 0;
  max-width: 680rem;
}

.tdksp-product__inner{
  max-width: 600rem;
  padding: 50rem 0 80rem;
  background: #fff;
}

.tdksp-product__head{
  margin-bottom: 30rem;
}

.tdksp-product__title{
  margin: 0 0 10rem;
  font-size: 34rem;
  gap: 10rem;
  line-height: 1.5;
}

.tdksp-product__title span{
  font-size: 28rem;
}

.tdksp-product__line{
  width: 34rem;
  height: 1rem;
}

.tdksp-product__meta{
  font-size: 26rem;
}

.tdksp-product__main{
  gap: 20rem;
}

.tdksp-product__figure{
}

.tdksp-product__figure img{
}

.tdksp-product__info{
  grid-gap: 20rem;
  grid-template-columns: repeat(2, 1fr);
}

/* ボタン（左のゴールド帯を再現） */
.tdksp-product__btn{
  width: 500rem;
  height: 90rem;
  gap: 20rem;
  font-size: 28rem;
  margin: 0 auto;
  margin-top: 10rem;
  order: 3;
  grid-area: 2 / 1 / 3 / 3;
}
.tdksp-product__btnArrow {
  width: 0rem;
  height: 0rem;
  left: 10rem;
}
.tdksp-product__btnArrow::after{
  width: 12rem;
  height: 12rem;
  top: -5rem;
  right: -9rem;
}
.tdksp-product__btnArrow::before {
    right: -25rem;
    top: -19rem;
    width: 40rem;
    height: 40rem;
}
.tdksp-product__btn:hover {
}
.tdksp-product__btn:hover .tdksp-product__btnArrow::after {
  right: -10rem;
}
.tdksp-product__desc {
  grid-area: 1 / 1 / 2 / 2;
  width: 330rem;
}
.tdksp-product__desc p{
}
.tdksp-product__name{
  font-size: 26rem;
  margin: 0 0 7rem;
}
.tdksp-product__spec{
  font-size: 24rem;
  margin: 0 0 2rem;
}
.tdksp-product__price{
  font-size: 34rem;
  margin-top: 2rem;
}
.tdksp-product__price span{
  font-size: 22rem;
}

/* 味わい（仮） */
.tdksp-taste{
  padding: 15rem 20rem;
  gap: 5rem;
  border-radius: 4rem;
  grid-area: 1 / 2 / 2 / 3;
  width: 250rem;
  height: fit-content;
}
.tdksp-taste li{
}
.tdksp-taste li img{
  height: 35rem;
}
.tdksp-taste__label{
}
.tdksp-taste__dots{
}

/* コメント枠 */
.tdksp-comment{
  margin-top: 40rem;
  border-radius: 8rem;
  padding: 20rem;
  gap: 20rem;
  align-items: center;
  padding-bottom: 160rem;
}

.tdksp-product__inner + .tdksp-product__inner .tdksp-comment{
  padding-bottom: 202rem;
}

.tdksp-comment img{
  width: 160rem;
}
.tdksp-comment__icon{
  width: 36rem;
  height: 36rem;
  background-size: contain;
}
.tdksp-comment__body {
  position: relative;
}
.tdksp-comment__title{
  margin: 0;
  font-size: 28rem;
  gap: 10rem;
  position: relative;
}

.tdksp-comment__text{
  font-size: 26rem;
  position: absolute;
  width: 560rem;
  transform: translateX(-50%);
  left: calc(50% - 60rem);
  top: 120rem;
  line-height: 1.6;
}

.tdksp-setBanner{
}

.tdksp-setBanner__link{
  max-width: 680rem;
  height: 380rem;
}

.tdksp-setBanner__bg{
}

/* 左の枠（半透明） */
.tdksp-setBanner__box{
  left: 30rem;
  width: 410rem;
  padding: 10rem;
}

.tdksp-setBanner__box__border{
  padding: 20rem 0;
}

.tdksp-setBanner__small{
  font-size: 26rem;
  line-height: 1.4;
}

.tdksp-setBanner__title{
  margin: 10rem 0 15rem;
  font-size: 36rem;
}

.tdksp-setBanner__btn{
  gap: 20rem;
  font-size: 28rem;
}

.tdksp-setBanner__arrow{
  width: 0rem;
  height: 0rem;
  left: 10rem;
  top: -2rem;
}

.tdksp-setBanner__arrow::after{
  width: 12rem;
  height: 12rem;
  top: -6rem;
  right: -8rem;
}
.tdksp-setBanner__arrow::before {
    right: -25rem;
    top: -19rem;
    width: 40rem;
    height: 40rem;
}
.tdksp-setBanner__link:hover {
}
.tdksp-setBanner__link:hover .tdksp-setBanner__arrow::after {
  right: -10rem;
}
.tdksp-setBanner__link:hover .tdksp-setBanner__btn {
}

.tdksp-media{
  padding: 80rem 0 60rem;
}

.tdksp-media__inner{
  max-width: 680rem;
  grid-template-columns: 1fr 710rem;
  gap: 60rem;
}

/* 左 */
.tdksp-media__title{
  font-size: 34rem;
  margin-bottom: 50rem;
  padding-bottom: 20rem;
}

.tdksp-media__list{
  gap: 24rem;
  font-size: 28rem;
}
.tdksp-media__list li:before{
}
.tdksp-media__list a{
}

.tdksp-media__list a:hover{
}

/* 右 商品 */
.tdksp-media__right{
  gap: 40rem;
}

.tdksp-card{
}

.tdksp-card img{
  padding: 16rem 13rem;
}

.tdksp-card__body{
  padding: 15rem 0 0;
}

.tdksp-card__body .tdksp-taste {
    padding: 15rem 20rem;
    gap: 5rem;
    border-radius: 4rem;
    width: 100%;
}

.tdksp-card__body .tdksp-taste li {
}

.tdksp-card__body .tdksp-taste li img {
    height: 35rem;
}

.tdksp-card__name{
  font-size: 26rem;
  margin-bottom: 5rem;
  margin-top: 15rem;
}

.tdksp-card__spec{
  font-size: 24rem;
}

.tdksp-card__price{
  font-size: 34rem;
  margin-top: 5rem;
}
.tdksp-card__price span{
  font-size: 22rem;
}

.tdksp-product-chart{
  background:#fff;
  padding: 100rem 0 60rem;
  max-width: 600rem;
}

.tdksp-concept-chart__title {
  font-size: 36rem;
  margin-bottom: 20rem;
}
.tdksp-concept-chart__title + div {
  gap: 10rem;
  margin-bottom: -22rem;
}
.tdksp-concept-chart__title + div span {
  width: 8rem;
  height: 8rem;
}

.tdksp-product-chart__inner{
  max-width: 600rem;
  padding: 50rem 0;
}

.tdksp-product-chart__inner:nth-of-type(2){
}

.tdksp-product-chart__head{
  margin-bottom: 30rem;
}

.tdksp-product-chart__title{
  margin: 0 0 10rem;
  font-size: 34rem;
  gap: 5rem;
  line-height: 1.5;
}

.tdksp-product-chart__title span{
  font-size: 28rem;
}

.tdksp-product-chart__line{
  width: 34rem;
}

.tdksp-product-chart__meta{
  font-size: 26rem;
}

.tdksp-product-chart__main{
  gap: 15rem;
}

.tdksp-product-chart__figure{
  width: 600rem;
}

.tdksp-product-chart__figure img{
}

.tdksp-stores{
  padding: 100rem 0 100rem;
  width: 680rem;
  margin: 0 auto;
}

.tdksp-stores__inner{
  max-width: 680rem;
  padding: 0;
}

.tdksp-stores__title{
  margin: 0 0 20rem;
  font-size: 36rem;
}

.tdksp-stores__title + div {
  gap: 10rem;
  margin-bottom: 0rem;
}
.tdksp-stores__title + div span {
  width: 8rem;
  height: 8rem;
}
  
/* ブロック */
.tdksp-stores__block{
  margin-top: 30rem;
}

.tdksp-stores__block + .tdksp-stores__block {
  margin-top: 50rem;
}

.tdksp-stores__sub{
  margin: 0 0 20rem;
  font-size: 32rem;
}

/* table */
.tdksp-tableWrap{
  border: 1px solid #DEDEDE;
  border: none;
}

.tdksp-table{
}

.tdksp-table th,
.tdksp-table td{
  padding: 20rem 20rem;
  font-size: 26rem;
}

.tdksp-table th:last-child,
.tdksp-table td:last-child{
}

.tdksp-table thead th{text-align: left;}

.tdksp-table tbody tr:last-child td{
}

/* 列幅（スクショに近い） */
.tdksp-table th:nth-child(1),
.tdksp-table td:nth-child(1){
  width: 330rem;
}
.tdksp-table th:nth-child(2),
.tdksp-table td:nth-child(2){
  width: 550rem;
}
.tdksp-table th:nth-child(3),
.tdksp-table td:nth-child(3){
  width: 275rem;
}



.tdksp-lastBanners{
  padding: 0 0 100rem;
}

/* 下段2つ */
.tdksp-lastBanners__grid{
  max-width: 680rem;
  margin: 20rem auto 0;
  gap: 20rem;
}

/* サイズ調整（既存bannerを流用） */
.tdksp-setBanner--wide .tdksp-setBanner__link{
  max-width: 680rem;  /* 既存に合わせる */
  height: 380rem;
}

.tdksp-setBanner--half .tdksp-setBanner__link{
  height: 300rem;
}
.tdksp-setBanner__bg{
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page306-sp.png") center/cover no-repeat;
}
/* 背景画像差し替え（ここだけURLを本番に） */
.tdksp-setBanner__bg--set{
  background-image: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page306-sp.png");
}
.tdksp-setBanner__bg--daiginjo{
  background-image: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page318-sp.png");
}
.tdksp-setBanner__bg--junmai{
  background-image: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page319-sp.png");
}

/* 既存setBannerのboxが中央寄りにしたい場合（スクショっぽく） */
.tdksp-setBanner--half .tdksp-setBanner__box{
  right: 30rem;
  width: 410rem;
  height: 225rem;
}
.tdksp-setBanner--half .tdksp-setBanner__box .tdksp-setBanner__box__border{
  padding: 24rem 0 17rem;
}
.tdksp-setBanner--half .tdksp-setBanner__box .tdksp-setBanner__small{
  font-size: 32rem;
  line-height: 1.4;
}

.tdksp-setBanner--half .tdksp-setBanner__box .tdksp-setBanner__title{
  margin: 0 0 20rem;
  font-size: 32rem;
  line-height: 1.4;
}

  .tdksp-mv{
  }

  .tdksp-mv__title h1{
  }

  .tdksp-intro{
  }

  .tdksp-intro h2{
  }

  .tdksp-intro p{
  }
  .tdksp-feature{
  }

  .tdksp-feature__title,
  .tdksp-concept__title{
  }

  .tdksp-feature__text,
  .tdksp-concept__lead{
  }

  .tdksp-ctaBtn{
  }

  .tdksp-ctaBtn__label{
  }

  .tdksp-concept{
  }

  .tdksp-product{
  }

  .tdksp-product__title{
  }

  .tdksp-product__main{
    grid-template-columns: 1fr;
  }

  .tdksp-product__btn{
  }

  .tdksp-comment{
  }
  .tdksp-setBanner{
  }

  .tdksp-setBanner__link{
  }

  .tdksp-setBanner__box{
  }

  .tdksp-setBanner__title{
  }

  .tdksp-media__inner{
    grid-template-columns: 1fr;
  }

  .tdksp-media__right{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    padding-bottom: 20rem;
  }

  .tdksp-card{
    min-width: 262rem;
    scroll-snap-align:start;
  }
  .tdksp-stores{
  }

  .tdksp-stores__title{
  }

  .tdksp-stores__block{
  }

  .tdksp-tableWrap{
                     /* SPは横スクロール */
                     width: 100%;
                     overflow-x: scroll;
                     -webkit-overflow-scrolling: touch;
                     padding-right: 35rem;
  }
  .tdksp-tableWrap-sc{
    padding-right: 35rem;
    width: 100vw;
  }
  .tdksp-table{
                     /* これが肝：表を縮めない */
                     padding-right: 35rem;
                     width: 1200rem;
                     border: 1px solid #DEDEDE;
  }
  .tdksp-lastBanners{
    padding: 0 0 64px;
  }

  .tdksp-lastBanners__grid{
    grid-template-columns: 1fr;
  }

  /* 上段もSPで左右余白を合わせる */
  .tdksp-setBanner--wide .tdksp-setBanner__link{
  }

  .tdksp-setBanner--half .tdksp-setBanner__link{
  }

  /* SPはボックスを少し小さく */
  .tdksp-setBanner__box{
  }

  .tdksp-setBanner__title{
  }




}





.tatechoukaisan{
  background:#fff;
}

/* ---------- MV ---------- */
.tc-mv{
  position: relative;
  min-height: 350px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page201-pc.png") center/cover no-repeat;
}

.tc-mv::after{
  content:"";
  position:absolute;
  inset:0;
}

.tc-mv__title{
  position: relative;
  z-index: 2;
  color:#fff;
}
.tc-mv__title h1{
  margin:0;
  font-size: 45px;
  letter-spacing: .04em;
  font-weight: 500;
  color: #ffffff;
  z-index: 2;
  position: relative;
}
.tc-mv__title p{
  margin:0;
  font-size: 45px;
  letter-spacing: .04em;
  font-weight: 500;
  color: #2C1B00;
  -webkit-text-stroke-width: 10px;
  filter: blur(10px);
  position: absolute;
  top: 0;
  z-index: 1;
}


/* =============================
  Fixed page: 縦鳥海山
============================= */

.tatechokai{
  background:#fff;
}

/* ---------- MV ---------- */
.tatechokai-mv{
  position: relative;
  min-height: 350px;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page201-pc.png") center/cover no-repeat;
}

.tatechokai-mv__inner{
  max-width: 1080px;
  margin: 0 auto;
  padding: 0;
  height: 100%;
  min-height: 350px;
  display:flex;
  align-items:center;
}

.tatechokai-mv__text{
  color:#333;
}

.tatechokai-mv__lead{
  margin: 0 0 10px;
  font-size: 20px;
  letter-spacing: .02em;
  line-height: 1.4;
}

.tatechokai-mv__title{
  margin: 0;
  font-size: 46px;
  font-weight: 500;
  letter-spacing: .04em;
  line-height: 1.6;
}

/* ---------- Intro ---------- */
.tatechokai-intro{
  padding: 70px 0 40px;
}

.tatechokai-intro__inner{
  max-width: 900px;
  margin: 0 auto;
  text-align:center;
}

.tatechokai-intro p{
  margin:0;
  font-size: 15px;
  line-height: 2;
  color:#333;
}

/* ---------- Contact box ---------- */
.tatechokai-contact{
  padding: 0 0 80px;
}

.tatechokai-contact__inner{
  max-width: 900px;
  margin: 0 auto;
  background: #F1F6F9;
  padding: 30px 80px;
}

.tatechokai-contact__note{
  margin: 0 0 35px;
  text-align:center;
  font-size: 15px;
  line-height: 2;
  color:#333;
  font-weight: 500;
}

.tatechokai-contact__grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
}

.tatechokai-contact__col{
  padding: 5px 0;
  width: 370px;
  padding-left: 70px;
}

.tatechokai-contact__col:first-child{
  border-right: 1px solid #DEDEDE;
  padding-right: 70px;
  padding-left: unset;
}

.tatechokai-contact__label{
  margin:0 0 14px;
  font-size: 15px;
  letter-spacing: .02em;
  color:#333;
  text-align:center;
  line-height: 1.6;
}

.tatechokai-contact__tel{
  margin: 0 0 3px;
  text-align:center;
  font-size: 32px;
  letter-spacing: .08em;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 9px;
}
.tatechokai-contact__tel:before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page202.svg") center/contain no-repeat;
}
.tatechokai-contact__tel a{
  color:#333;
  text-decoration:none;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

.tatechokai-contact__sub{
  margin:0;
  text-align:center;
  font-size: 14px;
  line-height: 2.2;
  color:#333;
  opacity: 1;
  letter-spacing: 0.02em;
}

.tatechokai-contact__sub .tel-tatechokai-contact {
  font-size: 16px;
  line-height: 1.8;
}

.tatechokai-contact__sub .tel-tatechokai-contact__sub {
  font-size: 13px;
  line-height: 1.8;
  letter-spacing: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.tatechokai-contact__btn{
  margin: 0 auto;
  width: min(300px, 100%);
  height: 60px;
  background:#fff;
  color:#333;
  text-decoration:none;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  font-size: 18px;
  line-height: 1.6;
  margin-top: 38px;
}

.tatechokai-contact__btnIcon{
  width: 30px;
  height: 30px;
  display:inline-block;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page203.svg") center/contain no-repeat;
}

/* =============================
  縦鳥海山：タブセクション
============================= */

.tate-tabSection{
  background: url(https://gigaplus.makeshop.jp/tenjushuzou/img/background01.png) center / contain;
  padding: 80px 0 0;
}

/* --- tabs --- */
.tate-tabs{
  max-width: 900px;
  margin: 0 auto 30px;
  padding: 0;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.tate-tabs__btn{
  height: 60px;
  border: 1px solid #DEDEDE;
  background:#fff;
  color: #A8A8A8;
  font-size: 18px;
  letter-spacing: 0;
  border-radius: 3px;
  cursor:pointer;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}

.tate-tabs__btn.is-active{
  background: #D6C049;
  border-color: #D6C049;
  color:#fff;
}

/* panel */
.tate-tabPanel{
  padding-bottom: 0;
}

/* --- hero --- */
.tate-hero{
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
  background: #ffffff;
}

.tate-hero__bg{
  height: 536px;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page204-pc.png") center/cover no-repeat;
}

[id="tateTab-regular"] .tate-hero__bg{
  height: 536px;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page204-pc.png") center/cover no-repeat;
}

[id="tateTab-season"] .tate-hero__bg{
  height: 536px;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page210-pc.png") center/cover no-repeat;
}

.tate-hero__content{
  position:absolute;
  left: 16px;
  right: 16px;
  top: 0;
  height: 280px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  padding: 18px;
  pointer-events:none;
}

.tate-hero__bottles img{
  width: 220px;
  height: auto;
  display:block;
}

.tate-hero__copy{
  text-align:right;
  color:#fff;
  text-shadow: 0 1px 12px rgba(0,0,0,.30);
}

.tate-hero__logo{
  margin:0;
  font-size: 48px;
  font-weight: 600;
  letter-spacing:.08em;
}

.tate-hero__sub{
  margin: 6px 0 0;
  font-size: 13px;
  letter-spacing:.04em;
}

/* --- product detail --- */
.tate-product{
  padding: 40px 0 70px;
}

.tate-product__inner{
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 16px;
  display:grid;
  grid-template-columns: 360px 1fr;
  gap: 46px;
  align-items:start;
}

.tate-product__image img{
  width:100%;
  height:auto;
  display:block;
}

.tate-product__title{
  margin: 0 0 14px;
  font-size: 18px;
  font-weight: 500;
  letter-spacing:.04em;
  color:#333;
}

.tate-product__prices{
  display:flex;
  gap: 18px;
  align-items:baseline;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(0,0,0,.12);
  margin-bottom: 14px;
}

.tate-product__price{
  font-size: 12px;
  color:#333;
}
.tate-product__price span{ margin-right: 10px; color:#666; }
.tate-product__price strong{ font-size: 18px; font-weight: 600; }
.tate-product__price em{ font-style: normal; margin-left: 4px; color:#666; }

/* spec table */
.tate-spec{
  width:100%;
  border-collapse: collapse;
  table-layout: fixed;
  margin: 20px 0 10px;
  border-left: 1px solid #dedede;
  border-right: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
}

.tate-spec th, .tate-spec td{
  border-top: 1px solid #DEDEDE;
  padding: 5px 12px;
  font-size: 15px;
  line-height: 1.8;
  vertical-align: top;
  font-family: "Zen Kaku Gothic New", sans-serif;
  text-align: left;
}

.tate-spec th{
  width: 173px;
  color: #5f5f5f;
  font-weight: 400;
  background: #F1F1F166;
}

.tate-spec td{
  color:#333;
}

/* taste (簡易) */
.tate-taste{
  display:grid;
  gap: 0;
  margin: 10px 0 10px;
  grid-auto-flow: column;
  width: fit-content;
  padding: 7px 15px;
  background: #FBF9F0;
}

.tate-taste__row{
  display:flex;
  align-items:center;
  gap: 0;
  background: #FBF9F0;
  padding-right: 15px;
  margin-right: 15px;
  width: fit-content;
  border-right: 1px solid #A8A8A8;
}
.tate-taste .tate-taste__row:last-of-type{
  border-right: none;
  margin-right: 0;
  padding-right: 0;
}
.tate-taste__row img {
  height: 22px;
  width: auto;
  display: block;
}


.tate-product__desc{
  margin: 0;
  font-size: 12px;
  line-height: 2.0;
  color:#333;
}

.tate-product__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height: 46px;
  padding: 0 18px;
  margin-top: 16px;
  border: 1px solid rgba(0,0,0,.12);
  text-decoration:none;
  color:#333;
  background:#fff;
}

/* =============================
  縦鳥海山：商品ブロック（繰り返し）
============================= */

.tate-products{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 80px;
  padding-bottom: 40px;
  display:grid;
  gap: 75px; /* ブロック間の余白 */
  background: #ffffff;
}

.tate-productItem{
}

.tate-productItem:first-child{
  border-top: 0;
  padding-top: 0;
}

.tate-productItem__inner{
  display:grid;
  grid-template-columns: 382px 1fr; /* 左ボトル／右情報 */
  gap: 40px;
  align-items:start;
}

.tate-productItem__image img{
  width:100%;
  height:auto;
  display:block;
}

.tate-productItem__title{
  margin: 0 0 13px;
  padding-bottom: 13px;
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0;
  color:#333;
  line-height: 1.6;
  border-bottom: 1px solid #D6C049;
}

.tate-productItem__prices{
  display:flex;
  gap: 40px;
  align-items:baseline;
  padding-bottom: 0;
  margin-bottom: 20px;
}

.tate-productItem__price{
  font-size: 14px;
  color:#333;
  line-height: 1.4;
}
.tate-productItem__price span{margin-right: 15px;}
.tate-productItem__price strong{font-size: 20px;font-weight: 500;letter-spacing: 0.02em;}
.tate-productItem__price em{font-style: normal;margin-left: 3px;letter-spacing: 0.02em;}

.tate-productItem__desc{
  margin: 0;
  font-size: 14px;
  line-height: 1.8;
  color:#333;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.tate-productItem__desc span{
  color: #e40000;
}

.tate-bottomSwitch{
  max-width: 900px;
  margin: 60px auto 0;
  padding-bottom: 80px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.tate-bottomSwitch__btn{
  height: 60px;
  border: 1px solid #DEDEDE;
  background: #fff;
  color: #A8A8A8;
  font-size: 18px;
  letter-spacing: 0;
  border-radius: 3px;
  cursor: pointer;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
}

.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn{
  background: #D6C049;
  border-color: #D6C049;
  color:#fff;
}
.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn + .tate-bottomSwitch__btn {
  border: 1px solid #DEDEDE;
  background: #fff;
  color: #A8A8A8;
}

.is-active.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn{
  border: 1px solid #DEDEDE;
  background: #fff;
  color: #A8A8A8;
}
.is-active.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn + .tate-bottomSwitch__btn {
  background: #D6C049;
  border-color: #D6C049;
  color:#fff;
}


@media screen and (max-width: 1440px) {

.tatechoukaisan{
  background:#fff;
}

/* =============================
  Fixed page: 縦鳥海山
============================= */

.tatechokai{
}

/* ---------- MV ---------- */
.tatechokai-mv{
  min-height: 350rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page201-pc.png") center/cover no-repeat;
}

.tatechokai-mv__inner{
  max-width: 1080rem;
  min-height: 350rem;
}

.tatechokai-mv__text{
}

.tatechokai-mv__lead{
  margin: 0 0 10rem;
  font-size: 20rem;
}

.tatechokai-mv__title{
  font-size: 46rem;
}

/* ---------- Intro ---------- */
.tatechokai-intro{
  padding: 70rem 0 40rem;
}

.tatechokai-intro__inner{
  max-width: 900rem;
}

.tatechokai-intro p{
  font-size: 15rem;
}

.tatechokai-contact{
  padding: 0 0 80rem;
}

.tatechokai-contact__inner{
  max-width: 900rem;
  padding: 30rem 80rem;
}

.tatechokai-contact__note{
  margin: 0 0 35rem;
  font-size: 15rem;
}

.tatechokai-contact__grid{
}

.tatechokai-contact__col{
  padding: 5rem 0;
  width: 370rem;
  padding-left: 70rem;
}

.tatechokai-contact__col:first-child{
  padding-right: 70rem;
}

.tatechokai-contact__label{
  margin:0 0 14rem;
  font-size: 15rem;
}

.tatechokai-contact__tel{
  margin: 0 0 3rem;
  font-size: 32rem;
  gap: 9rem;
}
.tatechokai-contact__tel:before {
  width: 30rem;
  height: 30rem;
}
.tatechokai-contact__tel a{
}

.tatechokai-contact__sub{
  font-size: 14rem;
}

.tatechokai-contact__sub .tel-tatechokai-contact {
  font-size: 16rem;
}

.tatechokai-contact__sub .tel-tatechokai-contact__sub {
  font-size: 13rem;
}

.tatechokai-contact__btn{
  width: min(300rem, 100%);
  height: 60rem;
  gap: 10rem;
  font-size: 18rem;
  margin-top: 38rem;
}

.tatechokai-contact__btnIcon{
  width: 30rem;
  height: 30rem;
}


.tate-tabSection{
  padding: 80rem 0 0;
}

/* --- tabs --- */
.tate-tabs{
  max-width: 900rem;
  margin: 0 auto 30rem;
  gap: 20rem;
}

.tate-tabs__btn{
  height: 60rem;
  font-size: 18rem;
  border-radius: 3rem;
}

.tate-tabs__btn.is-active{
}

/* panel */
.tate-tabPanel{
}

/* --- hero --- */
.tate-hero{
  position: relative;
  max-width: 1200rem;
}

.tate-hero__bg{
  height: 536rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page204-pc.png") center/cover no-repeat;
}

[id="tateTab-regular"] .tate-hero__bg{
  height: 536rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page204-pc.png") center/cover no-repeat;
}

[id="tateTab-season"] .tate-hero__bg{
  height: 536rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page210-pc.png") center/cover no-repeat;
}

.tate-hero__content{
  left: 16rem;
  right: 16rem;
  height: 280rem;
  padding: 18rem;
}

.tate-hero__bottles img{
  width: 220rem;
}

.tate-hero__logo{
  font-size: 48rem;
}

.tate-hero__sub{
  margin: 6rem 0 0;
  font-size: 13rem;
}

.tate-product{
  padding: 40rem 0 70rem;
}

.tate-product__inner{
  max-width: 1080rem;
  padding: 0 16rem;
  grid-template-columns: 360rem 1fr;
  gap: 46rem;
}

.tate-product__image img{
}

.tate-product__title{
  margin: 0 0 14rem;
  font-size: 18rem;
}


.tate-spec{
  margin: 20rem 0 10rem;
}

.tate-spec th, .tate-spec td{
  padding: 5rem 12rem;
  font-size: 15rem;
}

.tate-spec th{
  width: 173rem;
}

.tate-spec td{
  color:#333;
}

/* taste (簡易) */
.tate-taste{
  margin: 10rem 0 10rem;
  padding: 7rem 15rem;
}

.tate-taste__row{
  padding-right: 15rem;
  margin-right: 15rem;
}
.tate-taste .tate-taste__row:last-of-type{
}
.tate-taste__row img {
  height: 22rem;
}


.tate-product__desc{
  font-size: 12rem;
}

.tate-product__btn{
  height: 46rem;
  padding: 0 18rem;
  margin-top: 16rem;
  border: 1rem solid rgba(0,0,0,.12);
}


.tate-products{
  max-width: 1200rem;
  padding: 0 80rem;
  padding-bottom: 40rem;
  gap: 75rem; /* ブロック間の余白 */
}

.tate-productItem{
}

.tate-productItem:first-child{
}

.tate-productItem__inner{
  grid-template-columns: 382rem 1fr; /* 左ボトル／右情報 */
  gap: 40rem;
}

.tate-productItem__image img{
}

.tate-productItem__title{
  margin: 0 0 13rem;
  padding-bottom: 13rem;
  font-size: 26rem;
}

.tate-productItem__prices{
  gap: 40rem;
  margin-bottom: 20rem;
}

.tate-productItem__price{
  font-size: 14rem;
}
.tate-productItem__price span{margin-right: 15rem;}
.tate-productItem__price strong{font-size: 20rem;}
.tate-productItem__price em{margin-left: 3rem;}

.tate-productItem__desc{
  font-size: 14rem;
}
.tate-productItem__desc span{
}

.tate-bottomSwitch{
  max-width: 900rem;
  margin: 60rem auto 0;
  padding-bottom: 80rem;
  gap: 20rem;
}

.tate-bottomSwitch__btn{
  height: 60rem;
  font-size: 18rem;
  border-radius: 3rem;
}

.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn{
}
.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn + .tate-bottomSwitch__btn {
}

.is-active.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn{
}
.is-active.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn + .tate-bottomSwitch__btn {
}

}



@media screen and (max-width: 768px) {

  .tatechokai-mv{
    min-height: 280px;
  }
  .tatechokai-mv__inner{
  }

  .tatechokai-mv__title{
  }

  .tatechokai-intro{
  }
  .tatechokai-intro p{
  }

  .tatechokai-contact{
  }
  .tatechokai-contact__inner{
  }

  .tatechokai-contact__grid{
    grid-template-columns: 1fr; /* SPは縦並び */
  }

  .tatechokai-contact__col:first-child{
    border-right: 0;
    border-bottom: 2rem solid #DEDEDE;
    padding: 0 0 40rem 0;
  }

  .tatechokai-contact__tel{
    font-size: 22px;
  }
  .tate-tabs{
    grid-template-columns: 1fr 1fr;
  }

  .tate-hero__bg,
  .tate-hero__content{
    height: 220px;
  }

  .tate-hero__bottles img{
    width: 160px;
  }

  .tate-hero__logo{
    font-size: 34px;
  }

  .tate-product__inner{
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .tate-product{
    padding: 26px 0 54px;
  }
  .tate-products{
    padding: 22px 16px 54px;
    gap: 42px;
  }

  .tate-productItem{
  }

  .tate-productItem__inner{
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .tate-productItem__title{
  }
  .tate-bottomSwitch{
    grid-template-columns: 1fr 1fr;
  }

.tatechoukaisan{
  background:#fff;
}

/* =============================
  Fixed page: 縦鳥海山
============================= */

.tatechokai{
}

/* ---------- MV ---------- */
.tatechokai-mv{
  min-height: 350rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page201-sp.png") center/cover no-repeat;
}

.tatechokai-mv__inner{
  max-width: 680rem;
  min-height: 350rem;
}

.tatechokai-mv__text{
}

.tatechokai-mv__lead{
  margin: 30rem 0 10rem;
  font-size: 26rem;
}

.tatechokai-mv__title{
  font-size: 48rem;
}

/* ---------- Intro ---------- */
.tatechokai-intro{
  padding: 80rem 0 60rem;
}

.tatechokai-intro__inner{
  max-width: 680rem;
}

.tatechokai-intro p{
  font-size: 26rem;
  line-height: 1.8;
  letter-spacing: 0.02em;
}

.tatechokai-contact{
  padding: 0 0 80rem;
}

.tatechokai-contact__inner{
  max-width: 680rem;
  padding: 60rem 40rem;
}

.tatechokai-contact__note{
  margin: 0 0 50rem;
  font-size: 26rem;
  text-align: left;
}

.tatechokai-contact__grid{text-align: center;}

.tatechokai-contact__col{
  padding: 40rem 0 0 0;
  width: 600rem;
  padding-left: 0;
}

.tatechokai-contact__col:first-child{
  padding-right: 0;
}

.tatechokai-contact__label{
  margin: 0 0 22rem;
  font-size: 28rem;
}

.tatechokai-contact__tel{
  margin: 0 0 4rem;
  font-size: 60rem;
  gap: 15rem;
  line-height: 1.5;
}
.tatechokai-contact__tel:before {
  width: 65rem;
  height: 65rem;
}
.tatechokai-contact__tel a{
}

.tatechokai-contact__sub{
  font-size: 28rem;
  line-height: 2.2;
}

.tatechokai-contact__sub .tel-tatechokai-contact {
  font-size: 30rem;
}

.tatechokai-contact__sub .tel-tatechokai-contact__sub {
  font-size: 26rem;
}

.tatechokai-contact__btn{
  width: min(600rem, 100%);
  height: 100rem;
  gap: 20rem;
  font-size: 28rem;
  margin-top: 30rem;
}

.tatechokai-contact__btnIcon{
  width: 65rem;
  height: 65rem;
}


.tate-tabSection{
  padding: 80rem 0 0;
}

/* --- tabs --- */
.tate-tabs{
  max-width: 680rem;
  margin: 0 auto 30rem;
  gap: 10rem;
}

.tate-tabs__btn{
  height: 100rem;
  font-size: 26rem;
  border-radius: 7rem;
  line-height: 1.5;
}

.tate-tabs__btn.is-active{
}

/* panel */
.tate-tabPanel{
}

/* --- hero --- */
.tate-hero{
  position: relative;
  max-width: 680rem;
}

.tate-hero__bg{
  height: 347rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page204-sp.png") center/cover no-repeat;
}

[id="tateTab-regular"] .tate-hero__bg{
  height: 347rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page204-sp.png") center/cover no-repeat;
}

[id="tateTab-season"] .tate-hero__bg{
  height: 347rem;
  background: url("https://gigaplus.makeshop.jp/tenjushuzou/img/page210-sp.png") center/cover no-repeat;
}

.tate-hero__content{
  left: 16rem;
  right: 16rem;
  height: 280rem;
  padding: 18rem;
}

.tate-hero__bottles img{
  width: 220rem;
}

.tate-hero__logo{
  font-size: 48rem;
}

.tate-hero__sub{
  margin: 6rem 0 0;
  font-size: 13rem;
}

.tate-product{
  padding: 40rem 0 70rem;
}

.tate-product__inner{
  max-width: 1080rem;
  padding: 0 16rem;
  grid-template-columns: 360rem 1fr;
  gap: 46rem;
}

.tate-product__image img{
}

.tate-product__title{
  margin: 0 0 14rem;
  font-size: 18rem;
}


.tate-spec{
  margin: 30rem 0 30rem;
}

.tate-spec th, .tate-spec td{
  padding: 12rem 12rem;
  font-size: 26rem;
  line-height: 1.5;
}

.tate-spec th{
  width: 185rem;
}

.tate-spec td{
  color:#333;
  padding: 12rem 20rem;
}

/* taste (簡易) */
.tate-taste{
  margin: 30rem 0 20rem;
  padding: 14rem 20rem;
  grid-template-columns: repeat(2, 1fr);
  width: 495rem;
  grid-auto-flow: unset;
  gap: 17rem 0;
}

.tate-taste__row{
  padding-right: 20rem;
  margin-right: 20rem;
}
.tate-taste .tate-taste__row:last-of-type{
}
.tate-taste .tate-taste__row:nth-last-of-type(2){
  border-right: none;
  margin-right: 0;
  padding-right: 0;
}
.tate-taste__row img {
  height: 35rem;
}


.tate-product__desc{
  font-size: 12rem;
}

.tate-product__btn{
  height: 46rem;
  padding: 0 18rem;
  margin-top: 16rem;
  border: 1rem solid rgba(0,0,0,.12);
}


.tate-products{
  max-width: 680rem;
  padding: 0 40rem;
  padding-bottom: 80rem;
  gap: 80rem; /* ブロック間の余白 */
}

.tate-productItem{
}

.tate-productItem:first-child{
}

.tate-productItem__inner{
  grid-template-columns: 1fr; /* 左ボトル／右情報 */
  gap: 0;
}

.tate-productItem__image img{width: 450rem;height: auto;margin: 0 auto;}

.tate-productItem__title{
  margin: 0 0 20rem;
  padding-bottom: 20rem;
  font-size: 38rem;
  line-height: 1.5;
}

.tate-productItem__prices{
  gap: 40rem;
  margin-bottom: 30rem;
}

.tate-productItem__price{
  font-size: 26rem;
}
.tate-productItem__price span{margin-right: 15rem;}
.tate-productItem__price strong{font-size: 32rem;}
.tate-productItem__price em{margin-left: 4rem;letter-spacing: 0;font-size: 24rem;}

.tate-productItem__desc{
  font-size: 26rem;
}
.tate-productItem__desc span{
}

.tate-bottomSwitch{
  max-width: 680rem;
  margin: 60rem auto 0;
  padding-bottom: 100rem;
  gap: 10rem;
}

.tate-bottomSwitch__btn{
  height: 100rem;
  font-size: 26rem;
  border-radius: 7rem;
  line-height: 1.5;
}

.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn{
}
.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn + .tate-bottomSwitch__btn {
}

.is-active.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn{
}
.is-active.tate-tabPanel + .tate-bottomSwitch .tate-bottomSwitch__btn + .tate-bottomSwitch__btn {
}

}

@media (max-width: 768px){
.kodawari-three__image {
  height: 526rem;
  width: 500rem;
  display: block;
}
.kodawari-three__vertical{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  text-orientation: upright;
  -webkit-text-orientation: upright;
  z-index:3;
  color:#fff;
  white-space: nowrap;
}
  /* iOS判定用（Safari/Chrome iOS 両方に効く） */
  @supports (-webkit-touch-callout: none) {
    .kodawari-three{
      -webkit-overflow-scrolling: auto;
    }
  }
}