/* 固定 */
@charset "utf-8";

/* * {
  outline: 1px solid blue;
} */

@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Noto+Serif+JP:wght@200..900&display=swap");

.sp_only {
  display: block;
}

.pc_only {
  display: none;
}

#footer {
  margin-top: 0;
  padding-top: 80px;
  background-color: #fff;
}

img {
  width: 100%;
  height: auto;
}

.fs-l-main {
  width: 100% !important;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  background: #fff;
  position: relative;
  z-index: 0;
}

.fs-l-pageMain {
  width: 100% !important;
  max-width: 100%;
}

.fs-c-breadcrumb {
  max-width: 800px;
  margin-inline: auto;
}

.main {
  width: 100%;
  text-align: center;
  font-family:
    "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP",
    "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ",
    "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, Arial, Helvetica, Verdana,
    sans-serif;
  --text--color: #3e3021;
  /* 基本テキストカラー */
  --button--color: #745e4d;
  /* ボタンカラー */
  /* カスタムプロパティー 一覧 */
}

.serif {
  font-family:
    "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif,
    "Noto Serif JP", serif;
  font-weight: 400;
}

.seasons {
  font-family: "the-seasons", sans-serif;
  font-weight: 400;
  font-style: normal;
}

/* 固定 */

/* LP */
#mothers_day__2604 {
  width: 100%;
  margin-inline: auto;
  line-height: 1;
  font-family:
    "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP",
    "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ",
    "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, Arial, Helvetica, Verdana,
    sans-serif;
  color: #695656;
  font-feature-settings: "palt";
  --button--color: #521712;
  color: var(--button--color);
}

#mothers_day__2604 .fv-section,
.message-section,
.next-gradient-section,
.mothers26-footcare-bg-wrapper,
.mothers26-gift-container,
.mothers26-line-container,
.mothers26-final-container {
  margin: 0 auto;
  margin-inline: auto;
  background-size: cover;
  /* background-size: contain; */
  background-repeat: no-repeat;
  max-width: 800px;
}
/* コンテンツ max-width 800px center 固定 */

/*
フォント関連
*/

/* ラベルテキスト */
.mothers26-labels,
.mothers26-foot-overlap-labels,
.mothers26-line-labels {
  font-weight: 500;
  font-style: medium;
}

/* SKU サイズ、価格関連 */

.mothers26-p-size,
.mothers26-foot-overlap-size,
/* サイズ */
.mothers26-p-price,
.mothers26-foot-overlap-price,
.mothers26-gift-price
/* 価格 */ {
  font-family: "the-seasons", sans-serif;
  /* Adobe fontから読み込み */
  font-weight: 400;
  font-style: normal;
  font-size: calc(14 * (100vw / 375));
}

/* 円 ￥マーク設定 */

.en_add {
  font-family:
    "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif,
    "Noto Serif JP", serif;
  font-weight: 500;
  font-style: medium;
  font-size: calc(14 * (100vw / 375));
}

/* ボタン */
.check-btn,
.mothers26-check-btn,
.mothers26-foot-overlap-btn,
.mothers26-gift-btn,
.mothers26-line-btn {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-style: medium;
  font-size: calc(15 * (100vw / 375));
}

.fixed-gift-banner {
  position: fixed;
  margin-inline: auto;
  right: 0;
  bottom: calc(70 * (100vw / 375));
  z-index: 9999; /* 確実に一番上に */
  cursor: pointer;
  opacity: 0; /* 最初は隠す */
  pointer-events: none; /* 隠れている時はクリック不可 */
}

.fixed-gift-banner img {
  width: calc(150 * (100vw / 375));
}

.fv-section {
  position: relative;
  z-index: 1;
}

/* 2. メッセージセクション */
.message-section {
  position: relative;
  background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_00/bg_00_1.png"); /* のりしろ付きの画像 */
  background-size: cover;
  background-position: center top;
}

.message-inner {
  position: relative;
  z-index: 3;
  text-align: center;
  padding-top: calc(60 * (100vw / 375));
  padding-bottom: calc(170 * (100vw / 375));
}

.petal-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 4;
  pointer-events: none;
}

#mothers_day__2604 .mainvisual {
  width: 100%;
  max-width: 800px;
  margin-inline: auto;
  position: relative;
}

.next-gradient-section {
  position: relative;
  margin-top: calc(-200 * (100vw / 375));
  background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_01/bg_01_1.png"); /* のりしろ付き */
  background-size: 100% auto;
  background-repeat: no-repeat;
  padding-top: calc(220 * (100vw / 375));
  padding-bottom: calc(50 * (100vw / 375));
  overflow-x: hidden;
}

.card-wrapper {
  position: relative;
  z-index: 18;
  width: calc(375 * (100vw / 375));
  margin: 0 auto;
}

.card-img {
  width: 100%;
  height: auto;
}
.card-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: calc(40 * (100vw / 375)) 0;
  box-sizing: border-box;
}

.card-main-visual {
  position: relative;
  width: calc(280 * (100vw / 375));
  margin-bottom: calc(25 * (100vw / 375));
}

.line-logo {
  width: calc(292 * (100vw / 375));
  padding-top: calc(50 * (100vw / 375));
  padding-bottom: calc(18 * (100vw / 375));
}

.badge-new {
  position: absolute;
  top: calc(50 * (100vw / 375));
  right: calc(-50 * (100vw / 375));
  width: calc(157.81 * (100vw / 375));
  height: auto;
}

/* Checkボタン */
/* #mothers_day__2604 .check-btn a,
.mothers26-check-btn a,
.mothers26-foot-overlap-btn a,
.mothers26-gift-btn a,
.check-btn a:link,
.mothers26-check-btn a:link,
.mothers26-foot-overlap-btn a:link,
.mothers26-gift-btn a:link,
.check-btn a:visited,
.mothers26-check-btn a:visited,
.mothers26-foot-overlap-btn a:visited,
.mothers26-gift-btn a:visited {
  color: #ffffff !important;
} */

.check-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--button--color);
  color: #fff !important;
  text-decoration: none;
  width: calc(118 * (100vw / 375));
  height: calc(33 * (100vw / 375));
  font-size: calc(15 * (100vw / 375));
  transition: opacity 0.3s;
}

.check-btn:hover,
.mothers26-check-btn:hover,
.mothers26-foot-overlap-btn:hover,
.mothers26-gift-btn:hover,
.mothers26-line-btn:hover {
  opacity: 0.8;
}

