@charset "utf-8";
/*
 *  cmn_layout.css
 *
 *  version --- 1.0
 *  updated --- 2015/08/25
 */


/* 全体
---------------------------------------------------------- */
body {
	background: #fffef7;
	color: #333;
	font-size: 14px;
	overflow-x: hidden \9;
	min-width: 1000px;
	width: 100%;
}

body:not(:target) {
	overflow-x: visible \9;
}

body.fontLarge {
	font-size: 20px;
}

body .rollover:hover {
	opacity: 0.7;
}
body .rollover:hover img {
	-ms-filter: 'alpha(opacity=70)';
	background: #fffef7;
}


/* ヘッダー
---------------------------------------------------------- */
#headerWrapper {
	position: relative;
	z-index: 200;
	height: 95px;
	background: #fff;
	border-top: 5px solid #603580;
	box-shadow: rgba(153,153,153,0.7) 0px 2px 1px 0px;
	text-align: center;
	behavior: url(../PIE.htc);
}

#header {
	display: inline-block;
	width: 960px;
	height: 95px;
	text-align: left;
}
	#header .flR {
		height: 64px;
	}

/* ロゴ */
#logo {
	float: left;
	width: 240px;
	margin-top: 18px;
}

/* 文字サイズ・言語切替 */
#fontSize, #language {
	display: inline-block;
	margin-top: 12px;
	margin-bottom: 21px;
	padding: 0 10px;
	border-radius: 2px;
	background: #d7ccdd;
	font-size: 12px;
	color: #666;
	behavior: url(../PIE.htc);
}
#fontSize, #language {
	margin-left: 5px;
}
	#fontSize dt {
		float: left;
		margin-right: 12px;
		line-height: 31px;
	}
	#fontSize dd {
		float: left;
		width: 52px;
		height: 23px;
		margin-top: 5px;
		margin-bottom: 3px;
		margin-right: 8px;
		cursor: pointer;
	}
	#fontSize dd:last-child {
		margin-right: 0;
	}
	#fontSize #fontRegular {
		background: url(../img/fontsizeRegular.jpg) no-repeat;
	}
	#fontSize .fontRegularCurrent {
		background: url(../img/fontsizeRegular_current.jpg) no-repeat !important;
	}
	#fontSize #fontLarge {
		background: url(../img/fontsizeLarge.jpg) no-repeat;
	}
	#fontSize .fontLargeCurrent {
		background: url(../img/fontsizeLarge_current.jpg) no-repeat !important;
	}
		#fontSize #fontRegular span,
		#fontSize #fontLarge span {
			display: none;
		}
	#fontSize > *:first-child + * + * {	/* IE8 */
		margin-right: 0;
	}
	#language li {
		float: left;
		margin-right: 12px;
	}
	#language li:last-child {
		margin-right: 0;
	}
	#language > *:first-child {	/* IE8 */
		margin-right: 12px;
	}
		#language li a {
			line-height: 31px;
			color: #666;
		}
		#language li a img {
			margin-left: 3px;
			vertical-align: baseline;
		}

/* グローバルナビ */
#gNavi {
	float: right;
	width: 697px;
	height: 31px;
}
	#gNavi li {
		float: left;
	}
		#gNavi li > a {
			display: block;
			height: 31px;
		}
			#gNavi li > a > span {
				display: none;
			}

/* グローバルナビ　hover・current */
#gNavi li#navAbout {
	width: 175px;
}
	#gNavi li#navAbout > a {
		width: 175px;
		background: url(../img/gNavi01.gif) no-repeat;
	}
	#gNavi li#navAbout > a:hover {
		background: url(../img/gNavi01_current.gif) no-repeat;
	}
	#gNavi li#navAbout > a.current {
		background: url(../img/gNavi01_current.gif) no-repeat;
	}

