@charset "UTF-8";

#kv{
	margin: 0 auto 50px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
	min-width: auto;
}

#kv_inner{
	margin: 0 0px ;
	padding: 0 0 0 0;
	height: 700px;
	position:relative;
	text-align:center;
}

h2.h2_tit{
	position: absolute;
	top: 90px;
	left: 0;
	right:0;
	margin: auto;
	text-align:center;
	z-index:10;
}
h2.h2_tit img{
filter: drop-shadow(0px 0px 1px rgba(0,0,0,0.0)) drop-shadow(0px 0px 1px rgba(0,0,0,0.0));
}

.flex_kv{
	margin: 0 0 0 0 !important;
	padding: 0 0;
	background:transparent !important;
}

.flex_kv ul.slides{
	margin: 0 0 0 0;
	padding: 0 0;
	height: 700px;
}

.flex_kv ul.slides li{
	margin: 0 0 0 0;
	padding: 0 0;
	text-align:center;
	height: 700px;
}

.flex_kv ul.slides li.slide1{
background:  url(../images/top/sp_kv_img.jpg) no-repeat center bottom;
background-size:cover;
}

.kv_box{
	margin: -50px 20px 0;
	padding: 20px 0 0px;
	position:relative;
	text-align:center;
	width: auto;
	background-color:#fff;
	z-index:11
}

.kv_box h3{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: 600;
font-size: 24px;
letter-spacing: 0.07em;
line-height: 43px;
text-align: center;
color: #585858;
display:none;
}
.kv_box p{
	margin: 0 auto;
	padding: 0 20px;
	position:relative;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 15px;
letter-spacing: 0.08em;
line-height: 32px;
text-align: left;
color: #585858;
}




.gallery_area{
	margin: 0 auto 50px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	background-color:#fff;
	min-width: auto;
}

.gallery_area h2{
	margin: 0 auto 20px;
	padding: 0 0 0;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 20px;
letter-spacing: 0.18em;
line-height: 100px;
text-align: center;
color: #585858;
}

ul.gallery_list{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
}

ul.gallery_list li{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
	width:240px;
}

.slick-slider{position: static;margin-bottom:0 !important;}

.slick-list{overflow: visible;}

.slick-slide
{margin:0 5px;}

.slick-slide img
{display: inline-block!important;}

.slick-next{ right:-20px!important; }
.slick-prev{ left:-20px!important; }
.slick-arrow{ z-index:2!important; }


.slick-arrow:before{
content:""!important;
width: 35px!important;
height: 35px!important;
position: absolute;
top: 20px;
left: 0;
}

.slick-prev,
.slick-next{
top: 90px !important;
width: 35px!important;
height: 35px!important;
}

.slick-next:before{
background: url(../images/base/arr_r.svg)!important;
background-size: 35px 35px !important;
}

.slick-prev:before{
background: url(../images/base/arr_l.svg)!important;
background-size: 35px 35px !important;
}

ul.gallery_list .slick-prev,
ul.gallery_list .slick-next
{top: auto !important;bottom: 0px !important;}

ul.gallery_list .slick-next{ right:0px!important;left:80px!important;text-align:center!important;margin:auto!important;}
ul.gallery_list .slick-prev{ right:80px!important;left:0px!important;text-align:center!important;margin:auto!important;}

.gallery_list .slick-list {
position: static!important;
padding: 0 0 !important;
}
.gallery_list .slick-track {}
.gallery_list .slick-slide {
	width:240px !important;
}
.gallery_list .slick-slide.slick-current {
  opacity: 1;
}
.gallery_list .slick-slide a {
  display: block;
}
.gallery_list .slick-slide a:hover {

}
.gallery_list img {

}


.slick-dots
{
	position: absolute !important;
	bottom: auto !important;
	top: -30px !important;

	display: block;

	width: 100%;
	padding: 0;
	margin: 0 0 0 !important;

	list-style: none;

	text-align: center;
}
.slick-dots li{
	margin: 0 5px 0 !important;
	padding: 0 0;
	position:relative;
	text-align:left;
	display:inline-block;
	vertical-align:top;
	width:30px !important;
	letter-spacing:normal;
	height: 2px !important;

	cursor: pointer;
}
.slick-dots li button
{
	font-size: 0;
	line-height: 0;

	display: block;

	width: 100% !important;
	height: 2px !important;
	padding: 0px !important;

	cursor: pointer;

	color: transparent;
	border: 0;
	outline: none;
	background: #fff !important;


	border:1px solid #ccc !important;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
	outline: none;


}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
	opacity: 1 !important;
}
.slick-dots li button:before
{
	font-family: 'slick';
	font-size: 0px !important;
	line-height: 0px !important;

	position: absolute;
	top: 0;
	left: 0;

	width: 100% !important;
	height: 2px !important;



	content: ' ' !important;
	text-align: center;

	opacity: 1 !important;
	color: black;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
	background-color:#585858 !important;
}



