/*
 Theme Name: GO! Goshoura TOURS
 Theme URI: https://woocommerce.com/storefront/
 Description: Child theme for Storefront
 Author: Nohalab
 Template: storefront
 Version: 1.0.0
*/

.edit-link{
display:none;
}

/* 注文完了画面の注文詳細内に表示される注意事項（list）を非表示 */
div.entry-content > div > div > section.woocommerce-order-details > table > tbody > tr.woocommerce-table__product-purchase-note.product-purchase-note {
    display: none !important;
}
/* Checkout：成功メッセージ（緑）だけ消す。エラー/情報は残す */
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message {
  display: none !important;
}

/* =========================================================
   Base (Site-wide)
========================================================= */
:root{
  --brand:#00a48a;
  --brand-dark:#00856e;

  --text:#222;
  --muted:#666;
  --line:#e6e6e6;
  --card:#fafafa;

  --lp-max:980px;
  --lp-pad:18px;

  --lp-radius:16px;
  --lp-img-h:360px;
}


:root{ --sum-pad: 30px; } /* 既にあるなら不要 */

.single-product div.summary.entry-summary .lp-footbox{
  margin-left: calc(var(--sum-pad) * -1) !important;
  margin-right: calc(var(--sum-pad) * -1) !important;
  width: calc(100% + (var(--sum-pad) * 2)) !important;
  max-width: none !important;
}


body{
  color:var(--text);
  line-height:1.75;
}

body {
  font-family:
	"Noto Sans JP",
	-apple-system,
	BlinkMacSystemFont,
	"Hiragino Sans",
	"Hiragino Kaku Gothic ProN",
	"Yu Gothic",
	Meiryo,
	sans-serif;
}

body{
  background-image: url("https://nohalab.co.jp/booking/wp-content/themes/go_goshoura_tours/img/back.jpg") !important;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed; /* 必要なら */
  padding: 2.5rem 0 0 0;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	font-weight: 600;
}

div.summary.entry-summary > section.product-purchase-note.is-open > div > h3 {
	margin: 0 !important;
}

@media (max-width: 768px){
body{
padding: 0;
}
.content-area, .widget-area {
	margin-bottom: 0px !important;
	margin-top: 0px !important;
}
}

.single-product .site-content{
  background: transparent !important;
}

/* 背景は画面幅いっぱい */
.single-product .lp-hero-wrap{
  width: 100vw;
  margin-left: calc(50% - 50vw); /* 画面中央基準で全幅に */
}




/* 中身だけ1200pxに収める（lp-hero-innerが担当） */

/* コンテンツ幅（全体に寄せたいならここ） */
.site-content{
  max-width:var(--lp-max);
  margin:0 auto;
  padding:0 var(--lp-pad);
}

.col-full {
	margin:0 auto;
	padding: 0;
}

.right-sidebar .content-area {
	width: 100%;
	float: left;
	margin-right: 0;
}

/* ===== 中身：左右レイアウト ===== */
.single-product .lp-hero-inner{
  align-items: flex-start;
  gap: 4%;
  max-width: 1200px;
  margin: 0 auto;
}

/* 左：リード */
.single-product .lp-hero-lead{
  flex: 0 0 44%;   /* 割合で */
  padding-top: 2rem;
}
.single-product .lp-hero-lead__logo img{
  max-width: 60%;
  height: auto;
  border-radius: 0;
}
.single-product .lp-hero-lead__title{
	font-size: 1.6rem;
	margin: 1.5rem 0.3rem .8rem;
	line-height: 1.7;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-align: justify;
}
.single-product .lp-hero-lead__text{
	font-size: 1.1rem;
	margin: 1.3rem 0.6rem .8rem;
	line-height: 1.7;
	font-weight: 400;
	letter-spacing: 0.04em;
	max-width: 28em;
	text-align: justify;
}

/* 右：summaryカラム（右寄せ） */
.single-product .lp-hero-summary{
  flex: 0 0 30%;
  margin-left: auto; /* ★ 右に寄せる */
}

/* ★ 重要：summary の上下の余白制御 */
.single-product .lp-hero-summary .summary.entry-summary{
  margin-top: 0 !important;     /* 上はwrap側で3rem確保 */
  margin-bottom: 0 !important;  /* ★ 下に背景を見せない */
}

/* もし site-content が下に余白を足してるなら潰す（あなたのLPに合わせて） */
.single-product .site-content{
  padding-bottom: 0 !important;
}

.summary.entry-summary > section.lp-section.lp-section--description > div > p > img{
    margin-top:2rem;
}


/* ===== スマホ：summaryのみ表示 ===== */
@media (max-width: 768px){
  .single-product .lp-hero-inner{
	flex-direction: column;
	gap: 0;
  }
  .single-product .lp-hero-lead{
	display: none; /* ★ 小さくなったらリードは消す */
  }
  .single-product .lp-hero-summary{
	flex: 1 1 auto;
	margin-left: 0;
  }
  .single-product .lp-hero-wrap{
	padding-top: 1.5rem; /* スマホは少し控えめ */
  }
  .single-product .lp-hero-wrap {
	padding-top: 0 !important;
}
}

/* ===== lead位置調整：左寄せ＆上下中央、スクロールしても固定 ===== */
@media (min-width: 769px){

  /* リードを固定表示にする（左右レイアウトの“左カラム”っぽく見せる） */
  .single-product .lp-hero-lead{
	position: fixed;
	max-width: 100%;
	top: 45% ;
	transform: translateY(-50%) ;
	width: min(480px, 40vw);
	padding-top: 0px;
	padding-left:3%;
  }

  /* fixedにした分、元のflex幅指定を無効化（念のため） */
  .single-product .lp-hero-lead{
	flex: none !important;
  }
}




/* 見出し（全体に効くので慎重に） */
h1, h2, h3{
  margin:0.5em 0;
  line-height:1.25;
  letter-spacing:.01em;
  text-align: justify;
  text-justify: inter-ideograph;

}

/* 見出しの両端揃えを使う場合だけ、親に .lp-justify を付与 */
.lp-justify h1,
.lp-justify h2,
.lp-justify h3{
  text-align:justify;
  text-justify:inter-ideograph;
}

h2 + h3,
.beta + h3{
  border-top:none;
  padding-top:0;
}

p{
color:#333;
font-weight: 400;
letter-spacing: 0.02em;
text-align: justify;
}


a, a:visited{ color:var(--brand); }
a:hover, a:focus{ color:var(--brand-dark); }



img{border-radius: 0.5rem;}


img.divide_go.poyoyon2 {
	margin: 50px 0;
}


.site-main {
margin-bottom: 0;
}

.content-area, .widget-area {
	margin-bottom: 10px;
		margin-top: 10px;
}

/* =========================================================
   Product page: hide (商品ページだけ)
========================================================= */
.single-product .site-header{ display:none; }
.single-product .primary-navigation,
.single-product .secondary-navigation{ display:none; }

.single-product #secondary,
.single-product .widget-area{ display:none; }

.single-product .woocommerce-notices-wrapper,
.single-product .storefront-breadcrumb,
.single-product .page-title{ display:none; }

body.woocommerce-checkout .site-info a[href*="woocommerce.com"],
body.woocommerce-order-received .site-info a[href*="woocommerce.com"]{
  display: none !important;
}
/* リンク直後のドット(テキスト)を擬似的に隠す：br以降を丸ごと消す */
body.woocommerce-checkout .site-info br,
body.woocommerce-order-received .site-info br{
  display:none !important;
}

/* =========================================================
   Product page (LP layout)
========================================================= */
.single-product .site-content{
  max-width:var(--lp-max);
  margin:0 auto;
  padding:0 var(--lp-pad);
}

.single-product .woocommerce-product-gallery{
  display:none !important;
}

.single-product .site-footer{
  display:none;
}

.single-product .product_meta{
  display:none;
}

/* タブ説明を常に表示 */
.single-product .woocommerce div.product .woocommerce-tabs .panel,
.single-product .woocommerce div.product .woocommerce-tabs #tab-description{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  height:auto !important;
}


/* =========================================================
   LP components
========================================================= */
.lp-section{
  margin:1rem 0 2.5rem;
 }
 
.lp-section__title{
	font-weight: 700;
	position: relative;
	padding: 0.8rem 0 0.5rem 0.8rem;
	color: #00a48a ;
	font-size: 1em ;
}

.lp-section__title::before{
	content: "";
	position: absolute;
	left: 0;
	top: 52%;
	transform: translateY(-35%);
	width: 0.3rem;
	height: 1rem;
	background: #00a48a;
}


.lp-section__content{ color:var(--text); }


