@charset "UTF-8";
/*ブレイクポイント設定*/
@media screen and (min-width: 750px) {
  .pcnone {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .spnone {
    display: none;
  }
}

/*アスペクト比固定用*/
body {
  padding: 0;
  margin: 0;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  font-kerning: auto;
  font-size: 16px;
  background-color: #ccc;
}
@media screen and (min-width: 750px) {
  body {
    font-size: 1.3em;
  }
}

* {
  box-sizing: border-box;
}

#lpwrap {
  background-color: #2a2625;
  max-width: 780px;
  margin: 0 auto;
}
#lpwrap section {
  padding: 3em 1em;
}
#lpwrap img {
  max-width: 100%;
}
#lpwrap .bgl {
  background-color: #f4f3f0;
}
#lpwrap #movie {
  padding: 0 0;
}
#lpwrap {
  /* 購入ボタン（画像） */
}
#lpwrap .product-btn {
  display: block;
  margin-top: 2em;
}
#lpwrap .product-btn img {
  width: 100%;
  height: auto;
  max-width: 500px;
}

/* ヘッダーYouTube背景動画（縦動画を横幅いっぱいに表示） */
#headYoutube {
  position: relative;
  width: 100%;
  padding-top: 177.78%; /* 9:16のアスペクト比 */
  overflow: hidden;
}
#headYoutube iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  transform: translate(-50%, -50%);
  border: none;
  pointer-events: none; /* 操作を無効化して背景風に */
}

/* 受賞ロゴセクション */
#award {
  max-width: 780px;
  margin: 0 auto;
  padding: 1.5em 1em;
  background: linear-gradient(180deg, #fff 33.17%, #f4f3f0 100%);
  margin-top: -1px;
  /* 上部：最新モデル */
}
#award .award-top {
  text-align: center;
  margin-bottom: 0.75em;
}
#award .award-top img {
  width: 65%;
  max-width: 25em;
}
#award {
  /* 3列並びの行 */
}
#award .award-row {
  display: flex;
  justify-content: center;
  gap: 0.5em;
  margin-bottom: 1em;
}
#award .award-row img {
  width: 30%;
  height: auto;
}

section#catchImg {
  padding-top: 0;
}

/* 商品セクション */
#product,
.product {
  text-align: center;
  color: #fff;
  /* i-riceロゴ */
}
#product .product-logo img,
.product .product-logo img {
  width: 13em;
  max-width: 55%;
}
#product,
.product {
  /* サブタイトル */
}
#product .product-subtitle,
.product .product-subtitle {
  font-size: 1em;
  font-weight: 500;
  line-height: 1.3;
  margin: 0.5em 0 1.5em;
  letter-spacing: -0.03em;
}
#product .product-subtitle span,
.product .product-subtitle span {
  font-size: 0.875em;
}
#product,
.product {
  /* 商品画像 横並び */
}
#product .product-items,
.product .product-items {
  display: flex;
  justify-content: center;
  gap: 0.5em;
  margin-bottom: 1em;
}
#product .product-items .product-item,
.product .product-items .product-item {
  width: 45%;
}
#product .product-items .product-item img,
.product .product-items .product-item img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 750px) {
  #product .product-items .product-item img,
  .product .product-items .product-item img {
    max-width: 70%;
  }
}
#product .product-items .product-item p,
.product .product-items .product-item p {
  font-size: 0.875em;
  font-weight: 500;
  margin: 0 0 0;
  text-align: center;
  letter-spacing: -0.03em;
}
#product,
.product {
  /* 価格 */
}
#product .product-price,
.product .product-price {
  color: #e5c470;
  font-weight: bold;
  margin: 0 0 0.5em;
  line-height: 1.2;
}
#product .product-price .yen,
.product .product-price .yen {
  font-family: Arial, sans-serif;
  font-size: 2.75em;
  letter-spacing: 0.1em;
}
#product .product-price .num,
.product .product-price .num {
  font-family: Arial, sans-serif;
  font-size: 3.625em;
}
#product .product-price .tax,
.product .product-price .tax {
  font-size: 1.25em;
}
#product,
.product {
  /* 特典バッジ（画像） */
}
#product .product-novelty,
.product .product-novelty {
  margin-bottom: 1.5em;
}
#product .product-novelty img,
.product .product-novelty img {
  width: 85%;
  max-width: 22em;
}
#product,
.product {
  /* セット内容 */
}
#product .product-set,
.product .product-set {
  display: inline-block;
  font-size: 0.775em;
  font-weight: 500;
  line-height: 1.4;
  margin: 0 0 2em;
  letter-spacing: -0.03em;
  text-align: left;
}