#gNavi li#navProfit {
	width: 143px;
}
	#gNavi li#navProfit > a {
		width: 143px;
		background: url(../img/gNavi02.gif) no-repeat;
	}
	#gNavi li#navProfit > a:hover {
		background: url(../img/gNavi02_current.gif) no-repeat;
	}
	#gNavi li#navProfit > a.current {
		background: url(../img/gNavi02_current.gif) no-repeat;
	}

#gNavi li#navEvent {
	width: 101px;
}
	#gNavi li#navEvent > a {
		width: 101px;
		background: url(../img/gNavi03.gif) no-repeat;
	}
	#gNavi li#navEvent > a:hover {
		background: url(../img/gNavi03_current.gif) no-repeat;
	}
	#gNavi li#navEvent > a.current {
		background: url(../img/gNavi03_current.gif) no-repeat;
	}

#gNavi li#navMap {
	width: 103px;
}
	#gNavi li#navMap > a {
		width: 103px;
		background: url(../img/gNavi04.gif) no-repeat;
	}
	#gNavi li#navMap > a:hover {
		background: url(../img/gNavi04_current.gif) no-repeat;
	}
	#gNavi li#navMap > a.current {
		background: url(../img/gNavi04_current.gif) no-repeat;
	}

#gNavi li#navAccess {
	width: 83px;
}
	#gNavi li#navAccess > a {
		width: 83px;
		background: url(../img/gNavi05.gif) no-repeat;
	}
	#gNavi li#navAccess > a:hover {
		background: url(../img/gNavi05_current.gif) no-repeat;
	}
	#gNavi li#navAccess > a.current {
		background: url(../img/gNavi05_current.gif) no-repeat;
	}

#gNavi li#navGallery {
	width: 92px;
}
	#gNavi li#navGallery > a {
		width: 92px;
		background: url(../img/gNavi06.gif) no-repeat;
	}
	#gNavi li#navGallery > a:hover {
		background: url(../img/gNavi06_current.gif) no-repeat;
	}
	#gNavi li#navGallery > a.current {
		background: url(../img/gNavi06_current.gif) no-repeat;
	}

/* グローバルナビ　ドロップダウン */
#gNavi li ul {
	display: none;
	font-size: 14px;
}
#gNavi li ul.show {
	display: inline-block;
	background: #fff;
	box-shadow: rgba(153,153,153,0.7) 2px 2px 1px 0px;
	border-radius: 0 0 4px 4px;	/* CSS3PIE対応のため個別指定不可 */
	behavior: url(../PIE.htc);
}
	#gNavi li#navAbout ul li {
		width: 175px;
		text-align: center;
	}
	#gNavi li#navProfit ul li {
		width: 143px;
		text-align: center;
	}
	#gNavi li#navEvent ul li {
		width: 101px;
		text-align: center;
	}
	#gNavi li#navMap ul li {
		width: 103px;
		text-align: center;
	}
	
		#gNavi li ul li a {
			display: block;
			text-decoration: none;
			color: #333;
		}
		#gNavi li ul li a:hover {
			background: #ded8e7;
		}
			#gNavi li ul li a span {
				display: block;
				height: 30px;
				margin: 0 5px;
				border-bottom: 1px dotted #999;
				text-indent: 2px;
				line-height: 30px;
			}
	#gNavi li ul li.dropLast {
		border-radius: 0 0 4px 4px;	/* CSS3PIE対応のため個別指定不可 */
		behavior: url(../PIE.htc);
	}
		#gNavi li ul li.dropLast a {
			padding-bottom: 4px;
			border-radius: 0 0 4px 4px;	/* CSS3PIE対応のため個別指定不可 */
			behavior: url(../PIE.htc);
		}
			#gNavi li ul li.dropLast a span {
				border: none;
			}


