@charset "UTF-8";
/* CSS Document */
/*
Theme Name:平錦建設株式会社
Theme URI:kazenomichi.net
Description: テーマの説明
Author: 風の道雨の匂石の刻
Author URI:  kazenomichi.net
Version: 1.0
*/
body,td,th {
	margin:0;
	padding:0;
	font-family: YuGothic,'Yu Gothic','ＭＳ ゴシック','ＭＳ Ｐゴシック','MS PGothic','Osaka','ヒラギノ角ゴ StdN','Hiragino Kaku Gothic StdN',sans-serif;
	font-size: 16px;
	line-height:1.5;
	color:#2b2b2b;
}
p {
	margin:0;
	padding:0;
	}
h1,h2.h3 {
	margin:0;
	padding:0;
	}
a:link,a:visited,a:active {
	text-decoration: none;
	color:#414b8b;
	}
a:hover {
	text-decoration: none;
	color:#2b2b2b;
	}
.clearfix::after{
	content: "";
	display: block;
	clear: both;
	}
/*------------------------------------------------*\
　レイアウト
\*------------------------------------------------*/

/*------------------------------------------------ヘッダー*/
#wrap {
	width:100%;
	margin:0;
	padding:0;
	}
.inner {
	width:980px;
	margin:0 auto;
	padding:0;
	}
header {
	width:100%;
	margin:0 auto;
	padding:0;
	border-bottom:solid 2px #414b8b;
	box-shadow:0 0 8px #adadad;
	}
.img_left {
	float:left;
	margin-right:24px;
	margin-bottom:8px;
	}
.font-large {
	font-size:2rem;
	line-height:1.5;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
.inner {
	width:90%;
	margin:0 auto;
	padding:0;
	}
header {
	width:100%;
	margin:0 auto;
	padding:0;
	border-bottom:none;
	box-shadow:0 0 8px #adadad;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
.inner {
	width:90%;
	margin:0 auto;
	padding:0;
	}
img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
	}
header {
	width:100%;
	margin:0 auto;
	padding:0;
	border-bottom:none;
	box-shadow:0 0 8px #adadad;
	}
.img_left {
	width:100%;
	text-align:center;
	margin-right:0;
	margin-bottom:16px;
	}
.font-large {
	font-size:1.5rem;
	line-height:1.5;
	}
}
/*-------------------------menu*/
#menu {
	width:100%;
	margin:0 auto;
	padding:16px 0;
	background-color:#fff;
	font-weight:700;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	align-items:center;
	}
#menu h1 { margin-right:24px; }
#menu ul {
	list-style-type:none;
	margin:0 ;
	padding: 0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	align-items:center;
	}
#menu ul li {
	padding:4px 16px;
	border-right:solid 1px #92C8E8;
	}
#menu ul li:last-child {
	padding:4px 16px;
	border-right:none;
	}
.slicknav_menu { display:none; }

/*--------------------------------------------------ドロップダウンメニュー*/
#menu li.menu-item-has-children,
#index-menu li.menu-item-has-children {
    position: relative;
	background:#fff;
}
#menu li.menu-item-has-children ul,
#index-menu li.menu-item-has-children ul {
	display:block;
    width: 200%;
    visibility: hidden;
    opacity: 0;
    position: absolute;
    top: 24px;
	left:0;
	padding:4px 0;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
	background:#fff;
}
#menu li.menu-item-has-children ul li,
#index-menu li.menu-item-has-children ul li {
	border-right:none;
	}
#menu li.menu-item-has-children:hover ul,
#index-menu li.menu-item-has-children:hover ul {
    visibility: visible;
    opacity: 1;
    top: 32px;
	background:#fff;
}
@media screen and (max-width:1024px) {/*スマートフォン*/
#menu li.menu-item-has-children,
#index-menu li.menu-item-has-children {
    position: static;
	background:#fff;
}
#menu li.menu-item-has-children ul,
#index-menu li.menu-item-has-children ul {
    visibility: visible;
    opacity: 0;
    position: static;
    width: 100%;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
	background:#fff;
}
#menu li.menu-item-has-children:hover ul,
#index-menu li.menu-item-has-children:hover ul {
    visibility: visible;
    opacity: 1;
    top: 50px;
	background:#fff;
}
}
/*--------------------------------------------------*/
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
#menu { display:none; }
#menu h1 { display:none; }
.slicknav_menu { display:block; }
.slicknav_menu h1 { display:none; }
.slicknav_menu:before {
	padding:5px 16px ;
    float: left;
    content:url("images/h_logo_sp.png") !important;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
#menu { display:none; }
#menu h1 { display:none; }
.slicknav_menu { display:block; }
.slicknav_menu h1 { display:none; }
.slicknav_menu:before {
	padding:5px 16px ;
    float: left;
    content:url("images/h_logo_sp.png") !important;
	}
}
/*-------------------------menuここまで*/

/*-------------------------index*/
#wrap-index {
	width:100%;
	margin:0 auto;
	padding:0;
	}