/* =========================================================
   summary card (450px + ring)
========================================================= */
/* 外枠の影が切られないように（最小限で安全に） */
.single-product div.product div.summary,
.single-product div.product{
  overflow: visible !important;
  margin-right: 10px;
}

@media(max-width: 768px){
.single-product div.product div.summary, .single-product div.product {
	overflow: visible !important;
	margin-right: 0px;
}
}

/* summary：白背景 + 10px半透明リング */
.single-product div.product div.summary{
  width: 100%;
  max-width: 450px;
  box-sizing: border-box;
  margin: 16px auto;
  padding: 30px;

  background:#fff;
  border-radius: 20px;

  box-shadow:
	0 0 0 10px rgba(255,255,255,.55),
	0 8px 30px rgba(0,0,0,.10);
}

/* もし他所で ::before を作っているなら無効化 */
.single-product div.product div.summary::before{
  content:none !important;
}


/* =========================================================
   LP Hero (logo + slick slider)
========================================================= */
.single-product .lp-hero{
  padding-top: 10px;
  padding-bottom: 8px;
}

/* =========================================================
   LP Hero LOGO: summaryのpaddingを無視して「左上に寄せる」突破版（これ1本）
========================================================= */

/* summary の padding と同じ値を変数化（必要ならここだけ調整） */
:root{
  --sum-pad: 30px;
}

/* ロゴ行だけ summary padding を左・上だけ打ち消す */
.single-product div.product div.summary .lp-hero__logo{
  margin-left: calc(var(--sum-pad) * -0.6) !important;
  margin-top:  calc(var(--sum-pad) * -1) !important;

  /* 右・下は必要な分だけ残す（好みで微調整） */
  margin-right: 0 !important;
  margin-bottom: 5px !important;

  /* 内側余白はゼロ（突破したいので） */
  padding: 0 !important;

  display: flex;
  align-items: center;
  justify-content: flex-start;

  line-height: 0; /* 画像下の謎余白対策 */
}

/* ロゴ画像サイズ（好きな値に） */
.single-product .lp-hero__logo img{
  height: 51px !important; /* 例：1.5倍 */
  width: auto !important;
  display: block;
}

/* リンク無効（見た目そのまま） */
.single-product .lp-hero__logo a{
  pointer-events: none !important;
  cursor: default !important;
  display: inline-block;
  margin: 0 !important;
  line-height: 0;
}

/* ロゴ画像サイズ */
.single-product .lp-hero__logo img{
  height: 44px !important;
  width: auto !important;
  display: block;
}

/* リンク無効 */
.single-product .lp-hero__logo a{
  pointer-events:none !important;
  cursor:default !important;
  display:inline-block;
  line-height:0;
}
/* --- Slider wrapper --- */
.single-product .lp-hero__sliderrr{
  position: relative;
  /* 角丸は“なくす”方針ならここを0にする */
  border-radius: 0 !important;
  overflow: hidden;
}

/* 画像 */
.single-product .lp-hero__sliderrr img{
  width: 100%;
  height: var(--lp-img-h, 360px);
  object-fit: cover;
  display: block;
}

/* ✅ 初期化前：1枚目だけ見せる（縦に複数出るの防止） */
.single-product .lp-hero__sliderrr:not(.slick-initialized) .lp-hero__slide{
  display: none;
}
.single-product .lp-hero__sliderrr:not(.slick-initialized) .lp-hero__slide:first-child{
  display: block;
}

/* slick slide のアウトライン等 */
.single-product .lp-hero__sliderrr .slick-slide{
  outline: none;
}

/* --- Dots: 数字・黒点・余計な箱を完全に消して丸だけ --- */
.single-product .lp-hero__sliderrr .slick-dots{
  position: absolute;
  left: 50%;
  bottom: 12px;
  transform: translateX(-50%);

  display: flex !important;
  gap: 8px;

  padding: 0 !important;
  margin: 0 !important;

  background: none !important;
  list-style: none !important;
}

