/* 共通スタイル */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');

body {
	width: 100%;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, sans-serif;
	font-size: 18px;
	line-height: 1.8;
}

p,
span {
	margin-bottom: 1.5em;
	font-family: "游ゴシック", "#header1ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.mincho {
	font-family: 'ヒラギノ明朝 Pro W6', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', serif;
}

.mincho24 {
	font-size: 150%;
	text-shadow: 0 0 1px #bbb;
	font-family: 'ヒラギノ明朝 Pro W6', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', serif;
	line-height: 1.5;
	letter-spacing: -1px;
	padding-right: 3px;
}

.fb {
	font-weight: bold;
}

.f16 {
	font-size: 100%;
}

.fb18 {
	font-weight: bold;
	font-size: 113%;
}

.fb20 {
	font-weight: bold;
	font-size: 125%;
}

.f20 {
	font-size: 125%;
}

.fb24 {
	font-weight: bold;
	font-size: 150%;
}

.f24 {
	font-size: 150%;
}

.fb30 {
	font-weight: bold;
	font-size: 188%;
}

.fb34 {
	font-weight: bold;
	font-size: 210%;
}

.fb36 {
	font-weight: bold;
	font-size: 225%;
}

.fb40 {
	font-weight: bold;
	font-size: 250%;
}

.align-c {
	text-align: center;
}

.align-r {
	text-align: right;
}

.align-l {
	text-align: left;
}

.img-float-l {
	float: left;
	margin-right: 16px;
	margin-bottom: 0;
}

.img-float-r {
	float: right;
	margin-left: 16px;
	margin-bottom: 0;
}

.clear {
	clear: both;
}

.mb15 {
	margin-bottom: 15px !important;
}

.mb21 {
	margin-bottom: 21px !important;
}

.mb23 {
	margin-bottom: 23px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mb50 {
	margin-bottom: 50px;
}

/* Heroセクション */

header {
	position: relative;
	padding-top: 2em;
}

#header1 {
	/*    height: 1000px;*/
	/*    height: 1030px;*/
	/*    background: #fff url(../images/head/head02.jpg) no-repeat 50% 0;
    background-size: auto;
    background-size: cover;
    box-sizing: border-box;
    padding-bottom:100px;*/
}



#header2 {}

.categorywrap {
	background: url(../images/head2.jpg) no-repeat center top;
	padding-top: 69px;
	padding-bottom: 69px;
}

/* Menu */
/*
.fh5co-nav-toggle .mn{
	color:#000;
	font-size:12px;
	text-decoration: none;
}

.fh5co-nav-toggle .mn:hover {
	text-decoration: none !important;
}
*/
.scrollBtn {
	position: absolute;
	bottom: 15px;
	right: 0;
	width: 100%;
	text-align: center;
}

#hero {
	/*	max-width: 641px;*/
	/*	margin-top:150px;
	margin-left: auto;
*/
	margin: 180px auto 0;
}

.bg-slider {
	/*	width: 100vw;*/
	height: 100vh;
	background-position: center center;
	background-size: cover;
	/* display: flex;
	align-items: normal;
	justify-content: center;
	padding-bottom: 100px; */
}

@media screen and (max-width: 768px) {
	.bg-slider  {
		background-position: center bottom;
		background-size: 120%;
		background-repeat: no-repeat;
	}
}


.white-box {
	background: rgba(255, 255, 255, 0.7);
	border-radius: 6px;
	padding: 15px 15px 10px 15px;
	box-sizing: border-box;
	text-align: center;
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}

.blk-border {
	/*	border: #000 1px solid;*/
	border-radius: 6px;
	padding: 0px 0 3px;
	box-sizing: border-box;
	text-align: center;
	margin-bottom: 3px;
}


.hero-flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.hero-flex-item {
	margin: 0 10px 5px;
}


/* Heroセクション end */

/* introセクション start */

#fh5co-intro-section {
	background: #F6F5EC;
	padding-top: 3em;
	/*    margin-bottom: 2em;*/
	margin-bottom: 0;
	padding-bottom: 3em;
}

.intro-heading {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, sans-serif;
	color: #65B8AA;
	font-size: 36px;
	font-weight: bold;
	line-height: 1.5;
}

.intro-heading img {
	max-width: 100%;
	height: auto;
}

.intro-text {
	margin-top: 10px;
}

.intro-text img {
	max-width: 100%;
}

.intro-link {
	margin-top: 10px;
	font-weight: bold;
	margin-bottom: 20px;
}

