/* --------------------

日糧クリスマスケーキ2026　ディレクトリ名：xmas-cake2026

-------------------- */

/*クリスマスケーキ*/
.entry_xmas-cake2026 #contents_header .entry_title h1{
	background: url(img/entry_title_icon_x2_xmas-cake.png) no-repeat center top;
	background-size: 160px 75px;
	letter-spacing: 0em;
}

div#contents_main h2.h2_title_xmas_cake2026{
	display: block;
	margin: 20px 0px 20px 0px;
	padding: 8px 0px 18px 46px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 22px;
}

.fancybox-margin {
	margin-right: 0px;
	height: auto;
}

/*========== パララックス設定 ==========*/

/*フェードイン及びちょっと上に移動*/
.fadeInUp {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInUp;
 animation-name: fadeInUp;
 visibility: visible !important;
 opacity: 0;
}

@keyframes fadeInUp {
	0% { opacity: 0;
		-webkit-transform: translateY(20px);
		-ms-transform: translateY(20px);
		transform: translateY(20px);
		}
	100% { opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
		}
}

/*--------------------*/




/*フェードイン（ぼかし無し）*/
.fadeIn {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeIn;
 animation-name: fadeIn;
 visibility: visible !important;
 opacity: 0;
}

@keyframes fadeIn {
	0% { opacity: 0;

		}
	100% { opacity: 1;

		}
}


/*--------------------*/

/*フェードイン（ぼかしあり）*/
.fadeInBlur {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInBlur;
 animation-name: fadeInBlur;
 visibility: visible !important;
 opacity: 0;
}


@keyframes fadeInBlur {
	0% { opacity: 0;
		filter: blur(30px);
		-webkit-filter: blur(30px);
		}
	100% { opacity: 1;
		filter: blur(0px);
		-webkit-filter: blur(0px);
		}
}

/*フェードイン（ぼかしあり）3秒かけて遷移*/
.fadeInBlur_For2sec {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:2s;
 -ms-animation-duration:2s;
 animation-duration:2s;
 -webkit-animation-name: fadeInBlur_For2sec;
 animation-name: fadeInBlur_For2sec;
 visibility: visible !important;
 opacity: 0;
}


@keyframes fadeInBlur_For2sec {
	0% { opacity: 0;
		filter: blur(30px);
		-webkit-filter: blur(30px);
		}
	100% { opacity: 1;
		filter: blur(0px);
		-webkit-filter: blur(0px);
		}
}


/*ぼよん*/
.fadeInBoyon {
	-webkit-animation-fill-mode:both;
	 -ms-animation-fill-mode:both;
	 animation-fill-mode:both;
	 -webkit-animation-duration:0.8s;
	 -ms-animation-duration:0.8s;
	 animation-duration:0.8s;
	 -webkit-animation-name: fadeInBoyon;
	 animation-name: fadeInBoyon;
	 visibility: visible !important;
	 opacity: 0;
}


@keyframes fadeInBoyon {
	  from { transform: scale(1); opacity: 0;}
	  25% { transform: scale(1.05); }
	  50% { transform: scale(0.97); opacity: 1 !important; }
	  65% { transform: scale(1.01); }
	  to { transform: scale(1); opacity: 1 !important;}
}


/*ディレイ（待機時間）※他のアニメーションとの併用*/
.delay_02 {animation-delay: 0.2s;}
.delay_04 {animation-delay: 0.4s;}
.delay_05 {animation-delay: 0.5s;}
.delay_06 {animation-delay: 0.6s;}
.delay_1 {animation-delay: 1.0s;}
.delay_15 {animation-delay: 1.5s;}
.delay_2 {animation-delay: 2.0s;}
.delay_25 {animation-delay: 2.5s;}
.delay_3 {animation-delay: 3.0s;}
.delay_35 {animation-delay: 3.5s;}
.delay_4 {animation-delay: 4.0s;}
.delay_45 {animation-delay: 4.5s;}
.delay_5 {animation-delay: 5.0s;}

.delay_10 {animation-delay: 10.0s;}






/**/
.category_xmas-cake2026 .page_category_title,
.category_cake_test .page_category_title{
	background: url(img/category_title_img_xmas-cake.png) no-repeat center center;
	background-size:cover;
}


.cake_main_img_box{
	display: block;
	position:relative;
	overflow: hidden;
	margin-bottom: 20px;
	border-radius: 20px;
}

.cake_main_img_box img{
	width: 100% !important;/*スマホ用*/
	height: auto;
}

