﻿@charset "utf-8";
/*---------------------------------------------------------------
PC・SP 切り替え
---------------------------------------------------------------*/
@media screen and (min-width:766px){
	.sp{
		display: none;
	}
}
@media screen and (max-width:767px){
	.pc{
		display: none;
	}
}

/*---------------------------------------------------------------
Layout
---------------------------------------------------------------*/
#top{
	margin-top:5rem;
	margin-bottom:5rem;
}
#top .mainimg{
	width:35.4%;
	font-size:0px;
	text-align:center;
}
#top .mainimg img{
	width: auto;
    max-height: 326px;
}
#top .right{
	width:62.5%;
}
#top .right h1 {
	margin-top:0.3em;
}
#top .right .lead{
	font-size:2rem;
	line-height:1.8;
	margin-bottom:1.5em;
}
#top .right dt{
	color:#EB0100;
	margin-top:1.2em;
	margin-bottom:0.5em;
}
#top .right dd{
	margin-bottom:2em;
}
#top .right dd:last-child{
	margin-bottom:0em;
}
#package{
	margin-bottom:4rem;
}
#package ul{
	justify-content:flex-start;
}
#package li{
	width:14.86%;
	text-align:center;
	margin-right:1%;
}
#package li p{
	font-size:0px;
	margin-bottom:0.5rem;
}
#package li p img{
	width: auto;
    max-height: 141px;
}
#local table{
	border:1px solid #ccc9c9;
	width:100%;
	margin-bottom:1em;
}
#local{
	margin-bottom:3rem;
}
#local table th{
	color:#2f2f2f;
	font-weight:bold;
	padding:1em;
	background-color:#f1eee9;
	border-right:1px solid #ccc9c9;
	vertical-align:middle;
}
#local table tr{
	border-bottom:1px solid #ccc9c9;
}
#local table td{
	padding:1em;
	border-right:1px solid #ccc9c9;
	vertical-align:middle;
}
#local table td:nth-of-type(2),
#local table td:nth-of-type(3){
	width:16%;
	text-align:center;
}
#local .caption li{
	font-size:1.4rem;
	padding-left:1em;
	text-indent:-1em;
}
#local .caption_1{
	font-size:1.6rem;
	margin-bottom: 1em;
}
#local .caption_2{
	font-size:1.6rem;
}
#local .caption_3{
	font-size:1.6rem;
	/*margin-top: 1em;*/
}
#top .right .lead a,
#local .caption_1 a,
#local .caption_2 a{
	color: #1071BC;
}
	#top .right .lead a:hover,
	#local .caption_1 a:hover,
	#local .caption_2 a:hover{
		text-decoration: underline;
	}

/*アレルゲン*/
#allergen{
	margin-bottom:4rem;
}
	#allergen .head_description{
		padding-top: 4rem;
		border-top: 1px solid #ccc9c9;
	}
	/* #allergen .head_description .txt_0{
		font-weight: bold;
	} */
	#allergen .head_description .txt_2{
		color: #EB0100;
		font-weight: bold;
	}
	#allergen .allergen_table{
		width: 100%;
		border:1px solid #ccc9c9;
		border-left:none;
		border-right:none;
		margin-top: 2.5rem;
	}
		#allergen .allergen_table th,
		#allergen .allergen_table td{
			padding: 1em;
		}
		#allergen .allergen_table th{
			width: 10em;
			text-align: center;
			background-color: #efefef;
			border-bottom:1px solid #ccc9c9;
			border-right:none;
		}
		#allergen .allergen_table td{
			border-bottom:1px solid #ccc9c9;
		}
		#allergen .txt_allergen{
			font-weight: bold;
		}
		#allergen .txt_min{
			font-weight: normal;
		}

		/* アレルゲン */
		#allergen .allergen_option{
			margin-top:1.6rem
		}
		#allergen .allergen_option .lead_txt a{
			text-decoration: underline;
		}
		#allergen .allergen_option .lead_txt a:hover{
			text-decoration: none;
		}
		/* アレルゲン トグルボタン */
		.btn_open{
			width: 18em;
			padding: 0.5em 2.5em 0.5em 1em;
			text-align: center;
			font-size: 1.4rem;
			background-color: #e0e0e0;
			transition: 0.3s;
			color: #2f2f2f;
			border-radius: 0.2rem;
			text-indent: 0px;
			position: relative;
      display:inline-block;
		}
		.btn_open:hover {
			cursor: pointer;
		}
		.btn_open.close:before {
			content:"";
			display:block;
			width:8px;
			height:8px;
			border-top: #2f2f2f 2px solid;
			border-right: #2f2f2f 2px solid;
			-webkit-transform: rotate(-45deg);
			-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
			position:absolute;
			right: 0.7em;
			top: 31%;
			bottom: 20%;
			margin: auto;
		}
		.btn_open:before{
			content:"";
			display:block;
			width:8px;
			height:8px;
			border-top: #2f2f2f 2px solid;
			border-right: #2f2f2f 2px solid;
			-webkit-transform: rotate(135deg);
			-ms-transform: rotate(135deg);
			transform: rotate(135deg);
			position:absolute;
			right: 0.7em;
			top: -11%;
			bottom: 0;
			margin: auto;
		}		
		/* アレルゲン トグルエリア */
		.box_open{
			margin-top:2rem;
			background-color: #efefef;
			padding: 1.8rem;
		}
			.box_open .ttl_large{
				font-weight: bold;
				font-size: 18px;
				text-align: center;
				margin-bottom: 2rem;
			}
			.box_open .ttl_item{
				font-size: 1em;
				margin-left: 1.0em;
				text-indent: -1.0em;
			}
			.box_open .ttl_item_1{
				margin-bottom: 2.5rem;
			}
				.box_open .ttl_item a{
					text-decoration: underline;
				}	
				.box_open .ttl_item a:hover{
					text-decoration: none;
				}			
			.box_open .option_table{
				margin: 0.5rem 0 0rem;
				border-top: 1px solid!important;
				background-color: #FFF;
			}
				.box_open .option_table td{
					padding: 0.8em 0.7em !important;
					border: 1px solid #000 !important;
					border-top: none !important;
				}
				.box_open .option_table .td1{
					width: 7rem!important;
					text-align: center;
					background-color: #dbd8d8!important;
          padding: 0.8em 0.7em !important;
    border: 1px solid #000 !important;
    border-top: none !important;
				}
				.box_open .option_table .td2{
					width: 20rem;
					background-color: #dbd8d8;
				}


		#allergen .txt_rangai{
			border-top: 1px solid #ccc9c9;
			margin-top: 1rem;
			padding-top: 0.5rem;;
		}
		#allergen .text_allergen{
			margin-top: 0.5rem;	
		}
			#allergen .text_allergen a{
				text-decoration: underline;
			}
			#allergen .text_allergen a:hover{
				text-decoration: none;
			}
	#asort{
		margin-top: 2.5rem;
	}
		#asort .allergen_table{
			margin-top: 0.4rem;		
		}
			#asort .allergen_table span{
				font-weight: bold;
			}
			#asort .allergen_table th,
			#asort .allergen_table td{
				border-bottom:1px solid #ccc9c9;
			}

		#asort .title_large{
			font-weight: bold;
		}
		#asort #asort_list{
			margin-top: 3rem;
		}
			#asort .asort_item{
				margin-top: 2.5rem;
			}
				#asort .asort_item:first-of-type{
					margin-top: 1rem;
				}
			#asort .asort_title{
				font-weight: bold;
			}

