@charset "utf-8";


/* ----------------------------------------------------------------------
	common
---------------------------------------------------------------------- */

/* mainimg */
.under #mainimg {
	position: relative;
	background: url(../img/bg_01.jpg) 0 0 repeat-x;
	padding: 5px 0 0;
	margin: 0 0 80px;
}

#report-detail #mainimg {
	padding: 20px 0 50px;
	margin: 0;
}

#gallery-detail #mainimg {
	padding: 20px 0 30px;
	margin: 0;
}

.under #mainimg h2 {
	position: absolute;
	bottom: -64px;
	font-weight: normal;
	text-align: center;
	width: 100%;
}
#report-detail #mainimg h2,
#gallery-detail #mainimg h2 { position: static; }

.under #mainimg h2 span { display: block; }

.under #mainimg h2 .en {
	font-size: 60px;
	font-size: 6rem;
	line-height: 1.4;
	-webkit-text-shadow: 0 0 5px #fff;
	-moz-text-shadow: 0 0 5px #fff;
	-o-text-shadow: 0 0 5px #fff;
	text-shadow: 0 0 5px #fff;
}

.under #mainimg h2 .ja {
	font-size: 18px;
	font-size: 1.8rem;
}

.under #mainimg p.img img {
	width: 100%;
	height: auto;
}

.under #mainimg p.bn-fair {
	position: absolute;
	right: 30px;
	bottom: -25px;
}
#report-detail #mainimg p.bn-fair,
#gallery-detail #mainimg p.bn-fair {
	top: 15px;
	bottom: auto;
}

.under #mainimg p.bn-fair a {
	background: url(../img/bg_08.gif);
	color: #fff;
	text-align: center;
	text-decoration: none;
	line-height: 1;
	padding: 48px 0 0;
	width: 140px;
	height: 92px;
	display: block;
	border-radius: 70px;
}

.under #mainimg p.bn-fair a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}

.under #mainimg p.bn-fair a .en {
	font-size: 26px;
	font-size: 2.6rem;
}

.under #mainimg p.bn-fair a .en { border-bottom: 1px solid #fff; }

.under #mainimg p.bn-fair a .ja {
	margin: 12px 0 0;
	display: block;
}

@media screen and (max-width: 767px) {
	.under #mainimg { margin: 0 0 70px }
	
	.under #mainimg h2 { bottom: -50px; }
		
	.under #mainimg h2 .en {
		font-size: 40px;
		font-size: 4rem;
	}
	
	.under #mainimg h2 .ja {
		font-size: 16px;
		font-size: 1.6rem;
	}
	
	.under #mainimg p.img img {
		height: 56vw;
		object-fit: cover;
	}


	.under #mainimg p.bn-fair { display: none; }
}


/* catch */
.under p.catch {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E","ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 2.4;
	text-align: center;
	margin: 0 auto 50px;
}


p.catch span {
	background: url(../img/line_03.gif) 0 bottom repeat-x;
	padding: 0 0 8px;
}

@media screen and (max-width: 767px) {
	.under p.catch {
		font-size: 14px;
		font-size: 1.4rem;
		padding: 0 15px;
		margin: 0 0 20px;
	}
	
	#concept p.catch { width: auto; }
	#report p.catch { width: auto; }
	
	.under p.catch span {
		padding: 0;
		margin: 0 0 3px;
		display: inline-block;
	}
}


/* con-box */
.under .con-box { padding: 0 0 60px; }

.under .con-box:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.under .con-box { display: inline-block; }
/* Hides from IE-mac \*/
* html .under .con-box { height: 1%; }
.under .con-box { display: block; }
/* End hide from IE-mac */

.under .con-box p { margin: 0 0 1em; }

.under .con-box p.img-l { float: left; margin: 0 20px 1em 0; }
.under .con-box p.img-r { float: right; margin: 0 0 1em 20px; }

#report-detail .con-box ul {
	list-style: disc;
	padding-left: 1.6em;
}

#report-detail .con-box ol {
	list-style: decimal;
	padding-left: 1.6em;
}


/* detail-box */
#report-detail .detail-box dl { margin: 0 0 0.6em; }
#report-detail .detail-box dl:first-child {
	padding: 2em 0 0;
	border-top: 1px solid #eee;
}
#report-detail .detail-box dl:last-child { margin: 0 0 3em; }

#report-detail .detail-box dl dt { font-weight: bold; }

#report-detail .detail-box dl dd { margin: -1.65em 0 0 48px; }


/* table */
.under table {
	margin: 0 0 1em;
	width: 100%;
	border-top: 1px dotted #ddd;
}

.under table th ,
.under table td {
	border-bottom: 1px dotted #ddd;
	text-align: left;
	padding: 12px 10px 10px;
	vertical-align: top;
}

.under table th {
	font-weight: normal;
	width: 16%;
}


/* lo-nav */
.under ul.lo-nav {
	text-align: center;
	margin: 0 0 60px;
}

.under ul.lo-nav li {
	margin: 0 15px;
	display: inline;
}

.under ul.lo-nav li a {
	font-size: 14px;
	font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
	.under ul.lo-nav {
		margin: 0 0 40px;
		border-bottom: 1px solid #ddd;
	}
	
	.under ul.lo-nav li {
		margin: 0;
		border-top: 1px solid #ddd;
		display: block;
	}
	
	.under ul.lo-nav li a {
		font-size: 14px;
		font-size: 1.4rem;
		text-decoration: none;
		padding: 10px 15px 8px;
		display: block;
	}
}


/* wp-pagenavi */
.wp-pagenavi {
	text-align: center;
	margin: 0 0 120px;
}

.wp-pagenavi span,
.wp-pagenavi a {
    color: #381004;
    font-size: 1.4rem;
	text-decoration: none!important;
	padding: 6px 12px 7px 12px;
	margin: 0 5px 10px;
	border: 1px solid #381004;
    display: inline-block;
}