.intro-link img {
	margin-bottom: 5px;
	margin-left: 5px;
}

.intro-photo {
	position: relative;
	width: 275px;
	max-width: 100%;
	/*  height: 275px;*/
	display: block;
	background-size: cover;
	background-position: center center;
	/*overflow: hidden;*/
	/*	border-radius: 50%;*/
	/*overflow:hidden;*/
	margin: 0 auto;
}

.intro-photo img {
	-moz-transition: 0.3s;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	max-width: 100%;
}

.intro-photo:hover img {
	-moz-transform: scale(1.2) rotate(10deg);
	-webkit-transform: scale(1.2) rotate(10deg);
	-ms-transform: scale(1.2) rotate(10deg);
	transform: scale(1.2) rotate(10deg);
}

.intro-photo .desc {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0, 0, 0, 0.2);
	padding-top: 120px;
	opacity: 0;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	border-radius: 50%;
}

.intro-photo .desc span {
	color: rgba(255, 255, 255, 0.7);
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 2px;
}

.intro-photo:hover .desc,
.intro-photo:focus .desc {
	opacity: 1;
}


#head_what_house1 {
	margin-bottom: 16px;
}

/* introセクション end */

/* serviceセクション start */

#fh5co-services-section {
	background: #ffffff;
	/*    padding-top: 3em;
    padding-bottom: 5em;*/
	padding-top: 3.5em;
	padding-bottom: 3em;
}

#fh5co-services-section .border-bk {
	/*	border: #333 1px solid;
	padding:3em;*/
	padding: 1.5em;
	box-sizing: border-box;
}

#fh5co-services-section .heading-section h2 {
	font-size: 45px;
}

#fh5co-services-section .heading-section h2:after {
	display: block;
	content: " ";
	width: 160px;
	height: 6px;
	background: #65B9AA;
	padding-top: 0;
	margin: 15px auto 0;
}

.services {
	margin-top: 0px;
	border: 1px solid #222;
	margin-left: auto;
	margin-right: auto;
	float: none;
	position: relative;
}

.services .btmimg {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
}

.services .btmimg img {
	width: 100%;
}

.g01 {
	background: #777 url(../images/g01.jpg) no-repeat 50% 0;
	background-size: auto;
	background-size: cover;
	box-sizing: border-box;
	min-height: 500px;
	max-width: 500px;
	position: relative;
}

.g01:before {
	/* 透過した黒を重ねる */
	background-color: rgba(0, 0, 0, 0);
	/* どの範囲に重ねるかを指定 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}

.g02 {
	background: #777 url(../images/g02.jpg) no-repeat 50% 0;
	background-size: auto;
	background-size: cover;
	box-sizing: border-box;
	min-height: 500px;
	max-width: 500px;
	position: relative;
}

.g02:before {
	/* 透過した黒を重ねる */
	background-color: rgba(0, 0, 0, 0);
	/* どの範囲に重ねるかを指定 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}

#collapseMenu .well {
	margin-bottom: 0px;
	border-radius: 0px;
	padding: 10px;
}

/* serviceセクション end */

/* ctaセクション start */

#fh5co-counters {
	font-family: "游ゴシック", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	background-attachment: scroll;
}

#fh5co-counters .heading-section {
	margin-bottom: 1.5em;
}

#fh5co-counters .heading-section h2 {
	font-size: 2.5rem;
	font-weight: bold;
	margin: 2rem auto 4rem auto;
	letter-spacing: 0.2rem;
	line-height: 3rem;
}

/*
#fh5co-counters .heading-section h2:after{
	display:block;
	content:" ";
	width:160px;
	height:6px;
	background:#65B9AA;
	padding-top: 0;
	margin:15px auto 0;
}*/

#fh5co-counters #visit {
	margin-bottom: 1em;
}

#fh5co-counters .heading-section .h2eng {
	color: #fff;
	font-size: 24px;
}

.fh5co-narrow-content p.cap {
	color: #fff !important;
	font-size: 16px !important;
	padding: 15px;
	padding-bottom: 0;
	font-weight: bold;
	box-sizing: border-box;
	margin-bottom: 0;
}

@media screen and (max-width: 992px) {
	.fh5co-narrow-content p.cap {
		font-size: 1.2rem !important;
		text-align: left;
	}

	.fh5co-narrow-content .row .col-md-6:first-child {
		margin-bottom: 20px;
	}
}


/* ctaセクション end */

/* photosセクション start */

#fh5co-photos-section {
	background: #fff;
	padding-top: 5em;
	padding-bottom: 5em;
}

