@charset "utf-8";

/*++++++++++++++++++++++++++++++++++++++++++++++++
	BASE CSS
+++++++++++++++++++++++++++++++++++++++++++++++++/

/*------------------------------------------------
	Base style
------------------------------------------------*/
/* PCとスマホで表示切り替え PC=非表示、SP=表示 */
.pc {display: none !important;}
.sp {display: block !important;}

html {overflow-y: scroll;}

body {
	background: #c4b081;
	color: #4f4127;
	font-size: 15px;
	/*	font-family:"verdana", "Helvetica", "sans-serif";*/
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	line-height: normal;
	-webkit-text-size-adjust: 100%;/*iPhoneでフォントサイズを変えない*/
	word-break: break-all;/*翻訳*/
}

/* PC専用スタイル */
@media ( min-width : 768px ) {
	/* PCとスマホで表示切り替え PC=表示、SP=非表示 */
	.pc {display: block !important;}
	.sp {display: none !important;}
	/* 画面サイズを小さくした時に背景が切れるのを防ぐ */
	body {min-width: 1000px;}
}

/*------------------------------------------------
	Clearfix
------------------------------------------------*/
.clearfix:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
}

.clearfix { display:inline-block; }
/* Hides from IE-mac \*/
* html .clearfix { height:1%; }
.clearfix { display:block; }
/* End hide from IE-mac */

/*------------------------------------------------
	Common Style
------------------------------------------------*/
/* Img style
-----------------------------------*/
img {
	max-width: 100%;
	height: auto;
	width /***/:auto;
}

/* link style
-----------------------------------*/
/* タップ時のアウトラインを消去 */
a {-webkit-tap-highlight-color: rgba(0,0,0,0);}

a:link, a:visited {color: #865331; text-decoration: underline;}
a:active, a:hover {color: #901f4f; text-decoration: underline;}

#Footer a:link, #Footer a:visited {color: #453c1e; text-decoration: none;}
#Footer a:active, #Footer a:hover {color: #7f734c; text-decoration: underline;}

#Footer .address a:link, #Footer .address a:visited {color: #453c1e; text-decoration: underline;}
#Footer .address a:active, #Footer .address a:hover {color: #7f734c; text-decoration: underline;}

#blog a:link, #blog a:visited {color: #1d1410; text-decoration: none;}
#blog a:active, #blog a:hover {color: #1d1410; text-decoration: none;}

/* Font size
-----------------------------------*/
.px0 {font-size: 0px;}
.px10 {font-size: 10px;}
.px11 {font-size: 11px;}
.px12 {font-size: 12px;}

/* Font color
-----------------------------------*/
.color {color: #9d2756;}

/* Text-Align style
-----------------------------------*/
.center {text-align: center;}
.left {text-align: left;}
.right {text-align: right;}

/* Vertical-Align style
-----------------------------------*/
.verT {vertical-align: top;}
.verM {vertical-align: middle;}
.verB {vertical-align: bottom;}

/* Float style
-----------------------------------*/
.floatL {float: left;}
.floatR {float: right;}
.floatClear {clear: both!important;}

/* Position style
-----------------------------------*/
.relative {position: relative;}
.absolute {position: absolute;}

/* Reset style
-----------------------------------*/
.nomargin {margin: 0 !important;}
.noborder {border: none !important;}
.nopadding {padding: 0 !important;}
.nobg {background: none !important;}
p.non {padding: 0 !important;}

/* Secction style
-----------------------------------*/
.section {
	clear: both;
	margin: 0 15px 45px 15px;
	/*line-height: 200% !important;*/
	line-height: 200%;
}

.section p {padding: 0 0 20px 0;}

.section h2.line {
	/*background:url(../images/common/bg_line.gif) repeat-x left bottom;*/
	padding: 0 0 0 0;
	margin: 0 15px 30px 0;
}

.block {margin: 0 0 0 15px;}


/*------------------------------------------------
	Basic Layout
------------------------------------------------*/
body {background-color: #c4b081;}

#Header {background-color: #2e4416;}

#Container {}

/*配置テスト用の背景表示*/
/*.container {background:url(../images/common/bg_test.png) no-repeat left top !important;}*/

#Contents {
	clear: both;
	padding: 0 2% 15px;
}

#Footer {font-size: 10px;}

/* PC専用スタイル */
@media ( min-width : 768px ) {
	/*body {background: #c4b081 url(../images/common/bg_header.png) repeat-x 50% 0;}*/
	#Header_bg {
		background: #c4b081 url(../images/common/bg_header.png) repeat-x 50% 0;/*翻訳*/
	}

	#Header {
		height: 220px;
		background: url(../images/common/bg_header.jpg) no-repeat left top;
	}

	#Contents {
		min-height: 500px;
		padding: 0 0 40px;
	}
}

