@charset "utf-8";
/*------------------------------------------------------------------------------ カテゴリ共通 --*/
#ttl{
	position:relative;
	width:100%;
	min-width:1080px;
	height:90px;
	margin:0;
	background:#f1eee0;
}
#ttl h2 {
	position:relative;
	width:1080px;
	margin:0 auto;
	text-align:left;
	font-size:3.0rem;
	line-height:1.6;
	font-weight:400;
	padding:23px 0 0;
}

#pan_nav{
	position:relative;
	width:1080px;
	margin:20px auto 50px auto;
	padding:0 0 0 35px;
	background:url(../img/global/icon_pan.png) 0 0 no-repeat;
	background-size:20px auto;
	min-height:20px;
	overflow-x:auto !important;
	overflow-y:hidden !important;
}
#pan_nav ul{
	position:relative;
	display:table;
	background:#fff;
}
#pan_nav ul li{
	position:relative;
	display:table-cell;
	font-size:1.4rem;
	line-height:1.1;
	font-weight:400;
	white-space:nowrap;
	padding:4px 30px 0 0;
	letter-spacing:0.05em;
}
#pan_nav ul li::before {
	content:  '';
	width: 8px;
	height: 8px;
	display:  block;
	border-top:#000 solid 1px;
	border-right:#000 solid 1px;
	transform: rotate(45deg);
	position:  absolute;
	top: 7px;
	right: 12px;
}
#pan_nav ul li:last-of-type::before {
	display:none;
}
#pan_nav ul li a{
	transition: .4s ease-out;
}
#pan_nav ul li a:hover {
	opacity:.6;
}
@media screen and (max-width:750px) {
#ttl{
	position:relative;
	width:100%;
	min-width:320px;
	height:12vw;
	margin:0;
	background:#f1eee0;
}
#ttl h2 {
	position:relative;
	width:92vw;
	margin:0 auto;
	text-align:left;
	font-size:3.6rem;
	line-height:1.6;
	font-weight:400;
	padding:0;
	height:12vw;
    display: flex;
    justify-content: left;
    align-items: center;
}

#pan_nav{
	position:relative;
	width:92vw;
	margin:2vw auto 6vw auto;
	padding:0 0 0 6vw;
	background:url(../img/global/icon_pan.png) 0 0 no-repeat;
	background-size:4vw auto;
	min-height:8vw;
	overflow-x:auto !important;
	overflow-y:hidden !important;
}
#pan_nav ul{
	position:relative;
	display:table;
	background:#fff;
}
#pan_nav ul li{
	position:relative;
	display:table-cell;
	font-size:2.1rem;
	line-height:1.1;
	font-weight:400;
	white-space:nowrap;
	padding:4px 30px 0 0;
	letter-spacing:0.05em;
}
#pan_nav ul li::before {
	content:  '';
	width: 8px;
	height: 8px;
	display:  block;
	border-top:#000 solid 1px;
	border-right:#000 solid 1px;
	transform: rotate(45deg);
	position:  absolute;
	top: 6px;
	right: 12px;
}
#pan_nav ul li:last-of-type::before {
	display:none;
}
#pan_nav ul li a{
	transition: .4s ease-out;
}
#pan_nav ul li a:hover {
	opacity:.6;
}
}
/*------------------------------------------------------------------------------ allergy --*/
section{
	position:relative;
	width:1080px;
	margin:0 auto;
	padding:0 0 160px;
	}
section .info{
	position:relative;
	zoom:1;
	overflow:hidden;
	padding:0 0 10px;
}
section .info p{
	position:relative;
	font-size:1.8rem;
	float:left;
	line-height:1.1;
	font-weight:600;
	letter-spacing:0.05em;
}
section .info span{
	position:relative;
	display:block;
	font-size:1.4rem;
	float:right;
	line-height:1.1;
	font-weight:400;
	letter-spacing:0.05em;
	text-align: right;
}
section .display{
	position:relative;
	width:1080px;
	border:#ccc 1px solid;
	border-radius:8px;
	padding:15px 25px;
	margin:60px 0 0;
	}
section .display h4{
	position:relative;
	font-size:1.8rem;
	line-height:1.1;
	font-weight:600;
	letter-spacing:0.05em;
	padding:0 0 10px;
	}
section .display p{
	position:relative;
	font-size:1.4rem;
	line-height:2;
	font-weight:400;
	letter-spacing:0.05em;
	}
section .note{
	position:relative;
	width:1080px;
	padding:30px 0 0 1.6rem;
	font-size:1.4rem;
	line-height:2;
	font-weight:400;
	letter-spacing:0.05em;
	text-indent:-1.6rem;
	}