.card-flower {
  position: absolute;
  top: calc(-20 * (100vw / 375));
  left: calc(-15 * (100vw / 375));
  width: calc(156.36 * (100vw / 375));
  height: auto;
  z-index: 25;
  pointer-events: none;
  opacity: 0;
}

.bottom-decoration {
  position: absolute;
  bottom: calc(-50 * (100vw / 375));
  right: calc(0 * (100vw / 375));
  width: calc(375 * (100vw / 375));
  z-index: 5;
  pointer-events: none;
}

/* .bottom-deco-img_01,
.bottom-deco-img_02 {
  opacity: 0;
} */

.sec02_category-group-wrapper {
  position: relative;
  width: 100%;
  height: auto;
  background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_02/bg_02_01.png"); /* 長い背景画像 */
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  overflow: hidden;
}

.deco-flower {
  position: absolute;
  z-index: 5;
  pointer-events: none;
}
.deco-f-left01 {
  top: calc(1200 * (100vw / 375));
  left: calc(-50 * (100vw / 375));
  width: calc(200 * (100vw / 375));
}

.category-title-img {
  text-align: center;
  padding-top: calc(70 * (100vw / 375));
  margin-bottom: calc(40 * (100vw / 375));
}
.category-title-img img {
  width: calc(280 * (100vw / 375));
  display: inline-block;
}

.mothers26-footcare-bg-wrapper {
  width: 100%;
  background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/foot_case_bg_01.png");
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  margin-top: calc(-400 * (100vw / 375));
  padding-top: calc(400 * (100vw / 375));
  padding-bottom: calc(80 * (100vw / 375));
  overflow: hidden;
  position: relative;
}

.mothers26-category-group-container {
  position: relative;
  width: 100%;
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
}

.mothers26-cat-title-img {
  text-align: center;
  padding-top: calc(36 * (100vw / 375));
  margin-bottom: calc(30 * (100vw / 375));
}
.mothers26-cat-title-img img {
  width: calc(232 * (100vw / 375));
  height: auto;
  display: inline-block;
}

.mothers26-card {
  position: relative;
  margin: 0 auto 0;
  background: transparent;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 10;
}

.container_img__01 {
  width: calc(325 * (100vw / 375));
}

.container_img__02 {
  width: calc(325 * (100vw / 375));
}

.mothers26-pos-left {
  margin-left: 0;
  margin-right: auto;
}

.mothers26-pos-right {
  margin-left: auto;
  margin-right: 0;
}

.mothers26-visual {
  width: 100%;
}
.mothers26-btn-area {
  display: flex;
  justify-content: center;
}

.mothers26-visual {
  position: relative;
  width: 100%;
}

.mothers26-main-img,
.mothers26-foot-overlap-img,
.mothers26-foot-overlap-row2 {
  opacity: 0;
}

.mothers26-main-img {
  width: 100%;
  height: auto;
  display: block;
}

.img__01 img,
.img__02 img {
  width: calc(325 * (100vw / 375));
}

.mothers26-labels {
  position: absolute;
  list-style: none;
  padding: 0;
  margin: 0;
  z-index: 5;
}

.left_li_01 {
  right: calc(-25 * (100vw / 375));
  bottom: calc(15 * (100vw / 375));
}

.right_li_01 {
  left: calc(-35 * (100vw / 375));
  bottom: calc(15 * (100vw / 375));
}

.mothers26-labels li {
  background: rgba(255, 255, 255, 0.95);
  margin-bottom: calc(6 * (100vw / 375));
  padding: calc(6 * (100vw / 375)) calc(12 * (100vw / 375));
  font-size: calc(13 * (100vw / 375));
  color: #4a1515;
  text-align: right;
  white-space: nowrap;
}

.mothers26-labels li:last-child {
  margin-bottom: 0;
}

.right_li_01 li {
  text-align: left;
}

.mothers26-info {
  text-align: center;
  margin-top: calc(30 * (100vw / 375));
  color: #4a1515;
  width: 100%;
}
.mothers26-p-name {
  font-size: calc(14 * (100vw / 375));
  line-height: 1.5;
  margin-bottom: calc(16 * (100vw / 375));
  font-weight: 500;
  font-style: medium;
}
.mothers26-p-size {
  margin-bottom: calc(4 * (100vw / 375));
}
.mothers26-p-price {
  margin-bottom: calc(8 * (100vw / 375));
}

.mothers26-color-chips img {
  height: auto;
}

.chips__color_01 img {
  width: calc(140 * (100vw / 375));
}

.chips__color_02 img {
  width: calc(40 * (100vw / 375));
}

.chips__color_03 img {
  width: calc(70 * (100vw / 375));
}

.chips__color_04 img {
  width: calc(70 * (100vw / 375));
}

.chips__color_05 img {
  width: calc(40 * (100vw / 375));
}

.chips__color_06 img {
  width: calc(25 * (100vw / 375));
}

.mothers26-btn-area {
  margin-top: calc(24 * (100vw / 375));
  padding-bottom: calc(64 * (100vw / 375));
  width: 100%;
  display: flex;
  justify-content: center;
}

.mothers26-check-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--button--color);
  color: #fff !important;
  text-decoration: none;
  width: calc(118 * (100vw / 375));
  height: calc(33 * (100vw / 375));
  font-size: calc(15 * (100vw / 375));
  letter-spacing: 0.05em;
  transition: opacity 0.3s;
}

.mothers26-foot-overlap-container {
  width: 100%;
  overflow: hidden;
  margin-top: -1px;
}

.mothers26-foot-overlap-inner {
  width: 100%;
  padding: 0;
}

.mothers26-foot-overlap-cat-title {
  text-align: center;
  padding: calc(37 * (100vw / 375)) 0 calc(35 * (100vw / 375));
}

.mothers26-foot-overlap-cat-title img {
  width: calc(280 * (100vw / 375));
  height: auto;
}

.mothers26-foot-overlap-card {
  width: 100%;
  position: relative;
  margin-bottom: calc(80 * (100vw / 375));
}

.mothers26-foot-overlap-row1 {
  width: 100%;
  display: flex;
  justify-content: flex-start;
}
.mothers26-foot-overlap-main-box {
  position: relative;
  width: calc(325 * (100vw / 375));
}

.mothers26-foot-overlap-row2 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: calc(345 * (100vw / 375));
  margin: calc(-75 * (100vw / 375)) 0 0 auto;
  position: relative;
  z-index: 10;
}