/*------------------------------------------------
	Header
------------------------------------------------*/
#Header h1 {
	/*position: absolute;
	left: 0;
	top: 0;*/
	float: left;
	/*padding: 5px 0 0 15px;*/
	padding: 2px 5px 0 15px;
	color: #9b926a;
	font-size: 8px;
	line-height: 110%;
}

/* PC専用スタイル */
@media ( min-width : 768px ) {
	/*#Header h1 {
		position: relative;
		float: left;
		padding: 38px 0 0 15px;
	}*/
	#Header h1 {
		position: absolute;
		margin-left:210px;
		/*margin-top: 35px;*/
		margin-top: 24px;/*翻訳*/
		font-size: 10px;
		/*width: 320px;*//*翻訳*/
		width: 380px;
	}
}

/* Logo
-----------------------------------*/
#Logo {
	float: none;
	/*padding: 18px 0 8px 15px;*/
	padding: 18px 0 2px 15px;
}

#Logo a {
	display: block;
	width: 205px;
	/*height: 63px;*/
}

/* PC専用スタイル */
@media ( min-width : 768px ) {
	#Logo {
		float: left;
		padding: 7px 0 0 0;
	}
	#Logo a {
		height: 63px;
	}
}
/* Translate
-----------------------------------*/
#Translate {
	float: left;
	padding: 0;
	margin: 0;
}
/* PC専用スタイル */
@media ( min-width : 768px ) {
	#Translate {
		float: right;
		margin-top: 2px;
	}
}
/* Navigation
-----------------------------------*/
nav#Navigation a#menu {
	position: absolute;
	/*top: 21px;*/
	top: 27px;
	right: 0;
	display: block;
	width: 60px;
	height: 60px;
	background: url(../images/common/icon_sprites.png) no-repeat -80px 0;
	cursor: pointer;
}

#Header nav#Navigation a.menuOpen {background-position: -140px 0;}

nav#Navigation a#menu span {
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}


#jMenu {
	display: block;
	float: none;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

.jMenu > li {
	position: relative;
	display: block;
	float: none;
	margin-left: 0;
	border-top: 1px dotted #728678;
	border-bottom: 1px dotted #001907;
	background-color: #2e4416;
}

.jMenu li a {
	display: block;
	width: 100%;
	/*height: 43px;*/
	min-height: 43px;
	padding-left: 10px;
	background-image: none;
	color: #9B926A;
	font-size: 13px;
	/*font-weight: bold;*/
	text-align: left;
	text-decoration: none;
	/*line-height: 43px;*/
	line-height: 13px;/*翻訳*/
	padding: 15px 20px 15px 10px;/*翻訳*/
	cursor: pointer;
}
.jMenu li a span.gNavSubtitle{
	font-size: 11px;
}

.jMenu > li > a:after {
	position: absolute;
	right: 12px;
	top: 11px;
	display: block;
	content: "";
	width: 20px;
	height: 20px;
	background: url(../images/common/icon_sprites.png) no-repeat -80px -60px;
}

.jMenu > li > a.open:after {background-position: -120px -60px;}

.jMenu > li.gNavWedding > a:after,
.jMenu > li.gNavEvent > a:after,
.jMenu > li.gNavAccess > a:after,
.jMenu > li.gNavKankou > a:after {
	display: none;
}

/* Lower levels */
.jMenu li ul {
	position: relative;
	display: none;
	margin: 0;
	padding: 0;
	z-index: 9999;
}

