@charset "utf-8";
/* CSS Document */
:root {
	--main-brown: #6F604D;
	--logo-color: #16254c;
	--color-orange: #F8A653;
	--color-orange-rgb: 248, 166, 83;
	--color-green: #4CC764;
	--color-gray: #707070;
	--color-pale-gray: #eee;
	--color-dark-brown: #524435;
	--ff-serif: 'Noto Serif JP', serif;
	--ff-gothic: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    --ff-yu-gothic: YuGothic, "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
	--fs-medium: 1.5rem;
}
.bg-brown {background-color: var(--color-dark-brown)}
.bg-brown * {color: #fff}
.bg-gray {background-color: #eee}
.ff-serif {font-family: var(--ff-serif)}
.ff-yu-gothic {font-family: var(--ff-yu-gothic)}
.fs-medium {font-size: var(--fs-medium)}
html {
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
body {
	color: var(--main-brown);
    line-height: 1.75;
    
	/* PC用の横幅を指定 */
	min-width: 768px;
}
main {letter-spacing: .04em;}
h1, h2, h3, h4, h5, h6 {color: inherit;letter-spacing: .0125em}
@media screen and (min-width: 640px) {
	a[href*="tel"] {
		pointer-events: none
	}
}
@media screen and (max-width: 640px) {
	html {
		font-size:14px
	}
	* + h1, * + h2, * + h3, * + h4, * + h5, * + h6 {
	  margin-top: 20px;
	}
}
/* スマートフォンのブレイクポイント */
@media screen and (max-width: 767px){
	body {
		min-width: initial;/* 初期化 */
	}
}
* {box-sizing: border-box}
[class*="uk-container"] {
	margin-right: auto;
	margin-left: auto
}
a, a:hover {color: var(--main-brown)}
a:hover {text-decoration: none;opacity: .9}

p:last-child {margin-bottom: 0}
.uk-border-rounded {
	border-radius: 10px
}
/*-- header --*/
header {/*
  margin-bottom: -27px;*/
  position: relative;
  z-index: 2;
	max-height: 80px
}
header.uk-sticky.uk-sticky-fixed.uk-active {
	box-shadow: 0 0 10px rgba(0,0,0,.2);
}
header h1#logo {
	margin: 10px 0
}
header h1 img {
	max-width: 50px
}
header .uk-container {
  display: flex;
  justify-content: space-between;
}
header .headerMenu {
	align-items: center;
}
header .headerMenu a {
	color: var(--main-brown);
	font-weight: 700
}
@media screen and (max-width: 768px) {
	header .headerMenu {
		display: none
	}
}
/*-- スライドショー --*/
.slideshow {
	overflow: hidden;
	margin-top: -30px
}
.slideshow::before {
	content: '';
	background: url("../img/bg_roof.svg") no-repeat;
	background-size: cover;
	background-position: top center;
	width: 101%;
	height: 0;
	padding-top: 10.2%;
	display: block;
	position: absolute;
	top: -.85px;
	left: 0;
	z-index: 1
}
.kv__lead {
  color: #fff;
  right: calc(100% - 560px);
  top: 50%;
  z-index: 1;
	transform: translateY(-50%);
	text-shadow: 0 0 15px #000,0 0 10px rgba(0,0,0,.75),0 0 7px rgba(0,0,0,.5)
}
.kv__lead .kv__lead_top {
	font-size: 3rem;
	font-family: var(--ff-serif);
}
@media screen and (max-width: 768px) {
	.kv__lead {
		left: 10%
	}
	.kv__lead .kv__lead_top {
		font-size: 2rem
	}
	.kv__sns {
		width: 55px;
		right: 10px;
		bottom: 10px
	}
}
/* 
Start ハンバーガーメニュー
----------------------*/
/* Start ヘッダー */
@media screen and (min-width: 769px) {
	.headerNavOuter {
		display: none
	}
}
@media screen and (max-width: 768px) {
	.headerNavOuter {
		margin-bottom: 0;
		position: relative;
	}
	.headerNav__head {
	  padding: 2em 2em 0;
	}
	.headerNav__head .ff-serif {
		color: #fff;
		font-size: 2rem;
		text-align: center
	}
	/* End ヘッダー */

	/* Start ナビゲーション */
	.headerNav {
		position: fixed;
		right: -100vw;/*右側に隠しておきます*/
		top: 0;
		width: 100vw;
		height: 100vh;
		background-color: var(--color-dark-brown);
		-webkit-transition: all .6s;
		transition: all .6s;
		z-index: 20;
		overflow-y: auto;
	}
	.navList {
		margin: 20px;
		padding: 0;
		display: block;
	}
	.headerNav a{color: #fff}
	.navItem {
		padding: 1rem 1rem 0;
		list-style: none
	}
	.navItem a::before {
		content: '';
		background: url("../img/chevron-right.svg") no-repeat;
		display: inline-block;
		width: 7px;
		height: 10px
	}
	.navItem a {
		display: block;
		color: #fff;
		padding: 1rem 0;
		width: 100%;
		margin: 0 auto;
		font-size: 1.3rem;
		font-family: var(--ff-serif)
	}
	.headerNav .btn_contact {
	  border-radius: 2em;
	  text-align: center;
	  border: 1px solid var(--color-orange);
	  padding: 15px;
	  width: 18em;
	  margin: auto;
	}
	.headerNav .btn_contact a {
		 color: var(--color-orange);
	}
	/* End ナビゲーション */

	/* Start ハンバーガーボタン(三本線の実装) */
	.hamburger_btn {
		position: fixed;
		right: 10px;
		top: 10px;
		width: 55px;
		height: 55px;
		cursor: pointer;
		z-index: 30;
	}
	.hamburger_line {
		position: absolute;/*.headerNavOuterを基準にして、絶対配置*/
		left: 8px;
		width: 25px;
		height: 1px;
		background-color: var(--color-orange);
		-webkit-transition: all .6s;
		transition: all .6s;
	}
	.hamburger_line_1 {
		top: 20px;
	}
	.hamburger_line_2 {
		top: 26px;
	}
	.hamburger_line_3 {
		top: 32px;
	}
	/* End ハンバーガーボタン(三本線の実装) */

	/*ハンバーガーメニュをクリックした後に現れる半透明の背景*/
	.black-bg {
		display: block;
		position: fixed;
		left: 0;
		top: 0;
		width: 100vw;
		height: 100vh;
		z-index: 10;
		background-color: #000;
		opacity: 0;
		visibility: hidden;/* 非表示にしておきます */
		-webkit-transition: all .6s;
		transition: all .6s;
		cursor: pointer;
	}

	/* Start ハンバーガーボタンをクリックした際の動き */
	/* ナビゲーションが現れる */
	.nav-open .headerNav {
		right: 0;
	}

	/* 半透明の背景を表示させます。 */
	.nav-open .black-bg {
		opacity: .8;
		visibility: visible;
	}

	/* 三本線のハンバーガーを、バッテンにします */
	.nav-open .hamburger_line_1 {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		top: 25px;
	}
	.nav-open .hamburger_line_2 {
		width: 0;
		left: 50%;
	}
	.nav-open .hamburger_line_3 {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		top: 25px;
	}
/* End ハンバーガーボタンをクリックした際の動き */
}/* End ハンバーガーメニュー ----------*/

/*-- 共通パーツ --*/
.float__sns {
	position: fixed;
	right: 3%;
	bottom: 30px;
	z-index: 1;
	display: inline-block;
	width: 76px;
}
.float__sns > div:first-child {
	margin-bottom: 10px
}@media screen and (max-width: 767px) {
	.float__sns {width: 62px}
}
.ttl_main {
	text-align: center;
	color: var(--main-brown);
	margin-bottom: 1.5em;
    font-family: var(--ff-yu-gothic);
    font-weight: 700
}
.ttl_main > div:nth-child(2) {
	margin-top: .5em
}
.btn_link a, #sub_btn {
	display: block;
	background: var(--color-orange);
	color: #fff;
	max-width: 200px;
	margin: 30px auto;
	text-align: center;
	padding: 10px;
	border-radius: 2em;
	transition: all .2s;
	position: relative;
	font-weight: 700
}
.btn_link a:hover, #sub_btn:hover {
	text-decoration: none;
	transform: scale(1.05, 1.05);
}
.btn_link a:after {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20points%3D%227%204%2013%2010%207%2016%22%20stroke-width%3D%223%22%3E%3C%2Fpolyline%3E%3C%2Fsvg%3E');
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	position: absolute;
	right: 1em;
	top: 50%;
	transform: translateY(-50%);
}
.lead {
	font-size: 1.8rem;
	font-family: var(--ff-serif);
	text-align: center
}
.lead2 {
	font-size: 1.55rem;
	font-family: var(--ff-serif);
}
/*swiper*/
[class*="swiper-button-"]{color: var(--color-orange);background: rgba(255,255,255,.25);}
[class*="swiper-button-"]::after{font-size: 28px}
.swiper-pagination {z-index: 1}
@media screen and (max-width:767px) {
	[class*="swiper-button-"] {display: none}
	[class*="swiper-button-"]::after{font-size: 16px}
}
.uk-slider-container .uk-slidenav.uk-icon polyline {
	stroke: var(--color-orange) !important;
}

/*-- 施工事例 --*/
#sec__worksfiles .anc-menu > div a {
	background: none;
	color: var(--main-brown)
}
#sec__worksfiles .anc-menu .uk-icon {
	position: relative;
	right: 0
}
.works__slide_container {
	max-width: 960px;
	margin: auto;
	/*overflow: hidden*/
}
body:not(#home) .works__slide_section .ttl_main > div:first-child{
    display: none
}