.why_wrap{
	margin: 0 auto;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	background-color:#8d8d8d;
	min-width: auto;
}

.why_area{
	margin: 0 auto;
	padding: 60px 0 30px;
	position:relative;
	text-align:center;
	width: auto;
}

.why_area h2{
	margin: 0 auto 30px;
	padding: 0 0 0;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 20px;
letter-spacing: 0.18em;
line-height: 40px;
text-align: center;
color: #fff;
}
.why_area h2 small{
	margin: 0 0 0;
	padding: 0 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: 500;
font-size: 14px;
line-height: 28px;
text-align: center;
color: #fff;
display:block;
}

ul.why_list{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
}

ul.why_list li{
	margin: 0 auto 50px;
	padding: 0 0;
	position:relative;
	text-align:center;

}

ul.why_list li .why_txt{
	margin: 0 0;
	padding: 0 0;
	position:relative;
	text-align:left;
}
ul.why_list li .why_txt h3{
	margin: 0 0 20px;
	padding: 0 30px;
	position:relative;
text-align: left;
}
ul.why_list li .why_txt h3 em{
	margin: 0 0 20px;
	padding: 0 0;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 36px;
letter-spacing: 0.03em;
line-height: 36px;
text-align: left;
color: #403a3a;
display:inline-block;
}
ul.why_list li .why_txt h3 strong{
	margin: 0 0 0;
	padding: 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 23px;
line-height: 30px;
text-align: left;
color: #fff;
display:block;
}

ul.why_list li .why_txt p{
	margin: 20px 0 0;
	padding: 0 30px;
	position:relative;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 15px;
line-height: 32px;
text-align: left;
color: #fff;
}

ul.why_list li .why_p{
	margin: 0 -130px 0 0;
	padding: 0 0;
	position:relative;
	text-align:left;
}

ul.why_list li:nth-child(2) .why_txt{
	margin: 0 0;
	padding: 0 0;
	position:relative;
	text-align:left;
	order:2;
}
ul.why_list li:nth-child(2) .why_p{
	margin: 0 0 0 -130px;
	padding: 0 0;
	position:relative;
	text-align:left;
}




.merit_area{
	margin: 0 auto;
	padding: 0 0 40px;
	position:relative;
	text-align:center;
	width: auto;
}

.merit_area h2{
	margin: 0 auto 30px;
	padding: 0 0 0;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 20px;
letter-spacing: 0.18em;
line-height: 40px;
text-align: center;
color: #fff;
}
.merit_area h2 small{
	margin: 0 0 0;
	padding: 0 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: 500;
font-size: 14px;
line-height: 28px;
text-align: center;
color: #fff;
display:block;
}

ul.merit_list{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
}

ul.merit_list li{
	margin: 0 0 50px;
	padding: 0 20px;
	position:relative;
	text-align:center;
	width:auto;
}
ul.merit_list li h3{
	margin: 0 0 20px;
	padding: 0 10px;
	position:relative;
	text-align:center;
font-family: "Noto Sans JP";
font-weight: 600;
font-size: 23px;
line-height: 32px;
text-align: left;
color: #fff;
}
ul.merit_list li .merit_p{
	margin: 0 0 15px;
	padding: 0 0;
	position:relative;
	text-align:center;
}
ul.merit_list li .merit_p img{
	width:100%;
	height:auto;
	max-width:none;
}
ul.merit_list li p{
	margin: 0 0;
	padding: 0 10px;
	position:relative;
	text-align:center;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 15px;
line-height: 28px;
text-align: left;
color: #fff;
}





