@charset "utf-8";

/* Detail */

article a:link,
article a:visited,
article a:active {
}

article a:hover {
}

article h1 {
	color: #333;
	text-shadow: 1px 1px 0px #fff;
	font-size: 185%;
	margin-top: 50px;
	margin-bottom: 35px;
	letter-spacing: 0px;
}

/*
------ page style ---------------------------------------------
*/

h2.page_title {
	color: #800000;
	font-size: 120%;
	background-color: #fcf2dd;
	padding: 0.3em 0.7em;
	margin-top: 1.0em;
	margin-bottom: 1.5em;
	letter-spacing: 0px;
	border: 1px solid #ccc;
	border-left: 0;
	border-right: 0;
}

h2.page_title span {
	color: #333;
	font-weight: normal;
	font-size: 80%;
	display: block;
}

h2.page_title img {
	float: left;
	margin: 0.20em 0.8em 0 0;
}

h2.product_title {
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.1em;
	background-color: #993333;
	text-align: center;
	font-size: 130%;
	padding: 0.4em 1.2em 0.3em 1.2em;
	margin-top: 1.0em;
	margin-bottom: 1.5em;
}

h3 {
	color: #800000;
	font-weight: bold;
	text-align: center;
	font-size: 115%;
	margin-top: 2.0em;
	margin-bottom: 1.5em;
	letter-spacing: 1px;
}

article h4,
article h5,
article h6 {
	color: #111;
	font-size: 135%;
	margin-top: 2.0em;
	margin-bottom: 1.5em;
}

article p,
article li,
article pre,
article td,
article th {
	color: #111;
	font-size: 92%;
	line-height: 1.85em;
	margin-top: 1.5em;
	margin-bottom: 1.5em;
}

article p,
article dl,
.product_image {
	padding-left: 1.0em;
	padding-right: 1.0em;
}

article ul, article ol {
	margin-top: 25x;
	margin-bottom: 25px;
	padding-left: 35px;
	padding-right: 20px;
}

article ol {
	list-style-type: decimal;
}

article ul {
	list-style-type: square;
}

article ol {
	list-style-type: decimal;
	margin-top: 35px;
	margin-bottom: 35px;
}

article li {
	padding-left: 12px;
}

article table {
	width: 100%;
	background-color: #999;
	border-spacing: 2px;
}

article td,
article th {
	font-size: 84%;
}

article th {
	font-weight: normal;
	background-color: #fff6d3;
	text-align: left;
	padding: 0.3em 0.7em 0.3em 0.7em;
}

article td {
	background-color: #fff;
	text-align: right;
	padding: 0.3em 0.7em 0.3em 0.7em;
}

article hr {
	border: none;
	border-bottom: 1px dashed #999;
	height: 1px;
	margin: 1.75em 0;
}

article strong,
article b {
	color: #830F24;
	margin-left: 3px;
	margin-right: 3px;
}

article .image_left,
article .image_right,
article .image_centert {
	margin-top: 3px;
	margin-bottom: 15px;
}

article .image_left {
	float: left;
	margin-right: 20px;
}

article .image_right {
	float: right;
	margin-left: 20px;
}

article .image_centert {
	margin-left: auto;
	margin-right: auto;
	display: block;
}

article .image_full,
article .image_pack {
	clear: both;
	overflow: hidden;
}

article .image_full img,
article .image_pack img {
	vertical-align: middle;
	margin-bottom: 0;
}

article .image_full img {
	width: 100%;
}

article .guide_information {
	width: 90%;
	margin: 0 auto;
}

/*
------ top page ---------------------------------------------
*/

.top_news {
	text-align: center;
}

.top_news span {
	display: block;
	margin-bottom: 0.25em;
	font-weight: bold;
}

iframe {
	display: block;
	width: 80%;
	margin: 1.5em auto;
}

.message {
	font-size: 88%;
	line-height: 1.75em;
	color: #244516;
	letter-spacing: 0.12em;
	font-weight: bolder;
	padding: 0 2.5em 0 2.5em;
	text-align: center;
}

.message span {
	display: block;
}

