@charset "utf-8";

/* 株式会社CATS */

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+　共通スタイル
+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

*{
	margin: 0;
	padding: 0;
	font-style: normal;
}

body {
	color: #401700;
	font-family:	"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Osaka, Arial, Helvetica, sans-serif;
	font-size: 12px;
	text-align: center;
	background: linear-gradient(#f5f5f5, #ffffff);
	border-top: 4px solid #0B610B;					/*　最上部のライン　*/
}
	
body,div,h1,h2,h3,h4,h5,h6,dl,dt,dd,ul,ol,li,
p,blockquote,pre,cite,code,caption,
form,fieldset,legend,input,textarea,select,option,label {
	margin: 0px;
	padding: 0px;
}

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

img,table { border: none;}
th, td { font-size: 12px; }
ol,ul {	list-style: none;}						/*　箇条書き（・）なし　*/
address,em,cite { font-style: normal;}

/* ======================================================================================
 	レイアウト　　
====================================================================================== */

/* 全体
--------------------------------------------------------------------------------------*/
#wrapper {
	width: 960px;
	margin: 0 auto;
}

/* コンテンツ
--------------------------------------------------------------------------------------*/
#sub_main {
	width: 940px;
	margin: 0 auto;
	padding-top: 10px;
	clear: both;
	text-align: center;
}

#content {
	margin: 0 auto;
	width: 920px;
	background: url(images/content_bg.gif) repeat-x left bottom;
}

/* ======================================================================================
	#header
====================================================================================== */
h1 {
	position: absolute;
	top: 8px;
	right: 5px;
	color: #000000;
}

/* 会社ロゴ＆会社名
--------------------------------------------------------------------------------------*/
.header_logo_company {					/*　ロゴ＆会社名（上右下左マージン）　*/
	float: left;
	margin: 35px 1px 15px 22px;			/*　[上][右][下][左]　*/
}

/* 住所＆電話番号
--------------------------------------------------------------------------------------*/
#header_address {					/*　住所　*/
	position: relative;
	margin: -5px 1px 6px 1px;			/*　[上][右][下][左]　*/
	width: 942px;
	text-align: right;
	line-height: 1.4em;
}

/* グローバルナビ（タブボタン）
--------------------------------------------------------------------------------------*/
#global_navi {
	display: inline-block;
	overflow: hidden;
	margin: 5px 5px;
	border-top: 3px solid #6E6E6E;
	box-shadow: 3px 3px 7px #848484;
	background-color: #BDBDBD;
}

#global_navi li {
	display: inline;
	float: left;
	width: 230px;
	height: 37px;
	font-weight: bold;
	font-size: 14px;
	text-align: center;
	line-height: 2.6em;
}

#global_navi a {
	display: block;
	height: 37px;
	text-decoration: none;
}

#global_navi li.gn01 { background: url(../images/global_navi_bg01.gif) no-repeat; }
#global_navi li.gn01 a:hover { background: url(../images/global_navi_bg01_on.gif) no-repeat; }

#global_navi a:link    { color: #401700; }
#global_navi a:visited { color: #401700; }
#global_navi a:hover   { color:#401700; text-decoration: none; }

/* ======================================================================================
	#footer
====================================================================================== */
.footernavi {
	display: inline;
	float: left;
	margin: 5px 0 0 15px;
	font-size: 11px;
}

#footer {
	clear: both;
	margin: 0 9px;
	padding-top: 20px;
	height: 33px;
	border-bottom: 2px solid #2E2E2E;
	background: url(../img/footer_bg.gif) repeat-x left bottom;
}
* html #footer { /* IE6のみ適用 */
	height: 53px;
}

/* コピーライト
--------------------------------------------------------------------------------------*/
#footer address {
	display: inline;
	float: right;
	margin: 5px 10px 0 0;
	color: #6a533d;
	font-size: 11px;
	font-family: Arial, Helvetica, sans-serif;
}

/* ======================================================================================
	トップページ
====================================================================================== */

-------------------------------------------------------------------------------------- */
/* スライドショー
--------------------------------------------------------------------------------------*/

ul {									/*　スライドイメージ全体　*/
	padding: 0;
}

#slides img {								/*　スライドイメージ全体　*/
	position:relative;
	margin: 7px 0px 0px 20px;					/*　位置[上][右][下][左]　*/
	border: 1px solid #e0e0e0;
	width: 920px;
	height: 400px;
}

#slide-thumb li {
	margin: 7px 1px 15px 18px;					/*　サムネイルのマージン[上][右][下][左]　*/
	float:left;

}