/* 歴史セクション */
#history {
  position: relative;
  padding: 2em 1em 3em;
  color: #fff;
  overflow: hidden;
  /* 縦ロゴ（HISTORY） */
}
#history .history-logo {
  position: absolute;
  right: 0;
  top: 9em;
  width: 2.5em;
  z-index: 2;
}
#history .history-logo img {
  width: 100%;
}
#history {
  /* メイン画像エリア */
}
#history .history-main {
  position: relative;
  z-index: 1;
}
#history .history-main .history-img {
  position: relative;
  margin: 0 auto;
  max-width: 95%;
  /* 背景の丸（画像基準で配置するため常に同じ見切れ方になる） */
}
#history .history-main .history-img::before {
  content: "";
  position: absolute;
  width: 230%;
  aspect-ratio: 1;
  background: #4d4d4d;
  border-radius: 50%;
  top: 45%;
}
@media screen and (min-width: 750px) {
  #history .history-main .history-img::before {
    top: 43%;
    width: 213%;
  }
}
#history .history-main .history-img::before {
  left: 50%;
  transform: translate(-42%, -45%);
  z-index: -1;
}
#history .history-main .history-img img {
  position: relative;
  width: 100%;
}
#history {
  /* 43年の歴史テキスト */
}
#history .history-text {
  position: relative;
  z-index: 1;
  text-align: right;
  margin-top: 1em;
}
@media screen and (min-width: 750px) {
  #history .history-text {
    font-size: 1.2em;
  }
}
#history .history-text .history-headline {
  font-size: 1.2em;
  font-weight: bold;
  color: #e5c470;
  margin: 0 0 0.75em;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
#history .history-text .history-desc {
  font-size: 0.875em;
  font-weight: 500;
  line-height: 1.6;
  margin: 0;
  letter-spacing: 0.03em;
}

/* クラウドファンディングセクション */
#founding {
  position: relative;
  padding: 2em 1em 3em;
  color: #fff;
  overflow: hidden;
  /* 背景の丸 */
}
#founding .founding-bg {
  position: absolute;
  height: 100%;
  aspect-ratio: 1;
  background: #4d4d4d;
  border-radius: 50%;
  top: 15%;
  left: 53%;
  transform: translate(-50%, -15%);
  z-index: 0;
  pointer-events: none;
}
#founding {
  /* 縦ロゴ（CROWD FUNDING） */
}
#founding .founding-logo {
  position: absolute;
  left: 0;
  top: 4em;
  width: 2.5em;
  z-index: 2;
}
#founding .founding-logo img {
  width: 100%;
}
#founding {
  /* メイン画像エリア */
}
#founding .founding-main {
  position: relative;
  z-index: 1;
}
#founding .founding-main .founding-img {
  margin: 0 auto;
  max-width: 95%;
}
#founding .founding-main .founding-img img {
  width: 100%;
  display: block;
}
#founding {
  /* テキスト＆バッジ＆グラフ */
}
#founding .founding-bottom {
  position: relative;
  z-index: 1;
  margin-top: 1em;
}
@media screen and (min-width: 750px) {
  #founding .founding-bottom {
    width: 80%;
    margin: 2em auto;
  }
}
#founding {
  /* 見出し＋バッジ横並び */
}
#founding .foundingCopy {
  display: flex;
  align-items: center;
  gap: 0.5em;
  margin-bottom: 0.75em;
}
#founding .foundingCopy h3 {
  flex: 1;
  font-size: 1.1em;
  font-weight: bold;
  color: #e5c470;
  margin: 0;
  line-height: 1.3;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 750px) {
  #founding .foundingCopy h3 {
    font-size: 1.5em;
  }
}
#founding .foundingCopy {
  /* バッジ画像エリア（Makuakeバッジ2つ） */
}
#founding .foundingCopy .logo {
  flex-shrink: 0;
  width: 50%;
  display: flex;
  align-items: center;
  gap: 0.3em;
}
#founding .foundingCopy .logo img {
  width: 50%;
  height: auto;
}
#founding {
  /* 説明テキスト＋グラフ（回り込みレイアウト）
     ゼロ幅の疑似要素で画像の開始位置を下げ、
     テキストが上部3em分はフル幅で流れるようにする
     （shape-outsideはiOS Safariで不安定なため不使用） */
}
#founding .fondingDisc::before {
  content: "";
  float: right;
  width: 0;
  height: 3em;
}
@media screen and (min-width: 750px) {
  #founding .fondingDisc::before {
    height: 0.5em;
  }
}
#founding .fondingDisc img {
  float: right;
  clear: right;
  width: 45%;
  height: auto;
  margin: 0 0 0.5em 0.75em;
}
#founding .fondingDisc p {
  font-size: 0.9em;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
  letter-spacing: 0.01em;
}
#founding .fondingDisc::after {
  content: "";
  display: block;
  clear: both;
}