@media screen and (max-width: 768px) {
	#fh5co-photos-section {
		padding-top: 0;
		padding-bottom: 0;
	}
}


#fh5co-photos-section .white-bg {
	background: rgba(255, 255, 255, 0.8);
	padding: 40px;
}

#fh5co-photos-section2 .white-bg {
	border: 1px solid #ccc;
	padding: 40px 40px 10px;
}


#fh5co-photos-section .col-md-6 {
	padding-left: 25px;
	padding-right: 25px;
}

#fh5co-photos-section .bukken,
#fh5co-photos-section2 .bukken {
	padding: 25px 0;
	margin-bottom: 30px;
	box-sizing: border-box;
}

@media screen and (max-width: 768px) {

	#fh5co-photos-section .bukken,
	#fh5co-photos-section2 .bukken {
		padding: 0 0 25px 0;
	}
}

#fh5co-photos-section .d-area,
#fh5co-photos-section2 .d-area {
	max-width: 485px;
	text-align: right;
	margin: 10px auto;
}

#fh5co-photos-section .d-area a:hover img,
#fh5co-photos-section2 .d-area a:hover img,
div.listbtn a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}

.a-menu {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	flex-wrap: no-wrap;
	margin: 1em 25px;
	text-align: center;
	-webkit-transition: 0.8s;
	-moz-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
	cursor: pointer;
}

.a-menu .a1,
.a-menu .b1 {
	border: 1px #ccc solid;
	padding: 0.1em;
	font-size: 1.75em;
	font-weight: bold;
	width: 50%;
}

@media screen and (max-width: 480px) {

	.a-menu .a1,
	.a-menu .b1 {
		font-size: 1.25em;
	}
}

.b-menu {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	margin-bottom: 1em;
	align-items: center;
	cursor: pointer;
}

.b-menu .a1,
.b-menu .b1,
.b-menu .c1 {
	border: 1px #5c9ead solid;
	padding: 1em 0.5em;
	text-align: center;
	min-width: 31%;
	font-size: 1.2em;
	font-weight: bold;
	margin-left: 25px;
	box-sizing: border-box;
	margin-bottom: 15px;
	color: #5c9ead;
}

@media screen and (max-width: 480px) {

	.b-menu .a1,
	.b-menu .b1,
	.b-menu .c1 {
		font-size: 1.0em;
		min-width: 28%;
		margin-bottom: 0;
	}
}

.a-menu .active,
.b-menu .active {
	background-color: #5c9ead;
	color: #fff;
}


.column2 {
	text-align: center;
	overflow: hidden;
}

.column2 .item {
	display: block;
	float: left;
	width: 50%;
}

.column2 .item:nth-child(odd) {
	text-align: center;
}

.column2 .item:nth-child(even) {
	text-align: right;
}

.column1 {
	text-align: center;
}

.column1 .item {
	display: inline-block;
	width: 100%;
}


#gaiyo {
	width: 1000px;
	margin: 0 auto;
	padding: 55px 0 55px 0;
}

#gaiyo h1 {
	font-size: 2em;
	font-weight: bold;
	text-align: center;
	padding-bottom: 30px;
}

#gaiyo .style1 {
	width: 96%;
	border: 1px solid #000;
}

#gaiyo .style1 th:first-child,
#gaiyo .style1 td:first-child {
	font-size: 0.875em;
	display: table-cell;
	padding: 1% 0 1% 1%;
	line-height: 1.6;
}

#gaiyo .style1 th,
#gaiyo .style1 td {
	font-size: 0.875em;
	display: table-cell;
	padding: 0 0 1% 1%;
	line-height: 1.6;
}

#gaiyo .style1 th {
	width: 30%;
	background-color: #eef7fb;
}

#gaiyo .style1 td {
	background-color: #fff;
}

#gaiyo .office {
	width: 96%;
}

#gaiyo .office dt,
#gaiyo .office dd {
	font-size: 0.875em;
	text-align: left;
	color: #000;
	padding-top: 3%;
	line-height: 1.6;
}

#gaiyo .office dt {}

#gaiyo .office dd {
	padding-bottom: 10px;
	border-bottom: 1px dotted #000;
}

#footer {
	border-top: 1px solid #ccc;
	background-color: #fff;
}

#footer .inner {
	width: 900px;
	padding: 20px 0 20px 0;
}

#footer p {
	padding-top: 10px;
	font-size: 0.875em;
}