section .note .caution{
	color:#ff0000;
}
section .btn{
	position:relative;
	padding:60px 0 0;
	}
section .main_block{
	position:relative;
	width:1080px;
	overflow-y:hidden;
	overflow-x:hidden;
	}
#allergy section .main_block_header{
	position:relative;
	width:1080px;
	overflow:hidden;
	}
#allergy section .main_block_header table,
#allergy section .main_block_body table{
	position:relative;
	width:1080px;
	border-collapse:collapse;
	}
#allergy section .main_block_header table th{
	position:relative;
	width:119px;
	min-height:160px;
	background:#dfd9bf;
	text-align:left;
	vertical-align:bottom;
	font-size:14px;
	line-height:2;
	font-weight:600;
	letter-spacing:0.05em;
	padding:20px 10px 5px;
	}
#allergy section .main_block_header table td{
	position:relative;
	width:31px;
	min-height:160px;
	background:#dfd9bf;
	text-align:left;
	vertical-align:top;
	padding:20px 0 35px 0;
}
#allergy section .main_block_header table td p{
	position:relative;
	display:inline-block;
	font-size:14px;
	line-height:31px;
	font-weight:600;
	letter-spacing:0.05em;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	}
#allergy section .main_block_header table td.bg_c1{background:#e9caa4;}
#allergy section .main_block_header table td.bg_c2{background:#eedd8e;}
#allergy section .main_block_body table.ttl th{
	position:relative;
	width:1080px;
	background:#fff;
	text-align:left;
	vertical-align:bottom;
	font-size:18px;
	line-height:2;
	font-weight:600;
	letter-spacing:0.05em;
	padding:20px 0 5px;
	}
#allergy section .main_block_body table.list th{
	position:relative;
	width:119px;
	background:#f5f3e9;
	text-align:left;
	vertical-align:bottom;
	font-size:14px;
	line-height:1.4;
	font-weight:600;
	letter-spacing:0.05em;
	padding:8px 10px 8px;
	}
#allergy section .main_block_body table.list td{
	position:relative;
	width:31px;
	background:#f5f3e9;
	text-align:center;
	vertical-align:middle;
	font-size:14px;
	line-height:1;
	font-weight:600;
	letter-spacing:0.05em;
	padding:5px 0 5px;
	}
#allergy section .main_block_body table.list tr:nth-of-type(2n) th,
#allergy section .main_block_body table.list tr:nth-of-type(2n) td{
	background:#eeeadd;
}
section td::after,
section th::after {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 100%;
	background: #fff;
	z-index:10;
}
#allergy section td::after,
#allergy section th::after {
	min-height:160px;
}
#end{
	position:relative;
	opacity:0;
	}
#main_block_header_cover{
	position:absolute;
	top:0;
	left:0;
	width:1080px;
	z-index:20;
	}
#main_block_th_sp{
	position:absolute;
	opacity:0;
	}
#main_block_header_sp{
	position:absolute;
	opacity:0;
	}
@media screen and (max-width:750px) {
section{
	position:relative;
	width:92vw;
	margin:0 auto;
	padding:0 0 20vw;
	}
section .info{
	position:relative;
	zoom:1;
	overflow:hidden;
	padding:0 0 2vw;
}
section .info p{
	position:relative;
	font-size:2.6rem;
	float:none;
	line-height:1.6;
	font-weight:600;
	letter-spacing:0.05em;
}
section .info span{
	position:relative;
	display:block;
	font-size:2.6rem;
	float:right;
	line-height:1.6;
	font-weight:400;
	letter-spacing:0.05em;
}
#nutrient section .info span{
	float:none;
}
section .display{
	position:relative;
	width:92vw;
	border:#ccc 1px solid;
	border-radius:8px;
	padding:4vw 4vw 2vw;
	margin:10vw 0 0;
	}
section .display h4{
	position:relative;
	font-size:3.4rem;
	line-height:1.1;
	font-weight:600;
	letter-spacing:0.05em;
	padding:0 0 2vw;
	}
section .display p{
	position:relative;
	font-size:2.6rem;
	line-height:1.9;
	font-weight:400;
	letter-spacing:0.05em;
	}
section .note{
	position:relative;
	width:92vw;
	padding:8vw 0 0 0;
	font-size:2.6rem;
	line-height:2;
	font-weight:400;
	letter-spacing:0.05em;
	text-indent:0;
	}
section .note .caution{
	color:#ff0000;
}
section .btn{
	position:relative;
	padding:8vw 0 0;
	}
section .btn a{
	width:100%;
	}
section .main_block{
	position:relative;
	width:92vw;
	margin:0 auto;
	overflow-y:hidden !important;
	overflow-x:scroll !important;
	padding:0 0 4vw;
	-webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
	}