/* メディア紹介セクション */
#media {
  position: relative;
  padding: 2em 1em 3em;
  color: #fff;
  overflow: hidden;
  margin-top: 1.5em;
  /* 背景の丸 */
}
#media .media-bg {
  position: absolute;
  height: 110%;
  aspect-ratio: 1;
  background: #4d4d4d;
  border-radius: 50%;
  top: 44%;
  left: 53%;
  transform: translate(-50%, -50%);
  z-index: 0;
  pointer-events: none;
}
#media {
  /* 縦ロゴ（MEDIA） */
}
#media .media-vertical {
  position: absolute;
  right: 0;
  top: 0.7em;
  width: 2.5em;
  z-index: 2;
}
#media .media-vertical img {
  width: 100%;
}
#media {
  /* 見出し */
}
#media .media-headline {
  position: relative;
  z-index: 1;
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.875em;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.02em;
  margin: 0 0 1em;
}
@media screen and (min-width: 750px) {
  #media .media-headline {
    text-align: center;
  }
}
#media {
  /* メディアロゴエリア（白背景） */
}
#media .media-press {
  position: relative;
  z-index: 1;
  background: #fff;
  padding: 1.5em 1em;
  margin: 0 -1em;
  text-align: center;
}
#media .media-press img {
  width: 100%;
  max-width: 26em;
}
#media {
  /* Instagramエリア */
}
#media .media-instagram {
  position: relative;
  z-index: 1;
  text-align: center;
  margin-top: 2.5em;
  /* Instagramアイコン */
}
#media .media-instagram .media-insta-icon {
  width: 2.5em;
  height: 2.5em;
  margin-bottom: 0.5em;
}
#media .media-instagram {
  /* Instagram紹介テキスト */
}
#media .media-instagram .media-insta-text {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.375em;
  font-weight: 600;
  line-height: 1.2;
  margin: 0;
}
#media {
  /* Instagram投稿グリッド（千鳥配置） */
}
#media .media-grid {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 0.75em;
  margin-top: 1.5em;
  padding: 0 0.25em;
}
@media screen and (min-width: 750px) {
  #media .media-grid {
    max-width: 70%;
    margin: 3em auto;
  }
}
#media .media-grid {
  /* 各カラム */
}
#media .media-grid .media-grid-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.75em;
  /* 右カラムを下にずらして千鳥配置 */
}
#media .media-grid .media-grid-col:nth-child(2) {
  margin-top: 3em;
}
#media .media-grid .media-grid-col img {
  width: 100%;
  height: auto;
}

#ldkMovie {
  text-align: center;
}

