@charset "utf-8";

html,
body {
	height: 100%;
	margin: 0;
}
a {
	color: #333;
    text-decoration: none;

	transition: 0.25s; /* all */
}
a:hover {
	color: #fff;
}
img {
	max-width: 100%;	
	height: auto;
	width /***/:auto; /* IE8のみ */
	vertical-align: bottom;

	transition: 0.25s; /* all */
}
/* body */

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

/**//**//**//**//**//**//**/
/* レスポンシブ画面右余白バグ */
div.wrapper {
	overflow: hidden;
}
/**//**//**//**//**//**//**/

	/* リスト */
.bread_list {
	background-color: #eee;
	padding: 2%;
	font-size: 14px;
}
.bread_list li {
	display: inline;	
}
.bread_list li a:hover {
	color: #999;
}
.bread_list_home:before {
	content: url(../img/index_icon_house.gif);
}

/* ロゴ */
.logo {
	padding: 2%;
	background-color: #eee;
}
.logo img {
	width: 20%;
}

/*nav position*/
nav {	
	width: 100%;	
	padding: 1% 0 1.5% 0;
	text-align: center;
	font-size: 16px;
	color: #fff;
	background-color: #164088;
}
nav img {
	width: 9%;
}
	
nav ul  {
	overflow: hidden;
}

nav ul li {
	font-size: 18px;
	float:left;
	width: 16.6666%; /*x5では20%*/
	
}
nav ul li a {
	color: #ddd;
	width: 16.6666%; /*x5では20%*/
}
nav ul li.now a {
    color: #fff;
}
		/*吹き出し下三角*/
.now-fukidasi {
	width: 100%;
	background-color: #eee;
}
	/* bg-image+margin-left */
.now-fukidasi-in {
	width: 20%;
	margin-left: 48.4%; /*x5では40%*/
	height: 20px;
	background-image: url(../img/works/works_arrow.png);
	background-position: center center;
	background-size: 20px 20px;
	background-repeat: no-repeat;
}

/* maincontent */
.maincontent {
	width: 100%;
	margin-left: auto;
	margin-right: auto;	
	background-color: #f2f2f2;
}
.maincontent h2.copyh2 {
	border-left: #000 20px double;
}
.maincontent p.copy {
	font-size: 19px;
	font-weight: bold;
	text-align: left;
	line-height: 1.45;
	background-color: #164088;
	padding: 3%;
	color: #eee;
	border-left: #FFF 20px double;
}

	/* hr */
hr.hr-style {
	margin-top: 1%;
	border: 0;
	height: 1px;
	background-image: linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
	background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
	background-image: -moz-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
	background-image: -o-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.75), rgba(0,0,0,0));
	background-image: -ms-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,0.75), rgba(255,255,255,0));
}

/* top bg */
.top-bg-area {
	background-image: url(../img/case/case_top_bg.jpg);
	background-position: 50% 70%;
	background-size: cover;
	background-repeat: no-repeat;
}
	/* 施工事例 bg */
div.copyh2-bg {
	width: 100%;
	height: 185px;
}

/* 施工内容_New */
	/* 1box float 内x4の設定 */
.case-bg-area {
	background-image: url(../img/case/case_bg_image.gif);
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
}
.case-content-all {
	padding: 5% 0;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	overflow: hidden;
}
.case-x1 {
	width: 50%; width: 49.9%;
	float: left;
}
section.case-new-area {
	overflow: hidden;
}
section.case-new-area .case-new-wrapper {
	padding: 2.5% 0 5% 0; /* for background-color */
	margin: 5%; /* for background-color */
	overflow: hidden;
	background-color: #999;
	background-color: rgba(175,175,175,0.2);
}
	/* 画像box 50%x2 */
section.case-new-area .case-new-image {
	width: 50%;
	padding: 1.5% 0;
	text-align: center;
	float: left;
}
  /* =important= /*
		/* 画像の大きさ */
	/* 画像の高さが不揃いの場合floatでそのpx分ズレが起こる */
	/* 450x340 */
section.case-new-area img {
	width: 83%;
	border: 1px solid #aaa;
}
	/* 何年何月 */
