@charset "utf-8";
/*
Theme Name: 【CREATE】ワードプレス ベーステーマ
Description: bootstrapレスポンシブ対応のシンプルなテーマ mf
Author: ISHIKAWA
*/

/*****************************************************************************************************
** basic
*****************************************************************************************************/
html{
	font-size: 62.5%;/* 1rem = 10pxと定義 */
}
body {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.6rem;
	color: #000000;
	line-height: 2;
	letter-spacing: 0.03em;
	margin: 0;
	padding: 0;
	overflow-wrap: break-word;
	overflow:scroll;
	overflow-x: hidden;
	background-color:#fff;
}
/*reCAPTCHAのロゴを非表示*/
.grecaptcha-badge {
	visibility: hidden; 
}
@media screen and (min-width: 576px) {/*スマホ大*/
}
@media screen and (min-width: 768px) {/*タブレット*/
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
}
@media screen and (min-width: 1200px) {/*PC大*/
}

/*****************************************************************************************************
** container
*****************************************************************************************************/
.container {
    padding-right: 15px;
    padding-left: 15px;
}
.container-wrap {
	padding-top: 75px;
	padding-bottom: 75px;
}
.container-wrap-t {
	padding-top: 75px;
}
.pagesection {
	margin-bottom: 100px;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.container-wrap {
	padding-top: 125px;
	padding-bottom: 125px;
}
.container-wrap-t {
	padding-top: 125px;
}
.pagesection {
	margin-bottom: 150px;
}
}
@media (min-width: 1400px) {
.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
	max-width: 1140px;
}
}

/*****************************************************************************************************
** header
*****************************************************************************************************/
#header {
    position: absolute;
    width: 100%;
	top: 0;
    margin: 0px;
    z-index: 999;
	height: 80px;
    padding: 0;
}
#header .inner {
    position: relative;
    padding:0;
	height: 80px;
    background: #fff;
    z-index: 2;
}
#header .logo {
    width: 80px;
    padding: 15px 0px 10px 0px;
    z-index: 9999 !important;
    text-align: left;
    margin: 0;
    font-size: initial;
    margin-left: 15px;
}
#header .logo img { width: 100%;}
#header .logo img {
  filter: brightness(0) saturate(100%) invert(40%) sepia(62%) saturate(639%) hue-rotate(159deg) brightness(90%) contrast(96%);
}
/* Fixed */
#header.fixed {
    position: fixed;
    margin-top: 0px;
    top: 0px;
    animation-name: fade;
  animation-duration: 1s;
	opacity:0.97;
    padding: 0px;
	background: #fff;
}
@keyframes fade{
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}

/***************************
menu（SP）
****************************/
/* 右側 */
.menu-r {
	position:absolute;
	bottom: 0px;
	right: 0;
    height: 100%;
	overflow: hidden;
	width: 80px
}
/* PCメニュー非表示*/
#header nav#global-nav { display: none;}

/* スマホメニュー開いたとき*/
#header nav#global-nav-sub {
		display:none;
		position: absolute;
		top:0;
		width: 100%;
		height: 100vh;
	height: calc(var(--vh, 1vh) * 100)/*ツールバー対策（作業中）*/;
	background: #1a79b3;
		opacity:1;
		left: 0;
		z-index: 1/*ロゴ背面は1にする*/;
}
#header nav#global-nav-sub ul.menu {
    display: block;
    width: 100%;
    position: absolute;
    top: 115px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    margin: 0;
    padding: 0 25px;
}
#header nav#global-nav-sub ul.menu > li a {
	padding:10px 10px;
	display: block;
	color: #ffffff;
	border: none;
	border-bottom: 1px solid #fff;
    font-weight: 700;
}
#header nav#global-nav-sub ul.menu > li:last-child {
	overflow: hidden !important;
    margin-top: 75px;
}
#header nav#global-nav-sub ul.menu > li:last-child a {
	font-weight: 700;
	display: block;
    width: 100%;
    padding: 25px 60px;
    text-align: center;
    position: relative;
    z-index: 2;
    overflow: hidden !important;
    color: #1a79b3;
	background: #fff;
    border: 1px solid #fff;
	border-radius: 15px;
}
#header nav#global-nav-sub ul.menu > li:last-child a::before {
	content: '';/*何も入れない*/
	display: inline-block;/*忘れずに！*/
	width: 23px;
	height: 23px;
	background-image: url("img/icon-mail.svg");
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 12px;
    margin-top: -5px;
    filter: brightness(0) saturate(100%) invert(40%) sepia(62%) saturate(639%) hue-rotate(159deg) brightness(90%) contrast(96%);
}