#wrap-index header {
	width:100%;
	margin:0 auto;
	padding:0;
	}
#index-image {
	width:100%;
	margin:0 auto;
	padding:40px 40px 80px;
	box-sizing:border-box;
	background:url(images/index-img.jpg) no-repeat top center fixed;
	background-size:cover;
	}
#index-image p {
	margin:40px 40px 0 40px;
	width:480px;
	padding:16px;
	box-sizing:border-box;
	background: rgba(0, 0, 0, 0.7);
	color:#fff;
	font-size:150%;
	font-weight:700;
	line-height:2;
	}

/*-------------------------*/
#index-image2 {
	width: 100%;
	height: 88vh;
	margin: 0;
	padding: 40px;
	box-sizing: border-box;
	background-position: center bottom;
	background-size: 100% auto;
}
#index-image2 h1 {
	line-height: 1;
	margin-bottom: 40px;
}
#index-image2 h1 img {
	max-width: 100%;
	width: auto;
	height: auto;
}
#index-image2 p {
	margin:0;
	width:480px;
	padding:16px;
	box-sizing:border-box;
	background: rgba(0, 0, 0, 0.7);
	color:#fff;
	font-size:150%;
	font-weight:700;
	line-height:2;
	}

@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
	#index-image2 {
		height: 80vh;
		padding: 0;
		background-size: cover;
		position: relative;
	}
	#index-image2 h1 {
		display: none;
	}
	#index-image2 p {
		width: 64%;
		margin: 0 auto;
		font-size:125%;
		text-align: center;
		position: absolute;
		top: 32%;
		left: 50%;
		transform: translateY(-32%);
		transform: translateX(-50%);
	}
}

@media screen and (max-width:480px) {/*スマートフォン*/
	#index-image2 {
		height: 50vh;
		padding: 0;
		background-size: cover;
		position: relative;
	}
	#index-image2 h1 {
		display: none;
	}
	#index-image2 p {
		width: 80%;
		margin: 0 auto;
		padding:16px 8px;
		font-size:100%;
		text-align: center;
		position: absolute;
		top: 32%;
		left: 50%;
		transform: translateY(-32%);
		transform: translateX(-50%);
	}
}
/*-------------------------*/
#index-menu {
	width:100%;
	margin:0 auto;
	padding:16px 0;
	background-color:#fff;
	font-weight:700;
	position: relative;
	z-index: 9999!important;
	}
#index-menu ul {
	list-style-type:none;
	margin:0 ;
	padding: 0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	}
#index-menu ul li {
	padding:4px 16px;
	border-right:solid 1px #92C8E8;
	}
#index-menu ul li:last-child {
	padding:4px 16px;
	border-right:none;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
#index-image {
	width:100%;
	margin:0 auto;
	padding:24px 0 40px;
	box-sizing:border-box;
	background:url(images/index-img.jpg) no-repeat top center fixed;
	background-size:cover;
	text-align:center;
	}
#index-image p {
	margin:24px auto 0;
	width:480px;
	padding:16px;
	box-sizing:border-box;
	background: rgba(0, 0, 0, 0.7);
	color:#fff;
	font-size:150%;
	font-weight:700;
	line-height:2;
	}
#index-menu { display:none; }
}
@media screen and (max-width:480px) {/*スマートフォン*/
#index-image {
	width:100%;
	margin:0 auto;
	padding:40px 24px 40px;
	box-sizing:border-box;
	background:url(images/index-img.jpg) no-repeat top center fixed;
	background-size:100 auto;
	text-align:center;
	}
#index-image h1 { display:none; }
#index-image img { width:100%; }
#index-image p {
	margin:0 auto;
	width:90%;
	padding:16px;
	box-sizing:border-box;
	background: rgba(0, 0, 0, 0.7);
	color:#fff;
	font-size:100%;
	font-weight:700;
	line-height:2;
	}
#index-menu { display:none; }
}
/*ヘッダーここまで------------------------------------------------*/

/*------------------------------------------------メイン*/
main {
	width:100%;
	margin:0 auto;
	padding:0;
	}
#page-title {
	width:100%;
	margin:0 auto 0;
	padding:24px 0 ;
	box-sizing:border-box;
	background:url(images/blue.png) no-repeat center;
	background-size:cover;
	text-align:center;
	color:#414b8b;
	font-size:150%;
	line-height:0;
	}
#construction-title {
	width:100%;
	margin:0 auto 0;
	padding:24px 0 ;
	box-sizing:border-box;
	background:url(images/construction.png) no-repeat center;
	background-size:cover;
	text-align:center;
	font-size:125%;
	line-height:0;
	}
#civilwork-title {
	width:100%;
	margin:0 auto 0;
	padding:24px 0 ;
	box-sizing:border-box;
	background:url(images/civilwork.png) no-repeat center;
	background-size:cover;
	text-align:center;
	font-size:125%;
	line-height:0;
	}