.uk-card-default {
	border-radius: 10px;
	overflow: hidden
}
.uk-card-body {
	padding: 20px;
	text-align: center
}
.uk-card-default .uk-card-title,
.uk-card-body * {
	color: var(--main-brown)
}
.uk-card-title {
	position: relative
}
.uk-card-default .uk-card-title::after {
	content: '';
	display: inline-block;
	width: 2em;
	height: 0;
	border-bottom: 2px solid var(--color-orange);
	position: absolute;
	bottom: -5px;
left: 50%;
transform: translateX(-50%);
}
@media screen and (min-width: 640px) {
	/*--PCではドットナビ不要な時
	.works__slide_container .uk-slider-container-offset {
		margin-bottom: 0
	}
	.works__slide_container .uk-slider-nav {
		display: none
	}--*/
}
@media screen and (max-width: 640px) {
	.uk-slider-items {/*
	  margin-left: -50%;
	  margin-right: 25%;*/
	}
    .works__slide_container .uk-slidenav {
        display: none
    }
    .works__slide_container {
        max-width: 100%;
        overflow: hidden
    }
}

/*-- 私たちのこだわり --*/
#sec_commitment {
	background-color: var(--color-dark-brown);
	background-image: url("../img/bg_zumen.png");
	background-repeat: repeat-y;
	background-position: top right;
	background-attachment: fixed;
	padding-top: 0;
	padding-bottom: 0
}
#sec_commitment *,
#sec_commitment .ttl_main {
	color: #fff
}
.parallax {
  width: 100%;
  height: 100vh;
  position: sticky;
  top: 0;
  left: 0;
  z-index: -1;
  background-repeat: no-repeat;
  background-position: center;
}
.roof {
	content: '';
	background: url("../img/bg_roof.svg") no-repeat;
	background-size: cover;
	width: 100%;
	height: 0;
	padding-top: 10.15%;
	z-index: 1;
    position: relative;
    top: -1px
}
.roof.end {
	transform: rotate(180deg);
    margin-bottom: -1.5px
}
.commitment_container {
	margin: 100px auto;
	position: relative
}
.commitment_container::before {
	content: '';
	background: url("../img/home/reason01.svg") no-repeat;
	background-size: contain;
	display: inline-block;
	width: 300px;
	height: 138px;
	position: absolute;
	top: -50px;
	left: -20px;
	z-index: 1
}
.commitment_container.no2::before {
	background-image: url("../img/home/reason02.svg");
	left: unset;
	right: -20px
}
.commitment_container.no3::before {
	background-image: url("../img/home/reason03.svg");
}
.commitment_container .lead-box {
	-ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
	font-size: 1.5rem;
	font-family: var(--ff-serif);
	width: calc(100% - 720px);
	display: flex;
	align-items: center;
	justify-content: flex-end
}
.commitment_container .lead-box p {
	text-indent: -3em
}
.commitment_container .img-box {
	max-width: 720px
}
.commitment_container .img-box figure {
	position: relative;
	border-radius: 10px;
	overflow: hidden
}
.commitment_container .img-box figcaption {
	font-size: .9rem;
  position: absolute;
  bottom: 0;
  padding: 10px;
  background: rgba(0,0,0,.35);
  display: block;
  width: 100%;
	-webkit-backdrop-filter: blur(24px);
	backdrop-filter: blur(12px);
}
@media screen and (max-width: 960px){
	.commitment_container::before {
		width: 100px;
		height: 45px;
		left: 10px
	}
	.commitment_container.no2::before {
		right: 10px
	}
	.commitment_container .lead-box {
		width: 20%
	}
	.commitment_container .img-box {
		width: 80%
	}
	.commitment_container .img-box figcaption {
		position: relative;
		background: none
	}
}