/* 課題提起セクション */
#howTo {
  padding: 3em 1em 3em;
  color: #2a2625;
  text-align: center;
  /* 飾り線 */
}
#howTo .howTo-line {
  margin-bottom: 1em;
}
#howTo .howTo-line img {
  width: 100%;
}
@media screen and (min-width: 750px) {
  #howTo .howTo-line img {
    max-width: 35rem;
    margin-left: auto;
    margin-right: auto;
  }
}
#howTo {
  /* メイン見出し */
}
#howTo .howTo-headline {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.5em;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 1em;
  letter-spacing: 0.02em;
  /* 「もっと美味しく」強調 */
}
#howTo .howTo-headline .howTo-headline-lg {
  font-size: 1.5em;
  line-height: 1.2;
}
#howTo {
  /* メイン画像 */
}
#howTo .howTo-mainImg {
  margin: 0 -0.5em 1.5em;
}
#howTo .howTo-mainImg img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 750px) {
  #howTo .howTo-mainImg img {
    max-width: 35rem;
    margin-left: auto;
    margin-right: auto;
  }
}
#howTo {
  /* 小見出し */
}
#howTo .howTo-subhead {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.25em;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 auto 1em auto;
  text-align: left;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 750px) {
  #howTo .howTo-subhead {
    max-width: 35rem;
    margin-left: auto;
    margin-right: auto;
  }
}
#howTo {
  /* 説明テキスト */
}
#howTo .howTo-desc {
  font-size: 1em;
  font-weight: 400;
  line-height: 1.4;
  margin: 0 auto 1.5em auto;
  text-align: left;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 750px) {
  #howTo .howTo-desc {
    max-width: 35rem;
    margin-left: auto;
    margin-right: auto;
  }
}
#howTo {
  /* グラフ画像 */
}
#howTo .howTo-graph {
  margin: 0 auto 0.5em;
  mix-blend-mode: multiply;
}
#howTo .howTo-graph img {
  width: 100%;
  max-width: 24em;
}
#howTo {
  /* 下向き矢印 */
}
#howTo .howTo-arrow {
  margin: 1em auto;
}
#howTo .howTo-arrow img {
  width: 95%;
  max-width: 26em;
}
#howTo {
  /* 動画エリア */
}
#howTo .howTo-movie {
  margin: 0 -1em 2em;
}
#howTo .howTo-movie img {
  width: 100%;
  height: auto;
}
#howTo {
  /* その都度精米コピー */
}
#howTo .howTo-concept {
  margin-bottom: 1.5em;
}
#howTo .howTo-concept .howTo-concept-sub {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.5em;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 0.25em;
}
#howTo .howTo-concept .howTo-concept-main {
  margin: 0;
  line-height: 1.2;
}
#howTo .howTo-concept {
  /* "その都度精米" 大文字 */
}
#howTo .howTo-concept .howTo-concept-lg {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 2.25em;
  font-weight: 600;
  line-height: 1.2;
}
#howTo .howTo-concept {
  /* 「という発想」 */
}
#howTo .howTo-concept .howTo-concept-sm {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.5em;
  font-weight: 600;
  line-height: 1.4;
}
#howTo {
  /* 吹き出しコメント */
}
#howTo .howTo-comment {
  margin: 0 auto;
  max-width: 20em;
}
#howTo .howTo-comment img {
  width: 100%;
}