.mothers26-foot-overlap-col-left {
  width: calc(140 * (100vw / 375));
  display: flex;
  flex-direction: column;
  margin-top: calc(40 * (100vw / 375));
}
.mothers26-foot-overlap-circle {
  width: calc(130 * (100vw / 375));
  height: calc(130 * (100vw / 375));
  overflow: hidden;
}
.mothers26-foot-overlap-circle img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mothers26-foot-overlap-sub-text {
  margin-top: calc(14 * (100vw / 375));
  text-align: left;
  font-size: calc(11 * (100vw / 375));
  line-height: 1.6;
  color: #4a1515;
}

.mothers26-foot-overlap-col-right {
  width: calc(185 * (100vw / 375));
  margin-top: calc(49 * (100vw / 375));
}

.mothers26-foot-overlap-middle-box {
  position: relative;
  width: 100%;
}

.mothers26-foot-overlap-labels {
  position: absolute;
  top: calc(135 * (100vw / 375));
  right: calc(-33 * (100vw / 375));
  list-style: none;
  z-index: 5;
  overflow: visible;
}
.mothers26-foot-overlap-labels li {
  background: rgba(255, 255, 255, 0.95);
  margin-bottom: calc(4 * (100vw / 375));
  padding: calc(6 * (100vw / 375)) calc(12 * (100vw / 375));
  font-size: calc(13 * (100vw / 375));
  white-space: nowrap;
}

.mothers26-foot-overlap-badge-long {
  position: absolute;
  left: calc(30 * (100vw / 375));
  bottom: calc(25 * (100vw / 375));
  width: calc(95 * (100vw / 375));
}
.mothers26-foot-overlap-badge-middle {
  position: absolute;
  right: calc(10 * (100vw / 375));
  bottom: calc(-25 * (100vw / 375));
  width: calc(95 * (100vw / 375));
}

.mothers26-foot-overlap-info {
  text-align: center;
  margin-top: calc(45 * (100vw / 375));
  color: #4a1515;
}
.mothers26-foot-overlap-name {
  font-size: calc(14 * (100vw / 375));
  line-height: 1.5;
}
.mothers26-foot-overlap-price {
  margin: 10px 0;
}
.mothers26-foot-overlap-chips img {
  width: calc(85 * (100vw / 375));
}

.mothers26-foot-overlap-btn-wrap {
  margin-top: calc(25 * (100vw / 375));
}

.mothers26-foot-overlap-btn {
  background: var(--button--color);
  color: #fff !important;
  width: calc(118 * (100vw / 375));
  height: calc(33 * (100vw / 375));
  font-size: calc(15 * (100vw / 375));
  letter-spacing: 0.05em;
  transition: opacity 0.3s;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  font-weight: bold;
}

.mothers26-foot-overlap-img {
  width: 100%;
  height: auto;
  display: block;
}

.mothers26-gift-container {
  position: relative;
  width: 100%;
  padding: calc(60 * (100vw / 375)) 0;
  background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_03/gift_wrapping_bg.png");
  background-size: cover;
  background-position: center;
  display: flex;
  justify-content: center;
  overflow: visible;
}

.mothers26-gift-flower {
  position: absolute;
  top: calc(50 * (100vw / 375));
  left: calc(10 * (100vw / 375));
  width: calc(140 * (100vw / 375));
  z-index: 20;
  pointer-events: none;
  opacity: 0;
}
.mothers26-gift-flower img {
  width: 100%;
  height: auto;
}

.mothers26-gift-frame {
  position: relative;
  width: calc(345 * (100vw / 375));
  padding: calc(50 * (100vw / 375)) 0;
  background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_03/gift_wrapping_frame.png");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 10;
  text-align: center;
}

.mothers26-gift-title {
  margin: calc(20 * (100vw / 375)) auto calc(25 * (100vw / 375));
  width: calc(204 * (100vw / 375));
}

.mothers26-gift-title img {
  width: 100%;
  height: auto;
}

.mothers26-gift-lead {
  margin-bottom: calc(30 * (100vw / 375));
}

.mothers26-gift-lead p {
  font-size: calc(13 * (100vw / 375));
  line-height: 1.8;
  color: #4a1515;
  margin-bottom: 1em;
}

.mothers26-gift-visual {
  width: calc(280 * (100vw / 375));
  margin: 0 auto calc(25 * (100vw / 375));
  overflow: hidden;
}
.mothers26-gift-visual img {
  width: 100%;
  height: auto;
  display: block;
}

.mothers26-gift-info {
  margin-bottom: calc(25 * (100vw / 375));
  color: #4a1515;
}
.mothers26-gift-item-name {
  font-size: calc(14 * (100vw / 375));
  margin-bottom: calc(9 * (100vw / 375));
}

.mothers26-gift-action {
  display: flex;
  justify-content: center;
  padding-bottom: calc(40 * (100vw / 375));
}
.mothers26-gift-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--button--color);
  color: #fff !important;
  text-decoration: none;
  width: calc(118 * (100vw / 375));
  height: calc(33 * (100vw / 375));
  font-size: calc(15 * (100vw / 375));
}

.mothers26-line-container {
  position: relative;
  width: 100%;
  padding-bottom: calc(120 * (100vw / 375));
  background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_04/line_gift_end_img_bg.png");
  background-size: cover;
  overflow: hidden;
}

.mothers26-line-frame {
  position: relative;
  width: calc(375 * (100vw / 375));
  margin: 0 auto;
  padding: calc(120 * (100vw / 375)) calc(15 * (100vw / 375));
  background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_04/line_gift_end_img_frame.png");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: 5;
}

.mothers26-line-title {
  text-align: center;
  margin-bottom: calc(20 * (100vw / 375));
}
.mothers26-line-title img {
  width: calc(300 * (100vw / 375));
}

.mothers26-line-contents {
  position: relative;
  width: 100%;
  margin-bottom: calc(30 * (100vw / 375));
}

.mothers26-line-main-img {
  position: relative;
  width: calc(230 * (100vw / 375));
  overflow: visible;
}

.mothers26-line-main-img img {
  width: 100%;
  display: block;
}

.mothers26-line-labels {
  position: absolute;
  top: calc(40 * (100vw / 375));
  right: calc(-85 * (100vw / 375));
  list-style: none;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: auto;
}