.instructions__container .img-box h3 {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	margin: 0;
	font-family: var(--ff-serif);
	font-weight: 700
}
.instructions__container .txt-box {
	margin-top: 1em
}
.instructions__container .img-box::before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--color-orange);
  position: absolute;
  right: 10px;
  bottom: 10px;
	transition: all .5s
}
.instructions__container a:hover .img-box.uk-position-relative::before{
	transform: scale(100,100);
	opacity: .5
}
.instructions__container .img-box {
  display: block;
  overflow: hidden;
	border-radius: 10px
}
.instructions__container a:hover h3 {
	text-shadow: 0 0 10px var(--color-dark-brown)
}

/*-- FAQ --*/
.uk-accordion li {
	background: #F0EFEA;
}
.uk-accordion li > a {
	padding: 20px
} 
.uk-accordion .uk-accordion-title {
	background: #F9F8F5
}
.uk-accordion .uk-accordion-content {
	margin-top: 0
}
.uk-accordion .uk-accordion-content > * {
	padding: 20px
}
.uk-accordion-title::before {
  content: "";
  width: 1em;
  height: 1em;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2210.332%22%20height%3D%227.288%22%20viewBox%3D%220%200%2010.332%207.288%22%3E%3Cpath%20d%3D%22M7.22%2C3.114%2C3.114%2C7.22-.992%2C3.114%22%20transform%3D%22translate(2.052%20-2.053)%22%20fill%3D%22none%22%20stroke%3D%22%23f8a653%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E');
	background-size: contain
}
.uk-open > .uk-accordion-title::before {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2210.332%22%20height%3D%227.288%22%20viewBox%3D%220%200%2010.332%207.288%22%3E%3Cpath%20d%3D%22M7.22%2C3.114%2C3.114%2C7.22-.992%2C3.114%22%20transform%3D%22translate(2.052%20-2.053)%22%20fill%3D%22none%22%20stroke%3D%22%23f8a653%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E');
	transform: rotate(180deg)
}