/*詳細
----------------------------------*/
#madorizuwrap h2,
#mapwrap h2 {
	/*	width: 360px;*/
	max-width: 360px;
	background: #353526;
	color: #fff;
	text-align: center;
	padding: 10px;
	margin-bottom: 0;
}

#madorizuwrap .madoribg {
	background: #F6F5EC;
	padding: 20px;
	box-sizing: border-box;
}

#madorizuwrap .row {
	margin: 0;
}

#detail_top img {
	max-width: 100%;
}

.gmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-left: 1px solid #ccc;
}

.gmap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

.access {
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-left: 1px solid #ccc;
	padding: 15px;
}

.access dt {
	float: left;
	width: 15%;
	font-weight: normal;
}

.access dd {
	float: left;
	width: 85%;
	margin-bottom: 5px;
}

.access dl dd::after {
	clear: both;
}

#slidewrap {
	/*	width: 70%;*/
	margin: 0 auto;
}

#slidewrap .container {
	/*width: auto;*/
}

#slidewrap img {
	/*	max-height: 700px;*/
}

/*左右の矢印の色を変える*/
#slidewrap .slick-prev:before,
#slidewrap .slick-next:before {
	color: #000 !important;
}

/*左右の矢印の位置を変える*/
#slidewrap .slick-next {
	right: 20px;
	z-index: 99;
}

#slidewrap .slick-prev {
	left: 15px;
	z-index: 100;
}

/*スライド数のドットの色を変える*/
#slidewrap .slick-dots li.slick-active button:before,
#slidewrap .slick-dots li button:before {
	color: #fff;
}

/*スライド画像の横幅可変*/
#slidewrap img {
	max-width: 100%;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

/**/

.thumb-item {
	max-width: 100%;
	margin: 0 auto 5px;
	padding: 0;
}

.thumb-item img,
.thumb-item-nav img {
	width: 100%;
}

.thumb-item-nav {
	max-width: 100%;
	margin: 0 auto;
}

.thumb-item-nav li {
	margin: 5px;
	cursor: pointer;
}

.thumb-item-nav .slick-next {
	right: 20px;
	z-index: 100;
}

.thumb-item-nav .slick-prev {
	left: 15px;
	z-index: 100;
}

.thumb-item-nav .slick-current {
	opacity: 0.5;
}

.thumb-item-nav div div div {
	cursor: pointer;
}

div.listbtn {
	padding: 0;
	margin-bottom: 50px;
}


.nhfBanner {
	text-align: center;
	padding: 0 15px 100px 15px;
}

.nhfBanner img {
	max-width: 95%;
}





/* photosセクション end */

.copy {
	margin-bottom: 23px;
}

.copy small {
	color: #1F1F1F;
}

.copy img {
	max-width: 100%;
}

.intro-link a:hover {
	color: #65B9AA;
	text-decoration: none;
}

@media screen and (max-width: 992px) {
	body {
		font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, sans-serif;
		font-size: 16px;
		line-height: 1.8;
	}

	/*
	#header1 {
	    height: 100vh;
	}
*/
	#hero {
		max-width: 100%;
		margin-top: 0px;
		margin-left: auto;
		margin-right: auto;
	}

	#hero img.responsive {
		max-width: 90%;
		margin-top: 4rem;
		margin-left: auto;
		margin-right: auto;
	}

	.blk-border img {
		max-width: 90%;
		margin-left: auto;
		margin-right: auto;
	}

	.intro-heading {
		font-size: 160%;
	}

	#fh5co-services-section .heading-section h2 {
		font-size: 160%;
	}

	#fh5co-services-section .border-bk {
		border: none;
	}

	#fh5co-counters .heading-section h2 {
		font-size: 2rem;
	}
}

@media screen and (max-width: 768px) {
	#slidewrap .thumb-item img {
		max-width: 100%;
		/*  height: 480px;*/

	}

	div.listbtn {
		margin-top: -20px;
		margin-bottom: 30px;
	}

	div.listbtn img {
		max-width: 100%;
	}

}

@media screen and (max-width: 480px) {

	/*	#header1 {
	    height: 110vh;
	}
*/
	.g01,
	.g02 {
		min-height: 320px;
	}

	#fh5co-services-section .border-bk {
		padding: 1em;
	}

	#fh5co-photos-section .white-bg {
		padding: 1em;
	}

	#fh5co-photos-section .col-md-6 {
		padding-left: 15px;
		padding-right: 15px;
	}

	.b-menu .a1,
	.b-menu .b1,
	.b-menu .c1 {
		margin-left: 15px;
	}

	.a-menu {
		margin: 1em 15px;
	}

	#slidewrap .thumb-item img {
		max-width: 100%;
		/* height: 230px; */
	}

	.access dt,
	.access dd {
		float: none;
		width: 100%;
		text-align: left;
	}

}