.cake_list_box{
	display: block;
	position:relative;
	overflow: hidden;
	padding-top: 40px;
	padding-bottom: 10px;
	margin-bottom: 20px;
}

/*定番*/
.cake_list_box.list1{
	background: url(img/xmas-cake2026/decoration_top.svg),url(img/xmas-cake2026/bg_red.jpg);
	background-position: center top,center top;
	background-repeat: no-repeat,repeat-y;
	background-size: 1080px auto,1080px auto;
	padding-top: 80px;
	border-radius: 20px;
}

/*バラエティ＆バター*/
.cake_list_box.list2{
	background: url(img/xmas-cake2026/decoration_top.svg),repeating-linear-gradient(0deg, #fcdb98, #fffef8 25%, #fff2b4 50%, #fffef8 75%, #fcdb98);
	background-position: center top,center top;
	background-repeat: no-repeat,no-repeat;
	background-size: 1080px auto,1080px auto;
	padding-top: 80px;
	border-radius: 20px;
	margin-bottom: 20px;
}

.cake_list_box ul{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	list-style: none !important;
	font-size: 0;
	padding: 0px 45px 0px 45px;
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}


/*ケーキ欄1つ分*/
div#contents_main .cake_list_box ul li{
	display:inline-block;
	vertical-align:top;
	position: relative;
	width: 310px;
	margin-right: 10px;
	margin-left: 10px;
	margin-bottom: 20px;
	padding-left: 0px !important;
	padding: 0px 0px 0px 0px !important;
	text-indent: 0em !important;
	letter-spacing: normal; /* 文字間を通常に戻す */
	z-index: 0;
}

div#contents_main .cake_list_box ul li:nth-Child(3n){
	margin-right: 0px;
}

.cake_list_box.list2 ul.last_ul li{
	background: none;
}


/*画像のリンク　a*/
.cake_list_box ul li a{
	display: block;
	position: relative;
	overflow: hidden;
	text-decoration: none;
	height: auto;
}

.cake_list_box ul li a:hover{
	
}

.cake_list_box ul li a:hover img{
	opacity: 1;
	transform: scale(1.02);
}

/*画像欄　div*/
.cake_list_img_box{
	display: block;
	position: relative;
	overflow: hidden;
	width: 310px;
	margin-bottom: 10px;
	padding: 0px 10px 0px 10px;
	/*background-color: #efefef;*/
}

.cake_list_img_box img{
	display: block;
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	width: 100%;
	height:auto;
}




/*画像から下のテキスト欄　div*/
.cake_list_text_box{
	display: block;
	position: relative;
	width: 295px;
	margin: 0px 10px 0px 20px;
}


/*商品名　p*/
div#contents_main p.cake_list_name{
	display: block;
	position: relative;
	padding: 4px 0px 0px 0px;
	font-size: 1.5rem;
	font-weight: 500;
	min-height: 25px;
	margin-bottom: 15px;
	line-height: 140% !important;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

/*サイズのテキスト　p*/
.cake_size{
	display: inline-block;
	line-height: 100%;
	margin-bottom: 5px;
	margin-right: 5px;
	padding: 4px 0px 4px 0px;
	font-size: 14px;
}

.cake_size:before{
	content:"●";
	color: #333333;
}

.cake_size strong{
}

/*オプション（いちご別添）のテキスト　p*/
.cake_option {
	display: inline-block;
	position: relative;
	height: 20px;/*リボンの高さ*/
	line-height: 20px;/*リボンの高さ*/
	vertical-align: middle;
	text-align: center;
	display: inline-block;
	margin-left: 20px;
	margin-bottom: 5px;
	margin-right: 5px;
	
	font-size: 12px;
	color: #D21A20;
	padding: 0px 12px 0px 10px;
	font-size: 12px;
	background: #ffffff;/*塗りつぶし色*/
	color: #FFF;/*文字色*/
	box-sizing: border-box;
	border-radius: 3px;
	margin-top: -4px;
}

.cake_option:before{
	content:"";
	display: inline-block;
	position: absolute;
	width: 28px;
	height: 28px;
	top:-4px;
	left:-18px;
	background: url("img/xmas-cake2026/icon_strawberry_white.png") no-repeat center center;
	background-size: 22px 22px;
	background-color: #D21A20;/*塗りつぶし色*/
	border-radius: 14px;
}