/*.message .a {
	padding-left: 5.0em;
}

.message .b {
	padding-left: 5.0em;
}

.message .c {
	padding-left: 8.0em;
}

.message .d {
	padding-left: 11.0em;
}

.message .e {
	padding-left: 11.0em;
}*/

article .jasrac {
	text-align: center;
	font-style: normal;
	font-size: 80%;
	color: #444;
	margin-top: 2.5em;
	margin-bottom: 1.5em;
}

article .jasrac img {
	display: block;
	margin: 0 auto 0.5em auto;
}

/*
------ /side_dishes/ ---------------------------------------------
*/

.img_set {
	display: grid;
	grid-template-columns: 25% 25% 25% 25%;
	gap: 0;
	margin: 0;
}

.no_margin {
	margin: 0;
}

.img_set img {
	width: 100%;
}

/*
------ /commercial-prepared-foods/ ---------------------------------------------
*/

.product_list {
	display: grid;
	grid-template-columns: calc( (100% - 0.5em) / 3 ) calc( (100% - 0.5em) / 3 ) calc( (100% - 0.5em) / 3 );
	gap: 1.5em 0.25em;
}

.product_list a:link,
.product_list a:visited,
.product_list a:active {
	color: #e65f05;
	font-weight: bold;
}

.product_list a:hover {
	color: #5a1800;
}

.product_list section {
	text-align: center;
}

.product_list section,
.product_list img {
	width: 100%;
}

.product_list dt {
	margin-bottom: 0.5em;
}

.product_list dd {
	font-size: 94%;
	line-height: 1.55em;
}

.product_list figcaption {
	background-color: #fff6c7;
	padding: 0.3em 0.5em;
}

.product_list img {
	vertical-align: middle;
}

.product_list figure,
.product_list dd {
	margin: 0;
}

.product_image {
	display: grid;
	grid-template-columns: 70% 25%;
	gap: 5%;
	margin-bottom: 2.0em;
}

.product_image img {
	width: 100%;
}

.product_image figure {
	margin: 0;
}

.product_image figcaption {
	text-align: center;
	font-size: 84%;
	line-height: 1.55em;
}

.product_detail {
	box-sizing: border-box;
	line-height: 1.35em;
}

.product_detail dt,
.product_detail dd {
	display: inline-block;
	font-size: 94%;
	box-sizing: border-box;
	padding: 0 1.0em 1.0em 0;
}

.product_detail dt {
	width: calc( ( 100% - 2.0em ) * 0.3 );
	vertical-align: top;
	font-weight: bold;
}

.product_detail dd {
	margin: 0;
	width: calc( ( 100% - 2.0em ) * 0.7 );
}

.page_back {
	text-align: center;
	margin-top: 3.5em;
}

.page_back a:link,
.page_back a:visited,
.page_back a:active {
	background-color: #eee;
	padding: 0.7em 1.5em;
	color: #582f13;
	font-weight: bold;
}

.page_back a:hover {
	background-color: #f5f5f5;
	color: #d45426;
}

/*
------ /greetings/ ---------------------------------------------
*/

.greetings {
	background-color: #e7f7dc;
	box-sizing: border-box;
	padding: 0.6em 1.5em;
	width: 100%;
	margin: 0;
}

.president {
	text-align: right;
}

.president span {
	font-weight: bold;
}

/*
------ /company_profile/ ---------------------------------------------
*/

.factory,
.company,
.history {
	display: grid;
	grid-template-columns: 25% calc(75% - 1.0em);
	gap: 1.0em;
}

.factory {
	width: calc(100% - 2.0em);
	margin: 0 auto 3.5em auto;
	align-items: flex-end;
}

.factory figcaption {
	font-size: 92%;
}

.factory img {
	width: 100%;
}

.company {
	font-size: 94%;
	margin-bottom: 1.0em;
	grid-auto-flow: row;
	grid-auto-columns: auto;
}

.company dt {
}

.company dd {
	margin: 0;
}

.history {
	margin: 0;
	padding: 0;
	gap: 0.3em 1.0em;
}