/* その都度精米の魅力セクション */
section#appeal {
  background: #2a2625;
  color: #fff;
  text-align: center;
  overflow: hidden;
  padding: 0 0 0 0;
  /* セクションヘッダー */
}
section#appeal .appeal-header {
  position: relative;
  width: 100%;
  aspect-ratio: 430/304;
  overflow: hidden;
}
section#appeal .appeal-header .appeal-header-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
section#appeal .appeal-header .appeal-header-title {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  margin: 0;
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-weight: 600;
  line-height: 1.4;
}
section#appeal .appeal-header .appeal-header-title .lg {
  font-size: 2.5em;
}
section#appeal .appeal-header .appeal-header-title .sm {
  font-size: 1.875em;
}
section#appeal {
  /* 魅力ナンバー装飾 */
}
section#appeal .appeal-num {
  margin: 2.5em auto 0.5em;
}
section#appeal .appeal-num img {
  width: 6.25em;
  height: auto;
}
section#appeal {
  /* セクションタイトル共通 */
}
section#appeal .appeal-title {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.625em;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 1.5em;
  letter-spacing: 0.03em;
}
section#appeal {
  /* 魅力1: 食材画像エリア */
}
section#appeal .appeal-img01 {
  margin: 0 0 0;
}
section#appeal .appeal-img01 img {
  width: 100%;
  height: auto;
}
section#appeal {
  /* 魅力2: 精米機画像 */
}
section#appeal .appeal-img02 {
  margin: 0 auto 1.5em;
}
section#appeal .appeal-img02 img {
  width: 76%;
  max-width: 22em;
  height: auto;
}
section#appeal {
  /* 精米モード紹介テキスト */
}
section#appeal .appeal-mode-intro {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.25em;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 auto 1.5em;
  padding: 0 1em;
}
@media screen and (min-width: 750px) {
  section#appeal .appeal-mode-intro {
    max-width: 35rem;
    margin-left: auto;
    margin-right: auto;
  }
}
section#appeal {
  /* 精米モードチャート */
}
section#appeal .appeal-mode {
  margin: 0 auto 1.5em;
  padding: 0 1.5em;
}
section#appeal .appeal-mode img {
  width: 100%;
  max-width: 26em;
}
section#appeal {
  /* 魅力2: ユーザーコメント */
}
section#appeal .appeal-comment02 {
  margin: 0 auto 2em;
  padding: 0 1.5em;
}
section#appeal .appeal-comment02 img {
  width: 100%;
  max-width: 26em;
}
section#appeal {
  /* 精米コースタイトル */
}
section#appeal .appeal-course-title {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 1.5em;
}
section#appeal .appeal-course-title .lg {
  font-size: 1.625em;
}
section#appeal .appeal-course-title .sm {
  font-size: 1.25em;
}
section#appeal {
  /* 精米コースチャート */
}
section#appeal .appeal-course {
  margin: 0 auto 0;
  padding: 0 1.5em;
}
section#appeal .appeal-course img {
  width: 100%;
  max-width: 26em;
}
section#appeal {
  /* 魅力3: ぬか活用動画エリア */
}
section#appeal .appeal-nuka {
  margin: 0 0 1.5em;
}
section#appeal .appeal-nuka img {
  width: 100%;
  height: auto;
}
section#appeal {
  /* 魅力3: ぬか活用コメント */
}
section#appeal .appeal-nuka-comment {
  margin: 0 auto 0;
  padding: 0 1.5em;
}
section#appeal .appeal-nuka-comment img {
  width: 100%;
  max-width: 26em;
}
section#appeal {
  /* 魅力4: 3つの円バッジ */
}
section#appeal .appeal-circles {
  margin: 0 auto 1.5em;
  padding: 0 1.5em;
}
section#appeal .appeal-circles img {
  width: 100%;
  max-width: 26em;
}
section#appeal {
  /* 魅力4: 操作動画エリア */
}
section#appeal .appeal-control-movie {
  margin: 0 0 0;
}
section#appeal .appeal-control-movie img {
  width: 100%;
  height: auto;
}
section#appeal {
  /* 魅力4: ステップ画像 */
}
section#appeal .appeal-steps {
  margin: 1em auto 0;
  padding: 0 1.5em;
}
section#appeal .appeal-steps img {
  width: 100%;
  max-width: 26em;
}
section#appeal {
  /* 魅力4: ステップ結び文 */
}
section#appeal .appeal-step-title {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.625em;
  font-weight: 600;
  line-height: 1.4;
  margin: 1em 0 1em;
}
section#appeal {
  /* 魅力4: 操作コメント */
}
section#appeal .appeal-control-comment {
  margin: 0 auto 0;
  padding: 0 1.5em;
}
section#appeal .appeal-control-comment img {
  width: 100%;
  max-width: 26em;
}
section#appeal {
  /* 魅力5: デザイン説明テキスト */
}
section#appeal .appeal-design-desc {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.3;
  margin: 0 auto 2em;
  padding: 0 1.25em;
  letter-spacing: 0.03em;
}
section#appeal {
  /* デザイン写真共通 */
}
section#appeal .appeal-design-photo {
  position: relative;
  width: 100%;
}
section#appeal .appeal-design-photo .appeal-design-img {
  width: 100%;
  height: auto;
  display: block;
}
section#appeal .appeal-design-photo .appeal-design-label {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0.75em 1.25em;
  box-sizing: border-box;
}
section#appeal .appeal-design-photo .appeal-design-label .color {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
  font-size: 1em;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
}
section#appeal .appeal-design-photo .appeal-design-label .caption {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
  font-size: 1em;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}
section#appeal {
  /* BLACK写真ラベル */
}
section#appeal .appeal-design-bk .appeal-design-label {
  background: rgba(42, 38, 37, 0.8);
  color: #fff;
}
section#appeal {
  /* WHITE写真ラベル */
}
section#appeal .appeal-design-wh .appeal-design-label {
  background: rgba(255, 255, 255, 0.8);
  color: #2a2625;
}
@media screen and (min-width: 750px) {
  section#appeal .variation {
    padding: 0.5em;
    display: flex;
  }
  section#appeal .variation a {
    padding: 0.5em;
  }
}