#allergy section .main_block_header{
	position:relative;
	width:1080px;
	overflow:hidden;
	}
#allergy section .main_block_header table,
#allergy section .main_block_body table{
	position:relative;
	width:1080px;
	border-collapse:collapse;
	}
#allergy section .main_block_header table th{
	position:relative;
	width:119px;
	min-height:160px;
	background:#dfd9bf;
	text-align:left;
	vertical-align:bottom;
	font-size:14px;
	line-height:2;
	font-weight:600;
	letter-spacing:0.05em;
	padding:20px 10px 5px;
	}
#allergy section .main_block_header table td{
	position:relative;
	width:31px;
	min-height:160px;
	background:#dfd9bf;
	text-align:left;
	vertical-align:top;
	font-size:14px;
	line-height:31px;
	font-weight:600;
	letter-spacing:0.05em;
	padding:20px 0 35px 0;
}
#allergy section .main_block_header table td p{
	position:relative;
	font-size:14px;
	line-height:31px;
	font-weight:600;
	letter-spacing:0.05em;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	}
#allergy section .main_block_header table td.bg_c1{background:#e9caa4;}
#allergy section .main_block_header table td.bg_c2{background:#eedd8e;}
#allergy section .main_block_body table.ttl th{
	position:relative;
	width:1080px;
	background:#fff;
	text-align:left;
	vertical-align:bottom;
	font-size:18px;
	line-height:2;
	font-weight:600;
	letter-spacing:0.05em;
	padding:20px 0 5px;
	}
#allergy section .main_block_body table.list th{
	position:relative;
	width:119px;
	background:#f5f3e9;
	text-align:left;
	vertical-align:bottom;
	font-size:14px;
	line-height:1.4;
	font-weight:600;
	letter-spacing:0.05em;
	padding:8px 10px 8px;
	}
#allergy section .main_block_body table.list td{
	position:relative;
	width:31px;
	background:#f5f3e9;
	text-align:center;
	vertical-align:middle;
	font-size:14px;
	line-height:1;
	font-weight:600;
	letter-spacing:0.05em;
	padding:5px 0 5px;
	}
#allergy section .main_block_body table.list tr:nth-of-type(2n) th,
#allergy section .main_block_body table.list tr:nth-of-type(2n) td{

	background:#eeeadd;
}
section td::after,
section th::after {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 1px;
	height: 100%;
	background: #fff;
	z-index:10;
}
#main_block_th_sp{
	position:absolute;
	opacity:1;
	top:0;
	left:0;
	width:119px !important;
	z-index:15;
	}
#main_block_th_sp table{
	width:119px !important;
	transition: linear;
	-webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
#main_block_header_sp{
	position:absolute;
	opacity:1;
	top:0;
	left:0;
	width:119px !important;
	z-index:25;
	}
#main_block_header_sp table{
	width:119px !important;
	transition: linear;
	-webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
}
/*------------------------------------------------------------------------------ nutrient --*/
#nutrient section .main_block_header{
	position:relative;
	width:1080px;
	overflow:hidden;
	}
#nutrient section .main_block_header table,
#nutrient section .main_block_body table{
	position:relative;
	width:1080px;
	border-collapse:collapse;
	}
#nutrient section .main_block_header table th{
	position:relative;
	width:280px;
	background:#dfd9bf;
	text-align:left;
	vertical-align:bottom;
	font-size:14px;
	line-height:2;
	font-weight:600;
	letter-spacing:0.05em;
	padding:20px 10px 5px;
	}
#nutrient section .main_block_header table td{
	position:relative;
	width:160px;
	background:#dfd9bf;
	text-align:center;
	vertical-align:top;
	font-size:14px;
	line-height:1.6;
	font-weight:600;
	letter-spacing:0.05em;
	padding:8px;
	}
#nutrient section .main_block_body table.ttl th{
	position:relative;
	width:1080px;
	background:#fff;
	text-align:left;
	vertical-align:bottom;
	font-size:18px;
	line-height:2;
	font-weight:600;
	letter-spacing:0.05em;
	padding:20px 0 5px;
	}
#nutrient section .main_block_body table.list th{
	position:relative;
	width:280px;
	background:#f5f3e9;
	text-align:left;
	vertical-align:bottom;
	font-size:14px;
	line-height:1.4;
	font-weight:600;
	letter-spacing:0.05em;
	padding:8px 10px 8px;
	}
#nutrient section .main_block_body table.list td{
	position:relative;
	width:160px;
	background:#f5f3e9;
	text-align:center;
	vertical-align:middle;
	font-size:14px;
	line-height:1;
	font-weight:600;
	letter-spacing:0.05em;
	padding:5px 0 5px;
	}