/* パンくずリスト
---------------------------------------------------------- */
#breadcrumb {
	position: relative;
	z-index: 100;
	background: #d7ccdd;
	border-bottom: 1px solid #fff;
	box-shadow: rgba(153,153,153,0.7) 0px 2px 1px 0px;
	font-size: 92.9%;
	behavior: url(../PIE.htc);
}
	#breadcrumb ul {
		display: block;
		width: 950px;
		height: 30px;
		margin: 0 auto;
		padding-left: 10px;
		text-align: left;
		overflow: hidden;
	}
		#breadcrumb ul li {
			float: left;
			padding-right: 0.5em;
			line-height: 30px;
		}
		#breadcrumb ul li:before {
			content: "> ";
		}
		#breadcrumb ul li:first-child:before {
			content: "";
		}
			#breadcrumb ul li a {
				color: #333;
			}


/* メインイメージ
---------------------------------------------------------- */
#pageTitle {
	width: 100%;
	height: 200px;
	background: url(../img/slideBg.jpg);
}
	#pageTitle h1 {
		width: 960px;
		margin: 0 auto;
	}
	.pageTitleShadow {
		position: relative;
		z-index: 100;
		width: 100%;
		height: 2px;
		margin-top: -2px;
		background: url(../img/shadow.png) repeat-x;
	}


/* 本文
---------------------------------------------------------- */
#main {
	text-align: center;
	background: #fffef7;
}

#contentsWrapper {
	display: inline-block;
	z-index: 100;
	width: 960px;
	margin: 0 auto;
	background: url(../img/subNaviBg.jpg) right repeat-y;
	text-align: left;
}

#contents {
	float: left;
	width: 720px;
	padding: 0 10px;
	padding-top: 30px;
}
	#contents a {
		color: #333;
	}

/* 見出し01 大見出し */
.hStyle01 {
	position: relative;	/* CSS3PIE対応のため個別指定不可 */
	width: 700px;
	margin-bottom: 20px;
	padding: 0 10px;
	padding-top: 4px;
	border-top: 3px solid #603580;
	border-radius: 0 0 2px 2px;	/* CSS3PIE対応のため個別指定不可 */
	background: url(../img/hStyle01.jpg) right repeat-y;
	text-align: left;
	font-size: 157.1%;
	behavior: url(../PIE.htc);
}

/* 見出し02 中見出し */
.hStyle02 {
	width: 680px;
	margin-bottom: 20px;
	padding: 0 10px;
	padding-left: 30px;
	border-bottom: 2px solid #603580;
	background: url(../img/hStyle02.png) left no-repeat;
	text-align: left;
	font-size: 142.9%;
}

/* 見出し03 見出し02のマークのみ */
.hStyle03 {
	background: url(../img/hStyle03.png) left no-repeat;
	font-size: 128.6%;
	color: #5f337f;
}

/* 見出し04 */
.hStyle04 {
	margin-bottom: 20px;
	padding-left: 3px;
	padding-bottom: 5px;
	background: url(../img/hStyle04.gif) bottom repeat-x;
	font-size: 128.6%;
}

/* 本文01 */
.section01 {
	margin-bottom: 60px;
}

/* 本文02 */
.section02 {
	margin-bottom: 30px;
}
	.section02 > p {
		margin-bottom: 10px;
	}
	.section02 > p:last-child {
		margin-bottom: 0;
	}
	/* 画像右上回り込み */
	.section02 .imgWrapper01 {
		float: right;
		width: 252px;
		padding-left: 18px;
		text-align: center;
	}
		.section02 .imgWrapper01 img {
			border: 1px solid #aaa;
		}
		.section02 .imgWrapper01 p {
			margin-top: 3px;
			font-size: 85.7%;
		}
		/* 幅指定なしで線だけ適用　その他の要素は個別指定 */
		.section02 .imgWrapper02 img {
			border: 1px solid #aaa;
		}

/* 本文03 幅の狭いセクション */
.section03 {
	margin: 0 10px;
	margin-bottom: 30px;
}
	.section03 > p {
		margin-bottom: 10px;
	}
	.section03 > p:last-child {
		margin-bottom: 0;
	}