/* コミュニケーションセクション */
section#communication {
  padding: 3em 0 3em;
  color: #2a2625;
  overflow: hidden;
  /* メイン見出し */
}
section#communication .com-headline {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.625em;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  margin: 0 0 1em;
}
section#communication {
  /* BEFOREエリア */
}
section#communication .com-before {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 0;
  padding: 1em;
}
@media screen and (min-width: 750px) {
  section#communication .com-before {
    max-width: 35rem;
    margin-left: auto;
    margin-right: auto;
  }
}
section#communication .com-before-left {
  flex-shrink: 0;
}
section#communication {
  /* BEFOREバッジ */
}
section#communication .com-before-badge {
  display: inline-block;
  background: #918885;
  color: #fff;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
  font-size: 0.9375em;
  font-weight: 400;
  line-height: 1.2;
  padding: 0.2em 0.6em;
  letter-spacing: 0.02em;
  margin-bottom: 0.5em;
}
section#communication {
  /* BEFOREテキスト */
}
section#communication .com-before-text {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.2;
  margin: 0;
  letter-spacing: 0.02em;
}
section#communication {
  /* BEFORE画像 */
}
section#communication .com-before-img {
  width: 50%;
  max-width: 14em;
  flex-shrink: 0;
}
section#communication .com-before-img img {
  width: 100%;
  height: auto;
  border-radius: 0;
}
section#communication {
  /* 三角形の装飾（下向き） */
}
section#communication .com-triangle {
  width: 0;
  height: 0;
  border-left: 4.5em solid transparent;
  border-right: 4.5em solid transparent;
  border-top: 3em solid #e5c470;
  margin: 1em auto 0;
  opacity: 0.5;
}
section#communication {
  /* エピソード共通 */
}
section#communication .com-episode {
  margin-top: -1em;
}
section#communication .com-episode img {
  width: 100%;
  height: auto;
}
section#communication {
  /* Episode 1: 左寄せ（はみ出し） */
}
section#communication .com-episode01 {
  margin-left: -1em;
  margin-right: 0;
  width: calc(100% + 2em);
}
@media screen and (min-width: 750px) {
  section#communication .com-episode01 {
    margin-left: 0;
    margin-right: auto;
    width: 100%;
    max-width: 20em;
  }
}
section#communication {
  /* Episode 2: 右寄せ（はみ出し） */
}
section#communication .com-episode02 {
  margin-left: auto;
  margin-right: -1em;
  margin-top: -2em;
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
@media screen and (min-width: 750px) {
  section#communication .com-episode02 {
    margin-left: auto;
    margin-right: 0;
    margin-top: -17em;
    width: 100%;
    max-width: 20em;
    justify-content: center;
  }
}

/* LDKレビューセクション */
#ldkReview {
  background: #2a2625;
  color: #fff;
  text-align: center;
  padding: 3em 0 0;
  /* メイン見出し */
}
#ldkReview .ldk-headline {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.625em;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 1em;
}
#ldkReview {
  /* 評価ポイントラベル */
}
#ldkReview .ldk-point-label {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-weight: 600;
  line-height: 1.2;
  color: #e5c470;
  margin: 0 0 1em;
  font-size: 1.125em;
}
#ldkReview .ldk-point-label span {
  font-size: 1.625rem;
  display: block;
  margin-top: 0.2em;
}
#ldkReview {
  /* レビュー画像共通 */
}
#ldkReview .ldk-review-img {
  margin: 0 auto 2em;
  padding: 0 1em;
}
@media screen and (min-width: 750px) {
  #ldkReview .ldk-review-img {
    max-width: 30em;
  }
}
#ldkReview .ldk-review-img img {
  width: 100%;
  height: auto;
}
#ldkReview {
  /* 結論画像（全幅） */
}
#ldkReview .ldk-review-img-full {
  padding: 0;
  margin-bottom: 0;
}
@media screen and (min-width: 750px) {
  #ldkReview .ldk-review-img-full {
    max-width: 100%;
  }
}
#ldkReview {
  /* 三角形装飾 */
}
#ldkReview .ldk-triangle {
  display: block;
  width: 13em;
  margin: 0 auto 1em;
}
#ldkReview {
  /* 納得の高評価ラベル */
}
#ldkReview .ldk-conclusion-label {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.625em;
  font-weight: 600;
  line-height: 1.2;
  color: #e5c470;
  margin: 0 0 1em;
}