.plan_area{
	min-width: auto;
	margin: 0 auto;
	padding: 60px 0 30px;
	position:relative;
	text-align:center;
	background-color:#fff;
}
.plan_area h2{
	margin: 0 auto 40px;
	padding: 0 0 0;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 20px;
letter-spacing: 0.18em;
line-height: 40px;
text-align: center;
color: #585858;
}

ul.plan_list{
	margin: 0 auto;
	padding: 0 20px;
	position:relative;
	text-align:center;
	width: auto;
}

ul.plan_list li{
	margin: 0 0 50px;
	padding: 0 0;
	position:relative;
	text-align:center;
	width:auto;
}

ul.plan_list li .plan_num{
	margin: 0 0 10px;
	padding: 0 10px;
	position:relative;
font-family: Lato;
font-weight: 300;
font-size: 20px;
letter-spacing: 0.03em;
line-height: 20px;
text-align: left;
color: #585858;
}
ul.plan_list li .plan_num em{
	margin: 0 0 0 10px;
	padding: 0 0;
	position:relative;
font-family: Lato;
font-weight: 300;
font-size: 36px;
letter-spacing: 0.03em;
line-height: 36px;
text-align: left;
color: #585858;
}

ul.plan_list li h3{
	margin: 0 0 20px;
	padding: 0 0;
	position:relative;
	text-align: left;
display: flex;
align-items:flex-end;
justify-content:flex-start;
flex-wrap:wrap;
}
ul.plan_list li h3 em{
	margin: 0 0;
	padding: 0 10px;
	position:relative;
font-weight: bold;
font-size: 19px;
letter-spacing: 0.05em;
line-height: 28px;
text-align: left;
color: #585858;
width:100%;
}
ul.plan_list li h3 b{
	margin: 0 10px 5px 10px;
	padding: 8px 15px;
	position:relative;
font-weight: bold;
font-size: 12px;
letter-spacing: 0.00em;
line-height: 12px;
text-align: left;
color: #585858;
background-color:#dddbdb;
}
ul.plan_list li h3 strong{
	margin: 0 0 0;
	padding: 0 0;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 44px;
line-height: 44px;
text-align: left;
color: #585858;
}
ul.plan_list li h3 strong.v2{
	line-height: 30px;
}
ul.plan_list li h3 strong small{
	font-size: 30px;
}
ul.plan_list li h3 span{
	margin: 0 0 0 6px;
	padding: 0 0;
	position:relative;
font-weight: bold;
font-size: 22px;
letter-spacing: 0.05em;
line-height: 28px;
text-align: left;
color: #585858;
}
ul.plan_list li h3 span.v2{
	padding: 5px 0 0;
}
ul.plan_list li h3 span small{
	margin: 0 0;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 12px;
letter-spacing: 0.05em;
line-height: 12px;
text-align: left;
color: #585858;
display:block;
}

ul.plan_list li .plan_data{
	margin: 0 0 20px;
	padding: 0 10px;
	position:relative;
display: flex;
align-items:center;
justify-content:flex-start;
}
ul.plan_list li .plan_data em{
	margin: 0 0;
	padding: 0 0;
	position:relative;
font-family: Lato;
font-weight: normal;
font-size: 15px;
line-height: 34px;
text-align: left;
color: #585858;

}
ul.plan_list li .plan_data strong{
	margin: 0 0 0 10px;
	padding: 10px 10px;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 14px;
letter-spacing: 0.05em;
line-height: 14px;
text-align: left;
color: #fff;
background-color:#403A3A;
}
ul.plan_list li .plan_data span{
	margin: 0 0 0 10px;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 13px;
line-height: 19px;
text-align: left;
color: #585858;
}

ul.plan_list li .plan_img{
	margin: 0 auto 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
}
ul.plan_list li .plan_map{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
	height:235px;
	z-index: 1;
}






.works_area{
	min-width: auto;
	margin: 0 auto;
	padding: 70px 0 50px;
	position:relative;
	text-align:center;
	background-color:#e9e9e9;
}
.works_area h2{
	margin: 0 auto 15px;
	padding: 0 0 0;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 20px;
letter-spacing: 0.18em;
line-height: 40px;
text-align: center;
color: #585858;
}
.works_area h3{
	margin: 0 auto 30px;
	padding: 0 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 18px;
letter-spacing: 0.03em;
line-height: 36px;
text-align: center;
color: #585858;

}
ul.works_list{
	margin: 0 auto 20px;
	padding: 0 30px;
	position:relative;
	text-align:center;
	width: auto;
	display: flex;
	align-items:stretch;
	justify-content:space-between;
	flex-wrap:wrap;
}