#gas-title {
		width:100%;
	margin:0 auto 0;
	padding:24px 0 ;
	box-sizing:border-box;
	background:url(images/gas.png) no-repeat center;
	background-size:cover;
	text-align:center;
	font-size:125%;
	line-height:0;
}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
#page-title {
	width:100%;
	margin:0 auto 0;
	padding:16px 0 ;
	box-sizing:border-box;
	background:url(images/blue.png) no-repeat center;
	background-size:cover;
	text-align:center;
	color:#414b8b;
	font-size:100%;
	line-height:0;
	}
#construction-title {
	width:100%;
	margin:0 auto 0;
	padding:16px 0 ;
	box-sizing:border-box;
	background:url(images/construction.png) no-repeat center;
	background-size:cover;
	text-align:center;
	font-size:100%;
	line-height:0;
	}
#civilwork-title {
	width:100%;
	margin:0 auto 0;
	padding:16px 0 ;
	box-sizing:border-box;
	background:url(images/civilwork.png) no-repeat center;
	background-size:cover;
	text-align:center;
	font-size:100%;
	line-height:0;
	}
#gas-title {
		width:100%;
	margin:0 auto 0;
	padding:16px 0 ;
	box-sizing:border-box;
	background:url(images/gas.png) no-repeat center;
	background-size:cover;
	text-align:center;
	font-size:100%;
	line-height:0;
}
}
@media screen and (max-width:480px) {/*スマートフォン*/
#page-title {
	width:100%;
	margin:0 auto 0;
	padding:16px 0 ;
	box-sizing:border-box;
	background:url(images/blue.png) no-repeat center;
	background-size:cover;
	text-align:center;
	color:#414b8b;
	font-size:100%;
	line-height:0;
	}
#construction-title {
	width:100%;
	margin:0 auto 0;
	padding:16px 0 ;
	box-sizing:border-box;
	background:url(images/construction.png) no-repeat center;
	background-size:cover;
	text-align:center;
	font-size:100%;
	line-height:0;
	}
#civilwork-title {
	width:100%;
	margin:0 auto 0;
	padding:16px 0 ;
	box-sizing:border-box;
	background:url(images/civilwork.png) no-repeat center;
	background-size:cover;
	text-align:center;
	font-size:100%;
	line-height:0;
	}
#gas-title {
		width:100%;
	margin:0 auto 0;
	padding:16px 0 ;
	box-sizing:border-box;
	background:url(images/gas.png) no-repeat center;
	background-size:cover;
	text-align:center;
	font-size:100%;
	line-height:0;
}
}
/*-------------------------パンくずリスト*/
.breadcrumbs {
	width:90%;
	margin:16px auto 0;
	text-align:center;
	}
.breadcrumbs span[typeof="ListItem"]:last-child span[property="name"] {
	display: none ;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
.breadcrumbs {
	width:90%;
	margin:16px auto 0;
	font-size:.90%;
	box-sizing:border-box;
	overflow:hidden;
	}
.breadcrumbs span[typeof="ListItem"]:last-child span[property="name"] {
	display: none ;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
.breadcrumbs {
	width:90%;
	margin:16px auto 32px;
	font-size:90%;
	box-sizing:border-box;
	overflow:hidden;
	}
.breadcrumbs span[typeof="ListItem"]:last-child span[property="name"] {
	display: none ;
	}
}
/*メインここまで------------------------------------------------*/

/*------------------------------------------------フッター*/
footer {
	width:100%;
	margin:40px auto 0;
	padding:0;
	background-color:#eaf4fc;
	}
footer ul {
	list-style-type:none;
	margin:0 ;
	padding:16px 0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	flex-wrap:wrap;
	}
footer ul li {
	margin-right:16px;
	padding-right:16px;
	border-right:solid 1px #92C8E8;
	}
footer ul li:last-child {
	margin-right:0;
	padding-right:0;
	border-right:none;
	}
.copy {
	padding:8px 0;
	background-color:#92C8E8;
	color:#fff;
	text-align:center;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
footer {
	width:100%;
	margin:40px auto 0;
	padding:0;
	background-color:#eaf4fc;
	font-size:.75rem;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
footer {
	width:100%;
	margin:40px auto 0;
	padding:0;
	background-color:#eaf4fc;
	}
footer ul {
	list-style-type:none;
	width:90%;
	margin:0 auto;
	padding:16px 0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:flex-start;
	flex-wrap:wrap;
	}
footer ul li {
	margin:4px 0;
	margin-right:16px;
	padding-right:16px;
	border-right:solid 1px #92C8E8;
	}
footer ul li:last-child {
	margin-right:0;
	padding-right:0;
	border-right:none;
	}
.copy {
	padding:8px 0;
	background-color:#92C8E8;
	color:#fff;
	text-align:center;
	}
}
/*フッターここまで------------------------------------------------*/

/*--------------------------------------------------index*/
/*----------お知らせ*/
#index-news {
	width:980px;
	margin:0 auto;
	padding:40px 0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:space-between;
	}
#index-news ul {
	list-style-type:none;
	}