.wp-pagenavi .current,
.wp-pagenavi a:hover {
	background: #381004;
	color: #fff;
}

@media screen and (max-width: 990px) {
    .wp-pagenavi { margin: 40px 0 80px; }
}

/* pager */
.wp-pager {
	text-align: center;
	margin: 0 0 60px;
}



/* form-box */
.under #mfp_phase_confirm,
.under #mailformpro,
.under .form-box #contact-form {
	padding: 110px 0 0;
	margin: -110px 0 0;
}

.under .form-box p.txt01 {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E","ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 18px;
	font-size: 1.8rem;
	margin: 0 0 1em;
}
.under .form-box p.txt01 span { display: block; }

.under .form-box p.txt02 { margin: 0 0 1em; }
.under .form-box p.txt02 span { font-weight: bold; }

.under .form-box p.txt03 {
	font-size: 12px;
	font-size: 1.2rem;
	text-indent: -1em;
	margin: 0 0 1em 1em;
}

.under .form-box dl { margin: 0 0 24px; }

.under .form-box dl dt span { color: #b23b1f; }

.under .form-box dl dd { margin: -2.2em 0 0 170px; }
.under .confirm .form-box dl dd { margin-top: -1.6em; }

.under .form-box dl dd input[type="text"],
.under .form-box dl dd input[type="email"],
.under .form-box dl dd input[type="tel"],
.under .form-box dl dd textarea {
	padding: 3px;
	border: 1px solid #eee;
}

.under .form-box dl dd label { margin-right: 10px; }
.under .form-box dl dd label input[type="checkbox"] { margin-right: 5px; }

.under .form-box dl dd input[type="text"],
.under .form-box dl dd input[type="email"],
.under .form-box dl dd input[type="tel"],
.under .form-box dl dd textarea {
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

.under .form-box dl.time dd span { padding-right: 20px; }

.under .form-box dl.time dd input,
.under .form-box dl.num dd input {
	margin-right: 5px;
	width: 34%;
}

.under .form-box dl dd textarea {
	width: 100% !important;
	height: 192px !important;
}

.under .form-box .send-form {
	text-align: center;
	padding: 30px 0 0;
}

.under .form-box .send-form form { display: inline; }

.under .form-box .mfp_buttons button,
.under .form-box .send-form input[type="submit"] {
	background: #381004;
	color: #fff;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1;
	padding: 14px 30px 8px;
	margin: 0 10px;
	border: none;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-o-border-radius: 0;
	border-radius: 0;
}
.under .form-box .mfp_buttons button { padding: 10px 30px; }

.under .form-box .mfp_buttons button#mfp_button_cancel,
.under .form-box .send-form input[type="submit"].back { background: #666; }

.under .form-box .mfp_buttons button:hover
.under .form-box .send-form input[type="submit"]:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}

.under .form-box .send-form p.btn-back a,
.under .form-box .send-form p.btn-top a {
	background: #381004;
	color: #fff;
	font-size: 16px;
	font-size: 1.6rem;
	text-decoration: none;
	line-height: 1;
	margin: 0 auto;
	padding: 10px;
	display: block;
}

.under .form-box .send-form p.btn-back a { width: 100px; }
.under .form-box .send-form p.btn-top a { width: 180px; }

.under .form-box .send-form p.btn-back a:hover,
.under .form-box .send-form p.btn-top a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}

@media screen and (max-width: 959px) {
	.under .form-box p.txt01 span { display: inline; }
	
	.under .form-box dl dd label {
		margin: 0 0 10px;
		display: block;
	}
}


@media screen and (max-width: 767px) {
	.under #mfp_phase_confirm,
	.under #mailformpro,
	.under .form-box #contact-form {
		padding: 0;
		margin: 0;
	}

	.under .form-box dl dt { margin: 0 0 0.6em; }
	
	.under .form-box dl dd { margin:0 ; }
	.under .confirm .form-box dl dd { margin-top: 0; }
	
	.under .form-box .mfp_buttons button,
	.under .form-box .send-form input[type="submit"] {
		margin: 0;
		width: 100%;
	}
	
	.under .form-box .send-form input.back[type="submit"] { margin: 0 0 15px; }
	
	.under .form-box .send-form p.btn-back a,
	.under .form-box .send-form p.btn-top a {
		width: 100%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}
}


/* contact-box */
.under .contact-box {
	background: #fff;
	margin: 0 auto 60px;
	width: 956px;
	border: 2px solid #381004;
}

.under .contact-box h3 {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: normal;
	text-align: center;
	width: 282px;
	border-right: 2px solid #381004;
}

.under .contact-box h3 .en {
	font-size: 30px;
	font-size: 3rem;
	line-height: 1.4;
}

.under .contact-box inner {
	width: 100%;
	display: table;
}

.under .contact-box h3,
.under .contact-box dl.tel,
.under .contact-box .mail {
	display: table-cell;
	vertical-align: middle;
}

.under .contact-box dl.tel {
	text-align: center;
	width: 350px;
}

.under .contact-box dl.tel dt {
	font-size: 22px;
	font-size: 2.2rem;
	line-height: 1.4;
}

.under .contact-box dl.tel dt a {
	color: #381004;
	font-size: 30px;
	font-size: 3rem;
	text-decoration: none;
}

.under .contact-box dl.tel dd {
	font-size: 14px;
	font-size: 1.4rem;
}

.under .contact-box .mail { width: 318px; }

.under .contact-box .mail p {
	padding: 40px 0;
	width: 270px;
}

.under .contact-box .mail p a {
	background: #381004;
	color: #fff;
	font-size: 18px;
	font-size: 1.8rem;
	text-align: center;
	text-decoration: none;
	line-height: 58px;
	height: 56px;
	display: block;
}

