@charset "UTF-8";
@import "base.css";
@import "fonts.css";
@import "lightbox.css";

/*==========================================================================*/
/*//////////////////////////////////////////////////////////////////////////*/
/*//////                                                              //////*/
/*//////  Copyright (C) 2009 株式会社フリーセル All Rights Reserved.  //////*/
/*//////                                                              //////*/
/*//////////////////////////////////////////////////////////////////////////*/
/*                                                                          */
/*    base.css   スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css  フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/

/*==========================================================================*/
/*                           Common-Setting                                 */
/* 
/* 汎用要素スタイル
/* ├ a
/* ├ table
/* ├ title
/* ├ p
/* └ div
/*  
/* 汎用classスタイル 
/* ├ image
/* ├ text,font
/* ├ gotop
/* └ banner
/*  
==========================================================================*/
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1,h2,h3,h4,h5,h6,input,button,textarea,select,p,blockquote,table,pre,address,ul,ol,dl {
}
* html body {
	font: 62.5% "ＭＳ Ｐゴシック", Meiryo, arial, clean, verdana, Osaka, sans-serif;
}

/* 汎用要素スタイル
-------------------------------------------------------*/

/* ========================= a */
a {
	color: #f41;
}
a:hover,
a:active {
	color: #f96; text-decoration: none;
}

/* ========================= table */
#content table {
	width: 580px;
	background: url(../images/common/fabric_bg.gif) repeat-y top left;
	border-spacing: 0;
}
#content th,
#content td {
	padding: 5px 10px;
	border: none;
	text-align: left;
	vertical-align: middle;
}
#content th {
	background: url(../images/common/line.gif) no-repeat bottom left;
	font-weight: normal;
}
#content td {
	background: #fff url(../images/common/line.gif) no-repeat bottom left;
}

/* ========================= title */
#content h3 {
	margin: 30px 0 15px;
}
#content h4 {
	margin: 30px 0 10px;
}
#content h3.firstChild,
#content h4.firstChild {
	margin-top: 0;
}

/* ========================= p */
#content p {
	margin: 0 0 1em;
}

/* ========================= div */
.section {
	margin: 0 10px;
}

/* 汎用classスタイル
-------------------------------------------------------*/

#content .last {
	margin-bottom: 0;
}
#content .fleft {
	float: left;
}
#content .fright {
	float: right;
}

/* ========================= clearfix */
.cf {
	zoom: 1;
}
.cf:after {
	content: '';
	display: block;
	clear: both;
}

/* ========================= image */
img {
	vertical-align: bottom;
}
#content .imgL {
	float: left;
	margin: 0 15px 0 0;
}
#content .imgLbtm {
	float: left;
	margin: 0 15px 15px 0;
}
#content .imgR {
	float: right;
	margin: 0 0 0 15px;
}
#content .imgRbtm {
	float: right;
	margin: 0 0 15px 15px;
}
#content .summaryImg {
	margin: 1em 0;
}


/* ========================= text,font */
.emphasis {
	color: #CC3300;
}
.bold {
	font-weight: bold;
}


/* ========================= gotop */
p.gotop {
	padding-top: 15px;
	background: url(../images/common/main_btm.gif) no-repeat top center;
	text-align: right;
	font-size: 0;
}


/* ========================= list */
.iconList li {
	padding-left: 20px;
	background: url(../images/common/icon_circle.gif) no-repeat 0 7px;
}


/* ========================= banner */
#content .contentBnr {
	margin-top: 30px;
	text-align: center;
}

/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/

html {
	overflow-y: scroll;
	background: none;
}

body {
  background: url(../images/common/body_bg.gif) top left;
	color: #463831;
	text-align: center;
}
#container {
	padding-bottom: 10px;
  background: url(../images/common/container_bg.jpg) top repeat-x;
}
#contInner {
	background: url(../images/common/continner_bg.jpg) no-repeat center 170px;
}
#wrapper {
	width: 900px;
	margin: 0 auto;
}
#main {
	margin: 0 -2px;
	padding-top: 20px;
	padding-left: 22px;
	padding-right: 22px;
	width: 860px;
  background: url(../images/common/main_bg.gif) 0 0 repeat-y;
	text-align: left;
	zoom: 1;
}
* html #main {
	width: 904px;
}
#main:after {
	content: '';
	display: block;
	clear: both;
}


