.spec-table-box{
 margin-bottom:50px;
 }

.spec-table-box h3{
 background:#666;
 text-align:center;
 font-size:22px;
 color:#fff;
 padding:8px 0 3px;
 }

.spec-table-box > p{
 font-weight:bold;
 margin-bottom: 30px;
 padding:10px;
 font-size:16px;
 }

.spec-table-box > span{
 display:block;
 text-align:center;
 font-size:20px;
 font-weight:700;
 }

.spec-table-box span.pc{
 font-size:14px;
 font-weight:normal;
 }

.spec-table{
 width:100%;
 margin:10px 0;
 overflow: auto;
 white-space:nowrap;
 }

.spec-table table{
 width:100%;
 margin:0;
 border-collapse:separate;
 border:1px solid #666;
 text-align:center;
 }

.spec-table table th,.spec-table table td{
 border:1px solid #666;
 border-top:none;
 padding:8px 10px;
 line-height:1.4;
 }

.spec-table table th{
 font-weight:400;
 background:#c1c1c1!important;
 color:#4f4f4f;
 }

.spec-table tr:nth-child(2) th:nth-child(2){
 width:150px;
 }

.spec-table table tr:nth-child(2) th,.spec-table table tr:nth-child(3) th{
 background:#fff!important;
 font-size:18px;
 font-weight:700;
 color:#666;
 }

.spec-table table tr:nth-child(2) td{
 padding-bottom:4px;
 font-size:22px;
 font-weight:700;
 color:#666;
 }

.t-1 .year-a,.t-1 .year-b{
 min-width:300px;
 }

.t-2 .year-a,.t-2 .year-b{
 min-width:250px;
 }

tr:nth-child(2) td span{
 font-size:15px;
 }

.b-line th,.b-line td{
 border-top:1px solid #666;
 }

.spec-table tr:first-child th{
 padding-bottom:5px;
 background:#666!important;
 color:#fff;
 font-size:18px;
 }

.spec-table .img-box{
 min-width:200px;
 padding:10px;
 background:#fff!important;
 }

.spec-table .year-a{
 padding:3px 10px 0;
 background:#f3a0bf;
 font-size:20px;
 font-weight:700;
 border-top:none
 }

.spec-table .year-b{
 padding:3px 10px 0;
 background:#bce0f8;
 font-size:20px;
 font-weight:700;
 border-top:none;
 }

.year-a span,.year-b span{
 font-size:14px;
 }

.feature{
 font-weight:700;
 }

.txt-red{
 color:red;
 }