.list1 .cake_option:before{
	content:"";
	display: inline-block;
	position: absolute;
	width: 28px;
	height: 28px;
	top:-4px;
	left:-18px;
	background: url("img/xmas-cake2026/icon_strawberry_red.png") no-repeat center center;
	background-size: 22px 22px;
	background-color: #ffffff;/*塗りつぶし色*/
	border-radius: 14px;
}

.list1 .cake_option:before{
	background-color: #ffffff;/*塗りつぶし色*/
}

/*
.cake_option:before, .cake_option:after{
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	z-index: 1;
}

.cake_option:before{
	top: 0;
	left: 0;
	border-width: 10px 0px 10px 6px;
	border-color: transparent transparent transparent #ffffff;
	border-style: solid;
}
*/

.cake_option:after{
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	z-index: 1;
	top: 0;
	right: 0;
	border-width: 10px 6px 10px 0px;
	border-color: transparent #ffffff transparent transparent;
	border-style: solid;
}

.list1 .cake_option:after{
	border-color: transparent #D21A20 transparent transparent;
}


/*金額*/
.cake_list_price{
	margin-top: 5px;
	margin-bottom: 5px;
	font-size: 22px;
	color: #333333;
	line-height: 120% !important;
}

/*金額の項目　p内のspan*/
.cake_list_price span{
	font-size: 14px;
	margin-right: 3px;
}

/*税込金額部分　span*/
.cake_list_price span.text_tax{
	margin-left: 3px;
}



div#contents_main p.cake_list_text{
	display: block;
	position: relative;
	overflow: hidden;
	margin: 0px 0px 20px 0px;
	padding: 0px 0px 0px 0px;
	font-size: 14px;
	line-height: 150%;
	color: #333333;
	/*
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	*/
}


/*定番ケーキの文字色調整*/
div#contents_main .cake_list_box ul p.cake_list_name,
.cake_list_box.list1 ul .cake_size,
.cake_list_box.list1 ul .cake_size:before,
.cake_list_box.list1 ul .cake_list_price,
div#contents_main .cake_list_box.list1 ul p.cake_list_text{
	color: #333333;
}


.cake_list_box ul .cake_option {
	background-color: #D21A20;
	color: #ffffff;
}


/*バラエティの文字色調整*/
div#contents_main .cake_list_box.list1 ul p.cake_list_name,
.cake_list_box.list1 ul .cake_size,
.cake_list_box.list1 ul .cake_size:before,
.cake_list_box.list1 ul .cake_list_price,
div#contents_main .cake_list_box.list1 ul p.cake_list_text{
	color: #ffffff;
}

.cake_list_box.list1 ul .cake_option {
	background-color: #ffffff;
	color: #D21A20;
}



/*===================*/
/*三笠高校*/

.cake_mikasa {
	position: relative;
	
	background-color: #145239; /* 深い緑色の背景 */
	padding: 32px 32px 32px 32px;            /* コンテンツ用の内側余白 */
	color: #ffffff;
	min-height: 200px;
	border-radius: 20px;
	margin-bottom: 20px;
}

/* 疑似要素で飾り罫線を描画 */
.cake_mikasa::before {
	content: "";
	position: absolute;
	inset: 30px; /* 枠線を外枠から少し内側に配置（ピッタリ端にする場合は 0） */
	pointer-events: none; /* マウス操作を透過 */

	/* 変数定義（調整しやすいように設定） */
	--border-color: #c58f48; /* 枠線の色（ゴールド・オークル系） */
	--border-width: 2px;     /* 線の太さ */
	--radius: 34px;          /* 四隅の凹みの半径 */

	/* 8つのグラデーション（四隅の円弧 4つ + 直線 4つ）を合成 */
	background-image:
		/* 四隅の凹み（円弧） */
		radial-gradient(circle at 0 0, transparent calc(var(--radius) - var(--border-width) - 0.5px), var(--border-color) calc(var(--radius) - var(--border-width)), var(--border-color) var(--radius), transparent calc(var(--radius) + 0.5px)),
		radial-gradient(circle at 100% 0, transparent calc(var(--radius) - var(--border-width) - 0.5px), var(--border-color) calc(var(--radius) - var(--border-width)), var(--border-color) var(--radius), transparent calc(var(--radius) + 0.5px)),
		radial-gradient(circle at 0 100%, transparent calc(var(--radius) - var(--border-width) - 0.5px), var(--border-color) calc(var(--radius) - var(--border-width)), var(--border-color) var(--radius), transparent calc(var(--radius) + 0.5px)),
		radial-gradient(circle at 100% 100%, transparent calc(var(--radius) - var(--border-width) - 0.5px), var(--border-color) calc(var(--radius) - var(--border-width)), var(--border-color) var(--radius), transparent calc(var(--radius) + 0.5px)),
		/* 上下左右の直線 */
		linear-gradient(var(--border-color), var(--border-color)),
		linear-gradient(var(--border-color), var(--border-color)),
		linear-gradient(var(--border-color), var(--border-color)),
		linear-gradient(var(--border-color), var(--border-color));

	background-position:
		top left,
		top right,
		bottom left,
		bottom right,
		center top,
		center bottom,
		left center,
		right center;

	background-size:
		var(--radius) var(--radius),
		var(--radius) var(--radius),
		var(--radius) var(--radius),
		var(--radius) var(--radius),
		calc(100% - var(--radius) * 2) var(--border-width),
		calc(100% - var(--radius) * 2) var(--border-width),
		var(--border-width) calc(100% - var(--radius) * 2),
		var(--border-width) calc(100% - var(--radius) * 2);

	background-repeat: no-repeat;
}