.single-product .lp-hero__sliderrr .slick-dots li{
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* ✅ 黒い「・」(marker) を殺す（Safari含む） */
.single-product .lp-hero__sliderrr .slick-dots li::marker{
  content: "" !important;
}

/* buttonの数字(1/2)を完全に消す */
.single-product .lp-hero__sliderrr .slick-dots li button{
  width: 10px;
  height: 10px;

  padding: 0 !important;
  margin: 0 !important;

  border: 0 !important;
  background: transparent !important;

  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  text-indent: -9999px !important;
  overflow: hidden;

  box-shadow: none !important;
}

/* 丸そのもの（非アクティブ） */
.single-product .lp-hero__sliderrr .slick-dots li button::before{
  content: "" !important;
  display: block;
  width: 10px;
  height: 10px;

  border-radius: 50%;
  background: rgba(255,255,255,.5);

  opacity: 1 !important;

  /* slick-themeのposition指定を無効化 */
  position: static !important;
  transform: none !important;
}

/* アクティブ */
.single-product .lp-hero__sliderrr .slick-dots li.slick-active button::before{
  background: #fff !important;
}

/* 保険：テーマがli::before等で何か描く場合があるので潰す */
.single-product .lp-hero__sliderrr .slick-dots li::before{
  content: none !important;
}


/* =========================================================
   summary：白背景 + 10px 半透明ライン（カード）
========================================================= */
.single-product div.product .summary{
  width: 100%;
  max-width: 450px;
  box-sizing: border-box;

  position: relative;
  z-index: 1;
  isolation: isolate;

  margin: 10px auto;
  padding: var(--sum-pad);

  background: #fff;
  border-radius: 20px;
  overflow: visible; /* 擬似要素が切れないように */
}

/* 10px 半透明ライン（外側） */
.single-product div.product .summary::before{
  content: "";
  position: absolute;
  inset: -10px;
  border-radius: 30px; /* 20px + 10px 相当で自然 */
  background: rgba(255,255,255,.6);
  z-index: -1;

  box-shadow: 0 8px 30px rgba(0,0,0,.08);
}
/* ===== 10px 半透明ライン（外側リング） ===== */
.single-product div.product .summary::before{
  content: "";
  position: absolute;
  inset: -10px;
  border-radius: 30px;            /* 20 + 10 の整合 */
  background: rgba(255,255,255,.6);
  z-index: -1;
  pointer-events: none;
  box-shadow: 0 8px 30px rgba(0,0,0,.08);
}

/* 背景が写真のときの馴染ませ（任意） */
.single-product div.product .summary{
  -webkit-backdrop-filter: saturate(120%);
  backdrop-filter: saturate(120%);
}

/* ===== ヒーロー（スライダー枠）をpaddingから突き抜け ===== */
.single-product .lp-hero__sliderrr{
  margin-left: -30px;
  margin-right: -30px;
  width: calc(100% + 60px);

  /* ★角丸は無し */
  border-radius: 0;
  overflow: hidden;               /* 画像のはみ出し防止だけ残す */
}

/* 初期化前に1枚だけ見せる（2枚目以降は隠す） */
.single-product .lp-hero__sliderrr > *:not(:first-child){
  display: none;
}

/* slick初期化後は全部表示 */
.single-product .lp-hero__sliderrr.slick-initialized > *{
  display: block;
}

/* 画像 */
.single-product .lp-hero__sliderrr img{
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

/* slick が ul/li でも div でも崩れないように余計な余白を潰す */
.single-product .lp-hero__sliderrr,
.single-product .lp-hero__sliderrr *{
  box-sizing: border-box;
  border-radius: 0;
}

/* =========================================================
   各商品ページ
========================================================= */

/* 商品ページ見出し設定 */
div.summary.entry-summary h1{
font-size: 1.5rem;
font-weight: 700;
text-align: justify;
margin-bottom: 1.1rem;
}

div.summary.entry-summary h2{
font-size: 1.1rem;
font-weight: 600;
}

div.summary.entry-summary h3 {
    font-size: 1.1rem;
    font-weight: 600;
    border: 1px solid;
    border-radius: 10rem;
    padding: 0.4rem 1.1rem;
    /* width: 100%; */
    display: inline-block;
    margin: 0.2rem 0 0.3rem;
    /* padding: 3px 16px; */
    border: 1px solid var(--brand);
    color: var(--brand);
    /* font-size: .85rem; */
    font-weight: 700;
    border-radius: 999px;
    letter-spacing: .06rem;
}

div.summary.entry-summary h4{
    font-size: 1rem;
    font-weight: 600;
    color: var(--brand);
    margin-top: 0.5rem;
}

div.summary.entry-summary h5{
    font-size: 1rem;
    font-weight: 500;
    margin-top: 1.2rem;
    margin-bottom: 0.5rem;
}

div.summary.entry-summary h6{
font-size: 1rem;
font-weight: 500;
}

div.summary.entry-summary > section.lp-section.lp-section--description > div > p{
font-size: 0.95rem;
font-weight: 400;
}


hr {
    background-color: #ccc;
    border: 0;
    height: 1px;
    margin: 1.8rem 0 1.8rem;
}



/* 対象の ul：マーカーは消して、左インデントを確保 */
div.summary.entry-summary
> section.lp-section.lp-section--description
> div
> ul {
      font-size: 0.95rem;
    font-weight: 400;
    list-style: none;
    margin-top: 0.5rem;
margin-left: 0;
    margin-bottom: 0.9rem;
}

/* 各 li：黒丸分のスペースを確保 */
div.summary.entry-summary
> section.lp-section.lp-section--description
> div
> ul > li {
  position: relative;
  line-height: 1.6;
  padding-left: 1.0rem;    /* ←黒丸と文字の距離 */
}

/* 黒丸（擬似要素） */
div.summary.entry-summary
> section.lp-section.lp-section--description
> div
> ul > li::before {
    content: "・";
    position: absolute;
    left: 0;
    top: 0.0em;
    font-size: 1rem;
    color: currentColor;
}
    
/* 商品カテゴリーラベル*/
.lp-product-category{
	display: inline-block;
	margin: 0.2rem 0 0.7rem;
	padding: 3px 16px;
	border: 1px solid var(--brand);
	color: var(--brand);
	font-size: .85rem;
	font-weight: 700;
	border-radius: 999px;
	letter-spacing: .06rem;
}


/* 商品価格¥000より */
.single-product div.product p.price{
font-size: 0.8rem;
margin: 0.2rem 0 0.4rem 0 ;
}

.single-product div.product p.price span.amount{
font-size: 1.2rem;
margin: 0.2rem 0 0.4rem 0 ;
}


.single-product div.product p.price span{
	margin-left: 0.3rem;
	margin-bottom: 1.5rem;
	margin-top: 0.3rem;
}

.single-product div.product p.price span bdi{
font-size: 1.2rem;}

.single-product div.product p.price span bdi span{
}

/* pはブロックのまま（横にくっつかない） */
div.summary.entry-summary p{
  font-size: 1em;
  margin: 0.6rem 0 0.8rem;
}

/* pの「直下のテキスト/インライン要素」だけを1行ぶん下線化 */
div.summary.entry-summary p > span{
  display: inline-block;
  border-bottom: 1px solid #333;
  padding-bottom: 2rem;
}

/* フィールドラベル */
.form-field label{
  position: relative;
  padding: 0.8rem 0 0.5rem 0.8rem; /* 左余白は少しだけ確保 */
  color: #333 !important;
  font-size: 1em !important;
}

/* 左の短い縦線（1文字分） */
.form-field label::before{
	content: "";
	position: absolute;
	left: 0;
	top: 52%;
	transform: translateY(-50%);
	width: 0.3rem;
	height: 1rem;
	background: #00a48a;
}

.form-field input{
	color: #333 !important;
	font-size: 1.6rem !important;
	border-radius: 3px !important;
	border: 1px solid #DBDED9 !important;
	text-align: center;
	background-color: #EBEBEB !important;
	padding: 0.3rem 0.2rem 0.2rem 0.8rem !important;
	margin: 0.1rem 0 0 0.5rem !important;
	box-shadow: none !important;
	line-height: 0 !important;
}

.woocommerce-checkout .nlb-attendee {
	display: grid;
	grid-template-columns: 1.3fr .5fr 1fr;
	gap: 0.55rem 0.3rem !important;
	text-align: justify;
	text-indent: 0.4rem;
}

.form-field {
	border: none;
	color: #959595 !important;
	font-weight: 500  !important;
	font-size: 1em  !important;
}




/*カレンダーサイズ、位置調整*/

.wc-bookings-date-picker .ui-datepicker td .ui-state-default{}

.wc-bookings-booking-form fieldset {
	margin: 2rem 0 1rem 0;
	padding: 0 0.5rem 0 0.5rem;

}

/* ヘッダー（タイトルと矢印） */
.wc-bookings-booking-form .ui-datepicker .ui-datepicker-header {
  background: #959595; /* フラットなグレー */
  border: none;
}
.wc-bookings-booking-form .ui-datepicker .ui-datepicker-title {
  color: #fff ;
  font-weight: 500;
  font-size: 1rem;
}
/* 矢印ボタン（jQuery UI） */
.wc-bookings-booking-form .ui-datepicker .ui-datepicker-prev,
.wc-bookings-booking-form .ui-datepicker .ui-datepicker-next {
  background: #959595;
  padding: .25rem;
  border: none !important;
  background-image: none !important; /* 画像スプライト対策 */
}

.ui-icon, .ui-widget-content .ui-icon {
	background-image: url(https://nohalab.co.jp/booking/wp-content/plugins/woocommerce-bookings/dist/images/ui-icons_ffffff_256x240.f343f4f9.png) !important;
}

.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev span, .wc-bookings-date-picker .ui-datepicker .ui-datepicker-next span {
	margin-top: -2px !important;
}
.wc-bookings-booking-form .ui-icon {
  transform: scale(1.2);
  transform-origin: center;
}

/* カレンダー色調整 */
.wc-bookings-date-picker .ui-datepicker td.bookable a.ui-state-default {
	background-color: #00a48a !important;
	border:1px solid #ADADAD ;
}

.wc-bookings-date-picker .ui-datepicker td.bookable-range .ui-state-default {
	background: #017266 !important;
	color: #fff;
	border:1px solid #ADADAD ;
}

/* 予約可能セル＝aタグがある日 */
.wc-bookings-booking-form .ui-datepicker-calendar td a.ui-state-default {
  background: #40A38A !important; /* 赤 */
  color: #fff !important;
  text-decoration: none !important;
	transition:.3s;
}
.wc-bookings-booking-form .ui-datepicker-calendar td a.ui-state-default:hover {
  background: #19E090 !important;
}

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {
	border: 1px solid ##00a48a !important;
}



/* 無効日（クリック不可）＝span表示 */
.wc-bookings-booking-form .ui-datepicker-calendar td.ui-state-disabled span {
  color: #cbd5e1 !important;
  background: transparent !important;
}

/* 選択中や今日が別色で塗り替えられるのを防ぐ */
.wc-bookings-booking-form .ui-datepicker-current-day a {
  background: #19E090 !important; color:#fff !important;
}
.wc-bookings-booking-form .ui-datepicker-today a {
  outline: 2px solid #9ca3af !important;
}

/* 曜日の文字 */
.wc-bookings-booking-form .ui-datepicker-calendar thead th {
	color: #5d5d5d;
	font-size: 0.85rem;
	/* border-bottom: 1px solid #ADADAD; */
}
/* 選べない日（spanのみのセル）の文字色と枠線 */
.wc-bookings-booking-form .ui-datepicker-calendar td.ui-state-disabled span {
  color: #C0A9AE !important;
  border: 1px solid #ADADAD !important;


  align-items: center; justify-content: center;
}



/* 予約費用 */
#wc-bookings-booking-form .wc-bookings-booking-cost {
	margin: 0 0 30px 0;
	border: 0;
	margin-left: 1ch;
	align-items: center;
	font-size: 0.8rem;
}

span.amount.woocommerce-Price-amount {
	/* font-weight: 600; */
	font-size: 1.3rem;
	line-height: 1rem;
	font-weight: 600;
	margin-left: 1ch;
}

#wc-bookings-booking-form .wc-bookings-booking-cost {
  align-items: center;
  margin-left: 1ch !important;          /* ★margin:0;で消してたので戻す */
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  border: 0;
  padding-top: 1.3rem;       /* ここは元の意図を維持 */
  font-size: 1rem;
  padding: 1.2rem .5rem 0.8rem 1rem;
}

.wc-bookings-booking-form {
	border: 1px solid #ddd;
	padding: 1em 1em 0;
	margin: 0 0 2.5rem;
}


/* =========================
   オプションプログラムまわり
========================= */

/* 見出し（legend/label）左のアクセント線 */
.wc-pao-addon label.wc-pao-addon-name,
.wc-pao-addon legend.wc-pao-addon-name{
  font-weight: 700;
  position: relative;
  padding: 0.8rem 0 0.5rem 0.8rem; /* 左に線の分の余白 */
  color: #00a48a !important;
  font-size: 1em !important;
}

.wc-pao-addon label.wc-pao-addon-name::before,
.wc-pao-addon legend.wc-pao-addon-name::before{
  content: "";
  position: absolute;
  left: 0;
  top: 57%;
  transform: translateY(-50%);
  width: 0.3rem;
  height: 1rem;
  background: #00a48a;
}

.wc-pao-addon .wc-pao-addon-description{
font-style: normal;
}

/* ② 説明ブロック：下に余白 */
.wc-pao-addon-description {
    margin: -0.6rem 0 0rem;
    font-size: 0.95rem;
}

/* ③ 画像：回り込み無しで安定 */
.wc-pao-addons-container .wc-pao-addon-description img.optionimg_{
	float: none !important;
	display: block;
	max-width: 100%;
	height: auto;
	object-fit: cover;
	margin: 0;
	position: static !important;
	}

/* ④ チェック行：説明の上に乗らないように */
.wc-pao-addons-container .wc-pao-addon-wrap{
    clear: both;
    margin-top: 1rem;
    margin-bottom: 1.5rem;
}

/* ⑤ チェック1行：横並び安定（checkbox + label） */
.wc-pao-addons-container .wc-pao-addon-wrap > div {
	display: flex;
	align-items: center;
	gap: 0.1rem;
	top: 0px;
	margin-bottom: 0.5rem;
}

/* チェックボックス本体 */
.wc-pao-addons-container input.wc-pao-addon-checkbox{
  flex: 0 0 auto;
  margin: 0 ;
  width: 1.35rem;
  height: 1.35rem;
}

/* チェックボックスのチェック色をブランドカラーに */
.wc-pao-addons-container input[type="checkbox"]{
  accent-color: #00a48a; /* ← 好きな色 */
  
}

input[type=radio] {
    transform: scale(1.3);
    padding: 0;
}

input[type=checkbox] {
    transform: scale(0.9);
    padding: 0;
}

.wc-pao-addons-container input[type=radio]{
  accent-color: #00a48a; /* ← 好きな色 */
  position: relative;
  top: 0.09rem;
}
.wc-pao-addons-container input[type=checkbox]{
  position: relative;
  top: 0.1rem;
}


/* クリック時に出る縁線（focus ring）や影を消す */
.wc-pao-addons-container input[type="radio"]:focus,
.wc-pao-addons-container input[type="radio"]:focus-visible,
.wc-pao-addons-container input[type="radio"]:active,
.wc-pao-addons-container input[type="checkbox"]:focus,
.wc-pao-addons-container input[type="checkbox"]:focus-visible,
.wc-pao-addons-container input[type="checkbox"]:active{
  outline: none !important;
  box-shadow: none !important;
}

/* ラベル側に付くケース（focus-within）も潰す */
.wc-pao-addons-container label:focus-within {
  outline: none !important;
  box-shadow: none !important;
}


/* ラベル：食い込み防止、折り返しも自然に */
.wc-pao-addons-container .wc-pao-addon-wrap label{
    transform: translateY(-0.09rem);
    margin: 0 !important;
    flex: 1 1 auto;
    min-width: 0;
    padding-top: 0.3rem;
}

/* 価格表示（+ ¥1,000）を詰めたいなら任意 */
.wc-pao-addons-container .wc-pao-addon-price{
  margin-left: .25em;
  white-space: nowrap;
}
span.wc-pao-addon-price span.woocommerce-Price-amount.amount {
	margin-left: 0;
	font-size: 1.2rem;
}

/* まず #product-addons-total 周りの「線っぽいもの」を全消し */

.single-product #product-addons-total *{
  border: 0 ;
}