.jMenu li ul li {
	display: block;
	padding: 0;
	border-top: 1px dotted #5c5c5c;
	background-color: #000000;
}

.jMenu li ul li a {
	padding-left: 20px;
	color: #ffffff;
	text-decoration: none;
}

/* PC専用スタイル */
@media ( min-width : 768px ) {
	nav#Navigation a#menu {display: none;}
	
	#jMenu .pc {display: inline-block !important;}
	
	#jMenu {
		display: table !important;
		margin-top: 9px;
		border-top: 1px solid #56543f;
		background: url(../images/common/bg_navi.png) no-repeat left top;
	}

	.jMenu > li {
		display: table-cell;
		border-top: none;
		border-bottom: none;
		background: url(../images/common/bg_navi.png) no-repeat right top;
		vertical-align: middle;
	}

	.jMenu > li > a {
		width: 138px;
		padding-left: 0;
		background: url(../images/common/bg_gNav.png) repeat-x 0 0;
		font-size: 12px;
		font-weight: bold;
		text-align: center;
		vertical-align: middle;
		line-height: 43px;/*翻訳*/
		height: 43px;/*	翻訳*/
		padding: 0;/*翻訳*/
	}
	
	.jMenu > li.gNavLock > a,
	.jMenu > li.gNavGroup > a {
		width: 160px;
	}
	.jMenu > li.gNavMap > a {
		width: 130px;
	}
	
	.jMenu > li > a:hover {color: #c1ba98;}
	
	.jMenu > li > a > span {
		position: relative;
		display: inline-block;
		/*height: 43px;*/
		/*margin-left: 52px;*/
		margin-left: 40px;
		text-align: center;
		line-height: 1;
		vertical-align: middle;
	}

	.jMenu > li > a > span:before {
		position: absolute;
		left: -50px;
		top: 0;
		top: 50%;
		display: block;
		content: " ";
		width: 52px;
		height: 43px;
		margin-top: -20px;
		background: url(../images/common/icon_sprites.png) no-repeat 0 0;
	}
	
	/* アイコン */
	.jMenu li.gNavLock a span:before {background-position: 0 0;}
	.jMenu li.gNavMap a span:before {background-position: 0 -60px;}
	.jMenu li.gNavGroup a span:before {
		left: -45px;
		background-position: 0 -120px;
	}
	.jMenu li.gNavDiscount a span:before {background-position: 0 -180px;}
	.jMenu li.gNavDigitalmenu a span:before {background-position: 0 -360px;}
	.jMenu li.gNavFilm a span:before {background-position: 0 -240px;}
	.jMenu li.gNavWedding a span:before {background-position: 0 -300px;}
	.jMenu li.gNavEvent{}
	.jMenu li.gNavAccess{}
	.jMenu li.gNavKankou{}
	
	.jMenu > li > a:after {display: none;}
	
	/* 2016.12.27 デジタルカタログ用にメニューを3行にしたのでfontサイズを1px小さくした */
	/* 2017.01.05 団体様メニューを単独化したのでコメント */
	/*.jMenu li.gNavDiscount > a {
		font-size: 11px;
	}*/

	/* Lower levels */
	.jMenu li ul {
		position: absolute;
		z-index: 9999;
		display: none;
/*		display:block;*/
		margin-top: 0;
	}
	
/*	.jMenu li:hover ul {display: block;}*/

	.jMenu li ul li {
		display: block;
		border-top: none;
		background-color: #000000;
		filter: alpha(opacity=80);
		-moz-opacity: 0.80;
		opacity: 0.80;
	}

	.jMenu li ul li a {
		display: block;
		/*width: 166px;*/
		width: 138px;
		height: auto;
		min-height: 43px;
		padding: 15px 5px;
		border-bottom: 1px solid #322f32;
		color: #ffffff;
/*		font-size: 12px;*/
		line-height: 1.1;
	}
	
	.jMenu li.gNavLock ul li a,
	.jMenu li.gNavGroup ul li a {
		width: 160px;
	}
	.jMenu li.gNavMap ul li a {
		width: 130px;
	}

	.jMenu li ul li a:hover {
		filter: alpha(opacity=80);
		-moz-opacity: 0.80;
		opacity: 0.80;
	}
}