.mothers26-line-labels li {
  background: #fff;
  color: #4a1515;
  font-size: calc(13 * (100vw / 375));
  padding: calc(6 * (100vw / 375)) calc(12 * (100vw / 375));
  margin-bottom: 5px;
  white-space: nowrap;
  display: block;
  text-align: left;
}

.mothers26-line-labels li:nth-child(odd) {
  align-self: flex-start;
  margin-left: 0;
  margin-left: auto;
}

.mothers26-line-labels li:nth-child(even) {
  align-self: flex-start;
  margin-left: 0;
  margin-left: auto;
}

.mothers26-line-sub-img {
  position: relative;
  width: calc(182 * (100vw / 375));
  margin-left: calc(148 * (100vw / 375));
  margin-top: calc(-110 * (100vw / 375));
  overflow: hidden;
  z-index: 11;
}
.mothers26-line-sub-img img {
  width: 100%;
  display: block;
}

.mothers26-line-note {
  font-size: calc(10 * (100vw / 375));
  line-height: 1.9;
  color: #8c6b6b;
  text-align: center;
  margin-bottom: calc(25 * (100vw / 375));
}

.mothers26-line-action {
  display: flex;
  justify-content: center;
}
.mothers26-line-btn {
  background: var(--button--color);
  color: #fff !important;
  width: calc(148 * (100vw / 375));
  height: calc(37 * (100vw / 375));
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  font-size: calc(15 * (100vw / 375));
}

.line_btn_txt {
  font-family:
    "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP",
    "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ",
    "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, Arial, Helvetica, Verdana,
    sans-serif;
  font-weight: 500;
  font-size: medium;
  font-size: calc(12 * (100vw / 375));
  padding-right: calc(2 * (100vw / 375));
  padding-top: calc(1.5 * (100vw / 375));
}

.mothers26-line-flower-tr {
  position: absolute;
  top: 0;
  right: calc(-65 * (100vw / 375));
  width: calc(160 * (100vw / 375));
  z-index: 10;
  overflow: hidden;
}

.mothers26-line-flower-bl {
  position: absolute;
  bottom: calc(85 * (100vw / 375));
  left: 0;
  width: calc(375 * (100vw / 375));
  z-index: 10;
}

.mothers26-line-flower-tr img,
.mothers26-line-flower-bl img {
  width: 100%;
  height: auto;
}

.mothers26-final-container {
  width: 100%;
  background-color: #fdf5f0;
  overflow: hidden;
}

.mothers26-final-inner {
  width: 100%;
  display: flex;
  justify-content: center;
}

.mothers26-final-img {
  width: 100%;
  height: auto;
  display: block;
  opacity: 0;
}

#mothers_day__2604 #section-intro {
  position: relative;
  width: 100%;
  max-width: 800px;
  height: calc(661 * (100vw / 375));
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  margin-inline: auto;
}

#mothers_day__2604 .section_grad-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_00/bg_00_1.png");
}

#mothers_day__2604 .petal-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 30;
  pointer-events: none;
}

#mothers_day__2604 .petal {
  position: absolute;
  height: auto;
  opacity: 1; /* 最初は非表示 */
}

#mothers_day__2604 .wid_01 {
  width: calc(146 * (100vw / 375));
  top: calc(10 * (100vw / 375));
  right: calc(-35 * (100vw / 375));
}

#mothers_day__2604 .wid_02 {
  width: calc(36 * (100vw / 375));
  top: calc(180 * (100vw / 375));
  left: calc(25 * (100vw / 375));
}

#mothers_day__2604 .wid_03 {
  width: calc(150 * (100vw / 375));
  bottom: calc(-15 * (100vw / 375));
  left: calc(-45 * (100vw / 375));
}

#mothers_day__2604 .wid_04 {
  width: calc(38 * (100vw / 375));
  bottom: calc(120 * (100vw / 375));
  right: calc(15 * (100vw / 375));
}

#mothers_day__2604 .wid_05 {
  width: calc(31.87 * (100vw / 375));
  bottom: calc(45 * (100vw / 375));
  right: calc(65 * (100vw / 375));
}

#mothers_day__2604 #section-01 {
  position: relative;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  width: 100%;
  max-width: 800px;
  height: calc(624 * (100vw / 375));
  margin-inline: auto;
}

#mothers_day__2604 .line-gift_present_bg_1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_01/bg_01.png");
  transform: translateY(-340px);
}

#mothers_day__2604 .section-intro__blur {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  z-index: 1;
  pointer-events: none;
}

#mothers_day__2604 .about_title--01 {
  position: relative;
  padding-top: calc(40 * (100vw / 375));
  text-align: center;
  z-index: 2;
}

#mothers_day__2604 .message-text {
  color: var(--text--color);
  font-size: calc(12 * (100vw / 375));
  font-weight: 500;
  line-height: 2.5;
}

#mothers_day__2604 .message-text {
  padding-top: calc(28 * (100vw / 375));
}

#mothers_day__2604 .about_title--01,
.morning_routine__info--01 p {
  color: var(--text--color);
  font-size: calc(12 * (100vw / 375));
  font-weight: 500;
  line-height: 2;
}

#mothers_day__2604 .about_title--01,
.airlange__info--01 p {
  color: var(--text--color);
  font-size: calc(12 * (100vw / 375));
  font-weight: 500;
  line-height: 2;
}

#mothers_day__2604 .about_title--01,
.leene__info--01 p {
  color: var(--text--color);
  font-size: calc(12 * (100vw / 375));
  font-weight: 500;
  line-height: 2.5;
}

#mothers_day__2604 .about_title--01 {
  padding-top: calc(40 * (100vw / 375));
}
#mothers_day__2604 .about_title--01:last-child {
  padding-top: 0;
}

#mothers_day__2604 .title_path--01 {
  padding-top: calc(40 * (100vw / 375));
  margin-inline: auto;
}

#mothers_day__2604 .title_path--01 img {
  width: calc(1 * (100vw / 375));
  height: calc(50 * (100vw / 375));
}

#mothers_day__2604 .about--list {
  padding-top: calc(300 * (100vw / 375));
  padding-bottom: calc(52 * (100vw / 375));
}

#mothers_day__2604 .about_link--01 {
  margin-bottom: calc(64 * (100vw / 375));
}

#mothers_day__2604 .about_link--01 .about__anchor {
  display: grid;
  width: calc(356 * (100vw / 375));
  margin-inline: auto;
  grid-template-columns: repeat(3, calc(116 * (100vw / 375)));
  justify-content: space-between;
}