/* toggle開閉ボタン */
#header #nav_toggle {
		display: block;
		width: 30px;
		height: 30px;
		position: absolute;
		top: 25px;
		right:20px;
		z-index: 9999;
	cursor : pointer;
	}
	#nav_toggle div {
		position: relative;
	}
	#nav_toggle span{
		display: block;
		height: 3px;
		background: #000;/*開ボタンカラー*/
		position:absolute;
		width: 100%;
		left: 0;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;
	}
	#nav_toggle span:nth-child(1){
		top:0px;
	}
	#nav_toggle span:nth-child(2){
		top:10px;
	}
	#nav_toggle span:nth-child(3){
		top:20px;
	}

/* toggle開閉ボタンopen時 */
	.open #nav_toggle span,#header.fixed.open #nav_toggle span{
		background: #000;
	}
	.open #nav_toggle span:nth-child(1) {
			top: 5px;
		   -webkit-transform: rotate(135deg);
			-moz-transform: rotate(135deg);
			transform: rotate(135deg);
		}
		.open #nav_toggle span:nth-child(2) {
			width: 0;
			left: 50%;
		}
		.open #nav_toggle span:nth-child(3) {
			top: 5px;
			-webkit-transform: rotate(-135deg);
			-moz-transform: rotate(-135deg);
			transform: rotate(-135deg);
		}

@media screen and (max-width: 991px) and (max-height: 500px) and (orientation: landscape) { /*スマホ横向き*/
#header nav#global-nav-sub ul.menu { 
	top: 110px;
	display: flex;
	flex-wrap: wrap;
}
#header nav#global-nav-sub ul.menu > li { 
	width: 32%;
	margin-right: 1%;
}
#header nav#global-nav-sub ul.menu > li:last-child { margin-top: 0px; width: 64%;}
}

@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
#header {
	height: 120px;
}
#header .inner { 
	height: 120px;
	background: #fff !important;
}
#header .logo {
	width: 160px;
	margin: 7px 0 0 10px;
    padding: 10px 15px;
	background: #fff;
	float: left;
	line-height: 0
}
#header.fixed {
	height: 82px;
    padding:0;
	top: 0;
	font-size: 1.5rem;
}
#header.fixed .inner { 
	height: 82px;
}
#header.fixed .logo {
	width: 120px;
	padding: 5px 15px;
}
#header .logo img,#header.fixed .logo img { width: 100%;}

/***************************
menu（PC）
****************************/
/* メインメニュー */
#header nav#global-nav { 
	display:inline;
	float: right;
	position: static;
	width: auto;
	height: auto;
	background: none;
	opacity:1;
	z-index: 999;
	margin-right: 260px;
}
#header nav#global-nav ul.menu {
	display:inline;
	position: static;
	width: auto;
    list-style: none;
	display: flex;
	justify-content: flex-end;
	font-style: normal;
	font-weight: 700;
	padding: 25px 0 0 0;
	margin-bottom: 0;
}
#header.fixed nav#global-nav ul.menu { padding: 10px 0 0 0;}
#header nav#global-nav ul.menu > li {
        padding: 20px 25px;
	margin: 0;
	position: static;
	border-bottom: none;
	width: auto
}
#header nav#global-nav ul.menu > li a {
	color:#000;
	display:block;
	position: relative;
	padding: 0
}
#header nav#global-nav ul.menu > li a:hover { color:#1a79b3;}

/* 右側 */
.menu-r {
	width: 220px;
	top: 30px;
	margin-right: 25px;
	height: auto;
}
#header.fixed .menu-r { top: 12px;}
.menu-r ul li a {
	color: #fff;
	background: #1a79b3;
	padding: 15px 10px;
	width: 100%;
	display: block;
	text-align: center;
	border-radius: 15px;
	font-weight: 700;
}
.menu-r ul li a::before {
	content: '';/*何も入れない*/
	display: inline-block;/*忘れずに！*/
	width: 23px;
	height: 23px;
	background-image: url("img/icon-mail.svg");
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 12px;
    margin-top: -5px;
}
#header #nav_toggle { display: none;}

}