/*-- コラム --*/
#sec_column .bg-orange {
	background-color: rgba(var(--color-orange-rgb), 0.25);
	margin: -70px auto -70px 0;
	height: 100%;
	position: absolute;
	width: 100%;
z-index: -1;
right: calc(50% - 600px);
border-radius: 0 50px 50px 0;
}
@media screen and (max-width: 768px) {
	#sec_column .bg-orange {
		right: 0;
		border-radius: 0
	}
}
@media screen and (max-width: 767px) {
	#sec_column .bg-orange {display: none}
	#sec_column .uk-container {
  margin-left: -10px;
  padding-left: 0;
}
}
/*-- フッター --*/
footer {
}
#footer_contanct {
	border-top: 1px solid var(--color-gray);
	border-bottom: 1px solid var(--color-gray);
	padding: 50px 0
}
#footer_contanct .btn_contact {
	height: 100%
}
#footer_contanct .btn_contact a {
	background: var(--color-orange);
	border-radius: 10px;
	color: #fff;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	padding: 20px 10px;
	font-size: 1.25rem
}
#footer_contanct .uk-grid > div:nth-child(2) a {
	font-family: var(--ff-serif);
	font-size: 4rem;
	font-weight: 700;
	color: var(--main-brown);
	text-align: center
}
@media screen and (max-width: 768px) {
	#footer_contanct .uk-grid > div:nth-child(2) a {
		font-size: 3rem
	}
}
#footer_bottom {
	margin-top: 50px
}
#footer_bottom h2 {
	letter-spacing: .25em;
	color: var(--main-brown)
}