section.case-new-area .case-new-top,
section.case-new-area .case-new-bottom {
	overflow: hidden;
}
section.case-new-area .case-new-text {
	padding-left: 24px;
}
section.case-new-area h1 {
	font-weight: bold;
	font-size: 18px;
	color: #000;
	padding: 16px 0;
}
section.case-new-area h2 {
	padding-bottom: 16px;
	font-size: 16px;
}
section.case-new-area p {
	padding-bottom: 16px;
	font-size: 16px;
}

/* background */
.bg-area {
	clear: both;
	padding: 4% 0;
	background-color: #164088;	
	border-right: #FFF 20px double;
	border-left: #FFF 20px double;
}

/* フッター */
footer {
	clear: both;
	overflow: hidden;
	padding: 1.5% 0 1% 0;
	text-align: center;
	font-size: 14px;
	background-color: #eee;
}
footer p.personal {
	text-align: center;
}
footer .footer-copy-box {
	text-align: center;
	padding-top: 15px;
}
footer .copy {
	padding-bottom: 5px;
}
/* 上へ戻る */

footer #pageTop {
	clear: both;
	text-align: right;	
	padding: 0;
	font-size: 14px;
}
		/*i display:block--- p under*/
footer #pageTop i {
	display: block;
	text-align: center; 
}
/**//**//**//**//**//**//**/
	/* 追加分　トップへ戻るボタンが下へ(Y)px移動すると固定で現れる */
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
}
#pageTop a {
  display: block;
  z-index: 999;
}
#pageTop {
	font-size: 18px;
}
/**//**//**//**//**//**//**/

/*nav メニュー位置*/
footer .footer-nav {
	width: 750px;
	padding: 15px 0px 20px 0px;
	font-size: 16px;
	background-color: rgba(0,0,0,0.0);
	margin-left: auto;
	margin-right: auto;	
}
footer .footer-nav ul  {
	overflow: hidden;
}

footer .footer-nav ul li {
	float:left;
	width: 125px;
}
footer .footer-nav ul li a {
	display: block;
	width: 125px;	
	overflow: hidden;
}
footer a {	
	color: #000;
}
footer a:hover {
	color: #999;
}
/* 連絡先 */
address {
	font-style: normal;
}