/* SubNavi
-----------------------------------*/
#SubNavi {display:none;}

/* PC専用スタイル */
@media ( min-width : 768px ) {
	#SubNavi {
		display: block;
		float: right;
		/*margin-top: 37px;*/
		margin-top: 8px;/*翻訳*/
		max-width: 480px;
		clear: right;
	}
	
	#SubNavi ul {
		/*margin: 3px 0 0 0;*/
		margin: 0;/*翻訳*/
		padding: 7px 0 0 0;
	}
	
	#SubNavi li {
		/*float: left;*/
		float: right;/*翻訳*/
		margin: 0;
		padding: 0 10px;
		/*border-right: 1px solid #9b926a;*/
		border-left: 1px solid #9b926a;
	}

	#SubNavi li:first-child {
		padding-right: 0;/*翻訳*/
	}

	#SubNavi li:last-child {
		/*padding-right: 0;*/
		/*border-right: none;*/
		border-left: none;/*翻訳*/
	}
	
	#SubNavi li a {
		/*padding: 5px;*/
		padding: 3px 5px;/*翻訳*/
		color: #9b926a;
		font-size: 12px;
		/*font-weight:bold;*/
		text-decoration: none;
		line-height: normal;
		cursor: pointer;
	}
	
	#SubNavi li a:hover {color: #c5bd96;}
}

/* Lang
-----------------------------------*/
#Lang {display: none;}

/* PC専用スタイル */
@media ( min-width : 768px ) {
	#Lang {
		display: block;
		margin-bottom: 5px;
		text-align: right;
	}
	
	#Lang li {
		display: inline-block;
		padding: 0 1px 0 0;
	}
	
	#Lang li a {
		display: block;
		/*width: 60px;*/
		min-width: 60px;/*翻訳*/
		height: 33px;
		color: #9b926a;
		border-radius: 0 0 3px 3px;
		background-color: #3d4246;
		background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAxIDEiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPgo8bGluZWFyR3JhZGllbnQgaWQ9Imc2MTMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMCUiIHkxPSIwJSIgeDI9IjAlIiB5Mj0iMTAwJSI+CjxzdG9wIHN0b3AtY29sb3I9IiM0NDQ4NEMiIG9mZnNldD0iMCIvPjxzdG9wIHN0b3AtY29sb3I9IiMxODFDMUYiIG9mZnNldD0iMSIvPgo8L2xpbmVhckdyYWRpZW50Pgo8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2c2MTMpIiAvPgo8L3N2Zz4=);
		background-image: -moz-linear-gradient( 90deg, rgb(9,11,13) 0%, rgb(91,97,102) 100%);
		background-image: -webkit-linear-gradient( 90deg, rgb(9,11,13) 0%, rgb(91,97,102) 100%);
		background-image: -ms-linear-gradient( 90deg, rgb(9,11,13) 0%, rgb(91,97,102) 100%);
		font-weight: bold;
		font-size: 10px;
		text-align: center;
		text-decoration: none;
		line-height: 33px;
		padding: 0 15px;/*翻訳*/
	}

	#Lang li a:hover {color: #c5bd96;}
}

/*------------------------------------------------
	Topimage
------------------------------------------------*/
#Topimage {
	position: relative;
	clear: both;
	margin: 0;
}

#Topimage .fadein-img {display: none;}

/*------------------------------------------------
	Crumbs
------------------------------------------------*/
#Crumbs {
	height: auto;
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 12px;
	line-height: 20px;
}

#Crumbs ul {text-align: left;}

#Crumbs li {
	display: inline-block;
	margin-left: 5px;
}

#Crumbs li a {color: #821a02;}

#Crumbs li a:hover {color: #ac2203;}

#Crumbs li:first-child a {
	color: #4f4127;
	text-decoration: none;
}

/* PC専用スタイル */
@media ( min-width : 768px ) {
	#Crumbs {
		height: 20px;
		margin-top: 35px;
		margin-bottom: 40px;
	}
	
	#Crumbs ul {text-align: right;}
}