#mothers_day__2604 .about_link--01 .about__anchor .anchor__button.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateX(-20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.mothers26-labels,
.mothers26-line-labels,
.mothers26-foot-overlap-labels {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  list-style: none;
  padding: 0;
  margin: 0;
  z-index: 10;
}

.is-right-align {
  align-items: flex-end;
}

.mothers26-labels li,
.mothers26-line-labels li,
.mothers26-foot-overlap-labels li {
  background: #fff;
  color: #4a1515;
  font-size: calc(11 * (100vw / 375));
  padding: calc(6 * (100vw / 375)) calc(12 * (100vw / 375));
  margin-bottom: calc(6 * (100vw / 375)) calc(12 * (100vw / 375));
  white-space: nowrap;
  display: block;
  width: auto;
  text-align: left;
}

.mothers26-labels li:last-child,
.mothers26-line-labels li:last-child,
.mothers26-foot-overlap-labels li:last-child {
  margin-bottom: 0;
}

.is-right-align li {
  text-align: right;
}

.mothers26-flower-decor {
  position: absolute;
  z-index: 100;
  pointer-events: none;
  opacity: 0;
}

.bg__flower_01 img {
  width: calc(120.81 * (100vw / 375));
}

.bg__flower_02 img {
  width: calc(113.14 * (100vw / 375));
}

.bg__flower_03 img {
  width: calc(134 * (100vw / 375));
}

.bg__flower_04 img {
  width: calc(127.06 * (100vw / 375));
}

.flower-top-right {
  top: calc(-60 * (100vw / 375));
  right: calc(-45 * (100vw / 375));
  overflow: hidden;
}

.flower-bottom-left {
  bottom: calc(-10 * (100vw / 375));
  left: calc(-100 * (100vw / 375));
  overflow: hidden;
}

.flower-bottom-right {
  bottom: calc(-45 * (100vw / 375));
  right: calc(-40 * (100vw / 375));
  overflow: hidden;
}

.flower-top-right-info {
  top: calc(-50 * (100vw / 375));
  right: calc(-50 * (100vw / 375));
}

/* 755 * (800 / 375) = 1610.6px */
@media screen and (min-width: 780px) {
  #mothers_day__2604 #section-intro {
    height: calc(754 * (800px / 375));
  }
  /* 記述例 */

  /*
フォント関連
*/

  /* SKU サイズ、価格関連 */

  .mothers26-p-size,
