@charset "utf-8";
/* CSS Document */


.photo150{
	width: 150px;
	}
	
body .photo150 div{
	width: 150px;
	text-align: center;
	background: url(../images/photo150_bg.png) top center repeat-y;
	}


.photo200{
	width: 200px;
	}
	
body .photo200 div{
	width: 200px;
	text-align: center;
	background: url(../images/photo200_bg.png) top center repeat-y;
	}

.photo220{
	width: 220px;
	}
	
body .photo220 div{
	width: 220px;
	text-align: center;
	background: url(../images/photo220_bg.png) top center repeat-y;
	}

.photo280{
	width: 280px;
	}
	
.inner .photo280 div{
	width: 280px;
	text-align: center;
	background: url(../images/photo280_bg.png) top center repeat-y;
	}

.photo300{
	width: 300px;
	}
	
body .photo300 div{
	width: 300px;
	text-align: center;
	background: url(../images/photo300_bg.png) top center repeat-y;
	}


.photo900{
	width: 900px;
	}
	
body .photo900 div{
	width: 900px;
	text-align: center;
	background: url(../images/photo900_bg.png) top center repeat-y;
	}



/* スニペット ---------------------------------------------------------

<div class="photo200">
<img src="../images/photo200_top.png" width="200" height="10" alt="" />
	<div>
	<img src="../images/voice/20130306175106_1.jpg" width="180" alt="" />
	</div>
<img src="../images/photo200_bottom.png" width="200" height="10" alt="" />
</div>

----------------------------------------------------------------------- */


.frame350{
	width: 350px; 
	margin: 0 auto;
	}

body .frame350 div{
	background: url(../images/frame350_bg.png) top center repeat-y;
	}

.frame700{
	width: 700px; 
	margin: 0 auto;
	}

body .frame700 div{
	background: url(../images/frame700_bg.png) top center repeat-y;
	}


.frame750{
	width: 750px; 
	margin: 0 auto;
	}

.inner .frame750 div{
	background: url(../images/frame750_bg.png) top center repeat-y;
	}


.frame660{
	width: 660px; 
	margin: 0 auto;
	}

body .frame660 div{
	background: url(../images/frame660_bg.png) top center repeat-y;
	}


.frame900bl{
	width: 900px; 
	margin: 0 auto;
	}

body .frame900bl div{
	background: url(../images/frame900bl_bg.png) top center repeat-y;
	}





/* スニペット ---------------------------------------------------------

<div class="frame700">
<img src="../images/frame700_top.png" width="700" height="7" alt="" />
	<div>
	
	</div>
<img src="../images/frame700_bottom.png" width="700" height="7" alt="" />				
</div>

----------------------------------------------------------------------- */




/* 共通 ================================================== */

div, p{
	font-size: 12px;
	}

p{
	margin: 0;
	}


.main{
	width: 900px; 
	margin: 0 auto;
	}

a{
	text-decoration: none;
	color: #000000;
	}

a:hover{
	color: #999999;
	}

a span{
	border-bottom: 1px dashed #cccccc;
	padding-bottom: 2px;
	}


/* ヘッダー */

.head{
	margin-top: 10px;
	}



/* サブメニュー */

.submenu{
	width: 391px; 
	height: 22px; 
	float: left;
	background: url(../images/bar_submenu.jpg) center right no-repeat;
	margin-top: 5px;
	}

.submenu a{
	display: block;
	width: 130px;
	height: 22px;
	float: left;
	text-indent: -3000px;
	}


a.menu_inquiry{
	background: url(../images/menu_inquiry.jpg) top left no-repeat;
	}

	a:hover.menu_inquiry{
		background: url(../images/menu_inquiry.jpg) bottom left no-repeat;
		}


a.menu_reservation{
	background: url(../images/menu_reservation.jpg) top left no-repeat;
	}

	a:hover.menu_reservation{
		background: url(../images/menu_reservation.jpg) bottom left no-repeat;
		}