.cake_mikasa{
	/*
	display:block;
	position: relative;
	width: 100%;
	background: url(img/xmas-cake2026/bg_red_mikasa.jpg) center top;
	background-size: 1080px auto;
	background-color: #15563b;
	padding: 40px 40px 40px 40px;
	margin-bottom: 20px;
	border-radius: 20px;
	z-index: 0;
	*/
}

.cake_mikasa_content_box{
	display:block;
	position: relative;
	background: url(img/xmas-cake2026/miksa_bg.png) center 0px;
	background-size: 1020px auto;
	padding: 40px 20px 20px 40px;
	/*
	padding: 20px 40px 20px 40px;
	background-color: #fbe6c8;
	border-radius: 20px;
	*/
}

.cake_mikasa_content_box:before{
	content:"";
	display: inline-block;
	position: absolute;
	top:0px;
	left: calc(50% - 115px);
	width: 230px;
	height: 45px;
	background: url("img/xmas-cake2026/mikasa_subtitle.png") no-repeat left top;
	background-size: contain;
}


.cake_mikasa_title_box1{
	display: block;
	position: relative;
	margin-bottom: 50px;
}

.cake_mikasa_products_1box_2column{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	letter-spacing: -.40em;
	padding: 0px 40px 40px 40px;
	margin-bottom: 20px;
}

.cake_mikasa_products_1box_2column.xmas_cake_14{
	margin-bottom: 0px;
}

.cake_mikasa_products_1box_2column.xmas_cake_15{
	margin-bottom: 40px;
}

.cake_mikasa_products_column_inner{
	display: inline-block;
	position: relative;
	
	letter-spacing: normal;
}

.cake_mikasa_products_column_inner:first-of-type{
	width: 43%;
	padding-right: 40px;
}

.cake_mikasa_products_column_inner:nth-of-type(2){
	width: 57%;
	padding-right: 0px;
	padding-top: 40px;
}

.cake_mikasa_product_img{
	margin-top: 0px;
}

.cake_mikasa_product_img a:hover img{
	opacity: 1;
}

.cake_mikasa_product_name{
	display: inline-block;
	font-size: 1.6rem;
	line-height: 120%;
	padding-bottom: 10px;
	border-bottom: solid 2px #c48e48;
	margin-bottom: 20px;
	/*
	padding-top: 10px;
	padding-bottom: 10px;
	border-top: solid 2px #ffffff;
	
	*/
}

.cake_mikasa .cake_size{
	display: block;
	font-size: 17px;
	color: #ffffff;
	margin-bottom: 4px !important;
}

.cake_mikasa .cake_list_price{
	font-size: 18px;
	color: #ffffff;
	margin-bottom: 20px !important;
}



.cake_mikasa .cake_size:before{
	color: #ffffff;
}

.cake_mikasa_product_text{
	font-size: 15px;
	color: #ffffff;
	line-height: 140%;
}

.cake_mikasa_photo{
	
}

.cake_mikasa_photo img{
	width: 100%;
	height: auto;
}

.cake_mikasa_staff_name{
	color: #ffffff;
	text-align: right;
	margin-top: -40px;
}



.cake_mikasa_school_2column{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	letter-spacing: -.40em;
	margin: 0 auto;
	padding-bottom: 50px;
	width: 920px;
}

.cake_mikasa_school_column_inner{
	letter-spacing: normal;
}

