@charset "utf-8";

/* Reset Class */

* {
	margin: 0;
	padding: 0;
}

p,h1,h2,h3,h4,h5,h6,a,li,td,th,dt,dd,input,textarea,address {
	font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
}

div:after,
ul:after {
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
}

div,
ul {
	zoom: 100%;
}

sup {
	vertical-align: baseline;
	position:relative;
	top:-4px
}

p {
	line-height: 1.5em;
	font-size: 12px;
}

a { color: #FFA200; }
a:hover {
	color: #FFFFFF;
	background: #FFA200;
}


a img {
	border: none;
}

strong {
	color: #FA4B0C;
}

body {
	background: url(images/bg_body.gif);
	text-align: center;
}

#contents {
	background: url(images/bg_contents.gif) repeat-y;
	width: 860px;
	padding-left: 10px;
	padding-right: 10px;
	margin: 0px auto;
}


/* header指定 */

#header {
	padding: 15px 15px 0 15px;
	border-top: 5px solid #6A6256;
}

#header #logo {
	float: left;
}

#header #contact_btn {
	float: right;
	margin-top: 2px;
}

#header #tel {
	float: right;
	margin-right: 15px;
}

#header ul.hd_menu {
	float: right;
	margin-right: 16px;
	margin-top: 3px;
	width: 232px;
}

#header ul.hd_menu li {
	float: left;
	list-style: none;
}



/* footer指定 */

#footer {
	width: 860px;
	padding-top: 20px;
	clear: both;
}

#footer address {
	font-style: normal;
	color: #3D2716;
	background: #EEE4D8;
	font-size: 10px;
	text-align: right;
	padding: 2px 8px;
}

#footer_link {
	background: #3D2716;
	padding: 10px 12px;
}

#footer #footer_company {
	float: right;
	margin-top: 10px;
}

#footer p {
	font-size: 10px;
	color: #FFFFFF;
	text-align: left;
}

#footer a {
	color: #FFFFFF;
	background: none;
}



/* navi指定 */

#navi {
	float: left;
	width: 203px;
	padding-left: 15px;
	padding-top: 20px;
}

#navi img.title {
	margin-bottom: 0px;
	margin-top: 25px;
}

#navi ul {
	padding: 0px 7px;
	margin-top: 12px;
}

#navi li {
	list-style: none;
	text-align: left;
	margin-top: 2px;
}

#navi .uservoice {
	margin-top: 5px;
	margin-bottom: 15px;
	text-align: left;
	width: 200px;
	margin-left: 7px;
}

#navi .uservoice img {
	float: left;
	margin-right: 5px;
}

#navi .uservoice a {
	font-size: 10px;
	font-weight: normal;
	line-height: 1.5em;
}

#navi .uservoice p {
	font-size: 10px;
	color: #3D22716;
	margin-top: 6px;
}



/* tppage_navi指定 */

#toppage_navi {
	width: 257px;
	float: right;
	padding-right: 12px;
	margin-top: 22px;
	text-align: right;
	margin-bottom: 25px;
}

ul.news {
	margin-left: 15px;
}

ul.news li {
	margin-top: 10px;
	font-size: 12px;
	line-height: 1.5em;
	list-style: none;
	text-align: left;
	padding-left: 12px;
	background: url(images/newslist.gif) no-repeat left top;
}

ul.banner {
	margin-top: 40px;
	*margin-top: 18px;
	_margin-top: 18px;
}

ul.banner li {
	text-align: right;
	list-style: none;
	margin-top: 15px;
}

ul.blog {
	padding-left: 7px;
}

ul.blog li {
	text-align: left;
	font-size: 12px;
	list-style: none;
	margin-bottom: 12px;
}

.top_gallary {
	margin-top:15px;
}



/* toppage_topics指定 */

#toppage_topics {
	margin-top: 22px;
	padding-left: 13px;
	width: 350px;
	float: left;
	text-align: left;
	line-height: 1.2em;
	margin-bottom: 25px;
}