ul.newsli {
	width:48%;
	margin:0 auto;
	padding:0;
	}
ul.newsli li {
	margin:0 0 8px;
	padding:0 0 8px;
	border-bottom:dotted 1px #ccc;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	}
ul.newsli li:last-child {
	margin:0 0 8px;
	padding:0 0 8px;
	border-bottom:solid 1px #ccc;
	}
ul.newsli li.news-h3 {
	display:block;
	margin:0 0 8px;
	padding:0 0 8px;
	border-bottom:solid 1px #ccc;
	text-align:center;
	font-size:125%;
	font-weight:700;
	}
.day {
	color:#414b8b;
	margin-right:16px;
	}
ul.aboutli {
	width:32%;
	margin:0 auto;
	padding:0;
	line-height:0;
	}
ul.aboutli li {
	margin-bottom:8px;
	}
ul.aboutli li:last-child {
	margin-bottom:0;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
#index-news {
	width:90%;
	margin:0 auto;
	padding:40px 0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:space-between;
	}
#index-news img {
	width:100%;
	}
ul.newsli {
	width:40%;
	margin:0 auto;
	padding:0;
	}
ul.aboutli {
	width:48%;
	margin:0 auto;
	padding:0;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
#index-news {
	width:90%;
	margin:0 auto;
	padding:24px 0;
	display: block;
	}
#index-news img {
	width:100%;
	}
ul.newsli {
	width:100%;
	margin:0 auto 24px;
	padding:0;
	}
ul.newsli li {
	display:block;
	}
ul.aboutli {
	width:100%;
	margin:0 auto;
	padding:0;
	}
}
/*----------*/
/*----------総合力を都市力に*/
#index-company {
	width:100%;
	margin:0 auto 0;
	padding:40px 0 80px;
	box-sizing:border-box;
	background:url(images/blue.png) no-repeat center;
	background-size:cover;
	text-align:center;
	color:#414b8b;
	font-size:150%;
	line-height:2;
	}
#index-company p {
	margin-top:16px;
	}
#index-company a {
	padding:8px 24px;
	background-color:#414b8b;
	color:#fff;
	}
#index-company a:hover {
	padding:8px 24px;
	background-color:#0095d9;
	color:#fff;
	}
@media screen and (max-width:480px) {/*スマートフォン*/
#index-company {
	width:100%;
	margin:0 auto 0;
	padding:16px 0 40px;
	box-sizing:border-box;
	background:url(images/blue.png) no-repeat center;
	background-size:cover;
	text-align:center;
	color:#414b8b;
	font-size:100%;
	line-height:2;
	}
#index-company p {
	margin-top:8px;
	}
#index-company h2 {
	line-height:1.3;
	}
}



#index-company2 {
	width:100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	margin:0 auto 0;
	padding:0;
	box-sizing:border-box;
	background:url(images/blue.png) no-repeat center;
	background-size:cover;
	text-align:center;
	color:#414b8b;
	font-size:150%;
	line-height:2;
	z-index: 0!important;
	}
@media only screen and (min-width:737px) and (max-width:1024px) {/*タブレット*/
	#index-company2 {
		font-size: 1rem;
		line-height: 1.8;
	}
}
@media screen and (max-width:736px) {/*スマートフォン*/
	#index-company2 {
		font-size: 1.25rem;
		line-height: 1.8;
	}
}

#index-company2 hr {
	border: none;
	margin: 16px 0;
}
#index-company2 h2 {
	line-height: 1;
	margin-bottom: 24px;
}

#index-company2 a {
	padding:8px 24px;
	background-color:#414b8b;
	color:#fff;
	}
#index-company2 a:hover {
	background-color:#0095d9;
	color:#fff;
	}

#index-company2 div {width: 50%;}
@media screen and (max-width:736px) {/*スマートフォン*/
	#index-company2 div {width: 100%;}
	#index-company2 div:nth-child(2) {padding-bottom: 24px;}
}

.youtube {
  position: relative;
  width: 100%!important;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
	z-index: 1!important;
}

/*----------*/
.index-button {
	margin:40px 0 ;
	font-size:125%;
	}
.index-flex {
	width:980px;
	margin:40px auto 0;
	padding: 0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	flex-wrap:wrap;
	align-items:flex-start;
	align-content:flex-start;
	}
.index-flex p {
	width:30%;
	margin:0;
	padding:0;
	}
.index-flex p img {
	width:100%;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
.index-flex {
	width:90%;
	margin:40px auto 0;
	padding: 0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	flex-wrap:wrap;
	align-items:flex-start;
	align-content:flex-start;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
.index-button {
	margin:24px 0 ;
	font-size:125%;
	}
.index-flex {
	width:90%;
	margin:24px auto 0;
	padding: 0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	flex-wrap:wrap;
	align-items:flex-start;
	align-content:flex-start;
	}
}
/*----------建築部*/
#index-construction {
	margin:0 auto;
	padding:0;
	text-align:center;
	}