.under .contact-box .mail p a:hover { opacity: 0.8; }

.under .contact-box .mail p a span {
	background: url("../img/contact_mail_icon.png") 0 0 no-repeat;
	background-size: 30px 22px;
	padding: 2px 0 2px 36px;
} 

@media screen and (max-width: 959px) {
	.under .contact-box {
		margin: 0 30px 70px;
		width: auto;
	}
	
	.under .contact-box inner {
		width: 100%;
		display: block;
	}
	
	.under .contact-box h3 {
		padding: 15px 0;
		width: auto;
		border-right: none;
		border-bottom: 2px solid #381004;
	}

	.under .contact-box h3,
	.under .contact-box dl.tel,
	.under .contact-box .mail { display: block; }
	
	.under .contact-box dl.tel {
		padding: 20px 0 0;
		width: auto;
	}
	
	.under .contact-box .mail { width: auto; }
	
	.under .contact-box .mail p {
		padding: 20px 0 30px;
		margin: 0 auto;
		width: 280px;
	}
}

@media screen and (max-width: 767px) {
	.under .contact-box { margin: 0 15px 40px; }
	
	.under .contact-box dl.tel dd {
		font-size: 13px;
		font-size: 1.3rem;
	}

	.under .contact-box .mail p {
		padding: 20px 15px 15px;
		margin: 0 auto;
		width: auto;
	}
}


/* bn-fair-box */
.under .bn-fair-box {
	margin: 0 auto 60px;
	width: 960px;
	display: table;
}

.under .bn-fair-box a {
	background: #7c0000;
	color: #fff;
	text-decoration: none;
	display: block;
}

.under .bn-fair-box a:hover { opacity: 0.8; }

.under .bn-fair-box a:hover img { opacity: 1; }

.under .bn-fair-box p {
	text-align: center;
	width: 480px;
	display: table-cell;
	vertical-align: middle;
}

.under .bn-fair-box p.ttl { line-height: 1.4; }

.under .bn-fair-box p.ttl .en {
	font-size: 34px;
	font-size: 3.4rem;
}

.under .bn-fair-box p.ttl .ja {
	font-size: 22px;
	font-size: 2.2rem;
}

@media screen and (max-width: 959px) {
	.under .bn-fair-box {
		margin: 0 30px 60px;
		width: auto;
		display: block;
	}

	.under .bn-fair-box p {
		width: auto;
		display: block;
	}

	.under .bn-fair-box p.ph img { width: 100%; }
	
	.under .bn-fair-box p.ttl { padding: 20px 0; }
}

@media screen and (max-width: 767px) {
	.under .bn-fair-box {
		margin: 0 15px 30px;
		width: auto;
		display: block;
	}
	
	.under .bn-fair-box p.ttl { padding: 15px 0; }
	
	.under .bn-fair-box p.ttl .en {
		font-size: 24px;
		font-size: 2.4rem;
	}

	.under .bn-fair-box p.ttl .ja {
		font-size: 18px;
		font-size: 1.8rem;
	}
}



/* ----------------------------------------------------------------------
	concept
---------------------------------------------------------------------- */

/* concept-box */
#concept .concept-box {
	position: relative;
	width: 960px;
	margin: 0 auto 60px;
}

#concept .concept-box p.catch {
	position: absolute;
	top: 50%;
	right: 55px;
	padding: 0;
	margin: -90px 0 0;
}

#concept .concept-box p.ph { margin: 0 0 20px; }

#concept .concept-box p.txt {
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
	line-height: 2;
}

#concept .concept-box p.txt span { display: block; }

#concept .concept-box .txt-img {
	position: absolute;
	right: -40px;
	top: 130px;
}

.touch #concept .concept-box .txt-img { display: none; }


/* flow-box */
#concept .flow-box {
	background: url(../img/bg_01.jpg);
	padding: 60px 0;
	margin: 0 0 60px;
}

#concept .flow-box .box-inner {
	margin: 0 auto;
	width: 960px;
}

#concept .flow-box .ttl-box {
	position: relative;
	margin: 0 0 5em;
}

#concept .flow-box .ttl-box h3 {
	position: absolute;
	top: 0;
	left: 60px;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1;
}

#concept .flow-box .ttl-box h3 .en {
	font-size: 50px;
	font-size: 5rem;
	margin: 0 0 0.3em;
	border-bottom: 1px solid #381004;
}

#concept .flow-box .ttl-box .txt { padding-left: 270px; }

#concept .flow-box .ttl-box .txt p {
	font-size: 14px;
	font-size: 1.4rem;
}

#concept .flow-box .ttl-box .txt p.ttl {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E","ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 18px;
	font-size: 1.8rem;
	margin: 0 0 0.4em;
}

#concept .flow-box .ttl-box .txt p.ttl span { display: block; }

#concept .flow-box .box { margin: 0 0 60px; }

#concept .flow-box .step06 { margin: 0; }

#concept .flow-box .step01 p.ph,
#concept .flow-box .step03 p.ph,
#concept .flow-box .step05 p.ph {
	margin-left: -120px;
	float: left;
}

#concept .flow-box .step02 p.ph,
#concept .flow-box .step04 p.ph,
#concept .flow-box .step06 p.ph {
	margin-right: -120px;
	float: right;
}

#concept .flow-box .step01 .inner,
#concept .flow-box .step03 .inner, 
#concept .flow-box .step05 .inner {
	padding: 50px 0 0;
	width: 360px;
	float: right;
}

#concept .flow-box .step02 .inner,
#concept .flow-box .step04 .inner, 
#concept .flow-box .step06 .inner {
	padding: 50px 0 0;
	width: 360px;
	float: left;
}