dl.topics {
	font-size: 12px;
}

dl.topics dt {
	margin-bottom: 4px;
}

dl.topics dd {
	margin-bottom: 15px;
}



/* 汎用指定 */

.rightpic {
	float: right;
	margin-left: 15px;
	margin-bottom: 15px;
}

.leftpic {
	float: left;
	margin-right: 15px;
	margin-bottom: 15px;
}

.pictbox {
	margin-bottom: 20px;
}


.br {
	margin-top: 1.5em;
}

.left {
	float: left;
}

.right {
	float: right;
}


/* コンテンツ指定 */

#catch_text {
	float: left;
	width: 218px;
}

#main {
	width: 612px;
	float: right;
	padding: 0px 15px;
}

#topicpath {
	margin-top: 7px;
	text-align: right;
	font-size: 10px;
}

#content_body {
	background: #F2ECDF;
	margin-top: 3px;
	text-align: left;
	padding: 16px 12px;
	min-height: 700px;
	_height: 700px;
	margin-bottom: 25px;
}

#content_body p {
	color: #6A6256;
}

#content_body img.title {
	margin-bottom: 20px;
}

#content_body img.sectl {
	margin-top: 60px;
	margin-bottom: 20px;
}

img.subtitle {
	margin-top: 20px;
	margin-bottom: 10px;
}

img.pictitle {
	margin-bottom: 10px;
}

#content_body img.border {
	clear: both;
	margin: 12px 0px;
}

#topimage {
	*margin-bottom: -4px;
	_margin-bottom: -4px;
}


#other .subtitle{
	margin-top:50px;
	margin-bottom:5px;
}

ul.other_li li{
	margin-top:5px;
	background: url(images/link_listitem.gif) left no-repeat;
	padding-left:20px;
	list-style:none;
	color:#6A6256;
	font-size: 12px;
}


#p_contact{
	text-align:right;
	margin-top:20px;
}

#p_home{
	text-align:right;
	margin-top:5px;
}

#other .subtitle{
	margin-top:50px;
	margin-bottom:5px;
}


/* トップページ指定 */

.index_gallary_link { margin-top: 20px; }

.index_gallary_link .left,
.index_gallary_link .right {
	float: left;
	margin-bottom: 10px;
}

.index_gallary_link .left { margin-right: 10px; }



/* making指定 */

#promise {
	margin-top: 15px;
	margin-bottom: 20px;
}


.promisebox {
	margin-top:20px;
	margin-left:auto;
	margin-bottom:auto;
}

.promisebox p{
	line-height:1.9em;
	margin-top:20px;
}

#structure_caption {
	padding: 22px 12px;
	margin-top: 30px;
	background: url(making/images/bg_structure_caption.jpg) no-repeat;
}

.structure_special {
	width: 180px;
	float: left;
	margin-right: 10px;
	margin-top: 10px;
}

.structure_special_r {
	width: 180px;
	float: left;
	margin-top: 10px;
}

#structure_caption img.title {
	margin-bottom: 5px;
}

.structurebox .left,
.structurebox .right {
	width: 288px;
}

.structurebox .subtitle {
	margin-top: 0px;
}


#design_image {
	margin-top: 25px;
}

#content_body .particularbox p {
	font-size: 10px;
	color: #6A6256;
}

.particularbox .left,
.particularbox .right {
	float: left;
	margin-top: 15px;
	width: 190px;
}

.particularbox .left {
	margin-right: 9px;
}

#particular_cost {
	margin-top: 90px;
}

#supportbox {
	padding: 14px 14px 14px 0px;
	border: 2px solid #6A6256;
	background: #EFE7D1;
	margin-top: 20px;
}

#supportbox .text {
	width: 520px;
	float: right;
}

#supportbox p { padding-left: 10px; }
#supportbox .rightpic { margin-left: 10px; }

