/* メニューパーツのメニューごとの囲み枠を非表示 */
.fs-p-sideMenu .fs-pt-menu__heading--lv1{
	border: none;
	}

.fs-p-sideMenu .fs-pt-menu__heading--lv2{
	border-bottom: none;
	}
	
.fs-p-sideMenu .fs-pt-menu__heading--lv3{
	border-bottom: none;
	}

.fs-p-memberInfo__points {
  color: #330000;
}

.fs-p-footerCopyright__text {
  color: #330000;
}

h2#item-title{
	color: #600;
	margin-bottom: 10px;
	font-size: 130%;
	margin-left: 10px;
}

h3{
	font-size: 110%;
	color: #000;
	border-bottom-width: 1px;
	border-bottom-color: #600;
	border-bottom-style: solid;
	border-left-width: 8px;
	border-left-color: #600;
	border-left-style: solid;
	margin-top: 30px;
	margin-right: 20px;
	margin-bottom: 10px;
	padding-top: 6px;
	padding-bottom: 6px;
	padding-left: 10px;
        font-weight: bold;
}

h4{
      color: #300;
      margin-top: 2em;
      font-size: 105%;
      padding-left: 10px;
}




strong{color:#900;}

img.fl{
	display:block;
	float:left;
	margin:0 10px 10px 0;
}

img.fr{
	display:block;
	float:right;
	margin:0 0 10px 10px;
}

.cl{clear:both;}

.big0 {
  color: #d00;
}
.big1{
  color: #d00;
  font-weight: bold;
}
.big2{
  color: #d00;
  font-weight: bold;
  font-size: 130%;
}

.big_kon {color:#1a1a40; font-weight:bold;}

.big_gold {color:#b38b00; font-weight:bold;}

.max_haba7{
  max-width: 700px;
}

.content-wrapper{
  max-width: 700px;
}


/* テキスト内余白 */
.text-block {padding: 0px 15px 20px 15px;}


/*
------------------------------
アクセス
------------------------------
*/

.access{
  max-width: 650px;
}

/*
------------------------------
よくある質問
------------------------------
*/

.faq-container{
      max-width: 700px;  /* ← ここを700pxに調整 */
}
.faq-item{
      margin-bottom: 25px;
      border-bottom: 1px solid #ddd;
      padding-bottom: 15px;
}
.question{
      background: #ffcc66;
      padding: 12px;
      font-weight: bold;
      border-radius: 4px;
}
.answer{
      padding: 12px 15px 0 15px;
      line-height: 1.7;
      max-width: 700px;  /* ← ここを700pxに調整 */
}

/*
------------------------------
熨斗
------------------------------
*/

.section{
      margin-bottom: 3em;
}
.nosi_image-block{
      display: flex;
      flex-wrap: wrap;
      align-items: flex-start;
      margin-bottom: 2em;
}
.nosi_image-block img{
      width: 265px;
      height: auto;
      float:left;
      margin-right: 1em;
      margin-bottom: 1em;
      flex-shrink: 0;
}
.nosi_image-block .text{
      flex: 1;
      min-width: 250px;
      float:right;
}

/*
------------------------------
カレンダー
------------------------------
*/

.calendar{
    width: 180px;
    height: 160px;
    border-collapse: collapse;
    table-layout: fixed;
}

.calendar th,
.calendar td{
    width: 14%;
    height: 14%;
    text-align: center;
    vertical-align: middle;
    border: 1px solid #ccc;
}

.calendar th{
    background-color: #f0f0f0;
}

.calendar .holiday{
    background-color: #ffcccc;
}
.holiday_end{
  padding:0 6px;
  background:#FCC;
  float:right;
}


/*
------------------------------
在庫不足対応
------------------------------
*/

.stock {
  border: 1px solid #966;        /* 枠線 */
  background-color: #f5ece8;     /* 背景色 */
  padding: 1.5rem;
  margin-top: 1rem;
  border-radius: 8px;            /* 角を少し丸く */
}

.stock h2 {
  font-size: 1.6rem;
  text-align: center;
  margin-bottom: 0.5rem;
  border-bottom: 1px solid #666; /* タイトル下の線 */
  padding-bottom: 1.5rem;
  color: #333;
}

.stock p {
  color: #555;
  line-height: 1.6;
}


/*
------------------------------
商品説明テーブル
------------------------------
*/

.product-details {
    background-color: #56392e; /* TABLE bgcolor */
    border-collapse: separate; /* cellpaddingとborder-spacingのために必要 */
    border-spacing: 1px; /* cellspacing */
    width: 100%; /* 必要に応じて幅を設定 */
}

.product-details th,
.product-details td {
    padding: 7px; /* cellpadding */
    font-size: 0.9em; /* font size=2 (一般的なブラウザのデフォルトフォントサイズ16pxに対して14px程度) */
    line-height: 1.5; /* 行の高さ */
}

.product-title {
    background-color: #ffffff; /* TD bgcolor */
    text-align: center; /* TD align */
    font-weight: normal; /* thのデフォルトの太字を解除 */
}

.feature-header {
    background-color: #e4ddda; /* TD bgcolor */
    text-align: center; /* TD align */
    width: 70px; /* TD width */
}

.feature-content,
.usage-section {
    background-color: #ffffff; /* TD bgcolor */
}

.usage-section ul {
    margin: 0;
    padding: 0 0 0 20px; /* リストの左パディングを調整 */
    list-style: none; /* デフォルトのリストスタイルを解除 */
}

.usage-section li {
    margin-bottom: 5px; /* リスト項目の間隔 */
}

/*
------------------------------
フッター料金表
------------------------------
*/

.cost-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 1px;
  background-color: #696969;
  text-align: center;
  font-family: sans-serif;
  font-size: 13px;
}

.cost-table th,
.cost-table td {
  background-color: #ffffff;
  padding: 8px 8px;
  font-weight: normal;
}

.cost-table th {
  font-size: 12px;
  font-weight: bold;
}

/*
------------------------------
画像間の空間30
------------------------------
*/

.image-space-30 {
    display: flex; /* Flexboxコンテナにする */
    flex-direction: column; /* アイテム（画像）を縦方向に並べる */
}

.image-space-30 img {
    margin-bottom: 30px; /* 各画像の下に30pxの余白 */
}

.image-space-30 img:first-child {
    margin-top: 30px; /* 最初の画像の上に30pxの余白を追加 */
}

/* 連続画像隙間なし下30 */

.image-space-0 {
    display: flex; /* Flexboxコンテナにする */
    flex-direction: column; /* アイテム（画像）を縦方向に並べる */
}

.image-space-0 img:last-child {
    margin-bottom: 30px; /* 最下部の画像の下に30pxの余白を追加 */
}


/* ヘッダー最下部バナーなし上5 */
.header-last-banner {
  margin: 5px auto 0;
  text-align: center;
  max-width: 800px;
}

/*
------------------------------
カレボーのテーブル
------------------------------
*/

.choco-wrapper {
  max-width: 700px;
  margin: 0 auto;
  border: 1px solid #2d0000;
  margin-bottom: 30px; 
}

.title-image {
  width: 100%;
  height: auto;
  display: block;
  margin: 0;
  padding: 0;
  border-bottom: none;
}

.choco-text {
  padding: 20px;
  color: #333;
  background-color: #fff;
  line-height: 1.8;
}

.choco-text p {
  font-size: 0.95em;
  margin-bottom: 1em;
}

.choco-text p:last-child {
  margin-bottom: 0;
}



