/* ===== ご供養セクション全体背景 ===== */
.gokuyo-section {
  background-color: #fff;
  padding: 30px 0;
}

/* ===== 中央寄せボックス（白背景） ===== */
.gokuyo-container {
    display: flex;
    flex-direction: column;  /* ← 縦並びに戻す */
    justify-content: center;
    align-items: center;     /* 横中央揃え */
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 00px 20px 40px 20px;
  background: #fff;
  box-sizing: border-box;
  color: #333;
  line-height: 1.8;
  text-align: center;
}

/* ===== タイトル（安心対応） ===== */

.gokuyo-title-wrapper {
  text-align: center;
}

.gokuyo-title {
  font-size: 32px;
  font-weight: bold;
  border: 6px solid #333;
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
  background: #fff;
  padding: 25px 45px;
  border-radius: 10px;
  margin-bottom: 30px;
}


/* ===== Q&A装飾 ===== */
.gokuyo-faq-block {
  border: 2px solid #e3c16e;   /* 好みの色に調整OK */
  border-radius: 14px;
  background: #fff;
  margin: 22px auto;
  padding: 18px 10px 5px 10px;
  width: 95%;
  max-width: 1080px;
  box-sizing: border-box;
  box-shadow: 0 3px 16px rgba(184, 135, 0, 0.08);
  transition: box-shadow .2s;
}
.gokuyo-faq-block:hover {
  box-shadow: 0 6px 28px rgba(184, 135, 0, 0.14);
}

/* ===== サブ見出し・リード文 ===== */
.gokuyo-heading {
　margin: 0 auto;
  text-align: center;
  margin-bottom: 30px;
}

.gokuyo-heading h2 {
  font-size: 1.8em;
  display: inline-block;
  padding: 0 2px;
  line-height: 1.4;
}

.gokuyo-heading p {
  margin: 5px 0 0;
  font-size: 1.1em;
}

/* ===== ごあいさつ（テキスト＋キャラ） ===== */
.gokuyo-intro {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  background: #fffde7;
  padding: 25px;
  border-radius: 12px;
  margin-bottom: 30px;
  text-align: left;
}


.gokuyo-intro-image {
　height: auto;
}
.gokuyo-intro-image2{
		display: none;
	}
.gokuyo-intro-text {
  flex: 1 1 auto;
  min-width: 200px;
  width: auto;
　text-align: center;
}

.gokuyo-mascot {
    align-items: center;
  width: 100px;
  height: auto;
}

/* ===== セクション共通スタイル ===== */
.gokuyo-content{
	background: #fff;
	text-align: left;
  width: 75%;
}
.gokuyo-message,
.gokuyo-faq {
  background: #eceec9;
  text-align: left;
  width: 100%;
}

/* ===== 各セクションの見出し ===== */
.gokuyo-content h3,
.gokuyo-message h3 {
  margin-top: 40px;
  border-bottom: 2px solid #cddc39;
  padding-bottom: 5px;
  font-size: 1.3em;
}

/* ===== 箇条書き ===== */
.gokuyo-content ul {
  padding-left: 20px;
}
.gokuyo-content li {
  margin-bottom: 10px;
}

/* ===== Q&Aセクション ===== */
.gokuyo-faq {
  padding: 10px;
}

.gokuyo-faq h4 {
  margin: 0 0 10px;
  font-size: 1.2em;
  padding-bottom: 5px;
  width: 65%;
  height: auto;
}


.gokuyo-ya {
  margin: 0 0 10px;
  font-size: 1.2em;
  padding-bottom: 5px;
  width: 15%;
}
.bt_set{
	display: flex;
	justify-content: center;
	flex-direction: row;
	flex-wrap: nowrap;
	 gap: 16px;
	 font-size: clamp(14px, 1.2vw, 22px);
	align-items: center;
}
#bt1{
	padding-bottom: 5px;
}
#bt2{
	padding-bottom: 5px;
}
#bt3{
	padding-bottom: 5px;
}
#bt4{
	padding-bottom: 5px;
}
#bt5{
	padding-bottom: 5px;
}
#bt6{
	padding-bottom: 5px;
}
#bt7{
	padding-bottom: 5px;
}#bt8{
	padding-bottom: 5px;
}
#bt9{
	padding-bottom: 5px;
}