.cake_mikasa_school_column_inner.inner1{
	position: relative;
	letter-spacing: normal;
}

.cake_mikasa_school_column_left1{
	display: flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
	justify-content: center; /* 子要素をflexboxにより中央に配置する */
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
	position: relative;
	background-color: #837f42;
	height: 120px;
}

.mikasa_school_name{
	margin-bottom: 0px;
	font-size: 26px;
	color: #ffffff;
}

.cake_mikasa_school_column_left2{
	padding-top: 4px;
}

.cake_mikasa_school_column_inner.inner2{
	padding-left: 4px;
	width: 554px;
	margin-bottom: 10px;
	overflow: hidden;
}

.cake_mikasa_school_column_inner.inner2 img{
	width: 554px;
}

.cake_mikasa_school_2column p{
	letter-spacing: normal;
}

@media screen and ( max-width: 736px ) {
	.cake_mikasa_school_column_inner.inner1,
	.cake_mikasa_school_column_inner.inner2{
		display: block;
		position: relative;
		letter-spacing: normal;
		margin: 0 auto;
	}
}


/*=========注釈==========*/
/*div*/
.cake_annotate_box{
	margin-bottom: 60px;
}

div#contents_main .cake_annotate_box p{
	margin-bottom: 0px !important;
	padding-top: 1px;
	padding-bottom: 1px;
}

span.cake_annotate_number_box{
	display: inline-block;
	min-width: 24px;
	padding: 6px 2px 4px 2px;
	border-top: solid 2px #666666;
	border-bottom: solid 2px #666666;
	font-size: 12px;
	font-weight: 600;
	text-align: center;
	margin-left: 2px;
	margin-right: 2px;
	line-height: 100% !important;
}


/*=========================スマホ用スタイルここから=========================*/

/*@media screen and ( max-width: 767px ) {*/
@media screen and ( max-width: 719px ) {

.entry_xmas-cake2026 #contents_header .entry_title h1{
	background: url(img/entry_title_icon_x2_products.png) no-repeat center top;
	background-size: 140px 66px;
}

div#contents_main h2.h2_title_xmas_cake2026{
	display: block;
	margin: 20px 0px 20px 0px;
	padding: 8px 0px 14px 42px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 22px;
}

/* --------------------

日糧クリスマスケーキ2026　ディレクトリ名：xmas-cake2026

-------------------- */

.entry_xmas-cake2026 .contents_inner,
.entry_xmas-cake2026 .contents_anchor_box_inner,
.entry_xmas-cake2026 .contents_products_popular_box_inner{
	overflow: visible !important;
}



/**/
.category_xmas-cake2026 .page_category_title,
.category_cake_test .page_category_title{
	background: url(img/category_title_img_xmas-cake.png) no-repeat center center;
	background-size:cover;
}


.cake_main_img_box{
	margin-bottom: 10px;
	border-radius: 14px;
}

.cake_main_img_box img{
	width: 100% !important;/*スマホ用*/
	height: auto;
}

.cake_list_box{
	display: block;
	position:relative;
	overflow: hidden;
	padding-top: 20px;
	padding: 20px 0px 0px 0px;
	margin-bottom: 10px;
	border-radius: 14px;
}

/*定番*/
.cake_list_box.list1{
	background: url(img/xmas-cake2026/decoration_top.svg),url(img/xmas-cake2026/bg_red.jpg);
	background-position: center top,center top;
	background-repeat: no-repeat,repeat;
	background-size: 540px auto,540px auto;
	padding-top: 40px;
	border-radius: 14px;
	margin-bottom: 10px;
}

/*バラエティ＆バター*/
.cake_list_box.list2{
	background: url(img/xmas-cake2026/decoration_top.svg),repeating-linear-gradient(0deg, #fcdb98, #fffef8 25%, #fff2b4 50%, #fffef8 75%, #fcdb98);
	background-position: center top,center top;
	background-repeat: no-repeat,no-repeat;
	background-size: 540px auto,540px auto;
	padding-top: 40px;
	border-radius: 14px;
	margin-bottom: 10px;
}

div#contents_main .cake_list_box ul{
	position: relative;
	list-style: none !important;
	font-size: 0;
	width: 100% !important;
	padding: 0px 10px 0px 10px;
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}

/*定番*/
.cake_list_box.list1 ul{
	background: none;
}

/*バラエティ*/
.cake_list_box.list2 ul{
	background: none;
}