/* --------------------------------------------------------------------------------------
	サムネイル（アクティブ時→罫線が点滅）
-------------------------------------------------------------------------------------- */

#slide-thumb li.activeSlide a img{

	border: 2px solid #848484;
	margin: -2px;							/*　枠線を内側に　*/
	box-shadow: 3px 7px 6px -6px rgba(0, 0, 0, 0.6);		/*　横方向　下方向　ぼかし　広がり　色　*/

}


#prev, #next {
	position: absolute;
	width: 440px;
	margin-top:75px;						/*　全体の上マージン　*/
	margin-right: auto;						/*　全体をセンターに配置　*/
	margin-left: auto;						/*　全体をセンターに配置　*/
	font-size: 90px;						/*　<< >>の大きさ　*/
	color: #BDBDBD;
	line-height: 1;
	text-decoration: none;
	text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3);
}

#prev {
	left: 1px;
}

#next {
	right: 1px;
}

#prev:hover,
#next:hover {
	color: #BDBDBD;
	text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.5);
	text-decoration: underline;
}

/* --------------------------------------------------------------------------------------
	キャッチコピー「環境に優しい、人に優しい」装飾
-------------------------------------------------------------------------------------- */

#catchcopy_area_gray {							/*　グレー　*/
	position: absolute;
	margin-top: -350px;
	margin-bottom: 10px;
	margin-left: 45px;
	background-color: rgba(191,198,240,0.6);
	width: 320px;
	height: 60px;
	-webkit-border-radius: 12px;					/*　角Ｒ　*/
	-moz-border-radius: 12px;
	border-radius: 12px;
	color: #fff;
	opacity: 1.0;
	font-weight: normal;
	font-size: 190%;
	text-align: center;
	line-height: 2.6em;
}

#catchcopy_area_green {							/*　グリーン　*/
	position: absolute;
	margin-top: -350px;
	margin-bottom: 10px;
	margin-left: 45px;
	background-color: rgba(50,205,50,0.6);
	width: 320px;
	height: 60px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	border-radius: 12px;
	color: #fff;
	opacity: 1.0;
	font-weight: normal;
	font-size: 190%;
	text-align: center;
	line-height: 2.6em;
}

#catchcopy_area_blue {							/*　ブルー　*/
	position: absolute;
	margin-top: -350px;
	margin-bottom: 10px;
	margin-left: 45px;
	background-color: rgba(106,90,205,0.6);
	width: 320px;
	height: 60px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	border-radius: 12px;
	color: #fff;
	opacity: 1.0;
	font-weight: normal;
	font-size: 190%;
	text-align: center;
	line-height: 2.6em;
}

#catchcopy_area_red {							/*　レッド　*/
	position: absolute;
	margin-top: -350px;
	margin-bottom: 10px;
	margin-left: 45px;
	background-color: rgba(255,20,147,0.6);
	width: 320px;
	height: 60px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	border-radius: 12px;
	color: #fff;
	opacity: 1.0;
	font-weight: normal;
	font-size: 190%;
	text-align: center;
	line-height: 2.6em;
}

/* --------------------------------------------------------------------------------------
	被災者へのメッセージ
-------------------------------------------------------------------------------------- */

table.message {
	width: 90%;
	margin-top:12px;				/*　テーブル全体の上マージン　*/
	margin-right: auto;				/*　テーブル全体をセンターに配置　*/
	margin-left: auto;				/*　テーブル全体をセンターに配置　*/
}

table.message td {
	padding: 12px 15px;
	background-color: ivory;
	color: black;
	line-height: 1.4;
	font-size:14px;
	text-align: left;
	border: 3px solid #A4A4A4;
}

/* --------------------------------------------------------------------------------------
	ごあいさつ
-------------------------------------------------------------------------------------- */

.index_left {
	display: inline;
	float: left;
	margin-left: 20px;
	width: 450px;
	text-align: left;
}

table.top_message {
	margin-top:12px;				/*　テーブル全体の上マージン　*/
	margin-right: auto;				/*　テーブル全体をセンターに配置　*/
	margin-left: auto;				/*　テーブル全体をセンターに配置　*/
}

table.top_message th {
	padding: 5px 20px;
	color: #000;
	border: 3px solid #AF86C0;
	background-color: #F5EFFB;
	font-size: 14px;
	text-align: left;
	vertical-align: middle;
	line-height: 1.6em;
	color: black;
	border-radius: 10px;				/*　画像を角Ｒ　*/
}

table.top_message td {
	padding: 3px 1px 5px 1px;			/*　[上][右][下][左]のパディング　*/
	background: #fff;
	line-height: 1.8em;
	font-size:13px;
	text-align: left;
}