#nutrient section .main_block_body table.list tr:nth-of-type(2n) th,
#nutrient section .main_block_body table.list tr:nth-of-type(2n) td{
	background:#eeeadd;
}
@media screen and (max-width:750px) {
#nutrient section .main_block_header{
	position:relative;
	width:720px;
	overflow:hidden;
	}
#nutrient section .main_block_header table,
#nutrient section .main_block_body table{
	position:relative;
	width:720px;
	border-collapse:collapse;
	}
#nutrient section .main_block_header table th{
	position:relative;
	width:120px;
	background:#dfd9bf;
	text-align:left;
	vertical-align:bottom;
	font-size:14px;
	line-height:2;
	font-weight:600;
	letter-spacing:0.05em;
	padding:20px 10px 5px;
	}
#nutrient section .main_block_header table td{
	position:relative;
	width:100px;
	background:#dfd9bf;
	text-align:center;
	vertical-align:top;
	font-size:14px;
	line-height:1.6;
	font-weight:600;
	letter-spacing:0.05em;
	padding:8px;
	}
#nutrient section .main_block_body table.ttl th{
	position:relative;
	width:720px;
	background:#fff;
	text-align:left;
	vertical-align:bottom;
	font-size:18px;
	line-height:2;
	font-weight:600;
	letter-spacing:0.05em;
	padding:20px 0 5px;
	}
#nutrient section .main_block_body table.list th{
	position:relative;
	width:120px;
	background:#f5f3e9;
	text-align:left;
	vertical-align:bottom;
	font-size:14px;
	line-height:1.4;
	font-weight:600;
	letter-spacing:0.05em;
	padding:8px 10px 8px;
	}
#nutrient section .main_block_body table.list td{
	position:relative;
	width:100px;
	background:#f5f3e9;
	text-align:center;
	vertical-align:middle;
	font-size:14px;
	line-height:1;
	font-weight:600;
	letter-spacing:0.05em;
	padding:5px 0 5px;
	}
#nutrient section .main_block_body table.list tr:nth-of-type(2n) th,
#nutrient section .main_block_body table.list tr:nth-of-type(2n) td{
	background:#eeeadd;
}
#nutrient #main_block_th_sp{
	position:absolute;
	opacity:1;
	top:0;
	left:0;
	width:120px !important;
	z-index:15;
	}
#nutrient #main_block_th_sp table{
	width:120px !important;
}
#nutrient #main_block_header_sp{
	position:absolute;
	opacity:1;
	top:0;
	left:0;
	width:120px !important;
	z-index:25;
	}
#nutrient #main_block_header_sp table{
	width:120px !important;
}
#nutrient #main_block_header_cover{
	position:absolute;
	top:0;
	left:0;
	width:720px;
	z-index:20;
	}
}

#main_header_fixed{
	position:fixed;
	top:0;
	left:50%;
	width:1080px;
	transform:translateX(-540px);
	z-index:10;
	opacity:0;
	pointer-events: none;
	}
#main_header_fixed.pc{
	transform:translateX(0);
	}
#main_header_fixed.disp{
	opacity:1 !important;
}
#main_header_sp{
	position:absolute;
	top:0;
	left:0;
	opacity:0;
	pointer-events: none;
	}
#main_body_fixed{
	position:fixed;
	top:0;
	left:0;
	opacity:0;
	pointer-events: none;
	}
@media screen and (max-width:750px) {
#main_header_fixed{
	position:fixed;
	top:0;
	left:4vw !important;
	width:92vw;
	transform:translateX(0);
	z-index:10;
	opacity:0;
	overflow:hidden;
	will-change: transform;
	}
#main_header_fixed.disp{
	opacity:1 !important;
}

#main_header_fixed.mov td{
	opacity:0;
}
#main_header_sp{
	position:absolute;
	opacity:0;
	top:0;
	left:0;
	width:1080px;
	z-index:5;
	will-change: transform;
	}
#main_header_sp.disp{
	opacity:1 !important;
}
#nutrient #main_header_sp{
	width:720px;
	}
#main_header_sp th{
	opacity:0;
	}
/*
#main_header_sp.non th{
	opacity:0 !important;
}
*/
#main_body_fixed{
	position:fixed;
	top:0;
	left:4vw;
	width:119px !important;
	transform:translateX(0);
	z-index:5;
	opacity:0;
	overflow:hidden;
	will-change: transform;
	}
#nutrient #main_body_fixed{
	width:120px !important;
}
#main_body_fixed.disp{
	opacity:1 !important;
}
#main_body_fixed .main_block_header,
#main_body_fixed td{
	opacity:0;
}
}