#index-construction h2 {
	margin:0 auto;
	padding:8px 0;
	box-sizing:border-box;
	background-color:#2a83a2;
	color:#fff;
	}
#index-construction h2 span {
	font-size:125%;
	}
#index-construction p.index-button a {
	padding:8px 32px;
	background-color:#2a83a2;
	color:#fff;
	}
#index-construction p.index-button a:hover {
	background-color:#414b8b;
	color:#fff;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
#index-construction h2 {
	margin:0 auto;
	padding:8px 0;
	box-sizing:border-box;
	background-color:#2a83a2;
	color:#fff;
	font-size:125%;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
#index-construction h2 {
	margin:0 auto;
	padding:8px 0;
	box-sizing:border-box;
	background-color:#2a83a2;
	color:#fff;
	font-size:100%;
	}
}
/*----------*/
/*----------土木部*/
#index-civilwork {
	text-align:center;
	}
#index-civilwork h2 {
	padding:8px 0;
	background-color:#316745;
	color:#fff;
	}
#index-civilwork h2 span {
	font-size:125%;
	}
#index-civilwork p.index-button a {
	padding:8px 32px;
	background-color:#316745;
	color:#fff;
	}
#index-civilwork p.index-button a:hover {
	background-color:#414b8b;
	color:#fff;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
#index-civilwork h2 {
	margin:0 auto;
	padding:8px 0;
	box-sizing:border-box;
	background-color:#316745;
	color:#fff;
	font-size:125%;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
#index-civilwork h2 {
	margin:0 auto;
	padding:8px 0;
	box-sizing:border-box;
	background-color:#316745;
	color:#fff;
	font-size:100%;
	}
}
/*----------*/
/*----------ガス部*/
#index-gas {
	text-align:center;
	}
#index-gas h2 {
	padding:8px 0;
	background-color:#745399;
	color:#fff;
	}
#index-gas h2 span {
	font-size:125%;
	}
#index-gas h3 {
	color:#745399;
	font-size:200%;
	line-height:2;
	}
#index-gas p {
	color:#745399;
	font-size:150%;
	line-height:2;
	}
#index-gas p.index-button a {
	padding:8px 32px;
	background-color:#745399;
	color:#fff;
	font-size:1.25rem;
	}
#index-gas p.index-button a:hover {
	background-color:#414b8b;
	color:#fff;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
#index-gas h2 {
	padding:8px 0;
	background-color:#745399;
	color:#fff;
	font-size:125%;
	}
#index-gas h3 {
	color:#745399;
	font-size:150%;
	line-height:2;
	}
#index-gas p {
	color:#745399;
	font-size:125%;
	line-height:2;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
#index-gas h2 {
	padding:8px ;
	background-color:#745399;
	color:#fff;
	font-size:100%;
	}
#index-gas h3 {
	color:#745399;
	font-size:125%;
	line-height:1.5;
	}
#index-gas p {
	color:#745399;
	font-size:100%;
	line-height:2;
	}
}
/*-----------------------------------*/

/*-----------------------------------page*/

#index-company p {
	margin-top:16px;
	}
/*-------------------------施工実績*/
.img100 {
	margin:16px 0;
	width:100%;
	}
.img100 img {
	width:100%;
	height:auto;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
}
@media screen and (max-width:480px) {/*スマートフォン*/
}
/*-------------------------施工実績*/

/*-----------------------------------*/

/*--------------------------------------------------single*/
section {
	width:50%;
	margin:40px auto;
	padding:0;
	font-size:1.25rem;
	line-height:2;
	}
section h3 {
	margin:0 0 8px;
	padding:0 0 8px;
	border-bottom:solid 1px #ccc;
	}
.data {
	margin:0 0 16px;
	font-size:.8rem;
	color:#666;
	text-align:right;
	}
#side {
	width:980px;
	margin:80px auto 40px;
	padding:0;
	}
#side h3 {
	font-size:1.5rem;
	margin:0 0 16px;
	padding: 0 0 8px;
	border-bottom:solid 1px #ccc;
	}
#side a:link { color:#0095d9; }
#side a:hover { color:#414b8b; }
#side ul {
	list-style-type:none;
	margin:0 auto;
	padding:0;
	}
ul.wiget {
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	flex-wrap:wrap;
	}
#side ul li:before {
  font-family: "Font Awesome 5 Free";
  content: '\f0da';
  font-weight: 900;
  color:#0095d9;
}
aside {
	margin:0 auto 16px;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
section {
	width:75%;
	margin:40px auto;
	padding:0;
	font-size:1.25rem;
	}
#side {
	width:75%;
	margin:80px auto 40px;
	padding:0;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
section {
	width:90%;
	margin:40px auto;
	padding:0;
	font-size:1.25rem;
	}
#side {
	width:90%;
	margin:80px auto 40px;
	padding:0;
	}
}
/*--------------------------------------------------*/