/* テーブル01 */
.table01 {
	position: relative;	/* CSS3PIE対応のため個別指定不可 */
	background: #fff;
	border-spacing: 0;
	border: 1px solid #668f3d;
	border-radius: 2px;
	behavior: url(../PIE.htc);
}
	.table01 th,
	.table01 td {
		padding: 6px 10px;
		border-top: 1px solid #668f3d;
	}
	.table01 th {
		background: #eff6e8;
		text-align: left;
	}
	.table01 td {
		border-left: 1px dotted #668f3d;
	}
	/* th・tdにも角丸処理（tableの角丸を潰さないため） */
	.table01 tr:first-child th {
		border-top: none;
		border-radius: 2px 0 0 0;	/* CSS3PIE対応のため個別指定不可 */
		behavior: url(../PIE.htc);
	}
	.table01 tr:first-child td {
		border-top: none;
		border-radius: 0 2px 0 0;	/* CSS3PIE対応のため個別指定不可 */
		behavior: url(../PIE.htc);
	}
	.table01 *:first-child + * + * + * + * + * th {
		border-radius: 0 0 0 2px;	/* CSS3PIE対応のため個別指定不可 */
		behavior: url(../PIE.htc);
	}
	.table01 *:first-child + * + * + * + * + * td {
		border-radius: 0 0 2px 0;	/* CSS3PIE対応のため個別指定不可 */
		behavior: url(../PIE.htc);
	}

/* テーブル02 */
.table02 {
	position: relative;	/* CSS3PIE対応のため個別指定不可 */
	background: #fff;
	border-spacing: 0;
	border: 1px solid #668f3d;
	border-radius: 2px;
	behavior: url(../PIE.htc);
}
	.table02 th,
	.table02 td {
		border-bottom: 1px dotted #668f3d;
		padding: 6px 10px;
	}
	.table02 th {
		text-align: left;
	}
	/* th・tdにも角丸処理（tableの角丸を潰さないため） */
	.table02 tr:first-child th {
		background: #eff6e8;
		border-bottom: 1px solid #668f3d;
		border-radius: 2px 2px 0 0;	/* CSS3PIE対応のため個別指定不可 */
		behavior: url(../PIE.htc);
	}
	.table02 *:first-child + * + * th {
		border-bottom: none;
		border-radius: 0 0 2px 0;	/* CSS3PIE対応のため個別指定不可 */
		behavior: url(../PIE.htc);
	}
	.table02 *:first-child + * + * td {
		border-bottom: none;
		border-radius: 0 0 0 2px;	/* CSS3PIE対応のため個別指定不可 */
		behavior: url(../PIE.htc);
	}

/* 2カラムブロック */
.twoColumnBlock li {
	position: relative;
	width: 310px;
	padding: 10px 15px;
	border: 1px solid #603580;
	border-radius: 2px;
	background: #fff;
	text-align: center;
	behavior: url(../PIE.htc);
}
	.twoColumnBlock li .blockHead {
		margin-bottom: 10px;
		text-align: left;
		font-size: 128.6%;
		color: #5f337f;
	}
	.twoColumnBlock li img {
		margin-bottom: 10px;
		border: 1px solid #aaa;
	}
	.twoColumnBlock li p {
		margin-bottom: 5px;
		text-align: left;
	}

/* 3カラムブロック */
.threeColumnBlock li {
	position: relative;
	float: left;
	width: 218px;
	height: 228px;
	margin: 0 10px;
	border: 1px solid #603580;
	border-radius: 2px;
	background: url(../../common/img/zoom01.gif) 188px 198px no-repeat, #fff;
	behavior: url(../PIE.htc);
	-pie-background: url(../common/img/zoom01.gif) 188px 198px no-repeat, #fff;
}
	.threeColumnBlock li a {
		display: block;
		height: 100%;
		padding: 10px 15px;
		text-decoration: none;
	}
	.threeColumnBlock li a:hover {
		opacity: 0.7;
	}
	.threeColumnBlock li a:hover img {
		-ms-filter: 'alpha(opacity=70)';
	}
	.threeColumnBlock li .blockHead {
		font-size: 114.3%;
		color: #5f337f;
	}
	.threeColumnBlock li img {
		position: absolute;
		top: 65px;
		left: 0;
		right: 0;
		margin: auto;
		border: 1px solid #aaa;
	}
	/* 薬師殿お札・お守り　一覧リンク */
	.threeColumnBlock li p.showList {
		z-index: 100;
		position: absolute;
		width: 188px;
		padding: 0 15px;
		top: 140px;
	}
		.threeColumnBlock li p.showList a {
			display: inline;
			height: auto;
			padding: 0;
			text-decoration: underline;
		}