.costbox { padding-bottom: 40px; }
.costbox p {
	float: left;
	width: 363px;
}


/* gallary指定 */

.gallary_tl{
	margin-top:10px;
	margin-bottom:10px;
}


/* uservoice指定 */

h3.uv_title,
h3.uv_sectitle {
	font-size: 14px;
	margin-bottom: 10px;
	color: #F51B38;
}

h3.uv_sectitle {
	margin-top: 20px;
}

.uvphoto_right,
.uvphoto_rightv {
	float: right;
	text-align: right;
	margin-left: 20px;
}

.uvphoto_left,
.uvphoto_leftv {
	float: left;
	text-align: left;
	margin-right: 20px;
}

.uvphoto_right,
.uvphoto_left {
	width: 300px;
	margin-bottom: 5px;
}

.uvphoto_rightv,
.uvphoto_leftv {
	width: 200px;
	margin-bottom: 5px;
}

.uvphoto_right p,
.uvphoto_left p,
.uvphoto_rightv p,
.uvphoto_leftv p {
	font-size: 10px;
}

.voice_link{
	text-align:right;
	margin-bottom:20px;
	margin-top:3px;
}



/* company指定 */

ul.company_menu {
	margin-top: 3px;
	padding: 43px 0px 14px 0px;
	background: url(company/images/bg_company_menu.jpg) no-repeat;
}

ul.company_menu li {
	float: left;
	margin-left: 9px;
	list-style: none;
}

.staff {
	margin-bottom: 15px;
}

.staff_caption {
	line-height:1.6em;
}

.staff p{
	line-height:1.7em;
}

.staff img.title {
	margin-top: 25px;
}

p.map {
	margin-top: 12px;
}

#contents p.map_notice {
	margin-top: 12px;
	color: #FA4B0C;
}

.root_photo {
	float: right;
	width: 230px;
	margin-top: 25px;
}

.root_photo p {
	font-size: 10px;
	color: #6A6256;
	margin-bottom: 10px;
	margin-top: 3px;
}

h2.root {
	font-size: 12px;
	color: 6A6256;
	margin-top: 25px;
}

p.url {
	margin-bottom: 15px;
	font-size: 12px;
}

.root_notice {
	padding-left: 30px;
}

#gmap_area {
	border: 5px solid #E0D6C2;
	width: 580px;
	height: 390px;
}



/* 会社概要テーブル指定 */

table.outline {
	width: 100%;
	border-collapse: collapse;
	margin-top: 30px;
}

table.outline th,
table.outline td {
	font-size: 12px;
	font-weight: normal;
	padding: 8px 12px;
	text-align: left;
	border-top: 12px solid #F2ECDF;
	border-bottom: 12px solid #F2ECDF;
	line-height: 1.6em;
}

table.outline th {
	color: #6A6256;
	background: #E0D6C1;
	border-bright: 12px solid #F2ECDF;
}

table.outline td {
	color: #6A6256;
	background: #FFFFFF;
	border-left: 12px solid #F2ECDF;
}



/* event,news指定 */

.entrybox {
	border: 3px solid #E0D6C2;
	background: #FFFFFF;
	padding: 12px;
	margin-bottom: 25px;
}

ul.recent_entry li {
	font-size: 12px;
	padding-left: 12px;
	list-style: none;
	background: url(images/recent_entrylist.gif) no-repeat left top;
	margin-top: 8px;
}

.showall {
	margin-top: 10px;
	text-align: right;
	line-height: 1.2em;
}

.backlink {
	margin-top: 25px;
	text-align: right;
	line-height: 2em;
}

h2.entrytitle {
	background: url(images/bg_entyrtitle.gif) no-repeat bottom;
	font-size: 14px;
	color: 6A6256;
	padding: 10px 0px 18px 0px;
}

.event_info {
	margin: 30px 0px 12px 0px;
}

