@charset "utf-8";


/* tag
-------------------------------------------------------*/

* {
	margin: 0;
	padding: 0;
}

body {
	color:#000;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height:1.5;
	background:#fff;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}

img {
	border: none;
	vertical-align:top;
}

li {
	list-style:none;
}

a:hover {
	opacity:0.70;
}


/* clearfix
-------------------------------------------------------*/

.clearfix { width:100%; }

.clearfix:after {
	content: "."; 
	display: block; 
	height: 0; 
	font-size:0;	
	clear: both; 
	visibility:hidden;
}


/* header
-------------------------------------------------------*/

body > header {
	width:980px;
	height:113px;
	margin:0 auto;
	position:relative;
}

body > header p.description {
	font-size:12px;
	position:absolute;
	left:0;
	top:3px;
}

body > header h1 {
	position:absolute;
	left:0;
	top:39px;
}

body > header p.copy {
	position:absolute;
	left:0;
	top:74px;
}

body > header p.tel {
	color:#fff;
	font-size:12px;
	padding:0 18px 6px 12px;
	background:#6A3906;
	position:absolute;
	right:0;
	top:0;
}

body > header p.tel span {
	color:#ffeaa9;
	font-size:20px;
	margin:0 0 0 5px;
	position:relative;
	top:2px;
}


/* globalNav
-------------------------------------------------------*/

nav#globalNav {
	width:539px;
	position:absolute;
	border-left:2px #E5E5E5 solid;
	right:0;
	top:70px;
}

navnav#globalNav:after {
	content: "."; 
	display: block; 
	height: 0; 
	font-size:0;	
	clear: both; 
	visibility:hidden;
}

nav#globalNav li {
	border-right:2px #E5E5E5 solid;
	float:left;
}


/* mainimg
-------------------------------------------------------*/

p#mainimg {
	text-align:center;
	min-width:980px;
	background:url(../img/bg_mainimg.jpg) center top;
	background-size:cover;
}


/* main
-------------------------------------------------------*/

div#main {
	width:980px;
	margin:0 auto;
	box-shadow:5px 0 5px #ccc, -5px 0 5px #ccc;
}


/* message
-------------------------------------------------------*/

section#message {
	width:980px;
	min-height:560px;
	position:relative;
}

section#message > header {
	margin:0 0 40px 50px;
	padding:40px 0 0;
}

section#message > header h2 {
	width:540px;
	padding:0 0 17px;
	border-bottom:2px #EFCD9A solid;
}

section#message div.txt {
	margin:0 0 0 50px;
}

section#message div.txt p {
	font-size:16px;
	line-height:1.75;
	width:555px;
	margin:0 0 17px;
}

section#message div.txt p.name {
	text-align:right;
	width:517px;
	margin:0;
}

section#message p.pic {
	width:340px;
	margin:0;
	position:absolute;
	right:0;
	top:0;
}


/* service
-------------------------------------------------------*/

section#service {
	width:980px;
	padding:44px 0;
	background:url(../img/bg_service.png) top repeat-y;
	border-top:2px #EFCD9A solid;
	border-bottom:2px #EFCD9A solid;
}

section#service > header {
	text-align:center;
}

section#service > header h2 {
	width:380px;
	margin:0 auto 38px;
	padding:0 0 17px;
	border-bottom:2px #EFCD9A solid;
}

section#service > header p.copy {
	margin:-60px 0 30px;
}

section#service > header img {
	position:relative;
	left:-8px;
}

section#service > header p.txt {
	font-size:16px;
	line-height:1.75;
	text-align:center;
	width:800px;
	margin:-60px auto 35px;
}

section#service section.block_01 {
	width:330px;
	float:left;
}

section#service section.block_02 {
	width:319px;
	float:left;
}

section#service section.block_03 {
	width:331px;
	float:left;
}

section#service section.block p.pic {
}

section#service section.block h3 {
}

section#service section.block ul {
	margin:-46px 0 0 53px;
}

section#service section.block li {
	font-size:18px;
	margin:0 0 1px;
	list-style:disc;
}

section#service section.block_04 {
	width:980px;
	height:300px;
	background:url(../img/bg_service_04.png) center top no-repeat;
	clear:left;
	position:relative;
	top:-30px;
}

section#service section.block_04 h3 {
	text-align:center;
	position:relative;
	top:-13px;
}

section#service section.block_04 ul {
	width:100%;
	margin:-49px 0 0 55px;
}

section#service section.block_04 ul:after {
	content: "."; 
	display: block; 
	height: 0; 
	font-size:0;	
	clear: both; 
	visibility:hidden;
}

section#service section.block_04 li {
	margin:0 10px 0 0;
	float:left;
}