@media screen and (max-width: 1024px) {

	#gaiyo {
		width: auto;
		margin: 0 auto;
		padding: 20px 0 20px 0;
	}

	#gaiyo h1 {
		font-size: 1.5em;
		padding: 10px 0;
		padding-bottom: 10px;
	}

	#gaiyo .style1 {
		width: 96%;
		margin: 10px auto;
		border: 1px solid #000;
	}

	#gaiyo .style1 th,
	#gaiyo .style1 td {
		width: auto;
		font-size: 0.875em;
		display: block;
		padding: 5px;
		line-height: 1.6;
		text-align: left;
	}

	#gaiyo .style1 th {
		background-color: #eef7fb;
	}

	#gaiyo .style1 td {
		background-color: #fff;
	}

	#gaiyo .office {
		width: 96%;
		margin: 10px auto;
	}

	#gaiyo .office dt,
	#gaiyo .office dd {
		font-size: 0.875em;
		text-align: left;
		color: #000;
		padding-top: 2%;
		line-height: 1.6;
	}

	#gaiyo .office dt {}

	#gaiyo .office dd {
		border-bottom: 1px dotted #000;
	}


	#footer {
		width: auto;
		border-top: 1px solid #ccc;
		background-color: #fff;
		padding-bottom: 80px;
	}

	#footer .inner {
		width: auto;
		padding: 20px 10px;
	}

	#footer p {
		padding-top: 10px;
		font-size: 0.875em;
	}

}


@media screen and (max-width: 768px) {

	.column3 {
		text-align: center;
	}

	.column3 .item {
		display: block;
		width: auto;
	}

	.column2 {
		text-align: center;
	}

	.column2 .item {
		display: block;
		float: none;
		width: auto;
	}

	.column2 .item:nth-child(odd) {
		text-align: center;
	}

	.column2 .item:nth-child(even) {
		text-align: center;
	}

	.column1 {
		text-align: center;
	}

	.column1 .item {
		display: block;
		width: auto;
	}

	#gaiyo {
		width: auto;
		margin: 0 auto;
		padding: 20px 0 20px 0;
	}

	#gaiyo h1 {
		font-size: 1.5em;
		padding: 10px 0;
		padding-bottom: 10px;
	}

	#gaiyo .style1 {
		width: 96%;
		margin: 10px auto;
		border: 1px solid #000;
	}

	#gaiyo .style1 th,
	#gaiyo .style1 td {
		width: auto;
		font-size: 0.875em;
		display: block;
		padding: 5px;
		line-height: 1.6;
		text-align: left;
	}

	#gaiyo .style1 th {
		background-color: #eef7fb;
	}

	#gaiyo .style1 td {
		background-color: #fff;
	}

	#gaiyo .office {
		width: 96%;
		margin: 10px auto;
	}

	#gaiyo .office dt,
	#gaiyo .office dd {
		font-size: 0.875em;
		text-align: left;
		color: #000;
		padding-top: 2%;
		line-height: 1.6;
	}

	#gaiyo .office dt {}

	#gaiyo .office dd {
		border-bottom: 1px dotted #000;
	}


	#footer {
		width: auto;
		border-top: 1px solid #ccc;
		background-color: #fff;
		padding-bottom: 0;
	}

	#footer .inner {
		width: auto;
		padding: 20px 0 20px 0;
	}

	#footer p {
		padding-top: 10px;
		font-size: 0.875em;
	}

	#madorizuwrap img {
		width: 100%;
	}

	#madorizuwrap .floor img {
		max-width: 134px;
		margin-left: auto;
		margin-right: auto;
	}

	#madorizuwrap .align-l,
	#madorizuwrap .align-r {
		text-align: center;
	}
}


#header1 {
	/* background-color: rgba(0, 0, 0, 0.4) !important; */
	height: 840px;
}

@media screen and (max-width: 1024px) {
	#header1 {
		height: 880px;
	}
}

@media screen and (max-width: 768px) {
	header .fh5co-navbar-brand {
		width: 100%;
		margin: 0 auto;
	}

	header .fh5co-navbar-brand h1 {}

	header .fh5co-navbar-brand h1 img {
		width: 55%;
	}

	#header1 {
		height: 810px;
	}
}

