/* 標準可変メディア
   メモ : 可変メディアでは、HTML からメディアの高さおよび幅の属性を削除する必要がある
   http://www.alistapart.com/articles/fluid-images/ 
*/
img, object, embed, video {
	max-width: 100%;
}
/* IE 6 では最大幅がサポートされていないため、デフォルトで幅 100% に設定される */
.ie6 img {
	width:100%;
}

a.white:link {
color : #ffffff; 
}
a.white:visited {
color : #ffffff; 
}
a.white:active {
text-decoration : underline; 
color : #ffffff; 
}
a.white:hover {
text-decoration : underline; 
color : #ffffff; 
}

/*
	Dreamweaver 可変グリッドプロパティ
	----------------------------------
	dw-num-cols-mobile:		5;
	dw-num-cols-tablet:		8;
	dw-num-cols-desktop:	10;
	dw-gutter-percentage:	25;
	
	以下からヒントを入手 : Ethan Marcotte 氏の「レスポンシブ Web デザイン」 
	http://www.alistapart.com/articles/responsive-web-design
	
	および Joni Korpi 氏の「Golden Grid System」
	http://goldengridsystem.com/ 
*/


@media (hover: hover) {
  .main .allbox .button:hover {
    background-color: #d8cac0;
    color: #000;
  }
}

@media (hover: none) {
  .main .allbox .button:active {
    background-color: #d8cac0;
    color: #000;
  }
}


/* =========================
   モバイルファーストCSS
   - ベース：SP（820px想定）
   ========================= */

/* 共通（SP/PCどちらでも同じ） */
body{
	background-color: #faf5f3;
}

.box2_sub{
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
}

.box2_kikan {
	border: 3px solid #7c5550 ;   /*←ここの色変更*/
	background-color: #fff;
	max-width: 80%;
	margin: 0 auto;
	}

.box2_ttl_kikan {
	font-size: 18px;
	margin: 0;
	background:#7c5550 ;   /*←ここの色変更*/
	color: #fff;
	padding: 10px;
	text-align: center;
	font-weight: bold;
	text-align: center;
	}

.box2_main_kikan {
	padding-top: 0.8em;
	margin: 0;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}
/*期間ここまで*/

.apple{
	background-color: red;
}

.allbox {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	width: 100%;
  margin: 0 auto;
}

.flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}


.intro {
  padding: 0px 20px 10px;
  text-align: center;
}

.intro__wrapper {
  max-width: 760px;
  margin: 0 auto;
  padding: 20px;
  border-radius: 16px;
  background: linear-gradient(135deg, #fff, #f7f5f0);
  box-shadow: 0 6px 20px rgba(0,0,0,0.05);
}

.intro__wrapper p {
  font-size: 14px;
  text-align: center; 
  color: #333;
	padding: 0;
	margin: 0;
}

.item {
  text-align: center;
  border-radius: 12px;
  background: linear-gradient(45deg, #ffffff, #ffffff, #ffffff);
  box-shadow: 0 4px 8px rgba(0,0,0,0.5);
}

/* 画像は item_image の中に移動 */
.item .item_image {
  position: relative;
}

.item .item_image img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  margin-bottom: 10px;
}

.item p {
  text-align: center;
  font-size: 11px;
  font-weight: bold;
  margin: 0;
  color: #333;
}

.item span {
  text-align: center;
  font-weight: bold;
  margin: 0;
  color: #333;
}

/* 新商品マーク */
.item .badge-new {
  position: absolute;
  top: 0px;   /* 位置は好みで調整 */
  left: 5px;
  background: #e60033;
  color: #fff;
  font-size: 12px;
  padding: 2px 6px;
  border-radius: 3px;
}
.main .allbox .button {
  text-decoration: none;        /* デフォルトCSS打ち消し */
  color: #fff;                  /* 文字色指定 */
  background-color: #333;       /* 背景色指定 */
  line-height: 30px;
  margin: 0 auto;
  margin-bottom: 7%;
  display: block;               /* ブロック要素にする */
  text-align: center;           /* 中央揃え */
  padding: 5px 15px 5px 15px;   /* 余白指定 */
  border-radius: 5px;           /* 角丸指定 */
  font-size: 14px;              /* 文字サイズ指定 */
  box-shadow: 0 2px 10px 0 #DEDADA; /* 影指定 */
  font-weight: bold;
}


.mt-30 {
  margin-top: 30px; /* 画像とボタンの間に30pxの余白 */
}

.btn-area {
  text-align: center; /* ボタンを中央寄せ */
  width: 100%;
}

.btn-area a {
  margin: 0 auto;
  text-align: center;
}

.fontsizekeeper {
  font-size: 16px !important;    /*←黒リンクバーをホバーしたときに文字が小さくなる現象を防ぐ*/
}




.bao-item {
  display: flex;
  flex-direction: column; /* 縦並び */
  align-items: center;
  margin-bottom: 40px;
}

.bao-img img {
  width: 100%;
  height: auto;
  display: block;
}

.bao-text {
  margin-top: 16px;
}

.item-name {
  font-weight: 700;              /* 太字 */
  font-size: 1.8rem;             /* 少し大きく */
  color: #333;                   /* 濃い色に（必要ならブランドカラーに） */
  text-decoration: underline;    /* 下線 */
  text-underline-offset: 0.25em; /* 下線を少し離す */
  letter-spacing: 0.05em;        /* 文字間隔を少し広げる */
  margin-bottom: 0.3em;
	
}

/* 「新商品」ラベル */
.item-label-new {
  display: inline-block;
  margin-right: 0.5em;
  padding: 0.1em 0.4em;
  background: #e60012;   /* 赤 */
  color: #fff;           /* 白抜き */
  font-size: 0.8em;      /* 商品名より少し小さく */
  font-weight: 700;
  border-radius: 3px;
}

 /* gutter（列の隙間）を打ち消す */
  .no_gutter {
    margin-left: 0;
    margin-right: 0;
  }
  .no_gutter > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
  }

  /* 画像をマスに隙間なくフィットさせる */
  .no_gutter img {
    width: 100%;
    height: 100%;
    display: block;
    aspect-ratio: 1 / 1;   /* 正方形に揃える（不要なら削除可） */
    object-fit: cover;     /* 比率が違ってもマスを隙間なく埋める */
  }

  /* container-fluidの左右パディングもゼロにする */
  .container_fluid_p0 {
    padding-left: 0;
    padding-right: 0;
  }