section#service section.block_05 {
	width:816px;
	height:720px;
	margin:0 auto;
	padding:49px 0 0 65px;
	background:url(../img/bg_service_05.png) center top no-repeat;
	position:relative;
	overflow:hidden;
}

section#service section.block_05 h3 {
	margin:0 0 36px;
}

section#service section.block_05 h3 img {
	position:relative;
	left:-4px;
}

section#service section.block_05 li {
	margin:0 0 32px;
}

section#service section.block_05 li.right {
	position:relative;
	top:-582px;
	left:369px;
}


/* strong
-------------------------------------------------------*/

section#strong {
	font-size:16px;
	line-height:1.75;
	padding:40px 0 0;
}

section#strong > header {
	margin:0 0 32px 50px;
}

section#strong > header h2 {
	width:290px;
	margin:0 0 36px;
	padding:0 0 17px;
	border-bottom:2px #EFCD9A solid;
}

section#strong section.block {
	width:980px;
	border-top:2px #EAEAEA solid;
	position:relative;
}

section#strong section.block_01 {
	min-height:320px;
}

section#strong section.block_01 h3 {
	margin:0 0 24px 320px;
}

section#strong section.block_01 p.txt {
	width:555px;
	margin:0 0 0 360px;
}

section#strong section.block_01 p.pic {
	position:absolute;
	left:1px;
	top:0;
}

section#strong section.block_02 {
	min-height:320px;
}

section#strong section.block_02 h3 {
	margin:0 0 24px 48px;
}

section#strong section.block_02 p.txt {
	width:555px;
	margin:0 0 0 48px;
}

section#strong section.block_02 p.pic {
	position:absolute;
	right:1px;
	top:0;
}

section#strong section.block_03 {
	min-height:330px;
}

section#strong section.block_03 h3 {
	margin:0 0 24px 320px;
}

section#strong section.block_03 p.txt {
	width:555px;
	margin:0 0 0 360px;
}

section#strong section.block_03 p.pic {
	position:absolute;
	left:1px;
	top:0;
}


/* works
-------------------------------------------------------*/

section#works {
	background:#A7764B;
	padding:0 0 33px;
	border-top:2px #EAEAEA solid;
}

section#works > header {
	padding:37px 0 32px 50px;
	background:url(../img/bg_works.png) 0 0 repeat-y;
}

section#works > header h2 {
	width:270px;
	margin:0 0 33px;
	padding:0 0 1px;
	border-bottom:2px #EFCD9A solid;
}

section#works > header p {
	font-size:16px;
	line-height:1.75;
	color:#fefefe;
}

section#works section.block {
	width:880px;
	margin:0 0 18px 50px;
	padding:0 0 26px;
	background:#FEF9F4;
}

section#works section.block > header {
	margin:0 0 31px;
	padding:22px 40px 29px;
	background:#F5EDE7;
}

section#works section.block > header h3 {
	font-size:24px;
	margin:0 0 7px;
}

section#works section.block > header dl {
	font-size:16px;
}

section#works section.block > header dl dt {
	color:#fff;
	margin:0 5px 0 0;
	padding:0 5px;
	background:#BD9470;
	display:inline;
}

section#works section.block > header dl dd {
	margin:0 20px 0 0;
	display:inline;
}

section#works section.block p.pic {
	text-align:center;
	margin:0 0 24px;
}
section#works section.block p.txt {
	font-size:16px;
	line-height:1.75;
	margin:0 40px;
}



/* pictures
-------------------------------------------------------*/

section#pictures {
	padding:0 0 15px;
	background:url(../img/bg_pictures.png) 0 0 repeat-y;
	border-top:2px #EFCD9A solid;
	border-bottom:2px #EFCD9A solid;
}

section#pictures > header {
	text-align:center;
	padding:38px 0 40px;
}

section#pictures > header h2 {
	width:270px;
	margin:0 auto 33px;
	padding:0 0 22px;
	border-bottom:2px #A06836 solid;
}

section#pictures > header p {
	font-size:16px;
	line-height:1.75;
}

section#pictures > div {
	width:100%;
}

section#pictures > div:after {
	content: "."; 
	display: block; 
	height: 0; 
	font-size:0;	
	clear: both; 
	visibility:hidden;
}

section#pictures section.block {
	color:#6a3906;
	width:300px;
	margin:0 0 20px 20px;
	padding:16px 0 20px;
	background:#fff;
	float:left;
}

section#pictures section.block h3 {
	font-size:20px;
	text-align:center;
	margin:0 0 15px;
}

section#pictures section.block p.pic {
	text-align:center;
	margin:0 0 15px;
}

section#pictures section.block p.txt {
	font-size:16px;
	line-height:1.5;
	margin:0 12px;
}