#concept .flow-box .box .inner dl.en {
	color: #9c9113;
	font-size: 26px;
	font-size: 2.6rem;
	line-height: 1.2;
	margin: 0 0 0.8em;
}

#concept .flow-box .box .inner dl.en dt {
	font-size: 50px;
	font-size: 5rem;
	font-style: italic;
}

#concept .flow-box .box .inner dl.en dd { margin: -1.4em 0 0 60px; }

#concept .flow-box .box .inner dl.txt { line-height: 2; }

#concept .flow-box .box .inner dl.txt dt {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E","ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 22px;
	font-size: 2.2rem;
}

#concept .flow-box .box .inner dl.txt dd {
	font-size: 14px;
	font-size: 1.4rem;
}


/* about-box */
#concept .about-box {
	background: #f3f2f0;
	margin: 0 auto 50px;
	width: 960px;
}

#concept .about-box h3 {
	background: url(../img/line_02.gif) 0 bottom repeat-x;
	padding: 20px 0 12px;
	margin: 0;
}

#concept .about-box .box-inner { padding: 30px 40px 40px; }

#concept .about-box .box-inner p { margin: 0 0 0.8em; }

#concept .about-box .box-inner p.ph {
	margin: 8px 0 1em 40px;
	float: right;
}

#concept .about-box .box-inner p.btn { margin: 0; }


@media screen and (max-width: 959px) {
	#concept .concept-box {
		width: auto;
		margin: 0 30px 50px;
	}
	
	#concept .concept-box p.catch {
		right: 6%;
		margin-top: -70px;
	}
	
	#concept .concept-box p.catch img {
		width: 180px;
		height: auto;
	}
	
	#concept .concept-box p.txt { text-align: left; }
	
	#concept .concept-box p.txt span { display: inline; }
	
	#concept .concept-box .txt-img { display: none; }
	
	#concept .flow-box { padding: 40px 0; }

	#concept .flow-box .box-inner {
		margin: 0 30px;
		width: auto;
	}

	#concept .flow-box .ttl-box {
		position: relative;
		margin: 0 0 3em;
	}

	#concept .flow-box .ttl-box h3 {
		position: static;
		width: 164px;
		margin: 0 auto 2em;
	}

	#concept .flow-box .ttl-box .txt {
		text-align: center;
		padding-left: 0;
	}

	#concept .flow-box .box { margin: 0 0 60px; }

	#concept .flow-box .step06 { margin: 0 0 20px; }

	#concept .flow-box .box p.ph { margin: 0 0 15px; }

	#concept .flow-box .box p.ph img { width: 100%; }

	#concept .flow-box .step01 p.ph,
	#concept .flow-box .step03 p.ph,
	#concept .flow-box .step05 p.ph {
		margin-left: 0;
		float: none;
	}

	#concept .flow-box .step02 p.ph,
	#concept .flow-box .step04 p.ph,
	#concept .flow-box .step06 p.ph {
		margin-right: 0;
		float: none;
	}

	#concept .flow-box .step01 .inner,
	#concept .flow-box .step03 .inner, 
	#concept .flow-box .step05 .inner {
		padding: 0;
		width: auto;
		float: none;
	}

	#concept .flow-box .step02 .inner,
	#concept .flow-box .step04 .inner, 
	#concept .flow-box .step06 .inner {
		padding: 0;
		width: auto;
		float: none;
	}

	#concept .flow-box .box .inner dl.en {
		text-align: center;
		margin: 0 0 0.2em;
	}

	#concept .flow-box .box .inner dl.en dt,
	#concept .flow-box .box .inner dl.en dd { display: block; }

	#concept .flow-box .box .inner dl.en dt { margin: -40px 0 0; }

	#concept .flow-box .box .inner dl.en dd { margin: 0; }

	#concept .flow-box .box .inner dl.txt dt { text-align: center; }

	#concept .about-box {
		margin: 0 30px 50px;
		width: auto;
	}
	
	#concept .about-box .box-inner { padding: 20px 30px; }
}

@media screen and (max-width: 767px) {
	#concept .concept-box { margin: 0 15px 50px; }
	
	#concept .concept-box p.ph { margin: 0; }
	
	#concept .concept-box p.catch {
		position: relative;
		top: inherit;
		right: inherit;
		background: url("../img/bg_04.gif") center center;
		padding: 4vw;
		margin: -40px 20vw 20px;
	}
	
	#concept .concept-box p.catch img { width: 28vw; }
	
	#concept .flow-box { padding: 30px 0; }

	#concept .flow-box .box-inner { margin: 0 15px; }

	#concept .flow-box .ttl-box .txt { text-align: left; }

	#concept .flow-box .ttl-box .txt p.ttl span { display: inline; }

	#concept .flow-box .box .inner dl.en {
		font-size: 20px;
		font-size: 2rem;
		line-height: 1.2;
		margin: 0 0 0.2em;
	}

	#concept .flow-box .box .inner dl.en dt,
	#concept .flow-box .box .inner dl.en dd {
		margin: 0;
		display: block;
	}

	#concept .flow-box .box .inner dl.en dt {
		font-size: 36px;
		font-size: 3.6rem;
		margin-top: -36px;
	}

	#concept .about-box { margin: 0 15px 50px;	 }
	
	#concept .about-box h3 .en { line-height: 1.2; }
	
	#concept .about-box .box-inner {
		line-height: 1.6;
		padding: 15px;
	}
	
	#concept .about-box .box-inner p.ph {
		text-align: center;
		margin:0 0 20px;
		float: none;
	}
}

@media screen and (max-width: 479px) {
	#concept .concept-box p.txt01 {
		font-size: 10px;
		font-size: 1rem;
	}
	

	

}



/* ----------------------------------------------------------------------
	cuisine
---------------------------------------------------------------------- */