/* 色違い（緑） */
.threeColumnBlock li.green {
	border: 1px solid #587b35;
	background: url(../../common/img/zoom02.gif) 188px 198px no-repeat, #fff;
	-pie-background: url(../common/img/zoom02.gif) 188px 198px no-repeat, #fff;
}
	.threeColumnBlock li.green h4 {
		color: #587b35;
	}
/* 文字サイズ大 */
.fontLarge .threeColumnBlock li {
	height: 238px;
}
	.fontLarge .threeColumnBlock li .blockHead {
		font-size: 100%;
	}
	.fontLarge .threeColumnBlock li img {
		top: 75px;
	}
	.fontLarge .lb-caption {
		font-size: 80%;
	}
/* 文字装飾 */
.inqSection {
	font-size: 114.3%;
	font-weight: bold;
}
.period {
	text-decoration: underline;
}
.end {
	position: relative;	/* CSS3PIE対応のため個別指定不可 */
	padding: 5px;
	border: 1px solid #aaa;
	border-radius: 2px;
	background: #fff7f7;
	text-align: center;
	color: #ff5757;
	behavior: url(../PIE.htc);
}
	
/* ※印の注釈 */
p.notes {
	padding-left: 1em;
	text-indent: -1em;
}
p.notesRed {
	color: #ff5757;
 	padding-left: 1em;
    text-indent: -1em;
}

/* リンク */
	#contents .pageLink a {
		padding-left: 15px;
		background: url("../../common/img/arrow02.png") 3px center no-repeat;
		color: #333;
		text-decoration: underline;
	}
		#contents .pageLink a:hover {
			background: url("../../common/img/arrow03.png") 3px center no-repeat;
			color: #668e3d;
		}
/* 番号リスト */
ol li {
	list-style: decimal;
	margin-left: 1.8em;
}

/* お問合せ */
.inquiryWrapper {
	position: relative;	/* CSS3PIE対応のため個別指定不可 */
	width: 425px;
	margin-bottom: 3px;	/* box-shadow分 */
	padding: 13px 10px;
	border: 1px solid #d7ccdd;
	border-radius: 3px;
	background: #fff;
	box-shadow: #e6e6e6 3px 3px 0px 0px;
	behavior: url(../PIE.htc);
}
	.inquiryWrapper .hStyle03 {
		margin-left: 10px;
		margin-right: 10px;
		margin-bottom: 3px;
		padding-left: 25px;
	}
	.inquiryWrapper p {
		padding-left: 20px;
		padding-right: 20px;
		font-size: 114.3%;
	}
	.inquiryWrapper .dottedLine_bottom {
		margin-bottom: 10px;
		padding-bottom: 10px;
		border-bottom: 1px dotted #999;
	}


/* サブナビ
---------------------------------------------------------- */
#subNavi {
	float: right;
	width: 200px;
}
	#subNavi li {
		margin: 0 10px;
		padding: 10px 0;
		padding-left: 15px;
		border-top: 1px dotted #6d622c;
		text-indent: -15px;
	}
	#subNavi li:first-child {
		border-top: none;
	}
		#subNavi li li {
			margin: 0;
			padding-bottom: 0;
			border: none;
		}
		#subNavi li a {
			padding-left: 15px;
			background: url(../img/arrow02.png) 3px center no-repeat;
			color: #333;
			text-decoration: none;
		}
		#subNavi li.current a,
		#subNavi li a:hover {
			background: url(../img/arrow03.png) 3px center no-repeat;
			color: #668e3d;
		}
		#subNavi li a:hover {
			text-decoration: underline;
		}

