@charset "UTF-8";

/* * {
  outline: 1px solid blue;
} */

body {
  margin: 0;
}

@media screen and (min-width: 780px) {
  body {
    margin: 0;
  }
}

/* 検証サイズ用

.fs-l-main {
  margin: 0;
  padding: 0;
}

.fs-l-main,
.fs-l-pageMain {
  width: 100%;
  max-width: 100%;
}
/* futureshop css 反映用 */

/* .device-click a,
.device-click button {
  transition: unset;
} */

/* .device-click a:hover,
.device-click button:hover {
  opacity: unset !important;
} */

/* ボタン回り 挙動の反映のリセット */

.tanabata_sale_2607 {
  /* --min-size: 0;
  --max-size: 10px;
  --fluid-size: 1.25vw;
  font-size: min(var(--fluid-size), var(--max-size)); */
  /* テストアップ、本アップ用でサイズが異なるため非表示 */

  position: relative;
  overflow: hidden;
  /* 全体設定  article class セールタイトル名 */

  --main-font:
    "ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
    "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN",
    "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, "ＭＳ Ｐゴシック", "MS P Gothic",
    Osaka, Arial, Helvetica, Verdana, sans-serif;
  --second-font: "the-seasons", sans-serif;
  --main-font-family:
    "the-seasons", "Yu Mincho", "游明朝", "游明朝体", YuMincho,
    "Hiragino Mincho ProN", "Hiragino Mincho Pro", "MS PMincho", serif;
  --third-font-family: "Yu Mincho", "YuMincho", serif;
  /* フォント設定 游ゴシックの場合 カスタムプロパティー反映用*/
}

.sale_lp {
  font-family: var(--main-font);
  background-color: #fff !important;
  /* メイン カスタムプロパティー反映例 */
}
.second_font_template {
  font-family: var(--second-font);
  /* セカンド カスタムプロパティー反映例 */
}

.tanabata_sale_2607 .l-inner {
  margin: 0 auto;
  max-width: 800px;
  /* 全体を内包しているコンテナのサイズ 780px以降、800pxで固定するために使用 */
}

.tanabata_sale_2607 .countdown_area {
  --countdown-textColor: #ffffff;
  background-color: var(--countdown-bgColor);
  padding: 0;
}

.line_induction {
  background-color: white !important;
  margin-bottom: 5em;
}
.line_induction .l-inner {
  margin: 0 auto;
  max-width: 800px;
  overflow: hidden;
}
/* LINE登録 */

html:not(.js-enabled) .js-timed-content {
  display: block;
}

.js-enabled .js-timed-content {
  display: block;
}
/* カウントダウンエリア関連 */

.ticket_btn a,
.size_btn a,
.view_more_btn a,
.outlet_btn a {
  color: #fff !important;
}

a.btn-cart,
a.btn-view-more,
a.view-more-btn,
a.goods-btn {
  color: #fff !important;
  text-decoration: none;
}

@media (hover: hover) {
  .tanabata_sale_2607 .u-hover-btn {
    transition: opacity 0.5s ease;
    cursor: pointer;
  }
  .tanabata_sale_2607 .u-hover-btn:hover {
    opacity: 0.7 !important;
  }
}
/* ボタン回り */

.tanabata_sale_2607 {
  --menu-bgColor: #3a3937;
  --menu-lineColor: #dbd7ce;
  --menu-container: #1d1c1a;
}