a.menu_doc_request{
	background: url(../images/menu_doc_request.jpg) top left no-repeat;
	}

	a:hover.menu_doc_request{
		background: url(../images/menu_doc_request.jpg) bottom left no-repeat;
		}


a.menu_cal{
	background: url(../images/menu_cal.jpg) top left no-repeat;
	}

	a:hover.menu_cal{
		background: url(../images/menu_cal.jpg) bottom left no-repeat;
		}



/* メインメニュー */

.menu{
	width: 900px;
	margin: 35px 0 50px 0;
	}

.menu a{
	display: block;
	height: 146px;
	float: left;
	text-indent: -3000px;
	}


a.site_id{
	width: 182px;
	background: url(../images/site_id.jpg) top left no-repeat;
	}


a.menu_photo{
	width: 144px;
	background: url(../images/menu_photo.jpg) top left no-repeat;
	}

	a:hover.menu_photo{
		background: url(../images/menu_photo.jpg) bottom left no-repeat;
		}


a.menu_price{
	width: 143px;
	background: url(../images/menu_price.jpg) top left no-repeat;
	}

	a:hover.menu_price{
		background: url(../images/menu_price.jpg) bottom left no-repeat;
		}


a.menu_qa{
	width: 144px;
	background: url(../images/menu_qa.jpg) top left no-repeat;
	}

	a:hover.menu_qa{
		background: url(../images/menu_qa.jpg) bottom left no-repeat;
		}


a.menu_voice{
	width: 143px;
	background: url(../images/menu_voice.jpg) top left no-repeat;
	}

	a:hover.menu_voice{
		background: url(../images/menu_voice.jpg) bottom left no-repeat;
		}


a.menu_access{
	width: 144px;
	background: url(../images/menu_access.jpg) top left no-repeat;
	}

	a:hover.menu_access{
		background: url(../images/menu_access.jpg) bottom left no-repeat;
		}




/* コンテンツ部分 */

.border-top{
	width: 100%; 
	height: 35px; 
	background: url(../images/border-top.png) top center repeat-x; 
	position: absolute; 
	top: 205px; 
	left: 0;
	}

.contents h1{
	width: 900px;
	height: 43px;
	text-indent: -3000px;
	}


	.contents .inner{
		width: 750px;
		margin: 25px auto 0 auto;
		}



.border-bottom{
	width: 100%; 
	height: 35px; 
	background: url(../images/border-top.png) top center repeat-x; 
	margin-top: 50px;
	}

.to_top{
	width: 900px;
	text-align: right;
	margin: 40px auto -40px auto;
	}


.to_top a{
	padding-left: 15px;
	background: url(../images/to_top_icon.gif) center left no-repeat;
	}


/* フッター */

.foot{
	width: 900px;
	margin: 50px auto 0 auto;
	}


.foot_link{
	width: 100%;
	border-top: 1px solid #cccccc;
	padding-top: 4px;
	}



.foot_link .box{
	width: 900px;
	margin: 0 auto;
	margin-bottom: 50px;
	}


.foot_link p{
	width: 550px;
	float: left;
	padding-left: 5px;
	margin-top: 2px;	
	}

.foot_link a{
	padding-left: 9px;
	background: url(../images/icon_foot_link.jpg) center left no-repeat; 
	text-decoration: none;
	color: #000000;
	margin-right: 10px;
	}

	.foot_link a:hover{
		color: #999999;
		}



/* フォトウエディング photo ================================================== */

.h1_photo{
	background: url(../images/h1_photo.jpg) top left no-repeat;
	}

.h1_flow1{
	background: url(../images/h1_flow1.jpg) top left no-repeat;
	}

.h1_flow2{
	background: url(../images/h1_flow2.jpg) top left no-repeat;
	}

.h1_gallery{
	background: url(../images/h1_gallery.jpg) top left no-repeat;
	}

.h1_dress{
	background: url(../images/h1_dress.jpg) top left no-repeat;
	}

.h1_movie{
	background: url(../images/h1_movie.jpg) top left no-repeat;
	}

.h1_photobook{
	background: url(../images/h1_photobook.jpg) top left no-repeat;
	}

