@charset "UTF-8";

/* ------------------------------------------------------------ */
/* 基本指定 */
/* ------------------------------------------------------------ */
/* ------------------------------------------------------------ */
/* トップビジュアルエリア */
/* ------------------------------------------------------------ */
#headerWrap {
	padding:25px 0;
	width: 100%;
	height: 15px;
	position: fixed;
	z-index: 999;
	background-color:rgba(255,255,255,0.40)
}
#header {
	margin: 0 auto;
	width: 650px;
}
#header ul {
}
#header ul li {
	float:left;
}
#header ul li a {
	margin: 0 14px;
	height:15px;
	display:block;
	text-indent:-9999px;
	background-position:0 0;
	background-repeat:no-repeat;
}
#header ul li.home a {
	width:33px;
	background-image:url(../img/navi_home.png);
	
}
#header ul li.concept a {
	width:55px;
	background-image:url(../img/navi_concept.png);
}
#header ul li.works a {
	width:43px;
	background-image:url(../img/navi_works.png);
}
#header ul li.modelhouse a {
	width:86px;
	background-image:url(../img/navi_modelhouse.png);
}
#header ul li.blog a {
	width:30px;
	background-image:url(../img/navi_blog.png);
}
#header ul li.aboutus a {
	width:60px;
	background-image:url(../img/navi_aboutus.png);
}
#header ul li.contact a {
	width:55px;
	background-image:url(../img/navi_contact.png);
}
#header ul li.reserve a {
	width:56px;
	background-image:url(../img/navi_reserve.png);
}

#header ul li a:hover {
	background-position:0 -15px;
}
/* ------------------------------------------------------------ */
/*  footer */
/* ------------------------------------------------------------ */
#footerWrap {
	clear:both;
}
#footer {
	width:720px;
	margin:0 auto;
	position:relative;
}
#footer .box {
	width:600px;
	padding:50px 0 0;
	float:left;
	color:#fff;
}
#footer .box .title {
	font-weight:bold;
	margin:0 0 10px;
	font-size:107%;
}
#footer .box .copy {
	padding:40px 0 0 ;
	font-size:77%;
}
#footer .contactBtn {
	float:right;
	width:68px;
	padding:40px 0 0 0;
}

#footer .contactBtn a {
	display:block;
	margin:0 0 20px;
}

#footerWrap .pagetop {
	top:-60px;
	right:0;
	position:absolute;
}

/* ------------------------------------------------------------ */
/*  下層ページメインコンテンツ */
/* ------------------------------------------------------------ */

#sub #contents {
	width:720px;
	margin:0 auto;
	padding:100px 0 0;
}

#sub #contents .pageNavi {
	text-align:center;
	clear:both;
	margin:0 0 120px;
}
#sub #contents .pageNavi a:hover {
	color:#f00;
}

/* ------------------------------------------------------------ */
/*  NEWS */
/* ------------------------------------------------------------ */

.news #contents .main {
	width:480px;
	float:left;
}
#sub #contents h2 {
	margin:0 0 45px;
}
.news #contents .main h3 {
	margin:0 0 10px;
	border-left:solid 1px #656565;
	font-size:122%;
	padding:0 0 0 15px;
}
.news #contents .main .data {
	padding:0 0 0 15px;
	margin:0 0 30px;
}
.news #contents .main .data .icon {
	background:#656565;
	color:#fff;
	width:60px;
	text-align:center;
	font-size:85%;
	padding:1px 0 0;
	float:left;
	margin:0 20px 0 0;
}
.news #contents .main .section:last-child {
	border:none;
	margin:0 0 120px;
}

.news #contents .main .section {
	clear:both;
	border-bottom: dotted 2px #ccc;
	margin:0 0 60px;
}
.news #contents .main .entory {
	line-height:1.8em;
	margin:0 0 60px;
}
.news #contents .main .entory img {
	display:block;
	margin:0 0 30px;
}

.news #contents .main .banner a {
	display:block;
	width:100%;
	height:auto;
}

.news #contents .main .banner img {
	width:100%;
	height:auto;
}

.news #contents .sideBar {
	width:195px;
	float:right;
}
.news #contents .sideBar h3 {
	border-bottom:solid 1px #656565;
	padding:0 0 5px;
	margin:0 0 15px;
	color:#656565;
}
.news #contents .sideBar ul {
	margin:0 0 50px;
}
.news #contents .sideBar li {
	margin:0 0 3px;
}
.news #contents .sideBar li a:hover {
	color:#f00;
}

/* ------------------------------------------------------------ */
/*  CONCEPT */
/* ------------------------------------------------------------ */
.concept .titleimg {
	margin:0 0 30px;
	text-align:center;
}
.concept .mainimg {
	margin:0 0 30px;
}
.concept .text {
	font-weight:bold;
	line-height:2.2em;
	font-size:107%;
	margin:0 0 100px;
	text-align:justify;
	text-justify:auto;
}
.concept .btn {
	clear:both;
	text-align:center;
	margin:0 0 150px;
}

