/* 天社宮授与所（/juyosho/）。Figma「授与所」の画面に合わせる（2026-10-26）。マークアップは page-juyosho.php。
   文字サイズは onmyodo-typography.css が @layer の中で !important で決めているため、
   それより先に読み込むこのファイルでレイヤーを作って上書きする（参拝のご案内・年間行事と同じ方法）。 */

@layer tensha-juyosho {
  /* 本文：Figma 18px・行33px、罫線の見出し 24px、カード（名 18px・御初穂料 16px・説明 15px） */
  body .p-juyosho :is(.p-juyosho__lead, .p-juyosho__link) { font-size: 1.8rem !important; line-height: 33px !important; }
  body .p-juyosho-cart .p-juyosho__link { font-size: 1.6rem !important; line-height: 1.6 !important; } /* お授かり籠の表の上のリンクは小さめ */
  body .p-juyosho :is(.p-juyosho__heading, .p-juyosho__kigan-title, .p-juyosho__modal-title) { font-size: 2.4rem !important; line-height: 26.25px !important; }
  body .p-juyosho .p-juyosho__card-name { font-size: 1.8rem !important; line-height: 26.25px !important; }
  body .p-juyosho .p-juyosho__cart-btn { font-size: 1.6rem !important; line-height: 1.4 !important; }
  /* 「お授かり籠に入れる」の高さ 66px（下の「お授かり籠を見る」「一覧に戻る」と同じ）。サイト共通の文字の指定がレイヤーの中で高さを決めているので、ここ（先のレイヤー）で決める */
  body .p-juyosho-product :is(.woocommerce .single-product div.product form.cart, .p-juyosho-product__years) .single_add_to_cart_button { height: 66px !important; min-height: 66px !important; line-height: 1.4 !important; }
  /* 御初穂料奉納のご連絡事項の欄：高さ180px・内側の余白16px（サイト共通の指定がレイヤーの中で決めているので、ここで決める） */
  /* スマホの生年月日の選び欄は少し小さい字にして、各言語の「请选择」なども欄に収める（2026-10-26） */
  @media screen and (max-width: 767px) { body .p-juyosho-checkout form.woocommerce-checkout .p-juyosho-checkout__birth select { padding: 0 16px 0 6px !important; font-size: 1.5rem !important; } }
  body .p-juyosho-checkout form.woocommerce-checkout textarea.input-text { height: 180px !important; min-height: 180px !important; padding: 16px !important; line-height: 1.8 !important; }
  /* 御初穂料奉納の必須・任意の札の文字（サイト共通の文字の指定に負けないよう、ここで決める） */
  body .p-juyosho-checkout form.woocommerce-checkout :is(abbr, span).required::before { font-size: 1.2rem !important; line-height: 20px !important; }
  /* お申し込みの完了の画面のカードの見出しは、御初穂料奉納の欄の見出し（h3）と同じ大きさ */
  body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card :is(h2, h3) { font-size: var(--onmyodo-h3) !important; line-height: 1.6 !important; }
  body .p-juyosho-checkout form.woocommerce-checkout .optional::before { font-size: 1.2rem !important; line-height: 18px !important; }
  body .p-juyosho-checkout #payment #place_order { height: 66px !important; min-height: 66px !important; font-size: 1.8rem !important; line-height: 1.4 !important; } /* 御初穂料奉納の「申し込みを確定する」も同じ高さ */
  /* 授与品の詳細ページ：本文 16px・行 1.9、年の行 17px（2026-10-26 行間と余白を整えた） */
  body .p-juyosho-product .woocommerce-product-details__short-description p { font-size: 1.6rem !important; line-height: 1.85 !important; } 
  body .p-juyosho-product .p-juyosho-product__year-name { font-size: 1.7rem !important; line-height: 1.5 !important; }
  body .p-juyosho-product .p-juyosho-product__year-qty .qty { font-size: 1.6rem !important; }
  body .p-juyosho-product .tensha-mukaieto-fields abbr.required::before { font-size: 1.2rem !important; line-height: 20px !important; } /* 必須の札の文字（サイト共通の文字の大きさの指定に負けないよう、ここで決める） */
  body .p-juyosho .p-juyosho-product__name { font-size: 2.4rem !important; line-height: 1.5 !important; }
  body .p-juyosho-cart .cart_totals h2 { font-size: 2rem !important; line-height: 1.5 !important; } /* お授かり籠の合計 */
  /* パンくずと寸法は同じ大きさ（パンくずの li にはサイト共通の指定が効くので、li・a まで決める） */
  body .p-juyosho .p-juyosho-product__crumb :is(ol, li, a),
  body .p-juyosho-product .woocommerce-product-details__short-description p.p-juyosho-product__size { font-size: 1.5rem !important; line-height: 1.6 !important; }
  body .p-juyosho :is(.p-juyosho-product__note, .p-juyosho-product__unit) { font-size: 1.6rem !important; line-height: 1.6 !important; }
  body .p-juyosho .p-juyosho__card-price { font-size: 1.6rem !important; line-height: 26.25px !important; }
  body .p-juyosho .p-juyosho__card-desc { font-size: 1.5rem !important; line-height: 26px !important; }
  body .p-juyosho .p-juyosho__kigan-text { font-size: 1.6rem !important; line-height: 33px !important; }
  body .p-juyosho .p-juyosho__modal :is(p, th, td, dt, dd) { font-size: 1.6rem !important; line-height: 1.8 !important; }
  body .p-juyosho .p-juyosho__hero-title--text { font-size: 3.2rem !important; line-height: 1.4 !important; }
  body.tensha-lang-en .p-juyosho .p-juyosho__hero-title--text { font-size: 2.4rem !important; line-height: 1.3 !important; }
  body .p-juyosho :is(.p-juyosho__card-field, .p-juyosho__card-field select, .p-juyosho__card-field input, .p-juyosho__card-submit, .p-juyosho__card-unavailable) { font-size: 1.5rem !important; line-height: 1.6 !important; }

  @media screen and (max-width: 767px) {
    body .p-juyosho :is(.p-juyosho__lead, .p-juyosho__link) { font-size: 1.7rem !important; line-height: 1.9 !important; }
    body .p-juyosho :is(.p-juyosho__heading, .p-juyosho__kigan-title, .p-juyosho__modal-title) { font-size: 2.2rem !important; line-height: 1.4 !important; }
    body .p-juyosho .p-juyosho__kigan-text { font-size: 1.6rem !important; line-height: 1.9 !important; }
    body .p-juyosho .p-juyosho__modal-title { font-size: 1.8rem !important; letter-spacing: .04em; } /* 「お納め（決済）の方法について」を一行に収める */
    body .p-juyosho .p-juyosho__hero-title--text, body.tensha-lang-en .p-juyosho .p-juyosho__hero-title--text { font-size: 1.6rem !important; line-height: 1.3 !important; }
  }
}