.event_info .date,
.event_info .location,
.event_info .map {
	line-height: 1.2em;
	margin-bottom: 10px;
	padding: 2px 0px;
	padding-left: 88px;
}

.event_info .date { background: url(event/images/event_date.gif) no-repeat left top; }
.event_info .location { background: url(event/images/event_location.gif) no-repeat left top; }
.event_info .map { background: url(event/images/event_map.gif) no-repeat left top; }

.entry_body {
	text-align: left;
	color: #6A6256;
	padding-bottom: 25px;
}

.topics_body {
	text-align: left;
	color: #6A6256;
	padding-bottom: 25px;
	margin-top:10px;
}

.topics_body p{
	margin-top:20px;
}

.topics_body_img{
	float:right;
	margin-top: 0px;
}

.topics_body_img p{
	font-size:10px;
	margin-top:0px;
}

.topics_body_img #topics_body_img2{
	margin-top:20px;
}

.topics_body_map{
	margin-top:20px;
}

.topics_body_map p{
	font-size:10px;
	margin-top:0px;
}

#content_body .topics_body_contact{
	text-align:center;
	margin-top:30px;
}

/* contact指定 */

.contactbox {
	border: 3px solid #E0D6C2;
	background: #FFFFFF;
	padding: 12px 35px;
	margin-bottom: 25px;
	margin-top: 6px;
	text-align: center;
}

p.ctaddress {
	margin-top: 10px;
	padding: 10px 30px 0px 30px;
	line-height: 1.2em;
	background: url(contact/images/contact_dotline.gif) no-repeat top;
}

table.contact {
	width: 502px;
	border-collapse: collapse;
	margin-bottom: 20px;
}

table.contact caption {
	padding: 30px 0px 10px 4px;
	text-align: left;
	font-size: 12px;
}

table.contact td,
table.contact th {
	border: 3px solid #FFFFFF;
	padding: 8px 12px;
	font-size: 12px;
	text-align: left;
}

table.contact th {
	background: #EAE3D4;
	font-weight: normal;
}

table.contact td.dotline {
	padding: 0px;
	height: 1px;
	background: url(http://www.technical-home.co.jp/contact/images/contact_dotline.gif) no-repeat left;
}

table.contact em,
table.pamphlet em {
	font-style: normal;
	color: #D40101;
}

table.contact input.text,
table.contact textarea {
	width: 320px;
}

table.contact #region {
	width: 100px;
	margin-bottom: 6px;
}

input.submit {
	margin: 25px 0px;
	padding: 4px 15px;
	font-size: 12px;
}



/* 物件ページテーブル指定 */

.objectbox {
	border: 3px solid #E0D6C2;
	background: #FFFFFF;
	padding: 15px 35px 30px 35px;
	margin-bottom: 25px;
	margin-top: 6px;
	text-align: center;
}

h2.bukken {
	font-size: 16px;
	color: #3D2716;
	text-align: left;
	margin-bottom: 15px;
}

table.bukken {
	border-collapse: collapse;
	width: 510px;
}

table.bukken caption {
	padding: 10px 4px;
	font-size: 12px;
	text-align: left;
	font-weight: normal;
}

table.bukken th,
table.bukken td {
	padding: 8px 8px;
	font-size: 12px;
	text-align: left;
	font-weight: normal;
	border: 1px solid #E0D6C2;
	line-height: 1.5em;
}

table.bukken th {
	background: #EAE3D4;
}


/* 資料請求ページテーブル */ 

table.pamphlet {
	width: 498px;
	border-collapse: collapse;
	margin-bottom: 20px;
}

table.pamphlet caption {
	padding: 30px 0px 10px 4px;
	text-align: left;
	font-size: 12px;
	font-style: normal;
}

table.pamphlet td,
table.pamphlet th {
	padding: 8px 0px;
	font-size: 12px;
}