table.top_message span {
	padding: 7px 0 0 3px;
	font-size: 14px;
	display: block;
	text-align:right;
}

/* --------------------------------------------------------------------------------------
	お知らせ
-------------------------------------------------------------------------------------- */
.index_right {
	display: inline;
	margin-top: 8px;
	float: right;
	width: 490px;
	text-align: left;
}

#title_banner li {
	float: left;
	margin-bottom: 7px;
	margin-left: 0px;
	padding: 0px 35px;
}

#title_banner li.gn0s {
	padding: 0px 0px;
	font-size: 15px;
	font-weight: bold;
	line-height: 40px;
	text-align: left;
	text-indent: 45px;
	background-image: url(../images/title_m.gif);			/*　背景画像の指定　*/
	background-repeat: no-repeat;					/*　背景画像の指定　*/
	background-position: 30px 0px;					/*　背景画像の位置　*/
 }

.news_list {
	width: 425px;
	margin-left: 35px;
	padding: 10px 5px 15px;
	background: #FAFAFA;
	color: #000000;
	line-height: 1em;
	clear: both;
	box-shadow:2px 2px 4px #A4A4A4;
	border-top: 4px solid #AF86C0;
	border-bottom: 4px solid #AF86C0;

}

.news_list dt {
	width: 6.5em;
	float: left;
	font-size: 12px;
	line-height: 1.7em;
	border-bottom: 1px solid #AF86C0;
}

.news_list dd {
	margin-bottom: 5px;
	font-size: 12px;
	line-height: 1.7em;
	border-bottom: 1px dotted #AF86C0;
}

/* ======================================================================================
	工法一覧
====================================================================================== */

#const_title_banner {
	display: inline-block;
	overflow: hidden;
	margin-top: 5px;
}

#const_title_banner li {
	display: inline;
	float: left;
	width: 680px;
	height: 39px;
	font-size: 15px;
	font-weight: bold;
	text-align: left;
	text-indent: 20px;
	line-height: 40px;
	margin-bottom: 7px;
}

#const_title_banner li.gn0m {
	background: url(../images/title.gif) no-repeat;
 }

table.catchcopy {
	width: 680px;
	margin-top: 7px;				/*　テーブル全体の上マージン　*/
	margin-bottom: 20px;				/*　テーブル全体の下マージン　*/
	margin-right: auto;				/*　テーブル全体をセンターに配置　*/
	margin-left: auto				/*　テーブル全体をセンターに配置　*/
}

table.catchcopy td {
	padding: 10px 8px;
	text-align: left;
	color: #660000;
	vertical-align: center;
	font-size: 15px;
	font-style: bold;
	line-height: 1.4;
	box-shadow:2px 2px 5px #A4A4A4;
	background: #fff;
	border: 3px solid #A4A4A4;
	border-radius: 10px;				/*　画像を角Ｒ　*/
}

table.slideshow {
	width: 75%;
	margin-top:10px;				/*　テーブル全体の上マージン　*/
	margin-right: auto;				/*　テーブル全体をセンターに配置　*/
	margin-left: auto				/*　テーブル全体をセンターに配置　*/
}

table.slideshow td {
	vertical-align: center;
	border: 0px solid #663b00;
}

table.middle {
	width: 440px;
	margin-top: 25px;				/*　テーブル全体の上マージン　*/
	margin-left: 15px;
	margin-right: 15px;
	border-left: 0px solid #ffffff;
	border-right: 0px solid #ffffff;
	border-collapse: collapse;
	text-align: left;
}

table.middle th {
	height: 22px;
	padding: 5px 15px;
	font-size: 14px;
	color: #ffffff;
	background: #0B610B;
	text-align: left;
	vertical-align: middle;
	line-height: 1.2;
}

table.middle span {
	font-weight: normal;
	font-size: 12px;
	text-align: right;
}

table.middle td {
	padding: 7px 7px;
	line-height: 1.4;
	vertical-align: top;
	background-image: url(../../images/concrete_image.gif);
}

/* ======================================================================================
	会社情報
====================================================================================== */
#content_one {
	margin: 0 auto;
	width: 670px;
	text-align: left;
}

#title_banner {
	display: inline-block;
	overflow: hidden;
	margin-top: 5px;
}

#title_banner li {
	display: inline;
	float: left;
	width: 680px;
	height: 39px;
	font-size: 15px;
	font-weight: bold;
	text-align: left;
	text-indent: -15px;
	line-height: 40px;
	margin-bottom: 7px;
}

