@charset "UTF-8";

/* ================================================== *
 *
 *    base style
 *
 * ================================================== */
 
/* ------------------------------------------------- *
 *        リセット
 * ------------------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    margin: 0;
    padding: 0;
    border: 0;
}

table,
caption,
th,
td {
    margin: 0;
    padding: 0;
    border: 0;
    border-collapse : collapse ;
    border-spacing: 0px;
    empty-cells: show;
    text-align: left;
    font-weight: normal;
}

a img,
iframe {
    border: none;
}
ol,
ul,
li {
    list-style: none;
}

input,
textarea,
select,
button {
    font-size: 100%;
    font-family: inherit;
}
.mgb-10 {	margin-bottom: 10px;}
.mgb-20 {	margin-bottom: 20px;}
.mgb-30 {	margin-bottom: 30px;}
.mgb-40 {	margin-bottom: 40px;}
.mgb-50 {	margin-bottom: 50px;}
.mgb-60 {	margin-bottom: 60px;}
.mgb-70 {	margin-bottom: 70px;}

.mgb-1rem {	margin-bottom: 1rem;}
.mgb-2rem {	margin-bottom: 2rem;}

.pdb-10 {	padding-bottom: 10px;}
.pdb-20 {	padding-bottom: 20px;}
.pdb-30 {	padding-bottom: 30px;}
.pdb-40 {	padding-bottom: 40px;}
.pdb-50 {	padding-bottom: 50px;}
.pdb-60 {	padding-bottom: 60px;}
.pdb-70 {	padding-bottom: 70px;}

p a {
	color: #0e3aa7;
	border-bottom: 1px dotted #0e3aa7;
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	padding-bottom: 2px;
}
p a:hover, .products p a:active {
	color: #97aad9;
	border-bottom: 1px dotted #97aad9;
}

/* ------------------------------------------------- *
 *        フォント
 * ------------------------------------------------- */
 

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 600;
  src: url('/fonts/NotoSerifCJKjp-SemiBold.woff') format('woff'),
    url('/fonts/NotoSerifCJKjp-SemiBold.woff2') format('woff2');
  font-display: swap;
}

/* ================================================== *
 *
 *    サイト全体
 *
 * ================================================== */