/*ケーキ欄1つ分*/
div#contents_main .cake_list_box ul li,
div#contents_main .cake_list_box ul:not(.nav-menu-box ul):not(#contents_side ul):not(.contents_anchor_box ul):not(.mainvisual_box ul):not(.top_ir_link_contents_box ul):not(ul.tub_category):not(ul.top_pickup_list1_box):not(ul.top_pickup_list2_box):not(ul.contents_products_popular_list_box):not(ul.recipe_tsukurikata_list) li{
	display:inline-block;
	vertical-align:top;
	position: relative;
	width: 100% !important;
	margin-bottom: 30px;
	margin-right: 0px;
	margin-left: 0px;
	padding-left: 0em !important;
	text-indent: 0em !important;
	padding: 0px 0px 0px 0px !important;
	text-indent: 0em !important;
	letter-spacing: normal; /* 文字間を通常に戻す */
	z-index: 0;
	border-bottom: solid 1px rgba(224, 223, 202, 0.3);
	padding-left: 1em !important;
	padding-bottom: 20px !important;
}

div#contents_main .cake_list_box ul li:last-of-type,
div#contents_main .cake_list_box ul:not(.nav-menu-box ul):not(#contents_side ul):not(.contents_anchor_box ul):not(.mainvisual_box ul):not(.top_ir_link_contents_box ul):not(ul.tub_category):not(ul.top_pickup_list1_box):not(ul.top_pickup_list2_box):not(ul.contents_products_popular_list_box):not(ul.recipe_tsukurikata_list) li:last-of-type{
	border-bottom: 0px;
	margin-bottom: 0px;
	padding-bottom: 0px;
}

div#contents_main .cake_list_box ul li:nth-Child(3n){
	margin-right: 0px;
}

/*バラエティの1商品ごとの下に罫線*/
div#contents_main .cake_list_box.list2 ul li,
div#contents_main .cake_list_box.list2 ul:not(.nav-menu-box ul):not(#contents_side ul):not(.contents_anchor_box ul):not(.mainvisual_box ul):not(.top_ir_link_contents_box ul):not(ul.tub_category):not(ul.top_pickup_list1_box):not(ul.top_pickup_list2_box):not(ul.contents_products_popular_list_box):not(ul.recipe_tsukurikata_list) li{
	border-bottom: solid 1px rgba(209, 184, 115, 1);
}

div#contents_main .cake_list_box.list2 ul li:last-of-type,
div#contents_main .cake_list_box.list2 ul:not(.nav-menu-box ul):not(#contents_side ul):not(.contents_anchor_box ul):not(.mainvisual_box ul):not(.top_ir_link_contents_box ul):not(ul.tub_category):not(ul.top_pickup_list1_box):not(ul.top_pickup_list2_box):not(ul.contents_products_popular_list_box):not(ul.recipe_tsukurikata_list) li:last-of-type{
	border-bottom: 0px;
	margin-bottom: 0px;
	padding-bottom: 0px;
}



/*バターケーキのタイトル*/
.title_box{
	
}

.title_box img{
	max-width: 320px !important;
}


/*画像のリンク　a*/
.cake_list_img_box a{
	display: block;
	position: relative;
	overflow: hidden;
	text-decoration: none;
	height: auto;
	pointer-events: none !important;
}

.cake_list_box ul li a:hover{
}

/*画像欄　div*/
.cake_list_img_box{
	display: block;
	position: relative;
	overflow: hidden;
	width: 100% !important;
	max-width: 280px;
	margin: 0 auto;
	margin-bottom: 10px;
	padding: 0px 15px 0px 15px;
	/*background-color: #efefef;*/
}

.cake_list_img_box img{
	display: block;
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	width: 100%;
	height:auto;
	max-width: 480px;
}


/*画像から下のテキスト欄　div*/
.cake_list_text_box{
	display: block;
	position: relative;
	overflow: hidden;
	width: 100% !important;
	margin: 0px 0px 0px 0px;
	padding: 0px 15px 0px 15px;
}


/*商品名　p*/
div#contents_main p.cake_list_name{
	display: block;
	position: relative;
	padding: 4px 0px 0px 0px;
	font-size: 18px;
	font-weight: 500;
	min-height: 25px;
	margin-bottom: 15px;
	line-height: 140% !important;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

/*サイズのテキスト　p*/
.cake_size{
	display: inline-block;
	line-height: 100%;
	margin-bottom: 5px;
	margin-right: 5px;
	margin-left: 0px;
	padding: 4px 0px 4px 0px;
	font-size: 14px;
}