#title_banner li.gn0m {
	background: url(../images/title.gif) no-repeat;
 }


table.profile {
	width: 99%;
	margin: 2px 10px;
	text-align: left;
}

table.profile td {
	padding: 4px 12px;
	background: #fff;
	line-height: 1.7;
}

table.profile span {
	font-size: 14px;
	font-weight: bold;
}

table.company {
	width: 99%;
	margin: 10px 10px;
	border: 1px solid #401600;
	border-left: 4px solid #401600;
	border-collapse: collapse;
	text-align: left;
}

table.company th {
	width: 100px;
	padding: 10px 12px;
	border: 1px solid #401600;
	background: #eae0c6;
	vertical-align: text-top;
	font-size: 13px;
}

table.company td {
	padding: 10px 12px;
	border: 1px solid #401600;
	background: #fff;
	line-height: 1.5;
}

table.company span {
	display: block;
	margin-top: 10px;
	color: #8c1f26;
}

#company-map iframe {					/*　Googleマップ　*/
	width: 100%;
	height: 350px;
}


table.law a:link { color: #8c1f26; }
table.law a:visited { color: #8c1f26; }
table.law a:hover { color: #8c1f26; }
table.law a:active { color: #8c1f26; }

/* ======================================================================================
	お問い合わせ
====================================================================================== */

#infor_title {
	display: inline-block;
	overflow: hidden;
	margin-top: 5px;
}

#infor_title h2 {
	color: red;
}

#infor_title li {
	display: inline;
	float: left;
	width: 680px;
	height: 39px;
	font-size: 15px;
	font-weight: bold;
	text-align: left;
	text-indent: 20px;
	line-height: 40px;
	margin-bottom: 7px;
}

#infor_title li.gn0m { background: url(../images/title.gif) no-repeat; }


table.description {
	width: 100%;
	margin: 5px 5px 5px 5px;			/*　[上][右][下][左]マージン　*/
}

table.description td {
	padding: 10px 10px;
	background: #fff;
	border: 4px double #D8D8D8;
	line-height: 1.6em;	
	text-align: left;
}

table.infor {
	width: 100%;
	margin: 10px 10px;
	border: 1px solid #D8D8D8;
	border-collapse: collapse;
	text-align: left;
}

table.infor th {
	width: 100px;
	padding: 10px 12px;
	border: 1px solid #D8D8D8;
	background: #F2F2F2;
	vertical-align: text-top;
	font-size: 13px;
	font-weight: normal;
}

table.infor td {
	padding: 7px 5px;
	border: 1px solid #D8D8D8;
	background: #fff;
	line-height: 1.5;
}

table.infor span {
	display: block;
	margin-top: 10px;
	color: #8c1f26;
}

.button_design {
	cursor:pointer;
	font-size:120%;
	text-align:center;
	padding: 10px 0px 10px 0px;
	margin:0.5em 0 0 0;				/*　[上][右][下][左]マージン　*/
	border-style:none;
	background: #F2F2F2;
	background: -o-linear-gradient(top, #90E733, #428000 50%, #90E733);
	background: linear-gradient(top, #90E733, #428000 50%, #90E733);
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-moz-box-shadow: 2px 2px 3px 1px #666;
	-webkit-box-shadow: 2px 2px 3px 1px #666;
	box-shadow: 2px 2px 3px 1px #666;
}


/* CONTACT FORM PAGE */
.contact-form input[type="submit"],
.contact-form input[type="button"],
.contact-form input[type="text"],
.contact-form textarea {
}
.contact-form input[type="submit"],
.contact-form input[type="button"],
.contact-form input[type="text"] {
	height: 19px;
	color: black;
	font-size: 13px;
	line-height: normal;
	font-family: Arial;
}

.contact-form input[type="text"] {
	width: 190px;
}

.contact-form textarea {
	width: 490px;
}

.contact-form .error {
	color: #FF0000;
	font-size: small;
	margin-top: 5px;
}

.contact-form .zip-separator {
	display: block;
	margin: 0 0.78125vw;
	text-align: center;
	width: 30px;
}

/* END CONTACT FORM PAGE */

/* 404 PAGE */
.error404 .site-content {
	min-height: 250px;
	width: 100%;
}

.error404 .site-content article {
	border: none;
}

.error404 .site-content article .entry-title {
	width: 100%;
	font-size: 34px;
	margin-top: 1.5vw;
	margin-bottom: 2.5vw;
}

.error404 .site-content article .entry-content p {
	line-height: 1.714285714;
	font-size: 16px;
}