div#product-addons-total {
	top: 0px;
	margin-top: 0px;
	padding: 0 0.5rem 0 1rem;
}

div.product-addon-totals {
	padding: 20px 0 0 0;
	border-bottom: 1px solid #eee;
	overflow: hidden;
}

.single-product #product-addons-total li {
	border-top: 1px solid #888;
	padding: 0.5rem;
	
}

div.product-addon-totals .wc-pao-subtotal-line {
	margin-top: 0px;
}


#product-addons-total{
	position:relative;
	top:80px;
	margin-top:40px;
	padding-top:-20px;
}

.product-addon-totals .wc-pao-col1 strong{
	font-weight:normal;
	font-size:1rem;
}

.product-addon-totals .wc-pao-col2 strong{
	font-weight:normal;
	font-size:1rem;
}


.product-addon-totals .wc-pao-col1 .wc-pao-addon-name{
	font-weight:normal ;
	font-size:1rem;
	display:block;
}

.product-addon-totals  .wc-pao-subtotal-line{
	border-top:3px double #aaa !important;
	padding-top:15px;
}


.single-product #product-addons-total * span.amount {
	padding: 0;
}

.txt_doui{
	font-size:80%;
}



/*消し込み*/
.wp-block-woocommerce-product-details{
	border:3px solid r_ed;
	display:none;
}

.taxonomy-product_cat{
	display:none;
}

.wp-block-navigation__container {
	border:3px solid red;
	display:none
}

.wc-block-components-product-price{
	display:none;
}

.wp-block-post-title{
	display:none;
}

#ship-to-different-address{
	display:none;
}



/*価格まわりデザイン調整*/
/* 左カラムの最小・最大幅を制御 */
.wp-block-columns.alignwide > .wp-block-column:first-child {
  flex-basis: 40% !important;   /* 幅をパーセンテージに */
  max-width: 500px;             /* 上限を決める */
  min-width: 280px;             /* 下限を決める（スマホ潰れ防止） */
}
.wp-block-columns.alignwide > .wp-block-column:last-child {
  flex-basis: 60% !important;
	max-width:455px;
}


/****/
.form-field{
	border:3px solid r_ed;
	color:#5B5959;
	font-weight:bold;
	font-size:90%;
}

.form-field label{
	color:#383838;
	font-size:110%;
}

.form-field input{
	color:#383838;
	font-size:150%;
	border-radius:6px;
	border: 2px solid #DBDED9;
	text-align:center;
	background-color:#EBEBEB !important;
	padding-left:.5em;
}

.wc-pao-addon-name{
	font-size:120%;
}


/* 予約ボタンの共通スタイル（商品ページ） */
.woocommerce div.product form.cart .single_add_to_cart_button {
	background: #00a48a;
	color: #fff;
	border: none;
	border-radius: 9999px;
	padding: 1.1rem 1.4rem;
	font-weight: 600;
	font-size: 1.2rem;
	box-shadow: 4px 4px 10px rgba(200,200,200,50);
	transition: transform .06s ease, box-shadow .2s ease, background .2s ease;
	position: relative;
	/* top: 80px; */
	width: 100%;
	cursor: pointer;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	margin: 2rem 0 1rem 0;
}

.woocommerce div.product form.cart .single_add_to_cart_button:hover {
  background: #50b6a8;
  box-shadow: 0 6px 18px rgba(51,51,51,.25);
	cursor:pointer;
}

.woocommerce div.product form.cart .single_add_to_cart_button:active {
  transform: translateY(1px);
}

/* 無効時の見た目（在庫なし・未選択時など） */
.woocommerce div.product form.cart .single_add_to_cart_button:disabled,
.woocommerce div.product form.cart .single_add_to_cart_button.disabled {
  background: #B0B2B5;
  box-shadow: none;
  cursor: ;
}

.notice {}

.notice p {
    margin-top: 1rem;
    padding: 0.4rem 0.6rem;
    border-left: 3px solid var(--brand);
    background: #f5faf8;
    font-size: 0.85rem !important;
    line-height:1.3rem;
    margin-left: 0.5rem;
    margin-right: 0.5rem;
    margin-bottom: 1.5rem;
}

div.summary.entry-summary .notice p{
    margin:0;
}

ul.notice {
    margin-top: 1rem;
    padding: 0.4rem 0.6rem;
    border-left: 3px solid var(--brand);
    background: #f5faf8;
    font-size: 0.95rem !important;
    line-height: 1.6rem;
    margin-left: 0.1rem;
    margin-right: 0.1rem;
    margin-bottom: 1.5rem;
    border-bottom: 0;
}

/***************/

/* 参加者フォーム：枠・余白・フォントを既存フォームに揃えて少し大きめに */
.woocommerce-checkout .nlb-attendees-wrap {
}

.woocommerce-checkout .nlb-attendee {
	display: grid;
	grid-template-columns: 1.3fr .5fr 1fr;
	gap: 0.55rem 0.8rem;
	text-align: justify;
	text-indent: 0.4rem;
}

.woocommerce-checkout .nlb-attendee label {
  display: flex;
  flex-direction: column;
  gap: .1rem;
  margin-top: 0.8rem;
}

/* 入力欄・セレクトを“太枠＆大きめ”に */
.woocommerce-checkout .nlb-attendees-wrap .input-text,
.woocommerce-checkout .nlb-attendees-wrap select.select {
	box-sizing: border-box;
	height: 48px;
	padding: 10px 14px;
	font-size: 0.9rem;
	background: #fff;
	width: 100%;
	background-color: #fff;
	box-shadow: none;
	border-radius: 5px;
	border: 1px solid #d5d5d5;
}