/*****************************************************************************************************
** footer
*****************************************************************************************************/
#footer {
    position: relative;
	background: #1a79b3;
    width: 100%;
    height: 100%;
    padding: 85px 0 75px 0;
	color: #fff
}
#footer .ftbox {
	display: flex;
	flex-direction: column;
}
#footer .ftbox .add-lt h1.logo {
    width: 130px;
    padding: 0;
    margin: 0 auto 50px auto;
    position: relative;
}
#footer .ftbox .add-lt h1.logo img {
  filter: brightness(0) invert(1);
}
/* footerガイド */
#footer .ftbox .add-lt .f-guide {
    margin-top: 45px;
    text-align: center;
}
#footer .ftbox .add-lt .f-guide address {
	margin-bottom: 0;
}
/* footerサイトマップ */
#footer .ftbox .add-rt .f-sitemap {
	width: 350px;
    margin: 50px auto 0 auto;
}
#footer .ftbox .add-rt .f-sitemap #menu-menu_footer {
	display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-left: 0;
    text-align: center;
    margin-bottom: 0;
}
#footer .ftbox .add-rt .f-sitemap #menu-menu_footer li {
	width: 50%;
	position: relative
}
#footer .ftbox .add-rt .f-sitemap #menu-menu_footer li a {
	color: #fff;
	font-weight: 700;
	position: relative;
    font-size: 1.5rem;
}
#footer .ftbox .add-rt .f-sitemap #menu-menu_footer li a::before {
        content: "";
        display: inline-block;
        position: absolute;
        top: 5px;
        left: -12px;
	width: 10px;
	height: 10px;
	background-image: url("img/arrow2.svg");
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	filter: brightness(0) invert(1);
}
#footer .ftbox .add-rt .f-contact {
	max-width: 300px;
	margin: 25px auto 0 auto
}
#footer .ftbox .add-rt .f-contact a {
    color: #1a79b3;
	background: #fff;
	padding: 15px 10px;
	width: 100%;
	display: block;
	text-align: center;
	border-radius: 15px;
	font-weight: 700;
}
#footer .ftbox .add-rt .f-contact a::before {
	content: '';/*何も入れない*/
	display: inline-block;/*忘れずに！*/
	width: 23px;
	height: 23px;
	background-image: url("img/icon-mail.svg");
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 12px;
    margin-top: -5px;
	filter: brightness(0) saturate(100%) invert(40%) sepia(62%) saturate(639%) hue-rotate(159deg) brightness(90%) contrast(96%);
}
/* コピーライト */
#copyright {
	text-align: center;
	font-size: 1.3rem;
	margin-bottom: 0;
    padding: 15px;
	z-index: 1
}
/* ページトップへボタン */
#page_top{
	display: none;
  width: 60px;
  height: 60px;
  position: fixed;
  right: 25px;
  bottom: -75px;
	background: #1a79b3;
	z-index: 9999;
    border-radius: 50px;
}
#page_top a {
  position: relative;
  display: block;
  width: 60px;
  height: 60px;
  text-decoration: none;
}
#page_top a::before {
    content: "";
    display: inline-block;
	width: 25px;
	height: 25px;
	background-image: url("img/arrow-bar-to-up.svg");
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
    position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%,-50%) rotate(-90deg);
-moz-transform: translate(-50%,-50%) rotate(-90deg);
-ms-transform: translate(-50%,-50%) rotate(-90deg);
-o-transform: translate(-50%,-50%) rotate(-90deg);
transform: translate(-50%,-50%) rotate(-90deg);
	filter: brightness(0) invert(1);
}
@media screen and (min-width: 768px) {/*タブレット*/
#footer {
	padding: 100px 0;
}
#footer .ftbox {
	flex-direction: row;
}
#footer .ftbox .add-lt {
	width: 40%;
}
#footer .ftbox .add-rt {
	width: 60%;
}
#footer .ftbox .add-lt h1.logo {
	margin: 0
}
#footer .ftbox .add-lt .f-guide {
    margin-top: 25px;
    text-align: left;
}
#footer .ftbox .add-rt .f-sitemap {
	margin: 50px auto 0 auto;
    width: auto;
}
#footer .ftbox .add-rt .f-sitemap #menu-menu_footer {
	justify-content: flex-end;
}
#footer .ftbox .add-rt .f-sitemap #menu-menu_footer li {
    width: auto;
	margin-left: 25px;
}
#footer .ftbox .add-rt .f-sitemap #menu-menu_footer li a::before {
    content: none;
}
#footer .ftbox .add-rt .f-contact {
    max-width: 210px;
    margin: 50px 0 0 auto;
}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
#page_top{ display: block;}
#footer .ftbox .add-rt .f-contact { margin: 35px 0 0 auto; max-width: 200px;}
#footer .ftbox .add-rt .f-sitemap #menu-menu_footer li { margin-left: 50px;}
}