/* cuisine-box */
#cuisine .cuisine-box {
	background: url(../../cuisine/img/cuisine_bg.jpg) center 0 no-repeat;
	padding: 0 0 40px;
}

#cuisine .cuisine-box .main {
	padding: 0 0 60px;
	margin: 0 auto;
	width: 960px;
}

#cuisine .cuisine-box .main p.ph01 { margin: 0 0 20px; }

#cuisine .cuisine-box .main p.txt {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 2;
	text-align: center;
}

#cuisine .cuisine-box .main p.txt span { display: block; }


/* menu-box */
#cuisine .menu-box {
	position: relative;
	overflow: hidden;
}

#cuisine .menu-box .inner {
	width: 960px;
	height: 320px;
	margin: 0 auto 60px;
}

#cuisine .menu-box .box {
	padding: 0 0 0;
	width: 455px;
}

#cuisine .menu-box .box p.txt {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E","ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 22px;
	font-size: 2.2rem;
	text-align: center;
	margin: 0 0 30px;
}

#cuisine .menu-box .box p.txt span { display: block; }

#cuisine .menu-box .box p.img {
	text-align: center;
	margin: 0 0 30px;
}

#cuisine .menu-box .ph {
	background: url(../../img/cuisine/cuisine_chef.jpg) center center no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	position: absolute;
	top: 0;
	right: 0;
	width: 50%;
	height: 320px;
}


/* menu-ph */
#cuisine .menu-ph {
	width: 960px;
	margin: 0 auto;
}

#cuisine .menu-ph ul {
	width: 980px;
	margin-left: -20px;
}

#cuisine .menu-ph ul li {
	float: left;
	padding: 0 0 20px 20px;
}


/* drink-box */
#cuisine .drink-box {
	background: #f3f2f0;
	width: 920px;
	padding: 20px;
	margin: 0 auto 50px;
}

#cuisine .drink-box p.ph { float: right; }

#cuisine .drink-box .l-box {
	width: 435px;
	float: left;
}

#cuisine .drink-box h3 {
	background: url(../img/line_02.gif) 0 bottom repeat-x;
	padding: 0 0 10px;
}

#cuisine .drink-box p.txt { margin: 0 0 1em; }

#cuisine .drink-box h4 {
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
}

#cuisine .drink-box section p,
#cuisine .drink-box section dl {
	padding: 8px 10px 7px;
	border-bottom: 1px solid #ddd;
}

#cuisine .drink-box section p,
#cuisine .drink-box section dl dt { font-weight: bold; }

#cuisine .drink-box section dl dd { margin: -1.6em 0 0 160px; }

@media screen and (max-width: 959px) {
	#cuisine .cuisine-box { background: none; }
	
	#cuisine .cuisine-box .main {
		padding: 0 30px 40px;
		margin: 0 auto;
		width: auto;
	}

	#cuisine .menu-box { overflow: visible; }
	
	#cuisine .menu-box .inner {
		width: auto;
		height: auto;
		margin: 0 30px 60px;
	}
	
	#cuisine .menu-box .box {
		padding: 0;
		margin: 0 auto;
		width: 455px;
	}
	
	#cuisine .menu-box .box p.img { text-align: center; }
	
	#cuisine .menu-box .box p.txt {
		font-size: 16px;
		font-size: 1.6rem;
	}
	
	#cuisine .menu-box .ph {
		position: static;
		width: 100%;
		height: 400px;
		margin: 0 0 30px;
	}

	#cuisine .menu-ph { width: auto; }

	#cuisine .menu-ph ul {
		width: auto;
		padding: 0 20px 20px;
		margin: 0;
	}
	
	#cuisine .menu-ph ul li {
		padding: 0 10px 20px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}

	#cuisine .cuisine-box ul li.ph01,
	#cuisine .cuisine-box ul li.ph02,
	#cuisine .cuisine-box ul li.ph03 { width: 33.333333%; }
	
	#cuisine .cuisine-box ul li.ph04,
	#cuisine .cuisine-box ul li.ph05 { width: 50%; }
	
	#cuisine .drink-box {
		width: auto;
		margin: 0 30px 50px;
		padding: 30px;
	}
	
	#cuisine .drink-box p.ph,
	#cuisine .drink-box .l-box {
		width: 100%;
		float: none;
		padding: 0;
	}
	
	#cuisine .drink-box p.ph {
		margin: 0 0 10px;
		height: 360px;
		overflow: hidden;
	}
	
	#cuisine .drink-box p.ph img {
		margin: -340px 0 0;
		width: 100%;
	}
}

@media screen and (max-width: 767px) {
	#cuisine .cuisine-box .main { padding: 0 15px 40px; }
	
	#cuisine .cuisine-box .main p.txt { text-align: left; }
	
	#cuisine .cuisine-box .main p.txt span { display: inline; }
	
	#cuisine .menu-box .inner { margin: 0 15px 40px; }
	
	#cuisine .menu-box .inner .box { width: auto; }
	
	#cuisine .menu-box .ph {
		height: 200px;
		margin: 0 0 15px;
	}
	
	#cuisine .menu-ph ul {
		padding: 0 15px 20px;
		margin: 0;
	}
	
	#cuisine .menu-ph ul li {
		padding: 0 0 15px;
		width: 100% !important;
		float: none;
	}
	
	#cuisine .menu-ph ul li img {
		width: 100%;
		height: auto;
	}
	
	#cuisine .drink-box {
		margin: 0 15px 50px;
		padding: 15px;
	}
	
	#cuisine .drink-box p.ph { height: 160px; }
	
	#cuisine .drink-box p.ph img { margin: -120px 0 0; }
	
	#cuisine .drink-box section p,
	#cuisine .drink-box section dl {
		padding: 8px 0 7px;
		border-bottom: 1px solid #ddd;
	}

	#cuisine .drink-box section dl dd { margin: 0; }
}