@media screen and (max-width: 640px) {
	#header1 {
		height: 760px;
	}
}

@media screen and (max-width: 480px) {
	#header1 {
		height: 660px;
	}
}

@media screen and (max-width: 320px) {
	#header1 {
		height: 610px;
	}
}

.openhouse {
	background-color: #f3f3f3;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, sans-serif;
}

.openhouse p,
.openhouse h3,
.openhouse h4 {
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, sans-serif;
}

.openhouse-outer {
	padding: 8rem 0;
}

@media screen and (max-width: 768px) {
	.openhouse-outer {
		padding: 11vw 0;
	}
}

.openhouse-inner {
	width: 150rem;
	max-width: 100%;
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
	.openhouse-inner {
		padding: 0 2.6vw;
	}
}

.openhouse-title {
	width: 70rem;
	max-width: 100%;
	margin: 0 auto 4rem;
}

@media screen and (max-width: 768px) {
	.openhouse-title {
		width: 100%;
		padding: 0 6vw;
		margin: 0 auto 5.3vw;
	}
}

.openhouse-title img {
	width: 100%;
	height: auto;
}

.openhouse-container {
	background-color: #fff;
	border-top: 7px solid #5c9ead;
	border-bottom: 7px solid #5c9ead;
	padding: 6rem 5rem 8rem;
	margin: 0 0 12rem;
}

@media screen and (max-width: 768px) {
	.openhouse-container {
		border-top: .9vw solid #5c9ead;
		border-bottom: .9vw solid #5c9ead;
		padding: 8vw 1.33vw 10.6vw;
		margin: 0 0 16vw;
	}
}

.openhouse-container:nth-last-of-type(1) {
	margin: 0;
}

.openhouse-date {
	width: 67.2rem;
	max-width: 100%;
	height: auto;
	margin: 0 auto 2rem;
	position: relative;
}

@media screen and (max-width: 768px) {
	.openhouse-date {
		width: 82.666vw;
		margin: 0 auto 2.66vw;
	}
}

.openhouse-date img {
	width: 100%;
	height: auto;
	transform: translate(-5rem, 0);
}

@media screen and (max-width: 768px) {
	.openhouse-date img {
		transform: translate(0, 0);
	}
}

.openhouse-end {
	width: 39.3rem;
	height: 8.6rem;
	display: inline-block;
	background: no-repeat center/100% url(../images/openhouse/openhouse_ribbon.png);
	position: absolute;
	top: -3.5rem;
	right: -15rem;
	transform: rotate(20deg);
}

@media screen and (max-width: 768px) {
	.openhouse-end {
		width: 13.72rem;
		height: 3.44rem;
		top: -2rem;
		right: -2rem;
		transform: rotate(10deg);
	}
}

.openhouse-end-text {
	color: #333;
	font-size: 4rem;
	padding: 0 2rem;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.openhouse-end-text {
		font-size: 1.28rem;
	}
}

.openhouse-address-box {
	text-align: center;
}

.openhouse-address {
	color: #fff;
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 6rem;
	letter-spacing: .08em;
	background-color: #efd670;
	width: 64rem;
	max-width: 100%;
	display: inline-block;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.openhouse-address {
		font-size: 3.466vw;
		line-height: 8vw;
		width: 85.3vw;
	}
}

.openhouse-address::before {
	content: '';
	width: 2.5rem;
	height: 3.3rem;
	margin: 0 1rem 0 0;
	display: inline-block;
	background: no-repeat center/100% url(../images/openhouse/map_marker.png);
	transform: translate(0, .5rem);
}

@media screen and (max-width: 768px) {
	.openhouse-address::before {
		width: 3.33vw;
		height: 4.4vw;
		margin: 0 1.33vw 0 0;
		transform: translate(0, .66vw);
	}
}

.openhouse-content-title {
	font-size: 3.8rem;
	letter-spacing: .08em;
	font-weight: 700;
	text-align: center;
	margin: 0 0 4rem;
}

@media screen and (max-width: 768px) {
	.openhouse-content-title {
		font-size: 4.13vw;
		line-height: 6.66vw;
		margin: 0 0 5.33vw;
	}
}

.openhouse-img-box {
	width: 100%;
	margin: 0 0 12rem;
	position: relative;
}

@media screen and (max-width: 768px) {
	.openhouse-img-box {
		margin: 0 0 9.33vw;
	}
}

.openhouse-main-img {
	width: 100%;
	height: auto;
}