/* 横幅サイズ制限 */
@media (min-width: 992px) {
  .container {
    max-width: 970px;
  }
}
@media (max-width: 991px) {
  .container {
    width: auto;
  }
}
html {
    font-size: 14px;
}
body {
    font-family: 'Noto Sans Japanese', 'Yu Gothic Medium', '游ゴシック Medium', '游ゴシック体', 'ヒラギノ角ゴ Pro W3', 'メイリオ', sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.8;
}
p {
	font-size: 1rem;
}
a {
	color: #000;
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
a:hover, a:active {
	color: #000;
	text-decoration: none;
}
.container-fluid {
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
}
.test {
	background-color: aqua;
}
.test2 {
	background-color: green;
}
section {
	margin-bottom: 80px;
	padding: 0;
}
section.home-ver {
	margin-bottom: 50px;
	padding: 0;
}
@media only screen and (max-width: 767px) {
	section {
		margin-bottom: 60px;
	}
}
section:after {
	clear: both;
	overflow: hidden;
}
.img-responsive {
	width: 100%;
}

@media only screen and (max-width: 767px) {
	.img-responsive-xs {
		width: 100%;
	}
}
.attention {
	color: #ff0000;
}
.nowrap {
	white-space: nowrap
}
/* ------------------------------------------------- *
 *        ヘッダー
 * ------------------------------------------------- */
header {

}

header .ost-logo {
    text-align: center;
    margin: 35px 0 0;
}
header .ost-logo h1.title {
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    letter-spacing: 0.1em;
    font-weight: 600;
    font-size: 1.35rem;
    line-height: 1.3;
    margin: 0;
    padding: 0;
}
header .ost-logo h1.title span {
   font-size: 1.07rem;
}
header .ost-logo p.head-company {
   font-family: 'Lora', 'Times New Roman', serif;
   font-size: 0.8rem;
   font-weight: normal;
   color: #999;
    line-height: 1;
    margin: 14px 0 0 0;
    letter-spacing: 0.05rem;
}
@media only screen and (max-width: 768px) {
	header .ost-logo {
	    margin: 20px 0 0;
	}
}
/* ------------------------------------------------- *
 *        ナビゲーション
 * ------------------------------------------------- */

.nav-container {
	margin: 40px 0 0 0;
	padding: 0;
}
.navPulldown {
	text-align: center;
	margin: 0;
	padding: 0;
}
.navPulldown ul{ 
	list-style: none;
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    font-size: 1rem;
    font-weight: 600;
	line-height: 1;
	margin: 0;
	padding: 0;
	width: 100%;
}
.navPulldown ul li a{
	display:block;
	padding:0 10px;
}
.navPulldown ul li a:hover, .navPulldown ul li a:active {
	opacity: .5;
}
.navPulldown ul li.active > a {
	opacity: .5;
}
/* 
.navPulldown ul li.active > a {
	pointer-events: none;
	cursor: default;
}
*/
.navPulldown>ul::after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

@media only screen and (min-width: 769px) {
	.navPulldown ul li{
		display:inline-block;
		border-right: 1px solid #d0d0d0;
		margin-right: 10px;
		padding-right: 10px;
	}
	.navPulldown ul li:last-child {
		border-right: none;
		margin-right: 0;
		padding-right: 0;
	}
	.nav-hidden-tab {
		display: none !important;
	}
}

@media only screen and (max-width: 768px) {
	.nav-container {
		margin: 0;
	}
	.navPulldownBtn {
		text-align: right;
		height: 40px;
		padding-right: 20px;
		margin: 0;
		overflow: hidden;
	}
	.navPulldownBtn span {
		position: relative;
		display: inline-block;
		width: 50px;
		height: 40px;
		cursor: pointer;
	}
	.navPulldownBtn span::before {
		font-family: FontAwesome;
		content: "\f0c9";
		font-size: 24px;
		color: #000;
		position: absolute;
		left: 0;
		top: 0;
		line-height: 40px;
		width: 100%;
		text-align: center;
	}
	.navPulldown {
		display: none;
	}

	.navPulldown>ul>li {
		display: block;
		color: #fff;
		text-decoration: none;
		background: #1b283f;
		padding: 20px;
		position: relative;
		float: none;
		width: auto;
		border-bottom: 1px solid #fff;
	}
	.navPulldown>ul>li:hover, .navPulldown>ul>li:active {
		background: #2e4061;
	}
	.navPulldown ul li.active {
		background: #2e4061;
	}
	.navPulldown>ul>li>a {
		color: #fff;
		text-align: left;
		border-right: none;
	}
	.navPulldown>ul>li>a::after {
		position: absolute;
		top: 50%;
		margin-top: -10px;
		right: 15px;
		padding-right: 10px;
		font-family: FontAwesome;
		content: "\f054";
		color: #fff;
	}
	.navPulldown .sub {
		position: static;
		display: block!important;
	}
}
/* ------------------------------------------------- *
 *        フッター
 * ------------------------------------------------- */
footer {
	margin: 20px 0;
}
footer p {
	 font-size: 0.8rem;
	 margin-bottom: 5px;
 }
footer ul li {
	 font-size: 0.8rem;
	 margin-bottom: 0.4rem;
 }
footer p.company-name {
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    font-weight: 600;
    font-size: 1rem;
	 margin-bottom: 10px;
 }
footer ul li a {
	 font-weight: bold;
 }
footer ul li a.sub-menu {
	 font-weight: normal;
 }
footer ul li a:hover, footer ul li a:active {
	opacity: .5;
}
footer p.copyright {
	margin-top: 20px;
	font-family: 'Lato', sans-serif;
	font-size: 0.6rem;
	font-weight: normal;
	color: #999;	
	letter-spacing: 0.04rem;
}
@media (max-width:767px) {
	footer p, footer ul li {
		 font-size: 1rem;
	 }
	footer p.company-name {
	    font-size: 1.1rem;
	 }
	 .footer-company {
		 text-align: center;
		 margin-bottom: 30px;
	 }
	footer p.copyright {
		 text-align: center;
	}
	.footer-navi-sm {
		margin-top: 20px;
		padding-top: 20px;
		border-top: 1px dotted #ccc;
	}
}
/* ------------------------------------------------- *
 *        見出し h2
 * ------------------------------------------------- */
 
main h1 {
	position: relative;
	display: inline-block;
	margin-bottom: 70px;
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    font-size: 1.71rem;
    font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.05rem;
	padding: 20px 70px;
}
main h1:before,h1:after{ 
	content:'';
	width: 30px;
	height: 30px;
	position: absolute;
	display: inline-block;
}

main h1:before{
  border-left: solid 1px #000;
  border-top: solid 1px #000;
  top:0;
  left: 0;
}

main h1:after{
  border-right: solid 1px #000;
  border-bottom: solid 1px #000;
  bottom:0;
  right: 0;
}
@media (max-width:767px) {
	main h1 {
	    font-size: 1.53rem;
		margin:10px 0 40px 0;
		padding: 0;
	}
	main h1:before,h1:after{ 
		display: none;
	}
}
h2 {
	text-align: center;
	position: relative;
	display: inline-block;
	margin-bottom: 70px;
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    font-size: 1.4rem;
    font-weight: 600;
	line-height: 1.8;
	letter-spacing: 0.05rem;
}
h2:before {
	content: '';
	position: absolute;
	bottom: -30px;
	display: inline-block;
	width: 60px;
	height: 1px;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: black;
}

@media (max-width:767px) {
	h2 {
	    font-size: 1.28rem;
	}
}

/* ------------------------------------------------- *
 *        見出し h3
 * ------------------------------------------------- */
h3 {
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    font-size: 1.3rem;
    font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.05rem;
	margin: 0 0 15px 0;
	padding: 0;
}
@media (max-width:767px) {
	h3 {
	    font-size: 1.08rem;
	}
}
/* ------------------------------------------------- *
 *        見出し h4
 * ------------------------------------------------- */
h4 {
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    font-size: 1.15rem;
    font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.05rem;
	margin: 0 0 15px 0;
	padding: 0;
}
/* ------------------------------------------------- *
 *        見出し h5
 * ------------------------------------------------- */
h5 {
    font-size: 1.05rem;
    font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.05rem;
	margin: 0 0 7px 0;
	padding: 0;
}

/* ================================================== *
 *
 *    HOME
 *
 * ================================================== */

/* ------------------------------------------------- *
 *        タイトル画像
 * ------------------------------------------------- */
 
 /* --- 全体のBOX定義 ---------------------------------------- */

.top-visual-container {
	margin: 0;
	padding: 0;
}
.top-visual-container .home-top-visual {
	position   : relative;
	width: 100%;
	height     : 573px;
	margin: 20px 0 35px 0;
	padding: 0;
	overflow   : hidden;
}
.top-visual-container .home-top-visual .slider {
	position: absolute;
	top        : 0;
	left       : 0;
	bottom     : 0;
	right      : 0;
	width: 100%;
	height     : 573px;
	margin: 0;
	padding: 0;
    background-color: #FFF;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
@media (max-width:991px) and (min-width: 768px) {
	 .top-visual-container .home-top-visual {
		height: 500px;
	}
	 .top-visual-container .home-top-visual .slider  {
		height: 500px;
	}
}
@media (max-width:767px) {
	 .top-visual-container .home-top-visual {
		margin: 0 0 35px 0;
		height: 250px;
	}
	 .top-visual-container .home-top-visual .slider  {
		height: 250px;
	}
}

.mainvisual-container {
	background-color: #1b283f;
	margin: 0 0 50px;
	padding: 0;
	width: 100%;
}

.mainvisual-container-img {
	position: relative;
	background-image: url(../images/home-mainvisual-bg.jpg);
	background-position: center top;
	background-repeat: no-repeat;
	height: 620px;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-color: #fff;
}
.mainvisual-container-img:after {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    content: '';
    width: 100%;
    height: 20%;
    background: -moz-linear-gradient(rgba(27, 40, 63, 0) 0, rgba(27, 40, 63, .7) 50%, rgba(27, 40, 63, 1) 75%);
    background: -webkit-linear-gradient(rgba(27, 40, 63, 0) 0, rgba(27, 40, 63, .7) 50%, rgba(27, 40, 63, 1) 75%);
    background: linear-gradient(rgba(27, 40, 63, 0) 0, rgba(27, 40, 63, .7) 50%, rgba(27, 40, 63, 1) 75%);
}
@media (max-width:1400px) and (min-width: 1201px) {
	.mainvisual-container-img {
		height: 520px;
	}
}
@media (max-width:1200px) and (min-width: 992px) {
	.mainvisual-container-img {
		height: 450px;
	}
}
@media (max-width:991px) and (min-width: 768px) {
	.mainvisual-container-img {
		height: 400px;
	}
}
@media (max-width:767px) {
	.mainvisual-container-img {
		height: 300px;
	}
}
.mainvisual-container p, .mainvisual-container h1, .mainvisual-container h2 {
	color: #fff;
}
.mainvisual-container h2:before {
	background-color: white;
}
/* ------------------------------------------------- *
 *        HOME　メッセージ
 * ------------------------------------------------- */

 .home-message {
	 margin: 10px 0 0;
	 padding: 0;
	 text-align: center;
 }
.home-message h1 {
	 padding: 0;
	 margin: 0 0 30px;
    font-size: 1.63rem;
 }
.home-message-2 {
	 text-align: center;
	 padding-bottom: 60px;
 }
 @media (max-width:767px) {
	.home-message h1 {
	    font-size: 1.53rem;
	 }
	.home-message-2 {
		 text-align: left;
	 }
	 .home-message {
		 margin-top: 0;
	 }
}
.home-visual-text {
	color: #fff;
}

/* ------------------------------------------------- *
 *        HOME　取り扱い商品
 * ------------------------------------------------- */
.home-products-lineup div {

}
.home-products-lineup p {
	font-size: 1.07rem;
	font-weight: 700;
	margin: 15px 0 30px;
	text-align: center;
}
.home-products-lineup a div {
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.home-products-lineup a:hover div {
	opacity: .5;
}

/* ------------------------------------------------- *
 *        HOME　TYLOバナー
 * ------------------------------------------------- */
.home-banner-tylo {
	background-color: #ececec;
	margin: 0 0 30px;
	padding: 20px;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-align-items: center; /* Safari */
	align-items: center;
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.home-banner-tylo:hover, .home-banner-tylo:active {
	opacity: .5;
}
img.home-tylo-photo {
	width: 100%;
	max-width: 302px;
}
img.home-tylo-logo {
	margin: 0 0 10px 0;
	width: 130px;
	height: auto;
}
@media (max-width:991px) and (min-width: 768px) {
	img.home-tylo-logo {
		width: 110px;
	}
}
@media (max-width:767px) {
	.home-banner-tylo {
		display: block;
	}
	img.home-tylo-photo {
		margin-bottom: 20px;
	}
	img.home-tylo-logo {
		width: 100px;
	}
}
/* ------------------------------------------------- *
 *        HOME　北欧建材へのこだわり
 * ------------------------------------------------- */
.home-banner-kodawari, .home-banner-zeh  {
	margin: 0;
	padding: 0;
	background-color: #1b283f;
	color: #fff;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-align-items: center; /* Safari */
	align-items: center;
	min-height: 300px;
}
.home-banner-kodawari-text, .home-banner-zeh-text {
	padding: 40px 60px;
}
.home-banner-kodawari-img {
	margin: 0;
	padding: 0;
	background-image: url(/images/home-banner-kodawari.jpg);
	background-position: center center;
	background-size: cover;
	min-height: 300px;
}
.home-banner-zeh-img {
	margin: 0;
	padding: 0;
	background-image: url(/images/home-banner-zeh.jpg);
	background-position: center center;
	background-size: cover;
	min-height: 300px;
}
.button-white {
	margin-top: 20px;
	padding: 12px 30px;
	border: 1px solid #fff;
	background-color: rgba(0,0,0,0);
	color: #fff;
	font-size: 0.8rem;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	font-family: 'Lato', sans-serif;
}
.button-white:hover, .button-white:active {
	color: #1b283f;
	background-color: rgba(255,255,255,1);
}
@media (max-width:767px) {
	.home-banner-kodawari, .home-banner-zeh {
		display: block;
	}
	.home-banner-kodawari-text, .home-banner-zeh-text {
		padding: 40px 30px;
	}
	.home-banner-kodawari-img, .home-banner-zeh-img {
		height: 200px;
		min-height: 200px;
	}
}
/* ------------------------------------------------- *
 *        HOME　お問い合わせバナー
 * ------------------------------------------------- */
.home-contact {
	padding: 35px;
	background-color: #0079a5;
	color: #fff;
	margin: 0;
}
.home-contact p {
	margin: 0;
	padding: 0;
}
.home-contact .button-contact {
	margin-top: 20px;
	padding: 12px 60px;
	border: 1px solid #fff;
	background-color: rgba(0,0,0,0);
	color: #fff;
	font-weight: 700;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.home-contact .button-contact:hover, .home-contact .button-contact:active {
	color: #0079a5;
	background-color: rgba(255,255,255,1);
}
@media (max-width:767px) {
	.home-contact {
		padding: 35px 15px;
	}
	.home-contact .button-contact {
		padding: 12px 40px;
	}
}

/* ================================================== *
 *
 *    北欧建材へのこだわり
 *
 * ================================================== */
/* ------------------------------------------------- *
 *        北欧建材へのこだわり　トップビジュアル
 * ------------------------------------------------- */

 .top-visual-container .other-top-visual {
	width: 100%;
	height     : 226px;
	margin: 20px 0 15px 0;
	padding: 0;
	overflow   : hidden;
}
 .top-visual-container .other-top-visual .concept-visual {
	width: 100%;
	height     : 226px;
	background-image: url(/images/concept-top-visual.jpg);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
@media (max-width:991px) and (min-width: 768px) {
	.top-visual-container .other-top-visual {
		height     : 200px;
	}
	 .top-visual-container .other-top-visual .concept-visual {
		height     : 200px;
	}
}
@media (max-width:767px) {
	.top-visual-container .other-top-visual {
		height     : 120px;
		margin: 20px 0 10px 0;
	}
	 .top-visual-container .other-top-visual .concept-visual {
		height     : 120px;
	}

}
main#concept p {
	margin-bottom: 2rem;
}
main#concept img {
	margin-bottom: 2rem;
}
main#concept .home-contact p {
	margin-bottom: 0;
}
/* ------------------------------------------------- *
 *        パンくずリスト
 * ------------------------------------------------- */
 .breadcrumb-scroll {
padding: 15px;
overflow-x: scroll;
background-color: #FFF;
border-bottom: solid 1px #CCC;
white-space: nowrap;
}
.breadcrumb-scroll div {
display: inline-block;
padding: 5px 1em;
}
/* スクロールバーの装飾 */
.breadcrumb-scroll::-webkit-scrollbar {
	height: 6px; /* スクロールバーの高さ */
}
.breadcrumb-scroll::-webkit-scrollbar-track {
	background: #dedede; /* スクロールバーの背景色 */
	border-radius: 3px;
}
.breadcrumb-scroll::-webkit-scrollbar-thumb {
	margin: 4px 2px;
	background: #aaa; /* スクロールバーの色 */
	border-radius: 3px;
}
 .breadcrumb-box {
	 margin: 0 0 30px;
 }
.breadcrumb {
  margin: 0;
  padding: 0;
}

.breadcrumb li{
	display:inline;/*横に並ぶように*/
  list-style: none;
  font-size: 0.78rem;
  line-height: 1;
}

.breadcrumb li:after{ /* アイコンフォントを表示*/
  font-family: FontAwesome;
  content: '\f105';
  font-weight: normal;
  padding: 0 10px;
  font-size: 0.9rem;
  color: #333;
  line-height: 1;
  vertical-align: baseline;
}
.breadcrumb li:last-child:after{
  content: '';
}
.breadcrumb li:last-child a {
	pointer-events: none;
	cursor: default;
}
.breadcrumb li a {
    text-decoration: none;
}
.breadcrumb li a:hover {
    text-decoration: underline;
}
@media (max-width:768px) {
	 .breadcrumb-box {
		 margin: 0 0 -5px;
	 }
}
.title-area {
	margin: 35px 0 10px 0;
	padding: 0;
}

/* ------------------------------------------------- *
 *        北欧建材へのこだわり　文章部分の画像
 * ------------------------------------------------- */

@media (max-width:768px) {
	 .conccept-img-box {
		 margin-bottom: 30px;
	 }
}

/* ------------------------------------------------- *
 *        北欧建材へのこだわり　工務店・個人向けバナー
 * ------------------------------------------------- */
.concept-banner-builder, .concept-banner-customer  {
	margin: 0;
	padding: 0;
	background-color: #ffe400;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.concept-banner-builder-text, .concept-banner-customer-text {
	padding: 40px 60px;
}
.concept-banner-builder-text h4, .concept-banner-customer-text h4 {
    font-family: 'Noto Sans Japanese', 'Yu Gothic Medium', '游ゴシック Medium', '游ゴシック体', 'ヒラギノ角ゴ Pro W3', 'メイリオ', sans-serif;
    font-weight: normal;
	display: inline-block;
	background-color: #1b2840;
	color: #fff;
	font-size: 0.92rem;
	padding: 5px 25px;
	margin-bottom: 25px;
}
.concept-banner-builder-text h3, .concept-banner-customer-text h3 {
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    font-size: 1.42rem;
    font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.05rem;
	margin-bottom: 25px;
}
.concept-banner-builder-img {
	margin: 0;
	padding: 0;
	line-height:0;
	background-image: url(/images/concept-main-builder.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	min-height: 420px;
}
.concept-banner-customer-img {
	margin: 0;
	padding: 0;
	background-image: url(/images/concept-main-customer.jpg);
	background-position: center bottom;
	background-size: cover;
	min-height: 420px;
}
@media (max-width:991px) and (min-width: 768px) {
	.concept-banner-builder-img {
		min-height: 500px;
	}
	.concept-banner-customer-img {
		min-height: 500px;
	}
}
@media (max-width:767px) {
	.concept-banner-builder, .concept-banner-customer {
		display: block;
	}
	.concept-banner-builder-text, .concept-banner-customer-text {
		padding: 40px 30px;
	}
	.concept-banner-builder-img, .concept-banner-customer-img {
		background-position: center center;
		height: 250px;
		min-height: 250px;
	}
	.concept-banner-builder-text h4, .concept-banner-customer-text h4 {
		font-size: 0.82rem;
	}
	.concept-banner-builder-text h3, .concept-banner-customer-text h3 {
	    font-size: 1.28rem;
	}
}
/* ------------------------------------------------- *
 *        北欧建材へのこだわり　ZEHバナー
 * ------------------------------------------------- */
.concept-banner-zeh  {
	margin: 0 0 30px 0;
	padding: 0;
	background-color: #1b283f;
	color: #fff;
	display: -webkit-flex; /* Safari */
	display: flex;
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.concept-banner-zeh:hover, .concept-banner-zeh:active {
	opacity: .5;
}
.concept-banner-zeh-text {
	padding: 40px 60px;
}
.concept-banner-zeh-img {
	margin: 0;
	padding: 0;
	background-image: url(/images/concept-banner-zeh.jpg);
	background-position: center center;
	background-size: cover;
	min-height: 150px;
}
@media (max-width:767px) {
	.concept-banner-zeh {
		display: block;
	}
	.concept-banner-zeh-text {
		padding: 40px 30px;
	}
	.concept-banner-zeh-img {
		min-height: 120px;
	}
}

/* ================================================== *
 *
 *    会社案内
 *
 * ================================================== */
/* ------------------------------------------------- *
 *        会社案内　トップビジュアル
 * ------------------------------------------------- */
 .top-visual-container .other-top-visual .company-visual {
	width: 100%;
	height     : 226px;
	background-image: url(/images/company-main-visual.jpg);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
@media (max-width:991px) and (min-width: 768px) {
	 .top-visual-container .other-top-visual .company-visual {
		height     : 200px;
	}
}
@media (max-width:767px) {
	 .top-visual-container .other-top-visual .company-visual {
		height     : 120px;
	}

}
 .company p {
	 margin-bottom: 2rem;
 }
  .company p:last-child {
	 margin-bottom: 0;
 }
 .company-message-box {
	 margin-bottom: 60px;
 }
 /* ------------------------------------------------- *
 *        会社案内　会社概要の表
 * ------------------------------------------------- */
 dl.company-overview dd div{
   display:inline-block;
}

dl.company-overview {
   border-bottom:1px solid #c9c9c9;
   clear: both;
   overflow: hidden;
}
dl.company-overview:after {
   clear: both;
   overflow: hidden;
}
dl.company-overview dt {
   float:left;
   width:15rem;
   border-top:1px solid #c9c9c9;
   padding:16px 0 16px 18px;
}

dl.company-overview dd {
   margin-left:15rem;
   padding:16px 10px 16px 0;
   border-top:1px solid #c9c9c9;
}
@media (max-width:767px) {
	dl.company-overview dt {
	   float:none;
	   width:100%;
	   border-top:1px solid #c9c9c9;
	   padding:15px 15px 7px 15px;
	}
	
	dl.company-overview dd {
	   margin-left:0;
	   padding:0 15px 15px 15px;
	   border-top: none;
	}
}
 /* ------------------------------------------------- *
 *        会社案内　関連会社の表
 * ------------------------------------------------- */
 dl.associated-company dd div{
   display:inline-block;
}
dl.associated-company:after {
   clear: both;
   overflow: hidden;
}
dl.associated-company dt {
   font-size: 1.05rem;
   float:none;
   width:100%;
   border-top:1px solid #c9c9c9;
   padding:15px 15px 7px 15px;
}

dl.associated-company dd {
   margin-left:0;
   padding:5px 15px 15px 15px;
   border-top: none;
}
dl.associated-company-border-2 {
   border-bottom:1px solid #c9c9c9;
}
@media (min-width:768px) {
	dl.associated-company-border-1 {
	   border-bottom:1px solid #c9c9c9;
	}
}
dl.associated-company a {
	color: #0e3aa7;
}
 /* ------------------------------------------------- *
 *        会社案内　交通アクセス
 * ------------------------------------------------- */
#company-map {
	width: 100%;
	height: 465px;
}
.company-map-link {
	margin: 15px 0 30px;
}
.company-map-link p a:before{ /* アイコンフォントを表示*/
  font-family: FontAwesome;
  content: '\f105';
  font-weight: normal;
  padding: 0 7px 0 0;
  font-size: 1rem;
  color: #333;
  line-height: 1;
  vertical-align: baseline;
}
.company-map-link p a:hover, .company-map-link p a:active  {
	opacity: .5;
}
@media (max-width:767px) {
	.company-access-box {
	   margin-bottom: 40px;
	}
	#company-map {
		height: 350px;
	}
}

/* ================================================== *
 *
 *    取り扱い商品
 *
 * ================================================== */

/* ------------------------------------------------- *
 *        取り扱い商品　トップビジュアル
 * ------------------------------------------------- */
 .top-visual-container .other-top-visual .products-visual {
	width: 100%;
	height     : 226px;
	background-image: url(/images/products-main-visual.jpg);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
@media (max-width:991px) and (min-width: 768px) {
	 .top-visual-container .other-top-visual .products-visual {
		height     : 200px;
	}
}
@media (max-width:767px) {
	 .top-visual-container .other-top-visual .products-visual {
		height     : 120px;
	}
}
.products-lineup {
	margin-bottom: 30px;
}
.product-lineup-text {
	margin: 0;
	padding: 30px 40px 40px;
	background-color: #1b283f;
	min-height: 315px;
	color: #fff;
}

@media (max-width:991px) and (min-width: 768px) {
	.product-lineup-text {
		min-height: 290px;
	}
}
@media (max-width:767px) {
	.product-lineup-text {
		min-height: none;
	}
}
img.products-color {
	width: 30px;
	margin-right: 7px;
}
.products-lineup a img {
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.products-lineup a:hover img {
	opacity: .5;
}
/* ================================================== *
 *
 *    木製サッシ（木製三層ガラス窓）
 *
 * ================================================== */
.product-window-lineup-text {
	margin: 0;
	padding: 30px 40px 40px;
	background-color: #1b283f;
	min-height: 260px;
	color: #fff;
}
.button-products-back {
	margin-top: 20px;
	padding: 12px 40px;
	border: 1px solid #b5b5b5;
	background-color: rgba(255,255,255,0);
	color: #000;
	font-size: 1rem;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	font-family: 'Lato', sans-serif;
}
.button-products-back:hover, .button-products-back:active {
	color: #fff;
	background-color: rgba(27,40,63,1);
	border: 1px solid #1b283f;
}
.house-maker {
	background-color: #ffe600;
	padding: 30px 20px;
	margin: 0 15px;
	overflow: hidden;
}
.house-maker h5 {
    font-family: 'Noto Sans Japanese', 'Yu Gothic Medium', '游ゴシック Medium', '游ゴシック体', 'ヒラギノ角ゴ Pro W3', 'メイリオ', sans-serif;
    font-weight: normal;
	display: inline-block;
	background-color: #1b2840;
	color: #fff;
	font-size: 0.92rem;
	padding: 5px 25px;
	margin-bottom: 20px;
}
@media (max-width:767px) {
	.house-maker {
		padding: 25px 10px;
	}
	.house-maker h5 {
		padding: 10px 15px;
	}
}
/* ================================================== *
 *
 *    横軸回転窓
 *
 * ================================================== */
h2.products-title {
	 display: block;
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    font-size: 1.4rem;
    font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.05rem;
	margin: 0 0 25px 0;
	padding: 0 0 10px 0;
	border-bottom: 1px solid #000;
	text-align: left;
}
h2.products-title:before {
	display: none;
}
@media (max-width:767px) {
	 h2.products-title {
	    font-size: 1.28rem;
	}
}
table.products-spec {
	width: 100%;
	border: 1px solid #c9c9c9;
	font-size: 0.9rem;
}
table.products-spec a {
	color: #0e3aa7;
	border-bottom: 1px dotted #0e3aa7;
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	padding-bottom: 2px;
}
table.products-spec a:hover, table.products-spec a:active {
	opacity: 0.5;
	text-decoration: none;
}
table.products-spec th {
	width: 25%;
	padding: 6px 14px;
	background-color: #f1f1f1;
	font-weight: bold;
	border: 1px solid #c9c9c9;
	white-space: nowrap;
}
table.products-spec td {
	width: auto;
	padding: 6px 14px;
	border: 1px solid #c9c9c9;
}
table.products-spec-list {
	width: 100%;
	border: 1px solid #c9c9c9;
	font-size: 0.9rem;
	line-height: 1.6;
}
table.products-spec-list th {
	padding: 6px 14px;
	background-color: #f1f1f1;
	font-weight: bold;
	border: 1px solid #c9c9c9;
	white-space: nowrap;
	text-align: center;
}
table.products-spec-list td {
	width: 16.666%;
	padding: 6px 14px;
	border: 1px solid #c9c9c9;
	text-align: center;
	white-space: nowrap;
}
table.products-spec-list td:nth-child(1) {
	text-align: left;
	white-space: nowrap;
}
table.products-spec-list .left-line {
	text-align: left;
	padding-left: 2.5rem;
}
@media (max-width:991px) and (min-width: 768px) {
	table.products-spec-list .left-line {
		padding-left: 1.5rem;
	}
}
@media (max-width:767px) {
	table.products-spec-list .left-line {
		padding-left: 1.5rem;
	}
}
.table-scroll {
	width: 100%;
	overflow-y: hidden;
	overflow-x: auto;
	-ms-overflow-style: -ms-autohiding-scrollbar;

}
.table-scroll::-webkit-scrollbar {
	height: 6px; /* スクロールバーの高さ */
}
.table-scroll::-webkit-scrollbar-thumb {
	margin: 4px 2px;
	background: #aaa; /* スクロールバーの色 */
	border-radius: 3px;
}
.table-scroll::-webkit-scrollbar-track {
	background: #dedede; /* スクロールバーの背景色 */
	border-radius: 3px;
}
.f-note {
	font-size: 0.9rem;
	margin-top: 7px;
	padding-left:1.5em;
	text-indent:-1.5em;
	line-height: 1.5;
}
.f-note:before {
  content: '※ ';
 }
a.related-link:before{ /* アイコンフォントを表示*/
  font-family: FontAwesome;
  content: '\f105';
  font-weight: normal;
  padding: 0 7px 0 0;
  font-size: 1rem;
  color: #333;
  line-height: 1;
  vertical-align: baseline;
}
a.related-link:hover, a.related-link:active  {
	opacity: .5;
}

/* ================================================== *
 *
 *    無垢フローリング材
 *
 * ================================================== */
.products-detail {
	margin: 30px 0 0;

}
.img-responsive-floorboard {
	width: 100%;
	max-width: 544px;
}

/* ================================================== *
 *
 *    輸入住宅
 *
 * ================================================== */

.house-text p {
	margin-bottom: 2rem;
}

/* ================================================== *
 *
 *    よくあるご質問
 *
 * ================================================== */
 /* ------------------------------------------------- *
 *        よくあるご質問　トップビジュアル
 * ------------------------------------------------- */
 h2.faq-title {
	 display: block;
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    font-size: 1.25rem;
    font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.05rem;
	margin: 0 0 25px 0;
	padding: 0 0 10px 0;
	border-bottom: 1px solid #000;
	text-align: left;
}
h2.faq-title :before {
	display: none;
}
@media (max-width:767px) {
	  h2.faq-title {
	    font-size: 1.13rem;
	}
}

 .top-visual-container .other-top-visual .faq-visual {
	width: 100%;
	height     : 226px;
	background-image: url(/images/faq-main-visual.jpg);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
@media (max-width:991px) and (min-width: 768px) {
	 .top-visual-container .other-top-visual .faq-visual {
		height     : 200px;
	}
}
@media (max-width:767px) {
	 .top-visual-container .other-top-visual .faq-visual {
		height     : 120px;
	}
}
.syncer-acdn-faq ul {
	margin: 0;
	padding: 0;
}
.syncer-acdn-faq ul li {
	margin-bottom: 12px;
}
.syncer-acdn-faq .syncer-acdn {
	padding: 4px 20px 14px 20px;
	background-color: #1b283f;
	color: #fff;
	display: -webkit-flex; /* Safari */
	display: flex;
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.syncer-acdn-faq .syncer-acdn span {
    font-family: 'Noto Serif Japanese' , 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
    letter-spacing: 0.1em;
    font-size: 2.57rem;
    line-height: 1;
    margin-right: 10px;
}
.syncer-acdn-faq .syncer-acdn p {
	margin: 10px 0 0 0;
    line-height: 1.6;	

}
.syncer-acdn-faq .syncer-acdn:hover {
	cursor: pointer ;
	opacity: 0.7;
}

.syncer-acdn-faq .syncer-acdn-a {
	display: none ;
	padding: 15px 20px 20px 63px;
	background-color: #ececec;
}
ul.faq-index {
	display: -webkit-flex; /* Safari */
	display: flex;
	padding: 20px 20px;
	margin-bottom: 65px;
	background-color: #ececec;
}
ul.faq-index li {
	padding-right: 30px;
	margin-right:  30px;
	border-right: 1px solid #bbbbbb;
	line-height: 1;
}
ul.faq-index li:last-child {
	padding-right: none;
	margin-right: none;
	border-right: none;
}
ul.faq-index li a:before{ /* アイコンフォントを表示*/
  font-family: FontAwesome;
  content: '\f107';
  font-weight: normal;
  padding: 0 7px 0 0;
  font-size: 1rem;
  color: #333;
  line-height: 1;
  vertical-align: baseline;
}
ul.faq-index li a {
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
ul.faq-index li a:hover, ul.faq-index li a:active {
	opacity: 0.5;
}
@media (min-width:768px) {
	ul.faq-index {
		-webkit-justify-content:center;
		justify-content: center;	
	}
}
@media (max-width:767px) {
	.syncer-acdn-faq .syncer-acdn span {
	    font-size: 2rem;
	}
	.syncer-acdn-faq .syncer-acdn p {
		margin: 7px 0 0 10px;
	}
	.syncer-acdn-faq .syncer-acdn-a {
		padding: 20px 20px 25px 52px;
	}
	ul.faq-index {
	    -webkit-flex-wrap: wrap;
	    flex-wrap: wrap;
		padding: 25px 20px;
	}
	ul.faq-index li {
		padding-right: none;
		margin-right:  none;
		border-right: none;
		margin-bottom: 18px;
		font-size: 1.15rem;
	}
	ul.faq-index li:last-child {
		margin-bottom: 0;
	}
}

/* ================================================== *
 *
 *    お問い合わせ
 *
 * ================================================== */
 /* ------------------------------------------------- *
 *        お問い合わせ　トップビジュアル
 * ------------------------------------------------- */
 .top-visual-container .other-top-visual .contact-visual {
	width: 100%;
	height     : 226px;
	background-image: url(/images/contact-main-visual.jpg);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
@media (max-width:991px) and (min-width: 768px) {
	 .top-visual-container .other-top-visual .contact-visual {
		height     : 200px;
	}
}
@media (max-width:767px) {
	 .top-visual-container .other-top-visual .contact-visual {
		height     : 120px;
	}
}
.contact-caution {
	 margin: 30px 0 10px;
	 padding: 25px;
	 border: 1px solid #cccccc;
	 background-color: #fafafa;
 }

.contact-announce {
	 border-top: 1px dotted #afafaf;
	 padding: 30px 0 0;
	 margin: 0 0 20px;
}
.contact-announce h5 {
	 background-color: #373737;
	 color: #fff;
	 margin: 0 0 15px;
	 padding: 5px 22px;
	 display: inline-block;
	 font-weight: normal;
	 font-size: 1rem;
}

.telephone {
	font-size: 2.1rem;
	font-weight: bold;
	padding: 0 20px;
}
.contact-thanks {
	text-align: center;
	
}
.contact-thanks h5 {
	font-size: 1.2rem;
	margin: 0 0 30px;
}
.contact-thanks-announce {
	text-align: center;
	 border-top: 1px dotted #afafaf;
	 border-bottom: 1px dotted #afafaf;
	 padding: 20px 0 20px;
	 margin: 20px 0 40px;	
}

/* ================================================== *
 *
 *    404
 *
 * ================================================== */
 /* ------------------------------------------------- *
 *        404　トップビジュアル
 * ------------------------------------------------- */
 .top-visual-container .other-top-visual .not-visual {
	width: 100%;
	height     : 226px;
	background-image: url(/images/not-main-visual.jpg);
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
@media (max-width:991px) and (min-width: 768px) {
	 .top-visual-container .other-top-visual .not-visual {
		height     : 200px;
	}
}
@media (max-width:767px) {
	 .top-visual-container .other-top-visual .not-visual {
		height     : 120px;
	}
}
.notfound {
	margin: 20px 0 50px 0
}
.notfound p {
	text-align: center;
}
.notfound p a {
}
/* ================================================== *
 *
 *    トップへ戻る
 *
 * ================================================== */
.scroll-back-to-top-wrapper {
    position: fixed;
	opacity: 0;
	visibility: hidden;
	overflow: hidden;
	text-align: center;
	z-index: 99999999;
    background-color: #0079a5;
	color: #fff;
	width: 50px;
	height: 50px;
	line-height: 43px;
	-webkit-border-radius: 25px;/* width,heightの半分 */
	-moz-border-radius: 25px;
	border-radius: 25px;
	right: 30px;
	bottom: 30px;
	padding-top: 2px;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;

	font-size: 1rem;
}
.scroll-back-to-top-wrapper:hover {
	background-color: #606060;
}
.scroll-back-to-top-wrapper.show {
    visibility:visible;
    cursor:pointer;
	opacity: 1.0;
}
.scroll-back-to-top-wrapper i.fa {
	line-height: inherit;
}
.scroll-back-to-top-wrapper .fa-lg {
	vertical-align: 0;
}

@media (max-width:767px) {
	.scroll-back-to-top-wrapper {

		right: 10px;
		bottom: 10px;
	}
}