/* ----------------------------------------------------------------------
	faq
---------------------------------------------------------------------- */

#faq .faq-box {
	margin: -60px auto 0;
	padding: 60px 0 30px;
	width: 960px;
}

#faq .faq-box h3 {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E","ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 20px;
	font-size: 2rem;
	text-align: center;
	margin: 0 0 0.2em;
}

#faq .faq-box .box-inner {
	margin: 0 0 50px -30px;
	width: 990px;
}

#faq .faq-box .box {
	margin-left: 30px;
	width: 465px;
	float: left;
}

#faq .faq-box dl.faq-q {
	background: url(../img/line_02.gif) 0 bottom repeat-x;
	padding: 0 0 10px;
}

#faq .faq-box dl dt {
	font-size: 24px;
	font-size: 2.4rem;
}

#faq .faq-box dl.faq-q dt { color: #e6b422; }
#faq .faq-box dl.faq-a dt { color: #7c0000; }

#faq .faq-box dl dd {
	font-size: 14px;
	font-size: 1.4rem;
	margin: -2.1em 0 0 30px;
}

#faq .faq-box dl.faq-a dd span { display: block; }

#faq .faq-box dl.faq-a dd .tel {
	color: #381004;
	text-decoration: none;
}

@media screen and (max-width: 959px) {
	#faq .faq-box { width: auto; }
	
	#faq .faq-box .box-inner {
		margin: 0 15px 50px;
		width: auto;
	}
	
	#faq .faq-box .box {
		padding: 0 15px;
		margin-left: 0;
		width: 50%;
		float: left;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 767px) {
	#faq .faq-box .box-inner {
		margin: 0 15px;
		width: auto;
	}
	
	#faq .faq-box .box {
		padding: 0;
		margin: 0 0 30px;
		width: auto;
		float: none;
	}
	
	#faq .faq-box dl.faq-a dd span { display: inline; }

	#faq .faq-box dl.faq-a dd .tel { text-decoration: underline; }
}


/* ----------------------------------------------------------------------
	fair
---------------------------------------------------------------------- */

#fair #content .fair-box {
	margin: 0 auto 50px;
	width: 960px;
}

#fair #content .fair-box .sp { display: none; }

@media screen and (max-width: 959px) {
	#fair #content .fair-box {
		width: auto;
	}
	
	#fair #content .fair-box .pc { display: none; }
	#fair #content .fair-box .sp { display: block; }
	
	#fair #content .fair-box iframe { width: 100%; }
}


/* ----------------------------------------------------------------------
	report
---------------------------------------------------------------------- */

#report p.archive-ttl {
	font-size: 20px;
	font-size: 2rem;
	text-align: center;
	margin: 0 0 1em;
}

#report .select-report {
	position: relative;
	max-width: 960px;
	margin: 0 auto;
}

.select-btn {
	background: #381004;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding:  10px; 
	border: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	-o-appearance: none;
	appearance: none;
	outline: none;
}

.select-btn {
	width: 100%;
	height: 56px;
}

.select-btn option {
	font-size: 16px;
	font-size: 1.6rem;
}

#report .select-report #monthlylist { text-align: center; }

#report .select-report .select-btn {
	margin: 0 auto 40px;
	width: 240px;
}

#report .report-box {
	max-width: 960px;
	margin: 0 auto;
}

#report .report-box .box-inner {
	width: 920px;
	margin: 0 0 50px -30px;
}

#report .report-list {
	padding: 0 0 80px;
	display: flex;
	flex-wrap: wrap;
	gap: 60px 40px;
}

#report .report-list li { width: calc((100% - 40px) / 2); }

#report .report-list li a { text-decoration: none; }

#report .report-list li figure img {
	width: 100%;
	height: 300px;
	object-fit: cover;
}

#report .report-list li figure figcaption {
	text-align: center;
	margin:  1em 0 0;
}

#report .report-list .detail-box dl:first-child { margin: 0.8em 0 0; }
#report .report-list .detail-box dl dt { font-weight: bold; }
#report .report-list .detail-box dl dd { margin: -1.65em 0 0 48px; }


#report .report-list p.btn {
	width: 200px;
	text-align: center;
	margin: 1em auto 0;
}

#report .report-list  p.btn a {
	font-size: 14px;
	font-size: 1.4rem;
	text-decoration: none;
	padding: 8px 10px;
	border: 1px solid #381004;
	display: block;
}

#report .report-list p.btn a:hover {
	background: #381004;
	color: #fff;
}

@media screen and (max-width: 959px) {
	#report .select-report {
		text-align: center;
		margin: 0 0 40px;
	}
	
	#report .select-report .select-btn { position: static; }
	
	#report .select-report { width: auto; }
	
	#report .report-box {
		padding: 0 30px;
		width: auto;
	}
	
	#report .report-list { gap: 40px 30px; }

	#report .report-list li { width: calc((100% - 30px) / 2); }
	
	#report .report-list li figure img { height: 30vw; }
}

@media screen and (max-width: 767px) {
	#report .select-report { margin: 0 15px 40px; }
	
	#report .select-report .select-btn { width: 100%; }
	
	#report .report-box { padding: 0 15px; }
	
	#report .report-list { gap: 40px 30px; }

	#report .report-list li { width: 100%; }
	
	#report .report-list li figure img { height: auto; }
}


/* ----------------------------------------------------------------------
	report-detail
---------------------------------------------------------------------- */

#report-detail #content article {
	background: #fff;
	padding: 14px 20px;
	margin: 0 0 30px;
}

#report-detail article header {
	background: url(../img/line_02.gif) 0 bottom repeat-x;
	padding: 0 0 12px;
	margin: 0 0 1.4em
}

