@charset "UTF-8";


/* メインビジュアル --------------- */
#header {
	position: relative;
		overflow: hidden;

}
#header h2,
#header h2 + p {
width: 960px;
margin: 0px auto 0;
}
#header h2 {
	padding-top: 85px;
}
#header h2 + p {
	margin-top: 30px;
}
#header .pos_a {
	position: absolute;
	left: 50%;
	margin-left: -1030px;
	z-index:99;
	top: 0px
}

/* ページトップお問い合わせ --------------- */
#topContact {
	background: url(../img/contact01_bg.png) no-repeat center;
	width: 980px;
margin: 0px auto 0;
}
#topContact h2 {
	float:left;
	margin: 30px 0 30px 80px;
}
#topContact div {
	float:right;
	margin: 40px 60px 30px 0px;
	text-align:center;
}
#topContact div a {
	display: block;
	margin-top: 5px;
}

#mainCont {
	background:url(../img/main_bg.png) center top repeat-y;
	margin-top: 120px
}
#contWrap {
	overflow: hidden;
}

/* blc01 --------------- */
#blc01 {
	position: relative;
}
#blc01 .pos_a {
	position: absolute;
	left:50%;
	margin-left: -900px;
	top: -50px;
	background:url(../img/block01_top_bg.png) no-repeat top center;
	z-index:1;
}

#blc01 h2,
#blc01 h3,
#blc01 p  { 
position:relative;
z-index: 99;
width: 980px;
margin: 0 auto;
text-align: center;
}
#blc01 h2 {
	top: -100px;
}
#blc01 h3,
#blc01 p  {
	top: -120px;
}

#blc02 {
	width: 920px;
	margin: -120px auto 30px;
	position:relative;
	text-align: center;
}
#blc02 h2 {
	position:relative;
	z-index:101;
}
#blc02 .pos_a {
	position: absolute;
	top: -139px;
	right: 40px;
	z-index: 100;
}
#blc02 h3 {
	margin-top: 20px;
}
#campaignBox {
	background:url(../img/campaign_m.jpg) repeat-y top center;
	text-align: center;
}
#campaignBox p {
	margin-bottom:15px;
}
#blc02 .cos1 {
	top: 180px;
	right: 0;
}
#blc02 .cos2 {
	top: auto !important;
	bottom: -30px;
	right: auto;
	left: 30px;
}
#blc03 {
	position: relative;
}
#blc03 .pos_a {
	position: absolute;
	left:50%;
	margin-left: -900px;
	top: 0px;
	z-index:1;
}
#blc03 h2 {
	position: relative;
	z-index:3;
	margin-top:30px;
}
#blc03 .blc3img {
	margin-top: -180px;
	position:relative;
	z-index:4;
	margin-left:-550px;	
}
#location {
	position: relative;
	width: 980px;
	margin: 0 auto;
}
#location h4 + p {
	position:relative;
	z-index: 99;
}
#location .pos1,
#location .pos2,
#location .pos3 {
	position: absolute;
}
#location .pos1 {
	top: 30px;
	right: 60px;
}
#location .pos2 {
	top: 310px;
	left: 30px;
}
#location .pos3 {
	top: 50px;
	left: 70px;
	z-index:100;
}


#blc04 {
	width: 880px;
	margin: 40px auto;
	text-align:left;
	position: relative;
}
#blc04  h2 {
	width: 320px;
	float:left;
}
.floatR {
	float:right;
	width: 500px;
}
.floatR h3 {
	color:#F66;
	font-size: 24px;
	margin-bottom: 10px;
}
#blc04 dl {
	background:url(../img/service_bg.png) no-repeat top center;
	width:287px;
	height:461px;
	float:left;
	margin-right: 6px;
	margin-top: 5px;
	position: relative;
	z-index:99;

}
#blc04 dd,
#blc04 dt {
	margin-left: auto;
	margin-right: auto;
	font-size:13px;
	line-height:150%;
	width:212px;

}
#blc04 dt + dd {
	height: 140px;
}
#blc04 dd {
	width:208px !important;
}
#blc04 dt {
	padding-top: 40px;
	margin-bottom: 10px;
}
#blc04 .pos4 {
	position: absolute;
	top:1050px;
	right:-20px;
	z-index:98;
}
#blc05 {
	width:960px;
	margin: 0 auto;
	background:url(../img/bg02.jpg);
}
#blc05 .inner {
	width: 880px;
	margin: 0 auto;
	padding: 95px 0px 0px;
}
.innerBg {
	background:url(../img/info_top_bg.jpg) no-repeat top center;
	padding-bottom:30px;
}
#blc05 h4 {
	margin-bottom: 10px;
}
#blc05 .floatR {
	width:430px;
	text-align:left;
	color:#630;
	font-size:15px;
	letter-spacing: 0;
}
#blc05 .floatL {
	float:left;
}
#blc05 .map {
	text-align:right;
	margin-top: 15px;
	margin-bottom: 25px;
}
#blc05 .link {
	font-size: 120%;
	font-weight: bold;
	color: #8bc1ea;
	text-align: center;
	text-decoration: none;
	margin-top: 20px;
	display: inline-block;
}
.map_detail {
	margin-top: 15px;
}
#footContact {
	background:url(../img/contact02_bg.jpg) no-repeat top center;
	margin-top: -40px;
	padding-bottom: 30px;
}
#footContact h2 {
	padding-top: 110px;
	margin-bottom: 10px;
}
#footContact h2 + p {
	margin-bottom: 10px;
}
footer {
	width: 980px;
	margin: 0 auto 10px;
}
footer dl {
	float:left;
	font-size:12px;
}
footer #copyright {
	float:right;
		font-size:12px;
}
#btmPageTop {
	position: fixed;
	right: 20px;
	bottom:20px;
	background:rgba(255,102,102,0.7);
	font-size:20px;
	border-radius: 5px;
	z-index: 999;
}
#btmPageTop a {
	color:#FFF;
	display:block;
	text-align:center;
	padding: 0px;
	padding: 12px 15px;
	text-decoration:none;
}

#sub header {
	background: none !important;
}
#sub #form {
	background:url(../img/formbg.jpg);
	width: 960px;
	margin: 0 auto;
	border-radius: 15px;
	padding: 40px 0px;
}
#sub #form .inner {
	margin: 0px 5%;
	text-align:center;
	background:#fff;
	width:90%;
	padding: 40px 0px;
	border-radius: 10px;
}
#form table {
border: 1px solid #FFCCFF;
margin: 0 auto;
width: 90%;
}
#form table tr {
clear:both;
}
#form table tr th {
padding: 15px 13px;
>padding: 20px 17px;
_padding: 20px 17px;
border: 1px solid #FFCCFF;
vertical-align: middle;
background: url(../img/require.jpg) no-repeat #FFFFCC 140px;
font-weight: bold;
width:36%;
}
#form table tr th.none {
background-color: #FFFFCC;
padding: 15px 17px;
>padding: 20px 15px;
_padding: 20px 15px;
border: 1px solid #FFCCFF;
vertical-align: middle;
background-image: none;
}
#form table tr th img {
vertical-align: baseline;
}
#form table tr td {
padding: 15px 17px;
>padding: 15px 17px;
_padding: 15px 17px;
border: 1px solid #FFCCFF;
vertical-align:middle;
width:58%;
}
#formSubmit {
padding-top: 25px;
}
#rule {
padding:0px 30px 20px;
text-align:left;
}

/*1周年記念バナー*/

#anniversary{
width: 941px;
margin:40px auto;
}