/*****************************************************************************************************
動画＆各ページメインヴィジュアル
*****************************************************************************************************/
.topslidebox {
    margin-top: 80px;
	width: 100%;
	height: 500px;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
  position: relative;
    background: #000;
    z-index: 0;
}
.topslidebox .slides li {
    background: #000000 !important
}
.topslidebox img {
	opacity: 0.7 !important;
    height: 500px !important;
    object-fit: cover;
}
div#n2-ss-2 .n2-ss-control-bullet { margin-bottom: 40px;}/* コントロールバー位置 */

/* 動画時　div class="video" 
.video{
	width: 100%;
	height: 100vh;
	height: 100svh;
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: -1;
  position: -webkit-sticky;
  position: sticky;
}
.video::after{
  content: '';
  width: 100%;
  height: 100%;
    background-color: rgba(0, 0, 0, .4);
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.video video{
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}*/
/* catch */
.slidecatch {
	position: absolute;
    top: 125px;
	right: 0px;
    margin: 0 3%;
	z-index: 3;
    max-width: 100%;
	font-size: 2.4rem;
	color: #ffffff;
	text-shadow:0px 0px 12px #343434;
    line-height: 1.5;
    font-weight: 700;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/*下層ページ*/
#pagevisual {
	position: relative;
	height: 200px;
    margin-top: 80px;
    background: #1a79b3;
}
#pagevisual h1.content-title {
    position: absolute;
    bottom: 80px;
    left: 20px;
    right: 0;
    margin: auto;
    font-size: 3.6rem;
    font-weight: 700;
    color: #fff;
}
@media screen and (min-width: 576px) {/*スマホ大*/
#pagevisual h1.content-title { left: 40px;}
.slidecatch { font-size: 3.4rem;}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.topslidebox {
    margin-top: 120px;
	height: calc( 100vh - 120px );
	height: calc( 100svh - 120px );
}
.topslidebox img {
	height: calc(100vh - 120px) !important;
	height: calc(100svh - 120px);
}
.slidecatch {
	top: 30%;
	font-size: 4.5rem;
	width: 645px;
}
#pagevisual {
	height: 280px;
    margin-top: 120px;
}
#pagevisual h1.content-title {
    bottom: 120px;
    left: 80px;
    font-size: 4.4rem;
}
}

/*****************************************************************************************************
** index
*****************************************************************************************************/
.index-block {
	position: relative;
	background: #fff;
    padding: 75px 0;
}
.index-block h2 {
    font-weight: 700;
    font-size: 2.4rem;
    margin-bottom: 25px;
	position: relative;
    background: #1a79b3;
    padding: 20px 30px;
    border-radius: 15px;
    color: #fff;
}
.index-block h3 {
    font-weight: 700;
    font-size: 2.4rem;
    margin-bottom: 15px;
	position: relative;
	color: #1a79b3
}
.index-block h4 {
    font-weight: 700;
    font-size: 2.0rem;
    margin-bottom: 15px;
	position: relative;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.index-block { padding-top: 112px;}
.index-block h2 { font-size: 2.8rem;}
}