.h1_schedule{
	background: url(../images/h1_schedule.jpg) top left no-repeat;
	}

.photo_top h2{
	height: 29px;
	margin: 0;
	}

.photo_top .frame700{
	margin-bottom: 30px;
	}

.photo_top_inner{
	width: 600px; 
	margin: 0 auto; 
	padding: 40px 0;
	}

.photo_top_inner .photo280 p{
	width: 260px;
	margin: 5px auto 0 auto;
	border: 1px solid #EAE0BA;
	padding: 0.5em 0;
	font-size: 14px;
	line-height: 130%;
	color: #635319;
	}


.photo_top_inner .text{
	width: 370px; 
	float: right;
	}

.photo_top_inner .text h2{
	margin-top: 3px;
	}


.photo_top_inner .text p{
	margin: 7px 0 0 10px;
	line-height: 180%;
	}


.photo_top_inner .text a{
	color: #000000;
	text-decoration: none;
}

.photo_top_inner .text a:hover{
	color: #999999;
}

.photo_top_inner .text a span{
	border-bottom: 1px dashed #cccccc;
	padding-bottom: 2px;
}




.h2_photo_top1{
	text-indent: -3000px;
	background: url(../images/h2_photo_top1.gif) top left no-repeat;
	}

.h2_photo_top2{
	text-indent: -3000px;
	background: url(../images/h2_photo_top2.gif) top left no-repeat;
	}

.h2_photo_top3{
	text-indent: -3000px;
	background: url(../images/h2_photo_top3.gif) top left no-repeat;
	}

.h2_photo_top4{
	text-indent: -3000px;
	background: url(../images/h2_photo_top4.gif) top left no-repeat;
	}


a.bnr_schedule{
	display: block;
	width: 700px;
	height: 123px;
	background: url(../images/bnr_schedule.jpg) top left no-repeat;
	text-indent: -3000px;
	margin: 0 auto;
	}

a:hover.bnr_schedule{
	background: url(../images/bnr_schedule.jpg) bottom left no-repeat;
	}


/* 撮影当日の流れ */

.button_prev{
	display: block;
	float: left;
	}

.button_next{
	display: block;
	float: right;
	}

/* フォトブック */

.photobook_slide{
	width: 740px;
	margin: 0 auto 5px auto;
	}

.photobook{
	width: 650px; 
	margin: 0 auto;
	padding: 30px 0;
	line-height: 150%;
	}


.photo320{
	width: 320px;
	}
	
.photobook .photo320 div{
	width: 320px;
	text-align: center;
	background: url(../images/photo320_bg.png) top center repeat-y;
	}


.photobook .type_text{
	width: 290px; 
	float: left; 
	}

.photobook h2{
	margin: 0;
	margin-bottom: 5px;
	padding-bottom: 3px;
	border-bottom: 1px dashed #F0E8C7;
	font-size: 16px;
	}


.photobook .album{
	width: 100%; 
	margin-bottom: 20px;
	}

.photobook .album h3{
	font-size: 1.2em;
	margin: 0;
	border-bottom: 1px solid #F0E8C7;
	color: #705C15;
	}

.photobook .album p{
	width: 315px; 
	margin: 8px 5px; 
	float: left;
	}

.photobook .album .photo320{
	margin-top: -2em; 
	float: right;
	}


.photobook .price_list{
	width: 650px;
	border: 2px  solid #F0E8C7;
	margin: 20px auto; 
	}

.photobook .price_list th{
	border-bottom: 1px solid #F0E8C7;
	}


.photobook .price_list td{
	border-bottom: 1px dashed #F0E8C7;
	}

/* フォトギャラリー */

#container{
	margin-left: 3px;
	}

#container .photo220{
	margin: 2px;
	}

#infscr-loading {
margin-left: -100px;
width: 200px;
position: fixed;
left: 50%;
bottom: 240px;
text-align: center;
}



/* お申込みから撮影まで */

.h2_schedule{
	margin: 0 auto -30px auto; 
	text-align: center; 
	font-size: 14px; 
	font-weight: bold; 
	padding-top: 30px;
	}