/*-- 下層--施工事例 --*/
#sec__worksfiles .uk-container-small {
	max-width: 1000px;
	background: #F9F8F5;
	border-radius: 10px;
	margin: 50px auto
}
#sec__worksfiles .uk-container-small.uk-background-default {
	background: none
}
.worksfile {
	max-width: 900px;
	margin: 30px auto;
	padding: 20px 0
}
.worksfile [class*="worksfiles__"] {
	margin: 30px auto;
}
.worksfile__title,
.worksfile__lead {
	color: var(--main-brown);
	font-family: var(--ff-serif);
	font-size: 1.5rem;
	margin-bottom: 1em
}
.worksfile__title {
	border-bottom: 1px solid var(--main-brown)
}
.worksfile__lead::before {
	content: '';
	background: url("../img/works/point.svg") no-repeat;
	width: 71px;
	height: 28px;
	display: block;
}
.worksfile__lead,
.worksfile__body {
	margin-bottom: 1em
}
.worksfile__caption {
	background: #fff;
	padding: 20px
}
@media screen and (max-width: 768px) {
	.worksfile {
		padding: 20px;
	}
}
@media screen and (max-width: 640px) {
	.swiper-thumbs {
		display: none
	}
}
/*-- 下層--こだわり --*/
#commitment .commitment_container::before {
	content: '';
	background: url("../img/commitment/reason01.svg") no-repeat;
	background-size: contain;
	display: inline-block;
	width: 300px;
	height: 138px;
	position: absolute;
	top: -120px;
	left: 12%;
	z-index: 1
}
#commitment .commitment_container.no2::before {
	background-image: url("../img/commitment/reason02.svg");
	left: unset;
	right: 12%
}
#commitment .commitment_container.no3::before {
	background-image: url("../img/commitment/reason03.svg");
}
.subpage .commitment_container .txt-box {
	padding: 50px 20px 0 80px;
	color: #fff
}
.subpage .commitment_container.no2 .txt-box {
	padding: 50px 80px 0 80px;
}