/* セレクトの矢印とホバー（必要なら） */
.woocommerce-checkout .nlb-attendees-wrap select.select:hover,
.woocommerce-checkout .nlb-attendees-wrap .input-text:hover {
  border-color: #666;
}


.form-row.woocommerce-validated input.input-text {
	box-shadow: none !important;
}

div.product-addon-totals {
	margin: 0;
}


.woocommerce-product-details__short-description {
	margin-top: 1.5rem;
}

.single-product div.product form.cart {
	margin-bottom: 0;
}


/* 見出しをトグルに */
.product-purchase-note__title{
  margin: 0;
  padding: 1rem 3rem 1rem 1.2rem; /* 右に＋の余白を確保 */
  font-size: 1.05rem;
  font-weight: 700;
  cursor: pointer;
  background: #fafafa;
  position: relative;
  display: flex;
  align-items: center;
  gap: .6em; /* タイトルとバッジの間 */
}

/* 「必ずお読みください」バッジ（タイトル右隣） */
.product-purchase-note__title::after{
    content: "必ずお読みください";
    display: inline-block;
    padding: .15em .5em;
    font-size: .75rem;
    font-weight: 700;
    color: #b91c1c;
    border: 1px solid #b91c1c;
    border-radius: 999px;
    vertical-align: middle;
    white-space: nowrap;
}

/* ＋／− アイコン（一番右） */
.product-purchase-note__title::before{
  content: "＋";
  position: absolute;
  right: 1.2rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.2rem;
  line-height: 1;
}

/* 開いている状態 */
.product-purchase-note.is-open
.product-purchase-note__title::before{
  content: "−";
}
/* 中身 */
.product-purchase-note__content{
    background: #fafafa;
    padding: 0 1.35rem;
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease;
    text-align: justify;
}

/* 開いたら表示 */
.product-purchase-note.is-open
.product-purchase-note__content{
    padding-bottom: 1.5rem;
}

/* 注意事項：外枠 */
.product-purchase-note{
    border: 1px solid #e5e7eb;   /* ← 常時1px */
    border-radius: 12px;
    background: #fafafa;        /* ← 全体の下地 */
    overflow: hidden;
    margin: 2rem 0;
}

/* listブロックだけ整形 */
.product-purchase-note__content .note-list{
    margin: .6em 0 1em;
    padding: 0;
    list-style: none;
}

.product-purchase-note__content .note-list li{
	line-height: 1.65;
	margin: .35em 0;
	font-size: 0.95rem;
}

p.section\.product-purchase-note\.is-open {
	margin: .35em 0;
	font-size: 0.95rem;
}

/* 全域のlistブロックだけ整形 */
.note-list{
	margin: 1.2rem 0 1.4rem;
	padding-left: 0;          /* デフォルトのul余白を消す */
	list-style: none;
	line-height: 1.65;
	margin: .35em 0;
	font-size: 0.95rem;
}

.note-list li{
	margin: .6em 0 1em;
	padding: 0;
	list-style: none;
	font-weight: 400;
}

.note-list li{
  padding-left: 1em;
  text-indent: -1em;  /* 1文字ぶら下げ */
  line-height: 1.7;
  margin: .35em 0;
}



.single-product div.product form.cart{
padding: 0;
}

/* 追加情報（lp-section--additional） */
/* まずはデフォルトで非表示（属性が無い時は見出しも出さない） */
.lp-section--additional{
  display: none;
}

/* 属性テーブル（shop_attributes）がある時だけ表示 */
.lp-section--additional:has(table.shop_attributes){
  display: block;
}

/*カートページ*/
/*
 * カートページ(.woocommerce-cart)の中にある、
 * 送料の行(tr.woocommerce-shipping-totals)を非表示にします。
*/
.woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block {
	display: none !important;
}

/* =========================
   その他（追加情報）をQ&A化
========================= */

/* テーブルの見た目を無効化 */
.single-product .lp-section--additional table.shop_attributes{
  border: 0;
  border-collapse: separate;
}

table:not( .has-background ) tbody td {
   background-color: #f8f8f8 !important;
}

/* tbody / tr をブロック化 */
.single-product .lp-section--additional table.shop_attributes tbody,
.single-product .lp-section--additional table.shop_attributes tr{
  display: block;
}

/* 1Q&A = 1カード */
.single-product .lp-section--additional table.shop_attributes tr{
  margin: 0 0 1.2rem;
  padding: 1rem 1.2rem;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fafafa;
}

/* th → Q */
.single-product .lp-section--additional table.shop_attributes th{
  display: block;
  width: auto;
  border: 0;
  padding: 0;
  margin: 0 0 .5rem;
  font-size: 1rem;
  font-weight: 600;
  color: #00a48a;
  padding-left: 1.5em;     /* Q. 分の幅 */
  text-indent: -1.5em;

}

/* Qの前に「Ｑ」 */
.single-product .lp-section--additional table.shop_attributes th::before{
  content: "Ｑ. ";
  font-weight: 700;
}

/* td → A */
.single-product .lp-section--additional table.shop_attributes td{
  display: block;
  border: 0;
  padding: 0;
  padding-left: 1.5em;
  text-indent: -1.5em;

}

/* A本文 */
.single-product .lp-section--additional table.shop_attributes td p{
  margin: 0;
  font-size: .95rem;
  line-height: 1.7;
  color: #333;
}

/* Aの前に「Ａ」 */
.single-product .lp-section--additional table.shop_attributes td p::before{
  content: "Ａ. ";
  font-weight: 700;
  color: #555;
}



.btn_l_grey.wow.fadeInUp.on {
	border: 1px solid #888;
	background-color: #F9F8F4;
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
	padding: 1rem 1.5rem 1rem 1rem;
	margin-top: 15px;
	transition: .5s;
}

/* ホバー時 */
.btn_l_grey.wow.fadeInUp.on:hover {
	background-color: #edede8;
	box-shadow: 0 5px 13px rgba(100, 100,100, 0.1);
	cursor: pointer;
}

	
.btn_l_grey2.wow.fadeInUp.on {
	border: 1px solid #888;
	background-color: #fff;
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
	padding: .5rem 1.5rem .5rem 1rem;
	margin-top: 15px;
	transition: .5s;
}

/* ホバー時 */
.btn_l_grey2.wow.fadeInUp.on:hover {
	background-color: #f5f5f5;
	box-shadow: 0 5px 13px rgba(100, 100,100, 0.1);
	cursor: pointer;
}

.lp-section__content {
	color: var(--text);
	font-weight: 400;
}
	
.single-product #gosho_about h3 {
    margin: 3rem .3rem .6rem;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
    border: 0;
    color: #333;
    padding: 0;
    letter-spacing: 0rem;
}

.single-product #gosho_about h3 span {
	display: block;
	font-weight: 400;
	margin-top: 0.5rem;
	
}

/* ===== LP footer (summary内) ===== */
.lp-footbox{
}

.lp-section--footer {
  margin: 4.5rem 0 0 0 !important;
  padding: 0 !important;
}