.schedule_tab{
	width: 690px; 
	margin: 0 auto;
	}

table.schedule{
	width: 630px;
	margin: 0 auto;
	border-collapse:collapse;
	border-top: 1px solid #F0E8C7;
	}

table.schedule th{
	border-bottom: 1px solid #F0E8C7;
	padding: 10px 20px;
	}

table.schedule td{
	border-bottom: 1px solid #F0E8C7;
	padding: 10px 20px 10px 0;
	}

table.schedule td div.sche_inner{
	margin: 15px 10px 15px 0;
	line-height: 150%;
	}

table.schedule td p{
	float: right;
	width: 345px;
	}


.photo160{
	width: 160px;
	}
	
table.schedule td .photo160 div{
	width: 160px;
	text-align: center;
	background: url(../images/photo160_bg.png) top center repeat-y;
	}

table.schedule td .photo160{
	margin: -30px 0 20px 0;
	float: left;
	}

table.schedule th{
	background: url(../images/schedule_arrow.gif) bottom center no-repeat;
	}

table.schedule th span{
	display: block;
	width: 3em;
	border: 2px solid #FF9C40;
	text-align: center;
	padding: 6px 3px;
	background-color: #ffffff;
	}


table.schedule h2{
	font-size: 14px;
	border-bottom: 1px dashed #F0E8C7;
	padding-bottom: 2px;
	}

table.schedule h3{
	font-size: 12px;
	margin: 0 0 7px 0;
	padding-left: 167px;
	border-bottom: 1px solid #F0E8C7;
}






/* ご遠方のお客様向けスケジュール例 */

.h2_schedule2{
	margin: -30px auto 0 auto; 
	text-align: center; 
	font-size: 14px; 
	font-weight: bold; 
	color: #516EA3;
	}

table.schedule2{
	width: 630px;
	margin: 0 auto;
	border-collapse:collapse;
	border-top: 1px solid #F0E8C7;
	}

table.schedule2 th{
	border-bottom: 1px solid #F0E8C7;
	width: 100px;
	padding-top: 23px;
	vertical-align: top;
	color: #314B78;
	}

table.schedule2 th.arrow{
	background: url(../images/schedule_arrow2.gif) bottom center no-repeat;
	vertical-align: middle;
	border-right: 1px solid #F0E8C7;
	}

table.schedule2 th.arrow span{
	display: block;
	width: 3em;
	border: 2px solid #516EA2;
	text-align: center;
	padding: 6px 3px;
	background-color: #ffffff;
	margin: 0 auto;
	}


table.schedule2 td{
	border-bottom: 1px solid #F0E8C7;
	padding: 21px 20px 30px 0;
	}

table.schedule2 td p{
	line-height: 150%;
	margin: 0 5px 15px 0px;
	}


table.schedule2 h3{
	font-size: 14px;
	border-bottom: 1px dashed #516EA3;
	padding-bottom: 2px;
	margin: 0 0 5px 0;
	}

/* 動画 */

h2.h2_movie1{
	height: 20px;
	text-indent: -3000px;
	background: url(../images/h2_movie1.gif) top left no-repeat;
	margin: 40px 0 5px 0;
	}

h2.h2_movie2{
	height: 20px;
	text-indent: -3000px;
	background: url(../images/h2_movie2.gif) top left no-repeat;
	margin: 40px 0 5px 0;
	}





/* フォトウエディング用プルダウンメニュー */

#photo_menu{
	list-style: none;
	position: absolute;
	top: -80px;
	right: -74px;
	z-index: 1000;
	text-align: center;
	}

#photo_menu li {
  position: relative;
  float: left;
  margin: 0;
  padding: 5px;
  width: 200px;
  /*border: solid 1px #ccc;*/
  /*font-weight: bold;*/
	background-color: #eee;
}

#photo_menu li.icon{
	background: url(../images/photo_menu_icon.gif) top center no-repeat;
	height: 20px;
	}