.subpage .commitment_container .img-box {
	max-width: 658px;
	z-index: 1
}
.subpage .commitment_container .lead {
	color: var(--color-orange);
	display: block;
	margin: 60px 0;
	text-align: left
}
.subpage #sec__commitment .commitment_container {
	background-color: var(--color-dark-brown);
	background-image: url("../img/bg_zumen.png");
	background-repeat: no-repeat;
	background-position: right center;
	padding: 0 0 100px;
	margin-top: 180px
}
.subpage #sec__commitment .commitment_container::after {
	content: '';
	background: url("../img/bg_roof.svg") no-repeat;
	background-position: top center;
	width: 102%;
	height: 0;
	padding-top: 11.1%;
	position: absolute;
	top: -1px;
	left: -2px
}
.subpage #sec__commitment .commitment_container.no2::after {
	transform: rotateY(180deg)
}
@media screen and (min-width: 1000px) {
	.subpage .commitment_container .txt-box {
		max-width: calc(100% - 658px)
	}
}
@media screen and (max-width: 1000px) and (min-width: 768px) {
	.subpage .commitment_container > div {
		width: 50%
	}
}
@media screen and (max-width: 767px) {
	#commitment #sec__commitment .commitment_container {
		margin-top: 150px;
		padding-bottom: 60px
	}
	#commitment .commitment_container::before {
		width: 200px;
		top: -90px
	}
	.subpage .commitment_container .txt-box,
	#commitment .commitment_container.no2 .txt-box{
		padding: 0 20px 20px;
	}
	.subpage .commitment_container .img-box {
		max-width: 100%;
		width: 100%;
		padding: 20px
	}
	.subpage .commitment_container .lead {
		margin-bottom: 30px;
		font-size: 1.65rem
	}
}
/*-- 会社案内 --*/
.bg-orange {
	background: rgba(var(--color-orange-rgb),.25)
}
.company__effort .uk-card {
	padding: 20px
}
.list-divider {
	border-top: 2px solid #e5e5e5;
	border-bottom: 2px solid #e5e5e5
}
.list-divider dt {
	width: 20%;
	padding: 15px 3px 15px 15px
}
.list-divider dd {
	width: 80%;
	padding: 15px 15px 15px 3px
}
.list-divider > * {
    border-top: 1px solid #e5e5e5;
}
#company #sec__commitment .commitment_container::before {
	content: none
}
#company #sec__commitment .commitment_container {
	margin-top: 80px;
	padding-bottom: 60px
}
body:not(#forpartner) footer #footer_contanct .lead {
	display: none
}
.company__effort .uk-card-title:after {
	border: none;
	background: url("../img/swish.svg") no-repeat;
	width: 200px;
	height: 16px;
	transform: unset;
	left: 0;
	bottom: -5px;
}

@media screen and (max-width:640px) {
	iframe {
		max-width: 100%
	}
	#company #sec__commitment .commitment_container {
		padding-bottom: 30px
	}
}