/* Q&Aセクション */
#qa {
  padding: 3em 1.25em 3em;
  color: #2a2625;
  text-align: center;
  /* セクションタイトル */
}
#qa .qa-title {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
  font-size: 2.25em;
  font-weight: 600;
  line-height: 1.2;
  margin: 0;
  letter-spacing: 0.05em;
  color: #e5c470;
}
#qa {
  /* サブタイトル */
}
#qa .qa-subtitle {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
  font-size: 1em;
  font-weight: 600;
  line-height: 1.2;
  margin: 0.25em 0 1.5em;
  letter-spacing: 0.15em;
  color: #e5c470;
}
#qa {
  /* Q&Aリスト */
}
#qa .qa-list {
  text-align: left;
  max-width: 30em;
  margin: 0 auto;
}
#qa {
  /* 各Q&Aアイテム */
}
#qa .qa-item {
  background: #fff;
  border-radius: 0.5em;
  margin-bottom: 0.75em;
  padding: 1em 1.25em;
}
#qa {
  /* 質問部分 */
}
#qa .qa-question {
  display: flex;
  align-items: baseline;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
  font-size: 1em;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
  margin: 0 0 0.5em;
  color: #2a2625;
}
#qa {
  /* Q. ラベル */
}
#qa .qa-q {
  color: #e5c470;
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.125em;
  font-weight: 700;
  margin-right: 0.35em;
  flex-shrink: 0;
}
#qa {
  /* 回答部分 */
}
#qa .qa-answer {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
  font-size: 0.9375em;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: #2a2625;
  border-top: 1px solid #e5c470;
  padding-top: 0.75em;
}
#qa .qa-answer p {
  margin: 0;
}

/* スペックセクション */
#spec {
  background: #2a2625;
  color: #fff;
  padding: 2em 1.25em 3em;
  text-align: center;
  /* ヘッダー（ロゴ + タイトル） */
}
#spec .spec-header .spec-logo {
  width: 12.5em;
  display: block;
  margin: 0 auto;
}
#spec .spec-header .spec-title {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
  font-size: 1.25em;
  font-weight: 700;
  margin: 0.25em 0 1.25em;
  letter-spacing: 0.05em;
}
#spec {
  /* 商品画像（寸法付き） */
}
#spec .spec-img {
  margin: 0 auto 2em;
}
#spec .spec-img img {
  width: 100%;
  max-width: 22em;
}
#spec {
  /* スペック表 */
}
#spec .spec-table {
  background: #fff;
  border-radius: 0.5em;
  padding: 1.5em 1.25em;
  margin: 0 auto 2.5em;
}
#spec .spec-table table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "Noto Sans JP", sans-serif;
  font-size: 1em;
  line-height: 1.4;
  letter-spacing: -0.03em;
  color: #2a2625;
}
#spec .spec-table th,
#spec .spec-table td {
  padding: 0.3125em 0;
  vertical-align: top;
}
#spec .spec-table th {
  font-weight: 700;
  white-space: nowrap;
  padding-right: 1em;
}
#spec .spec-table td {
  font-weight: 400;
}
#spec {
  /* カラーバリエーション */
}
#spec .spec-color {
  margin: 0 auto 2.5em;
  text-align: center;
}
#spec .spec-color .spec-color-img {
  width: 100%;
  max-width: 22em;
  margin: 0 auto;
  display: block;
}
#spec {
  /* クロージングメッセージ */
}
#spec .spec-message {
  font-family: "游明朝", "Yu Mincho", YuMincho, serif;
  font-size: 1.5em;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  margin: 1.5em 0 1.5em;
}
#spec {
  /* CTAボタン */
}
#spec .spec-cta {
  display: block;
  margin: 0 auto;
  max-width: 24.375em;
}
#spec .spec-cta img {
  width: 100%;
}

/* ========================================
   スクロールフェードインアニメーション
   ======================================== */
/* 初期状態：非表示＋下にずらす（セクション内の子要素に適用） */
.fade-in-child {
  opacity: 0;
  transform: translateY(1.5em);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

/* 表示状態：フェードイン完了 */
.fade-in-child.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/*# sourceMappingURL=style.css.map */
