@import url(https://fonts.googleapis.com/css?family=Pacifico);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans);

/* 初期化 */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
h1,h2,h3,h4,h5,h6{font-size:100%;}
img,abbr,acronym,fieldset{border:0;}

body{
	font: 14px/1.9 'Noto Sans JP', Arial, Verdana, 游ゴシック, YuGothic,'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo,sans-serif;
	overflow-x: hidden;
}

a{color: #000;text-decoration: none;}
a:hover, .active{text-decoration: underline;}
a:active, a:focus,input:active, input:focus{outline:0;}

/* ヘッダー  -------------------------------------------------------------------*/

.index {padding-top:20px;}

.index{
	/*background: linear-gradient(45deg, #ffffff, #2877f7);*/
	color: #000;
	text-align: center;
}

/* フッター 共通部分 -----------------------------------------------------*/
#footer{
	width:100%;
	color: #000;
}

#footer .footIndex{
 font-weight:bold;
 border-bottom: double 3px #000;
}


#footer .sitemap{text-align: left;}

.sitemap a{margin: 0 100px;}

.footTable{
	margin-top:20px;
	width:80%;
	font-size: 16px;
	font-weight:normal;
}

.footTable th{
	text-align: right;
	padding:1px 5px 1px;
	font-weight:normal;
}

.footTable td{
	border-style:none;
	text-align: left;
	padding:1px 20px 1px;
}

#copyright{
	text-align: center;
	font-size:16px;
}

/* //フッター------------------------------------------------------------*/

/* 共通
------------------------------------------------------------*/
h1, h2, h3{
	font-family: 'Josefin Sans', 'Noto Sans JP',serif;
}

img{
	width: 100%;
	height: auto;
}

section{clear:both;}

section h1{
	font-weight:normal;
	text-align: center;
	font-family: 'HG丸ｺﾞｼｯｸM-PRO', cursive;
	letter-spacing: 0.2em;
}

section h2{
	font-weight:normal;
	text-align: center;
	letter-spacing: 0.15em;
}

/* SEC01 サムネイル
------------------------------------------------------------*/
.title{
	width: 100%;
	margin-top: 60px;
	margin-bottom: 10px;
	background: linear-gradient(45deg, #ffffff, #2877f7);
}

/*スライダー*/
.slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
    width:94%;
    margin:120px auto 0;
}

.slider img {height:auto;}

.slider .slick-slide {
	transform: scale(0.8);/*左右の画像のサイズを80%に*/
	transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
	opacity: 0.5;/*透過50%*/
}

.slider .slick-slide.slick-center{
	transform: scale(1);/*中央の画像のサイズだけ等倍に*/
	opacity: 1;/*透過なし*/
}


/*矢印の設定*/
/*戻る、次へ矢印の位置*/
.slick-prev,
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #666;/*矢印の色*/
    border-right: 2px solid #666;/*矢印の色*/
    height: 15px;
    width: 15px;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -1.5%;
    transform: rotate(45deg);
}

/*ドットナビゲーションの設定*/
.slick-dots {
    text-align:center;
		margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
		margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:8px;/*ドットボタンのサイズ*/
    height:12px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
    background:#ccc;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
    background:#87b7de;/*ドットボタンの現在地表示の色*/
}


.detail{
	margin:20px auto 80px;
	width:100%:

}
.name {
	margin:auto;
	text-align: left;
	width:90%;
}

.name p{text-decoration:underline;}

.date {
	margin:auto;
	width:80%;
	text-align: left;
}

.date p{
	padding-left:20px;
	font-size:16px;
}


/* sec03施工実績　共通部分*/
.index {border-top:solid 2px #ccc;}

.index p{
	font-size:18px;
	text-decoration:underline;
	padding:10px;
}

#sec03 .container{
	margin:auto;
	width: 80%;
}

#sec03 .txt{
	padding: 0 0 20px;
	font-weight:normal;
	text-align: center;
}

#sec03 .item{border:solid 1px #ccc;}

#sec03 .item img{
	width:100%;
	transition:0.5s all;
}

#sec03 .item img:hover{
	transform:scale(1.05,1.05);
	opacity: 0.6;
	transition:0.5s all;
}