/*-- 木造住宅の良さ --*/
.woodenhouse__kv > div:nth-child(2) {
	  position: absolute;
}
.woodenhouse__kv > div:nth-child(2) > div{
  background: rgba(255,255,255,.75);
  border-radius: 10px;
	padding: 40px
}
#woodenhouse .lead2 img[src*="svg"] {
	margin-right: 10px
}
.sec__check .lead2 + .uk-grid > div img {
	border-radius: 6px
}
.uk-table.uk-table-divider th {
  background: rgba(var(--color-orange-rgb),.25);
  text-align: center;
	vertical-align: middle
}
.uk-table.uk-table-divider {
	border: 1px solid #ddd
}
.uk-table.uk-table-divider tr :not(:last-child) {
	border-right: 1px solid #ddd
}
.testimonial-box {
	margin: 30px auto;
	border: 1px solid #fff;
	position: relative;
	padding: 30px 60px 40px
}
.testimonial-box::after {
  content: '';
  width: 60px;
  height: 60px;
  display: inline-block;
  position: absolute;
  right: -1px;
  bottom: -1px;
  background: var(--color-dark-brown);
  border: 1px solid #fff;
  border-right: none;
  border-bottom: none;
}
.testimonial-box::before {
    content: '';
    position: absolute;
    border-top: 1px solid #fff;
    display: inline-block;
    height: 0;
    z-index: 1;
    transform-origin: 0 0;
    transform: translate(calc(1.41421356237 * 50% + 0px), calc(-1.41421356237 * 50% + 0px)) rotate(-45deg);
    width: calc(120px / 1.41421356237);
    right: 34px;
    bottom: -1px;
}
.customer__container .voice > div {

}
.customer__container .voice:after {
    content: '';
    display: block;
    float: none;
    clear: both
}
@media screen and (min-width:769px) {
	.woodenhouse__kv > div:nth-child(2) {
	  left: 50%;
	  bottom: -20%
	}
	.woodenhouse__kv > div:nth-child(2) {
		width: 40%
	}
}
@media screen and (max-width:768px) {
	.uk-section .woodenhouse__kv {
		margin-bottom: 50px
	}
	.woodenhouse__kv .uk-height-large {
		height: 250px;
		margin-right: 10%
	}
	.woodenhouse__kv > div:nth-child(2) {
		margin-left: 10%;
		top: 130px;
		margin-bottom: 150px;
		width: 90%
	}
	.woodenhouse__kv > div:nth-child(2) > div {
		padding: 20px
	}
	.mt110 {
		margin-top: 110px
	}
}
@media screen and (max-width:767px) {
	#woodenhouse .lead2 span {
		display: block;
		margin-top: 10px;
		text-align: center
	}
	.testimonial-box {
		padding: 20px
	}
	.testimonial-box::after {
	  width: 30px;
	  height: 30px;
	}
	.testimonial-box::before {
		width: calc(60px / 1.41421356237);
    	right: 17px;
	}
    .uk-table-small td, .uk-table-small th {
        padding: 10px 5px
    }
    .customer__container .voice > div:last-child {
        float: none;
        margin-top: 10px
    }
    .customer__container .voice > div:nth-child(2) {

    }
}
/*-- 建築関係者へ --*/
.partner__container {
	max-width: 518px
}
@media screen and (min-width:768px) {
	.partner__container .uk-grid > li:nth-child(odd) {
		width: 13.5em
	}
	.partner__container .uk-grid > li:nth-child(2n) {
		width: 18.5em
	}
}

@media screen and (max-width:640px) {
	.forpartner__kv {
		height: 0;
		padding-top: 28%
	}
}
/*-- 家づくりの流れ --*/
.step__lead {
}
.step__lead_text {
	position: relative;
	max-width: 1000px;
	margin: 0 auto -12em;
	background: #fff;
	padding: 40px;
	border-radius: 10px;
	top: -7em;
}
.anc-menu > div a {
	background: var(--main-brown);
	color: #fff;
	padding: .75em;
	display: block;
	text-align: center;
	border-radius: 1.5em;
	position: relative
}
.anc-menu .uk-icon {
  position: absolute;
  right: 20px;
}
.anc-menu .uk-icon polyline {
	stroke-width: 3px;
	color: var(--color-orange);
}
.step__slider {
	overflow: hidden
} 
.step__slider .uk-grid > div {
	padding: 30px 40px
}
.step__slider .uk-grid > div:nth-child(2) {
	background: url("../img/step/bg_01.jpg") no-repeat;
	background-size: cover;
}
#s02.step__slider .uk-grid > div:nth-child(2) {
	background-image: url("../img/step/bg_02.jpg")
}
#s03.step__slider .uk-grid > div:nth-child(2) {
	background-image: url("../img/step/bg_03.jpg")
}
.step__slider h3 {
	font-weight: 700;
	position: relative;
	margin-bottom: 1.5em;
	font-size: 1.3rem
}
.step__slider h3:after {
	content: '';
	display: inline-block;
	height: 0;
	width: 50px;
	border-top: 2px solid var(--color-orange);
	border-radius: 2px;
	position: absolute;
	bottom: -.5em;
	left: 50%;
	transform: translateX(-50%)
}
.step__slider h3,
.step__slider li {
	text-transform: uppercase;
	font-family: var(--ff-gothic)
}
.step__slider .uk-list > li {
	font-size: 1.25rem;
	padding: 0 20px;
	margin: 0
}
.step__slider .swiper-slide > * {
  text-shadow: 0 0 20px rgba(var(--color-orange-rgb),.5);
}
.step__slider li:not(:last-child):after {
	content: '▼';
	color: var(--color-orange);
	display: block;
	margin-left: 1em;
}
.step__slider :is(.swiper, .swiper-wrapper) {
	position: unset
}
.point {
  background: var(--color-orange);
	margin: 30px 30px 20px;
  padding: 20px 30px;
  border-radius: 10px;
  color: #fff;
	position: relative;
}
.point:before {
	content: 'POINT';
	background: #D15C1E;
	position: absolute;
	left: -30px;
	top: -20px;
	text-align: center;
	border-radius: 50%;
	width: 3.75em;
	height: 3.75em;
	font-weight: 700;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 10;
	transform: rotate(-15deg);
}
@media screen and (min-width:640px) {
	.step__slider.uk-margin-large {
		margin-top: 120px;
		margin-bottom: 120px
	}
	.step__slider .bg-brown .lead2 {
		border-bottom: 1px solid #fff;
		padding-bottom: .5em;
	}
}
@media screen and (max-width:640px) {
	.step__lead .uk-height-large {
		height: 250px
	}
	.step__lead_text {
	  margin: 0 5% -7em;
	  padding: 15px 20px;
	}
	.step__slider li {
		padding: 0
	}
	.slide-paginations {
		display: none
	}
	.step__slider .uk-grid > div {
		padding: 10px
	}
	.point {
		margin: 30px 0 30px 30px;
	}
}