/* 子liが通常色の場合 */
			#subNavi li.current ul li a {
				background: url(../img/arrow02.png) 3px center no-repeat;
				color: #333;
			}
				#subNavi li.current ul li a:hover {
					background: url(../img/arrow03.png) 3px center no-repeat;
					color: #668e3d;
				}
/* 子liがhover色の場合 */
			#subNavi li.current ul li.current a {
			background: url(../img/arrow03.png) 3px center no-repeat;
			color: #668e3d;
			}
			
#categoryName {
	margin-left: 3px;
	padding-left: 15px;
	background: url(../img/icon01.png) center left no-repeat;
	font-size: 114%;
	font-weight: bold;
}


/* ページトップ
---------------------------------------------------------- */
#pageTopWrapper {
    position: static;
    right: auto;
    bottom: auto;
   /* width: 940px;*/
}
	#pageTopWrapper a {
		display: inline;
		position: absolute;
	}


/* PC→SP
---------------------------------------------------------- */
#moveSp {
	display: none;
    position: fixed;
    bottom: 0;
	z-index: 300;
	width: 100%;
	height: 120px;
	line-height: 120px;
	padding: 20px 0;
	text-indent: 20px;
	font-size: 50px;
	background: url(../img/black.png) repeat;
}
	#moveSp a {
		color: #fff;
	}
	#moveSp .close {
		position: absolute;
		right: 20px;
		bottom: 20px;
		z-index: 400;
	}

/* フッター
---------------------------------------------------------- */
#footerWrapper {
	position: relative;
	z-index: 200;
	margin-top: -6px;
	background: #fff;
	border-bottom: 5px solid #603580;
	box-shadow: rgba(153,153,153,0.7) 0px -2px 1px 0px;
	text-align: center;
	behavior: url(../PIE.htc);
}
.fontLarge #footerWrapper {
	overflow: hidden;
	line-height: 0;
}

#footer {
	display: inline-block;
	width: 960px;
	height: 150px;
	text-align: left;
}
	#footer img {
		float: left;
		margin-top: 47px;
		margin-right: 22px;
		margin-bottom: 47px;
	}

#footer #addressWrapper {
	float:left;
	width: 300px;
	height: 110px;
	margin-top: 20px;
	border-left: 1px solid #aaa;
}
	#footer #addressWrapper address {
		margin-left: 20px;
		margin-top: 4px;
		font-size: 14px;
	}
	#footer #addressWrapper p {
		margin-left: 32px;
		margin-top: 3px;
		text-indent: -12px;
		font-size: 12px;
	}

#footer #linkAndCopyWrapper {
	float:right;
	width: 391px;
	margin-top: 25px;
}
	#footer #linkAndCopyWrapper ul {
		display: inline-block;
		float: right;
		width: 190px;
		padding-bottom: 10px;
	}
		#footer #linkAndCopyWrapper ul li {
			float: left;
			margin-bottom: 15px;
			padding-left: 15px;
			background: url(../img/arrow01.png) center left no-repeat;
		}
		.fontLarge #footer #linkAndCopyWrapper ul li {
			line-height: 19px;
		}
		#footer #linkAndCopyWrapper ul *:first-child,
		#footer #linkAndCopyWrapper ul *:first-child + * + * {
			width: 109px;
		}
		#footer #linkAndCopyWrapper ul *:first-child + *,
		#footer #linkAndCopyWrapper ul *:first-child + * + * + * {
			width: auto;
		}
			#footer #linkAndCopyWrapper ul li a {
				font-size: 12px;
				color: #333;
			}
	#footer #linkAndCopyWrapper p {
		clear: right;
		text-align: right;
		font-size: 10px;
	}

/* リダイレクト用 */
.movePage {
	margin: 160px 0 240px 0;
}