/*==========================================================================*/
/*                               Header                                     */
/*==========================================================================*/

#header {
	position: relative;
	width: 900px;
	height: 445px;
	background: url(../images/common/continner_bg.jpg) no-repeat center 170px;
	text-align: left;
}

/*  ========================= general */
#header h1,
#header #logo,
#header #globalNav,
#header #headInfo,
#header #pageImg {
	position: absolute;
}

/*  ========================= h1 */
#header h1 {
	top: 5px;
	left: 0;
	color: #333;
	font-size: 100%;
	line-height: 1.5;
}

/*  ========================= logo */
#header #logo {
	top: 35px;
	left: 4px;
}

/*  ========================= headInfo */
#header #headInfo {
	top: 17px;
	right: 6px;
}

/*  ========================= globalNavi */
#header ul#globalNav {
	top: 113px;
	left: 0;
	width: 900px;
	height: 57px;
}
#header ul#globalNav li {
	float: left;
}

/*  ========================= h2 */
#header h2#pageImg {
	top: 251px;
	left: 0;
	font-size: 0;
	line-height: 1;
}

/*==========================================================================*/
/*                              Footer                                      */
/*==========================================================================*/

#footer {
	width: 100%;
	background: url(../images/common/footer_bg.jpg) repeat-x top left;
}
#footer #copyright {
	width: 900px;
	margin: 0 auto;
	font-size: 120%;
	line-height: 74px;
	color: #333;
	font-weight: bold;
}


/*==========================================================================*/
/*                            Navigation                                    */
/*==========================================================================*/

#nav {
	float: left;
	margin-bottom: 20px;
	width: 240px;
}
#nav p {
	margin-bottom: 0;
	line-height: 1.6;
}
#nav p.mapTi {
	margin-bottom: 5px;
}
#nav .navMap {
	margin-bottom: 30px;
	padding: 7px;
	background-color: #F1ECDF;
	text-align: left;
	font-size: 140%;
}
#nav .mapImg {
	margin-bottom: 5px;
}
#nav #banner li {
	margin-bottom: 10px;
}
#nav #banner li.last {
	margin-bottom: 0;
}

/*  ========================= localnavi */
#nav #localNav {
	margin-left: 18px;
	margin-bottom: 43px;
	width: 186px;
	height: 603px;
	background: url(../images/common/nav_bg.gif) no-repeat top left;
}
#nav #localNav dl {
	font-size: 0;
	line-height: 1;
}
#nav #localNav .navDir01 {
	margin-bottom: 11px;
	padding-top: 25px;
}
#nav #localNav .navCase {
	margin-bottom: 15px;
}
#nav #localNav .navTownhouse {
	margin-bottom: 23px;
}
#nav #localNav .navUnique {
	margin-bottom: 22px;
}
#nav #localNav .navInterior {
	margin-bottom: 15px;
}
#nav #localNav .navFacility {
	margin-bottom: 19px;
}
#nav #localNav .navDir02 {
	margin-bottom: 34px;
}
#nav #localNav .navCompany,
#nav #localNav .navFollow,
#nav #localNav .navStaff,
#nav #localNav .navFlow,
#nav #localNav .navVoice,
#nav #localNav .navPrivacy {
	margin-bottom: 15px;
}

/*==========================================================================*/
/*                             Contents                                     */
/*==========================================================================*/
#content {
	float: right;
	margin-bottom: 20px;
	width: 600px;
	font-size: 140%;
	text-align: left;
	line-height: 1.7;
}