table.pamphlet input {
	float: left;
	margin-right: 4px;
	_margin-right: 2px;
	*margin-top: -4px;
	_margin-top: -4px;
}
table.pamphlet input#pam1 {
	margin-top: 8px;
	*margin-top: 1px;
	_margin-top: 1px;
}

#pamphlet_left,
#pamphlet_right {
	float: left;
	width: 240px;
	border: 1px solid #CAC8AA;
	height: 200px;
}
#pamphlet_left { margin-right: 14px; }

#pamphlet_left label,
#pamphlet_right label {
	background: #EAE3D4;
	display: block;
	padding: 8px 12px;
	text-align: left;
	height: 25px;
}



/* フォームエラー用 */


.error {
	font-size: 14px;
	color: #FF0000;
	font-weight: bold;
	margin-top: 25px;
}

.error ul {
	margin-top: 10px;
}

.error li {
	font-size: 12px;
	color: #6A6256;
	font-weight: normal;
	list-style: none;
	line-height: 1.6em;
}



/* パンフレット用 */

.pamphletbox {
	border: 3px solid #E0D6C2;
	background: #FFFFFF;
	padding: 20px 15px;
	margin-bottom: 25px;
}

ul.pamphlet {
	padding-top: 1.8em;
	line-height: 1.6em;
	font-size: 12px;
	color: #3D2716;
	list-style: none;
}

ul.pamphlet strong {
	color: #3D2716;
}
#pamphletbox ul { line-height: 2em; }
#pamphletbox { margin-top: 20px; }
#pamphletbtn {
	margin-top: 30px;
	margin-bottom: 15px;
	text-align: center;
}



/* ひのきのページ指定 */

#hinokitop {
	background: url(hinoki/images/bg_hinoki.jpg) no-repeat;
	padding-top: 203px;
	padding-bottom: 25px;
}
#hinokitop .leftpic { padding-left: 2px; }
#hinokitop .title { margin-top: 26px; }

#hinokivoice {
	background: url(hinoki/images/bg_hinokivoice.jpg) no-repeat;
	padding: 18px;
	width: 339px;
	height: 186px;
	margin-top: 10px;
}
#hinokivoice img {
	float: left;
	margin-top: 25px;
	margin-left: 4px;
	_margin-left: 2px;
}

p#hinokiprivacy {
	text-align: right;
	margin-top: 10px;
	font-weight: bold;
	color: #FA4B0C;
}

.hinokititle1 {
	margin-top: 40px;
	margin-bottom: 10px;
}
.hinokititle2 {
	float: right;
	margin-top: 25px;
	margin-bottom: 10px;
}
#hinokibox1 {
	position: relative;
	height: 375px;
}
#hinokibox1 .photo {
	position: absolute;
	left: 11px;
	top: 0px;
}
#hinokibox1 p {
	position: absolute;
	left: 305px;
	top: 0px;
	width: 283px;
}
#hinokibox2 {
	position: relative;
	height: 570px;
	margin-top: 25px;
}
#hinokibox2 .title1 {
	position: absolute;
	right: 0;
	top: 0;
}
#hinokibox2 .photo {
	position: absolute;
	left: 0;
	top: 61px;
}
#hinokibox2 p.txt1 {
	position: absolute;
	left: 378px;
	top: 61px;
	width: 210px;
}
#hinokibox2 .title2 {
	position:absolute;
	top: 355px;
	left: 34px;
}
#hinokibox2 p.txt2 {
	position:absolute;
	top: 420px;
	left: 30px;
	width: 285px;
}


#zaimoku {
	margin-top: 40px;
	padding: 19px;
	width: 550px;
	height: 262px;
	background: url(hinoki/images/bg_zaimoku.jpg) no-repeat;
}
#zaimoku .pictbox {
	margin-top: 12px;
	margin-bottom: 0;
}
#zaimoku p {
	margin-top: 10px;
	line-height: 1.4em;
}