.openhouse-sub-img-box {
	width: 54.4rem;
	position: absolute;
	bottom: -12rem;
	left: -3rem;
}

@media screen and (max-width: 768px) {
	.openhouse-sub-img-box {
		width: 40vw;
		bottom: -9.33vw;
		left: -3.33vw;
	}
}

.openhouse-sub-img {
	width: 100%;
}

.openhouse-01 .openhouse-sub-img-box {
	width: 70rem;
}

@media screen and (max-width: 768px) {
	.openhouse-01 .openhouse-sub-img-box {
		width: 50vw;
	}
}

.openhouse-02 .openhouse-sub-img-box {
	width: 62rem;
}

@media screen and (max-width: 768px) {
	.openhouse-02 .openhouse-sub-img-box {
		width: 43.75vw;
	}
}

.openhouse-middle {
	padding: 0 10rem;
}

@media screen and (max-width: 768px) {
	.openhouse-middle {
		padding: 0 2.66vw;
	}
}

.openhouse-point-container {
	padding: 0 0 2rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

@media screen and (max-width: 768px) {
	.openhouse-point-container {
		padding: 0 0 2.66vw;
		display: block;
	}
}

.openhouse-point-list {
	width: calc(50% - 7rem);
}

@media screen and (max-width: 768px) {
	.openhouse-point-list {
		width: 100%;
	}
}

.openhouse-point-num {
	width: 10.7rem;
}

@media screen and (max-width: 768px) {
	.openhouse-point-num {
		width: 17.46vw;
		margin: 0 0 1.33vw;
	}
}

.openhouse-point-num img {
	width: 100%;
}

.openhouse-point-text {
	font-size: 1.8rem;
	line-height: 3.8rem;
	letter-spacing: .08em;
	font-weight: 500;
	margin: 0 0 2rem;
}

@media screen and (max-width: 768px) {
	.openhouse-point-text {
		font-size: 3.6vw;
		line-height: 5.06vw;
		margin: 0 0 2.66vw;
	}
}

.openhouse-map-box {
	width: 100%;
	height: 31.3rem;
	margin: 0 0 2rem;
}

@media screen and (max-width: 768px) {
	.openhouse-map-box {
		width: 80vw;
		height: 35.2vw;
		margin: 0 auto 2.66vw;
	}
}

.openhouse-map {
	width: 100%;
	height: 100%;
}

.openhouse-map-link-box {
	text-align: right;
	margin: 0 0 4.5rem;
}

@media screen and (max-width: 768px) {
	.openhouse-map-link-box {
		width: 80vw;
		margin: 0 auto 10.66vw;
	}
}

.openhouse-map-link {
	color: #5c9ead;
	font-size: 1.6rem;
	line-height: 2.3rem;
	font-weight: 500;
	width: 27.4rem;
	padding: .5rem 0;
	display: inline-block;
	border: 2px solid #5c9ead;
	text-align: center;
	position: relative;
}

@media screen and (max-width: 768px) {
	.openhouse-map-link {
		font-size: 3.8vw;
		line-height: 3.06vw;
		width: 43vw;
		padding: 1vw 0;
		border: 1px solid #5c9ead;
	}
}

.openhouse-map-link::after {
	content: '';
	width: .8rem;
	height: 1.2rem;
	display: inline-block;
	border-top: .6rem solid transparent;
	border-right: 0rem solid transparent;
	border-bottom: .6rem solid transparent;
	border-left: .8rem solid #5c9ead;
	position: absolute;
	top: 50%;
	right: 2rem;
	transform: translate(0, -50%);
	transition: all .5s ease;
}

@media screen and (max-width: 768px) {
	.openhouse-map-link::after {
		width: 1.06666vw;
		height: 1.6vw;
		border-top: .8vw solid transparent;
		border-right: 0vw solid transparent;
		border-bottom: .8vw solid transparent;
		border-left: 1.06666vw solid #5c9ead;
		right: 2.66vw;
	}
}

.openhouse-map-link:hover {
	color: #fff;
	background-color: #5c9ead;
	text-decoration: unset;
}

.openhouse-map-link:hover::after {
	border-left: .8rem solid #fff;
	right: 1rem;
}

@media screen and (max-width: 768px) {
	.openhouse-map-link:hover::after {
		border-left: 1.06666vw solid #fff;
		right: 1.33vw;
	}
}

.openhouse-bottom {
	text-align: center;
}

.openhouse-contact-link {
	color: #fff;
	font-size: 2.5rem;
	line-height: 8.5rem;
	letter-spacing: .08em;
	font-weight: 700;
	width: 54.7rem;
	background-color: #5c9ead;
	border: 3px solid #5c9ead;
	display: inline-block;
	border-radius: 1rem;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.openhouse-contact-link {
		font-size: 3.33vw;
		line-height: 11.33vw;
		width: 72.93vw;
		border-radius: 1.33vw;
	}
}

.openhouse-contact-link:hover {
	color: #5c9ead;
	background-color: #fff;
	text-decoration: unset;
}

.openhouse-floor {
	margin: 0 auto 2rem;
	text-align: center;
}

.openhouse-floor-img {
	width: 80%;
}

@media screen and (max-width: 768px) {
	.openhouse-floor-img {
		width: 100%;
	}
}


/* 
* movie-bn
*----------------------------*/
.movie-bn {
	color: #000;
	background-color: #f3f3f3;
	padding: 14rem;
}

.movie-bn p {
	color: #000;
}

.movie-bn img {
	margin: 0 auto 20px;
}

.movie-bn_inner {
	width: 100%;
	max-width: 145rem;
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
	.movie-bn {
		padding: 3rem 2.5rem 5.5rem;
	}
}

.modelhouse__bn-desc {
	background-color: #fff;
}

.modelhouse__bn-desc_inner {
	width: 100%;
	max-width: 1200px;
	padding: 3% 5% 5%;
	margin: 0 auto;
}

.modelhouse__bn-title {
	color: #000;
	font-size: 2.4rem;
	line-height: 1.6;
	font-weight: bold;
	letter-spacing: .1em;
	text-align: center;
	padding: 3.5%;
	margin: 0 auto 4rem;
	position: relative;
}

.modelhouse__bn-title::after {
	content: '';
	width: 50rem;
	max-width: 90%;
	height: 2px;
	display: inline-block;
	background: #c80a14;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
}

.modelhouse__bn-notice {
	color: #727272 !important;
	font-size: 1.4rem;
	line-height: 1.6;
	margin: 0 auto 1rem;
}

.modelhouse__bn-text {
	font-size: 1.8rem;
	line-height: 1.6;
}

.modelhouse__bn-data {
	padding: .5rem 0;
	display: flex;
}

.modelhouse__bn-dataterm {
	width: 18%;
}

.modelhouse__bn-datadesc {
	width: 82%;
}

.modelhouse__bn-dataterm {
	font-weight: bold;
}

.modelhouse__bn-subtitle {
	color: #5c9ead !important;
	font-size: 2.4rem;
	font-weight: bold;
}

.modelhouse__bn-flex {
	display: flex;
}

.modelhouse__bn-subimg {
	width: 165px;
	padding-left: 15px;
}

@media screen and (max-width: 959px) {
	.modelhouse__bn-title {
		font-size: 4.1vw;
	}

	.modelhouse__bn-title::after {
		width: 60rem;
		padding: 0 2rem;
	}

	.modelhouse__bn-text {
		font-size: 3.5vw;
	}

	.modelhouse__bn-notice {
		font-size: 2.8vw;
	}

	.modelhouse__bn-data {
		padding: 1rem 0;
		flex-direction: column;
	}

	.modelhouse__bn-dataterm {
		width: 100%;
	}

	.modelhouse__bn-datadesc {
		width: 100%;
	}

	.modelhouse__bn-subtitle {
		font-size: 3.9vw;
	}

	.modelhouse__bn-flex {
		flex-direction: column;
		align-items: center;
	}

	.modelhouse__bn-subimg {
		width: 30vw;
		padding: 0;
	}
}

.fv_banner {
	position: absolute;
	top: 0;
	right: 0%;
	width: 210px;
}

@media screen and (max-width: 1360px) {
	.fv_banner {
		right: 5%;
	}
}

@media screen and (max-width: 991px) {
	.fv_banner {
		right: 0;
	}
}

@media screen and (max-width: 768px) {
	.fv_banner {
		width: 35%;
		top: 5%;
		right: -1%;
	}
}

.fv_banner img {
	max-width: 100%;
}

.event-banner {
	width: 100%;
	max-width: 1240px;
	padding: 5rem 2rem 2rem;
	margin: 0 auto;
}

/* utility */

.mb-3em {
	margin-bottom: 3em;
}

.fw-bold {
	font-weight: bold;
}

.fc-black {
	color: #000;
}

.bg-yellow {
	background: #ffff00;
}

.bb-1px-black {
	border-bottom: 1px solid #000;
}