#faq-q1 { border-bottom: none; 
          width: 10%;
	      text-align: end;
}
#faq-q2 { border-bottom: none; 
          width: 10%;
	      text-align: end;
}
#faq-q3 { border-bottom: none; 
          width: 10%;
	      text-align: end;
}
#faq-q4 { border-bottom: none; 
          width: 10%;
	      text-align: end;
}
#faq-q5 { border-bottom: none; 
          width: 10%;
	      text-align: end;
}
#faq-q6 { border-bottom: none; 
          width: 10%;
	      text-align: end;
}
#faq-q7 { border-bottom: none; 
          width: 10%;
	      text-align: end;
}
#faq-q8 { border-bottom: none; 
          width: 10%;
	      text-align: end;
}
#faq-q9 { border-bottom: none; 
          width: 10%;
	      text-align: end;
}

.gokuyo-answer {
  margin: 0 0 20px;
  color: #2e7d32;
  font-weight: bold;
  width: 70%;
}

.faqend{
	display: flex;
	justify-content: center;
	font-size: 16px !important;
}
.faqendtex{
	width: 90%;
	
}

/* ===== Q&A「もっと見る」開閉スタイル（矢印が消えない方式） ===== */
.gokuyo-faq-more {
	display: flex;
	justify-content: center;
  max-height: 0;
  overflow:auto;
  transition: max-height 0.5s ease;
}

.gokuyo-faq-more.open {
  max-height: 2400px; /* 内容に応じて調整OK */
}

.faq-toggle-wrapper {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 180px; /* ←ボタン全体の横幅を固定 */
  justify-content: center;
}

.faq-toggle-wrapper span {
  display: inline-block;
  width: 96px; /* 「もっと見る」「閉じる」のどちらも収まるサイズ */
  text-align: center;
}


.bt_set{
	display: flex;
	justify-content: center;
	flex-direction: row;
	flex-wrap: nowrap;
	 gap: 16px;
	 font-size: clamp(14px, 1.2vw, 22px);
}
.ques{
	
  font-size: 20px;
  font-weight: bold;
}
.gokuyo-faq .voice-toggle-wrapper span {
  display: none;
}


/*↓お見積り*/

.estimate-section {
  background: #fdfcf6;
  padding: 30px 20px;
  text-align: center;
}

.estimate-title {
  font-size: 32px;
  font-weight: bold;
  border: 6px solid #333;
  display: inline-block;
  background: #fff;
  padding: 10px 30px;
  border-radius: 10px;
}

.estimate-lead {
  font-size: 20px;
  font-weight: bold;
  margin-top: 10px;
　text-align:left;
}

.estimate-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 30px;
  margin: 20px 0px 10px 0px;
  text-align:left;
}

.estimate-character img {
  width: 135px;
  height: auto;
}

.estimate-speech {
  max-width: 45vw;
  background: #fff;
  border: 2px solid #000;
  border-radius: 20px;
  padding: 20px;
  text-align: left;
  word-break: break-word;
  margin: 0 auto;
  margin-bottom: 20px;
}

.estimate-buttons {
  margin-top: 20px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.price-table-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
}

.price-table {
  background: #e8f5e9;
  padding: 20px;
  border-radius: 12px;
  width: 320px;
  box-sizing: border-box;
  font-size: 14px;
}

.price-table h3 {
  margin-bottom: 10px;
  font-size: 18px;
  border-bottom: 2px solid #388e3c;
  padding-bottom: 5px;
}

.price-table table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 10px;
}

.price-table th, .price-table td {
  border: 1px solid #ccc;
  padding: 6px;
  text-align: left;
  
}
.price-table th {
  background-color: #388e3c; /* 濃い緑色 */
  color: white;              /* 文字を白に */
  font-weight: bold;
}