/***************************
お知らせ
****************************/
.index-block .idx-info { 
	position: relative;
    padding-bottom: 50px;
}
.index-block .idx-info dl { 
	display: flex;
    width: 100%;
    flex-wrap: wrap;
    padding: 0 10px;
}
.index-block .idx-info dl dt { 
	width: 120px;
	border-top: 2px solid #1a79b3;
    padding: 10px 10px;
	font-weight: 500;
	color: #1a79b3
}
.index-block .idx-info dl dd { 
	width: calc(100% - 120px);
	border-top: 2px solid #1a79b3;
    padding: 10px 10px;
}
.index-block .idx-info dl dt:first-child,.index-block .idx-info dl dt:first-child + dd { border-top: none }
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.index-block .idx-info dl dt { 
	width: 150px;
    padding: 12px 25px;
}
.index-block .idx-info dl dd { 
	width: calc(100% - 150px);
	padding: 12px 25px 12px 0px
}
}

/***************************
お知らせ下お問い合わせ誘導（ウィジェット）
****************************/
.index-block .idx-contact {
    padding: 35px 25px 10px 25px;
    background: #e5f0f7;
    border-radius: 15px;
    margin-bottom: 35px;
    margin-top: 35px;
}
.index-block .idx-contact .contactcatch {
	color: #1a79b3;
    font-size: 2.2rem;
	font-weight: 700;
	text-align: center;
    margin-bottom: 10px;
    line-height: 1.8;
}
.index-block .idx-formtel {
	text-align: center;
    max-width: 700px;
    margin: 0 auto;
}
.index-block .idx-formtel .telno {
	color: #1a79b3;
	font-size: 3.2rem;
	font-weight: 700;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.index-block .idx-contact { width: 96%; margin: 35px auto 35px auto;}
.index-block .idx-contact .contactcatch { font-size: 3.0rem; margin-top: 25px;}
}

/***************************
工事実績
****************************/
.index-block .idx-works { 
	position: relative;
    padding-bottom: 50px;
}
.index-block .idx-works .worksbox {
	display: flex;
	flex-wrap:wrap
}
.index-block .idx-works .worksbox .worksdetail {
	width: 100%;
    margin-bottom: 25px;
}
.index-block .idx-works .worksbox .worksdetail .power {
    border-radius: 15px;
}
.index-block .idx-works .worksbox .worksdetail .blogtitle {
    padding: 5px 10px;
	font-weight: 700
}
@media screen and (min-width: 768px) {/*タブレット*/
.index-block .idx-works .worksbox {
	flex-wrap:nowrap
}
.index-block .idx-works .worksbox .worksdetail {
	width: 33%;
	padding: 10px;
}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.index-block .idx-works .worksbox .worksdetail {  padding: 15px;}
}

/***************************
アクセスマップ
****************************/
.index-block .idx-map { 
	position: relative;
    padding-bottom: 50px;
}
.index-block .idx-map .mapbox { 
	display: flex;
	flex-direction:column
}
.index-block .idx-map .mapbox .honsha { 
	margin-bottom: 35px
}

/* グーグルマップ */
.ggmap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 100%; /* 比率 */
	/*filter: grayscale(100%);*/
}
.ggmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
	border-radius: 15px;
}
@media screen and (min-width: 768px) {/*タブレット*/
.ggmap { padding-top: 50%; /* 比率 */}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.index-block .idx-map .mapbox { flex-direction:row}
.index-block .idx-map .mapbox .honsha,.index-block .idx-map .mapbox .kojibu { 
	width: 50%;
	padding: 25px
}
.ggmap { padding-top: 100%; /* 比率 */}
}

/*****************************************************************************************************
** page
*****************************************************************************************************/
#main-block { position: relative; background: #fff;}

/*********************************************
ページ共通
**********************************************/
/*パンくず*/
#main-block .breadcrumbsbox {
    position: relative;
    overflow: hidden;
    font-size: 1.3rem;
    padding: 15px 0;
    text-align: right;
}
#main-block .breadcrumbsbox span { margin: 0 2px}

/*タイトル共通*/
#main-block h2 {
    font-weight: 700;
    font-size: 3.2rem;
    margin-bottom: 25px;
	position: relative;
	color: #1a79b3
}
#main-block h3 {
    font-weight: 700;
    font-size: 2.4rem;
    margin-bottom: 15px;
	position: relative;
	color: #1a79b3
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
}

/*********************************************
会社概要
**********************************************/
.company { position: relative;}
.company .outlinetable td:first-child {
    background: #fafafa;
    width: 120px;
    font-weight: 700;
}
.company .outlinetable td {
    border: none;
    padding: 25px 17px;
    border-top: 1px solid #eeeeee;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.company .outlinetable td:first-child {
    width: 200px;
}
.company .outlinetable td {
    padding: 25px;
}
}