ul.works_list li{
	margin: 0 0 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
	width:48%;
	letter-spacing:normal;
	background-color:transparent;
}

ul.works_list li a{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index:999;
	background-color:#FFF;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
}

ul.works_list li .works_img{
	margin: 0 auto 15px;
	padding: 0 0px;
	position:relative;
	text-align:center;
	overflow: hidden;
	width:160px;
	height:160px;
}

ul.works_list li .works_img img{
	width:100%;
	height:100%;
	object-fit:cover;
	vertical-align:top;
	transition-duration: .3s;
}

ul.works_list li .works_txt{
	margin: 0 0 40px;
	padding: 0 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: 500;
font-size: 13px;
line-height: 20px;
text-align: justify;
color: #585858;
}

ul.works_list li .view_more{
	margin: 0 0;
	padding: 0 0 0;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 11px;
letter-spacing: 0.05em;
line-height: 30px;
text-align: center;
	/*background-color:#585858;
	color:#fff;*/
border-bottom:1px solid #585858;
	position: absolute;
    display: block;
    width: 100%;
    bottom: 0;

}

.modelhouse_area{
	min-width: auto;
	margin: 0 auto;
	padding: 70px 0 ;
	position:relative;
	text-align:center;
}
.modelhouse_area h2{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 20px;
letter-spacing: 0.18em;
line-height: 40px;
text-align: center;
color: #585858;

}

.modelhouse_area h3{
	margin: 0 auto 30px;
	padding: 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 18px;
letter-spacing: 0.03em;
line-height: 30px;
text-align: center;
color: #585858;

}
.modelhouse_area .model_p{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
text-align: center;
}

.modelhouse_area h4{
	margin: 0 0 10px;
	padding: 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: 500;
font-size: 20px;
line-height: 30px;
text-align: center;
color: #585858;
}

ul.model_list{
	margin: 0 auto 20px;
	padding: 0 30px;
	position:relative;
	text-align:center;

}

ul.model_list li{
	margin: 0 10px;
	padding: 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 13px;
line-height: 22px;
text-align: left;
color: #585858;
}
.works_area .btn_style,
.modelhouse_area .btn_style{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
}
.works_area .btn_style a,
.modelhouse_area .btn_style a{
	margin: 0 auto;
	padding: 15px 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: 600;
font-size: 16px;
letter-spacing: 0.05em;
line-height: 20px;
text-align: center;
color: #fff;
	width: 330px;
	background: #585858;
	border: 1px solid #585858;
	display:inline-block;
	transition-duration: .2s;
}
.modelhouse_area .btn_style a:hover{
background: #fff;
border: 1px solid #585858;
color:#585858;
text-decoration:none;
cursor: pointer;
}






.event_wrap{
	margin: 0 auto;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	background-color:#898989;
	min-width: auto;
}

.event_area{
	margin: 0 auto;
	padding: 60px 0;
	position:relative;
	text-align:center;
	width: auto;
}

.event_area h2{
	margin: 0 auto 20px;
	padding: 0 0 0;
	position:relative;
font-family: Lato;
font-weight: bold;
font-size: 20px;
letter-spacing: 0.18em;
line-height: 40px;
text-align: center;
color: #fff;
}
.event_area h2 small{
	margin: 0 0 0;
	padding: 0 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: 500;
font-size: 14px;
line-height: 28px;
text-align: center;
color: #fff;
display:block;
}

.event_area .event_p{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
}


.event_area h3{
	margin: 0 auto 30px;
	padding: 0 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 13px;
line-height: 20px;
text-align: center;
color: #fff;
}

.event_area .btn_style{
	margin: 0 0;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
}
.event_area .btn_style a{
	margin: 0 auto;
	padding: 15px 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: 600;
font-size: 16px;
letter-spacing: 0.05em;
line-height: 20px;
text-align: center;
color: #585858;
	width: 350px;
	background: #fff;
	border: 1px solid #585858;
	display:inline-block;
	transition-duration: .2s;
}
.event_area .btn_style a:hover{
background: #585858;
border: 1px solid #585858;
color:#fff;
text-decoration:none;
cursor: pointer;
}