#sec03 .item .txt{text-align: center;}

/*※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※*/
/*PC用(Width800～それ以上はココを適用)*/
@media only screen and (min-width: 1081px){
	.title{font-size: 36px;}
	.slider img {width:40vw;}
	/* フッター(PC用)-----------------*/
			#footer{
				display:flex;
				height:300px;
				background: linear-gradient(90deg,#87b7de 60%,#87b7de 100px,#E6F2FF 100px,#E6F2FF 100%);
			}

			#footer img{
				width:333px;
				margin: 0 30px;
				margin-top:20px;
			}

			#footer .sitemap{
				padding: 20px 30px;
				margin-left: auto;
				width:30%;
				white-space: nowrap;
				font-size: 18px;
			}

			#footer .footer{
				text-align: left;
				width:40%;
			}

			.footTable{
				margin-left: auto;
				width:100%;
				white-space: nowrap;
				font-size: 16px;
			}

			.footTable th{width: 220px;}
			.footTable td{width: 500px;}

			.name p{
				font-size:24px;
			}

			#sec01 .txt{
				text-align:center;
				font-size:18px;
			}

			/* SEC03 施工実績(PC用)　-----------------------------------------------------*/
			#sec03 .container{
				display:flex;
				justify-content: space-between;
				flex-wrap: wrap;
			}

			#sec03 .item{
				width:30%;
				margin: 40px auto;
				overflow:hidden;
				box-shadow: 5px 5px 2px #808080;
			}
}

#sec03 .item .txt{font-size: 18px;}

/*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
/*タブレット用(Width721まで適用される部分)*/
@media only screen and (min-width: 721px) and (max-width: 1080px){
	.title{font-size: 32px;}
	.slider img {width:40vw;}

	/* フッター(タブレット用)-----------------*/
		#footer{
			display:flex;
			height:300px;
			background: linear-gradient(90deg,#87b7de 45%,#87b7de 100px,#E6F2FF 100px,#E6F2FF 100%);
		}

		#footer img{
			width:333px;
			margin: 0 50px;
			margin-top:20px;
		}

		#footer .sitemap{
			padding: 20px 10px;
			margin-right: auto;
			width:42%;
			font-size: 16px;
			white-space: nowrap;
		}

		#footer .footer{
			margin-right: auto;
			text-align: left;
			width:60%;
			margin-left:0px;
		}

		.footTable{
			margin-left: auto;
			width:90%;
			white-space: nowrap;
			font-size: 14px;
		}

		.footTable th{width: 80px;}
		.footTable td{width: 300px;}

		.name p{
			font-size:20px;
		}

		#sec01 .txt{
			text-align:center;
			font-size:16px;
		}

		/* SEC03 施工実績(タブレット用)　-----------------------------------------------------*/
			#sec03 .container{
				display:flex;
				justify-content: space-between;
				flex-wrap: wrap;
			}

			#sec03 .item{
				width:40%;
				margin: 40px auto;
				overflow:hidden;
				box-shadow: 5px 5px 2px #808080;
			}

			#sec03 .item .txt{font-size: 16px;}
}

/*◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎*/
/*スマホ用(Width720まで適用される部分)*/
@media only screen and (max-width: 720px){
	.title{font-size: 28px;}
	.slider img {width:70vw;}
	/*SEC02 問い合わせフォーム(スマホ用)*/


	/* フッター(スマホ用)-----------------*/
			#footer{
				display:block;
				height:560px;
				background: linear-gradient(-180deg,#87b7de 45%,#87b7de 100px,#E6F2FF 100px,#E6F2FF 100%);
			}

			#footer img{
				width:300px;
				margin: 0 20px;
				margin-top:20px;
			}

			#footer .sitemap{
				padding: 20px 50px;
				margin-left: auto;
				width:50%;
				font-size: 16px;
				white-space: nowrap;
			}

			#footer .footer{
				margin-right: auto;
				text-align: left;
				width:95%;
				margin-left:0px;
			}

			.footTable{
				margin-left: auto;
				width:100%;
				white-space: nowrap;
				font-size: 14px;
			}

			.footTable th{width: 80px;}
			.footTable td{width: 300px;}

			.name p{font-size:15px;}

			#sec01 .txt{
				text-align:center;
				font-size:12px;
			}

			/* SEC03 施工実績(スマホ用)　-----------------------------------------------------*/
				#sec03 .container{display:block;}

				#sec03 .item{
					width:80%;
					margin: 20px auto;
					overflow:hidden;
					box-shadow: 5px 5px 2px #808080;
				}

				#sec03 .item .txt{font-size: 14px;}
}