/* =========================
   ここからSP（ベース）スタイル
   ========================= */

.logo {
  text-align: center;
  padding: 20px 15px 20px 15px; 
}

.logo p {
  text-align: center;
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
  font-weight: lighter;
  font-size: 16px;       
  line-height: 1.8em;    
}

.hot_item {
  text-align: center;
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
  font-weight: bold;
  font-size: 23px;       
  line-height: 1.6em;
	
}

.item {
  width: calc(50% - 10px); /* ←SP: 2列 */
  margin: 0 5px 15px;      
  padding: 10px;           
}

.item span {
  font-size: 10px;   
  font-weight: normal	
}

.item .coad {
	background-color: #777;
	color:#fff;
}

.main .allbox .button {
  width: 100%;    
	font-size: 10px;
}

.btn-area a {
  width: 80%;              
}

iframe[src*="youtube.com"],
iframe[src*="youtube-nocookie.com"] {
  width: 100%;             /* ←SPは100% */
  aspect-ratio: 16 / 9;
  height: auto;
  display: block;
  margin: 0 auto;
}
.br-pc {
	display:none;
}
.br-sp {
	display:inline;
}
.box2_sub{
	font-size: 12px;
}
.box2_main_kikan{
	font-size:16px;
}
.box2_kikan{
	max-width: 90%;
}

.insta-link{
	margin-bottom: 20px;
}

.insta-link img{
	max-width: 150px;
	margin-bottom: 5px;
}

/* =========================
   820px以上（タブレット/大きめ画面）
   ========================= */
@media only screen and (min-width: 820px) {

  .logo {
    padding: 20px; 
  }

  .logo p {
    font-size: 20px;  
    line-height: 50px;
  }

  .hot_item {
    font-size: 40px; 
  }

 .intro__wrapper {
    padding: 40px;
  }
	
.intro__wrapper p {
  font-size: 16px;
}	
	
  .item {
    width: calc(32% - 30px); /* ←PC: 4列 */
    margin: 0 15px 30px;    
    padding: 20px;          
  }

  .item span {
    font-size: 15px; 
  }

  .main .allbox .button {
    width: 170px; 
  }

  .btn-area a {
    width: 70%; 
  }

  iframe[src*="youtube.com"],
  iframe[src*="youtube-nocookie.com"] {
    width: 60%; /* ←PCは60% */
  }
	.bao-item {
    flex-direction: row;   /* 1,3,…は画像→テキスト */
    align-items: center;
    margin-bottom: 60px;
  }

 /* 画像：テキスト = 4 : 6 */
  .bao-img {
    flex: 0 0 40%;
    max-width: 40%;
  }
  .bao-text {
    flex: 0 0 60%;
    max-width: 60%;
  }

  /* 偶数段の左右反転はそのまま */
  .bao-item:nth-child(even) {
    flex-direction: row-reverse;
  }

  .bao-text {
    margin-top: 0;
    padding: 0 24px;
  }
	.br-pc {
	display:inline;
}
.br-sp {
	display:none;
}
	.box2_sub{
	font-size: 16px;
}
.box2_main_kikan{
	font-size: 20px;
}
	.box2_kikan{
		max-width: 80%;
	}
	
.insta-link img{
	max-width: 200px;
}	
}
/* =========================
   1140px以上（PC/大きめ画面）
========================= */
@media only screen and (min-width: 1140px) {
	
	}
	