.cake_size:before{
	content:"●";
	color: #333333;
}

.cake_size strong{
}


/*オプション（いちご別添）のテキスト　p*/
.cake_option{
	display: inline-block;
	line-height: 100%;
	margin-bottom: 5px;
	margin-right: 5px;
	padding: 4px 12px 0px 10px;
	font-size: 12px;
	color: #D21A20;
	background-color: #ffffff;
}

.cake_option:before{
	content:"";
	display: inline-block;
	position: absolute;
	width: 28px;
	height: 28px;
	top:-4px;
	left:-18px;
	background: url("img/xmas-cake2026/icon_strawberry_white.png") no-repeat center center;
	background-size: 22px 22px;
	background-color: #D21A20;/*塗りつぶし色*/
	border-radius: 14px;
}

.list1 .cake_option:before{
	content:"";
	display: inline-block;
	position: absolute;
	width: 28px;
	height: 28px;
	top:-4px;
	left:-18px;
	background: url("img/xmas-cake2026/icon_strawberry_red.png") no-repeat center center;
	background-size: 22px 22px;
	background-color: #ffffff;/*塗りつぶし色*/
	border-radius: 14px;
}

.list1 .cake_option:before{
	background-color: #ffffff;/*塗りつぶし色*/
}

.cake_option:after{
	position: absolute;
	content: '';
	width: 0px;
	height: 0px;
	z-index: 1;
	top: 0;
	right: 0;
	border-width: 10px 6px 10px 0px;
	border-color: transparent #fffbe9 transparent transparent;
	border-style: solid;
}

.list1 .cake_option:after{
	border-color: transparent #D21A20 transparent transparent;
}


/*金額*/
.cake_list_price{
	margin-top: 5px;
	margin-bottom: 5px;
	font-size: 16px;
	color: #333333;
	line-height: 120% !important;
}

/*金額の項目　p内のspan*/
.cake_list_price span{
	font-size: 14px;
	margin-right: 3px;
}

/*税込金額部分　span*/
.cake_list_price span.text_tax{
	margin-left: 3px;
}



div#contents_main p.cake_list_text{
	display: block;
	position: relative;
	overflow: hidden;
	margin: 0px 0px 16px 0px;
	padding: 0px 0px 0px 0px;
	font-size: 14px;
	line-height: 150%;
	color: #333333;
	/*
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	*/
}


/*定番ケーキの文字色調整*/
div#contents_main .cake_list_box ul p.cake_list_name,
.cake_list_box.list1 ul .cake_size,
.cake_list_box.list1 ul .cake_size:before,
.cake_list_box.list1 ul .cake_list_price,
div#contents_main .cake_list_box.list1 ul p.cake_list_text{
	color: #333333;
}


.cake_list_box ul .cake_option {
	background-color: #D21A20;
	color: #ffffff;
}


/*バラエティの文字色調整*/
div#contents_main .cake_list_box.list1 ul p.cake_list_name,
.cake_list_box.list1 ul .cake_size,
.cake_list_box.list1 ul .cake_size:before,
.cake_list_box.list1 ul .cake_list_price,
div#contents_main .cake_list_box.list1 ul p.cake_list_text{
	color: #ffffff;
}

.cake_list_box.list1 ul .cake_option {
	background-color: #ffffff;
	color: #D21A20;
}




/*===================*/
/*三笠高校*/

.cake_mikasa{
	display:block;
	position: relative;
	width: 100%;
	background-color: #145239; /* 深い緑色の背景 */
	padding: 15px 15px 15px 15px;
	margin-bottom: 20px;
	border-radius: 14px;
	z-index: 0;
}

.cake_mikasa::before {
content: "";
position: absolute;
inset: 15px; /* 枠線を外枠から少し内側に配置（ピッタリ端にする場合は 0） */
pointer-events: none; /* マウス操作を透過 */

/* 変数定義（調整しやすいように設定） */
--border-color: #c58f48; /* 枠線の色（ゴールド・オークル系） */
--border-width: 2px;     /* 線の太さ */
--radius: 20px;          /* 四隅の凹みの半径 */
}

.cake_mikasa_content_box{
	display:block;
	position: relative;
	padding: 25px 15px 15px 15px;
	background: url(img/xmas-cake2026/miksa_bg_sp.png) center 0px;
	background-size: 100% auto;
	border-radius: 16px;
}