/*≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/
/*ハンバーガーメニュー(PC・tablet)*/
@media only screen and (min-width: 721px){
	a#menu{
		display:none;
	}

	.panel{
		display:block !important;
		white-space: nowrap;
	}

	#mainnav{
		background: rgba(255,255,255,.9);
		border-bottom: 1px solid #d1d1d1;
		height: 64px;
		position:fixed;
		top: 0;
		width:100%;
		z-index:500;
	}

	#mainnav ul{
		text-align: right;
		padding-right: 30px;
	}

	#mainnav li{
		display: inline-block;
		padding: 20px 10px 20px;
		font-size: 16px;
		font-weight: 500;
	}

	#mainnav a{
		color: #000;
	}

	#mainnav img{
		display: inline;
		float: left;
		margin-top: 1.0em;
		margin-left: 0.8em;
		width: 240px;
	}

/*スクロール後の白いナビ*/
	#mainnav.changeNav{
		background: rgba(255,255,255,.9);
		border-bottom: 1px solid #d1d1d1;

	}

	#mainnav.changeNav li{
		padding: 20px 10px;
	}

	#mainnav.changeNav img{
		display: inline;
		float: left;
		margin-top: 1.0em;
		margin-left: 0.8em;
		width: 240px;
	}

	#mainnav.changeNav a{
		color: #000;
	}
}

/*ハンバーガーメニュー(スマホ)*/
@media only screen and (max-width: 720px){
	.declaration h2{
		display:inline-block;
 		text-align:left;
	}

  a#menu{
  	display: inline-block;
  	position: relative;
  	width: 40px;
  	height: 40px;
  	margin: 10px;
	}

	#menuBtn{
  	display: block;
  	position: absolute;
  	top: 50%;
  	left: 50%;
  	width: 18px;
  	height: 2px;
  	margin: -1px 0 0 -7px;
  	background: #000;
  	transition: .2s;
	}

	#menuBtn:before, #menuBtn:after{
  	display: block;
  	content: "";
  	position: absolute;
  	top: 50%;
  	left: 0;
  	width: 18px;
  	height: 2px;
  	background: #000;
  	transition: .3s;
	}

	#menuBtn:before{
  	margin-top: -7px;
	}

	#menuBtn:after{
  	margin-top: 5px;
	}

	a#menu .close{
  	background: transparent;
	}

	a#menu .close:before, a#menu .close:after{
  	margin-top: 0;
	}

	a#menu .close:before{
  	transform: rotate(-45deg);
  	-webkit-transform: rotate(-45deg);
	}

	a#menu .close:after{
  	transform: rotate(-135deg);
  	-webkit-transform: rotate(-135deg);
	}

	.panel{
		width: 100%;
		display: none;
		overflow: hidden;
		position: relative;
		left: 0;
		top: 0;
		z-index: 100;
	}

	#mainnav{
		background: rgba(255,255,255,.9);
		border-bottom: 1px solid #d1d1d1;
		height: 64px;
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		text-align: right;
		z-index:500;
	}

	#mainnav ul{
		border-bottom: 1px solid #ccc;
		background: #fff;
		text-align: left;
	}

	#mainnav img{
		display: inline;
		float: left;
		margin-top: 1.0em;
		margin-left: 0.8em;
		width: 240px;
	}

	#mainnav li a{
		position: relative;
		display:block;
		padding:15px 25px;
		border-bottom: 1px solid #ccc;
		color: #000;
		font-weight: 400;
	}

	#mainnav li a:before{
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 5px;
		width: 6px;
		height: 6px;
		margin: -4px 0 0 0;
		border-top: solid 2px #000;
		border-right: solid 2px #000;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
}