/* サイトマップ指定 */


h2.sitemap {
	background: url(sitemap/images/sitemap_tlli.gif) left no-repeat;
	padding-left: 25px;
	font-size: 14px;
	margin-top: 30px;
	margin-left: 13px;
	color: #3D1E06;
	text-align: left;
	vertical-align: middle;
}


ul.sitemap { padding-left: 14px; }
ul.sitemap li {
	font-size: 12px;
	background: url(sitemap/images/sitemap_li.gif) left no-repeat;
	list-style: none;
	padding-left: 14px;
	margin-top: 10px;
	width: 174px;
	float: left;
	text-align: left;
}



/* 現場スタッフ追加 */

.craftsmanbox {
	margin-bottom: 45px;
}

/* 家ができるまでの流れ追加 */

.process_top { padding-left: 10px; }
p.process_top {
	padding-left: 10px;
	margin-top: 1.5em;
}

.process_box {
	border-bottom: 1px dotted #323232;
	padding: 12px 10px 18px 10px;
}
.process_box .step {
	float: left;
	margin-right: 12px;
}

.process_box .text {
	float: left;
	width: 310px;
}

.process_box .photo {
	width: 149px;
	float: right;
}
.process_box .photo img {
	margin-bottom: 20px;
}

.process_box .textonly {
	float: right;
	width: 465px;
	padding-right: 15px;
}

#content_body .process_box .title,
#content_body .process_box .subtitle {
	margin-bottom: 15px;
	*margin-bottom: 10px;
}

/* ほのぼの通信追加 */

#honobono {
	background: #F2ECDF;
	margin-top: 3px;
	text-align: center;
	padding: 24px 12px;
	min-height: 700px;
	_height: 700px;
	margin-bottom: 25px;
}

#honobono p {
	padding: 0px 24px;
	text-align: left;
}
#honobono .title { margin-bottom: 25px; }
#honobono .sectl { margin: 45px 0px; }


/*------------------090619追加------------------*/

#contents #main #content_body .contactbox .contact .text01{
	width:230px;
}
#contents #main #content_body .contactbox .contact .kikkake{
	vertical-align:2px;

}

/*------------------100519追加------------------*/

#privacy_01 img.sectl {
        margin-bottom:15px;
        margin-top:40px;
}

/*------------------101125追加------------------*/

#navi img.technikan {
	margin-top:13px;
}

/*------------------110209追加------------------*/

.attention {
      color:#ED1C24;
      font-size:12px;
      margin-top:5px;
}

/*------------------110209追加------------------*/
#contents #raisya{
	width:790px;
	text-align:right;
	font-size:11px;
	color:#555555;
	padding-right:70px;
}

/*------------------110907追加　30年点検------------------*/
table.check{
	width:582px;
	margin:3px 0 2px 2px;
	font-size:110%;
	border-top:#3d2817 1px solid;
	border-left:#3d2817 1px solid;
}

table.check th{
	padding:1px 0px;
	border-right:#3d2817 1px solid;
	border-bottom:#3d2817 1px solid;
	color:#fff;
	font-size:10px;
	background:#3d2817;
	line-height:1.2em;
}

table.check th.txt01{
	padding:1px 0px;
	border-right:#f8f3eb 1px solid;
}

table.check th.txt02{
	padding:1px 0px;
	border-right:#f8f3eb 1px solid;
}

table.check td{
	padding:1px 4px;
	border-right:#3d2817 1px solid;
	border-bottom:#3d2817 1px solid;
	font-size:10px;
	background:#fff;
	line-height:1.1em;
}

table.check td.bg01{
	background:#f8f3eb;
}

p.caution{
	margin:0 0 20px 2px;
	font-size:11px;
	line-height:1.4em;
}

img.pdfCopy{
	margin:0;
}

table.pdf{
	margin:8px 0 20px;
}


.contact{
	margin:40px 0 40px;
}