#report-detail article header h1 {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: normal;
	text-align: center;
}

#report-detail article header h1 a { text-decoration: none; }

#report-detail article .con-box { padding-bottom: 0; }

@media screen and (max-width: 959px) {
	#report-detail article header h1 {
		font-size: 14px;
		font-size: 1.4rem;
	}
	
	#report-detail #content article { padding: 14px 15px 10px; }
}


/* ----------------------------------------------------------------------
	topics
---------------------------------------------------------------------- */

#topics #container {
	padding: 10px 0 0;
	margin: 0 auto;
	width: 960px;
}

#topics p.archive-ttl {
	font-size: 20px;
	font-size: 2rem;
	text-align: center;
	margin: 0 0 1em;
}

#topics #content {
	width: 630px;
	float: right;
}

#topics #content.topics-index {
	width: auto;
	float: none;
}

#topics article header { position: relative; }

#topics article header p.ph { margin: 0 0 15px; }

#topics article header .date {
	position: absolute;
	top: 0;
	left: 20px;
	background: url("../img/date_bg.png") center 45px no-repeat rgba(255,255,255,0.9);
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E","ＭＳ Ｐ明朝", "MS PMincho", serif;
}

#topics article header .date p {
	position: relative;
	width: 70px;
	height: 100px;
	border-bottom: 3px solid #7c0000;
}

#topics article header .date p span { position: absolute; }

#topics article header .date p .year {
	top: 5px;
	left: 0;
	font-size: 18px;
	font-size: 1.8rem;
	text-align: center;
	width: 100%;
}

#topics article header .date p .month {
	top: 32px;
	left: 10px;
	font-size: 22px;
	font-size: 2.2rem;
}

#topics article header .date p .day {
	top: 62px;
	right: 10px;
	font-size: 22px;
	font-size: 2.2rem;
}

#topics article header h1,
#topics article header h1 a {
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: normal;
	text-align: center;
	text-decoration: none;
	margin: 0 0 0.4em;
}

#topics #sidebar { width: 300px; }

#topics #sidebar ul { padding: 0 0 20px; }

#topics #sidebar ul li a { text-decoration: none; }

#topics #sidebar ul li { margin: 0 0 20px; }

#topics #sidebar ul li a figure {
	width: 100%;
	display: table;
}

#topics #sidebar ul li a p.ph,
#topics #sidebar ul li a .box {
	vertical-align: middle;
	display: table-cell;
}

#topics #sidebar p.ph { width: 90px; }

#topics #sidebar p.ph img {
	width: 100%;
	height: 60px!important;
	object-fit: cover;
}

#topics #sidebar ul li a .box {
	line-height: 1.4;
	padding-left: 10px;
}

@media screen and (max-width: 959px) {
	#topics #container {
		margin: 0 30px;
		width: auto;
	}

	#topics #content {
		width: 66%;
		float: right;
	}
	
	#topics #sidebar { width: 30%; }
}

@media screen and (max-width: 767px) {
	#topics #container { margin: 0 15px; }

	#topics #content {
		width: 100%;
		float: none;
	}
	
	#topics article header p.ph img { width: 100%; }
	
	#topics article header .date { left: 15px; }
	
	#topics article header h1,
	#topics article header h1 a {
		font-size: 18px;
		font-size: 1.8rem;
	}
	
	#topics #sidebar { width: 100%; }
	
	#topics #sidebar ul li { margin: 0 0 15px; }
}


/* ----------------------------------------------------------------------
	staff blog
---------------------------------------------------------------------- */

#blog #container {
	padding: 10px 0 0;
	margin: 0 auto;
	width: 960px;
}

#blog p.archive-ttl {
	font-size: 20px;
	font-size: 2rem;
	text-align: center;
	margin: 0 0 1em;
}

#blog #content {
	width: 630px;
	float: right;
}

#blog article header {
	padding: 0 0 4px;
	margin: 0 0 1em;
	border-bottom: 1px solid #eee;
}

#blog article header h1,
#blog article header h1 a {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: normal;
	text-decoration: none;
}

#blog #sidebar { width: 300px; }

#blog #sidebar ul { padding: 0 0 20px; }

#blog #sidebar ul li { margin: 0 0 15px; }

@media screen and (max-width: 959px) {
	#blog #container {
		margin: 0 30px;
		width: auto;
	}

	#blog #content {
		width: 66%;
		float: right;
	}
	
	#blog #sidebar { width: 30%; }
}

@media screen and (max-width: 767px) {
	#blog #container { margin: 0 15px; }

	#blog #content {
		width: 100%;
		float: none;
	}
	
	#blog #sidebar { width: 100%; }
	
	#blog #sidebar ul li { margin: 0 0 15px; }
}


/* ----------------------------------------------------------------------
	access
---------------------------------------------------------------------- */

/* g-map */
#access #g-map { height: 600px; }
#access #g-map iframe{ width: 100%; }

@media screen and (max-width: 959px) {
	#access #g-map { height: 360px; }
	#access #g-map iframe { height: 360px; }
}

@media screen and (max-width: 767px) {
	#access #g-map { height: 260px; }
	#access #g-map iframe { height: 260px; }
}

/* access-box */
#access .access-box {
	font-size: 14px;
	font-size: 1.4rem;
	padding: 97px 0 0;
	margin: -97px 0 70px;
}

#access .access-box h3 {
	background: url(../img/line_02.gif) 0 bottom  repeat-x;
	font-size: 16px;
	font-size: 1.6rem;
	padding: 8px 10px;
	margin: 0 0 10px;
	border-top: 3px solid #381004;
}