/* モーダル関連 */
.tanabata_sale_2607 .banner {
  position: fixed;
  bottom: 0;
  margin: 0 auto;
  width: 100%;
  max-width: 80em;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  pointer-events: none;
  user-select: none;
  z-index: 9999;
  filter: blur(4px);
  animation: coupon-elegant-appear 1.2s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
@keyframes coupon-elegant-appear {
  0% {
    opacity: 0;
    transform: translateX(-50%) translateY(15px);
    filter: blur(8px);
  }
  100% {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    filter: blur(0);
    pointer-events: auto;
  }
}

/* cdt関連 SP */

.sale_lp .countdown_area .cdt p {
  margin-bottom: calc(26 / 800 * 100vw) !important;
}

.tanabata_sale_2607 .cdt {
  font-family: "Yu Mincho", "YuMincho", serif;
  font-weight: 300;
  color: #fff;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: calc(64 / 800 * 100vw);
  padding-bottom: calc(52 / 800 * 100vw);
  text-align: center;
}
.tanabata_sale_2607 .cdt p {
  font-size: calc(30 / 800 * 100vw) !important;
  margin-top: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.tanabata_sale_2607 .cdt .kazu,
.tanabata_sale_2607 .cdt .text {
  font-size: calc(40 / 800 * 100vw) !important;
}
.tanabata_sale_2607 .cdt .kazu + .text {
  margin-left: 0.1em;
}
.tanabata_sale_2607 .cdt .text + .kazu {
  margin-left: 0.2em;
}
/* cdt関連 SP */

.js-timer-content--item {
  display: block;
}
/* 初期は隠す。JSで条件に合う方だけ block にする */
/* タイマー設定切り替えアイテム */

/* sp */

.js-timed-content {
  padding-bottom: 0;
}

/* section 0  menu-nav-container sp */

.tanabata_sale_2607 .menu_bg_02 {
  width: 100%;
  background: url("https://tu-hacci.co.jp/img/salepage/260703_tanabata_sale/menu/menu_bg.png")
    no-repeat center top;
  background-size: cover;
  padding-bottom: calc(80 / 800 * 100vw);
}

.tanabata_sale_2607 .menu-nav-container {
  width: 100%;
  background: url("https://tu-hacci.co.jp/img/salepage/260703_tanabata_sale/menu/menu_oval.png")
    no-repeat center top;
  background-size: cover;
  padding: calc(93 / 800 * 100vw) 0 calc(300 / 800 * 100vw);
  text-align: center;
}

.tanabata_sale_2607 .menu-nav-inner {
  width: calc(640 / 800 * 100vw);
  margin: 0 auto;
}

.tanabata_sale_2607 .menu-nav-title {
  width: calc(306 / 800 * 100vw);
  margin: 0 auto calc(57 / 800 * 100vw);
}

.tanabata_sale_2607 .menu-nav-title img {
  width: 100%;
  height: auto;
  display: block;
}

.tanabata_sale_2607 .menu-nav-lead {
  font-family: var(--main-font-family);
  font-weight: 300;
  font-size: calc(30 / 800 * 100vw);
  line-height: 1.6;
  letter-spacing: 0.1em;
  color: #373739;
  margin-bottom: calc(45 / 800 * 100vw);
}

.tanabata_sale_2607 .menu-nav-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: calc(20 / 800 * 100vw);
}

.tanabata_sale_2607 .menu-nav-list img {
  width: calc(660 / 800 * 100vw);
  height: auto;
  display: block;
  margin: 0 auto;
}

.tanabata_sale_2607 .menu-nav-list a {
  display: block;
  transition:
    opacity 0.3s,
    transform 0.2s;
}
.tanabata_sale_2607 .menu-nav-list a:active {
  opacity: 0.8;
  transform: scale(0.98);
}
/* section 0  menu-nav-container sp */

/* section 0  menu-nav-container pc */

@media screen and (min-width: 780px) {
  .sale_lp .countdown_area .cdt p {
    margin-bottom: 26px !important;
  }

  .tanabata_sale_2607 .cdt {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 64px;
    padding-bottom: 52px;
  }
  .tanabata_sale_2607 .cdt p {
    font-size: 30px !important;
    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: 0;
  }
  .tanabata_sale_2607 .cdt .kazu,
  .tanabata_sale_2607 .cdt .text {
    font-size: 40px !important;
  }
  .tanabata_sale_2607 .cdt .kazu + .text {
    margin-left: 0.1em;
  }
  .tanabata_sale_2607 .cdt .text + .kazu {
    margin-left: 0.2em;
  }
  /* cdt関連 PC */

  .tanabata_sale_2607 .menu-nav-lead {
    font-size: 30px;
    margin-bottom: 45px;
  }

  /* section 0  menu-nav-container */

  .tanabata_sale_2607 .menu_bg_02 {
    padding-bottom: 80px;
  }

  .tanabata_sale_2607 .menu-nav-container {
    padding: 93px 0 260px;
  }

  .tanabata_sale_2607 .menu-nav-inner {
    width: 640px;
  }

  .tanabata_sale_2607 .menu-nav-title {
    width: 306px;
    margin: 0 auto 57px;
  }

  .tanabata_sale_2607 .menu-nav-list {
    gap: 20px;
  }

  .tanabata_sale_2607 .menu-nav-list img {
    width: 660px;
  }

  @media (hover: hover) {
    .tanabata_sale_2607 .menu-nav-list li {
      transition: opacity 0.5s ease;
      cursor: pointer;
    }
    .tanabata_sale_2607 .menu-nav-list li:hover {
      opacity: 0.7 !important;
    }
  }
}

/* section 0  menu-nav-container pc */

/* section 1  happy bag sp */

.ts-section-01 {
  width: calc(800 / 800 * 100vw);
  margin: 0 auto;
  padding: 0 0 calc(237 / 800 * 100vw) 0;
  background-image: url("https://tu-hacci.co.jp/img/salepage/260703_tanabata_sale/section01/section01_bg.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  font-family: var(--main-font);
  box-sizing: border-box;
}

.ts-section-01 *,
.ts-section-01 *::before,
.ts-section-01 *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.ts-section-01 .ts-container,
.ts-section-01 .ts-container2,
.ts-section-01 .ts-container3 {
  width: calc(720 / 800 * 100vw);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  position: relative;
  text-align: center;
}

.ts-section-01 .ts-container {
  margin: calc(80 / 800 * 100vw) auto calc(89 / 800 * 100vw);
  padding: calc(17.5 / 800 * 100vw) 0 calc(53 / 800 * 100vw);
  background-image: url("https://tu-hacci.co.jp/img/salepage/260703_tanabata_sale/section02/section02_container_01.png");
}

.ts-section-01 .ts-container2 {
  margin: calc(80 / 800 * 100vw) auto calc(89 / 800 * 100vw);
  padding: calc(17.5 / 800 * 100vw) 0 calc(53 / 800 * 100vw);
  background-image: url("https://tu-hacci.co.jp/img/salepage/260703_tanabata_sale/section02/section02_container_02.png");
}

.ts-section-01 .ts-container3 {
  margin: calc(80 / 800 * 100vw) auto 0;
  padding: calc(17.5 / 800 * 100vw) 0 calc(53 / 800 * 100vw);
  background-image: url("https://tu-hacci.co.jp/img/salepage/260703_tanabata_sale/section02/section02_container_03.png");
}

.ts-section-01 .ts-header-img {
  margin-bottom: calc(35.5 / 800 * 100vw);
}
.ts-section-01 .ts-header-img img {
  width: calc(225 / 800 * 100vw);
  height: auto;
  display: inline-block;
  vertical-align: bottom;
}

/* モデル画像 */
.ts-section-01 .ts-model-img {
  margin-bottom: calc(23 / 800 * 100vw);
}
.ts-section-01 .ts-model-img img {
  width: calc(660 / 800 * 100vw);
  height: auto;
  margin: 0 auto;
  display: block;
  transition: opacity 0.2s ease !important;
}

.ts-section-01 .ts-model-img img:hover {
  opacity: 0.8 !important;
}

/* テキスト情報 */
.ts-section-01 .ts-product-info {
  font-family: var(--main-font);
  font-weight: 500;
  color: #000000;
  line-height: 1.6;
  margin-bottom: 0;
}
.ts-section-01 .ts-product-title {
  font-size: calc(28 / 800 * 100vw);
  font-weight: 400;
  letter-spacing: 0.05em;
  margin-bottom: calc(12 / 800 * 100vw);
}
.ts-section-01 .ts-product-subtitle {
  font-size: calc(24 / 800 * 100vw);
}
.ts-section-01 .ts-old-price {
  font-size: calc(30 / 800 * 100vw);
  color: #333333;
  letter-spacing: 0.02em;
}

.ts-section-01 .ts-new-price_yen {
  font-size: calc(72 / 800 * 100vw);
}

.ts-section-01 .ts-strike,
.ts2-section-02 .ts-strike {
  text-decoration: line-through;
}

.ts-section-01 .ts-price-grid {
  display: table;
  width: auto;
  margin: 0 auto calc(10 / 800 * 100vw) auto;
}
.ts-section-01 .ts-grid-left,
.ts-section-01 .ts-grid-right {
  display: table-cell;
  vertical-align: middle;
}
.ts-section-01 .ts-grid-left {
  padding-right: calc(15 / 800 * 100vw);
}
.ts-section-01 .ts-discount-icon {
  width: calc(140 / 800 * 100vw);
  height: auto;
  display: block;
}
.ts-section-01 .ts-new-price {
  font-family: var(--main-font-family);
  font-size: calc(120 / 800 * 100vw);
  font-weight: 400;
  color: #a83948;
  line-height: 1;
}

.ts-section-01 .ts-action {
  margin-bottom: calc(30 / 800 * 100vw);
}
.ts-section-01 .ts-viewmore-btn {
  display: inline-block;
  width: calc(300 / 800 * 100vw);
  background-color: #423f3f;
  color: #ffffff;
  font-family: var(--main-font);
  font-weight: 500;
  font-size: calc(24 / 800 * 100vw);
  text-decoration: none;
  padding: calc(2 / 800 * 100vw) 0;
  transition: opacity 0.2s ease;
}
.ts-section-01 .ts-viewmore-btn:hover {
  opacity: 0.8;
}

.ts-section-01 .ts-notes,
.ts-section-01 .ts-notes2,
.ts-section-01 .ts-notes3 {
  font-family: var(--main-font);
  font-weight: 500;
  font-size: calc(16 / 800 * 100vw);
  color: #000000;
  line-height: 1.6;
  text-align: left;
  letter-spacing: 0.02em;
}
.ts-section-01 .ts-notes {
  padding: 0 calc(64 / 800 * 100vw);
}

.ts-section-01 .ts-notes2 {
  padding: 0 calc(162 / 800 * 100vw);
}
.ts-section-01 .ts-notes3 {
  padding: 0 calc(132 / 800 * 100vw);
}

/* section 1  happy bag sp */

/* section 1  happy bag pc */

@media screen and (min-width: 780px) {
  .ts-section-01 {
    width: 800px;
    margin: 0 auto;
    padding: 0 0 237px 0;
    background-image: url("https://tu-hacci.co.jp/img/salepage/260703_tanabata_sale/section01/section01_bg.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    font-family:
      "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans",
      Meiryo, sans-serif;
    box-sizing: border-box;
  }

  .ts-section-01 *,
  .ts-section-01 *::before,
  .ts-section-01 *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  .ts-section-01 .ts-container,
  .ts-section-01 .ts-container2,
  .ts-section-01 .ts-container3 {
    width: 720px;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: relative;
    text-align: center;
  }

  .ts-section-01 .ts-container {
    margin: 80px auto 89px;
    padding: 17.5px 0 53px;
    background-image: url("https://tu-hacci.co.jp/img/salepage/260703_tanabata_sale/section02/section02_container_01.png");
  }

  .ts-section-01 .ts-container2 {
    margin: 80px auto 89px;
    padding: 17.5px 0 53px;
    background-image: url("https://tu-hacci.co.jp/img/salepage/260703_tanabata_sale/section02/section02_container_02.png");
  }

  .ts-section-01 .ts-container3 {
    margin: 80px auto 0;
    padding: 17.5px 0 53px;
    background-image: url("https://tu-hacci.co.jp/img/salepage/260703_tanabata_sale/section02/section02_container_03.png");
  }

  .ts-section-01 .ts-header-img {
    margin-bottom: 35.5px;
  }
  .ts-section-01 .ts-header-img img {
    width: 225px;
    height: auto;
    display: inline-block;
    vertical-align: bottom;
  }

  /* モデル画像 */
  .ts-section-01 .ts-model-img {
    margin-bottom: 23px;
  }
  .ts-section-01 .ts-model-img img {
    width: 660px;
    height: auto;
    margin: 0 auto;
    display: block;
    transition: opacity 0.2s ease;
  }

  /* テキスト情報 */
  .ts-section-01 .ts-product-info {
    font-family: var(--main-font);
    font-weight: 500;
    color: #000000;
    line-height: 1.6;
    margin-bottom: 0;
  }
  .ts-section-01 .ts-product-title {
    font-size: 24px;
    font-weight: normal;
    letter-spacing: 0.05em;
    margin-bottom: 12px;
  }
  .ts-section-01 .ts-product-subtitle {
    font-size: 24px;
  }
  .ts-section-01 .ts-old-price {
    font-size: 30px;
    color: #333333;
    letter-spacing: 0.02em;
  }

  .ts-section-01 .ts-new-price_yen {
    font-size: 72px;
  }

  .ts-section-01 .ts-strike,
  .ts2-section-02 .ts-strike {
    text-decoration: line-through;
  }

  .ts-section-01 .ts-price-grid {
    display: table;
    width: auto;
    margin: 0 auto 10px auto;
  }
  .ts-section-01 .ts-grid-left,
  .ts-section-01 .ts-grid-right {
    display: table-cell;
    vertical-align: middle;
  }
  .ts-section-01 .ts-grid-left {
    padding-right: 15px;
  }
  .ts-section-01 .ts-discount-icon {
    width: 140px;
    height: auto;
    display: block;
  }
  .ts-section-01 .ts-new-price {
    font-family: var(--main-font-family);
    font-size: 120px;
    font-weight: 400;
    color: #a83948;
    line-height: 1;
  }

  .ts-section-01 .ts-action {
    margin-bottom: 30px;
  }
  .ts-section-01 .ts-viewmore-btn {
    display: inline-block;
    width: 300px;
    background-color: #423f3f;
    color: #ffffff;
    font-family: var(--main-font);
    font-weight: 500;
    font-size: 24px;
    text-decoration: none;
    padding: 2px 0;
    transition: opacity 0.2s ease;
  }
  .ts-section-01 .ts-viewmore-btn:hover {
    opacity: 0.8;
  }

  .ts-section-01 .ts-notes,
  .ts-section-01 .ts-notes2,
  .ts-section-01 .ts-notes3 {
    font-family: var(--main-font);
    font-weight: 500;
    font-size: 16px;
    color: #000000;
    line-height: 1.6;
    text-align: left;
    letter-spacing: 0.02em;
  }
  .ts-section-01 .ts-notes {
    padding: 0 64px;
  }

  .ts-section-01 .ts-notes2 {
    padding: 0 162px;
  }
  .ts-section-01 .ts-notes3 {
    padding: 0 132px;
  }
}
/* section 1  happy bag pc */

/* section 2  once-a-year price sp */

.ts2-section-02 {
  width: calc(800 / 800 * 100vw);
  margin: 0 auto;
  padding: 0 0 calc(92 / 800 * 100vw);
  background: linear-gradient(145deg, #8491a5 0%, #cddaed 100%);
  font-family: var(--main-font);
  box-sizing: border-box;
}

.ts2-section-02 *,
.ts2-section-02 *::before,
.ts2-section-02 *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.ts2-section-02 .ts2-inner {
  width: 100%;
  text-align: center;
}

.ts2-section-02 .ts2-catch-text {
  font-size: calc(36 / 800 * 100vw);
  color: #ffffff;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin: calc(48 / 800 * 100vw) auto calc(34 / 800 * 100vw);
}

.ts2-section-02 .ts2-image-stage {
  position: relative;
  width: calc(748 / 800 * 100vw);
  margin: 0 auto calc(30 / 800 * 100vw) auto;
  transition: opacity 0.2s ease;
}

.ts2-section-02 .ts2-layer-fv {
  position: relative;
  z-index: 1;
  width: calc(748 / 800 * 100vw);
  margin-right: auto;
}
.ts2-section-02 .ts2-layer-fv img {
  width: calc(748 / 800 * 100vw);
  height: auto;
  display: block;
}

.ts2-section-02 .ts2-layer-oki {
  position: absolute;
  z-index: 2;
  bottom: calc(-20 / 800 * 100vw);
  right: calc(30 / 800 * 100vw);
  width: calc(280 / 800 * 100vw);
}
.ts2-section-02 .ts2-layer-oki img {
  width: 100%;
  height: auto;
  display: block;
}

.ts2-section-02 .ts2-product-desc {
  color: #333333;
  line-height: 1.5;
  margin-bottom: calc(20 / 800 * 100vw);
}
.ts2-section-02 .ts2-product-name {
  font-size: calc(30 / 800 * 100vw);
  font-weight: normal;
  letter-spacing: 0.05em;
}
.ts2-section-02 .ts2-reference-price {
  font-size: calc(30 / 800 * 100vw);
  letter-spacing: 0.02em;
}

.ts2-section-02 .ts2-price-grid {
  display: table;
  width: auto;
  margin: 0 auto calc(28 / 800 * 100vw) auto;
}
.ts2-section-02 .ts2-grid-left,
.ts2-section-02 .ts2-grid-right {
  display: table-cell;
  vertical-align: middle;
}
.ts2-section-02 .ts2-grid-left {
  padding-right: calc(10 / 800 * 100vw);
}
.ts2-section-02 .ts2-discount-icon {
  width: calc(110 / 800 * 100vw);
  height: auto;
  display: block;
}

.ts2-section-02 .ts2-new-price {
  font-size: calc(96 / 800 * 100vw);
  font-weight: 400;
  color: #a83948;
  font-family: var(--second-font);
  line-height: 1;
  letter-spacing: 0.1em;
}
.ts2-section-02 .ts2-new-price_yen {
  font-size: calc(64 / 800 * 100vw);
}

.ts2-section-02 .ts2-action {
  margin-bottom: calc(25 / 800 * 100vw);
}
.ts2-section-02 .ts2-viewmore-btn {
  display: inline-block;
  width: calc(300 / 800 * 100vw);
  background-color: #423f3f;
  color: #ffffff;
  font-size: calc(24 / 800 * 100vw);
  padding: calc(2 / 800 * 100vw) 0;
  text-decoration: none;
  transition: opacity 0.2s ease;
}
.ts2-section-02 .ts2-viewmore-btn:hover {
  opacity: 0.8;
}

.ts2-section-02 .ts2-notes {
  font-size: calc(15 / 800 * 100vw);
  color: #444444;
  line-height: 1.6;
  text-align: left;
  margin: 0 calc(320 / 800 * 100vw) 0 calc(249 / 800 * 100vw);
  letter-spacing: 0.02em;
}
/* section 2  once-a-year price sp */

/* section 2  once-a-year price pc */

@media screen and (min-width: 780px) {
  .ts2-section-02 {
    width: 800px;
    margin: 0 auto;
    padding: 0 0 92px;
    background: linear-gradient(145deg, #8491a5 0%, #cddaed 100%);
    font-family: var(--main-font);
    box-sizing: border-box;
  }

  .ts2-section-02 *,
  .ts2-section-02 *::before,
  .ts2-section-02 *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  .ts2-section-02 .ts2-inner {
    width: 100%;
    text-align: center;
  }

  .ts2-section-02 .ts2-catch-text {
    font-size: 36px;
    color: #ffffff;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin: 48px auto 34px;
  }

  .ts2-section-02 .ts2-image-stage {
    position: relative;
    width: 748px;
    margin: 0 auto 30px auto;
    transition: opacity 0.2s ease;
  }

  .ts2-section-02 .ts2-layer-fv {
    position: relative;
    z-index: 1;
    width: 748px;
    margin-right: auto;
  }
  .ts2-section-02 .ts2-layer-fv img {
    width: 748px;
    height: auto;
    display: block;
  }

  .ts2-section-02 .ts2-layer-oki {
    position: absolute;
    z-index: 2;
    bottom: -20px;
    right: 30px;
    width: 280px;
  }
  .ts2-section-02 .ts2-layer-oki img {
    width: 100%;
    height: auto;
    display: block;
  }

  .ts2-section-02 .ts2-product-desc {
    color: #333333;
    line-height: 1.5;
    margin-bottom: 20px;
  }
  .ts2-section-02 .ts2-product-name {
    font-size: 24px;
    font-weight: normal;
    letter-spacing: 0.05em;
  }
  .ts2-section-02 .ts2-reference-price {
    font-size: 24px;
    letter-spacing: 0.02em;
  }

  .ts2-section-02 .ts2-price-grid {
    display: table;
    width: auto;
    margin: 0 auto 28px auto;
  }
  .ts2-section-02 .ts2-grid-left,
  .ts2-section-02 .ts2-grid-right {
    display: table-cell;
    vertical-align: middle;
  }
  .ts2-section-02 .ts2-grid-left {
    padding-right: 10px;
  }
  .ts2-section-02 .ts2-discount-icon {
    width: 110px;
    height: auto;
    display: block;
  }

  .ts2-section-02 .ts2-new-price {
    font-size: 96px;
    font-weight: 400;
    color: #a83948;
    font-family: var(--second-font);
    line-height: 1;
    letter-spacing: 0.1em;
  }
  .ts2-section-02 .ts2-new-price_yen {
    font-size: 64px;
  }

  .ts2-section-02 .ts2-action {
    margin-bottom: 25px;
  }
  .ts2-section-02 .ts2-viewmore-btn {
    display: inline-block;
    width: 300px;
    background-color: #423f3f;
    color: #ffffff;
    font-size: 24px;
    padding: 2px 0;
    text-decoration: none;
    transition: opacity 0.2s ease;
  }
  .ts2-section-02 .ts2-viewmore-btn:hover {
    opacity: 0.8;
  }

  .ts2-section-02 .ts2-notes {
    font-size: 15px;
    color: #444444;
    line-height: 1.6;
    text-align: left;
    margin: 0 320px 0 249px;
    letter-spacing: 0.02em;
  }
}
/* section 2  once-a-year price pc */

/* section 3  max30%off sp */
.ts3-section-03 {
  width: calc(800 / 800 * 100vw);
  margin: 0 auto;
  background-color: #f8f3f3;
  font-family: var(--main-font);
  box-sizing: border-box;
}

.ts3-section-03 *,
.ts3-section-03 *::before,
.ts3-section-03 *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.ts3-section-03 .ts3-intro-area {
  text-align: center;
  padding: calc(76 / 800 * 100vw) calc(65 / 800 * 100vw) calc(65 / 800 * 100vw);
}

.ts3-section-03 .ts3-badge-wish {
  display: inline-block;
  background-color: #8e6976;
  color: #ffffff;
  font-family: var(--main-font-family);
  font-size: calc(32 / 800 * 100vw);
  font-weight: 400;
  padding: calc(7 / 800 * 100vw) calc(48 / 800 * 100vw);
  border-radius: calc(70 / 800 * 100vw);
  letter-spacing: 0.08em;
  margin-bottom: calc(13 / 800 * 100vw);
}

.ts3-section-03 .ts3-sub-lead {
  font-family: var(--main-font-family);
  font-size: calc(22 / 800 * 100vw);
  color: #704444;
  letter-spacing: 0.05em;
  margin-bottom: calc(14 / 800 * 100vw);
}

.ts3-section-03 .ts3-star-icon {
  margin: calc(22 / 800 * 100vw) 0;
}
.ts3-section-03 .ts3-star-icon img {
  width: calc(54 / 800 * 100vw);
  height: auto;
  display: inline-block;
  vertical-align: bottom;
}

.ts3-section-03 .ts3-tanzaku-grid {
  display: flex;
  justify-content: space-between;
  width: calc(652 / 800 * 100vw);
}

#ts3-product-card_container_01,
#ts3-product-card_container_02,
#ts3-product-card_container_03 {
  display: block;
  margin-top: calc(-190 / 800 * 100vw);
  padding-top: calc(190 / 800 * 100vw);
}

.ts3-section-03 .ts3-tanzaku-item1 img,
.ts3-section-03 .ts3-tanzaku-item2 img,
.ts3-section-03 .ts3-tanzaku-item3 img {
  transition: opacity 0.2s ease;
}

.ts3-section-03 .ts3-tanzaku-item1 img {
  width: calc(186 / 800 * 100vw);
  height: auto;
  display: block;
}

.ts3-section-03 .ts3-tanzaku-item2 img {
  width: calc(185 / 800 * 100vw);
  height: auto;
  display: block;
}

.ts3-section-03 .ts3-tanzaku-item3 img {
  width: calc(188 / 800 * 100vw);
  height: auto;
  display: block;
}

.ts3-section-03 .ts3-product-list {
  padding: 0 calc(52 / 800 * 100vw) calc(131 / 800 * 100vw)
    calc(40 / 800 * 100vw);
  width: 100%;
}
.ts3-section-03 .ts3-product-card {
  text-align: center;
  margin-bottom: calc(65 / 800 * 100vw);
}
.ts3-section-03 .ts3-product-card:last-child {
  margin-bottom: 0;
}

.ts3-section-03 .ts3-card-star {
  margin-bottom: calc(10 / 800 * 100vw);
}
.ts3-section-03 .ts3-card-star img {
  width: calc(41 / 800 * 100vw);
  height: auto;
  display: inline-block;
  vertical-align: bottom;
}

.ts3-section-03 .ts3-catchphrase {
  font-size: calc(36 / 800 * 100vw);
  color: #704444;
  font-family: var(--third-font-family);
  font-weight: 400;
  margin-bottom: calc(41 / 800 * 100vw);
}

.ts3-section-03 .ts3-card-flex {
  display: flex;
  align-items: center;
}
.ts3-section-03 .ts3-flex-left,
.ts3-section-03 .ts3-flex-right {
  display: table-cell;
  vertical-align: middle;
}

.ts3-section-03 .ts3-flex-left {
  width: 48%;
  padding-right: calc(20 / 800 * 100vw);
}
.ts3-section-03 .ts3-flex-left img {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity 0.2s ease;
}

.ts3-section-03 .ts3-flex-right {
  width: 52%;
  text-align: center;
  padding-left: calc(20 / 800 * 100vw);
}

.ts3-section-03 .ts3-item-title {
  font-family: var(--main-font);
  font-size: calc(24 / 800 * 100vw);
  font-weight: normal;
  color: #000000;
  line-height: 1.45;
  letter-spacing: 0.03em;
}
.ts3-section-03 .ts3-old-price {
  font-family: var(--main-font);
  font-size: calc(24 / 800 * 100vw);
  color: #000000;
  letter-spacing: 0.02em;
  margin-bottom: calc(12 / 800 * 100vw);
}

.ts3-section-03 .ts3-price-subgrid {
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  margin-bottom: calc(20 / 800 * 100vw);
}
.ts3-section-03 .ts3-subgrid-img,
.ts3-section-03 .ts3-subgrid-price {
  display: table-cell;
  vertical-align: middle;
}
.ts3-section-03 .ts3-subgrid-img {
  padding-right: calc(12 / 800 * 100vw);
}
.ts3-section-03 .ts3-subgrid-img img {
  width: calc(100 / 800 * 100vw);
  height: auto;
  display: block;
}
.ts3-section-03 .ts3-new-price {
  font-family: var(--second-font);
  font-size: calc(70 / 800 * 100vw);
  font-weight: 400;
  color: #a83948;
  line-height: 1;
}

.ts3-section-03 .ts3-new-price_yen {
  font-size: calc(50 / 800 * 100vw);
}

.ts3-section-03 .ts3-btn-group {
  display: block;
  height: calc(96 / 800 * 100vw);
}

.ts3-section-03 .ts3-btn-cell {
  display: block;
  width: 100%;
  margin: 0 calc(18 / 800 * 100vw) calc(10 / 800 * 100vw) calc(16 / 800 * 100vw);
}
.ts3-section-03 .ts3-btn-cell:last-child {
  margin: 0 calc(18 / 800 * 100vw) 0;
}

.ts3-section-03 .ts3-size-btn {
  font-family: var(--main-font);
  display: block;
  background-color: #423f3f;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  font-size: calc(24 / 800 * 100vw);
  padding: calc(2 / 800 * 100vw) 0;
  transition: opacity 0.2s ease;
  width: calc(300 / 800 * 100vw);
}

.ts3-section-03 .ts3-btn-single {
  width: 100%;
}
.ts3-section-03 .ts3-viewmore-btn {
  font-family: var(--main-font);
  display: block;
  width: calc(300 / 800 * 100vw);
  background-color: #423f3f;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  font-size: calc(24 / 800 * 100vw);
  padding: calc(2 / 800 * 100vw) 0;
  margin: 0 calc(16 / 800 * 100vw) 0;
  transition: opacity 0.2s ease;
}

.ts3-section-03 .ts3-size-btn:hover,
.ts3-section-03 .ts3-viewmore-btn:hover {
  opacity: 0.8;
}

/* section 3  max30%off sp */

/* section 3  max30%off pc */
@media screen and (min-width: 780px) {
  .ts3-section-03 {
    width: 800px;
    margin: 0 auto;
    background-color: #f8f3f3;
    font-family:
      "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans",
      Meiryo, sans-serif;
    box-sizing: border-box;
  }

  .ts3-section-03 *,
  .ts3-section-03 *::before,
  .ts3-section-03 *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  .ts3-section-03 .ts3-intro-area {
    text-align: center;
    padding: 76px 65px 65px;
  }

  .ts3-section-03 .ts3-badge-wish {
    display: inline-block;
    background-color: #8e6976;
    color: #ffffff;
    font-family: var(--main-font-family);
    font-size: 32px;
    font-weight: 400;
    padding: 7px 48px;
    border-radius: 70px;
    letter-spacing: 0.08em;
    margin-bottom: 13px;
  }

  .ts3-section-03 .ts3-sub-lead {
    font-family: var(--main-font-family);
    font-size: 22px;
    color: #704444;
    letter-spacing: 0.05em;
    margin-bottom: 14px;
  }

  .ts3-section-03 .ts3-star-icon {
    margin: 22px 0;
  }
  .ts3-section-03 .ts3-star-icon img {
    width: 54px;
    height: auto;
    display: inline-block;
    vertical-align: bottom;
  }

  .ts3-section-03 .ts3-tanzaku-grid {
    display: flex;
    justify-content: space-between;
    width: 652px;
  }

  #ts3-product-card_container_01,
  #ts3-product-card_container_02,
  #ts3-product-card_container_03 {
    display: block;
    margin-top: -50px;
    padding-top: 50px;
  }

  .ts3-section-03 .ts3-tanzaku-item1 img,
  .ts3-section-03 .ts3-tanzaku-item2 img,
  .ts3-section-03 .ts3-tanzaku-item3 img {
    transition: opacity 0.2s ease;
  }

  .ts3-section-03 .ts3-tanzaku-item1 img {
    width: 186px;
    height: auto;
    display: block;
  }

  .ts3-section-03 .ts3-tanzaku-item2 img {
    width: 185px;
    height: auto;
    display: block;
  }

  .ts3-section-03 .ts3-tanzaku-item3 img {
    width: 188px;
    height: auto;
    display: block;
  }

  .ts3-section-03 .ts3-product-list {
    padding: 0 52px 131px 40px;
    width: 100%;
  }
  .ts3-section-03 .ts3-product-card {
    text-align: center;
    margin-bottom: 65px;
  }
  .ts3-section-03 .ts3-product-card:last-child {
    margin-bottom: 0;
  }

  .ts3-section-03 .ts3-card-star {
    margin-bottom: 10px;
  }
  .ts3-section-03 .ts3-card-star img {
    width: 41px;
    height: auto;
    display: inline-block;
    vertical-align: bottom;
  }

  .ts3-section-03 .ts3-catchphrase {
    font-size: 36px;
    color: #704444;
    font-family: var(--third-font-family);
    font-weight: 400;
    margin-bottom: 41px;
  }

  .ts3-section-03 .ts3-card-flex {
    display: flex;
    align-items: center;
  }
  .ts3-section-03 .ts3-flex-left,
  .ts3-section-03 .ts3-flex-right {
    display: table-cell;
    vertical-align: middle;
  }

  .ts3-section-03 .ts3-flex-left {
    width: 48%;
    padding-right: 20px;
  }
  .ts3-section-03 .ts3-flex-left img {
    width: 100%;
    height: auto;
    display: block;
    transition: opacity 0.2s ease;
  }

  .ts3-section-03 .ts3-flex-right {
    width: 52%;
    text-align: center;
    padding-left: 20px;
  }

  .ts3-section-03 .ts3-item-title {
    font-family: var(--main-font);
    font-size: 24px;
    font-weight: normal;
    color: #000000;
    line-height: 1.45;
    letter-spacing: 0.03em;
  }
  .ts3-section-03 .ts3-old-price {
    font-family: var(--main-font);
    font-size: 24px;
    color: #000000;
    letter-spacing: 0.02em;
    margin-bottom: 12px;
  }

  .ts3-section-03 .ts3-price-subgrid {
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    margin-bottom: 20px;
  }
  .ts3-section-03 .ts3-subgrid-img,
  .ts3-section-03 .ts3-subgrid-price {
    display: table-cell;
    vertical-align: middle;
  }
  .ts3-section-03 .ts3-subgrid-img {
    padding-right: 12px;
  }
  .ts3-section-03 .ts3-subgrid-img img {
    width: 100px;
    height: auto;
    display: block;
  }
  .ts3-section-03 .ts3-new-price {
    font-family: var(--second-font);
    font-size: 70px;
    font-weight: 400;
    color: #a83948;
    line-height: 1;
  }

  .ts3-section-03 .ts3-new-price_yen {
    font-size: 50px;
  }

  .ts3-section-03 .ts3-btn-group {
    display: block;
    height: 96px;
  }

  .ts3-section-03 .ts3-btn-cell {
    display: block;
    width: 100%;
    margin: 0 18px 16px;
  }
  .ts3-section-03 .ts3-btn-cell:last-child {
    margin: 0 18px 0;
  }

  .ts3-section-03 .ts3-size-btn {
    font-family: var(--main-font);
    display: block;
    background-color: #423f3f;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    font-size: 24px;
    padding: 2px 0;
    transition: opacity 0.2s ease;
    width: 300px;
  }

  .ts3-section-03 .ts3-btn-single {
    width: 100%;
  }
  .ts3-section-03 .ts3-viewmore-btn {
    font-family: var(--main-font);
    display: block;
    width: 300px;
    background-color: #423f3f;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    font-size: 24px;
    padding: 2px 0;
    margin: 0 16px 0;
    transition: opacity 0.2s ease;
  }

  .ts3-section-03 .ts3-size-btn:hover,
  .ts3-section-03 .ts3-viewmore-btn:hover {
    opacity: 0.8;
  }
}
/* section 3  max30%off pc */

/* section 4  must buy item sp */
.ts4-section-04 {
  width: calc(800 / 800 * 100vw);
  margin: 0 auto;
  background-color: #f4fcff;
  font-family: var(--main-font);
  box-sizing: border-box;
}

.ts4-section-04 *,
.ts4-section-04 *::before,
.ts4-section-04 *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.ts4-section-04 .ts4-container {
  width: 100%;
  padding: calc(60 / 800 * 100vw) calc(40 / 800 * 100vw) calc(162 / 800 * 100vw);
}

.ts4-section-04 .ts4-row {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.ts4-section-04 .ts4-margin-bottom {
  margin-bottom: calc(50 / 800 * 100vw);
}

.ts4-section-04 .ts4-col {
  display: table-cell;
  width: 50%;
  vertical-align: top;
}
.ts4-section-04 .ts4-col:first-child {
  padding-right: calc(18 / 800 * 100vw);
}
.ts4-section-04 .ts4-col:last-child {
  padding-left: calc(18 / 800 * 100vw);
}

.ts4-section-04 .ts4-model-img {
  width: 100%;
  margin-bottom: calc(18 / 800 * 100vw);
}
.ts4-section-04 .ts4-model-img img {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity 0.2s ease;
}

.ts4-section-04 .ts4-product-detail {
  text-align: center;
  padding: 0 calc(5 / 800 * 100vw);
}

.ts4-section-04 .ts4-product-name {
  font-family: var(--main-font);
  font-size: calc(24 / 800 * 100vw);
  font-weight: normal;
  color: #000000;
  line-height: 1.45;
  letter-spacing: 0.03em;
  min-height: calc(70 / 800 * 100vw);
  white-space: nowrap;
  margin-bottom: calc(10 / 800 * 100vw);
}

.ts4-section-04 .ts4-old-price {
  font-family: var(--main-font);
  font-size: calc(24 / 800 * 100vw);
  color: #000000;
  letter-spacing: 0.02em;
  margin-bottom: calc(12 / 800 * 100vw);
}

.ts4-section-04 .ts4-price-grid {
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  margin-bottom: calc(18 / 800 * 100vw);
}
.ts4-section-04 .ts4-grid-left,
.ts4-section-04 .ts4-grid-right {
  display: table-cell;
  vertical-align: middle;
}
.ts4-section-04 .ts4-grid-left {
  padding-right: calc(10 / 800 * 100vw);
}
.ts4-section-04 .ts4-discount-icon {
  width: calc(100 / 800 * 100vw);
  height: auto;
  display: block;
}
.ts4-section-04 .ts4-new-price {
  font-family: var(--main-font-family);
  font-size: calc(70 / 800 * 100vw);
  font-weight: 400;
  color: #a83948;
  line-height: 1;
}
.ts4-section-04 .ts4-new-price_yen {
  font-size: calc(48 / 800 * 100vw);
}

.ts4-section-04 .ts4-btn-group {
  font-family: var(--main-font);
  display: flex;
  flex-direction: column;
  width: calc(300 / 800 * 100vw);
  margin: 0 auto;
}
.ts4-section-04 .ts4-btn-cell {
  margin-bottom: calc(10 / 800 * 100vw);
}

.ts4-section-04 .ts4-btn-cell:last-child {
  margin-bottom: 0;
}
.ts4-section-04 .ts4-size-btn {
  display: block;
  background-color: #333333;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  font-size: calc(24 / 800 * 100vw);
  padding: calc(2 / 800 * 100vw) 0;
  transition: opacity 0.2s ease;
}

.ts4-section-04 .ts4-btn-single {
  width: calc(300 / 800 * 100vw);
  margin: 0 auto;
}
.ts4-section-04 .ts4-viewmore-btn {
  font-family: var(--main-font);
  display: block;
  width: 100%;
  background-color: #333333;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  font-size: calc(24 / 800 * 100vw);
  padding: calc(2 / 800 * 100vw) 0;
  transition: opacity 0.2s ease;
}

.ts4-section-04 .ts4-size-btn:hover,
.ts4-section-04 .ts4-viewmore-btn:hover {
  opacity: 0.8;
}

/* section 4  must buy item sp */

/* section 4  must buy item pc */
@media screen and (min-width: 780px) {
  .ts4-section-04 {
    width: 800px;
    margin: 0 auto;
    background-color: #f4fcff;
    font-family:
      "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans",
      Meiryo, sans-serif;
    box-sizing: border-box;
  }

  .ts4-section-04 *,
  .ts4-section-04 *::before,
  .ts4-section-04 *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  .ts4-section-04 .ts4-container {
    width: 100%;
    padding: 60px 40px 162px;
  }

  .ts4-section-04 .ts4-row {
    display: table;
    width: 100%;
    table-layout: fixed;
  }

  .ts4-section-04 .ts4-margin-bottom {
    margin-bottom: 50px;
  }

  .ts4-section-04 .ts4-col {
    display: table-cell;
    width: 50%;
    vertical-align: top;
  }
  .ts4-section-04 .ts4-col:first-child {
    padding-right: 18px;
  }
  .ts4-section-04 .ts4-col:last-child {
    padding-left: 18px;
  }

  .ts4-section-04 .ts4-model-img {
    width: 100%;
    margin-bottom: 18px;
  }
  .ts4-section-04 .ts4-model-img img {
    width: 100%;
    height: auto;
    display: block;
    transition: opacity 0.2s ease;
  }

  .ts4-section-04 .ts4-product-detail {
    text-align: center;
    padding: 0 5px;
  }

  .ts4-section-04 .ts4-product-name {
    font-family: var(--main-font);
    font-size: 24px;
    font-weight: normal;
    color: #000000;
    line-height: 1.45;
    letter-spacing: 0.03em;
    min-height: 70px;
    white-space: nowrap;
    margin-bottom: 10px;
  }

  .ts4-section-04 .ts4-old-price {
    font-family: var(--main-font);
    font-size: 24px;
    color: #000000;
    letter-spacing: 0.02em;
    margin-bottom: 12px;
  }

  .ts4-section-04 .ts4-price-grid {
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    margin-bottom: 18px;
  }
  .ts4-section-04 .ts4-grid-left,
  .ts4-section-04 .ts4-grid-right {
    display: table-cell;
    vertical-align: middle;
  }
  .ts4-section-04 .ts4-grid-left {
    padding-right: 10px;
  }
  .ts4-section-04 .ts4-discount-icon {
    width: 100px;
    height: auto;
    display: block;
  }
  .ts4-section-04 .ts4-new-price {
    font-family: var(--main-font-family);
    font-size: 70px;
    font-weight: 400;
    color: #a83948;
    line-height: 1;
  }
  .ts4-section-04 .ts4-new-price_yen {
    font-size: 48px;
  }

  .ts4-section-04 .ts4-btn-group {
    font-family: var(--main-font);
    display: flex;
    flex-direction: column;
    width: 300px;
    margin: 0 auto;
  }
  .ts4-section-04 .ts4-btn-cell {
    margin-bottom: 10px;
  }

  .ts4-section-04 .ts4-btn-cell:last-child {
    margin-bottom: 0;
  }
  .ts4-section-04 .ts4-size-btn {
    display: block;
    background-color: #333333;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    font-size: 24px;
    padding: 2px 0;
    transition: opacity 0.2s ease;
  }

  .ts4-section-04 .ts4-btn-single {
    width: 300px;
    margin: 0 auto;
  }
  .ts4-section-04 .ts4-viewmore-btn {
    font-family: var(--main-font);
    display: block;
    width: 100%;
    background-color: #333333;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    font-size: 24px;
    padding: 2px 0;
    transition: opacity 0.2s ease;
  }

  .ts4-section-04 .ts4-size-btn:hover,
  .ts4-section-04 .ts4-viewmore-btn:hover {
    opacity: 0.8;
  }
}
/* section 4  must buy item pc */

/* section 5  OUTLET sp */
.ts5-section-05 {
  width: calc(800 / 800 * 100vw);
  margin: 0 auto;
  background-color: #f6eded;
  font-family: var(--main-font);
  box-sizing: border-box;
}

.ts5-section-05 *,
.ts5-section-05 *::before,
.ts5-section-05 *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.ts5-section-05 .ts5-container {
  width: 100%;
  padding: calc(84 / 800 * 100vw) calc(40 / 800 * 100vw) calc(64 / 800 * 100vw);
}

.ts5-section-05 .ts5-featured-item {
  width: 100%;
  margin-bottom: calc(60 / 800 * 100vw);
  text-align: center;
}
.ts5-section-05 .ts5-featured-img {
  width: 100%;
  margin-bottom: calc(20 / 800 * 100vw);
}
.ts5-section-05 .ts5-featured-img img {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity 0.2s ease;
}
.ts5-section-05 .ts5-featured-detail {
  text-align: left;
  padding: 0 calc(5 / 800 * 100vw);
}
.ts5-section-05 .ts5-featured-detail .ts5-product-name {
  font-family: var(--main-font);
  font-size: calc(24 / 800 * 100vw);
  font-weight: 500;
  color: #333333;
  margin-bottom: calc(12 / 800 * 100vw);
  min-height: auto;
}

.ts5-section-05 .ts5-grid-area {
  width: 100%;
}
.ts5-section-05 .ts5-row {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.ts5-section-05 .ts5-margin-bottom-80 {
  margin-bottom: calc(80 / 800 * 100vw);
}

.ts5-section-05 .ts5-col {
  display: table-cell;
  width: 50%;
  vertical-align: top;
}
.ts5-section-05 .ts5-col:first-child {
  padding-right: calc(18 / 800 * 100vw);
}
.ts5-section-05 .ts5-col:last-child {
  padding-left: calc(18 / 800 * 100vw);
}

.ts5-section-05 .ts5-model-img {
  width: 100%;
  margin-bottom: calc(18 / 800 * 100vw);
}
.ts5-section-05 .ts5-model-img img {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity 0.2s ease;
}

.ts5-section-05 .ts5-product-detail {
  text-align: center;
  padding: 0 calc(5 / 800 * 100vw);
}
.ts5-section-05 .ts5-product-name {
  font-family: var(--main-font);
  font-size: calc(24 / 800 * 100vw);
  font-weight: 500;
  color: #333333;
  line-height: 1.45;
  letter-spacing: 0.03em;
  margin-bottom: calc(10 / 800 * 100vw);
  text-align: center;
  min-height: calc(52 / 800 * 100vw);
  white-space: nowrap;
}

.ts5-section-05 .ml_1 {
  margin-left: calc(-10 / 800 * 100vw);
}

.ts5-section-05 .ts5-old-price {
  font-size: calc(14 / 800 * 100vw);
  color: #777777;
  letter-spacing: 0.02em;
  margin-bottom: calc(12 / 800 * 100vw);
}
.ts5-section-05 .ts5-price-grid {
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  margin-bottom: calc(20 / 800 * 100vw);
}
.ts5-section-05 .ts5-grid-left,
.ts5-section-05 .ts5-grid-right {
  display: table-cell;
  vertical-align: middle;
}
.ts5-section-05 .ts5-grid-left {
  padding-right: calc(12 / 800 * 100vw);
}
.ts5-section-05 .ts5-discount-icon {
  width: calc(100 / 800 * 100vw);
  height: auto;
  display: block;
}
.ts5-section-05 .ts5-new-price {
  font-family: var(--second-font);
  font-size: calc(70 / 800 * 100vw);
  font-weight: 400;
  color: #a83948;
  line-height: 1;
}

.ts5-section-05 .ts5-new-price_1column {
  font-family: var(--second-font);
  font-size: calc(96 / 800 * 100vw);
  font-weight: 400;
  color: #a83948;
  line-height: 1;
}

.ts5-section-05 .ts5-new-price_yen {
  font-size: calc(48 / 800 * 100vw);
}

.ts5-section-05 .ts5-btn-group {
  display: flex;
  flex-direction: column;
  width: calc(300 / 800 * 100vw);
  margin: 0 auto;
}
.ts5-section-05 .ts5-btn-cell {
  display: table-cell;
  margin-bottom: calc(15 / 800 * 100vw);
}

.ts5-section-05 .ts5-btn-cell:last-child {
  margin-bottom: 0;
}
.ts5-section-05 .ts5-size-btn,
.ts5-section-05 .ts5-size-btn-1column {
  display: block;
  background-color: #3a3a3a;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  font-size: calc(24 / 800 * 100vw);
  font-weight: 500;
  padding: calc(2 / 800 * 100vw) 0;
  transition: opacity 0.2s ease;
}

.ts5-size-btn-1column {
  width: calc(300 / 800 * 100vw);
  margin: 0 auto;
}

.ts5-section-05 .ts5-btn-single {
  width: calc(300 / 800 * 100vw);
  margin: 0 auto;
}
.ts5-section-05 .ts5-viewmore-btn {
  display: block;
  width: 100%;
  background-color: #3a3a3a;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  font-family: var(--main-font);
  font-size: calc(24 / 800 * 100vw);
  font-weight: 500;
  padding: calc(2 / 800 * 100vw) 0;
  transition: opacity 0.2s ease;
}

.ts5-section-05 .ts5-size-btn:hover,
.ts5-section-05 .ts5-viewmore-btn:hover {
  opacity: 0.8;
}

/* section 5  OUTLET sp */

/* section 5  OUTLET pc */
@media screen and (min-width: 780px) {
  .ts5-section-05 {
    width: 800px;
    margin: 0 auto;
    background-color: #f6eded;
    font-family: var(--main-font);
    box-sizing: border-box;
  }

  .ts5-section-05 *,
  .ts5-section-05 *::before,
  .ts5-section-05 *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  .ts5-section-05 .ts5-container {
    width: 100%;
    padding: 84px 40px 64px;
  }

  .ts5-section-05 .ts5-featured-item {
    width: 100%;
    margin-bottom: 60px;
    text-align: center;
  }
  .ts5-section-05 .ts5-featured-img {
    width: 100%;
    margin-bottom: 20px;
  }
  .ts5-section-05 .ts5-featured-img img {
    width: 100%;
    height: auto;
    display: block;
    transition: opacity 0.2s ease;
  }
  .ts5-section-05 .ts5-featured-detail {
    text-align: left;
    padding: 0 5px;
  }
  .ts5-section-05 .ts5-featured-detail .ts5-product-name {
    font-family: var(--main-font);
    font-size: 24px;
    font-weight: 500;
    color: #333333;
    margin-bottom: 12px;
    min-height: auto;
  }

  .ts5-section-05 .ts5-grid-area {
    width: 100%;
  }
  .ts5-section-05 .ts5-row {
    display: table;
    width: 100%;
    table-layout: fixed;
  }

  .ts5-section-05 .ts5-margin-bottom-80 {
    margin-bottom: 80px;
  }

  .ts5-section-05 .ts5-col {
    display: table-cell;
    width: 50%;
    vertical-align: top;
  }
  .ts5-section-05 .ts5-col:first-child {
    padding-right: 18px;
  }
  .ts5-section-05 .ts5-col:last-child {
    padding-left: 18px;
  }

  .ts5-section-05 .ts5-model-img {
    width: 100%;
    margin-bottom: 18px;
  }
  .ts5-section-05 .ts5-model-img img {
    width: 100%;
    height: auto;
    display: block;
    transition: opacity 0.2s ease;
  }

  .ts5-section-05 .ts5-product-detail {
    text-align: center;
    padding: 0 5px;
  }
  .ts5-section-05 .ts5-product-name {
    font-family: var(--main-font);
    font-size: 24px;
    font-weight: 500;
    color: #333333;
    line-height: 1.45;
    letter-spacing: 0.03em;
    margin-bottom: 10px;
    text-align: center;
    min-height: 52px;
    white-space: nowrap;
  }

  .ts5-section-05 .ml_1 {
    margin-left: -10px;
  }

  .ts5-section-05 .ts5-old-price {
    font-size: 14px;
    color: #777777;
    letter-spacing: 0.02em;
    margin-bottom: 12px;
  }
  .ts5-section-05 .ts5-price-grid {
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    margin-bottom: 20px;
  }
  .ts5-section-05 .ts5-grid-left,
  .ts5-section-05 .ts5-grid-right {
    display: table-cell;
    vertical-align: middle;
  }
  .ts5-section-05 .ts5-grid-left {
    padding-right: 12px;
  }
  .ts5-section-05 .ts5-discount-icon {
    width: 100px;
    height: auto;
    display: block;
  }
  .ts5-section-05 .ts5-new-price {
    font-family: var(--second-font);
    font-size: 70px;
    font-weight: 400;
    color: #a83948;
    line-height: 1;
  }

  .ts5-section-05 .ts5-new-price_1column {
    font-family: var(--second-font);
    font-size: 96px;
    font-weight: 400;
    color: #a83948;
    line-height: 1;
  }

  .ts5-section-05 .ts5-new-price_yen {
    font-size: 48px;
  }

  .ts5-section-05 .ts5-btn-group {
    display: flex;
    flex-direction: column;
    width: 300px;
    margin: 0 auto;
  }
  .ts5-section-05 .ts5-btn-cell {
    display: table-cell;
    margin-bottom: 15px;
  }

  .ts5-section-05 .ts5-btn-cell:last-child {
    margin-bottom: 0;
  }
  .ts5-section-05 .ts5-size-btn,
  .ts5-section-05 .ts5-size-btn-1column {
    display: block;
    background-color: #3a3a3a;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    font-size: 24px;
    font-weight: 500;
    padding: 2px 0;
    transition: opacity 0.2s ease;
  }

  .ts5-size-btn-1column {
    width: 300px;
    margin: 0 auto;
  }

  .ts5-section-05 .ts5-btn-single {
    width: 300px;
    margin: 0 auto;
  }
  .ts5-section-05 .ts5-viewmore-btn {
    display: block;
    width: 100%;
    background-color: #3a3a3a;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    font-family: var(--main-font);
    font-size: 24px;
    font-weight: 500;
    padding: 2px 0;
    transition: opacity 0.2s ease;
  }

  .ts5-section-05 .ts5-size-btn:hover,
  .ts5-section-05 .ts5-viewmore-btn:hover {
    opacity: 0.8;
  }
}
/* section 5  OUTLET pc */

/* @media (hover: hover) {
  .tanabata_sale_2607 .view-more-btn {
    transition: opacity 0.5s ease;
    cursor: pointer;
  }
  .tanabata_sale_2607 .view-more-btn:hover {
    opacity: 0.7 !important;
  }
} */