/*　END アレルゲン*/

#products .btn a {
    font-size: 1.5rem;
    padding: 0.6em 2em 0.6em 1em;
    display: inline-block;
    position: relative;
    border: solid 1px #ccc9c9;
    border-radius: 0.3em;
	margin-bottom:2rem;
}

#products .btn a:after {
    content: "";
    vertical-align: middle;
    position: absolute;
    top: 50%;
    margin-top: -0.25em;
    right: 1em;
    width: 0.35em;
    height: 0.35em;
    border-top: 0.15em solid #EB0100;
    border-right: 0.15em solid #EB0100;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
#products .btn a:hover {
color:#EB0100;
}

.btnarea{
	display: flex;
	justify-content: center;
}
.btnarea .btn_red{
	margin: 0 20px;
}
.btnarea .btn_red a{
	padding: 0.5em 0;
	width: 24rem;
}



/*---------------------------------------------------------------
横幅768px～1190pxまでのレイアウト
---------------------------------------------------------------*/
@media screen and (min-width:768px) and (max-width:1150px){
#top .right h1 {
	font-size:3.36vw;
}
#package li{
	font-size:1.35vw;
}
#top .mainimg img{
	max-height: 29vw;
}
#package li p img{
    max-height: 11.9vw;
}
#category li ul li img {
    max-height: 9vw;
}
}


/*---------------------------------------------------------------
印刷時レイアウト
---------------------------------------------------------------*/
@media print{
#top .mainimg img {
    max-height: 200px;
}
#package li p img {
    max-height: 100px;
}

}


/*---------------------------------------------------------------
スマホレイアウト
---------------------------------------------------------------*/
@media screen and (max-width:767px){
	#top{
		margin-top:2rem;
		margin-bottom:2rem;
		display:block;
	}
	#top .mainimg {
			width: 90%;
			padding: 2rem 0;
		margin:0 auto 5vw;
	}
	#top .mainimg img{
		max-width: 100%;
		max-height:100%;
	}
	#top .right {
			width: 100%;
	}
	#package ul {
		width:104%;
	}
	#package li {
			width: 30%;
			margin:0 2.9% 1em 0;
		line-height:1.3;
		font-size:1.5rem;
	}
	#package li p img {
			max-height: 29vw;
	}
	#local table th:nth-of-type(1){
		width:35%;
	}
	#local table th:nth-of-type(2), #local table th:nth-of-type(3) {
		white-space:nowrap;
	}
	#local table td:nth-of-type(2), #local table td:nth-of-type(3) {
		padding:1em 0.5em;
	}

	/* HP重要情報 テーブル */
	#allergen .allergen_table{
		width: 100%;
	}
	#allergen .allergen_table th,
	#allergen .allergen_table td{
		display: block;
		text-align: left;
		width: 100%!important;
	}
	.box_open .option_table.option_table1{
		margin-bottom: 1rem;
	}
  .btn_open{
    display:block;
  }

	#products .btn a {
		font-size: 4.2vw;
	}
	/* リンクボタン */
	.btnarea{
		display: block;
		}
		.btnarea .btn_red{
			margin: 0;
			margin-bottom: 1.5rem;
		}
		.btnarea .btn_red a{
			width: 70%;
		}
}