@media screen and (max-width: 979px) {
    /* 979px above  */
		/* 施工事例 img */
	.maincontent h2.copyh2 img {
    max-height: 87px;
    max-width: 630px;
	}
}
@media screen and (max-width: 767px) {

    /* Less than 767 */
			/* 施工事例 img */
	.maincontent h2.copyh2 img {
    max-height: 77px;
    max-width: 530px;
	}
	h2.copyh2-bg {
    width: 100%;
    height: 160px;
	}
	/* 施工事例 */
	.case-content-all {
	width: 95%;
	}
	.case-x1 {
	width: 100%;
	float: none;
	margin-right: auto;
	margin-left: auto;
	}
	.bg-area {
    padding: 7.5% 0;
	}
		/* footer-nav 可変幅 */
	footer .footer-nav {
    width: 100%;
    padding: 0% 0% 2% 0%;
    margin-left: auto;
    margin-right: auto;
	}
	footer .footer-nav ul li {
    width: 16.666%;
	}
	footer .footer-nav ul li a {
    width: 100%;
	}
		/* footer-nav 可変幅 end */
}
@media screen and (max-width: 579px) {
/*case_top_bg_s.jpg*/
/* top bg */
	.top-bg-area {
	background-image: url(../img/case/case_top_bg_s.jpg);
	background-position: 30% 40%;
	background-size: cover;
	background-repeat: no-repeat;
	}
	div.copyh2-bg {
    width: 100%;
    height: 135px;
	}

    /* Less than 579 */
}
@media screen and (max-width: 479px) {
    /* Less than 479 */
		/* 施工事例 img */
	.maincontent h2.copyh2 img {
    max-height: 62px;
    max-width: 360px;
	}
		/*当社 p*/
	.maincontent p.copy {
	font-size: 16px;
    line-height: 1.45;
    padding: 4.4%;
	}

	/* nav 入れ替え */
		/*nav メニュー位置*/
	nav {	
	width: 100%;	
	padding: 0;
	}
	nav img {
	width: 18%;
	}
	nav ul  {
	overflow: hidden;
	padding: 1.5% 0 2.5% 0;
	background-color: #164088; /* メニュー欄内の色 */
	}
		/* icon top */
	nav h2 {
	padding: 2% 0 0 0;
	}
	nav ul li {
	font-size: 18px;
	float: none;
	width: 100%;
	padding: 2.25% 0;
	}
	nav ul li a {
	width: 100%;
	}
		/* nav a:hover */
	nav ul li a:hover {
	border-bottom: #fff 1px solid;
	}
	nav ul li.now a {
	/*border-bottom: #CCC 1px solid;*/
	}
	nav ul li.now a:hover {
	border: none;
	color: #fff;
	}
	/*吹き出し下三角-不可視*/
	.now-fukidasi {
	width: 0%;

	display: none;
	}
		/* bread_list */
	.bread_list {
	padding: 4% 0 4% 2%;
	}
	/* ロゴ */
	.logo {
	padding: 3.5%;
	}
	.logo img {
	width: 40%;
	margin-left: auto;
	margin-right: auto;
	}

	/* footer */
	footer {
	padding: 0 0 3% 0;	
	}
		/*nav メニュー位置*/
	footer .footer-nav {
	width: 100%;
	padding: 3% 0%;
	font-size: 19px;
	margin-left: auto;
	margin-right: auto;		
	}
	footer .footer-nav-t {
	overflow: hidden;
	width: 100%;
	text-align: center;
	}
		/* 段落 */
			/* 画面幅 or x2 */
	footer .footer-nav ul li {
	float: left; /* none で1段落 */
	width: 50%;
	margin-left: auto;
	margin-right: auto;
	}
	footer .footer-nav ul li a {
    width: 100%;
    padding: 5% 0; /* important */
	}
			/*  a:hover background-color */
	footer .footer-nav ul li a:hover {
	color: #000; /* overwritten */
	background-color: #fff;
	}
		/*現ページを無視する設定*/
	footer .footer-nav ul li.now-footernav a {
	color: #000;
	}
	footer .footer-nav ul li.now-footernav a:hover {
	color: #000;
	background-color: #fff;
	}
			/* footer nav CSS3 矢印*/
	#css-arrow {
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px; padding: 0;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
	}
	#css-arrow::before,
	#css-arrow::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	}
	#css-arrow::before {
	left: 3px; left: 5px;
	width: 4px; width: 6px;
	height: 4px; height: 6px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	}
}
@media screen and (max-width: 320px) {
    /* 320px above  */
		/* 施工事例 img */
	.maincontent h2.copyh2 img {
    max-height: 50px;
    max-width: 335px;
	}
		/*当社 p*/
	.maincontent p.copy {
    font-size: 14px;
    line-height: 1.4;
    padding: 4%;
	}
		/* bg */
	h2.copyh2-bg {
    height: 125px;
	}
}
/* 印刷時の設定 "page-break-point"*/
@media print {
	body {
	font-family: "Times New Roman", serif;
	font-size: 12pt;
	overflow: visible !important;
	}
	.maincontent {
	background-color: #fff;
	}
	/* print ブレークポイント */
	.page-break-point {
	page-break-after: always;
	page-break-before: always;
	}
	.logo {
	background-color: #fff;
	margin: 8px 0;
	}
	.logo img {
	width: 22.5%;
	}
		/* nav,吹き出し none */
	.mainVisual-cover-box {
	display: none;
	}
		/* blead none */
	.bread_list {
	display: none;
	}
	.hello {
    margin-bottom: 2.5%;
	background: #fff;
	}
	.hello-box {
    height: 230px;
	}
	.hello {
	display: none;
	}
	/* 施工事例 bg */
	div.copyh2-bg {
	display: none;
	}
	.bg-area {
	display: none;
	}
	.maincontent h2.copyh2 img {
	max-height: 77px;
	max-width: 530px;
	}
	.case-bg-area {
	background: none;
	}
	.case-content-all {
	padding: 0;
	}
	footer {
	display: none;
	}
/* firefox 印刷不具合 float:none */
	.case-x1 {
	display: inline-block;
	width: 49%;
	float: none;
	}
}