.single-product div.summary.entry-summary {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

.lp-footbox__inner {
  margin: 0 !important;
  padding: 0 !important;
}

.lp-footbox__card {
  margin: 0 auto;
  border-radius: 24px 24px 0 0; /* 下は角丸にしない */
}

.lp-footbox a{
  color: #fff;
}

.lp-footbox__tel{
  text-align: center;
  margin: 0 0 1rem;
}

.lp-footbox__telnum{
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
}

.lp-footbox__telnote{
  font-size: .9rem;
  color: #333;
  margin-top: .25rem;
}

.lp-footbox__card{
  background: #00a48a;
  color: #fff;
  border-radius: 0 0 20px 20px;
  padding: 1.5rem 1.25rem;
}

.lp-footbox__logo{
  display: flex;
  justify-content: center;
  margin: 1.5rem 0 1rem;
}
.lp-footbox__logo img{
  width: 50%;
  height: auto;
  border-radius: 0;
}

.lp-footbox__logo_n{
  display: flex;
  justify-content: center;
  margin: .5rem 0 1rem;
}
.lp-footbox__logo_n img{
width: 40%;
  height: auto;
  border-radius: 0;
}


.lp-footbox__company{
  text-align: center;
  line-height: 1.6;
  margin-top: 1rem
  margin-bottom: 1.25rem;
}
.lp-footbox__name{
  letter-spacing: .02em;
}
.lp-footbox__lic{
  font-size: .8rem;
  margin-top: .25rem;
  font-weight: 400;
}

.lp-footbox__block{
  margin-top: 2rem;
}
.lp-footbox__label{
	font-weight: 400;
	font-size: .9rem;
	margin-bottom: .25rem;
}
.lp-footbox__text{
	font-size: .9rem;
	font-weight: 400;
}
.lp-footbox__company a{
  color: #fff;
}

.lp-footbox__mgr{
	margin-top: 2rem;
	margin-bottom: 2rem;
	font-size: 0.9rem;
	font-weight: 400;
}

/* リンク：文字列リンク＋区切り線 */
.lp-footbox__links{
  margin: 1.25rem 0;
  border-top: 1px solid rgba(255,255,255,0.5);
  margin: 0 8%
}
.lp-footbox__link{
	display: block;
	padding: 1rem 1.25rem;
	text-align: center;
	color: #fff;
	text-decoration: none;
	font-weight: 400;
	font-size: .9rem;
	border-bottom: 1px solid rgba(255,255,255,0.5);
}

.lp-footbox__link:hover{
  background: rgba(0,0,0,.06);
}

.lp-footbox__brand{
  text-align: center;
  font-size: 1.8rem;
  font-weight: 800;
  letter-spacing: .03em;
  margin-top: 1.25rem;
}

.lp-footbox__copy{
	text-align: center;
	font-size: .8rem;
	margin: 1rem;
	font-weight: 400;
}

.lp-footbox__logo_f {
	margin: 3rem 15%;
}


/* =========================================================
   Cart page: 背景を白 + サイドバー等を非表示
========================================================= */

/* 1) カートページだけ背景を白に（全体の背景画像も無効化） */
body.woocommerce-cart{
  background: #fff !important;
  background-image: none !important;
  background-attachment: initial !important;
}

/* 背景がwp-site-blocks側で塗られている場合も白に */
body.woocommerce-cart .wp-site-blocks,
body.woocommerce-cart .site,
body.woocommerce-cart .site-content{
  background: #fff !important;
}

/* 2) サイドバー（検索/最近の投稿など）を消す */
body.woocommerce-cart #secondary,
body.woocommerce-cart .widget-area{
  display: none !important;
}

/* 3) サイドバーが消えた分、本文を全幅に */
body.woocommerce-cart .content-area{
  width: 100% !important;
  float: none !important;
  margin-right: 0 !important;
}

/* 4) パンくず等も不要なら（必要なければ削除OK） */
body.woocommerce-cart .storefront-breadcrumb{
  display: none !important;
}

/* =========================================================
   Cart page: ヘッダー全体を非表示
========================================================= */
body.woocommerce-cart .site-header{
  display: none !important;
}



.site-footer{
	  margin: 0 auto;
	  display:block;
	text-align:center;
	width:80%;
	background-color: #fff;
	border-top:1px solid #888;
}

/* =========================================================
   Cart & Checkout: 背景を白 + ヘッダー/サイドバー非表示
========================================================= */

/* 背景を白（背景画像も無効化） */
body.woocommerce-cart,
body.woocommerce-checkout{
  background: #fff !important;
  background-image: none !important;
  background-attachment: initial !important;
}

/* wp-site-blocks側で塗られている場合も白 */
body.woocommerce-cart .wp-site-blocks,
body.woocommerce-cart .site,
body.woocommerce-cart .site-content,
body.woocommerce-checkout .wp-site-blocks,
body.woocommerce-checkout .site,
body.woocommerce-checkout .site-content{
  background: #fff !important;
}

/* サイドバー非表示 */
body.woocommerce-cart #secondary,
body.woocommerce-cart .widget-area,
body.woocommerce-checkout #secondary,
body.woocommerce-checkout .widget-area{
  display: none !important;
}

/* 本文を全幅に */
body.woocommerce-cart .content-area,
body.woocommerce-checkout .content-area{
  width: 100% !important;
  float: none !important;
  margin-right: 0 !important;
}

/* パンくず不要なら */
body.woocommerce-cart .storefront-breadcrumb,
body.woocommerce-checkout .storefront-breadcrumb{
  display: none !important;
}

/* ヘッダー全体を非表示（=メニューバーも消える） */
body.woocommerce-cart .site-header,
body.woocommerce-checkout .site-header{
  display: none !important;
}

/* もしテーマが別ナビを持ってる場合の保険 */
body.woocommerce-cart .primary-navigation,
body.woocommerce-cart .secondary-navigation,
body.woocommerce-checkout .primary-navigation,
body.woocommerce-checkout .secondary-navigation{
  display: none !important;
}

/* チェックアウト：プライバシー注意文 */
.woocommerce-checkout .checkout-privacy-note{
  font-size: 80%;
  margin-top: .5rem;
}

/* チェックアウト：タイトル */
h1.entry-title {
	margin: 0 auto;
	text-align: center;
	font-size: 2rem;
	font-weight: 500;
}

/* チェックアウト小見出し */
.woocommerce-billing-fields h3 {
	text-align: center;
	font-size: 1.5rem;
	font-weight: 500;
}


#payment .payment_methods>.woocommerce-PaymentMethod>label::before, #payment .payment_methods>.wc_payment_method>label::before {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	font-weight: normal;
	line-height: 1;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	line-height: inherit;
	vertical-align: baseline;
	content: "";
	margin-right: .5407911001em;
	transition: color,ease,.2s;
	color: #fff;
	font-size: 1.3rem;
}

@media(min-width:769px){
/* サンクスページ */
.entry-content {
	margin: 1.5rem auto;
	width: 650px;
	text-align: center;
}
}


.bank-transfer-info {
	background-color: #f8f8f8;
	padding: 2.5rem 2.5rem;
}

h2.bank-transfer-info__title {
	font-size: 1.3rem;
	margin-bottom: 0.4rem;
	line-height: 1.25;
	letter-spacing: 0rem;
	text-align: justify;
	text-indent: 0.4rem;
	clear: both;
	font-weight: 500;
	color: #333;
	text-justify: inter-ideograph;
}

h3.bank-transfer-info__heading {
	padding-top: 0rem;
	font-size: 1.1rem;
	font-weight: 500;
}



ul.bank-transfer-info__list {
	text-align: justify;
	font-size: 1.1rem;
	font-weight: 400;
	margin: 0.5rem 2rem;
	padding: 0;
	line-height: 2;
}

p.bank-transfer-info__account {
	color: #333;
	font-weight: 400;
	font-size: 1.1rem;
	letter-spacing: 0.02em;
	text-align: justify;
	margin: 0.6rem 1rem;
	padding: 0;
	line-height: 2;
}

p.bank-transfer-info__amount {
	color: #333;
	font-weight: 400;
	font-size: 1.1rem;
	letter-spacing: 0.02em;
	text-align: justify;
	margin: 0.6rem 1rem;
	padding: 0;
	line-height: 2;
}

p.bank-transfer-info__note {
	color: #333;
	font-weight: 400;
	font-size: 0.9rem;
	letter-spacing: 0.02em;
	text-align: justify;
	margin: 0.6rem 1rem;
	padding: 0;
	padding-left: 1.4em;
	text-indent: -1.3em;
	line-height: 1.7;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
	margin: 1.5rem auto;
	width: 650px;
	text-align: justify;
	padding: 0.5rem 2rem;
}

h2.woocommerce-order-details__title {
	font-size: 1.3rem;
	line-height: 1.25;
	letter-spacing: 0.06em;
	text-align: justify;
  text-indent: 0.4rem;
	  clear: both;
	font-weight: 500;
	margin: 4rem auto 1rem;
	/* color: #131315; */
	text-justify: inter-ideograph;
}

h2.order-participants__title{
	font-size: 1.3rem;
	line-height: 1.25;
	letter-spacing: 0.06em;
	text-align: justify;
   text-indent: 0.4rem;
	clear: both;
	font-weight: 500;
	margin: 4rem auto 1rem;
	/* color: #131315; */
	text-justify: inter-ideograph;
}

/* ==============================
   サンクスページ：注文詳細テーブル整形
   ============================== */
body.woocommerce-order-received .woocommerce-table--order-details.shop_table.order_details{
  width: 100%;
  padding:2rem;
}

ul.order_details li strong {
	display: block;
	font-size: 1.3em;
	text-transform: none;
	font-weight:500;
}

/* ヘッダー行 */
body.woocommerce-order-received .woocommerce-table--order-details thead th{
	padding: 0;
	font-size: 1.05rem;
	font-weight: 600;
	border-bottom: 2px solid #e5e5e5;
	/* background: #fafafa; */
	text-align: justify;
	text-indent: 2rem;
}

body.woocommerce-order-received .woocommerce-table--order-details thead th.product-total{
	text-align: center !important;
	text-indent: 0;
}

/* 本文セル */
body.woocommerce-order-received .woocommerce-table--order-details tbody td{
  padding: 22px 16px;
  border-bottom: 1px solid #eee;
  vertical-align: top;
}