/*********************************************
求人情報
**********************************************/
.recruit { position: relative;}
.recruit .recruittable tr:nth-child(odd) {
    font-weight: 700;
    padding: 15px 15px;
    display: block;
}
.recruit .recruittable tr:nth-child(even) {
    padding: 15px 25px;
    display: block;
}
.recruit .recruittable td {
	border: none
}
.recruit #main-block .wp-block-table.is-style-stripes,.recruit #main-block table {
    border-bottom: none
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
}

/*********************************************
お問い合わせ
**********************************************/
.contact .contactnum {
	text-align: center;
}
.contact .contactnum span {
	position: relative;
    font-style: normal;
	font-size: 3.9rem;
    color: #1a79b3;
    font-weight: 500;
    padding-left: 50px;
    line-height: 1;
}
.contact .contactnum span a {
    color: #1a79b3;
}
.contact .contactnum span::before {
	content: '';/*何も入れない*/
	display: inline-block;/*忘れずに！*/
	width: 50px;
	height: 50px;
	background-image: url("img/icon-tel.svg");
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
    position: absolute;
    top: 0;
	left: 0;
	filter: invert(51%) sepia(8%) saturate(1545%) hue-rotate(83deg) brightness(87%) contrast(91%);
	transform: rotate(10deg);
}