/*--------------------------------------------------archive*/
#archive {
	width:980px;
	margin:40px auto;
	padding:0;
	}
#archive ul {
	list-style-type:none;
	margin:0 auto;
	padding:0;
	}
#archive ul li {
	list-style-type:none;
	margin:0 auto 16px;
	padding:0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	}
.archive-data {
	margin-left:16px;
	color:#666;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
#archive {
	width:75%;
	margin:40px auto;
	padding:0;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
#archive {
	width:90%;
	margin:40px auto;
	padding:0;
	}
}
/*--------------------------------------------------*/


/*------------------------------------------------*\
　レイアウトここまで
\*------------------------------------------------*/

/*-------------------------企業情報*/
ul.greeting-navi {
	list-style-type:none;
	margin:40px auto 0;
	padding:0;
	text-align:center;
	line-height:1.3;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	}
ul.greeting-navi li {
	width:34%;
	}
ul.greeting-navi li:hover {
	opacity:.8;
	}
ul.greeting-navi li img {
	width:100%;
	height:auto;
	}
.greeting {
	width:980px;
	margin:0 auto;
	padding:0;
	line-height:2;
	}
.greeting h3 {
	margin:0 0 16px;
	padding:0;
	font-size:2rem;
	text-align:center;
	}
.greeting h4 {
	margin:0;
	padding:0;
	font-size:1.5rem;
	font-weight:400;
	text-align:center;
	}
.greeting h5 {
	margin:0;
	padding:0;
	font-size:1.25rem;
	font-weight:400;
	text-align:center;
	}
.greeting hr {
	margin:40px 0;
	border:none;
	border-bottom:solid 1px #414b8b;
	}
.greeting-img {
	float:left;
	margin-right:16px;
	magin-bottom:8px;
	}
.greeting-castle { margin:40px 0; }
.prof_name {
	font-size:1.5rem;
	}
.yurai {
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	align-items:center;
	}
.yurai img { margin-right:8px; }
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
.greeting {
	width:90%;
	margin:0 auto;
	padding:0;
	line-height:2;
	}
.greeting-castle img {
	width:100%;
	height:auto;
	}
.greeting-img {
	width:40%;
	}
.greeting-img img {
	width:100%;
	height:auto;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
.greeting {
	width:90%;
	margin:0 auto;
	padding:0;
	line-height:2;
	}
.greeting h3 {
	margin:0 0 16px;
	padding:0;
	font-size:1.5rem;
	text-align:center;
	line-height:1.5;
	}
.greeting h4 {
	margin:0;
	padding:0;
	font-size:1.25rem;
	font-weight:400;
	text-align:center;
	line-height:1.3;
	}
.greeting-castle img {
	width:100%;
	height:auto;
	}
.greeting-img {
	float:none;
	margin-right:0;
	margin-bottom:16px;
	text-align:center;
	}
.greeting-img img {
	width:100%;
	height:auto;
	}
.yurai {
	display:block;
	margin-bottom:16px;
	}
.yurai img {
	margin-right:0;
	}
ul.greeting-navi {
	list-style-type:none;
	margin:40px auto 0;
	padding:0;
	text-align:center;
	line-height:1.3;
	display: block;
	}
ul.greeting-navi li {
	width:100%;
	margin-bottom:16px;
	}
}
/*---------------会社概要*/
.c_outline {
	width:980px;
	margin:0 auto;
	padding:0;
	line-height:2;
	}
.c_outline h3 {
	margin:0 0 16px;
	padding:0;
	font-size:2rem;
	text-align:center;
	}
.c_outline table {
	width:100%;
	margin:0 0 80px;
	padding:0;
	border-collapse:collapse;
	}
.c_outline table tr:nth-child(2n-1) {
	background-color:#eaf4fc;
	}
.c_outline table th,
.c_outline table td {
	padding:16px;
	box-sizing:border-box;
	vertical-align:top;
	}
.c_outline table th {
	font-weight:400;
	width:24%;
	}
.c_outline table td.t_flex {
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:space-between;
	}
.c_outline table td.t_flex span {
	width:48%;
	}
/*access*/
#access {
	margin-bottom:80px;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:space-between;
	}
.access_img {
	width:32%;
	}
.access_img img {
	width:100%;
	height:auto;
	}
.map {
	width:64%;
	text-align:center;
	}
.map p { margin-bottom:16px; }
.g_map {
	margin:0;
	position: relative;
	padding-bottom: 40%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	}