#photo_menu li ul {
  display: none;
  position: absolute;
  top: 20px;
  left: -1px;
  padding: 5px;
  width: 200px;
  background: #fff;
  border: solid 1px #ccc;
  list-style: none;
}
#photo_menu li ul li {
  margin: 0;
  padding: 0;
  width: 200px;
  border: none;
 	background-color: #fff;

}
#photo_menu li ul li a {
  display: inline-block;
  width: 200px;
  height: 20px;
  text-decoration: none;
  color: #000000;
  font-weight: normal;
}
#photo_menu li ul li a:hover {
  background: #fff;
  color: #ccc;
  border: none;
}

#photo_menu li ul li a span{
  border-bottom: 1px dashed #cccccc;
  padding-bottom: 1px;
	}



/* 料金 price ================================================== */

.h1_price{
	background: url(../images/h1_price.jpg) top left no-repeat;
	}


.h2_price1,.h2_price2,.h2_price3{
	width: 750px;
	height: 20px;
	text-indent: -3000px;
	}

.h2_price1{
	background: url(../images/h2_price1.gif) top left no-repeat;
	}

.h2_price2{
	background: url(../images/h2_price2.gif) top left no-repeat;
	}

.h2_price3{
	background: url(../images/h2_price3.gif) top left no-repeat;
	}

p.plan_name{
	font-size: 14px; 
	font-weight: bold; 
	margin: 10px 5px; 
	letter-spacing: 0.4em;
	}

p.plan_price{
	text-align: right; 
	margin: 5px 15px; 
	font-size: 20px; 
	font-weight: bold; 
	color: #F00202;
	}

.photo300 div.plan_detail{
	width: 280px; 
	margin: 0 auto; 
	border: 1px solid #EAE0BA; 
	line-height: 150%; 
	text-align: left;
	}


p.plan_text{
	margin: 5px 5px 20px 5px; 
	height: 9em;
	}


p.plan_include{
	margin: 5px; 
	font-size: 12px; 
	font-weight: bold; 
	border-bottom: 1px solid #666666;
	}

p.plan_include_text{
	margin: 5px; 
	height: 5em;
	}

table.price_list{
	width: 670px; 
	margin: 0 auto;
	/*border: 1px solid #cccccc;*/
	border-collapse:collapse;
	}


table.price_list th{
	padding: 10px;
	font-weight: normal;
	line-height: 130%;
	border-bottom: 1px dashed #F0E8C7;
	border-right: 1px solid #F0E8C7;
	}

table.price_list td{
	padding: 10px;
	text-align: center;
	line-height: 130%;
	vertical-align: middle;
	border-bottom: 1px dashed #F0E8C7;
	border-right: 1px solid #F0E8C7;
	}

table.price_list tr.head_th th{
	border-bottom: 1px solid #F0E8C7;
	}

table.price_list tr.bottom th, table.price_list tr.bottom td{
	border-bottom: none;
	}

table.price_list th.right, table.price_list td.right{
	border-right: none;
	}


.to_cwsp{
	width: 650px; 
	margin: 0 auto;
	}


.to_cwsp img{
	float: left;
	}


.to_cwsp .text{
	width: 385px; 
	float: right; 
	line-height: 180%;
	}


.to_cwsp .text p.osusume{
	border-bottom: 1px solid #E4DAB4; 
	margin-bottom: 10px; 
	line-height: 130%;
	}


.to_cwsp .text span.osusume{
	color: #BD3149;
	}
	


.to_cwsp .text h2{
	margin:0 0 5px 0; 
	height: 26px; 
	text-indent: -3000px; 
	background: url(../images/h2_cwsp_plan.jpg) top left no-repeat;
	}
	

.to_cwsp .text .include{
	width: 300px; 
	margin: 20px auto; 
	padding: 10px; border: 1px solid #E4DAB4;
	}




.to_cwsp .text .include ul.left{
	width: 120px; 
	float: left; 
	margin: 0 0 0 20px; 
	padding: 0; 
	list-style: none;
	}



.to_cwsp .text .include ul.right{
	width: 130px; 
	float: right; 
	margin: 0; 
	padding: 0; 
	list-style: none;
	}