.pagehead{
 background-image: url(https://www.jamble.co.jp/user_data/packages/default/img/category/category_banner/id102/fan_sagyohuku.jpg);
 background-size: 100% auto;
 background-repeat: no-repeat;
 height: 150px;
 margin-top: -25px;
 margin-bottom: 8px;
 padding-top: 30px;
 padding-left: 0px;
 text-align: center;
}
.bluefont{
 color: #0071BC;
 font-size: 300%;
 font-weight: bold;
 line-height: 1em;
 margin-left: 0px;
 text-shadow: -1px -1px 0px #FFFFFF, 1px -1px 0px #FFFFFF, -1px 1px 0px #FFFFFF, 1px 1px 0px #FFFFFF;
}
.yellowfont{
 color: #FFFF00;
 font-size: 160%;
 font-weight: bold;
 line-height: 1em;
 margin-left: 0px;
 padding-top: 10px;
 text-shadow: -1px -1px 0px #0000FF, 1px -1px 0px #0000FF, -1px 1px 0px #0000FF, 1px 1px 0px #0000FF;
}
.akagrad{
 background: linear-gradient(#C30D23, #40220F);
 color: #FFFFFF;
 font-size: 160%;
 margin-bottom: 0px;
 padding: 0px 10px;
}
.aograd{
 background: linear-gradient(#0071BC, #727171);
 color: #FFFFFF;
 font-size: 160%;
 margin-bottom: 0px;
 padding: 0px 10px;
}
.kucol_2{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
        text-align: center;
}
.kucol_2 > *{
	width: calc( 50% - 6px ) ;
	margin-right: 12px;
	margin-bottom: 12px;
}
.kucol_2.col_3 > *{
	width: calc(calc( 100% / 3 ) - 8px ) ;
	margin-right: auto;
	margin-bottom: 12px;
}
.kucol_2 > *:nth-child(2n){
	margin-right: auto;
}
@media screen and (max-width: 960px) {
	.kucol_2 > *{
		width: 100%;
		margin-right: auto;
	}
}
@media screen and (max-width: 580px) {
	.kucol_2.col_3 > *{
		width: 100%;
		margin-right: auto;
	}
	.kucol_2.col_3 > *:nth-child(3n){
		margin-right: auto;
	}
}

.kucol_2 ul{
 border:1px solid #666;
}
.kucol_2.noline ul{
 border:none;
}
.kucol_2 li{
    margin-top:5px;
    margin-bottom::5px;
   border-radius:15px;
}
.kucol_2 li:hover{
  opacity: 0.7;
}

.zenlink{
    display: block;
    padding:10px;
    height: 100%;
    width: 100%
}

.ye-red{
 background:#ffd900;
}
.ye-red a{
 color:#c9171e;
}
.red-white{
 background:#c9171e;
}
.red-white a{
 color:#ffffff;
}
.red-ye{
 background:#c9171e;
}
.red-ye a{
 color:#ffd900;
  font-weight:bolder;
 font-size: 110%;
}
.gold-ao{
 background:#e6b422;
}
.gold-ao a{
 color:#1414cc;
}
.ao-white{
 background:#2253e6;
}
.ao-white a{
 color:#ffffff;
}
.redbord{
 border:1px solid #ff0000;
}
.redbord a{
 color:#ff0000;
}
.kon-white-t{
 background:#191970;
 color:#fff;
 font-size:110%;
 font-weight:bolder;
 margin:5px auto;
 padding:10px;
}
.marugoto{
 position:relative;
}

.marugoto span{
    position:absolute;
    bottom:5px;
    left:130px;
    text-align:right;
    color:#fff;
    line-height:200%;
        font-size: 120%;
    font-weight: bold; color: #C30D23; text-shadow: -1px -1px 0px #FFFFFF, 1px -1px 0px #FFFFFF, -1px 1px 0px #FFFFFF, 1px 1px 0px #FFFFFF;
}
.marugoto a{
    display:block;
}
.kucol_3{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.kucol_3 li{
    margin-top:5px;
    margin-bottom::5px;
   border-radius:15px;
}
.kucol_3 > *{
    width: calc(calc( 100% / 3 ) - 8px ) ;
    margin-right: 12px;
    margin-bottom: 12px;
}
.kucol_3 > *:nth-child(3n){
    margin-right: auto;
}
@media screen and (max-width: 960px) {
    .kucol_3 > *{
        width: calc( 50% - 6px ) ;
    }
    .kucol_3 > *:nth-child(3n){
        margin-right: 12px;
    }
    .kucol_3 > *:nth-child(2n){
        margin-right: auto;
    }
}
@media screen and (max-width: 580px) {
    .kucol_3 > *{
        width: 100%;
        margin-right: auto;
    }
    .kucol_3 > *:nth-child(3n){
        margin-right: auto;
    }
}
.rank-area {
 margin:15px auto;
 padding:10px;
 background-color:#eeeeee;
}
.erabih2{
 font-weight:bold;
 font-size:130%;
 padding:.75em 0;
 border-top: 1px solid #2ca9e1;
 border-bottom: 1px solid #2ca9e1;
}
.erabidt{
 color:#ff0000;
 font-weight:bolder;
}
.erabidd{
 margin-bottom : 15px;
}
.gotopage{
 text-align: center;
}
.gotopage a{
 display:block;
 height: 100%;
 margin-bottom: 10px;
 padding: 10px;
 color: #FFFFFF;
 font-weight: bold;
 font-size: 18px;
 background-color: #0071BC;
 border: 1px solid #0071BC;
 border-radius: 5px;
}
.gotopage a:hover {
  transition: all .2s linear;
  color: #0071BC;
  background: #fff;
}
.gotopage.tokiwa a{
 background-color: #1a9900;
 border: 1px solid #1a9900;
}
.gotopage.tokiwa a:hover {
  color: #1a9900;
  background: #fff;
}
.haohuto{
 background-color: #036EB8;
 color: #FFFFFF;
 font-size: 160%;
 margin-bottom: 5px;
 padding: 0px 10px;
}
@media screen and (min-width:600px) { 
  .k-flex{
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;
  }
}
.txtmemo{
 padding:5px;
 margin-bottom: 5px;
 border: 1px solid #eeeeee;
 border-radius: 10px;
 background-color:#eeeeee;
}
.txtmemo a{
 text-decoration: underline;
}
.haiao{
 padding:5px;
 color:#1e50a2;
 background-color: #EBEBEB;
}
.gyousyu{
 padding: 2px;
 margin-bottom: 10px;
 border: 1px solid #036EB8;
}
.gyousyu.bgb{
 background-color: #000000;
 color:#ffffff;
}
.gyousyu.bgb a{
 color:#ffe600;
}
.k-leftimg{
 max-width: 250px;
 display: block;
 margin: 0 auto;
}
.k-righttxt{
 max-width: 500px;
 padding-top: 10px;
  text-align: left;
}
.k-righttxt{
 max-width: 500px;
 padding: 1em;;
  text-align: left;
}
.k-righttxt > a{
 font-weight: bold;
 font-size: 120%;
 color: #0071BC;
}
.kprice{
 color:#ff0000;
 font-size:120%;
 font-weight:bolder;
}
.kprice::before{
 content: '税込価格'; 
 color:#ff0000;
 margin-left: 5px;
}
.k-dt{
 font-weight:bolder;
 font-size:120%;
 margin-top:10px;
}
.k-dt::before{
 content: '●'; 
 font-weight:bolder;
 font-size:120%;
 margin-right: 5px;
}
.fan-hikaku{
    overflow: auto;
    width: 100%;
}
.fan-hikaku table{
    margin: 0;
    border-spacing: 0;

}
.fan-hikaku td{
    white-space: nowrap;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    background: #FFF;
    padding: 5px;
}
.fan-hikaku th{
    white-space: nowrap;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    background: #f2f2f2;
    position: sticky;
    top: 0;
    left: 0;
}
.fan-hikaku tr:first-child th{
    border-top: 1px solid #999;
}
.fan-hikaku th:first-child{
    border-left: 1px solid #999;
}
.fan-hikaku tr:first-child th:first-child{
    z-index: 1;
}
.fanli{
 margin-bottom : 10px;
}

.redblink {  
            animation: blink-animation 1s steps(4, start) infinite;
            color:#ff0000;font-weight:bolder;  
        }  
        
        @keyframes blink-animation {  
            to {  
                visibility: hidden;  
            }  
        }  

        .7body {
            display: flex;
            justify-content: center;
            padding: 20px;
        }
        .image-container {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            max-width: 760px;
        }
        .image-container a {
            width: calc((760px - 60px) / 7); /* 7つ並べた時のサイズ計算 */
            max-width: calc((760px - 60px) / 7);
            flex: none;
        }
        .image-container img {
            width: 100%;
            height: auto;
            display: block;
        }
        @media (max-width: 375px) {
            .image-container a {
                width: calc((100% - 10px) / 2); /* 2つ並べた時のサイズ計算 */
                max-width: calc((100% - 10px) / 2);
            }
        }
.category_format_txt a{
 text-decoration: underline;
}
    /* チェックボックスは非表示 */
    #togglebig {
      display: none;
    }

    /* 画像ラッパーの基本スタイル */
    .bimg-wrapper {
      display: inline-block;
      cursor: pointer;
      transition: transform 0.3s ease;
    }

    /* 縮小状態（50%サイズ） */
    .bimg-wrapper img {
      width: 380px; /* 原寸の半分 */
      height: auto;
      transition: width 0.3s ease;
    }

    /* チェックされたら原寸表示に切り替え */
    #togglebig:checked + .bimg-wrapper img {
      width: 760px;
    }
        .color-container {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            max-width: 760px;
            margin-bottom:25px;
        }
        .color-container a {
            width: calc((100% - 90px) / 9); /* 8つ並べた時のサイズ計算 */
            max-width: calc((100% - 90px) / 9);
            flex: none;
        }
        .color-container img {
            width: 100%;
            height: auto;
            display: block;
        }
        @media (max-width: 400px) {
            .color-container a {
                width: calc((100% - 30px) / 5); /* 4つ並べた時のサイズ計算 */
                max-width: calc((100% - 30px) / 5);
            }
        }
.toc-001 {
    margin-bottom: 30px;
    padding: 1em 1em 1em 2em;
    border: 1px solid #999;
    background-color: #f7f7f7;
    color: #333333;
}

.toc-001 div {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 5px 0;
}

.toc-001 ol {
    list-style-type: decimal;
    margin: 0;
    padding: 0 1.2em;
    overflow: hidden;
}

.toc-001 ol ol {
    margin-top: 5px;
}

.toc-001 li {
    padding: 5px 0;
}

.toc-001 a {
    color: #166c9d;
}
.ttl01.food {
 background:#D9644A;
}
.ttl01.food.hakui {
 background:#b1a08a;
}
.ttl01.food::before,
.ttl01.food::after {
  background-color: #ffffff;
  content: "";
  display: block;
  width: 2px;
  height: 18px;
  top: 16px;
  position: absolute;
}

.ttl01.food::before {
  left:18px;
}

.ttl01.food::after {
  left:22px;
}
/* メイン画像とカラバリ画像を重ねるためのラッパー */
.img-wrap {
    position: relative;
    display: inline-block;
}
.color-thumb {
    position: absolute;
    left: 10px;  /* 左下に配置（調整可） */
    bottom: 10px;
    width: 100px;  /* カラバリ画像のサイズ（お好みで） */
    border-radius: 8px;
    background: #fff;
    padding: 2px;
}