.cake_mikasa_content_box:before{
	content:"";
	display: inline-block;
	position: absolute;
	top:0px;
	left: calc(50% - 80px);
	width: 160px;
	height: 45px;
	background: url("img/xmas-cake2026/mikasa_subtitle.png") no-repeat left top;
	background-size: contain;
}


.cake_mikasa_title_box1{
	display: block;
	position: relative;
	margin-bottom: 20px;
}

.cake_mikasa_products_1box_2column{
	display:-webkit-box; display:-moz-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
	letter-spacing: -.40em;
	padding: 0px 0px 10px 0px;
	margin-bottom: 10px;
}

.cake_mikasa_products_1box_2column.xmas_cake_14{
	margin-bottom: 0px;
	border-bottom: solid 1px #c48e48;
}

.cake_mikasa_products_1box_2column.xmas_cake_15{
	margin-bottom: 20px;
	border-bottom: solid 1px #c48e48;
}

.cake_mikasa_products_column_inner{
	display: block;
	position: relative;
	
	letter-spacing: normal;
}

.cake_mikasa_products_column_inner:first-of-type{
	width: 100%;
	padding-right: 0px;
	padding-top: 10px;
}

.cake_mikasa_products_column_inner:nth-of-type(2){
	width: 100%;
	padding-right: 0px;
	padding-top: 10px;
	text-align: center;
}

.cake_mikasa_product_img{
	display: block;
	position: relative;
	
	text-align: center;
}

.cake_mikasa_product_img img{
	max-width: 250px;
}

.cake_mikasa_product_img a:hover img{
	opacity: 1;
}

.cake_mikasa_product_name{
	font-size: 17px;
	padding-top: 10px;
	padding-bottom: 10px;
	border-top: solid 2px #ffffff;
	border-bottom: solid 2px #ffffff;
	margin-bottom: 20px;
}

.cake_mikasa .cake_size{
	font-size: 15px;
	color: #ffffff;
	margin-bottom: 4px;
}

.cake_mikasa .cake_size:before{
	color: #ffffff;
}

.cake_mikasa .cake_list_price{
	font-size: 16px;
	color: #ffffff;
	margin-bottom: 20px !important;
}



.cake_mikasa_product_text{
	font-size: 15px;
	color: #ffffff;
	line-height: 140%;
}

.cake_mikasa_photo{
	
}

.cake_mikasa_photo img{
	width: 100%;
	height: auto;
}

.cake_mikasa_staff_name{
	color: #ffffff;
	text-align: left;
	margin-top: 0px;
	font-size: 13px;
}



.cake_mikasa_school_2column{
	display:block;
	letter-spacing: normal;
	margin: 0 auto;
	margin-bottom: 10px;
	padding-bottom: 0px;
	width: 100%;
}

.cake_mikasa_school_column_inner{
	letter-spacing: normal;
}

.cake_mikasa_school_column_inner.inner1{
	position: relative;
	letter-spacing: normal;
}

.cake_mikasa_school_column_left1{
	display: flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
	justify-content: center; /* 子要素をflexboxにより中央に配置する */
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
	position: relative;
	background-color: #837f42;
	height: auto;
	padding: 20px 10px 20px 10px;
}

.mikasa_school_name{
	margin-bottom: 0px;
	font-size: 18px;
	color: #ffffff;
}

.cake_mikasa_school_column_left2{
	padding-top: 4px;
	margin-bottom: 4px;
}

.cake_mikasa_school_column_inner.inner2{
	padding-left: 0px;
	width: 100%;
	margin-bottom: 10px;
	overflow: hidden;
}

.cake_mikasa_school_column_inner.inner2 img{
	width: 100%;
}

.cake_mikasa_school_2column p{
	letter-spacing: normal;
}

/*=========注釈==========*/
/*div*/
.cake_annotate_box{
	margin-bottom: 60px;
	padding-left: 10px;
	padding-right: 10px;
}

div#contents_main .cake_annotate_box p{
	padding-top: 1px;
	padding-bottom: 1px;
	text-indent: -1em;
	padding-left: 1em;
	margin-bottom: 5px !important;
}

span.cake_annotate_number_box{
	display: inline-block;
	min-width: 24px;
	padding: 6px 2px 4px 2px;
	border-top: solid 2px #666666;
	border-bottom: solid 2px #666666;
	font-size: 12px;
	font-weight: 600;
	text-align: center;
	margin-left: 2px;
	margin-right: 2px;
	line-height: 100% !important;
}







}/*スマホ用スタイル@media screen and ( max-width: 767px )ここまで*/