/* 商品側（左） */
body.woocommerce-order-received .woocommerce-table--order-details td.product-name{
  text-align: left;
  line-height: 1.75;
}

/* 商品名リンク */
body.woocommerce-order-received .woocommerce-table--order-details td.product-name > a{
  font-size: 1.05rem;
  font-weight: 700;
  text-decoration: none;
  color: #333;
}

/* ×1 の表記 */
body.woocommerce-order-received .woocommerce-table--order-details .product-quantity{
  font-weight: 600;
  margin-left: .25em;
  white-space: nowrap;
}

/* オプション（メタ情報） */
body.woocommerce-order-received .woocommerce-table--order-details .wc-item-meta{
  margin: .5rem 0 0;
  padding: 0;
  list-style: none;
  font-size: .95rem;
}

body.woocommerce-order-received .woocommerce-table--order-details .wc-item-meta-label{
  font-weight: 600;
}


/* bookingサマリーの箱（inline styleのmargin-topは上書きできる） */
body.woocommerce-order-received .woocommerce-table--order-details .wc-booking-summary{
	margin-top: 14px !important;
	padding: 14px 16px;
	border: 1px solid #ddd;
	border-radius: 10px;
	background: #ffffff;
	max-width: 100%;
}

/* 予約番号の行 */
body.woocommerce-order-received .woocommerce-table--order-details .wc-booking-summary-number{
	display: flex;
	align-items: center;
	gap: 0.8rem;
	font-weight: 700;
	margin-top: 0.6rem;
	/* padding: 0rem; */
	line-height: 1rem;
}

/* 未払いバッジ */
body.woocommerce-order-received .woocommerce-table--order-details .status-unpaid{
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: .85rem;
  font-weight: 700;
  background: #d0d0d0;
}

/* 日付や人数のリスト */
body.woocommerce-order-received .woocommerce-table--order-details .wc-booking-summary-list{
	margin-top: 1rem;
	text-indent: 0.1rem;
}

/* 合計側（右） */
body.woocommerce-order-received .woocommerce-table--order-details td.product-total{
  text-align: right;
  white-space: nowrap;
  font-size: 1.2rem;
  font-weight: 800;
}

/* フッター（小計/合計/決済） */
body.woocommerce-order-received .woocommerce-table--order-details tfoot th,
body.woocommerce-order-received .woocommerce-table--order-details tfoot td{
  padding: 16px;
  border-top: 1px solid #eee;
  font-size: 1rem;
}

body.woocommerce-order-received .woocommerce-table--order-details tfoot th{
	text-align: left;
	font-weight: 600;
	text-indent: 1rem;
}

body.woocommerce-order-received .woocommerce-table--order-details tfoot td{
  text-align: right;
  white-space: nowrap;
  font-weight: 700;
}

/* 合計金額の行だけ強調したい場合（文言で判定） */
body.woocommerce-order-received .woocommerce-table--order-details tfoot tr:nth-child(2) td{
  font-size: 1.15rem;
  font-weight: 800;
}



/* 参加者一覧テーブル */
.order-participants__table {
padding: 2rem;
  font-size: 0.9rem;
  background-color:#f8f8f8;
}

/* ヘッダー */
.order-participants__table thead th {
	font-weight: 500;
	padding: 0.75rem 0.6rem;
	border-bottom: 1px solid #ddd;
	text-align: center;
	font-size: 0.9rem;
}

/* 本文セル */
.order-participants__table tbody td {
  padding: 0.7rem 0.6rem;
  border-bottom: 1px solid #ddd;
  text-align: center;
  vertical-align: middle;

}

/* No. 列をやや細く */
.order-participants__table th:first-child,
.order-participants__table td:first-child {
  width: 15%;
}

/* No. 列をやや細く */
.order-participants__table th:first-child(2),
.order-participants__table td:first-child(2) {
  width: 15%;
}

/* 年齢列を細めに */
.order-participants__table th:nth-child(3),
.order-participants__table td:nth-child(3) {
  width: 20%;
}

/* 区分 */
.order-participants__table tbody td:nth-child(4) {
  width: 35%;
}


/* 交互に薄く背景 */
.order-participants__table tbody tr:nth-child(even) {
  background-color: #fafafa;
}


section.woocommerce-customer-details{
display:none;
}

a.button.back-to-product-button {
	background-color: #fff;
	border: 1px solid #00a48a;
	border-radius: 999px;
	margin-top: 2rem;
	font-size: 0.85rem;
	padding: 0.5rem 1.6rem;
	font-weight: 400;
}

a.button.back-to-product-button:hover
{
	color: #50b6a8;
	border: 1px solid #50b6a8;
}


/* ==============================
   チェックアウト：注文概要（注文レビュー）テーブル整形
   参照：サンクスページの注文詳細CSS
   ============================== */

/* テーブル全体 */

.woocommerce-billing-fields__field-wrapper {
	/* float: none; */
	/* width: 100%; */
	/* max-width: 100%; */
	margin: 0 auto;
	padding: 2rem;
	box-sizing: border-box;
	border-radius: 10px;
	background-color: #f8f8f8;
}

/* ヘッダー行 */
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th{
  padding: 0;
  font-size: 1.05rem;
  font-weight: 600;
  border-bottom: 2px solid #e5e5e5;
  text-indent: 2rem;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th.product-total{
  text-align: center;
  text-indent: 0;
}

/* 本文セル */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody td{
  padding: 22px 16px;
  border-bottom: 1px solid #eee;
  vertical-align: top;
}

/* 商品側（左） */
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{
  text-align: left;
  line-height: 1.75;
  font-size: 1rem;
}

/* 商品名（checkoutはリンクじゃない想定なので強調だけ） */
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{
  font-weight: 700;
}

/* ×1 */
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity{
  font-weight: 600;
  margin-left: .25em;
  white-space: nowrap;
}

/* 変動情報（オプションや予約日など） */
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
  margin: .75rem 0 0;
  font-size: .95rem;
  font-weight: 400;
}

/* dt/dd を2列っぽく整列（見やすくする） */
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation{
  display: grid;
  grid-template-columns: 12em 1fr;
  column-gap: 1rem;
  row-gap: .35rem;
  padding: 14px 16px;
  margin-top: 14px;
  border: 1px solid #ddd;
  border-radius: 10px;
  background: #fff;
  box-sizing: border-box;
}

/* dt（ラベル） */
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dt{
  font-weight: 600;
  margin: 0;
}

/* dd（値） */
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd{
  margin: 0;
}

/* dd 内の p の余白を消す */
body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd p{
  margin: 0;
}

/* 右列（小計） */
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{
  text-align: right;
  white-space: nowrap;
  font-size: 1.2rem;
  font-weight: 800;
}

/* フッター（小計/合計） */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{
  padding: 16px;
  border-top: 1px solid #eee;
  font-size: 1rem;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th{
  text-align: left;
  font-weight: 600;
  text-indent: 1rem;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{
  text-align: right;
  white-space: nowrap;
  font-weight: 700;
}

/* 合計行を強調 */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total td{
  font-size: 1.15rem;
  font-weight: 800;
}




/*以下丸ごとチェックアウトページ*/

#customer_details{
float: none;
	width: 100%;
	max-width: 650px;
	margin: 50px auto 0;
	box-sizing: border-box;
	border-radius: 10px;
	background-color: #fff;
}

.col-1{
	border:3px solid b_lue;
	width:100% !important;
}




h3#order_review_heading{
margin: 4rem auto 0.5em;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 500;
	padding:0;
	}

#order_review_heading,
#participant-fields-wrapper,
#order_review{
	float: none;
	width:100%;
	margin:0 auto;
	padding:35px;
	box-sizing:border-box;
	border-radius:10px;
	background-color:#fff;
}

@media(min-width:769px){
#order_review_heading,
#participant-fields-wrapper,
#order_review{
max-width:650px !important;
margin:0 auto;}


.woocommerce-order {
	max-width: 650px !important;
	margin: 0 auto;
}
}

table.shop_table.woocommerce-checkout-review-order-table {
	padding: 2rem;
	background-color: #f8f8f8;
	margin: 2rem auto;
	border-radius: 10px;
}

#order_review{
	margin-bottom:40px;
	padding:0;
}

.woocommerce-checkout-review-order-table th.product-name,
.woocommerce-checkout-review-order-table td.product-name {
  width: 80%;
}

.woocommerce-checkout-review-order-table th.product-total,
.woocommerce-checkout-review-order-table td.product-total {
  width: 20%;
  text-align: right;
  white-space: nowrap;
}

/* checkoutで姓を左、名を右に */
body.woocommerce-checkout #billing_last_name_field {
	float: left !important;
	max-width: 150px;
	margin-right: 1rem;
	}