.to_cwsp .link{
	width: 100%; 
	text-align: right; 
	margin: 20px 0 5px 0; 
	padding: 10px 0;
	}

/* よくあるご質問 qa ================================================== */

.h1_qa{
	background: url(../images/h1_qa.jpg) top left no-repeat;
	}


.h2_qa{
		height: 23px; 
		font-size: 14px; 
		font-weight: normal;
		background: url(../images/qa_icon.gif) top left no-repeat; 
		padding-left: 24px; 
		padding-top: 3px;
		margin-top: 15px;
	}


.qa_box{
	width: 700px; 
	margin: 0 auto 15px auto;
	}



.qa_box a{
	text-decoration: none;
	}

.qa_box a{
	color: #000000;
	text-decoration: none;
	background: url(../images/q_icon.gif) center left no-repeat;
	padding-left: 11px;
	}

.qa_box a:hover{
	color: #cccccc;
	}

.qa_box a span{
	border-bottom: 1px dashed #cccccc;
	padding-bottom: 2px;
	}


.qa_box .a_text{
	margin:10px 0 10px 10px; 
	border-left: 5px solid #EBF0C2; 
	padding: 5px 0 5px  10px;
	display: none;
	line-height: 180%;
	}



/* お客様の声 voice ================================================== */

.h1_voice{
	background: url(../images/h1_voice.jpg) top left no-repeat;
	}



.voice .box{
	width: 706px;
	margin: 40px auto 0 auto;
	}

.voice .box_main{
	background: url(../images/voice_frame_bg.png) top center repeat-y;
	}


.voice .box_inner{
	margin: 0px 50px;
	}


.voice h2{
	margin: 0 0 3px 0;
	color: #1F3866;
	border-bottom: 1px solid #EAE0BA;
	padding-bottom: 3px;
	}

.voice .plan_name{
	color: #665223;
	}

.voice .box_right{
	width: 390px; 
	float: right; 
	margin-top: 23px; 
	line-height: 180%;
	}

.voice .for{
	color: #665223; 
	font-weight: bold; 
	margin-top: 10px; 
	text-align: center;
	}


.voice .for_comment{
	border: 1px solid #EAE0BA;
	}

.voice .for_comment p{
	margin: 10px;
	}

.voice .box_left{
	margin-top: 23px; 
	float: left;
	}

.pagenation{
	text-align: center; 
	margin: 20px auto;
	font-size: 14px;
	}

.pagenation a{
	/*display: block;*/
	border: 1px solid #C1A339;
	/*float: left;*/
	padding: 5px 10px;
	margin: 0 3px;
	}


.pagenation a:hover{
	background-color: #F0E8C7;
	}

.pagenation span{
	/*display: block;*/
	border: 1px solid #C1A339;
	background-color: #F0E8C7;
	font-weight: bold;
	color: #C1A339;
	/*float: left;*/
	padding: 5px 10px;
	margin: 0 3px;
	}




/* 交通アクセス access ================================================== */

.h1_access{
	background: url(../images/h1_access.jpg) top left no-repeat;
	}

.access h2{
	font-size: 14px;
	margin: 10px 0;
	border-bottom: 1px dashed #F0E8C7;
	width: 100%;
	padding-bottom: 2px;
	}

.access p{
	margin-left: 5px;
	margin-bottom: 30px;
	line-height: 150%;
	}

.access ul{
	margin: 5px 0 10px 0; 
	padding-left: 20px; 
	font-size: 10px;
	}


h2.h2_access1{
	height: 26px;
	text-indent: -3000px;
	background: url(../images/h2_access1.gif) top left no-repeat;
	text-align: left;
	margin: -21px 0 0 0;
	}

h2.h2_access2{
	height: 26px;
	text-indent: -3000px;
	background: url(../images/h2_access2.gif) top left no-repeat;
	text-align: left;
	margin: -21px 0 0 0;
	}


.spot{
	border-bottom: 1px solid #F0E8C7;
	margin-bottom: 30px;
	padding-bottom: 10px;
	}