/* ------------------------------------------------------------ */
/*  WORKS */
/* ------------------------------------------------------------ */
.works .section {
	width:618px;
	overflow:hidden;
	margin:0 auto 60px;
}

.works .section ul li {
	width:110px;
	height:200px;
	float:left;
	position:relative;
	margin:0 40px 0 0;
	word-break:break-all;
}
.works .section ul li .icon {
	position:absolute;
	top:10px;
	right:-18px;
}
.works .section ul li img {
	display:block;
	margin:0 0 5px;
}
.works .section ul li a {
	display:block;
}
.works .section ul li a h3 {
	background:url(../works/img/icon.jpg) no-repeat 0 6px;
	font-weight:normal;
	padding:0 0 0 10px;
}
.works .section ul li a:hover h3 {
	background:url(../works/img/icon_on.jpg) no-repeat 0 6px;
}
.works .section ul li a:hover img {
	opacity:0.7;
	filter: alpha(opacity=70);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
}
.works .single .main h3 {
	width:624px;
	margin:0 auto 30px;
	border-left:solid 1px #333;
	padding:0 0 0 15px;
}
.works .single .main .entrybody {
	width:640px;
	margin:0 auto;
}
.works .single .main .entrybody p {
	font-weight:bold;
	margin-bottom:10px;
}
.works .single .main .entrybody .textleft {
	float:left;
	width:290px;
	padding-right:30px;
	margin-bottom:80px;
}
.works .single .main .entrybody .textright {
	float:right;
	width:289px;
	padding-left:30px;
	margin-bottom:80px;
	border-left:1px solid #CCCCCC;
}

/* ------------------------------------------------------------ */
/*  MODELHOUSE */
/* ------------------------------------------------------------ */
.modelhouse .captionBox {
	width:762px;
	margin: 0 auto 80px;
}
.modelhouse h3 {
	margin:0 0 30px;
}
#gallery {
	width:640px;
	margin: 0 auto 70px;
}
.modelhouse .map {
	width:720px;
	height:366px;
	position:relative;
	background:url(../modelhouse/img/bg-access.jpg) no-repeat 0 0;
	margin:0 0 100px;
}
.modelhouse .map .text {
	position:absolute;
	line-height:1.6em;
	top:260px;
	left:40px;
}
.modelhouse .map .btn {
	position:absolute;
	bottom:30px;
	right:40px;
}
.modelhouse .map .btn:hover {
	opacity:0.7;
	filter: alpha(opacity=70);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
}

.modelhouse .main .banner {
	/*width:100%;*/
	text-align: center;
	margin: 0 auto 140px;
}

.modelhouse .main .banner a {
	display:block;
	/*width:100%;
	height:auto;*/
	margin: 0 auto;
}

/*.modelhouse .main .banner img {
	width:100%;
	height:auto;
}*/


/* ------------------------------------------------------------ */
/*  RECRUIT*/
/* ------------------------------------------------------------ */
.recruit h3 {
	margin:0 0 66px;
}
.recruit .section {
	margin:0 0 200px;
}
.recruit p {
	font-size:16px;
	letter-spacing:0.1em;
	line-height:1.5em;
}
.recruit .recruitbox {
	margin-top:60px;
	padding:45px 53px;
	background-color:#dcdcdc;
}
.recruit .recruitbox p.black {
	color:#FFF;
	background-color:#000;
	display: inline-block;
	padding:6px 15px;
	margin-bottom:46px;
	font-weight:normal;
	letter-spacing:0.1em;
}
	
/* ------------------------------------------------------------ */
/*  BLOG */
/* ------------------------------------------------------------ */
.blog #contents h3 {
	margin:0 0 80px;
}
.blog #contents .main {
	width:430px;
	float:left;
	overflow:hidden;
	margin:0 0 100px;
}
.blog #contents .main ul {
	width:480px;
}
.blog #contents .main ul li {
	width:110px;
	float:left;
	margin:0 50px 50px 0;
	height:240px;
}
.blog #contents .main ul li img {
	display:block;
	margin:0 0 10px;
}
.blog #contents .main ul li .cat {
	background:#666;
	color:#fff;
	font-size:85%;
	padding:0 0 0 5px;
}
.blog #contents .main ul li .data {
	margin:5px 0;
	font-size:85%;
}
.blog #contents .main ul li .text {
	font-size:95%;
	line-height:1.5em;
}
.blog #contents .main ul li h4 {
	font-size:100%;
	font-weight:bold;
	margin:0 0 5px;
}
.blog #contents .sideBar {
	width:210px;
	float:right;
}
.blog #contents .sideBar h5 {
	border-bottom:solid 1px #666;
	padding:0 0 5px;
	margin:0 0 10px;
	color:#666;
}
.blog #contents .sideBar h5.noborder {
	border:none !important;
	padding:0 0 5px;
	margin:0 0 10px;
	color:#666;
}
.blog #contents .sideBar ul {
	margin:0 0 50px;
}
.blog #contents .sideBar ul li {
	margin:0 0 5px;
	background:url(../blog/img/side-list-icon.gif) no-repeat 0 6px;
	padding:0 0 0 15px;
}
.blog #contents .sideBar ul li a:hover {
	color:#f00;
	text-decoration:none;
}
.blog #contents .sideBar .calender {
	margin:0 0 50px;
}
.blog #contents .pageNavi {
	clear:both;
	text-align:center;

}
.blog .single .entory h3 {
	border-left:solid 1px #666;
	padding:0 0 0 20px;
	font-size:122%;
	margin:0 0 20px !important;
}
.blog .single .dataBox {
	margin:0 0 20px;
	padding:0 0 0 20px;
}
.blog .single .cat {
	background:#666;
	padding:0 5px;
	color:#fff;
	margin:0 15px 0 0;
}
.blog .single .entory {
	margin:0 0 100px;
}
.blog .single .entory img {
	display:block;
	margin:0 0 20px;
}