/* profile
-------------------------------------------------------*/

section#profile {
	font-size:16px;
	padding:40px 50px;
}

section#profile > header {
	margin:0 0 50px;
}

section#profile > header h2 {
	width:270px;
	padding:0 0 21px;
	border-bottom:2px #efcd9a solid;
}

section#profile h3 {
	color:#6a3906;
	font-weight:bold;
	margin:0 0 15px;
	padding:0 0 0 10px;
	border-left:6px #6A3906 solid;
}

section#profile section.area h3 {
	margin:0 0 21px;
}

section#profile section.about {
	width:410px;
	margin:0 0 56px;
	float:left;
}

section#profile section.credit {
	width:410px;
	margin:0 0 56px;
	float:right;
}

section#profile section.business {
	margin:0 0 50px;
	clear:both;
}

section#profile section.block dt {
	font-weight:bold;
	margin:0 0 0 9px;
}

section#profile section.block dd {
	margin:-2em 0 0.5em;
	padding:0.5em 0 0.5em 7.5em;
	border-bottom:2px #a0a0a0 dotted;
}

section#profile section.business dd {
	padding:0.5em 0 0.5em 11.5em;
}

section#profile section.business dd li {
	display:inline-block;
}

section#profile section.business dd li:after {
	content:" /";
}

section#profile section.business dd li:last-child:after {
	content:"";
}

section#profile section.credit li {
	list-style:disc inside;
	margin:0 0 0.5em;
	padding:0 0 0.5em 15px;
	border-bottom:2px #a0a0a0 dotted;
}

section#profile section.area {
	width:880px;
	position:relative;
}

section#profile section.area p {
	line-height:1.75;
	margin:0 0 15px;
}

section#profile section.area p.pic {
	margin:0;
	position:absolute;
	right:0;
	top:0;
}

section#profile section.area iframe {
	width:878px;
	height:298px;
	border:1px #CFCFCC solid;
	margin:90px 0 16px;
}

section#profile section.area dl {
	margin:0 0 5px;
}

section#profile section.area dl dt {
	color:#fff;
	margin:0 5px 0 0;
	padding:0 5px;
	background:#BD9470;
	display:inline;
}

section#profile section.area dl dd {
	margin:0 20px 0 0;
	display:inline;
}


/* contact
-------------------------------------------------------*/

section#contact {
	padding:0 0 38px;
	background:#FAF8EF;
}

section#contact > header {
	text-align:center;
	margin:0 0 34px;
	padding:40px 0 26px;
	background:url(../img/bg_contact.png) 0 0 repeat-y;
}

section#contact > header h2 {
	width:200px;
	margin:0 auto 25px;
	padding:0 0 3px;
	border-bottom:2px #ECDAC9 solid;
}

section#contact p.intro {
	text-align:center;
	font-size:16px;
	line-height:1.75;
}

section#contact p.tel {
	color:#a94d28;
	font-size:24px;
	text-align:center;
	margin:0 0 31px;
}

section#contact form {
	width:880px;
	margin:0 auto;
}

section#contact form h3 {
	margin:0 0 40px;
}

section#contact form dl {
	font-size:20px;
	margin:0 0 20px;
	padding:0.5em 0 0;
	border-top:2px #9D9C96 dotted;
}

section#contact form dl dt {
	margin:0 0 0 0.8em;
}

section#contact form dl dt span {
	color:#fff;
	font-size:18px;
	margin:0 0 0 10px;
	padding:0 7px;
	background:#A94D28;
	border-radius:5px;
}
section#contact form dl dd {
	margin:-1.5em 0 0.5em;
	padding:0 0 0.5em 284px;
	border-bottom:2px #9D9C96 dotted;
}

section#contact form input[type="text"] {
	font-size:16px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	width:460px;
	padding:0 0.5em;
}

section#contact form textarea {
	font-size:16px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	width:460px;
	height:75px;
	margin:0.2em 0 0;
	padding:0 0.5em;
}

section#contact form p.btn {
	text-align:center;
}

section#contact form p.btn button {
	margin:0 10px;
	background:none;
	border:none;
	cursor:pointer;
}

section#contact form p.btn button:hover {
	opacity:0.80;
}


/* footer
-------------------------------------------------------*/

footer {
	text-align:center;
	padding:25px 0;
	background:url(../img/bg_footer.png) center top;
	background-size:cover;
}

footer address {
	color:#fff;
	font-size:16px;
	font-style:normal;
}


/* pageTop
-------------------------------------------------------*/

p#pageTop {
	position:fixed;
	right:5px;
	bottom:80px;
}

p#pageTop img {
	cursor:pointer;
}

p#pageTop img:hover {
	opacity:0.80;
}