.g_map iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	}
.chart {
	margin:0 auto 40px;
	text-align:center;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
.c_outline {
	width:90%;
	margin:0 auto;
	padding:0;
	line-height:2;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
.c_outline {
	width:90%;
	margin:0 auto;
	padding:0;
	line-height:2;
	}
.c_outline table th,
.c_outline table td {
	display:block;
	padding:8px 16px;
	box-sizing:border-box;
	vertical-align:top;
	}
.c_outline table th {
	padding:8px 16px 0 ;
	font-weight:700;
	width:100%;
	text-align:left;
	}
.c_outline table td.t_flex {
	display:block;
	}
.c_outline table td.t_flex span {
	width:100%;
	}
/*access*/
#access {
	margin-bottom:80px;
	display:block;
	}
.access_img {
	width:75%;
	margin:0 auto 16px;
	}
.access_img img {
	width:100%;
	height:auto;
	}
.map {
	width:100%;
	text-align:center;
	}
.map p { margin-bottom:16px; }
.g_map {
	margin:0;
	position: relative;
	padding-bottom: 40%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	}
.g_map iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	}
}
/*企業情報-------------------------*/

/*-------------------------リクルート*/
#recruit-top {
	width:980px;
	margin:16px auto 0;
	padding:0;
	line-height:2;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	text-align:center;
	flex-wrap:wrap;
	}
#recruit-top h3 {
	margin:0 0 16px;
	padding:0;
	font-size:1.25rem;
	color:#414b8b;
	line-height:1.5;
	}
#recruit-top div {
	width:40%;
	margin:0 16px 32px;
	padding:24px;
	box-sizing:border-box;
	background-color:#fff;
	box-shadow: 0 2px 8px gray;
	}
#recruit-top div:last-child {margin:0 0 0;}
#recruit-top a {
	color:#fff;
	}
#recruit-top a:link {
	margin:0 auto ;
	padding:8px 16px;
	background-color:#414b8b;
	color:#fff;
	}
#recruit-top a:hover {
	background-color:#0095d9;
	color:#fff;
	}
#recruit {
	width:980px;
	margin:40px auto 0;
	padding:0;
	line-height:2;
	}
#recruit h3 {
	margin:0;
	padding:0;
	font-size:2rem;
	color:#414b8b;
	text-align:center;
	line-height:1.5;
	}
#recruit h4 {
	margin: 40px 0 8px;
	padding:0;
	line-height:1.5;
	}
#recruit table {
	width:100%;
	margin:16px 0 80px;
	padding:0;
	border-collapse:collapse;
	}
#recruit table tr:nth-child(2n-1) {
	background-color:#eaf4fc;
	}
#recruit table th,
#recruit table td {
	padding:16px;
	box-sizing:border-box;
	vertical-align:top;
	}
#recruit table th {
	width:24%;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
#recruit-top {
	width:90%;
	margin:0 auto;
	padding:0;
	line-height:2;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:space-between;
	}
#recruit {
	width:90%;
	margin:0 auto;
	padding:0;
	line-height:2;
	}
#recruit h3 {
	margin:0;
	padding:0;
	font-size:1.5rem;
	color:#414b8b;
	text-align:center;
	line-height:1.5;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
#recruit-top {
	width:90%;
	margin:16px auto 0;
	padding:0;
	line-height:2;
	display: block;
	}
#recruit-top div {
	width:100%;
	margin:0 auto 16px;
	padding:24px;
	box-sizing:border-box;
	background-color:#fff;
	box-shadow: 0 2px 8px gray;
	}
#recruit {
	width:90%;
	margin:0 auto;
	padding:0;
	line-height:2;
	}
#recruit h3 {
	margin:0;
	padding:0;
	font-size:1.5rem;
	color:#414b8b;
	text-align:center;
	line-height:1.25;
	}
#recruit table th,
#recruit table td {
	display:block;
	padding:8px 16px;
	box-sizing:border-box;
	vertical-align:top;
	}
#recruit table th {
	padding:8px 16px 0 ;
	width:100%;
	text-align:left;
	}
}
/*リクルート-------------------------*/

/*-------------------------施工実績*/
#results {
	width:980px;
	margin:40px auto 0;
	padding:0;
	line-height:1.8;
	}
#results_menu {
	width:980px;
	margin:40px auto 0;
	padding:0;
	line-height:2;
	}
#results_menu h3 {
	margin:0 0 16px;
	padding:0;
	text-align:center;
	font-size:1.5rem;
	}
#results_menu ul {
	list-style-type:none;
	margin:0;
	padding:0;
	text-align:center;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:space-between;
	}
#results_menu ul li {
	margin:40px auto 0;
	width:32%;
	}
#results_menu ul li img{
	width:100%;
	height:auto;
	}
.results_top {
	margin-bottom:24px;
	padding:24px;
	box-sizing:border-box;
	background-color:#fff;
	box-shadow: 0 2px 8px gray;
	text-align:center;
	font-size:1.25rem;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:space-between;
	align-items:center;
	}
.results_top h3 {
	margin:0 0 16px;
	padding:8px;
	background-color:#414b8b;
	color:#fff;
	font-size:1rem;
	line-height:1;
	}
.results_top div {
	width:48%;
	}
.results_top div img {
	width:100%;
	height:auto;
	}
.results_link {
	margin-top:16px;
	font-weight:700;
	}