/* ========================= 背景設定 */
#casePage #contInner {
	background: url(../images/case_continner_bg.jpg) no-repeat center 170px;
}
#casePage #header {
	background: url(../images/case_continner_bg.jpg) no-repeat center 170px;
}
#townhousePage #contInner {
	background: url(../images/townhouse_continner_bg.jpg) no-repeat center 170px;
}
#townhousePage #header {
	background: url(../images/townhouse_continner_bg.jpg) no-repeat center 170px;
}
#uniquePage #contInner {
	background: url(../images/unique_continner_bg.jpg) no-repeat center 170px;
}
#uniquePage #header {
	background: url(../images/unique_continner_bg.jpg) no-repeat center 170px;
}
#interiorPage #contInner {
	background: url(../images/interior_continner_bg.jpg) no-repeat center 170px;
}
#interiorPage #header {
	background: url(../images/interior_continner_bg.jpg) no-repeat center 170px;
}
#facilityPage #contInner {
	background: url(../images/facility_continner_bg.jpg) no-repeat center 170px;
}
#facilityPage #header {
	background: url(../images/facility_continner_bg.jpg) no-repeat center 170px;
}



/* ========================= link */

.link_ul{widows:600px;}

.ul_st{float:left; margin-bottom:8px;}
.ul_in{float:left; margin-left:8px; margin-bottom:8px;}

.link_mgT30{margin-top:30px;}
.link_mgT50{margin-top:50px;}


/* 01 index
------------------------------------------------------------------------*/
#indexPage #header {
	height: 624px;
}
#indexPage #header #pageImg {
	top: 274px;
	left: -26px;
}
#indexPage #contInner {
	background: url(../images/common/index_continner_bg.jpg) no-repeat center 170px;
}
#indexPage #header {
	background: url(../images/common/index_continner_bg.jpg) no-repeat center 170px;
}
#indexPage #content #newsBox {
	padding: 21px 0 15px 9px;
	width: 591px;
	background: url(../images/index_news_bg.gif) no-repeat top left;
}
* html #indexPage #content #newsBox {
	width: 600px;
	height: 200px;
}
#indexPage #content #newsBox h3 {
	margin-top: 0;
}
#indexPage #content #newsBox .newsArticle {
	width: 590px;
	zoom: 1;
}
#indexPage #content #newsBox .newsArticle div {
	float: left;
	width: 186px;
	margin-right: 10px;
	zoom: 1;
}
#indexPage #content #newsBox .newsArticle:after {
	content: '';
	display: block;
	clear: both;
}
#indexPage #content #newsBox .newsArticle div .fleft {
	width: 70px;
	margin-right: 10px;
}
#indexPage #content #newsBox .newsArticle div .offItem {
	display: none;
}
#indexPage #content #newsBox .newsArticle div .fleft img {
	width: 70px;
}
#indexPage #content #newsBox .newsArticle dl {
	overflow: hidden;
	zoom: 1;
	line-height: 1.3;
}
#indexPage #content #newsBox .newsArticle dl dt {
	font-size: 71.5%;
}
#indexPage #content #newsBox .newsArticle dl dd {
	font-size: 85.5%;
}
#indexPage #content #pickupBox {
	padding-top: 36px;
	width: 600px;
	height: 474px;
	margin-bottom: 20px;
	background: url(../images/index_pickup_bg.gif) no-repeat top left;
}
* html #indexPage #content #pickupBox {
	height: 510px;
}
#indexPage #content #pickupBox h3 {
	margin-top: 0;
	margin-bottom: 30px;
}
#indexPage #content #pickupList {
	position: relative;
	margin-left: 16px;
	width: 573px;
	height: 337px;
}
#indexPage #content #pickupList li {
	position: absolute;
}
#indexPage #content #pickupList li.pickup01 {
	top: 0;
	left: 0;
}
#indexPage #content #pickupList li.pickup02 {
	top: 0;
	right: 0;
}
#indexPage #content #pickupList li.pickup03 {
	top: 114px;
	left: 292px;
}
#indexPage #content #pickupList li.pickup04 {
	top: 120px;
	right: 4px;
}
#indexPage #content #pickupList li.pickup05 {
	bottom: 0;
	left: 0;
}
#indexPage #content #worryBox {
	margin-top: 20px;
	padding: 0 0 20px;
	background: url(../images/common/dotline.gif) no-repeat bottom center;
}
#indexPage #content #worryBox h4 {
	margin-top: 0;
}
#indexPage #content #worryBox .worryInner {
	margin: 0 10px;
	background: url(../images/index_img01.gif) no-repeat top right;
}
#indexPage #content .checkList li {
	padding: 8px 0 5px 28px;
	background: url(../images/index_icon_check.jpg) no-repeat 0 3px;
}
#indexPage #content .emphasis {
	font-weight: bold;
	color: #463831;
}
/*  ========================= general */
#content .caseBox {
	margin: 20px 10px;
	background: url(../images/common/bg_cloth.gif) no-repeat top left;
}
#content .caseBox h4 {
	margin: 0 0 15px;
}
#content .caseDetailBox {
	margin-top: 30px;
	zoom: 1;
}
#content .caseDetailBox:after {
	content: '';
	display: block;
	clear: both;
}
#content .caseDetailBox .detailInner {
	width: 290px;
}
#content .caseDetailBox .detailInner .photoList {
	padding-top: 16px;
	background: url(../images/case_bg_ba.gif) no-repeat top left;
}
#content .caseDetailBox .detailInner .photoList li {
	margin-bottom: 10px;
	text-align: center;
	font-size: 71.4%;
}
#content dl.otherList {
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
	width: 142px;
}
#content .otherList dt,
#content .otherList dd {
	text-align: center;
}
#content dl.lastChild {
	float: right;
	margin-right: 0;
}
#content ul.otherList {
	zoom: 1;
}
#content ul.otherList:after {
	content: '';
	display: block;
	clear: both;
}
#content ul.otherList li {
	float: left;
}