body.woocommerce-checkout #billing_first_name_field {
float: left;
max-width: 150px;
 }
 
 p#billing_postcode_field {
	max-width: 150px;
}

.form-row input, .form-row textarea, .form-row select {
	width: 100%;
	background-color: #fff;
	box-shadow: none;
	border-radius: 5px;
	border: 1px solid #d5d5d5;
}

.form-row input:hover,
.form-row textarea:hover,
.form-row select:hover,
.select2-container--default .select2-selection--single:hover {
  border-color: #666;
}

.form-row label {
	display: block;
	text-align: justify;
	text-indent: 0.4rem;
}

.select2-container .select2-selection--single {
	box-sizing: border-box;
	cursor: pointer;
	display: block;
	height: 3rem;
	margin: 0 0 -4px;
	user-select: none;
	-webkit-user-select: none;
	display: flex;
	align-items: center;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 3rem;
	position: absolute;
	top: 1px;
	right: 1px;
	width: 20px;
}

.select2-container--default .select2-selection--single {
	width: 100%;
	background-color: #fff;
	box-shadow: none;
	border-radius: 5px;
	border: 1px solid #d5d5d5;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
	display: none;
}

.select2-dropdown{
	border: 1px solid #d5d5d5;
	}
	
	
div#participant-fields-wrapper {
	margin: 0 auto;
	padding: 2rem;
	box-sizing: border-box;
	border-radius: 10px;
	background-color: #f8f8f8;
}


.nlb-attendees-wrap h3 {
	/* text-align: center; */
	font-size: 1.1rem;
	font-weight: 500;
}

.woocommerce-checkout .nlb-attendees-wrap p {
	text-align: justify;
	color: #333 !important;
	margin-bottom: 1rem !important;
}

#payment .payment_methods>.woocommerce-PaymentMethod>label, #payment .payment_methods>.wc_payment_method>label {
	display: block;
	padding: 1.41575em;
	cursor: pointer;
	background-color: #f8f8f8;
	text-align: justify;
}
#payment .payment_methods>.woocommerce-PaymentMethod>label, #payment .payment_methods>.wc_payment_method>label:hover {
	background-color: #fafafa !important;
}

#payment .payment_methods > li:not(.woocommerce-notice) {
	background-color: #eee;
}
#payment .payment_methods > li:not(.woocommerce-notice):hover {
	background-color: #50b6a8;
}

#payment .payment_methods > li .payment_box, #payment .place-order {
background-color:#fff;
}

#payment .place-order .button {
	font-size: 1.4em;
	white-space: pre-wrap;
	padding: 1.3rem;
	margin: 5rem auto 1rem;
	border-radius: 999px;
	background-color: #00a48a;
	letter-spacing: 0.14rem;
}

#payment .place-order .button:hover {
	background-color: #50b6a8;
}

.hentry .entry-content a {
	text-decoration: none;
}

.payment_box.payment_method_square_credit_card {
	background-color: #fafafa !important;
}

/* --- スマートフォン表示用のスタイル (画面幅768px以下で適用) --- */
@media (max-width: 768px) {

	/*
	* ★★★ これが原因の要素です ★★★
	* ブロックエディタの「グループ」ブロックが持つグローバルパディングを上書きします。
	* これでピンク色の余白が消えます。
	*/
	.woocommerce-checkout .wp-block-group.has-global-padding {
		padding-left: 15px !important;   /* 画面端に少しだけ余白を残す */
		padding-right: 15px !important;  /* こちらも同様 */
		box-sizing: border-box;          /* paddingを含めて幅を計算 */
	}

	/*
	* お客様が設定していた内側の要素のスタイル（こちらは引き続き必要です）
	* 親の余白が適切になったことで、これらの要素も正しく表示されるようになります。
	*/
	.woocommerce-checkout #customer_details,
	.woocommerce-checkout #order_review_heading,
	.woocommerce-checkout #participant-fields-wrapper,
	.woocommerce-checkout #order_review {
		width: 100% !important;
		padding: 10px; /* 内側の余白は少し控えめに */
		box-sizing: border-box;
		max-width: none;
	}

	/* 注文概要部分のスタイル調整（任意） */
	.woocommerce-checkout #order_review {
		border-radius: 8px;
		margin-bottom: 30px;
	}
	

	/* --- Squareクレジットカード決済フォームの不要な枠線を消す --- */

	/*
	* 決済フォームを囲むfieldsetタグにデフォルトで付いている枠線と余白をリセットします。
	* IDセレクタで指定しているので、他の要素には影響しません。
	*/
	.woocommerce-checkout #wc-square-credit-card-credit-card-form {
		border: none !important;      /* 枠線をなくす */
		padding: 0 !important;        /* 内側の余白をなくす */
		margin: 0 !important;         /* 外側の余白をなくす */
	}

}
/*以上チェックアウトページ*/


/* ==============================
   チェックアウト / サンクス 共通（SP）
   ============================== */
@media (max-width: 768px) {
.entry-content{
max-width:calc(100vw - 14px);
padding:0.5rem 0.5rem;
}
.site-content{
max-width:calc(100vw - 14px);
margin-left:7px;
margin-right:7px;
padding: 0;
}

h1.entry-title {
padding-top:1rem ;
}

.bank-transfer-info {
	background-color: #f8f8f8;
	padding: 0.5rem 0.5rem;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
	margin: 1.5rem auto;
	text-align: justify;
	padding: 0.5rem 0.5rem;
	width:100%;
}

body.woocommerce-order-received .woocommerce-table--order-details.shop_table.order_details {
	width: 100%;
	padding: 0.5rem;
	table-layout: fixed;
}

td.woocommerce-table__product-name.product-name {
	padding: 1rem 0.2rem !important;
}

.wc-booking-summary {
	padding: 0.4rem !important;
	margin: 0;
}

span.amount.woocommerce-Price-amount {
	/* font-weight: 600; */
	font-size: 1.1rem;
	line-height: 1rem;
	font-weight: 600;
	margin-left: 1ch;
}


body.woocommerce-order-received .woocommerce-table--order-details td.product-total {
	padding: 1rem 0.5rem;
}

body.woocommerce-order-received .woocommerce-table--order-details thead th {
	padding: 0;
	text-align: justify;
	text-indent: 2rem;
	width: 100%;
}

body.woocommerce-order-received .woocommerce-table--order-details thead th.product-total {
	text-align: center !important;
	text-indent: 0;
	width: 40%;
}

.order-participants__table {
	padding: 0.5rem;
	font-size: 0.8rem;
	background-color: #f8f8f8;
}

.order-participants__table thead th {
	font-weight: 500;
	padding: 0.75rem 0.6rem;
	border-bottom: 1px solid #ddd;
	text-align: center;
	font-size: 0.8rem;
}

.woocommerce-billing-fields__field-wrapper {
	/* float: none; */
	/* width: 100%; */
	/* max-width: 100%; */
	margin: 0 auto;
	padding: 0.5rem;
	box-sizing: border-box;
	border-radius: 10px;
	background-color: #f8f8f8;
}

.woocommerce-checkout #customer_details, .woocommerce-checkout #order_review_heading, .woocommerce-checkout #participant-fields-wrapper, .woocommerce-checkout #order_review {
	width: 100% !important;
	padding: 0;
	box-sizing: border-box;
	max-width: none;
}

.nlb-attendees-wrap {
	padding: 10px;
}


table.shop_table.woocommerce-checkout-review-order-table {
	padding: 2rem;
	background-color: #f8f8f8;
	margin: 2rem 0;
	border-radius: 10px;
	max-width: calc(100vw - 14px);
	padding: 0;
}
table.shop_table.woocommerce-checkout-review-order-table tr {
margin:10px;
}
table:not( .has-background ) th
{background-color: unset;
}

td.product-name {
	padding: 0.2rem !important;
}



/* variation を1列（縦並び）にする */
.woocommerce .variation{
  display: block;
}

dl.variation {
	display: block !important;
	padding: 0.5rem !important;
}

dt.variation- {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
}

dd.variation- {
	display: block !important;
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
	padding: 0.4rem;
	font-size: 1.05rem;
	font-weight: 600;
	border-bottom: 2px solid #e5e5e5;
	text-indent: 2rem;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name {
	font-weight: 700;
	padding: 0.3rem !important;
}
img.sv-wc-payment-gateway-icon.wc-square-credit-card-payment-gateway-icon {
	width: 10% !important;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative !important;
	/* top: 50%; */
	transform: translateY(30%);
	border-radius: 0;
}

.thankyou-back-to-product {
	text-align: center;
	/* margin: 0 auto !important; */
}

}
#colophon > div > div.storefront-handheld-footer-bar{
display:none;}


div .wc-pao-addon-description p img {
    margin-bottom: 0.5rem;
}