.spot .text{
	width: 430px; 
	float: right;
	}

.spot p, .spot h3{
	margin: 0 0 5px 0;
	}

.spot h3{
	font-size: 14px;
	/*font-weight: normal;*/
	color:#705C15;
	}

.spot .icon{
	margin: 5px 0;
	}

.spot .detail{
	font-size: 12px;
	line-height: 150%;
	margin-bottom: 15px;
	}

.spot .access{
	border-top: 1px solid #F0E8C7;
	padding-top: 10px;
	font-size: 10px;
	line-height: 150%;
	}

.spot .access span{
	font-size: 14px;
	color:#705C15;
	}

.spot .to_map{
	text-align: right;
	font-size: 10px;
	margin-bottom: 5px;
	}


.spot .url{
	border-top: 1px solid #F0E8C7;
	padding: 10px 0;	
	}


.spot a{
	text-decoration: none;
	color: #000000;
	}

.spot a:hover{
	color: #F0E8C7;
	}

.spot a span{
	border-bottom: 1px dashed #F0E8C7;
	padding-bottom: 2px;
	}


.spot .photo{
	width: 200px;
	float: left;
	}


.spot .photo .photo200{
	margin-bottom: 5px;
	}


.spot .photo .photo200 div{
	width: 200px;
	text-align: center;
	background: url(../images/photo200_bg.png) top center repeat-y;
	}


/* お問い合わせ inquiry ================================================== */

.h1_inquiry{
	background: url(../images/h1_inquiry.jpg) top left no-repeat;
	}

.error{
	margin-top: 40px;
	text-align: center;
	color: #cc0000;
	line-height: 150%;
	}

.send_message{
	margin: 200px auto;
	text-align: center;
	}


/* 来館のご予約 reservation ================================================== */

.h1_reservation{
	background: url(../images/h1_reservation.jpg) top left no-repeat;
	}


/* 入力フォーム用table */
table.input{
	width: 90%;
	margin: 20px auto;
	border-collapse: separate;
	border-spacing: 5px;
	}

td.required{
	text-align: left;
	}

td.required span, table.input th span{
	color: #cc0000;
	margin-right: 2px;
	}

table.input th{
	padding: 10px 20px;
	background-color: #efefef;
	vertical-align: middle;
	font-weight: normal;
	text-align: left;
	}


table.input td{
	padding: 10px;
	vertical-align: middle;
	line-height: 150%
	}

table.input td span{
	font-size: 10px;
	color: #999999;
	}


td.button{
	text-align: center;
	}

td.button input{
	margin: 20px 0;
	}




/* 資料のご請求 doc_request ================================================== */

.h1_doc_request{
	background: url(../images/h1_doc_request.jpg) top left no-repeat;
	}


/* 空き状況カレンダー cal ================================================== */

.h1_cal{
	background: url(../images/h1_cal.jpg) top left no-repeat;
	}


table.cal{
	width: 660px; 
	margin: 0 auto;
	border-collapse:collapse;
	border: 0;
	border-bottom: 1px solid #cccccc;
	}

table.cal th{
	width: 110px;
	height: 80px;
	text-indent: -3000px;
	}

	th.sun{
		background: url(../images/cal_sun.gif) center center no-repeat;
		}
	
	th.mon{
		background: url(../images/cal_mon.gif) center center no-repeat;
		}
	
	th.tue{
		background: url(../images/cal_tue.gif) center center no-repeat;
		}
	
	th.wed{
		background: url(../images/cal_wed.gif) center center no-repeat;
		}
	
	th.thu{
		background: url(../images/cal_thu.gif) center center no-repeat;
		}
	
	th.fri{
		background: url(../images/cal_fri.gif) center center no-repeat;
		}
	
	th.sat{
		background: url(../images/cal_sat.gif) center center no-repeat;
		}



table.cal td{
	vertical-align: top;
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	padding: 0;
	}

table.cal td div{
	margin: 5px auto;
	padding: 3px 6px;
	border-right: 1px solid #cccccc;
	width: 110px;
	height: 80px;
	line-height: 150%;
	position: relative;
	}