/* 02 case/
------------------------------------------------------------------------*/


/* 05 case/interior
------------------------------------------------------------------------*/
#interiorPage #content h5 {
	margin-top: 20px;
}
#interiorPage #content .exampleBox {
	padding: 10px 8px;
	background: url(../images/interior_box_bg.gif) no-repeat bottom left;
}
#interiorPage #content .exampleBox dl {
	margin-bottom: 20px;
	width: 280px;
	text-align: center;
}
#interiorPage #content .exampleBox dl dt {
	margin-bottom: 10px;
}
#interiorPage #content .exampleBox dl.example01,
#interiorPage #content .exampleBox dl.example03 {
	float: left;
}
#interiorPage #content .exampleBox dl.example02,
#interiorPage #content .exampleBox dl.example04 {
	float: right;
}


/* 07 flow
------------------------------------------------------------------------*/
#flowPage #content .flowList {
	margin-top: 30px;
}
#flowPage #content .flowList dl {
	zoom: 1;
}
#flowPage #content .flowList dl:after {
	content: '';
	display: block;
	clear: both;
}
#flowPage #content .flowList dt {
	float: left;
	margin-right: 10px;
}
#flowPage #content .flowList dd {
	padding-top: 20px;
}


/* 08 follow
------------------------------------------------------------------------*/
#followPage #content .iconList {
	margin-bottom: 20px;
}


/* 09 staff
------------------------------------------------------------------------*/
#staffPage #content .staff {
	margin-top: 30px;
	zoom: 1;
}
#staffPage #content .staff:after {
	content: '';
	display: block;
	clear: both;
}
#staffPage #content .staff dl {
	float: right;
	width: 315px;
}
#staffPage #content .staff dt {
	margin-bottom: 10px;
}
#staffPage #content .staff p.photo {
	float: left;
	margin-bottom: 0;
}


/* 10 voice
------------------------------------------------------------------------*/
#voicePage #content .voiceName {
	margin-top: 20px;
}
#voicePage #content #voiceBox {
	background: url(../images/voice_box_bg.gif) repeat-y top left;
}
#voicePage #content #voiceBox .boxInner {
	padding-bottom: 18px;
	background: url(../images/voice_box_btm.gif) no-repeat bottom left;
}
#voicePage #content #voiceBox .section {
	margin: 0 20px;
}


/* 11 company
------------------------------------------------------------------------*/
#companyPage #content .mapArea {
	padding: 20px;
	width: 540px;
	height: 409px;
	background: url(../images/company_map_bg.gif) no-repeat top left;
}
* html #companyPage #content .mapArea {
	width: 580px;
	height: 449px;
}
#companyPage #content .mapArea #map {
	width: 540px;
	height: 409px;
}