/*------------------------------------------------
	Footer
------------------------------------------------*/
#Footer {
	background-color: #c9bb9d;
	font-family: "verdana", "Helvetica", "sans-serif";
}

/* Plink
-----------------------------------*/
#Footer #Plink {display: none;}

/* PC専用スタイル */
@media ( min-width: 768px) {
	#Footer #Plink {
		display: block;
		padding: 42px 0 45px;
		border-top: 1px solid #e2dccf;
		border-bottom: 1px solid #7a6b45;
		color: #453c1e;
	}
	
	#Footer #Plink ul {margin: 0 0 12px 64px;}
	
	#Footer #Plink ul li {
		display: inline-block;
		margin-right: 12px;
	}
	
	#Footer #Plink ul li:first-child {
		/*width: 147px;*/
		width: 210px; /* 2016.12.27 デジタルカタログ用に文字を追加した */
		margin-right: 20px;
		border-right: 1px solid #4f4127;
		color: #4f4127;
		font-size: 12px;
	}
	
	#Footer #Plink ul:last-child li {
		width: auto;
		margin-right: 14px;
		padding-right: 14px;
		border-right: 1px solid #4f4127;
	}
	
	#Footer #Plink ul:last-child li:last-child {
		margin-right: 0;
		padding-right: 0;
		border-right: none;
	}
	
	#Footer #Plink ul li a {
		color: #7f734c;
		font-size: 10px;
	}
	
	#Footer #Plink ul:last-child li a {
		color: #4f4127;
		font-size: 12px;
	}
	
	/* 2016.03.07 メニューが増えて2行になる場合 ulのclassに『line clearfix』を追加する */
	#Footer #Plink ul.line {margin: 0 0 12px 64px;}
	#Footer #Plink ul.line li {
		padding-top: 3px;
	}
	#Footer #Plink ul.line li:first-child {
		float: left;
		padding-top: 12px;
		padding-bottom: 12px;
	}
}

/* address
-----------------------------------*/
#Footer #address {
	padding: 16px 0 20px;
	border-top: 1px solid #e9e9e9;
	background-color: #e8e2d5;
	color: #4f4127;
	word-break: break-all;
	word-wrap: break-word;
}

#Footer #address h2 {padding-left: 20px;}

#Footer #address p {
	margin-top:9px;
	padding:0 20px;
	line-height:1;
}

#Footer #address p.copy {
	border: none;
	text-align: center;
}

/* PC専用スタイル */
@media ( min-width : 768px ) {
	#Footer #address p {
		border-left: 1px solid #4f4127;
		line-height: 25px;
	}

	Footer #address p {padding-left: 20px;}

	#Footer #address p.copy {text-align: right;}
}

/* SNSボタン 2017.07.24 追加
-----------------------------------*/
#snsButtons {
	margin-bottom: 10px;
	text-align: center;
}
#snsButtons li {
	display: inline-block;
	
}

#snsButtons li .fb-like span {
	vertical-align: baseline !important;
}

/*---------------------------------------------------
	noscript
----------------------------------------------------*/
.noscript {display: none;}


/*------------ table style  ------------*/
/* 使用しているかどうか不明 */
a img {border: none;}

table.table-01 {
	border: 1px #D9D9D9 solid;
	border-collapse: collapse;
	border-spacing: 0px;
}

table.table-01 caption {
	text-align:center;
}

table.table-01 th,
table.table-01 td {
	padding: 6px 6px 6px 12px;
}

table.table-01 th {
	background: #336633;
	text-align: center;
	white-space: nowrap;
	color: #ffffff;
	font-size : 95%;
}

table.table-01 td {
	text-align:left;
	white-space: nowrap;
}

table.table-01 col.nendo {
	background: #d2e0d2;
	font-size: 92%;
}

table.table-01 col.media {
	background: #ecfff5;
	font-size: 75%;
}

table.table-01 col.title {
	background: #F2F5FF;
	font-size: 75%;
}

table.table-01 col.name {
	background: #d8e4de;
	font-size: 75%;
}