.mothers26-foot-overlap-size,
/* サイズ */
.mothers26-p-price,
.mothers26-foot-overlap-price,
.mothers26-gift-price
/* 価格 */ {
    font-size: calc(14 * (800px / 375));
  }

  /* 円 ￥マーク設定 */

  .en_add {
    font-size: calc(14 * (800px / 375));
  }

  /* ボタン */
  .check-btn,
  .mothers26-check-btn,
  .mothers26-foot-overlap-btn,
  .mothers26-gift-btn,
  .mothers26-line-btn {
    font-size: calc(15 * (800px / 375));
  }

  .fixed-gift-banner {
    bottom: calc(70 * (800px / 375));
  }

  .fixed-gift-banner img {
    width: calc(75 * (800px / 375));
  }

  .message-inner {
    padding-top: calc(60 * (800px / 375));
    padding-bottom: calc(60 * (800px / 375));
  }
  .next-gradient-section {
    margin-top: calc(-200 * (800px / 375));
    padding-top: calc(220 * (800px / 375));
    padding-bottom: calc(50 * (800px / 375));
  }

  .card-wrapper {
    width: calc(375 * (800px / 375));
  }

  .card-content {
    padding: calc(40 * (800px / 375)) 0;
  }

  .card-main-visual {
    position: relative;
    width: calc(280 * (800px / 375));
    margin-bottom: calc(25 * (800px / 375));
  }

  .line-logo {
    width: calc(292 * (800px / 375));
    padding-top: calc(50 * (800px / 375));
    padding-bottom: calc(18 * (800px / 375));
  }

  .badge-new {
    top: calc(50 * (800px / 375));
    right: calc(-50 * (800px / 375));
    width: calc(157.81 * (800px / 375));
  }

  .check-btn {
    width: calc(118 * (800px / 375));
    height: calc(33 * (800px / 375));
    font-size: calc(15 * (800px / 375));
  }

  .card-flower {
    top: calc(-20 * (800px / 375));
    left: calc(-15 * (800px / 375));
    width: calc(156.36 * (800px / 375));
  }

  .bottom-decoration {
    bottom: calc(-50 * (800px / 375));
    right: calc(0 * (800px / 375));
    width: calc(375 * (800px / 375));
  }

  .sec02_category-group-wrapper {
    position: relative;
    width: 100%;
    height: auto;
    background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_02/bg_02_01.png"); /* 長い背景画像 */
    background-size: 100% auto;
    background-position: top center;
    background-repeat: no-repeat;
    overflow: hidden;
  }

  .deco-f-left01 {
    top: calc(1200 * (800px / 375));
    left: calc(-50 * (800px / 375));
    width: calc(200 * (800px / 375));
  }

  .category-title-img {
    padding-top: calc(70 * (800px / 375));
    margin-bottom: calc(40 * (800px / 375));
  }
  .category-title-img img {
    width: calc(280 * (800px / 375));
  }

  .mothers26-footcare-bg-wrapper {
    width: 100%;
    background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/foot_case_bg_01.png");
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    margin-top: calc(-400 * (800px / 375));
    padding-top: calc(400 * (800px / 375));
    padding-bottom: calc(80 * (800px / 375));
    overflow: hidden;
    position: relative;
  }

  .mothers26-category-group-container {
    position: relative;
    width: 100%;
    background-size: 100% auto;
    background-position: top center;
    background-repeat: no-repeat;
  }

  .mothers26-cat-title-img {
    text-align: center;
    padding-top: calc(36 * (800px / 375));
    margin-bottom: calc(30 * (800px / 375));
  }
  .mothers26-cat-title-img img {
    width: calc(232 * (800px / 375));
    height: auto;
    display: inline-block;
  }

  .mothers26-card {
    position: relative;
    margin: 0 auto 0;
    background: transparent;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 10;
  }

  .container_img__01 {
    width: calc(325 * (800px / 375));
  }

  .container_img__02 {
    width: calc(325 * (800px / 375));
  }

  .mothers26-pos-left {
    margin-left: 0;
    margin-right: auto;
  }

  .mothers26-pos-right {
    margin-left: auto;
    margin-right: 0;
  }

  .mothers26-visual {
    width: 100%;
  }
  .mothers26-btn-area {
    display: flex;
    justify-content: center;
  }

  .mothers26-visual {
    position: relative;
    width: 100%;
  }
  .mothers26-main-img {
    width: 100%;
    height: auto;
    display: block;
  }

  .img__01 img,
  .img__02 img {
    width: calc(325 * (800px / 375));
  }

  .mothers26-labels {
    position: absolute;
    list-style: none;
    padding: 0;
    margin: 0;
    z-index: 5;
  }

  .left_li_01 {
    right: calc(-25 * (800px / 375));
    bottom: calc(15 * (800px / 375));
  }

  .right_li_01 {
    left: calc(-35 * (800px / 375));
    bottom: calc(15 * (800px / 375));
  }

  .mothers26-labels li {
    background: rgba(255, 255, 255, 0.95);
    margin-bottom: calc(6 * (800px / 375));
    padding: calc(6 * (800px / 375)) calc(12 * (800px / 375));
    font-size: calc(13 * (800px / 375));
    color: #4a1515;
    text-align: right;
    white-space: nowrap;
  }

  .mothers26-labels li:last-child {
    margin-bottom: 0;
  }

  .right_li_01 li {
    text-align: left;
  }

  .mothers26-info {
    text-align: center;
    margin-top: calc(30 * (800px / 375));
    color: #4a1515;
    width: 100%;
  }
  .mothers26-p-name {
    font-size: calc(14 * (800px / 375));
    line-height: 1.5;
    margin-bottom: calc(16 * (800px / 375));
    font-weight: 500;
    font-style: medium;
  }
  .mothers26-p-size {
    margin-bottom: calc(4 * (800px / 375));
  }
  .mothers26-p-price {
    margin-bottom: calc(8 * (800px / 375));
  }

  .mothers26-color-chips img {
    height: auto;
  }

  .chips__color_01 img {
    width: calc(140 * (800px / 375));
  }

  .chips__color_02 img {
    width: calc(40 * (800px / 375));
  }

  .chips__color_03 img {
    width: calc(70 * (800px / 375));
  }

  .chips__color_04 img {
    width: calc(70 * (800px / 375));
  }

  .chips__color_05 img {
    width: calc(40 * (800px / 375));
  }

  .chips__color_06 img {
    width: calc(25 * (800px / 375));
  }

  .mothers26-btn-area {
    margin-top: calc(24 * (800px / 375));
    padding-bottom: calc(64 * (800px / 375));

    width: 100%;
    display: flex;
    justify-content: center;
  }

  .mothers26-check-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--button--color);
    color: #fff !important;
    text-decoration: none;
    width: calc(118 * (800px / 375));
    height: calc(33 * (800px / 375));
    font-size: calc(15 * (800px / 375));
    letter-spacing: 0.05em;
    transition: opacity 0.3s;
  }

  .mothers26-foot-overlap-container {
    width: 100%;
    overflow: hidden;
    margin-top: -1px;
  }

  .mothers26-foot-overlap-inner {
    width: 100%;
    padding: 0;
  }

  .mothers26-foot-overlap-cat-title {
    text-align: center;
    padding: calc(37 * (800px / 375)) 0 calc(35 * (800px / 375));
  }

  .mothers26-foot-overlap-cat-title img {
    width: calc(280 * (800px / 375));
    height: auto;
  }

  .mothers26-foot-overlap-card {
    width: 100%;
    position: relative;
    margin-bottom: calc(80 * (800px / 375));
  }

  .mothers26-foot-overlap-row1 {
    width: 100%;
    display: flex;
    justify-content: flex-start;
  }
  .mothers26-foot-overlap-main-box {
    position: relative;
    width: calc(325 * (800px / 375));
  }

  .mothers26-foot-overlap-row2 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: calc(345 * (800px / 375));
    margin: calc(-75 * (800px / 375)) 0 0 auto;
    position: relative;
    z-index: 10;
  }

  .mothers26-foot-overlap-col-left {
    width: calc(140 * (800px / 375));
    display: flex;
    flex-direction: column;
    margin-top: calc(40 * (800px / 375));
  }
  .mothers26-foot-overlap-circle {
    width: calc(130 * (800px / 375));
    height: calc(130 * (800px / 375));
    overflow: hidden;
  }
  .mothers26-foot-overlap-circle img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .mothers26-foot-overlap-sub-text {
    margin-top: calc(14 * (800px / 375));
    text-align: left;
    font-size: calc(11 * (800px / 375));
    line-height: 1.6;
    color: #4a1515;
  }

  .mothers26-foot-overlap-col-right {
    width: calc(185 * (800px / 375));
    margin-top: calc(49 * (800px / 375));
  }

  .mothers26-foot-overlap-middle-box {
    position: relative;
    width: 100%;
  }

  .mothers26-foot-overlap-labels {
    position: absolute;
    top: calc(135 * (800px / 375));
    right: calc(-33 * (800px / 375));
    list-style: none;
    z-index: 5;
    overflow: visible;
  }
  .mothers26-foot-overlap-labels li {
    background: rgba(255, 255, 255, 0.95);
    margin-bottom: calc(4 * (800px / 375));
    padding: calc(6 * (800px / 375)) calc(12 * (800px / 375));
    font-size: calc(13 * (800px / 375));
    white-space: nowrap;
  }

  .mothers26-foot-overlap-badge-long {
    position: absolute;
    left: calc(30 * (800px / 375));
    bottom: calc(25 * (800px / 375));
    width: calc(95 * (800px / 375));
  }
  .mothers26-foot-overlap-badge-middle {
    position: absolute;
    right: calc(10 * (800px / 375));
    bottom: calc(-25 * (800px / 375));
    width: calc(95 * (800px / 375));
  }

  .mothers26-foot-overlap-info {
    text-align: center;
    margin-top: calc(45 * (800px / 375));
    color: #4a1515;
  }
  .mothers26-foot-overlap-name {
    font-size: calc(14 * (800px / 375));
    line-height: 1.5;
  }
  .mothers26-foot-overlap-price {
    margin: 10px 0;
  }
  .mothers26-foot-overlap-chips img {
    width: calc(85 * (800px / 375));
  }

  .mothers26-foot-overlap-btn-wrap {
    margin-top: calc(25 * (800px / 375));
  }

  .mothers26-foot-overlap-btn {
    background: var(--button--color);
    color: #fff !important;
    width: calc(118 * (800px / 375));
    height: calc(33 * (800px / 375));
    font-size: calc(15 * (800px / 375));
    letter-spacing: 0.05em;
    transition: opacity 0.3s;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    font-weight: bold;
  }

  .mothers26-foot-overlap-img {
    width: 100%;
    height: auto;
    display: block;
  }

  .mothers26-gift-container {
    position: relative;
    width: 100%;
    padding: calc(60 * (800px / 375)) 0;
    background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_03/gift_wrapping_bg.png");
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: center;
    overflow: visible;
  }

  .mothers26-gift-flower {
    position: absolute;
    top: calc(50 * (800px / 375));
    left: calc(10 * (800px / 375));
    width: calc(140 * (800px / 375));
    z-index: 20;
    pointer-events: none;
  }
  .mothers26-gift-flower img {
    width: 100%;
    height: auto;
  }

  .mothers26-gift-frame {
    position: relative;
    width: calc(345 * (800px / 375));
    padding: calc(50 * (800px / 375)) 0;
    background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_03/gift_wrapping_frame.png");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    z-index: 10;
    text-align: center;
  }

  .mothers26-gift-title {
    margin: calc(20 * (800px / 375)) auto calc(25 * (800px / 375));
    width: calc(204 * (800px / 375));
  }

  .mothers26-gift-title img {
    width: 100%;
    height: auto;
  }

  .mothers26-gift-lead {
    margin-bottom: calc(30 * (800px / 375));
  }

  .mothers26-gift-lead p {
    font-size: calc(13 * (800px / 375));
    line-height: 1.8;
    color: #4a1515;
    margin-bottom: 1em;
  }

  .mothers26-gift-visual {
    width: calc(280 * (800px / 375));
    margin: 0 auto calc(25 * (800px / 375));
    overflow: hidden;
  }
  .mothers26-gift-visual img {
    width: 100%;
    height: auto;
    display: block;
  }

  .mothers26-gift-info {
    margin-bottom: calc(25 * (800px / 375));
    color: #4a1515;
  }
  .mothers26-gift-item-name {
    font-size: calc(14 * (800px / 375));
    margin-bottom: calc(9 * (800px / 375));
  }

  .mothers26-gift-action {
    display: flex;
    justify-content: center;
    padding-bottom: calc(40 * (800px / 375));
  }
  .mothers26-gift-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--button--color);
    color: #fff !important;
    text-decoration: none;
    width: calc(118 * (800px / 375));
    height: calc(33 * (800px / 375));
    font-size: calc(15 * (800px / 375));
  }

  .mothers26-line-container {
    position: relative;
    width: 100%;
    padding-bottom: calc(120 * (800px / 375));
    background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_04/line_gift_end_img_bg.png");
    background-size: cover;
    overflow: hidden;
  }

  .mothers26-line-frame {
    position: relative;
    width: calc(375 * (800px / 375));
    margin: 0 auto;
    padding: calc(120 * (800px / 375)) calc(15 * (800px / 375));
    background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_04/line_gift_end_img_frame.png");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    z-index: 5;
  }

  .mothers26-line-title {
    text-align: center;
    margin-bottom: calc(20 * (800px / 375));
  }
  .mothers26-line-title img {
    width: calc(300 * (800px / 375));
  }

  .mothers26-line-contents {
    position: relative;
    width: 100%;
    margin-bottom: calc(30 * (800px / 375));
  }

  .mothers26-line-main-img {
    position: relative;
    width: calc(230 * (800px / 375));
    overflow: visible;
  }

  .mothers26-line-main-img img {
    width: 100%;
    display: block;
  }

  .mothers26-line-labels {
    position: absolute;
    top: calc(40 * (800px / 375));
    right: calc(-85 * (800px / 375));
    list-style: none;
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: auto;
  }

  .mothers26-line-labels li {
    background: #fff;
    color: #4a1515;
    font-size: calc(13 * (800px / 375));
    padding: calc(6 * (800px / 375)) calc(12 * (800px / 375));
    margin-bottom: 5px;
    white-space: nowrap;
    display: block;
    text-align: left;
  }

  .mothers26-line-labels li:nth-child(odd) {
    align-self: flex-start;
    margin-left: 0;
    margin-left: auto;
  }

  .mothers26-line-labels li:nth-child(even) {
    align-self: flex-start;
    margin-left: 0;
    margin-left: auto;
  }

  .mothers26-line-sub-img {
    position: relative;
    width: calc(182 * (800px / 375));
    margin-left: calc(148 * (800px / 375));
    margin-top: calc(-110 * (800px / 375));
    overflow: hidden;
    z-index: 11;
  }
  .mothers26-line-sub-img img {
    width: 100%;
    display: block;
  }

  .mothers26-line-note {
    font-size: calc(10 * (800px / 375));
    line-height: 1.9;
    color: #8c6b6b;
    text-align: center;
    margin-bottom: calc(25 * (800px / 375));
  }

  .mothers26-line-action {
    display: flex;
    justify-content: center;
  }
  .mothers26-line-btn {
    background: var(--button--color);
    color: #fff !important;
    width: calc(148 * (800px / 375));
    height: calc(37 * (800px / 375));
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    font-size: calc(15 * (800px / 375));
  }

  .line_btn_txt {
    font-family:
      "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP",
      "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ",
      "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, Arial, Helvetica, Verdana,
      sans-serif;
    font-weight: 500;
    font-size: medium;
    font-size: calc(12 * (800px / 375));
    padding-right: calc(2 * (800px / 375));
    padding-top: calc(1.5 * (800px / 375));
  }

  .mothers26-line-flower-tr {
    position: absolute;
    top: 0;
    right: calc(-65 * (800px / 375));
    width: calc(160 * (800px / 375));
    z-index: 10;
    overflow: hidden;
    opacity: 0;
  }

  .mothers26-line-flower-bl {
    position: absolute;
    bottom: calc(85 * (800px / 375));
    left: 0;
    width: calc(375 * (800px / 375));
    z-index: 10;
  }

  .mothers26-line-flower-tr img,
  .mothers26-line-flower-bl img {
    width: 100%;
    height: auto;
  }

  .mothers26-final-container {
    width: 100%;
    background-color: #fdf5f0;
    overflow: hidden;
  }

  .mothers26-final-inner {
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .mothers26-final-img {
    width: 100%;
    height: auto;
    display: block;
  }

  #mothers_day__2604 #section-intro {
    position: relative;
    width: 100%;
    max-width: 800px;
    height: calc(661 * (800px / 375));
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
    margin-inline: auto;
  }

  #mothers_day__2604 .section_grad-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1;
    background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_00/bg_00_1.png");
  }

  #mothers_day__2604 .petal-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 30;
    pointer-events: none;
  }

  #mothers_day__2604 .petal {
    position: absolute;
    height: auto;
    opacity: 1; /* 最初は非表示 */
  }

  #mothers_day__2604 .wid_01 {
    width: calc(146 * (800px / 375));
    top: calc(10 * (800px / 375));
    right: calc(-35 * (800px / 375));
  }

  #mothers_day__2604 .wid_02 {
    width: calc(36 * (800px / 375));
    top: calc(180 * (800px / 375));
    left: calc(25 * (800px / 375));
  }

  #mothers_day__2604 .wid_03 {
    width: calc(150 * (800px / 375));
    bottom: calc(-15 * (800px / 375));
    left: calc(-45 * (800px / 375));
  }

  #mothers_day__2604 .wid_04 {
    width: calc(38 * (800px / 375));
    bottom: calc(120 * (800px / 375));
    right: calc(15 * (800px / 375));
  }

  #mothers_day__2604 .wid_05 {
    width: calc(31.87 * (800px / 375));
    bottom: calc(45 * (800px / 375));
    right: calc(65 * (800px / 375));
  }

  #mothers_day__2604 #section-01 {
    position: relative;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
    width: 100%;
    max-width: 800px;
    height: calc(624 * (800px / 375));
    margin-inline: auto;
  }

  #mothers_day__2604 .line-gift_present_bg_1 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1;
    background-image: url("https://tu-hacci.co.jp/img/feature/2604_mothers_day/section_01/bg_01.png");
    transform: translateY(-340px);
  }

  #mothers_day__2604 .section-intro__blur {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    z-index: 1;
    pointer-events: none;
  }

  #mothers_day__2604 .about_title--01 {
    position: relative;
    padding-top: calc(40 * (800px / 375));
    text-align: center;
    z-index: 2;
  }

  #mothers_day__2604 .message-text {
    color: var(--text--color);
    font-size: calc(12 * (800px / 375));
    font-weight: 500;
    line-height: 2.5;
  }

  #mothers_day__2604 .message-text {
    padding-top: calc(28 * (800px / 375));
  }

  #mothers_day__2604 .about_title--01,
  .morning_routine__info--01 p {
    color: var(--text--color);
    font-size: calc(12 * (800px / 375));
    font-weight: 500;
    line-height: 2;
  }

  #mothers_day__2604 .about_title--01,
  .airlange__info--01 p {
    color: var(--text--color);
    font-size: calc(12 * (800px / 375));
    font-weight: 500;
    line-height: 2;
  }

  #mothers_day__2604 .about_title--01,
  .leene__info--01 p {
    color: var(--text--color);
    font-size: calc(12 * (800px / 375));
    font-weight: 500;
    line-height: 2.5;
  }

  #mothers_day__2604 .about_title--01 {
    padding-top: calc(40 * (800px / 375));
  }
  #mothers_day__2604 .about_title--01:last-child {
    padding-top: 0;
  }

  #mothers_day__2604 .title_path--01 {
    padding-top: calc(40 * (800px / 375));
    margin-inline: auto;
  }

  #mothers_day__2604 .title_path--01 img {
    width: calc(1 * (800px / 375));
    height: calc(50 * (800px / 375));
  }

  #mothers_day__2604 .about--list {
    padding-top: calc(300 * (800px / 375));
    padding-bottom: calc(52 * (800px / 375));
  }

  #mothers_day__2604 .about_link--01 {
    margin-bottom: calc(64 * (800px / 375));
  }

  #mothers_day__2604 .about_link--01 .about__anchor {
    display: grid;
    width: calc(356 * (800px / 375));
    margin-inline: auto;
    grid-template-columns: repeat(3, calc(116 * (800px / 375)));
    justify-content: space-between;
  }

  #mothers_day__2604 .about_link--01 .about__anchor .anchor__button.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
    opacity: 0;
  }

  @keyframes fadeUpAnime {
    from {
      opacity: 0;
      transform: translateX(-20px);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }

  .mothers26-labels,
  .mothers26-line-labels,
  .mothers26-foot-overlap-labels {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    list-style: none;
    padding: 0;
    margin: 0;
    z-index: 10;
  }

  .is-right-align {
    align-items: flex-end;
  }

  .mothers26-labels li,
  .mothers26-line-labels li,
  .mothers26-foot-overlap-labels li {
    background: #fff;
    color: #4a1515;
    font-size: calc(11 * (800px / 375));
    padding: calc(6 * (800px / 375)) calc(12 * (800px / 375));
    margin-bottom: calc(6 * (800px / 375)) calc(12 * (800px / 375));
    white-space: nowrap;
    display: block;
    width: auto;
    text-align: left;
  }

  .mothers26-labels li:last-child,
  .mothers26-line-labels li:last-child,
  .mothers26-foot-overlap-labels li:last-child {
    margin-bottom: 0;
  }

  .is-right-align li {
    text-align: right;
  }

  .mothers26-flower-decor {
    position: absolute;
    z-index: 100;
    pointer-events: none;
  }

  .bg__flower_01 img {
    width: calc(120.81 * (800px / 375));
  }

  .bg__flower_02 img {
    width: calc(113.14 * (800px / 375));
  }

  .bg__flower_03 img {
    width: calc(134 * (800px / 375));
  }

  .bg__flower_04 img {
    width: calc(127.06 * (800px / 375));
  }

  .flower-top-right {
    top: calc(-60 * (800px / 375));
    right: calc(-45 * (800px / 375));
    overflow: hidden;
  }

  .flower-bottom-left {
    bottom: calc(-10 * (800px / 375));
    left: calc(-100 * (800px / 375));
    overflow: hidden;
  }

  .flower-bottom-right {
    bottom: calc(-45 * (800px / 375));
    right: calc(-40 * (800px / 375));
    overflow: hidden;
  }

  .flower-top-right-info {
    top: calc(-50 * (800px / 375));
    right: calc(-50 * (800px / 375));
  }
}

/* PCサイズ */