.blog .main .banner a {
	display:block;
	width:100%;
	height:auto;
}

.blog .main .banner img {
	width:100%;
	height:auto;
}


/* ------------------------------------------------------------ */
/*  CONTACT */
/* ------------------------------------------------------------ */
.contact .main {
	width:640px;
	margin:0 auto 150px;
}
.contact .section {
	clear:both;
	margin:0 0 50px;
}
.contact .section h3.noborder {
	border:none !important;
}
.contact .section h3 {
	padding:0 0 5px;
	border-bottom:solid 1px #666;
	margin:0 0 15px;
	font-weight:normal;
}
.contact .section table td {
	padding:10px 0 30px;
}
.contact .section .left {
	padding:10px 0 0 0;
	width:250px;
	float:left;
	text-align:left;
}
.contact .section .right {
	padding:10px 0 0 0;
	width:250px;
	float:right;
	text-align:right;
}

/* ------------------------------------------------------------ */
/*  PROCESS */
/* ------------------------------------------------------------ */
.process h3 {
	margin:0 0 10px;
	font-size:16px;
}
.process .text {
	margin:0 0 20px;
}
.process .flow {
	width:720px;
	height:1351px;
	margin:0 0 150px;
	background:url(../process/img/bg_process.gif) 0 0 no-repeat;
}
.process .flow ul {
	width:500px;
	padding:103px 0 0 135px;
}
.process .flow ul li {
	width:500px;
	font-size:93%;
}
.process .flow ul li h4 {
	font-size:114%;
}
.process .flow ul li.flow01,
.process .flow ul li.flow07 {
	height:85px;
}
.process .flow ul li.flow02,
.process .flow ul li.flow03,
.process .flow ul li.flow04,
.process .flow ul li.flow06,
.process .flow ul li.flow08,
.process .flow ul li.flow09,
.process .flow ul li.flow10 {
	height:86px;
}
.process .flow ul li.flow05,
.process .flow ul li.flow11 {
	height:161px;
}

/* ------------------------------------------------------------ */
/*  RESERVE */
/* ------------------------------------------------------------ */
.reserve .main {
	width:640px;
	margin:0 auto 150px;
}
.reserve .section {
	clear:both;
	margin:0 0 50px;
}
.reserve .section.mv {
	clear:both;
	margin:0 auto 30px;
}
.reserve .section.formBox {
	margin:0 auto 40px;
}

.reserve h3 {
	margin:0 auto 5px;
}
.reserve .section h3 {
	padding:0 0 5px;
	border-bottom:solid 1px #666;
	font-weight:normal;
}
.reserve .section h3.nobdr {
	border-bottom:none;
	padding: 0;
}
.reserve .section h3.nomb {
	margin:0 auto;
}

.reserve .notice {
	margin:0 auto 15px;
	padding: 10px 0;
	border-bottom:solid 1px #666;
}

.reserve .section .required {
	color: #b90018;
}

.reserve .section input[type="text"] {
	width: 80%;
}
.reserve .section textarea {
    margin: 0 auto 40px;
}

.reserve .section table {
	width:100%;
}
.reserve .section h3 .required,
.reserve .section table .required {
    margin: 0 0 0 8px;
}
.reserve .section table.bdr {
	border-top: solid 1px #666;
}

.reserve .section table td {
	padding:10px 0 20px;
}
.reserve .section table tr.blank td {
	padding: 15px 0 0;
}
.reserve .section table label.item-cal {
	position:relative;
}
.reserve .section table label.item-cal input {
	height: 25px;
}

.reserve .section table label.item-cal img {
	position:absolute;
	right:0;
}


.reserve .section .left {
	padding:10px 0 0 0;
	width:250px;
	float:left;
	text-align:left;
}
.reserve .section .right {
	padding:10px 0 0 0;
	width:250px;
	float:right;
	text-align:right;
}

.reserve .section.confirm {
    margin: 0 auto 30px;
    padding: 20px 0 0;
}
.reserve .section.confirm .ttl {
    margin: 0 auto 15px;
    font-weight: bold;
    font-size: 15px;
}
.reserve .section.confirm p.msg {
    margin: 0 auto 20px;
    padding: 0 0 20px;
    border-bottom: solid 1px #666;
}
.reserve .section.confirm table.form .msg {
	color: #b90018;
}