/*　お問い合わせフォーム　*/
.ef-cts {}
.ef-cts dt {
	width: 100%;
    padding: 10px;
}
.ef-cts dt p,.ef-cts dd p {
	margin-bottom: 0
}
.ef-cts dd {
	width: 100%;
    padding: 0px 10px;
    background: #fff;
    margin-bottom: 20px;
}
.ef-cts .must,.ef-cts .any {/* 必須・任意マーク */
	color: #fff;
	font-size: 10px;
	margin-left: 7px;
    padding: 1px 5px;
}
.ef-cts .must { background: #FF1A00;}
.ef-cts .any { background: #969696;}
.ef-cts dd input,.ef-cts dd textarea {
    max-width: 100%;
    background: #f5f5f5;
    padding: 10px;
}
.ef-cts dd span { display: inline}
.ef-cts dd.ctcpost input { width: 150px;}
.ef-cts dd label { width: 100%;}
.btn_contact7 {
	text-align: center;
	max-width: 500px;
	margin: 50px auto 0 auto;
}
.btn_contact7 input {
	width: 100%;
	background: #000;
    border: 1px solid #000;
	padding: 15px;
	color: #FFF;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
        border-radius: 15px;
}
.btn_contact7 input:hover {
	background-color: #FFF;
	color: #1a79b3;
    border: 1px solid #1a79b3;
}

@media screen and (min-width: 576px) {/*スマホ大*/
.contact .contactnum span { font-size: 4.9rem;}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.ef-cts {
    width: 830px;
    margin: 0 auto;
}
.ef-cts dt {
	float: left;
	clear: left;
	width: 230px;
	padding: 30px 10px;
	font-weight: bold;
    border-bottom: none;
}
.ef-cts dd {
	padding: 30px 10px;
    margin-left: 230px;
	width: auto;
	margin-bottom: 0;
}
}

/***************************
プライバシーポリシー
****************************/
.privacy h1.content-title::after {
	content: 'PRIVACY POLICY';
    font-size: 3.6rem;
    width: 100%;
}
.privacy #main-block li {
    padding-left: 0;
    text-indent: 0;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.privacy #pagevisual h1.content-title::after { left: 35px;}
}

/*****************************************************************************************************
** category・archive
*****************************************************************************************************/

/*********************************************
共通
**********************************************/
/*ページ送り（single共通）*/
.postlink {}
.postlink ul {
	display: flex;
	justify-content:center;
    padding-left: 0;
}
.postlink ul li {
	list-style: none;
	margin: 0 10px;
	width: 100%;
    padding-left: 0 !important;
    text-indent: 0 !important;
}
.postlink ul li a {
	border: 1px solid #000000;
  margin-bottom: 0;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: center;
	color: #000000;
	position: relative;
	margin-top: 50px;
    display: block;
	padding: 15px;
    border-radius: 5px;
}
.postlink ul li a:hover,.postlink ul li a:active {
  background-color: #1a79b3;
	border: 1px solid #1a79b3;
	color: #fff
}
.postlink ul li a::after {
    content: '';
    display: inline-block;
    width: 20px;
    height: 6px;
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
	position: absolute;
	top: 25px;
}
.postlink ul li:first-child a::after {
    background-image: url("img/arrow1.svg");
	left: 10px;
    transform: scale(-1, 1);
}
.postlink ul li:last-child a::after {
    background-image: url("img/arrow1.svg");
	right: 10px
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.postlink ul li { width: auto; }
.postlink ul li a { font-size: 1.4rem; margin-top: 100px;}
.postlink ul li:first-child a { padding: 15px 70px 15px 100px;}
.postlink ul li:last-child a { padding: 15px 100px 15px 70px;}
.postlink ul li:first-child a:hover::after,.postlink ul li:first-child a:active::after,.postlink ul li:last-child a:hover::after,.postlink ul li:last-child a:active::after { background-image: url("img/arrow1-w.svg");}
}

/*サイドバー（single共通）*/
.sidebarbox {
    margin-top: 50px;
}
.sidebarbox h3 {
	position: relative;
	padding-left: 23px;
    margin-bottom: 15px;
}
.sidebarbox h3.Oswald {
	font-weight: 400 !important
}
.sidebarbox h3::before {
    content: "";
    display: inline-block;
    width: 15px;
    height: 3px;
    background-color: #108A07;
    position: absolute;
    top: 12px;
    left: 0px;
}
.sidebarbox ul {
    padding-left: 0;
}
.sidebarbox ul li {
	list-style: none;
    border-bottom: 1px solid #dcdcdc;
    padding: 0 10px 10px 10px !important;
    margin-bottom: 10px;
    text-indent: 0 !important;
}
.sidebarbox ul.side-new li time {
	text-align: right
}
.sidebarbox .sidebar1 {
    margin-bottom: 35px;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.sidebarbox { margin-top: 0px;}
.sidebarbox .sidebar1 { margin-bottom: 50px;}
}

/*********************************************
お知らせ・工事実績
**********************************************/
#main-block.categorycts { 
	position: relative;
}
#main-block.categorycts .newsbox {
	border-bottom: 1px solid #dcdcdc;
	padding-bottom: 30px;
	margin-bottom: 30px
}
#main-block.categorycts h2 {
    font-size: 2.4rem;
	text-align: left;
    margin: 0;
    font-weight: normal;
}
#main-block.categorycts h2::before { content:none;}
#main-block.categorycts .post-time {
    margin-bottom: 10px;
}
#main-block.categorycts .date { 
	font-size: 1.3rem;
    font-family: "oswald", sans-serif;
    font-weight: 400;
    font-style: normal;
}
#main-block.categorycts .catelabel {
    color: #1a79b3;
    font-size: 1.1rem;
    padding: 3px 10px;
	margin-left: 10px;
    background: #fff;
	border: 1px solid #1a79b3;
    font-weight: 500;
    border-radius: 5px;
}
#main-block.categorycts .newlabel {
    color: #ff0000;
    font-size: 1.2rem;
	margin-left: 10px;
    font-family: "oswald", sans-serif;
    font-weight: 400;
    font-style: normal;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
}


/*****************************************************************************************************
** single
*****************************************************************************************************/

/*********************************************
お知らせ
**********************************************/
#main-block.singlepage { position: relative}
#main-block.singlepage h2 {
    font-size: 3rem;
	text-align: left;
    margin: 25px 0 50px 0;
    font-weight: normal;
}
#main-block.singlepage h2::before { content:none;}
#main-block.singlepage .date { 
	font-size: 1.3rem;
    font-family: "oswald", sans-serif;
    font-weight: 400;
    font-style: normal;
}
#main-block.singlepage .catelabel {
    color: #1a79b3;
    font-size: 1.1rem;
    padding: 3px 10px;
	margin-left: 10px;
    background: #fff;
	border: 1px solid #1a79b3;
    font-weight: 500;
    border-radius: 5px;
}

/*********************************************
実績詳細
**********************************************/
#main-block.singlepage-works { position: relative}
#main-block.singlepage-works .postbox { position: relative}
#main-block.singlepage-works .postbox .term {
    top: -55px;
	bottom: auto
}


