@charset "UTF-8";

/* タブレットデザイン ここから */
@media screen and (min-width:768px) and (max-width:1049px) {
	/* 全体デザイン */
	.only-sp {
		display: none;
	}

	br.for-pc {
		display: none;
	}
	
	body {
		font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Roboto", "Noto Sans JP", "sans-serif";
		font-size: 0.95em;
	}

    /*ヘッダー*/

    #header {
		margin: 0px;
		padding: 0px;
	}

	#header-title {
		margin: 0px;
		padding: 20px 0px 20px 0px;
		background-color: #ffffff;
	}

	.header-logo {
		margin: 0px auto;
		padding: 0px;
	}

	.header-logo img {
		margin: 6px 0px 0px 0px;
		padding: 0px;
		width: 250px;
	}

	.header-text {
		margin: 0px;
		padding: 0px;
	}

	.header-text p {
		margin: 0px;
		padding: 0px;
		font-size: 16px;
		line-height: 0px;
		letter-spacing: 0px;
	}

	.herder-tel {
		margin: 0px;
		padding: 0px;
		font-size: 23px;
		letter-spacing: 0px;
	}

	#main-menu2 {
		display: block;
		font-family: serif;
	    font-weight: 900;
	}

	#main-menu {
		display: none;
		font-family: serif;
	    font-weight: 900;
	}

	/*フッター*/

	#footer {
		margin: 0px;
		padding: 60px 10px;
	}

	.footer-title {
		margin: 0px;
		padding: 0px;
		display: flex;
		justify-content: center;
	}

	.footer-rogo {
		margin: 0px;
		padding: 0px;
	}

	.footer-rogo img {
		margin: 8px 20px 0px 0px;
		padding: 0px;
		width: 250px;
	}

	.footer-text {
		margin: 0px 0px 0px 0px;
		padding: 0px;
	}

	.footer-text p {
		margin: 0px 0px 0px 20px;
		padding: 0px;
		font-size: 12px;
	}

	#footer-menu {
		margin: 0px;
		padding: 0px;
	}
	
	#footer-menu ul {
		margin: 30px 0px 0px 0px;
		padding: 0px;
		display: flex;
		justify-content: center;
		list-style-type: none;
		text-decoration-line: none;
	}
	
	#footer-menu li {
		margin: 0px 10px;
		padding: 0px;
		font-size: 15px;
		font-weight: 400;
		color: #ffffff;
		
	}
	
	#footer-menu a {
		color: #FFFFFF;
	}

}

/* スマートフォンデザイン ここから */
@media screen and (max-width:767px) {
	/* 全体デザイン */
	.only-pc {
		display: none;
	}

	body {
		font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Roboto", "Noto Sans JP", "sans-serif";
		font-size: 0.95em;
	}

	img {
		max-width: 100%;
		height: auto;
	}
	
	/* パンくずリスト */
	#breadcrumbs {
		font-size: 13px;
	}

	/* 固定ページ */
	.page #header-img {
		height: 150px;
	}
	
	.page #header-img h1 {
		font-size: 26px;
	}
			
	/* 記事ページ */
	.single h1 {
		font-size: 1.2em;
	}
		
	/* アーカイブページ */
	.archive h1 {
		font-size: 26px;
	}
	
	.archive .topics-list-item > a {
		display: block;
	}

	.archive .topics-date {
		font-size: 15px;
	}

	.archive .topics-title {
		margin-top: 5px;
	}

	/* ヘッダー */

	#header {
		margin: 0px;
		padding: 0px;
	}

	#header-title {
		display: none;
	}

	.header-logo {
		vertical-align: middle;
		text-align: center;
		align-items: center;
	}

	.header-title-sp {
		display: block;
		position: absolute;
		z-index: 2;
		padding: 9px 0 0 10px;
		background-color: transparent;
	}

    .header-title-sp img {
		justify-content: center;
		margin: 0px;
		padding: 0px;
		width: 190px;
	}

	#main-menu2 {
		display: block;
		font-family: serif;
		font-weight: 900;
	}

	/* フッター */
	#footer {
		margin: 0px;
		padding: 60px 0px;
	}

	.footer-title {
		margin: 0px;
		padding: 0px;
		display: block;
		text-align: center;
	}

	.footer-rogo {
		margin: 0px;
		padding: 0px;
		justify-content: center;
		align-items: center;
		display: flex;
	}

	.footer-rogo img {
		margin: 0px 0px 0px 0px;
		padding: 0px;
		width: 300px;
	}

	.footer-text {
		width: 100%;
		display: flex;
		justify-content: center;
		margin: 20px 0px 0px 0px;
		padding: 0px;
		font-size: 14px;
		font-weight: 400;
		letter-spacing: 1px;
	}

	.footer-text p {
		display: inline-block;
		text-align: left;
	}

	#footer-menu {
		display: none;
	}
}

/*施工事例 カテゴリー別リスト*/
.example-contents .cat-link ul {
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
}

.example-contents .cat-link ul li:not(:last-child)::after {
	content: "｜";
}

/*直近施工事例（ページ）設定*/
section#example-last ul.example-list {
	display: block;
}

section#example-last ul.example-list li {
	width: 100%;
}

section#example-last ul.example-list li:not(:last-child) {
	margin-bottom: 20px;
}

#footer {
	margin-bottom: 50px;
}

/*フッターコンテンツ（SPのみ）*/
#footer-content {
	position: fixed;
	bottom:0;
	background-color:#7986CB;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	padding: 10px 10px;
	border-radius: 15px 15px 0 0;
}

#footer-content .msg {
	font-size: 0.9em;
	color: #E0E0E0;
}

#footer-content ul {
	margin: 10px 0 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
}

#footer-content ul li {
	list-style-type: none;
	width: 48%;
}

#footer-content ul li a {
	display: block;
	background-color: #FFF;
	padding: 5px;
	border-radius: 5px;
	text-align: center;
}

#footer-content ul li.tel a .phone-num {
	font-weight: bold;
	font-size: 1.2em;
}

#footer-content ul li.tel a i {
	margin-right: 0.5em;
}

#footer-content ul li.form-mail a {
	font-weight: bold;
}

/*最新情報*/
section#news ul.news-list li a,
.news-contents ul.news-list li a {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

section#news ul.news-list li .news-title,
.news-contents ul.news-list li .news-title {
	border-top: 1px #666 dashed;
	padding-top: 2px;
	margin-top: 8px;
	width: 100%;
	box-sizing: border-box;
}

section#news ul.news-list li .news-date,
.news-contents ul.news-list li .news-date {
	margin-right: 15px;
}

/*記事ページ*/
.news-contents .article-date a {
	margin-left: 5px;
}

/* Tablet */
@media only screen and (min-width: 767px) and (max-width:1024px) {
	#header-title {
		display: none;
	}
	
	.header-logo {
		vertical-align: middle;
		text-align: center;
		align-items: center;
	}

	.header-title-sp {
		display: block;
		position: absolute;
		z-index: 2;
		padding: 9px 0 0 10px;
		background-color: transparent;
	}
	
	.header-title-sp img {
		justify-content: center;
		margin: 0px;
		padding: 0px;
		width: 190px;
	}
}

/*画面サイズ小*/
@media screen and (max-width:375px) {
	#footer-content ul li.tel a .phone-num {
		font-size: 1.0em;
	}
}