.results_link a { color:#414b8b; }
.results_link a:hover { color:#0095d9; }
#results-image {
	width:980px;
	margin:40px auto 0;
	padding:0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	flex-wrap:wrap;
	}
#results-image p {
	width:22%;
	margin:8px;
	background-color:#000;
	}
#results-image img {
	width:100%;
	}
#results-image img:hover {
	opacity:0.7;
	}
@media only screen and (min-width:481px) and (max-width:1024px) {/*タブレット*/
#results {
	width:90%;
	margin:40px auto 0;
	padding:0;
	line-height:1.8;
	}
#results_menu {
	width:90%;
	margin:40px auto 0;
	padding:0;
	line-height:2;
	}
#results-image {
	width:90%;
	margin:40px auto 0;
	padding:0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	flex-wrap:wrap;
	}
}
@media screen and (max-width:480px) {/*スマートフォン*/
#results {
	width:90%;
	margin:40px auto 0;
	padding:0;
	line-height:1.8;
	}
#results_menu {
	width:90%;
	margin:40px auto 0;
	padding:0;
	line-height:2;
	}
#results_menu h3 {
	margin:0 0 16px;
	padding:0;
	text-align:center;
	font-size:1.25rem;
	line-height:1.5;
	}
#results_menu ul {
	list-style-type:none;
	margin:0;
	padding:0;
	text-align:center;
	display:block;
	line-height:1.5;
	}
#results_menu ul li {
	margin:40px auto 0;
	width:100%;
	}
#results_menu ul li img{
	width:100%;
	height:auto;
	}
.results_top {
	margin-bottom:24px;
	padding:24px;
	box-sizing:border-box;
	background-color:#fff;
	box-shadow: 0 2px 8px gray;
	text-align:center;
	font-size:1.25rem;
	display: block;
	}
.results_top h3 {
	margin:16px 0 ;
	padding:8px;
	background-color:#414b8b;
	color:#fff;
	font-size:1rem;
	line-height:1;
	}
.results_top div {
	width:100%;
	}
#results-image {
	width:96%;
	margin:40px auto 0;
	padding:0;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	justify-content:center;
	flex-wrap:wrap;
	}
#results-image p {
	width:28%;
	margin:4px;
	background-color:#000;
	}
}
#page-contact {
	width:90%;
	margin:40px auto;
	font-size:1.25rem;
	text-align:center;
	line-height:2;
	}
.font_size150 {
	font-size:150%;
	}

/*-------------------------contact*/
#contact-form {
	margin:16px auto 40px;
	padding:0;
	width:980px;
	}
#contact-form table {
	width:100%;
	margin:0 auto 16px;
	border-collapse:collapse;
	}
#contact-form table th,
#contact-form table td {
	padding:8px;
	box-sizing:border-box;
	border:solid 1px #a3a3a2;
	}
#contact-form table th {
	padding:0 16px;
	box-sizing:border-box;
	background-color:#eaf4fc;
	width:32%;
	text-align:left;
	}
@media screen and (max-width:1024px) {/*スマートフォン*/
#contact-form {
	margin:16px auto 40px;
	padding:0;
	width:90%;
	box-sizing:border-box;
	}
#contact-form table {
	width:100%;
	margin:0 auto 16px;
	border-collapse:collapse;
	border:solid 1px #a3a3a2;
	}
#contact-form table th,
#contact-form table td {
	padding:16px;
	box-sizing:border-box;
	border:none;
	display:block;
	border-collapse:collapse;
	}
#contact-form table th {
	padding:8px 16px;
	box-sizing:border-box;
	background-color:#eaf4fc;
	width:100%;
	text-align:center;
	}
}
.haveto{
 font-size:.75rem;
 padding:5px;
 background:#ba2636;
 color:#fff;
 border-radius:2px;
 margin-left:8px;
 position:relative;
 bottom:1px;
}
input[type="text"],input[type="email"],input[type="tel"]{
	width:100%;
	border: solid 1px #a3a3a2;
	border-radius:4px;
	padding:8px;
	box-sizing:border-box;
}
textarea{
	width:100%;
	border: solid 1px #a3a3a2;
	border-radius:4px;
	padding:8px;
	box-sizing:border-box;
}
/*送信ボタンのデザイン変更*/
#formbtn{
 display: block;
 padding:15px;
 width:32%;
 background:#414b8b;
 color:#fff;
 font-size:18px;
 font-weight:bold;	 
 border-radius:2px;
 margin:25px auto 0;
}
/*送信ボタンマウスホバー時*/
#formbtn:hover{
 background:#fff;
 color:#414b8b;
 border:2px solid #414b8b;
}
@media screen and (max-width:1024px) {/*スマートフォン*/
#formbtn{
 display: block;
 padding:15px;
 width:100%;
 background:#414b8b;
 color:#fff;
 font-size:18px;
 font-weight:bold;	 
 border-radius:2px;
 margin:25px auto 0;
}
}
article h3 {
	line-height:1.5;
	}
article img {
	margin:8px 0;
	max-width: 100%;
	height:auto;
	}