table.cal td div.line_sun{
	border-left: 1px solid #cccccc;
	}

table.cal td span.date{
	font-size: 14px;
	letter-spacing: 0.5em;
	}


table.cal td.cal_head{
	border: none;
	text-align: center;
	vertical-align: middle;
	}


table.cal td.cal_head a{
	text-indent: -3000px;
	display: block;
	width: 52px;
	height: 15px;
	margin-top: 20px;
	}


table.cal td.prev a{
	background: url(../images/cal_prev.gif) top left no-repeat;
	float: right;:
}


table.cal td.next a{
	background: url(../images/cal_next.gif) top left no-repeat;
}


.state{
	position: absolute; 
	top: 0px; 
	left: 5px; 
	z-index: -100;
	}

.cal_button{
	margin: 0; 
	padding: 0; 
	position: absolute; 
	bottom: -2px; 
	left: 0; 
	width: 120px; 
	text-align: center;
	}

.sat{
	color: #2A90BD;
	}

.sun{
	color: #E0384B;
	}


table.cal td.today{
	font-weight: bold;
	color: #333333;
	}


/* ご利用規約 terms ================================================== */

.h1_terms{
	background: url(../images/h1_terms.jpg) top left no-repeat;
	}


.terms h2{
	margin: 2em auto;
	text-align: center;
	border-bottom: 1px dashed #F0E8C7;
	padding-bottom: 3px;
	width: 13em;
	}

.terms h3{
	margin: 3em 0 1em 0;
	border-bottom: 1px dashed #F0E8C7;
	padding-bottom: 2px;
	}

.terms p{
	line-height: 150%;
	}



/* 運営者 admin ================================================== */

.h1_admin{
	background: url(../images/h1_admin.jpg) top left no-repeat;
	}



/* プライバシーポリシー pp ================================================== */

.h1_pp{
	background: url(../images/h1_pp.jpg) top left no-repeat;
	}

.pp .frame700 h2{
	font-size: 14px;
	}

.pp .frame700 p{
	border-bottom: 1px solid #F0E8C7;
	padding-bottom: 20px;
	margin-bottom: 20px;
	line-height: 150%;
	}


/* サイトマップ sitemap ================================================== */

.h1_sitemap{
	background: url(../images/h1_sitemap.jpg) top left no-repeat;
	padding-bottom: 1em;
	}


.sitemap ul{
	margin: 0;
	padding: 0 0 0 10px;
	list-style: none;
	line-height: 250%;
	}


.sitemap ul a{
	text-decoration: none;
	color: #000000;
	}

.sitemap ul a:hover{
	color: #666666;
	}

.sitemap ul a span{
	border-bottom: 1px dashed #cccccc;
	padding-bottom: 2px;
	}

.sitemap ul ul{
	margin-left: 10px;
	border-left: 3px solid #F0E8C7;
	}



.sitemap table{
	width: 650px; 
	margin: 0 auto;
	border: 1px solid #F0E8C7;
	border-collapse:collapse;
	}

.sitemap table th{
	border-top: 1px solid #F0E8C7;
	padding: 1em 0;
	background-color: #FCF7E1;
	}

.sitemap table td{
	border: 1px dashed #F0E8C7;
	text-align: center;
	padding: 1em 0;
	}

.sitemap table a{
	padding-left: 15px;
	background: url(../images/sitemap_icon.png) center left no-repeat;
	}


/* その他共通 ================================================== */


/* 画像リンク */

a img{
border: 0;
}

a:hover img{
opacity:0.7;
filter:alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";
border: 0;
}









.lfloat{
	float: left;
	}

.rfloat{
	float: right;
	}

.clear{
	clear: both;
	}

.lclear{
	clear: left;
	}

.rclear{
	clear: right;
	}


.t_left{
	text-align: left;
	}


.t_right{
	text-align: right;
	}


.t_center{
	text-align: center;
	}


.red{
	color: #cc0000;
	}

.blue{
	color: #0000cc;
	}