#access .access-box dl {
	background: url(../img/line_02.gif) 0 bottom repeat-x;
	padding: 0 0 13px;
	margin: 0 0 14px;
}
#access .access-box dl.taxi {
	background: none;
	padding: 0;
	margin: 0;
}

#access .access-box dl dt {
	font-weight: bold;
	padding-left: 10px;
}

#access .access-box dl dd { margin: -1.6em 0 0 180px; }

#access .access-box p.train,
#access .access-box p.bus,
#access .access-box p.walk {
	background-color: #ebe7e4;
	background-position: 12px center;
	background-repeat: no-repeat;
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
	padding: 12px 10px 12px 36px;
}
#access .access-box p.train { background-image: url(../../img/access/icon_train.gif); }
#access .access-box p.bus { background-image: url(../../img/access/icon_bus.gif); }
#access .access-box p.walk { background-image: url(../../img/access/icon_walk.gif); }

#access .access-box p.arrow {
	font-size: 0;
	text-align: center;
	line-height: 0;
	margin: 0 0 8px;
}

#access ul.timetable {
	width: 700px;
	margin-left: -30px;
}

#access ul.timetable li {
	margin-left: 30px;
	width: 320px;
	float: left;
}

#access ul.timetable li a {
	background: #381004;
	color: #fff;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	padding: 14px 10px;
	display: block;
}
#access ul.timetable li a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}

#access #acceemap {
	padding: 97px 0 0;
	margin: -97px 0 0;
}


/* c-right */
#access #content .c-right p.ph,
#access #content .c-right p.logo { margin: 0 0 15px; }

#access #content .c-right p.address span { display: block; }

#access #content .c-right p.tel { margin: 0 0 15px; }
#access #content .c-right p.tel a { text-decoration: none; }
#access #content .c-right p.tel span { display: block; }

#access #content .c-right p.tel .en {
	line-height: 1;
	margin: 0 0 6px;
}

#access #content .c-right p.tel .en span {
	font-size: 26px;
	font-size: 2.6rem;
	display: inline;
}

#access #content .c-right ul.timetable {
	width: auto;
	margin: 0;
}
#access #content .c-right ul.timetable li {
	margin: 0 0 10px;
	width: auto;
	float: none;
}

@media screen and (max-width: 959px) {
	#access .access-box {
		padding: 0;
		margin: 0 0 70px;
	}
	
	#access #content .c-right p.ph img { width: 100%; }
	
	#access .access-box h3 { text-align: center; }
	
	#access .access-box dl { margin: 0 0 14px; }
	
	#access .access-box dl dt {
		text-align: center;
		margin: 0 0 0.8em;
	}
	
	#access .access-box dl dd { margin: 0; }
	
	#access .access-box dl.taxi dd { text-align: center; }
	
	#access ul.timetable {
		width: auto;
		margin-left: 0;
	}
	
	#access ul.timetable li {
		margin: 0 0 10px;
		width: auto;
		float: none;
	}
	
	#access #acceemap {
		padding: 0;
		margin: 0;
	}
}

@media screen and (max-width: 767px) {
	#access .access-box dl {
		padding-left: 15px;
		padding-right: 15px;
	}
	
	#access .access-box p.train span,
	#access .access-box p.bus span { display: block; }
	
	#access #content .c-right {
		text-align: center;
		padding: 0 15px;
		margin: 0 0 50px;
	}
	
	#access #content .c-right p.address span,
	#access #content .c-right p.tel span {
		padding-right: 0;
		display: block;
	}
	
	#access ul.timetable { margin: 0 15px; }
	
}


/* ----------------------------------------------------------------------
	privacy
---------------------------------------------------------------------- */

#privacy .con-box h3 {
	background: url(../img/line_02.gif) 0 bottom repeat-x;
	font-size: 16px;
	font-size: 1.6rem;
	padding: 0 0 4px;
	margin: 0 0 15px;
}


/* ----------------------------------------------------------------------
	sitemap
---------------------------------------------------------------------- */

#sitemap .sitemap-box { margin: 0 0 60px; }

#sitemap .sitemap-box p {
	width: 170px;
	float: left;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
}

#sitemap .sitemap-box ul {
	border-top: 1px solid #eee;
	width: 500px;
	float: right;
}
	
#sitemap .sitemap-box ul li { border-bottom: 1px solid #eee; }

#sitemap .sitemap-box ul li.btm { border: none; }

#sitemap .sitemap-box ul li ul {
	background: #f8f8f8;
	width: auto;
	float: none;
	border: none;
}

#sitemap .sitemap-box p a,
#sitemap .sitemap-box ul li a {
	text-align: left;
	text-decoration: none;
	line-height: 1;
	padding: 16px 10px 14px;
	display: block
}

#sitemap .sitemap-box p a .ja,
#sitemap .sitemap-box ul li a .ja {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bold;
	padding-right: 6px;
}

#sitemap .sitemap-box p a .en,
#sitemap .sitemap-box ul li a .en {
	color: #a18e87;
	font-size: 12px;
	font-size: 1.2rem;
}

#sitemap .sitemap-box ul li ul li { margin-left: 10px; }

@media screen and (max-width: 959px) {
	#sitemap .sitemap-box p { width: 25%; }
	
	#sitemap .sitemap-box ul { width: 70%; }
}

@media screen and (max-width: 767px) {
	#sitemap .sitemap-box p {
		width: auto;
		float: none;
		border-bottom: none;
	}
	
	#sitemap .sitemap-box ul {
		width: auto;
		float: none;
	}
}


/* ----------------------------------------------------------------------
	404 not found
---------------------------------------------------------------------- */

#not-found #content p.txt {
	text-align: center;
	margin: 60px 0 40px;
}

#not-found #content p.txt span {
	font-size: 30px;
	font-size: 3rem;
}

#not-found #content p.btn {
	text-align: center;
	margin: 0 auto 100px;
}