/* 14 news
------------------------------------------------------------------------*/
#newsPage #content .section {
	padding: 30px 20px 20px;
	background: url(../images/news_bg.jpg) no-repeat top left;
	zoom: 1;
}
#newsPage #content .section:after {
	content: '';
	display: block;
	clear: both;
}
#newsPage #content .date {
	margin-bottom: 5px;
	font-size: 85.5%;
}
#newsPage #main #content h4 {
	overflow: hidden;
	margin: 0 0 15px;
	padding-bottom: 10px;
	background: url(../images/news_line.gif) repeat-x left bottom;
	font-weight: bold;
	zoom: 1;
}
#newsPage #content .fleft {
	margin-right: 15px;
	margin-bottom: 10px;
}
#newsPage #content .fleft img {
	width: 280px;
}
#newsPage #content .offItem {
	display: none;
}


/* contact
------------------------------------------------------------------------*/

/*  ========================= table style */
#contactPage #content table.mailform {
	margin-top: 10px;
	padding: 0;
	width: 580px;
	border: none;
}
#contactPage #content .mailform tr th,
#contactPage #content .mailform tr td {
	padding: 5px 10px;
	border: none;
	text-align: left;
	vertical-align: middle;
}
#contactPage #content .mailform tr th {
	width: 200px;
	background: url(../images/common/line.gif) no-repeat bottom left;
	color: #333;
}
#contactPage #content .mailform tr td {
	background: #fff url(../images/common/line.gif) no-repeat bottom left;
}
#contactPage #content .mailform tr td li,
#contactPage #content .mailform tr td label {
	float: none;
	white-space: normal;
}



/*  ========================= input style */
#contactPage #content .mailform input {
	margin-right: 3px;
	vertical-align: middle;
}
#contactPage #content .mailform select {
	margin-right: 3px;
}
#contactPage #content .mailform textarea {
	width: 300px;
}

/*  ========================= label style */
#contactPage #content .mailform label.fmail_label_enabled {
	display: inline;
	text-indent: 0;
	margin: 0 3px 0 0;
	padding: 0 5px 0 0;
	border: none;
	background: none;
	font-weight: bold;
}
#contactPage #content .mailform label.fmail_label_disabled {
	display: inline;
	margin: 0 3px 0 0;
	padding: 0 5px 0 0;
	text-indent: 0;
	margin: 0;
	border: none;
}


/*  ========================= list style */
#contactPage ol.fmail_radio_list li,
#contactPage ol.fmail_checkbox_list li {
	list-style: none;
	float: left;
	padding: 5px 10px 5px 0;
}

/*  ========================= button style */
#contactPage #content .button {
	margin-top: 20px;
	text-align: center;
}
#contactPage #content .button input {
	width: 160px;
	padding: 5px;
	border: none;
	background: #24513C;
	color: #fff;
	font-weight: bold;
}
#contactPage #content .site_top {
	text-align: center;
}
#contactPage #content .site_top a{
	display:block;
	width:160px;
	height: auto;
	margin: 1em auto;
	padding: 10px 0;
	border: none;
	background-image: none;
	background: #24513C;
	color: #fff;
	font-weight: bold;
	text-indent: 0;
	text-align: center;
	text-decoration: none;
}


/*  ========================= text style */
#contactPage #content em {
	margin-left: 3px;
	color: #c00;
	font-size: 83.5%;
}
#contactPage #content .info {
	color: #999;
	font-size: 83.5%;
}
#contactPage #content span.fmail_error {
	padding: 2px 0 3px 17px;
	background-position: left center;
}
#contactPage #content th.fmail_error,td.fmail_error,.fmail_error {
	background-color: none;
}
#contactPage #content div.fmail_must {
	float: left;
	width:30px;
	height:16px;
	margin: 2px 5px 0 0;
	overflow:hidden;
	text-indent:-50000px;
}
#contactPage ol.fmail_checkbox_list {
	width: auto;
}