/* 地紋の背景（参拝のご案内・年間行事と同じ） */
body:has(.p-juyosho) { background: #f5f5f1 url("../img/tensha-renew/bg-news-texture.png") repeat top left / 160px 163px; }

.p-juyosho {
  --juyosho-ink: #1a1a1a;
  --juyosho-heading: #27211f;
  --juyosho-soft: rgba(226, 226, 224, .35); /* 淡い灰色の帯（参拝のご案内・年間行事と同じ色） */
  padding: 0 20px 120px;
  overflow: hidden;
  color: var(--juyosho-ink);
  font-family: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif;
}
.p-juyosho p { margin: 0; }
.p-juyosho [id] { scroll-margin-top: 110px; }

/* ---------- いちばん上の線画（位置は Figma の幅634×239の枠に対する割合） ---------- */
.p-juyosho__hero {
  position: relative;
  width: min(634px, 100%);
  aspect-ratio: 634 / 238.57;
  margin: 40px auto 0;
}
.p-juyosho__hero-art { position: absolute; display: block; height: auto; }
.p-juyosho__hero-art--left { left: 0; top: 3.42%; width: 30.28%; }
.p-juyosho__hero-art--right { left: 83.91%; top: 0; width: 16.09%; }
.p-juyosho__hero-title { position: absolute; left: 52.21%; top: 25.22%; width: 6.94%; margin: 0; }
.p-juyosho__hero-title img { display: block; width: 100%; height: auto; }
/* 題字が画面の中央に来るよう、線画ごと左へずらす（題字の中心 55.68% − 50%。2026-10-26 宮の指示。日本語版・各言語版とも） */
.p-juyosho__hero { transform: translateX(-5.68%); }

.p-juyosho__lead { max-width: 1000px; margin: 144px auto 0 !important; text-align: center; }

/* 「配送・送料について」「お納め（決済）の方法について」：下線の文字。押すとモーダル */
.p-juyosho__links { display: flex; flex-direction: column; align-items: center; gap: 24px; margin: 48px 0 0; padding: 0; list-style: none; }
.p-juyosho__link {
  display: inline;
  padding: 0;
  border: 0;
  background: none;
  color: var(--juyosho-ink);
  font: inherit;
  text-decoration: underline;
  text-underline-offset: .3em;
  cursor: pointer;
}
.p-juyosho__link:hover { opacity: .7; }

/* ---------- 罫線の見出しとカードの一覧 ---------- */
.p-juyosho__section { max-width: 1000px; margin: 78px auto 0; }
.p-juyosho__heading {
  margin: 0 0 57px;
  padding: 32px 0;
  border-top: .5px solid var(--juyosho-ink);
  border-bottom: .5px solid var(--juyosho-ink);
  color: var(--juyosho-heading);
  font-weight: 500;
  letter-spacing: .1em;
}
.p-juyosho__cards { display: grid; grid-template-columns: repeat(3, 300px); justify-content: space-between; gap: 57px 50px; margin: 0; padding: 0; list-style: none; }
.p-juyosho__card {
  display: flex;
  flex-direction: column;
  gap: 24px;
  height: 100%;
  box-sizing: border-box;
  padding: 23px 23.5px 26px;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .1);
  color: var(--juyosho-ink);
  text-decoration: none;
  transition: box-shadow .2s, transform .2s;
}
/* カード全体が授与品のページへのリンク（2026-10-26 宮の指示。前の「詳しく見る」などのボタンはなくした） */
.p-juyosho__card:hover { box-shadow: 0 4px 14px rgba(0, 0, 0, .12); transform: translateY(-2px); }
.p-juyosho__card:focus-visible { outline: 2px solid var(--juyosho-ink); outline-offset: 3px; }
.p-juyosho__card-img { display: block; aspect-ratio: 253 / 178; overflow: hidden; border-radius: 8px; background: #fff; }
.p-juyosho__card-img img { display: block; width: 100% !important; height: 100% !important; max-height: none; object-fit: contain; } /* サイト共通の img{height:auto} を打ち消し、縦長の暦も切らずに収める */
/* 神札・御守の写真（正方形で余白が多い）は枠いっぱいに、暦の表紙（縦長）は切らずに収める */
.p-juyosho__card-img--cover img { object-fit: cover; }
.p-juyosho__card-body { display: flex; flex-direction: column; gap: 14px; }
.p-juyosho__card-name { font-weight: 600; letter-spacing: .13em; }
.p-juyosho__card-price { font-weight: 500; letter-spacing: .13em; }
.p-juyosho__card-price :is(.amount, bdi) { color: inherit; font-weight: inherit; }
/* 説明は Figma と同じ高さ（約6行）で切り、続きは授与品のページで読む */
.p-juyosho__card-desc {
  display: -webkit-box;
  overflow: hidden;
  font-weight: 300;
  text-align: justify;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
}

/* ---------- 御祈祷・お祓いについて（画面の幅いっぱいの淡い帯） ---------- */
.p-juyosho__kigan {
  margin: 208px -20px 0;
  padding: 65px 20px 76px;
  background: var(--juyosho-soft);
  text-align: center;
}
.p-juyosho__kigan-title { margin: 0 0 34px; color: var(--juyosho-heading); font-weight: 500; letter-spacing: .1em; }
.p-juyosho__kigan-text { margin: 0 0 47px !important; }
.p-juyosho__kigan-btns { display: flex; justify-content: center; flex-wrap: wrap; gap: 24px 68px; }
.p-juyosho__kigan-btns .c-btn { min-width: 260px; }

/* ---------- モーダル（配送・送料、お納め方法） ---------- */
.p-juyosho__modal {
  width: min(760px, calc(100% - 32px));
  max-height: calc(100% - 48px);
  padding: 0;
  border: 0;
  border-radius: 10px;
  background: #fff;
  color: var(--juyosho-ink);
  box-shadow: 0 10px 40px rgba(0, 0, 0, .2);
}
.p-juyosho__modal:not([open]) { display: none; } /* 閉じているときは必ず隠す（サイト共通の CSS で表示されないように） */
.p-juyosho__modal::backdrop { background: rgba(26, 26, 26, .45); }
.p-juyosho__modal-inner { padding: 40px 48px 32px; }
.p-juyosho__modal-title { margin: 0 0 24px; padding: 0 0 20px; border-bottom: .5px solid var(--juyosho-ink); color: var(--juyosho-heading); font-weight: 500; letter-spacing: .1em; text-align: center; }
.p-juyosho__modal .tensha-shipping-notice { margin: 0; padding: 0; border: 0; background: none; }
.p-juyosho__modal .tensha-shipping-notice table + p { color: #bf3823; } /* 送れない国・関税などの条件（表のすぐ下の段落）は赤字。お納めの方法の注記と同じ赤 */
.p-juyosho__payments { margin: 0; }
.p-juyosho__payments dt { margin: 20px 0 6px; font-weight: 600; }
.p-juyosho__payments dt:first-child { margin-top: 0; }
.p-juyosho__payments dd { margin: 0; }
.p-juyosho__modal-close-wrap { margin: 32px 0 0; text-align: center; }
.p-juyosho__modal-close {
  min-width: 160px;
  min-height: 48px;
  padding: 0 24px;
  border: 1px solid var(--juyosho-ink);
  border-radius: 8px;
  background: transparent;
  color: var(--juyosho-ink);
  font: inherit;
  cursor: pointer;
}
.p-juyosho__modal-close:hover { background: var(--juyosho-ink); color: #fff; }

/* ---------- 幅が足りないとき ---------- */
@media screen and (max-width: 1100px) {
  .p-juyosho__cards { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 40px 32px; }
}
@media screen and (max-width: 767px) {
  .p-juyosho { padding: 0 16px 72px; }
  .p-juyosho__hero { width: 100%; margin-top: 24px; }
  .p-juyosho__lead { margin-top: 48px !important; text-align: left; }
  .p-juyosho__links { gap: 16px; margin-top: 32px; }
  .p-juyosho__section { margin-top: 56px; }
  .p-juyosho__heading { margin-bottom: 28px; padding: 22px 0; }
  .p-juyosho__cards { grid-template-columns: 1fr; gap: 24px; }
  .p-juyosho__kigan { margin: 88px -16px 0; padding: 48px 16px 56px; }
  .p-juyosho__kigan-title { margin-bottom: 24px; }
  .p-juyosho__kigan-text { margin-bottom: 32px !important; text-align: left; }
  .p-juyosho__kigan-btns .c-btn { width: 100%; }
  .p-juyosho__modal-inner { padding: 28px 20px 24px; }
}
.p-juyosho__modal-title:focus { outline: none; }
/* お納めの方法の注記（国内に限ること・手数料）。赤字（祈願祭などの注意書きと同じ赤） */
.p-juyosho__payments-note { margin: 24px 0 0 !important; padding-top: 16px; border-top: .5px solid rgba(26, 26, 26, .2); color: #bf3823; }

/* ---------- 各言語版（template-multilingual-commerce.php の shop。2026-10-26）----------
   題字は日本語の題字の画像の代わりに、ページの題を文字で縦書き（参拝のご案内の各言語版と同じ）。英語は字を倒して縦に並べ、長い題は2列に折り返す */
.p-juyosho .p-juyosho__hero-title--text {
  left: 55.68%; /* 日本語の題字の中心（52.21% + 幅 6.94% の半分）と同じ位置 */
  top: 50%;
  width: auto;
  color: var(--juyosho-heading);
  font-weight: 500;
  letter-spacing: .3em;
  white-space: nowrap;
  writing-mode: vertical-rl;
  transform: translate(-50%, -50%);
}
.tensha-lang-en .p-juyosho .p-juyosho__hero-title--text { height: 84%; letter-spacing: .06em; white-space: normal; text-align: center; }
.tensha-lang-ko .p-juyosho { word-break: keep-all; }
.tensha-lang-en .p-juyosho--ml .p-juyosho__lead { text-align: center; }
/* （使っていない）前の各言語版のカード：リンクにせず、中で年・数を選んでお授かり籠に入れていた。2026-10-26 からは授与品のページ（?item=）へのリンク */
.p-juyosho__card--form { gap: 20px; }
.p-juyosho__card--form .p-juyosho__card-body { flex: 1; }
.p-juyosho__card-desc--full { display: block; -webkit-line-clamp: none; overflow: visible; }
.tensha-lang-en .p-juyosho__card-desc--full { text-align: left; }
/* 各言語版のカードもリンクにした（2026-10-26）：英語・韓国語の説明は両端そろえにすると語の間が空くので左そろえ */
:is(.tensha-lang-en, .tensha-lang-ko) .p-juyosho--ml .p-juyosho__card-desc { text-align: left; }
.p-juyosho__card-form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px 16px; margin: 0; padding-top: 16px; border-top: .5px solid rgba(26, 26, 26, .2); }
.p-juyosho__card-field { display: flex; flex-direction: column; gap: 4px; margin: 0; }
.p-juyosho__card-field select,
.p-juyosho__card-field input { min-height: 40px; padding: 4px 8px; border: 1px solid rgba(26, 26, 26, .4); border-radius: 4px; background: #fff; color: var(--juyosho-ink); font: inherit; }
.p-juyosho__card-field input { width: 5em; }
.p-juyosho__card-submit {
  flex: 1 1 100%;
  min-height: 48px;
  padding: 8px 16px;
  border: 1px solid var(--juyosho-ink);
  border-radius: 8px;
  background: transparent;
  color: var(--juyosho-ink);
  font: inherit;
  cursor: pointer;
}
.p-juyosho__card-submit:hover { background: var(--juyosho-ink); color: #fff; }
.p-juyosho__notices { max-width: 1000px; margin: 32px auto 0; }
.p-juyosho__card-unavailable { margin: 0 !important; padding-top: 16px; border-top: .5px solid rgba(26, 26, 26, .2); color: #bf3823; }
@media screen and (max-width: 767px) {
  .p-juyosho .p-juyosho__hero-title--text { letter-spacing: .15em; }
  .p-juyosho .p-juyosho__hero { width: 88%; } /* 左へずらしても左の線画が切れないよう、少し小さくする */
  .p-juyosho--ml .p-juyosho__lead, .tensha-lang-en .p-juyosho--ml .p-juyosho__lead { text-align: left; }
}
.p-juyosho__card-field:has(select) { flex: 1 1 8em; }
.p-juyosho__card-field select { width: 100%; }
.p-juyosho__card-year { flex: 1 1 8em; }
.p-juyosho__card-year strong { display: flex; align-items: center; min-height: 40px; font-weight: 500; }
.tensha-lang-en .p-juyosho :is(.p-juyosho__card-name, .p-juyosho__card-price) { letter-spacing: .03em; }

/* ---------- 授与品の詳細ページ（single-product.php。2026-10-26）----------
   授与所と同じ地紋・罫線の見出し・白いカード。中身は WooCommerce の [product_page]（写真と説明・お授かり籠に入れる欄）を二列にする */
.p-juyosho-product { max-width: 1000px; margin: 0 auto; padding-top: 56px; box-sizing: content-box; }
/* パンくず（授与所 › 品名）：下線なしの小さめの文字 */
.p-juyosho-product__crumb { margin: 0 0 24px; }
.p-juyosho-product__crumb ol { display: flex; flex-wrap: wrap; gap: 4px 0; margin: 0; padding: 0; list-style: none; }
.p-juyosho-product__crumb li { display: flex; align-items: center; color: rgba(26, 26, 26, .6); } /* 少し薄く（2026-10-26 宮の指示） */
.p-juyosho-product__crumb li + li::before { content: "›"; content: "›" / ""; margin: 0 .8em; color: rgba(26, 26, 26, .5); } /* 区切りの記号は読み上げない */
.p-juyosho-product__crumb a { color: rgba(26, 26, 26, .6); text-decoration: none; }
.p-juyosho-product__crumb a:hover { opacity: .7; }
/* 品名は白いカードの中、御初穂料の上 */
.p-juyosho-product__name { margin: 0 0 16px; padding: 0 0 16px; border-bottom: .5px solid var(--juyosho-ink); color: var(--juyosho-heading); font-weight: 500; letter-spacing: .1em; }
/* 暦の年の欄の注記・数の単位 */
.p-juyosho-product__note { margin: 24px 0 0 !important; }
.p-juyosho-product .quantity input[type="hidden"] + .p-juyosho-product__unit { display: none; }
body .p-juyosho-product .woocommerce .single-product div.product form.cart div.quantity { display: flex; align-items: center; gap: 8px; }
.p-juyosho-product__body .woocommerce div.product {
  display: grid;
  grid-template-columns: minmax(0, 400px) minmax(0, 1fr);
  gap: 48px;
  align-items: start;
  margin: 0;
  padding: 40px;
  border-radius: 8px;
  background: #fff;
  box-shadow: none; /* 影は付けない（2026-10-26 宮の指示） */
}
.p-juyosho-product__body .woocommerce div.product::before,
.p-juyosho-product__body .woocommerce div.product::after { display: none; }
.p-juyosho-product__body .woocommerce div.product div.images,
.p-juyosho-product__body .woocommerce div.product div.summary { float: none; width: auto; margin: 0; }
.p-juyosho-product__body .woocommerce div.product div.images img { display: block; width: 100%; height: auto; border-radius: 8px; }
.p-juyosho-product__body .woocommerce div.product .summary .price { margin: 0 0 20px; letter-spacing: .13em; }
.p-juyosho-product__body .woocommerce-product-details__short-description p { margin: 0 0 12px; line-height: 1.9; text-align: left; } /* 両端そろえだと「寸法：縦 130mm・…」の行が間延びする */
.p-juyosho-product__body .woocommerce div.product .product_meta { display: none; } /* 分類の表示（カテゴリー：御守り）は授与所の一覧と重なるので出さない */
/* お授かり籠に入れる欄：角を授与所のボタン・カードと同じ丸みにする（色はサイトの赤のまま） */
body .p-juyosho-product .woocommerce .single-product div.product form.cart :is(.variations select, .quantity .qty, .single_add_to_cart_button) { border-radius: 8px; }
.p-juyosho-product__back { display: flex; flex-direction: column; align-items: center; gap: 16px; margin: 64px 0 0; text-align: center; } /* 「お授かり籠を見る」「一覧に戻る」は上下二段（2026-10-26 宮の指示） */
.p-juyosho-product__back .c-btn { min-width: 260px; }
@media screen and (max-width: 767px) {
  .p-juyosho-product { padding-top: 32px; }
  .p-juyosho-product__body .woocommerce div.product { grid-template-columns: 1fr; gap: 24px; padding: 20px; }
  .p-juyosho-product__back { margin-top: 48px; }
  .p-juyosho-product__back .c-btn { width: 100%; }
}
/* 向かい干支の御守：生年月日などの欄は一行を使い、お授かり籠に入れるボタンはその下に置く */
.p-juyosho-product form.cart .tensha-mukaieto-fields { flex: 1 1 100%; box-sizing: border-box; min-width: 0; }
/* スマホでは WooCommerce の欄が二列の格子（数・ボタン）になるので、向かい干支の欄とボタンは列をまたがせる */
.p-juyosho-product form.cart:has(.tensha-mukaieto-fields) :is(.tensha-mukaieto-fields, .single_add_to_cart_button) { grid-column: 1 / -1; }
/* 暦：年を並べ、年ごとに部数を選ぶ欄（inc/tensha-commerce-calendar.php） */
.p-juyosho-product__years { margin-top: 24px; }
.p-juyosho-product__years .p-juyosho-product__note { margin: 0 0 12px !important; }
.p-juyosho-product__year-list { margin: 0 0 20px; padding: 0; list-style: none; border-top: .5px solid rgba(26, 26, 26, .2); }
.p-juyosho-product__year { display: flex; align-items: center; gap: 16px; padding: 12px 0; border-bottom: .5px solid rgba(26, 26, 26, .2); }
.p-juyosho-product__year-img img { display: block; width: 48px !important; height: auto !important; }
.p-juyosho-product__year-name { flex: 1; font-weight: 500; letter-spacing: .1em; }
.p-juyosho-product__year-qty { display: flex; align-items: center; gap: 8px; }
.p-juyosho-product__year-qty .qty { box-sizing: border-box; width: 6.4rem; min-height: 4.8rem; padding: 0 .8rem; border: 1px solid rgba(8, 13, 27, .22); border-radius: 8px; background: #fff; color: #1a1a1a; font: inherit; text-align: center; }
.p-juyosho-product__year-out { color: #bf3823; }
.p-juyosho-product__year.is-unavailable .p-juyosho-product__year-name { color: rgba(26, 26, 26, .5); }
body .p-juyosho-product .p-juyosho-product__years .single_add_to_cart_button { box-sizing: border-box; min-width: 18rem; min-height: 4.8rem; margin: 0; padding: 0 2rem; border: 1px solid #bf3823; border-radius: 8px; background: #bf3823; color: #fff; font-family: 'Noto Serif JP', serif; font-weight: 300; cursor: pointer; }
body .p-juyosho-product .p-juyosho-product__years .single_add_to_cart_button:hover { opacity: .86; }
body .p-juyosho-product .p-juyosho-product__years .single_add_to_cart_button:disabled { border-color: #d8d4cf; background: #e7e1dc; color: #7b746f; cursor: not-allowed; }
@media screen and (max-width: 767px) {
  body .p-juyosho-product .p-juyosho-product__years .single_add_to_cart_button { width: 100%; }
}
/* 数とお授かり籠に入れるボタンは段を分ける（2026-10-26 宮の指示）。PC は flex の折り返し、スマホは WooCommerce の二列の格子をまたがせる */
body .p-juyosho-product .woocommerce .single-product div.product form.cart:not(.p-juyosho-product__years) { flex-direction: column; align-items: flex-start; }
body .p-juyosho-product .woocommerce .single-product div.product form.cart .single_add_to_cart_button { grid-column: 1 / -1; }
@media screen and (max-width: 767px) {
  body .p-juyosho-product .woocommerce .single-product div.product form.cart:not(.p-juyosho-product__years) { align-items: stretch; }
  body .p-juyosho-product .woocommerce .single-product div.product form.cart .single_add_to_cart_button { width: 100%; }
}
/* 授与品の詳細ページの行間と余白（2026-10-26 宮の指示「読みにくいので調整」）：品名 → 御初穂料 → 説明 → 申込みの欄 の間を段ごとにそろえる */
.p-juyosho-product__name { margin-bottom: 20px; padding-bottom: 20px; }
.p-juyosho-product__body .woocommerce div.product .summary .price { margin: 0 0 24px !important; }
.p-juyosho-product__body .woocommerce-product-details__short-description { margin: 0; }
.p-juyosho-product__body .woocommerce-product-details__short-description p { margin: 0 !important; } /* 段落の間は行の間と同じ（2026-10-26 宮の指示） */
.p-juyosho-product__body .woocommerce-product-details__short-description p:last-child { margin-bottom: 0 !important; }
.p-juyosho-product__body .woocommerce div.product form.cart { margin-top: 36px !important; }
.p-juyosho-product__years { margin-top: 36px; padding-top: 28px; border-top: .5px solid rgba(26, 26, 26, .2); }
.p-juyosho-product__years .p-juyosho-product__note { margin: 0 0 8px !important; }
.p-juyosho-product__year-list { margin-bottom: 28px; border-top: 0; }
.p-juyosho-product__years { padding-top: 12px; } /* 注記を外したので、区切りの線から年の行までを詰める */
.p-juyosho-product__year { padding: 8px 0; }
.p-juyosho-product__year-qty .qty { min-height: 4.4rem; }
@media screen and (max-width: 767px) {
  .p-juyosho-product__years { margin-top: 28px; padding-top: 24px; }
}
/* 向かい干支の御守：ほかの授与品と一緒に送る旨の注記は、枠なしの赤字（2026-10-26 宮の指示。お授かり籠・お会計の注記は枠のまま） */
body .p-juyosho-product .tensha-mukaieto-notice { max-width: none; margin: 16px 0 0; padding: 0; border: 0; background: none; color: #bf3823; }
/* 向かい干支の御守の「御守をお持ちになる方」の欄（2026-10-26 宮の指示「他のページのグレー枠・フォームのデザインとあわせて」）：
   参拝のご案内・祈願祭と同じ淡い灰色の箱（線なし・角丸10px）、入力欄は祈願祭のフォーム（onmyodo-forms.css）と同じ白・細い線・角丸10px・高さ47px、
   必須は「*」の代わりに朱の小さな札「必須」（祈願祭と同じ。読み上げは title の「必須」） */
body .p-juyosho-product .tensha-mukaieto-fields { max-width: none; margin: 0 0 24px; padding: 28px 32px 24px; border: 0; border-radius: 10px; background: rgba(226, 226, 224, .35); }
body .p-juyosho-product .tensha-mukaieto-fields legend { float: left; width: 100%; margin: 0 0 12px; padding: 0; color: var(--juyosho-heading); font-weight: 500; letter-spacing: .1em; }
body .p-juyosho-product .tensha-mukaieto-fields legend + * { clear: both; }
body .p-juyosho-product :is(.tensha-mukaieto-lead, .tensha-mukaieto-note) { margin: 0 0 20px; color: var(--juyosho-ink); }
body .p-juyosho-product .tensha-mukaieto-note { margin: 4px 0 0; }
body .p-juyosho-product .tensha-mukaieto-row { margin: 0 0 18px; }
body .p-juyosho-product :is(.tensha-mukaieto-row > label, .tensha-mukaieto-label) { display: flex; align-items: center; gap: 8px; margin: 0 0 6px; }
body .p-juyosho-product .tensha-mukaieto-fields abbr.required { display: inline-block; height: 20px; padding: 0 7px; border-radius: 4px; background: #bf3823; color: transparent; font-size: 0; line-height: 1; text-decoration: none; }
body .p-juyosho-product .tensha-mukaieto-fields abbr.required::before { content: "必須"; display: block; position: relative; top: -1px; height: 20px; color: #fff; } /* 明朝体の字の形で1px下がって見えるので上げ、上下の余白をそろえる */
body .p-juyosho-product .tensha-mukaieto-fields :is(input[type="text"], select) {
  box-sizing: border-box;
  height: 47px;
  min-height: 47px;
  padding: 0 16px;
  border: .5px solid #1a1a1a !important;
  border-radius: 10px !important;
  background-color: #fff;
  box-shadow: none;
  color: #1a1a1a;
  font: inherit;
}
body .p-juyosho-product .tensha-mukaieto-fields input[type="text"] { width: 100%; }
/* 選択欄：標準の矢印の代わりに細い山形（祈願祭のフォームと同じ） */
body .p-juyosho-product .tensha-mukaieto-fields select {
  -webkit-appearance: none !important;
  appearance: none !important;
  padding-right: 36px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%231a1a1a'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 10px 6px;
}
body .p-juyosho-product .tensha-mukaieto-fields :is(input[type="text"], select):focus { outline: 2px solid rgba(191, 56, 35, .35); outline-offset: 1px; }
body .p-juyosho-product .tensha-mukaieto-qty { min-width: 7em; }
body .p-juyosho-product .tensha-mukaieto-era-year { min-width: 13em; }
body .p-juyosho-product .tensha-mukaieto-unit select { min-width: 5.5em; }
body .p-juyosho-product .tensha-mukaieto-birth { gap: 8px 12px; }
body .p-juyosho-product .tensha-mukaieto-unit { gap: 6px; }
body .p-juyosho-product .tensha-mukaieto-sex { gap: 28px; padding-top: 4px; }
body .p-juyosho-product .tensha-mukaieto-sex input[type="radio"] { width: 18px !important; height: 18px !important; accent-color: #bf3823; }
body .p-juyosho-product .tensha-mukaieto-person-title { border-bottom: .5px solid rgba(26, 26, 26, .3); font-weight: 500; }
@media screen and (max-width: 767px) {
  body .p-juyosho-product .tensha-mukaieto-fields { padding: 24px 20px 20px; }
  body .p-juyosho-product .tensha-mukaieto-era-year { width: 100% !important; }
}
.p-juyosho-product__body .woocommerce-product-details__short-description .p-juyosho-product__size { color: rgba(26, 26, 26, .6); } /* 寸法：パンくずと同じ色・大きさ */
.p-juyosho-product__body .woocommerce-product-details__short-description p.p-juyosho-product__size { margin-top: 10px !important; } /* 寸法は説明と文字の大きさが違うので、少しだけ離す */

/* ---------- お授かり籠（page-cart.php。2026-10-26 宮の指示「今までのデザインを組み込んで」）----------
   授与所・授与品の詳細ページと同じ地紋・パンくず・罫線の見出し。授与品の表と合計は白いカード（影なし・角丸8px）、PC は左右に並べる */
.p-juyosho-cart__card { box-sizing: border-box; padding: 40px; border-radius: 8px; background: #fff; }
.p-juyosho-cart__title { margin: 0 0 28px; }
.p-juyosho-cart__body .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 24px 32px; align-items: start; }
.p-juyosho-cart__body .woocommerce > :is(.tensha-shipping-link, .p-juyosho__links, .woocommerce-notices-wrapper, .tensha-mukaieto-notice, .wc-empty-cart-message, .return-to-shop, .woocommerce-message, .woocommerce-info, .woocommerce-error) { grid-column: 1 / -1; }
.p-juyosho-cart__body .woocommerce-notices-wrapper:empty { display: none; }
.p-juyosho-cart__body .tensha-shipping-link { max-width: none !important; margin: 0 !important; text-align: right; }
.p-juyosho-cart__body .tensha-shipping-link a { color: var(--juyosho-ink); }
body .p-juyosho-cart__body .woocommerce .cart-collaterals { width: auto; }
body .p-juyosho-cart__body .woocommerce .cart-collaterals .cart_totals { float: none; width: auto; } /* WooCommerce の右寄せ・幅48% を消す */
/* 合計は白いカードの中の淡い灰色の箱（授与品の表はカードにじかに置く） */
.p-juyosho-cart__body .cart_totals { box-sizing: border-box; padding: 28px; border-radius: 10px; background: rgba(226, 226, 224, .35); }
.p-juyosho-cart__body .cart_totals h2 { margin: 0 0 16px; padding: 0 0 16px; border-bottom: .5px solid var(--juyosho-ink); color: var(--juyosho-heading); font-weight: 500; letter-spacing: .1em; }
/* 表：外枠を消し、行を細い線で区切る */
body .p-juyosho-cart__body .woocommerce table.shop_table { margin: 0; border: 0; border-radius: 0; border-collapse: collapse; }
body .p-juyosho-cart__body .woocommerce table.shop_table :is(th, td) { padding: 16px 8px; border: 0; border-bottom: .5px solid rgba(26, 26, 26, .2); background: none; vertical-align: middle; }
body .p-juyosho-cart__body .woocommerce table.shop_table thead th { padding-top: 0; color: rgba(26, 26, 26, .6); font-weight: 400; }
body .p-juyosho-cart__body .woocommerce table.shop_table tr:last-child > :is(th, td) { border-bottom: 0; }
body .p-juyosho-cart__body .woocommerce table.cart td.product-name a { color: var(--juyosho-ink); text-decoration: none; letter-spacing: .05em; }
body .p-juyosho-cart__body .woocommerce table.cart td.product-name a:hover { opacity: .7; }
body .p-juyosho-cart__body .woocommerce table.cart .product-thumbnail img { width: 56px; height: auto; border-radius: 4px; }
body .p-juyosho-cart__body .woocommerce table.cart a.remove { color: rgba(26, 26, 26, .5) !important; font-size: 2rem; font-weight: 300; }
body .p-juyosho-cart__body .woocommerce table.cart a.remove:hover { background: none; color: #bf3823 !important; }
body .p-juyosho-cart__body .woocommerce table.cart .quantity .qty { box-sizing: border-box; width: 6.4rem; min-height: 4.4rem; padding: 0 .8rem; border: 1px solid rgba(8, 13, 27, .22); border-radius: 8px; background: #fff; color: #1a1a1a; font: inherit; text-align: center; }
body .p-juyosho-cart__body .woocommerce table.cart td.actions { padding: 20px 0 0; text-align: right; }
body .p-juyosho-cart__body .woocommerce .cart_totals table.shop_table th { width: 30%; color: rgba(26, 26, 26, .6); font-weight: 400; text-align: left; }
.p-juyosho-cart__body .cart_totals .order-total :is(th, td) { color: var(--juyosho-ink); font-weight: 500; }
.p-juyosho-cart__body .woocommerce-shipping-methods { margin: 0; padding: 0; list-style: none; }
.p-juyosho-cart__body .woocommerce-shipping-destination { margin: 8px 0 0; color: rgba(26, 26, 26, .6); }
/* ボタン：更新・住所の変更・買い物を続ける＝線のボタン、お申し込みへ進む＝朱（授与品の詳細ページと同じ角丸8px） */
.p-juyosho-cart__body :is(table.cart td.actions .button, .shipping-calculator-button, .woocommerce-message .button, .return-to-shop .button, .shipping-calculator-form .button) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 4.4rem;
  padding: 0 2rem;
  border: 1px solid var(--juyosho-ink);
  border-radius: 8px;
  background: transparent;
  color: var(--juyosho-ink);
  font-family: inherit;
  font-weight: 400;
  line-height: 1.4;
  text-decoration: none;
  cursor: pointer;
}
.p-juyosho-cart__body :is(table.cart td.actions .button, .shipping-calculator-button, .woocommerce-message .button, .return-to-shop .button, .shipping-calculator-form .button):hover { background: var(--juyosho-ink); color: #fff; }
body .p-juyosho-cart__body .woocommerce table.cart td.actions .button:disabled { border-color: rgba(26, 26, 26, .2); background: transparent; color: rgba(26, 26, 26, .4); cursor: default; }
.p-juyosho-cart__body .shipping-calculator-button { min-height: 3.6rem; margin-top: 8px; padding: 0 1.4rem; white-space: nowrap; }
.p-juyosho-cart__body .wc-proceed-to-checkout { margin: 24px 0 0; padding: 0; }
.p-juyosho-cart__body .wc-proceed-to-checkout .checkout-button { display: flex; align-items: center; justify-content: center; min-height: 5.2rem; margin: 0; padding: 0 2rem; border: 1px solid #bf3823; border-radius: 8px; background: #bf3823; color: #fff; font-family: inherit; font-weight: 400; }
.p-juyosho-cart__body .wc-proceed-to-checkout .checkout-button:hover { opacity: .86; }
/* 知らせ（籠に入れた・空の籠）：淡い灰色の箱、線なし */
.p-juyosho-cart__body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; margin: 0; padding: 20px 24px; border: 0; border-radius: 10px; background: rgba(226, 226, 224, .35); color: var(--juyosho-ink); }
.p-juyosho-cart__body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error)::before { display: none; }
.p-juyosho-cart__body .woocommerce-message .button { order: 2; }
.p-juyosho-cart__body .woocommerce-error { color: #bf3823; }
.p-juyosho-cart__body .return-to-shop { margin: 0; text-align: center; }
@media screen and (max-width: 1023px) {
  .p-juyosho-cart__body .woocommerce { grid-template-columns: minmax(0, 1fr); }
}
@media screen and (max-width: 767px) {
  .p-juyosho-cart__card { padding: 20px; }
  .p-juyosho-cart__title { margin-bottom: 20px; }
  .p-juyosho-cart__body .cart_totals { padding: 20px; }
  .p-juyosho-cart__body .tensha-shipping-link { text-align: left; }
  body .p-juyosho-cart__body .woocommerce table.shop_table_responsive tr td { padding: 10px 0; }
  body .p-juyosho-cart__body .woocommerce table.cart tr.cart_item { display: block; padding: 8px 0; border-bottom: .5px solid rgba(26, 26, 26, .2); }
  body .p-juyosho-cart__body .woocommerce table.cart tr.cart_item td { border-bottom: 0; }
  body .p-juyosho-cart__body .woocommerce table.cart td.actions { padding-top: 16px; }
  body .p-juyosho-cart__body .woocommerce table.cart td.actions .button { width: 100%; }
}
/* スマホの表（行ごとに見出しを左に出す）：見出しは太字にせず薄く */
@media screen and (max-width: 767px) {
  body .p-juyosho-cart__body .woocommerce table.shop_table_responsive tr td::before { color: rgba(26, 26, 26, .6); font-weight: 400; }
  body .p-juyosho-cart__body .woocommerce .cart_totals table.shop_table_responsive tr.order-total td::before { color: var(--juyosho-ink); font-weight: 500; }
}
body .p-juyosho-cart__body .woocommerce table.shop_table :is(tr:nth-child(2n) td, tr td) { background: none; } /* WooCommerce の一行おきの灰色を消す */
/* 授与品一覧の見出しの右下の「お授かり籠を見る」（2026-10-26 宮の指示）：見出しの下の線とカードの間、右寄せの線のボタン */
.p-juyosho__heading:has(+ .p-juyosho__cart) { margin-bottom: 24px; }
.p-juyosho__cart { margin: 0 0 32px !important; text-align: right; }
.p-juyosho__cart-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 4.4rem; padding: 0 2.4rem; border: 1px solid var(--juyosho-ink); border-radius: 8px; background: var(--juyosho-ink); color: #fff; text-decoration: none; transition: opacity .2s; } /* 黒の塗り・白の文字（2026-10-26 宮の指示。朱から改めた） */
.p-juyosho__cart-btn:hover { opacity: .86; }
/* 授与品のページの下の「お授かり籠を見る」も同じ黒の塗りのボタン */
body .p-juyosho-product__back .c-btn.p-juyosho__cart-link { border-color: var(--juyosho-ink); background: var(--juyosho-ink); color: #fff; }
body .p-juyosho-product__back .c-btn.p-juyosho__cart-link span { color: #fff; }
body .p-juyosho-product__back .c-btn.p-juyosho__cart-link:hover { opacity: .86; }
@media screen and (max-width: 767px) {
  .p-juyosho__heading:has(+ .p-juyosho__cart) { margin-bottom: 16px; }
  .p-juyosho__cart { margin-bottom: 24px !important; }
}
/* お授かり籠：合計（淡い灰色の箱）の下の「配送・送料について」「お納め（決済）の方法について」（宮の指示で表の上 → カードの下 → 合計の下 → 合計と「お申し込みへ進む」の間へ移した） */
.p-juyosho-cart__body .wc-proceed-to-checkout .p-juyosho__links { align-items: flex-start; gap: 8px; margin: 0 0 20px; }
/* 「お授かり籠に入れる」は、下の「お授かり籠を見る」「一覧に戻る」と同じ大きさ（幅260px・高さ66px・文字の太さと字間）（2026-10-26 宮の指示） */
body .p-juyosho-product .woocommerce .single-product div.product form.cart .single_add_to_cart_button,
body .p-juyosho-product .p-juyosho-product__years .single_add_to_cart_button { min-width: 260px; font-weight: 500 !important; letter-spacing: .1em; } /* 高さは上のレイヤーの中で決める */
@media screen and (max-width: 767px) {
  body .p-juyosho-product .woocommerce .single-product div.product form.cart .single_add_to_cart_button,
  body .p-juyosho-product .p-juyosho-product__years .single_add_to_cart_button { min-width: 0; width: 100%; }
}

/* ---------- 御初穂料奉納（お会計 page-checkout.php。2026-10-26 宮の指示「同じくデザイン調整」）----------
   お授かり籠と同じ白いカード。入力欄は祈願祭のフォーム（onmyodo-forms.css）と同じ形（白・細い線・角丸10px・高さ47px）、
   必須は朱の小さな札「必須」、任意は灰色の線の札「任意」（祈願祭と同じ）。お申し込みの内容とお納めの方法は淡い灰色の箱。
   functions.php のお会計の書式（wp_footer の onmyodo-checkout-payment-style）より強くするため body .p-juyosho-checkout から書く */
body .p-juyosho-checkout form.woocommerce-checkout { font-size: 1.6rem; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px 0; width: 100%; } /* お申し込みの方・お届け先・ご連絡事項は一列（2026-10-26 宮の指示） */
body .p-juyosho-checkout form.woocommerce-checkout .col2-set :is(.col-1, .col-2) { float: none; width: auto; max-width: none; }
body .p-juyosho-checkout form.woocommerce-checkout :is(h3, #order_review_heading) { margin: 0 0 12px; padding: 0; border-bottom: 0; color: var(--juyosho-heading); font-size: 2rem; font-weight: 500; letter-spacing: .1em; }
body .p-juyosho-checkout form.woocommerce-checkout .form-row { margin: 0 0 18px; padding: 0; }
body .p-juyosho-checkout form.woocommerce-checkout label { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 0 0 6px; color: var(--juyosho-ink); font-weight: 400; }
body .p-juyosho-checkout form.woocommerce-checkout :is(abbr, span).required { display: inline-block; height: 20px; padding: 0 7px; border-radius: 4px; background: #bf3823; color: transparent; font-size: 0; line-height: 1; text-decoration: none; }
body .p-juyosho-checkout form.woocommerce-checkout :is(abbr, span).required::before { content: var(--juyosho-required, "必須"); display: block; position: relative; top: -1px; height: 20px; color: #fff; }
body .p-juyosho-checkout form.woocommerce-checkout .optional { display: inline-block; height: 18px; padding: 0 6px; text-align: center; border: 1px solid #8a8a8a; border-radius: 4px; background: #fff; color: transparent; font-size: 0; line-height: 1; }
body .p-juyosho-checkout form.woocommerce-checkout .optional::before { content: var(--juyosho-optional, "任意"); display: block; position: relative; top: -1px; height: 18px; color: #5d5552; }
body .p-juyosho-checkout form.woocommerce-checkout :is(input.input-text, select, .select2-container--default .select2-selection--single) {
  box-sizing: border-box;
  height: 47px;
  min-height: 47px;
  padding: 0 16px;
  border: .5px solid #1a1a1a !important;
  border-radius: 10px !important;
  background-color: #fff;
  box-shadow: none;
  color: #1a1a1a;
  font-size: 1.6rem;
}
body .p-juyosho-checkout form.woocommerce-checkout textarea.input-text { box-sizing: border-box; width: 100%; max-width: none; min-height: 140px; padding: 12px 16px; border: .5px solid #1a1a1a !important; border-radius: 10px !important; background: #fff; font-size: 1.6rem; }
body .p-juyosho-checkout form.woocommerce-checkout :is(input.input-text, select, textarea):focus { outline: 2px solid rgba(191, 56, 35, .35); outline-offset: 1px; }
body .p-juyosho-checkout form.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered { padding: 0; line-height: 45px; }
body .p-juyosho-checkout form.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow { height: 45px; right: 10px; }
/* お申し込みの内容とお納めの方法：右下の淡い灰色の箱にまとめず、全幅で下に置く（入力の後に確かめる順） */
body .p-juyosho-checkout form.woocommerce-checkout #order_review_heading { margin-top: 40px; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review { box-sizing: border-box; padding: 28px; border-radius: 10px; background: rgba(226, 226, 224, .35); }
body .p-juyosho-checkout form.woocommerce-checkout table.shop_table { margin: 0 0 20px; border: 0; border-radius: 0; background: none; }
body .p-juyosho-checkout form.woocommerce-checkout table.shop_table :is(th, td) { padding: 14px 8px; border: 0; border-bottom: .5px solid rgba(26, 26, 26, .2); background: none; }
body .p-juyosho-checkout form.woocommerce-checkout table.shop_table thead th { padding-top: 0; color: rgba(26, 26, 26, .6); font-weight: 400; }
body .p-juyosho-checkout form.woocommerce-checkout table.shop_table tfoot th { color: rgba(26, 26, 26, .6); font-weight: 400; }
body .p-juyosho-checkout form.woocommerce-checkout table.shop_table tr.order-total :is(th, td) { border-bottom: 0; color: var(--juyosho-ink); font-weight: 500; }
body .p-juyosho-checkout #order_review .p-juyosho__links { align-items: flex-start; margin: 0 0 20px; }
body .p-juyosho-checkout .onmyodo-checkout-stripe-note { margin: 0 0 20px; padding: 0; border: 0; background: none; color: rgba(26, 26, 26, .7); }
body .p-juyosho-checkout #payment { border-radius: 10px; background: #fff; }
body .p-juyosho-checkout #payment ul.payment_methods { padding: 20px 24px; border-bottom: .5px solid rgba(26, 26, 26, .2); }
body .p-juyosho-checkout #payment div.payment_box { border-radius: 8px; background: rgba(226, 226, 224, .35); color: var(--juyosho-ink); }
body .p-juyosho-checkout #payment div.payment_box::before { display: none; }
body .p-juyosho-checkout #payment div.form-row.place-order { padding: 24px; }
body .p-juyosho-checkout #payment #place_order { float: none; display: block; width: 100%; max-width: 360px; height: 66px; margin: 0 auto; padding: 0 2rem; border: 1px solid #bf3823; border-radius: 8px; background: #bf3823; color: #fff; font-family: inherit; font-size: 1.8rem; font-weight: 500; letter-spacing: .1em; }
body .p-juyosho-checkout #payment #place_order:hover { opacity: .86; }
/* 知らせ（入力の誤りなど）：淡い灰色の箱・朱の文字 */
body .p-juyosho-checkout__body :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) { margin: 0 0 24px; padding: 20px 24px; border: 0; border-radius: 10px; background: rgba(226, 226, 224, .35); color: var(--juyosho-ink); list-style: none; }
body .p-juyosho-checkout__body .woocommerce-error { color: #bf3823; }
body .p-juyosho-checkout__body :is(.woocommerce-error, .woocommerce-message, .woocommerce-info)::before { display: none; }
@media screen and (max-width: 767px) {
  body .p-juyosho-checkout form.woocommerce-checkout .col2-set { grid-template-columns: minmax(0, 1fr); }
  body .p-juyosho-checkout form.woocommerce-checkout #order_review { padding: 16px; }
  body .p-juyosho-checkout #payment ul.payment_methods { padding: 16px; }
  body .p-juyosho-checkout #payment div.form-row.place-order { padding: 16px; }
}
/* 御初穂料奉納：項目の名と入力欄を一行に（左に名・右に欄。祈願祭のフォームの表と同じ並び。2026-10-26 宮の指示）。スマホは名の下に欄 */
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row { display: grid; grid-template-columns: 220px minmax(0, 1fr); align-items: center; gap: 8px 24px; float: none; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 10px 0 !important; border-bottom: 0; } /* 行ごとの線は引かない（2026-10-26 宮の指示） */
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row::before,
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row::after { display: none; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row > label { margin: 0; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row > .woocommerce-input-wrapper { display: block; width: 100%; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row.notes,
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row:has(textarea) { align-items: start; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row:has(textarea) > label { padding-top: 12px; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row[style*="display: none"],
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row.hidden { display: none !important; }
@media screen and (max-width: 767px) {
  body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row:has(textarea) > label { padding-top: 0; }
}
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row :is(input.input-text, select:not(.select2-hidden-accessible), textarea, .select2-container) { width: 100% !important; max-width: none; } /* 姓・名・郵便番号・都道府県も欄の幅いっぱい */
/* 姓・名はほかの項目と同じく一行ずつ（2026-10-26 宮の指示。いったん姓・名を一行に並べたが、二段に戻した） */
/* 性別（丸い選び）と生年月日（年・月・日の選び欄）：祈願祭のフォームと同じ形（2026-10-26 宮の指示） */
.p-juyosho-checkout__sex { display: flex; flex-wrap: wrap; gap: 12px 48px; padding: 8px 0; }
.p-juyosho-checkout__sex label { display: inline-flex !important; align-items: center; gap: 12px; margin: 0 !important; cursor: pointer; }
.p-juyosho-checkout__sex input[type="radio"] { -webkit-appearance: none !important; appearance: none !important; display: inline-block !important; width: 24px !important; height: 24px !important; margin: 0 !important; border: 1px solid #b5b5b5; border-radius: 50%; background: #fff; cursor: pointer; }
.p-juyosho-checkout__sex input[type="radio"]:checked { border-color: #bf3823; background: radial-gradient(circle, #bf3823 0 5px, #fff 6px); }
.p-juyosho-checkout__sex input[type="radio"]:focus-visible { outline: 2px solid rgba(191, 56, 35, .35); outline-offset: 2px; }
.p-juyosho-checkout__birth { display: flex; flex-wrap: wrap; gap: 12px 20px; }
.p-juyosho-checkout__birth-part { display: inline-flex; align-items: center; gap: 10px; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row .p-juyosho-checkout__birth select { width: 140px !important; height: 47px; padding: 0 36px 0 16px; border: .5px solid #1a1a1a !important; border-radius: 10px !important; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%231a1a1a'/%3E%3C/svg%3E") no-repeat right 14px center / 10px 6px; -webkit-appearance: none; appearance: none; color: #1a1a1a; font-size: 1.6rem; }
@media screen and (max-width: 767px) {
  .p-juyosho-checkout__birth { flex-wrap: nowrap; gap: 8px; }
  .p-juyosho-checkout__birth-part { flex: 1 1 0; min-width: 0; gap: 4px; }
  .p-juyosho-checkout__birth-part:first-child { flex-grow: 1.15; }
  /* 年・月・日を一行に収める。選び欄は残りの幅を分け合う（各言語の「请选择」なども切れないように。2026-10-26） */
  body .p-juyosho-checkout form.woocommerce-checkout .col2-set .form-row .p-juyosho-checkout__birth select { width: 100% !important; min-width: 0; padding: 0 16px 0 6px !important; background-position: right 5px center; }
}
/* 入力欄の幅は中身に要る分だけ（国・郵便番号・都道府県・電話番号。2026-10-26 宮の指示）。住所・メールなど長いものは全幅のまま */
body .p-juyosho-checkout form.woocommerce-checkout .col2-set [id$="_country_field"] :is(select:not(.select2-hidden-accessible), .select2-container) { width: 300px !important; max-width: 100%; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set [id$="_postcode_field"] input.input-text { width: 180px !important; max-width: 100%; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set [id$="_state_field"] :is(select:not(.select2-hidden-accessible), .select2-container, input.input-text) { width: 200px !important; max-width: 100%; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set [id$="_phone_field"] input.input-text { width: 260px !important; max-width: 100%; }
/* 建物名・部屋番号：任意の札を出さず、欄の下に「ある場合は必ず」の注記（朱） */
body .p-juyosho-checkout form.woocommerce-checkout .p-juyosho-checkout__address2 .optional { display: none; }
body .p-juyosho-checkout form.woocommerce-checkout .p-juyosho-checkout__address2 label.screen-reader-text { position: static !important; width: auto !important; height: auto !important; clip: auto !important; clip-path: none !important; overflow: visible !important; margin: 0 !important; }
body .p-juyosho-checkout form.woocommerce-checkout .p-juyosho-checkout__address2 .description { display: block !important; position: static !important; margin: 6px 0 0; padding: 0; border: 0; background: none; color: #bf3823; }
body .p-juyosho-checkout form.woocommerce-checkout .p-juyosho-checkout__address2 .description::before { display: none; }
/* お申し込みの方の欄と「別の住所へお届けしますか？」の間に区切りの線（2026-10-26 宮の指示） */
body .p-juyosho-checkout form.woocommerce-checkout .col2-set .col-2 { margin-top: 16px; padding-top: 32px; border-top: .5px solid rgba(26, 26, 26, .3); }
/* 「別の住所へお届けしますか？」：灰色の箱の札をやめ、祈願祭の同意の欄と同じ四角い選び（朱の印）＋文字にする。下に区切りの線（2026-10-26 宮の指示） */
body .p-juyosho-checkout form.woocommerce-checkout #ship-to-different-address { display: block; width: 100%; margin: 0 0 24px !important; padding: 0 0 28px; border-bottom: .5px solid rgba(26, 26, 26, .3); font-size: 1.6rem; font-weight: 400; letter-spacing: 0; }
body .p-juyosho-checkout form.woocommerce-checkout #ship-to-different-address label { display: inline-flex !important; align-items: center; gap: 12px; margin: 0; padding: 0 !important; border: 0 !important; background: none !important; cursor: pointer; }
body .p-juyosho-checkout form.woocommerce-checkout #ship-to-different-address label > span { display: inline !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; color: var(--juyosho-ink); font-size: 1.6rem; }
body .p-juyosho-checkout form.woocommerce-checkout #ship-to-different-address-checkbox { position: static !important; display: inline-block !important; -webkit-appearance: none !important; appearance: none !important; width: 22px !important; height: 22px !important; margin: 0 !important; opacity: 1 !important; clip: auto !important; border: 1px solid #b5b5b5; border-radius: 4px; background: #fff; cursor: pointer; }
body .p-juyosho-checkout form.woocommerce-checkout #ship-to-different-address-checkbox:checked { border-color: #bf3823; background: #bf3823 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='10' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1.5' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") no-repeat center / 12px 10px; }
body .p-juyosho-checkout form.woocommerce-checkout #ship-to-different-address-checkbox:focus-visible { outline: 2px solid rgba(191, 56, 35, .35); outline-offset: 2px; }
/* ご連絡事項：入力欄に余裕（高さ180px・内側の余白16px）、下に区切りの線（2026-10-26 宮の指示） */
body .p-juyosho-checkout form.woocommerce-checkout .woocommerce-additional-fields { padding-bottom: 28px; border-bottom: .5px solid rgba(26, 26, 26, .3); }
/* お申し込みの内容の表：横幅いっぱいに使い、授与品の名は一行で、金額は右にそろえる（2026-10-26 宮の指示） */
body .p-juyosho-checkout form.woocommerce-checkout table.woocommerce-checkout-review-order-table { width: 100% !important; table-layout: auto; }
body .p-juyosho-checkout form.woocommerce-checkout table.woocommerce-checkout-review-order-table :is(th, td):first-child { width: auto !important; text-align: left; }
body .p-juyosho-checkout form.woocommerce-checkout table.woocommerce-checkout-review-order-table :is(th, td):last-child { width: 40% !important; text-align: right; }
body .p-juyosho-checkout form.woocommerce-checkout table.woocommerce-checkout-review-order-table .woocommerce-shipping-methods { text-align: right; }
@media screen and (max-width: 767px) {
  body .p-juyosho-checkout form.woocommerce-checkout table.woocommerce-checkout-review-order-table :is(th, td):last-child { width: 58% !important; }
  body .p-juyosho-checkout form.woocommerce-checkout #order_review table.shop_table :is(th, td) { padding: 12px 4px; }
}
/* お申し込みの内容とお納め（決済）の方法を分ける（2026-10-26 宮の指示）：表は淡い灰色の箱、その下に見出し「お納め（決済）の方法」と、お納めの方法を選ぶ淡い灰色の箱 */
body .p-juyosho-checkout form.woocommerce-checkout #order_review { padding: 0; border-radius: 0; background: none; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review table.woocommerce-checkout-review-order-table { border-collapse: separate; border-spacing: 0; padding: 12px 24px; border-radius: 10px; background: rgba(226, 226, 224, .35); }
body .p-juyosho-checkout form.woocommerce-checkout #order_review .p-juyosho__links { margin: 0 0 8px; }
body .p-juyosho-checkout form.woocommerce-checkout .p-juyosho-checkout__pay-title { margin: 40px 0 12px !important; padding: 32px 0 0 !important; border-top: .5px solid rgba(26, 26, 26, .3) !important; color: var(--juyosho-heading); font-size: 2rem; font-weight: 500; letter-spacing: .1em; }
body .p-juyosho-checkout #payment { border-radius: 10px; background: rgba(226, 226, 224, .35); }
body .p-juyosho-checkout #payment ul.payment_methods { border-bottom: .5px solid rgba(26, 26, 26, .2); background: none; }
body .p-juyosho-checkout #payment div.payment_box { background: #fff; }
@media screen and (max-width: 767px) {
  body .p-juyosho-checkout form.woocommerce-checkout #order_review table.woocommerce-checkout-review-order-table { padding: 8px 12px; }
}
/* お納め（決済）の方法 → お申し込みの内容 → 確定のボタン の順に並べ替える（2026-10-26 宮の指示） */
body .p-juyosho-checkout form.woocommerce-checkout #order_review_heading { display: none; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review { position: relative; display: flex; flex-direction: column; margin-top: 40px; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review #payment { display: contents; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review .p-juyosho-checkout__pay-title { order: 1; margin-top: 0 !important; padding-top: 0 !important; border-top: 0 !important; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review .onmyodo-checkout-stripe-note { order: 2; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review #payment ul.payment_methods { order: 3; margin: 0; padding: 20px 24px; border: 0; border-radius: 10px; background: rgba(226, 226, 224, .35); }
body .p-juyosho-checkout form.woocommerce-checkout #order_review .p-juyosho-checkout__review-title { order: 4; margin: 40px 0 12px; padding: 32px 0 0; border-top: .5px solid rgba(26, 26, 26, .3); color: var(--juyosho-heading); font-size: 2rem; font-weight: 500; letter-spacing: .1em; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review table.woocommerce-checkout-review-order-table { order: 5; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review .p-juyosho__links { order: 6; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review #payment .form-row.place-order { order: 7; margin: 24px 0 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review > :not(.p-juyosho-checkout__pay-title, .onmyodo-checkout-stripe-note, .p-juyosho-checkout__review-title, table, .p-juyosho__links, #payment) { order: 8; }
@media screen and (max-width: 767px) {
  body .p-juyosho-checkout form.woocommerce-checkout #order_review #payment ul.payment_methods { padding: 16px; }
}
/* お納め（決済）の方法とお申し込みの内容は、淡い灰色の箱にしない（白いカードにじかに置く。2026-10-26 宮の指示） */
body .p-juyosho-checkout form.woocommerce-checkout #order_review #payment ul.payment_methods { padding: 8px 0 !important; border: 0 !important; border-radius: 0; background: none !important; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review #payment div.payment_box { padding: 4px 0 8px 36px !important; background: none !important; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review table.woocommerce-checkout-review-order-table { padding: 0 !important; border-radius: 0; background: none !important; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review table.woocommerce-checkout-review-order-table :is(th, td) { padding-left: 0; padding-right: 0; }
/* お納めの方法の説明は、選んでいない方法の分もいつも見せる（比べて選べるように。2026-10-26 宮の指示「郵便振替にも説明を」） */
body .p-juyosho-checkout form.woocommerce-checkout #order_review #payment li:not(.payment_method_stripe) > div.payment_box { display: block !important; } /* カードの箱はカード番号の欄なので、選んだときだけ（WooCommerce の標準） */
/* 白いカードを分ける（2026-10-26 宮の指示）：①お申し込みの方情報（最後にご連絡事項） ②お届け先（同じか別かの選び・お届け先の欄。ご連絡事項は①の最後） ③お納め（決済）の方法 ④お申し込みの内容（「申し込みを確定する」はカードの外の下）。
   カードの中の題「御初穂料奉納」は見せない（読み上げ用に残す）。WooCommerce の作りでは一つの form の中なので、各部分に白の背景と左右の余白を付けて、並んだ部分を一枚のカードに見せる。
   完了の画面（p-juyosho-checkout--form が付かない）は前のまま一枚のカード */
body .p-juyosho-checkout--form .p-juyosho-cart__card { padding: 0; border-radius: 0; background: none; }
body .p-juyosho-checkout { --checkout-pad: 40px; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set { gap: 24px; padding: 0; background: none; }
body .p-juyosho-checkout form.woocommerce-checkout .col2-set :is(.col-1, .col-2) { margin: 0; padding: var(--checkout-pad); border: 0; border-radius: 8px; background: #fff; }
body .p-juyosho-checkout form.woocommerce-checkout #ship-to-different-address.is-replaced { display: none; }
body .p-juyosho-checkout form.woocommerce-checkout .p-juyosho-checkout__ship-choice { padding: 4px 0; }
body .p-juyosho-checkout form.woocommerce-checkout .col-2 .shipping_address { margin-top: 24px; padding-top: 24px; border-top: .5px solid rgba(26, 26, 26, .3); }
/* ご連絡事項はお申し込みの方のカードの最後（page-checkout.php の script で移す。2026-10-26 宮の指示）。区切りの線は引かない（同日、宮の指示） */
body .p-juyosho-checkout form.woocommerce-checkout .woocommerce-additional-fields { margin-top: 0; padding-top: 0; border-top: 0; }
body .p-juyosho-checkout form.woocommerce-checkout .woocommerce-additional-fields .form-row:last-child { margin-bottom: 0 !important; }
body .p-juyosho-checkout--form form.woocommerce-checkout .woocommerce-additional-fields > h3 { display: none; } /* お届け先の欄が無いときに WooCommerce が出す見出し「追加情報」は出さない（お届け先の欄があるときと同じ形） */
body .p-juyosho-checkout form.woocommerce-checkout .woocommerce-additional-fields { padding-bottom: 0; border-bottom: 0; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review { margin-top: 24px; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review > :is(.p-juyosho-checkout__pay-title, .onmyodo-checkout-stripe-note, .p-juyosho-checkout__review-title, .p-juyosho__links) { margin: 0 !important; padding-right: var(--checkout-pad) !important; padding-left: var(--checkout-pad) !important; background: #fff; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review .p-juyosho-checkout__pay-title { padding-top: var(--checkout-pad) !important; padding-bottom: 12px !important; border-radius: 8px 8px 0 0; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review .onmyodo-checkout-stripe-note { padding-bottom: 8px !important; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review #payment ul.payment_methods { padding: 8px var(--checkout-pad) var(--checkout-pad) !important; border-radius: 0 0 8px 8px; background: #fff !important; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review .p-juyosho-checkout__review-title { margin-top: 24px !important; padding-top: var(--checkout-pad) !important; padding-bottom: 12px !important; border-top: 0 !important; border-radius: 8px 8px 0 0; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review table.woocommerce-checkout-review-order-table { margin: 0 !important; padding: 0 var(--checkout-pad) !important; background: #fff !important; }
body .p-juyosho-checkout form.woocommerce-checkout #order_review .p-juyosho__links { padding-top: 12px !important; padding-bottom: var(--checkout-pad) !important; border-radius: 0 0 8px 8px; }
/* 「申し込みを確定する」はカードの外、下に置く（2026-10-26 宮の指示） */
body .p-juyosho-checkout form.woocommerce-checkout #order_review #payment .form-row.place-order { margin: 0 !important; padding: 32px 0 0 !important; border-radius: 0; background: none !important; }
@media screen and (max-width: 767px) {
  body .p-juyosho-checkout { --checkout-pad: 20px; }
}
/* 入力欄の例文（placeholder）は薄い灰色（2026-10-26 宮の指示。テーマの初期化で文字と同じ色になっていた。色はサイトの入力欄 .c-input と同じ） */
body .p-juyosho-checkout form.woocommerce-checkout :is(input, textarea)::placeholder { color: #aeaeae; opacity: 1; }
/* ---------- お申し込みの完了の画面（page-checkout.php の script で白いカードに分ける。2026-10-26 宮の指示「見やすくして」）----------
   ①題・お礼・受付番号などの一覧 ②お納めのご案内 ③お申し込みの内容 ④お申し込みの方・お届け先・御奉納者様情報。項目は「名（小さく灰色）・値」の形にそろえる */
body .p-juyosho-checkout.is-received-cards .p-juyosho-cart__card { padding: 0; border-radius: 0; background: none; }
body .p-juyosho-checkout.is-received-cards .woocommerce-order { display: grid; gap: 24px; }
body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card { box-sizing: border-box; padding: var(--checkout-pad); border-radius: 8px; background: #fff; color: var(--juyosho-ink); }
body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card > :first-child { margin-top: 0 !important; }
body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card > :last-child { margin-bottom: 0 !important; }
body .p-juyosho-checkout.is-received-cards .p-juyosho-cart__title { margin: 0 0 20px !important; padding: 0 !important; border-bottom: 0 !important; }
/* 見出し：お申し込みの方情報などと同じ大きさ・色 */
body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card :is(h2, h3) { margin: 0 0 16px; padding: 0; border: 0; color: var(--juyosho-heading); font-weight: 500; letter-spacing: .1em; }
body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card p { margin: 0 0 8px; }
/* ① お礼と一覧（受付番号・日付・合計金額・お納めの方法を横に並べる。スマホは二つずつ） */
body .p-juyosho-checkout.is-received-cards .woocommerce-thankyou-order-received { margin: 0 0 28px !important; padding: 0 !important; border: 0 !important; background: none !important; color: var(--juyosho-ink) !important; }
body .p-juyosho-checkout.is-received-cards .woocommerce-thankyou-order-received::before { display: none !important; }
body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card ul.order_details { display: grid; margin: 0; padding: 0; list-style: none; }
body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card ul.order_details::before,
body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card ul.order_details::after { display: none; }
body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card ul.order_details li { float: none; margin: 0; padding: 0; border: 0; color: #6e6662; font-size: 1.4rem; text-transform: none; line-height: 1.6; }
body .p-juyosho-checkout.is-received-cards .p-juyosho-received__card ul.order_details li strong { display: block; color: var(--juyosho-ink); font-size: 1.6rem; font-weight: 500; text-transform: none; }
body .p-juyosho-checkout.is-received-cards ul.woocommerce-order-overview { grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); gap: 16px 24px; padding: 20px 0 0 !important; border-top: .5px solid rgba(26, 26, 26, .3) !important; }
/* ② お納めのご案内：口座と金額・期限は「名・値」の行、注記は少し小さく */
body .p-juyosho-checkout.is-received-cards .is-payment > p { line-height: 1.9; }
body .p-juyosho-checkout.is-received-cards .is-payment .woocommerce-bacs-bank-details { margin: 20px 0 0; }
body .p-juyosho-checkout.is-received-cards .is-payment :is(.wc-bacs-bank-details, .tensha-offline-payment-summary) { gap: 10px; margin: 0 0 24px !important; padding: 0 !important; border: 0 !important; }
body .p-juyosho-checkout.is-received-cards .is-payment :is(.wc-bacs-bank-details, .tensha-offline-payment-summary) li { display: grid; grid-template-columns: 160px minmax(0, 1fr); align-items: baseline; gap: 4px 24px; }
body .p-juyosho-checkout.is-received-cards .is-payment :is(.wc-bacs-bank-details, .tensha-offline-payment-summary) li strong { display: block; }
body .p-juyosho-checkout.is-received-cards .is-payment .tensha-offline-payment-summary { padding-top: 24px !important; border-top: .5px solid rgba(26, 26, 26, .3) !important; }
body .p-juyosho-checkout.is-received-cards .is-payment .tensha-offline-payment-summary ~ p { margin: 0 0 4px; color: #5d5552; }
body .p-juyosho-checkout.is-received-cards .is-payment a { color: inherit; text-decoration: underline; text-underline-offset: 3px; word-break: break-all; }
/* ③ お申し込みの内容：御初穂料奉納のお申し込みの内容の表と同じ形（線は行の間だけ、金額は右） */
body .p-juyosho-checkout.is-received-cards .is-items table.order_details { width: 100%; margin: 0; border: 0; border-collapse: collapse; }
body .p-juyosho-checkout.is-received-cards .is-items table.order_details :is(th, td) { padding: 14px 0; border: 0; border-top: .5px solid rgba(26, 26, 26, .2); background: none; font-weight: 400; text-align: left; vertical-align: top; }
body .p-juyosho-checkout.is-received-cards .is-items table.order_details thead th { padding-top: 0; border-top: 0; color: #6e6662; font-size: 1.4rem; }
body .p-juyosho-checkout.is-received-cards .is-items table.order_details :is(th, td):last-child { width: 40%; text-align: right; }
body .p-juyosho-checkout.is-received-cards .is-items table.order_details tfoot th { color: #6e6662; }
body .p-juyosho-checkout.is-received-cards .is-items table.order_details tfoot tr:last-child :is(th, td) { color: var(--juyosho-ink); font-weight: 500; }
body .p-juyosho-checkout.is-received-cards .is-items table.order_details .shipped_via { display: block; color: #6e6662; font-size: 1.4rem; }
/* ④ お申し込みの方・お届け先（PC は左右に並べる）・御奉納者様情報 */
body .p-juyosho-checkout.is-received-cards .is-customer .woocommerce-customer-details { margin: 0; }
body .p-juyosho-checkout.is-received-cards .is-customer .addresses { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 40px; margin: 0; }
body .p-juyosho-checkout.is-received-cards .is-customer .addresses::before,
body .p-juyosho-checkout.is-received-cards .is-customer .addresses::after { display: none; }
body .p-juyosho-checkout.is-received-cards .is-customer .addresses .woocommerce-column { float: none; width: auto; max-width: none; margin: 0; padding: 0; }
body .p-juyosho-checkout.is-received-cards .is-customer address { margin: 0; padding: 0; border: 0; font-style: normal; line-height: 1.9; }
body .p-juyosho-checkout.is-received-cards .is-customer address p { margin: 0; padding: 0; }
body .p-juyosho-checkout.is-received-cards .is-customer address p::before { position: static; display: inline-block; margin: 0 8px 0 0 !important; }
body .p-juyosho-checkout.is-received-cards .is-customer .woocommerce-customer-details ~ h2 { margin-top: 32px; padding-top: 28px; border-top: .5px solid rgba(26, 26, 26, .3); }
body .p-juyosho-checkout.is-received-cards .is-customer table.order_details { width: auto; margin: 0; border: 0; }
body .p-juyosho-checkout.is-received-cards .is-customer table.p-juyosho-received__extra { margin-top: 8px; }
body .p-juyosho-checkout.is-received-cards .is-customer table.order_details :is(th, td) { padding: 4px 24px 4px 0; border: 0; background: none; font-weight: 400; text-align: left; }
body .p-juyosho-checkout.is-received-cards .is-customer table.order_details th { width: 160px; color: #6e6662; }
@media screen and (max-width: 767px) {
  body .p-juyosho-checkout.is-received-cards .is-payment :is(.wc-bacs-bank-details, .tensha-offline-payment-summary) li { grid-template-columns: 9em minmax(0, 1fr); gap: 0 12px; }
  body .p-juyosho-checkout.is-received-cards .is-customer .addresses { grid-template-columns: minmax(0, 1fr); }
  body .p-juyosho-checkout.is-received-cards .is-customer table.order_details th { width: 110px; }
}
/* お納めのご案内のカードが金額・期限の一覧から始まるとき（口座の登録が無いときなど）は、上の区切りの線を引かない */
body .p-juyosho-checkout.is-received-cards .is-payment .tensha-offline-payment-summary:first-child { padding-top: 0 !important; border-top: 0 !important; }
/* 別の住所を選んだときの「郵便振替はお選びいただけません」（朱。建物名・部屋番号の注記と同じ色） */
body .p-juyosho-checkout form.woocommerce-checkout .p-juyosho-checkout__ship-note { margin: 8px 0 0; color: #bf3823; }
body .p-juyosho-checkout form.woocommerce-checkout .p-juyosho-checkout__ship-note[hidden] { display: none; }
/* 各言語版：申込者の欄の見出しの下の「授与品はこの住所へ送る」（2026-10-26） */
body .p-juyosho-checkout form.woocommerce-checkout .p-juyosho-checkout__address-note { margin: 0 0 12px; color: var(--juyosho-ink); }

/* ---------- お問い合わせ（page-contact.php。2026-10-26 宮の指示「Figma で確認して取り込んで」）----------
   上の題は授与所と同じ作り（線画＋縦書きの題字）。位置は Figma「お問い合わせ」の線画の枠（幅859×378。左の巻物・題字・右の人物）に対する割合。
   題字の中心（44.24%）が画面の中央に来るよう、枠ごと左へずらす。下のフォームは前のまま */
.p-juyosho--contact { padding: 0 0 8px; overflow: hidden; }
.p-contact__hero { width: min(859px, 100%); aspect-ratio: 859 / 378; margin: 40px auto 0; transform: translateX(5.76%); }
.p-contact__hero-art--left { left: 0; top: 0; width: 23.45%; }
.p-contact__hero-art--right { left: 65.86%; top: 30.9%; width: 34.2%; }
.p-contact__hero-title { left: 41.68%; top: 15.34%; width: 5.12%; }
.p-juyosho__lead.p-contact__lead { margin-top: 70px !important; }
/* 題の上の余白（上の帯の下から線画まで）を半分にする（2026-10-26 宮の指示。PC 121px→61px、スマホ 78px→39px） */
.p-contact:has(.p-contact__hero) { padding-top: 21px; }
@media screen and (max-width: 767px) {
  .p-contact__hero { width: 100%; margin-top: 24px; }
  .p-contact:has(.p-contact__hero) { padding-top: 15px; }
  .p-juyosho__lead.p-contact__lead { margin-top: 40px !important; }
}
/* スマートフォンのフォーム：お祓いページのフォームと同じ「地紋の項目名バー＋白い入力欄」のカード型（前は page-contact.php の中にあった。各言語版と共用） */
@media screen and (max-width: 767px) {
  .p-contact .p-form-table { border: 1px solid rgba(128, 128, 128, .4); border-collapse: collapse; }
  .p-contact .p-form-table tr { border: 0; padding: 0; }
  .p-contact .p-form-table th { margin: 0; padding: 3.2118vw 4.8458vw; background: url("../img/form/img-label-bg.jpg") no-repeat center center / cover; }
  .p-contact .p-form-table th p { margin: 0; }
  .p-contact .p-form-table td { padding: 6.4574933333vw 2.6810133333vw; }
}
/* 各言語版のお問い合わせ（template-multilingual-utility.php。2026-10-26 宮の指示「他言語にも反映して」）：題字はページの題を文字で縦書き（授与所の各言語版と同じ）。位置は日本語の題字の中心 */
.p-juyosho .p-contact__hero-title.p-juyosho__hero-title--text { left: 44.24%; top: 50%; }
.tensha-lang-en .p-juyosho .p-contact__hero-title.p-juyosho__hero-title--text { height: 70%; }
/* Contact Form 7 の隠し値の枠（fieldset）が線として見えていたので消す（各言語版のフォーム） */
.p-contact .wpcf7 .hidden-fields-container { display: none; }