/*-- お問い合わせ --*/
.must {
    background: red;
    color: #fff;
    font-size: 80%;
    font-weight: 400;
    padding: 0 3px;
    margin-left: 3px;
    border-radius: 3px
}
#sub_btn {
	border: none;
	font-size: inherit;
max-width: 100%;
}
#sub_btn:hover {
	cursor: pointer
}
.post .dl_form dt {
    color: #1d2088;
    font-weight: bold;
    display: inline-block;
    width: 10em;
}
.post .dl_form dd {
    display: inline-block;
    width: calc(100% - 11em);
    position: relative;
    line-height: 1;
}
.post .dl_form :is(dt, dd) {
margin-bottom: 3em;
vertical-align: top;
}
input[type="text"], input[type="email"], input[type="tel"], textarea {
    width: 100% !important;
    box-sizing: border-box;
    box-shadow: none;
    border-radius: 3px;
    border: 1px solid #ddd;
    padding: 10px 7px;
    font-size: 18px;
}
.post .dl_form .frame {
    height: 200px;
    margin-top: 10px;
    overflow-y: scroll;
    border: 1px solid #ddd;
    padding: 15px;
    width: 100%;
}
.cp_ipselect {
    overflow: hidden;
    text-align: center;
}
.cp_ipselect select {
    padding-right: 1em;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
}
.cp_ipselect select::-ms-expand {
display: none;
}
.cp_ipselect.cp_sl02 {
    position: relative;
    border: 1px solid #bbb;
    border-radius: 2px;
    background: #fff;
}
.cp_ipselect.cp_sl02::before {
    position: absolute;
    top: 0.8em;
    right: 0.9em;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #666;
    pointer-events: none;
}
.cp_ipselect.cp_sl02::after {
    position: absolute;
    top: 0;
    right: 2.5em;
    bottom: 0;
    width: 1px;
    content: '';
    border-left: 1px solid #bbbbbb;
}
.cp_ipselect.cp_sl02 select {
    padding: 8px 38px 8px 8px;
    color: #666;
}
@media screen and (max-width:640px) {
	.post .dl_form :is(dt, dd) {
		display: block;
		width: 100%
	}
	.post .dl_form dt {
		margin-bottom: 1em
	}
}