@charset "utf-8";

/* ========================================================================================

Name: design.css

Description: Base Design And Common Settings

Update: 2020.03.13

======================================================================================== */

/* fonts
-------------------------------------------------- */
@import url('https://fonts.googleapis.com/css?family=Roboto:400,500,600&display=swap');
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500,600,700&display=swap&subset=japanese');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&display=swap');

/* 全体共通
-------------------------------------------------- */
html {
	height:100%;
}

body {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", sans-serif;
	-webkit-text-size-adjust:100%;
	font-size:15px;
	font-weight:400;
	line-height:1.75em;
	color: #000000;
	text-align:center;
	height:100%;
	position:relative;
	overflow-x: hidden;
	height:100%;
	background-color:#ffffff;
}
a {
	color: #333333;
	overflow: hidden;
	outline: none;
	text-decoration:none;
	transition:all ease-out 0.3s;
	transition: 0.50s cubic-bezier(0.19, 1, 0.22, 1);
}

a:hover {
	color:#84770b;
	text-decoration: none;
	transition:all ease-out 0.3s;
	transition: 0.50s cubic-bezier(0.19, 1, 0.22, 1);
}

a:hover img {
	opacity:0.8;
	transition: 0.50s cubic-bezier(0.19, 1, 0.22, 1);
}

*:hover {
	transition: 0.50s cubic-bezier(0.19, 1, 0.22, 1);
}

.link_txt a {
	color: #cc0000;
	overflow: hidden;
	outline: none;
	text-decoration:underline;
}

.link_txt a:hover {
	color: #cc0000;
	text-decoration:none;
}

.clearfix:after {
	content: "."; display: block; clear: both; height: 0; line-height: 0; font-size: 0; visibility: hidden;
}

.clearfix {
	_height: 1px; min-height: 1px;
	*zoom: 1;
}

* html .clearfix {
	height: 1%;
	display: inline-block;
}

.rollover:hover{
	opacity:0.7;
	filter: alpha(opacity=70);
}

/* IE8以下でレイアウトが大崩れしないように */
header,
footer,
main,
article,
section,
aside {
	display:block;
}

i.fas {
	margin-right:5px;
}

i.fa-external-link-alt {
	margin-left:5px;
	font-size:85%;
	color:#ba1b2d;
}


.font-roboto {
	font-family: 'Roboto', sans-serif;
}

.font-Noto-Serif {
	font-family: 'Noto Serif JP', serif;
}

.font-yumin {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

i.far {
	margin:0 5px;
}

.comingsoon a {
	pointer-events: none;
}

@media screen and (min-width: 768px){
	
	a[href*="tel:"] {
		display:inline-block;
		line-height:1.33em;
		pointer-events: none;
		margin-bottom:-3px;
		text-decoration:none;
		color:#000 !important;
	}
	
}






/* ========================================================================================

 SmartPhone
 
======================================================================================== */
@media screen and (max-width: 767px){
	
	html {
		height:100%;
	}
	
	body {
		-webkit-text-size-adjust:100%;
		font-size:13px;
		line-height:1.67em;
		height:100%;
		position:relative;
	}
	
}




/* HEADER
-------------------------------------------------- */

header {
	position:fixed;
	left:0;
	right:0;
	top:0;
	width:auto;
	color:#ffffff;
	font-size:16px;
	z-index:300;
	transition:all ease-out 0.3s;
}

.scrolled header {
	transition:all ease-out 0.3s;
	background-color:rgba(255,255,255, 0.8);
}

.ctg-home.scrolled header {
	background-color:rgba(0,0,0, 0.6);
}

header > .inner {
	position:relative;
	margin:0 80px;
	height:140px;
}

#header-logo {
	position:absolute;
	left:0;
	top:49px;
	width:322px;
	height:46px;
}

#header-logo img {
	width:100%;
	height:auto;
}

#btn-hamburger {
	display:none;
}

header nav {
	position:absolute;
	display:flex;
	right:0;
	top:45px;
}

header nav > ul {
	display:flex;
}

header nav > ul.nav-global li {
	margin:0 10px;
}

header nav > ul.nav-global a {
	display:block;
	position:relative;
	padding:10px;
}

header nav > ul.nav-global a:after {
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	width:0;
	height:3px;
	background-color:#84770b;
	transition: 0.50s cubic-bezier(0.19, 1, 0.22, 1);
}

header nav > ul.nav-global a:hover:after { width:100%; }


header nav > ul.nav-global a i {
	display:none;
}

/* toppage setting */

.ctg-home header nav > ul.nav-global a {
	color:#ffffff;
}



header nav > ul.nav-global > li > ul {
	display:none;
}

header nav > ul.nav-sns {
	padding-left:30px;
	margin-top:10px;
}

header nav > ul.nav-sns li {
	margin:0 10px;
}

header nav > ul.nav-sns a {
	display:block;
}
.nav-sns a {
	color:#ba1b2d;
	font-size:20px;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	
}

@media screen and (max-width: 767px){
	
	header {
		position:fixed;
		left:0;
		right:0;
		top:0;
		width:auto;
		font-size:16px;
	}
	
	header > .inner {
		position:relative;
		margin:0;
		padding:0;
		height:57px;
	}
	
	#header-logo {
		position:absolute;
		left:20px;
		top:16px;
		width:200px;
		height:auto;
	}
	
	#btn-hamburger {
		position:absolute;
		display:block;
		width:30px;
		height:20px;
		right:20px;
		top:20px;
	}
	
	#btn-hamburger span {
		position:absolute;
		display:block;
		width:30px;
		height:2px;
		background-color:#84770b;
		left:0;
	}

	.ctg-home #btn-hamburger span {
		background-color:#ffffff;
		transition:all ease-out 0.1s;
	}
	body.menu-open #btn-hamburger span {
		background-color:#84770b;
		transition:all ease-out 0.3s;
	}
	
	#btn-hamburger span:nth-child(1) {
		top:0;
	}
	
	#btn-hamburger span:nth-child(2) {
		top:9px;
	}
	
	#btn-hamburger span:nth-child(3) {
		top:18px;
	}
	
	body.menu-open #btn-hamburger span:nth-child(1) {
		top:9px;
		transform:rotate(40deg);
	}
	
	body.menu-open #btn-hamburger span:nth-child(2) {
		opacity:0;
	}
	
	body.menu-open #btn-hamburger span:nth-child(3) {
		top:9px;
		transform:rotate(-40deg);
	}
	
	body:not(.ctg-home) #header-logo {
		background:url(../img/common/logo_white.png) no-repeat;
		background-size:100% auto;
	}
		
	header nav {
		position:absolute;
		display:block;
		left:0;
		right:0;
		top:57px;
		text-align:left;
		/*
		background-color:transparent;
		*/
		display:none;
	}
	
	body:not(.ctg-home).menu-open #header-logo img {
		opacity:0;
	}
	
	body.menu-open header#page-header ,
	body.menu-open header#page-header > .inner {
		height:100%;
		overflow:scroll;
	}

	body.menu-open header#page-header > .inner {
		background-color:#000000;
	}

	body.menu-open header nav {
		display:block;
	}
	
	header nav > ul {
		display:block;
		padding-top:0;
	}
	
	header nav > ul.nav-global {
		border-top:1px #84770b solid;
	}
	
	header nav > ul.nav-global li {
		margin:0;
	}
	
	header nav > ul.nav-global a {
		display:block;
		color:#ffffff;
		position:relative;
		padding:10px 30px 10px 30px;
	}
	
	header nav > ul.nav-global .has-subnavi a {
		pointer-events: none;
	}
	
	header nav > ul.nav-global > li > a {
		padding:15px 30px 15px 30px;
		font-size:18px;
	}
	
	header nav > ul.nav-global a:after {
		display:none;
	}
	
	header nav > ul.nav-global a:hover:after {
		display:none;
	}
	
	header nav > ul.nav-global a i {
		display:inline-block;
		float:right;
		color:#84770b;
		font-size:16px;
	}
	
	header nav > ul.nav-global > li {
		border-bottom:1px #84770b solid;
	}
	
	header nav > ul.nav-global > li > ul {
		display:block;
	}
	
	header nav > ul.nav-global > li > ul > li {
		margin:0 0 0 20px;
	}
	
	header nav > ul.nav-sns {
		padding-left:30px;
		padding-bottom:30px;
		margin-top:20px;
		text-align:left;
	}
	
	header nav > ul.nav-sns li {
		margin:0 30px 0 0;
		display:inline-block;
	}
	
	header nav > ul.nav-sns a {
		display:block;
	}
	
	.nav-sns a {
		color:#ba1b2d;
		font-size:24px;
	}
	
	.ctg-home header nav > ul.nav-global a {
		color:#ffffff;
	}
		
	
}


/* FOOTER AREA
-------------------------------------------------- */

footer {
}

.ft-contact-info {
	color:#ffffff;
	background-color:#584c06;
	padding:60px 20px;
}

.ft-contact-info > ul {
	display:flex;
	max-width:1500px;
	margin:0 auto;
}

.ft-contact-info > ul > li {
	width:50%;
	font-size:18px;
	line-height:1.5em;
}

.ft-contact-info > ul > li.contact-email {
	border-left: 1px #84770b solid;
}

.ft-contact-info > ul > li > span {
	font-size:32px;
	line-height:1em;
	display:block;
}

.ft-contact-info dl {
	margin-top:20px;
}

.ft-contact-info dt {
	font-weight:500;
}

.ft-contact-info dd {
	margin-top:20px;
}

.ft-contact-info li.contact-phone dd {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size:40px;
	line-height:1em;
}

.ft-contact-info li.contact-phone dd a {
	display:inline;
	color:#ffffff !important;
	font-weight:600;
	line-height:1em;
	margin:0;
}

.ft-contact-info p.text-note {
	font-size:15px;
	margin-top:10px;
}

.ft-contact-info .button a {
	background-color:#ffffff;
	color:#84770b;
}

.ft-contact-info .button a:hover {
	background-color:#84770b;
	color:#ffffff;
}

footer > .inner {
	box-sizing:border-box;
	width:auto;
	max-width:1240px;
	margin:auto;
	padding:50px 20px 50px;
	position:relative;
	display:flex;
	align-items: center;
}

footer > .inner > * {
	width:50%;
	text-align:left;
}

footer > .inner > p {
	text-align:right;
}



@media screen and (min-width: 768px) and (max-width: 1000px){
	
	
}

@media screen and (max-width: 767px){
	
	footer {
	}
	
	.ft-contact-info {
		color:#ffffff;
		background-color:#584c06;
		padding:30px 10px;
	}
	
	.ft-contact-info > ul {
		display:flex;
		max-width:1500px;
		margin:0 auto;
	}
	
	.ft-contact-info > ul > li {
		width:50%;
		font-size:12px;
		line-height:1.5em;
	}
	
	.ft-contact-info > ul > li.contact-email {
		border-left: 1px #84770b solid;
	}
	
	.ft-contact-info > ul > li > span {
		font-size:16px;
		line-height:1em;
		display:block;
	}
	
	.ft-contact-info dl {
		margin-top:10px;
	}
	
	.ft-contact-info dt {
		font-weight:500;
	}
	
	.ft-contact-info dd {
		margin-top:10px;
	}
	
	.ft-contact-info li.contact-phone dd {
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
		font-size:16px;
		line-height:1em;
	}
	
	.ft-contact-info li.contact-phone dd a {
		display:inline;
		color:#ffffff !important;
		font-weight:600;
		line-height:1em;
		margin:0;
	}
	
	.ft-contact-info p.text-note {
		font-size:10px;
		margin-top:5px;
	}
	
	.ft-contact-info .button a {
		background-color:#ffffff;
		color:#84770b;
		width:auto;
		margin:0 0 0 10px;
		padding:10px;
	}
	
	.ft-contact-info .button a:hover {
		background-color:#84770b;
		color:#ffffff;
	}
	
	footer > .inner {
		box-sizing:border-box;
		width:auto;
		max-width:1240px;
		margin:auto;
		padding:30px 20px 20px;
		position:relative;
		display:block;
	}
	
	footer > .inner > * {
		width:100%;
		text-align:center;
	}
	
	#footer-logo {
		width:200px;
		margin:0 auto;
	}
	#footer-logo img {
		width:100%;
		height:auto;
	}
	
	footer > .inner > p {
		text-align:center;
		margin-top:5px;
	}
	
}



/* FLOOTING BUTTON
-------------------------------------------------- */

#flooting-button {
	position:fixed;
	top:220px;
	right:0;
	z-index:100;
}

#flooting-button li {
}

#flooting-button li a {
	display:block;
	color:#ffffff;
	writing-mode: vertical-rl;
	letter-spacing:0.1em;
	padding:20px 15px 30px;
}

#flooting-button li a:hover {
	opacity:0.8;
}

#flooting-button li.btn-estate a {
	background-color:#84770b;
}

#flooting-button li.btn-contact a {
	background-color:#000;
}

#flooting-button li a i.fas {
	padding-bottom:10px;
	height:20px;
}


@media screen and (max-width: 767px){
	
	#flooting-button {
		position:fixed;
		top:inherit;
		left:0;
		right:0;
		bottom:0;
		z-index:100;
	}

	#flooting-button ul {
		display:flex;
	}
	
	#flooting-button li {
		width:50%;
	}
	
	#flooting-button li a {
		display:block;
		color:#ffffff;
		writing-mode: vertical-rl;
		writing-mode: inherit;
		letter-spacing:0.1em;
		padding:18px 15px;
		line-height:1em;
	}
	
	#flooting-button li a:hover {
		opacity:0.8;
	}
	
	#flooting-button li.btn-estate a {
		background-color:#84770b;
	}
	
	#flooting-button li.btn-contact a {
		background-color:#000;
	}
	
	#flooting-button li a i.fas {
		padding-bottom:0;
		height:auto;
	}
	
}


/* BASE LAYOUT and COMMON PARTS
-------------------------------------------------- */

body > .inner {
	overflow:hidden;
	position:relative;
}

main {
	margin-top:140px;
	position:relative;
}

main article a ,
main aside a {
	color:#000000;
}

main a {
	color:#ba1b2d;
	text-decoration:none;
}

.page-heading.type-normal {
	padding:70px 0 0;
}

.ttl-sytle02_2 ,
.page-heading.type-normal h1 {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size:36px;
	line-height:1.5em;
	font-weight:400;
	padding:0;
	position:relative;
	text-align:center;
}


.page-contents {
	width:auto;
	padding:70px 0 100px;
}

.page-contents.has-googlemap {
	padding:70px 0 0;
	background:url(../img/index/bg_01.jpg) no-repeat right top -300px, url(../img/index/bg_02.jpg) no-repeat left top 260px;
}

.page-contents > .inner {
	width:auto;
}

.page-contents.wide > .inner {
	max-width:none;
	padding:0;
}

.page-contents.column-2 > .inner {
	position:relative;
}

.page-contents.column-2 .side-navi {
	width:300px;
	float:right;
	/*
	position:absolute;
	right:0;
	top:0;
	*/
}

.side-navi ul {
	text-align:left;
	border:1px #cccccc;
	border-style:solid none none none;
}

.side-navi li {
	border:1px #cccccc;
	border-style:none solid solid solid;
}

.side-navi li a {
	display:block;
	padding:25px 10px 22px 20px;
}

.side-navi li.navi-ctg-home a {
	display:block;
	padding:35px 10px 32px 20px;
	color:#ffffff;
	background-color:#000000;
}

.side-navi li a i {
	float:right;
	line-height:2em;
	color:#ba1b2d;
}

.page-contents.column-2 .left-side {
	float:left;
	max-width:840px;
	text-align:left;
	overflow:hidden;
}


/* TITLE */

.ttl-sytle02_1 {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size:40px;
	line-height:1.5em;
	font-weight:400;
	padding:0;
	position:relative;
	text-align:left;
}




/* BOX */

.sec-contents-base {
	width:auto;
	max-width:1200px;
	margin:110px auto 0;
	text-align:left;
}

.sec-contents-wide {
	width:auto;
	margin:110px auto 0;
	text-align:left;
}

/* BUTTON */

.button {
}

.button a {
	display:block;
	color:#ffffff;
	font-size:16px;
	font-weight:600;
	line-height:1.25em;
	background-color:#84770b;
	text-decoration:none;
	box-sizing:border-box;
	padding:25px 25px;
	text-align:center;
	width:300px;
	margin:auto;
}

.button a i {
	float:right;
}

.button a:hover {
	background-color:#000000;
}


/* TABLE */

.tbl-common01 {
	width:100%;
	border-collapse:collapse;
	margin-top:30px;
}

.tbl-common01 a {
	color:#ba1b2d;
}

.tbl-common01 caption {
	text-align:left;
	font-size:20px;
	font-weight:600;
	line-height:1.5em;
	margin-bottom:10px;
}

.tbl-common01 th,
.tbl-common01 td {
	border:1px #ccc;
	border-style:solid none;
	padding:15px 30px;
	box-sizing:border-box;
}

.tbl-common01 th {
	text-align:center;
	width:25%;
	background-color:#f8f9f2;
	text-align:left;
}

.ctg-party .tbl-common01 th {
	width:33%;
}

.ctg-party .tbl-common01 {
	margin-top:50px;
}

.ctg-party .tbl-common01 caption {
	margin-bottom:15px;
}


/* LIST */

.list-100per {
	display:flex;
	flex-wrap: wrap;
	width:auto;
	margin:0;
}

.list-100per li {
	box-sizing:border-box;
	width:100%;
	padding:0;
	margin-top:40px;
}

.list-50per {
	display:flex;
	flex-wrap: wrap;
	width:auto;
	margin:0 -22.5px;
}

.list-50per li {
	box-sizing:border-box;
	width:50%;
	padding:0 22.5px;
	margin-top:40px;
}

.list-33per {
	display:flex;
	flex-wrap: wrap;
	width:auto;
	margin:0 -22.5px;
}

.list-33per li {
	box-sizing:border-box;
	width:33.33%;
	padding:0 22.5px;
	margin-top:40px;
}

.list-25per {
	display:flex;
	flex-wrap: wrap;
	width:auto;
	margin:0 -20px;
}

.list-25per li {
	box-sizing:border-box;
	width:25%;
	padding:0 20px;
	margin-top:30px;
}

.list-caption {
	font-size:18px;
	font-weight:600;
	line-height:1.5em;
	margin-top:18px;
}

/* TEXT */

.text-note {
	font-size:13px;
	line-height:1.5em;
}

.text-lead-01 {
	text-align:left;
	font-size:30px;
	font-weight:500;
	line-height:1.67em;
	margin-top:60px;
}

.text-lead-02 {
	text-align:left;
	font-size:18px;
	font-weight:500;
	line-height:1.67em;
	margin-top:0;
}

/* definition */

dl.txt-photo-definition {
}

dl.txt-photo-definition dt {
}

dl.txt-photo-definition dd {
}


/* BACKBGROUND */

.has-bg-triangle:before {
	position:absolute;
	left:-400px;
	top:0;
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 600px 600px 0 600px;
	border-color: #f8f9f2 transparent transparent transparent;
	z-index:-2;
}

.has-bg-triangle:after {
	position:absolute;
	right:0;
	bottom:1000px;
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 300px 300px 300px 0;
	border-color: transparent #f8f9f2 transparent transparent;
	z-index:-2;
}

.has-bg-triangle main:before {
	position:absolute;
	left:0;
	top:160px;
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 100px 0 100px 100px;
	border-color: transparent transparent transparent #ba1b2d;
	z-index:-1;
}

.has-bg-triangle main:after {
	position:absolute;
	right:0;
	bottom:900px;
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 100px 100px 100px 0;
	border-color: transparent #ba1b2d transparent transparent;
	z-index:-1;
}


/* LINE */

.has-underline01 {
	border-bottom: 1px #cccccc solid;
	padding-bottom:10px;
}



@media screen and (min-width: 768px) and (max-width: 1000px){
	
}

@media screen and (max-width: 767px){
	
	body > .inner {
		overflow:hidden;
		position:relative;
		padding-bottom:49px;
	}
	
	main {
		/*background-color:#fff;*/
		margin-top:57px;
		padding-bottom:25px;
		position:relative;
	}
	
	.ctg-home main {
		padding-bottom:0;
	}
	
	main article a ,
	main aside a {
		color:#000000;
	}
	
	main a {
		color:#ba1b2d;
		text-decoration:none;
	}
	
	.page-heading.type-normal {
		padding:30px 0 0;
	}
	
	.ttl-sytle02_2 ,
	.page-heading.type-normal h1 {
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
		font-size:24px;
		line-height:1.5em;
		font-weight:400;
		padding:0;
		position:relative;
		text-align:center;
	}
	
	.page-contents {
		width:auto;
		padding:10px 0 30px;
	}

	.page-contents.has-googlemap {
		padding:30px 0 0;
		background:url(../img/index/bg_01.jpg) no-repeat right top -100px, url(../img/index/bg_02.jpg) no-repeat left top 130px;
		background-size:130px auto, 140px auto;
	}
	
	.page-contents > .inner {
		width:auto;
		max-width:1200px;
		margin:0 auto;
		padding:0 0;
	}
	
	.page-contents.wide > .inner {
		max-width:none;
		padding:0;
	}
	
	.page-contents.column-2 > .inner {
		position:relative;
	}
	
	.page-contents.column-2 .side-navi {
		width:auto;
		float:none;
		margin-top:60px;
	}

	.ctg-news .page-contents.column-2 .side-navi {
		display:none;
	}
	
	.side-navi ul {
		text-align:left;
		border:1px #cccccc;
		border-style:solid none none none;
	}
	
	.side-navi li {
		border:1px #cccccc;
		border-style:none solid solid solid;
	}
	
	.side-navi li a {
		display:block;
		padding:20px 10px 16px 20px;
	}
	
	.side-navi li.navi-ctg-home a {
		display:block;
		padding:20px 10px 16px 20px;
		color:#ffffff;
		background-color:#000000;
	}
	
	.side-navi li a i {
		float:right;
		line-height:2em;
		color:#ba1b2d;
	}
	
	.page-contents.column-2 .left-side {
		float:none;
		max-width:none;
		text-align:left;
		margin:0 20px;
		overflow:hidden;
	}
	
	
	/* TITLE */
	
	.ttl-sytle02_1 {
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
		font-size:20px;
		line-height:1.5em;
		font-weight:400;
		padding:8px 0 0 30px;
		position:relative;
		text-align:left;
	}
	
	.ttl-sytle02_1:before {
		left:12px;
		margin-left:-4px;
	}
	
	.ttl-sytle02_1:after {
		left:18px;
		margin-right:-4px;
	}
	
	
	
	/* BOX */
	
	.sec-contents-base {
		width:auto;
		max-width:1200px;
		margin:50px auto 0;
		padding:0 20px;
		text-align:left;
	}
	
	.sec-contents-wide {
		width:auto;
		margin:50px auto 0;
		text-align:left;
	}
	
	/* BUTTON */
	
	.button {
	}
	
	.button a {
		display:block;
		color:#ffffff;
		font-size:12px;
		font-weight:600;
		line-height:1.25em;
		background-color:#84770b;
		text-decoration:none;
		box-sizing:border-box;
		padding:15px 15px;
		text-align:center;
		width:220px;
		margin:auto;
	}
	
	.button a i {
		float:right;
	}
	
	.button a:hover {
		background-color:#000000;
	}
	
	
	/* TABLE */
	
	.tbl-common01 {
		width:100%;
		border-collapse:collapse;
		margin-top:15px;
	}
	
	.tbl-common01 caption {
		text-align:left;
		font-size:14px;
		font-weight:600;
		line-height:1.5em;
		margin-bottom:5px;
	}
	
	.tbl-common01 th,
	.tbl-common01 td {
		border:1px #ccc;
		border-style:solid none;
		padding:10px 10px;
		box-sizing:border-box;
	}
	
	.tbl-common01 th {
		text-align:center;
		width:30%;
		background-color:#f8f9f2;
	}
	
	.ctg-party .tbl-common01 {
		margin-top:30px;
	}
	
	.ctg-party .tbl-common01 caption {
		margin-bottom:10px;
	}
		
	
	/* LIST */
	
	.list-50per ,
	.list-33per {
		display:flex;
		flex-wrap: wrap;
		width:auto;
		margin:0 -10px;
	}
	
	.list-50per li ,
	.list-33per li {
		box-sizing:border-box;
		width:50%;
		padding:0 10px;
		margin-top:20px;
	}
	
	.list-25per {
		display:flex;
		flex-wrap: wrap;
		width:auto;
		margin:0 -10px;
	}
	
	.list-25per li {
		box-sizing:border-box;
		width:50%;
		padding:0 10px;
		margin-top:20px;
	}
	
	.list-caption {
		font-size:14px;
		font-weight:600;
		line-height:1.33em;
		margin-top:10px;
	}
	
	/* TEXT */
	
	.text-note {
		font-size:13px;
		line-height:1.5em;
	}
	
	.text-lead-01 {
		text-align:left;
		font-size:18px;
		font-weight:500;
		line-height:1.67em;
		margin-top:20px;
	}
	
	.text-lead-02 {
		text-align:left;
		font-size:14px;
		font-weight:500;
		line-height:1.67em;
		margin-top:0;
	}
		
	/* definition */
	
	dl.txt-photo-definition {
	}
	
	dl.txt-photo-definition dt {
	}
	
	dl.txt-photo-definition dd {
	}
	
	
	/* BACKBGROUND */
	
	.has-bg-triangle:before {
		position:absolute;
		left:-200px;
		top:0;
		content:"";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 200px 200px 0 200px;
		border-color: #f8f9f2 transparent transparent transparent;
		z-index:-2;
	}
	
	.has-bg-triangle:after {
		position:absolute;
		right:0;
		bottom:500px;
		content:"";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 150px 150px 150px 0;
		border-color: transparent #f8f9f2 transparent transparent;
		z-index:-2;
	}
	
	.has-bg-triangle main:before {
		position:absolute;
		left:0;
		top:80px;
		content:"";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 50px 0 50px 50px;
		border-color: transparent transparent transparent #ba1b2d;
		z-index:-1;
	}
	
	.has-bg-triangle main:after {
		position:absolute;
		right:0;
		bottom:200px;
		content:"";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 50px 50px 50px 0;
		border-color: transparent #ba1b2d transparent transparent;
		z-index:-1;
	}
	
	
}



/* TOPPAGE
-------------------------------------------------- */

.page-heading-home {
	height:860px;
	background:url(../img/index/pct_main.jpg) no-repeat center center;
	background-size:cover;
}

.page-heading-home > .inner {
	height:100%;
	background:url(../img/index/icon_building_large.png) no-repeat center center;
	display:flex;
	justify-content:center;
	align-items:center;
}

.page-heading-home > .inner p {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	color:#ffffff;
	font-size:60px;
	line-height:1.33em;
}

.ctg-home main {
	margin-top:0;
}

.sec-home-heading {
	position:relative;
	display:flex;
	justify-content: center;
	/*margin-top:-50px;*/
}

.ttl-sec-home {
	text-align:left;
	font-size:40px;
	font-weight:400;
	line-height:1.33em;
	background:url(../img/index/icon_buiding_small.png) no-repeat left center;
	padding-left:70px;
}

.ttl-sec-home span {
	display:block;
}

.ttl-sec-home span.txt-eng {
	font-size:11px;
	line-height:1.5em;
	margin-left:5px;
}

.ttl-sec-home span.txt-jpn {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	margin-top:5px;
}

.txt-shop-lead {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	text-align:left;
	font-size:46px;
	font-weight:400;
	line-height:1.67em;
	padding:0 0 0 5.83%;
	text-align:center;
}

.sec-shop-outline > .inner > div {
	margin-top:70px;
	padding-bottom:40px;
	display:flex;
}

.sec-shop-outline > .inner > div.photo-right {
	flex-direction:row-reverse;
}

.sec-shop-outline > .inner > div > figure {
	box-sizing:border-box;
	width:40%;
}

.shop-slider {
}

.shop-slider p {
	line-height:2.67em;
}


.sec-shop-outline > .inner > div.shop-slider > div {
	padding-top:15px;
	padding-right:11.5%;
}

.sec-shop-outline > .inner > div.shop-slider > div p {
	margin-top:0;
	line-height:2.67em;
}

.sec-shop-outline > .inner > div.shop-slider > figure {
	box-sizing:border-box;
}

.swiper-shop-slider {
	margin-right:-100px;
}

.shop-slider .swiper-pagination-bullet {
	border-radius:0;
	width:26px;
	height:3px;
	margin-right:10px;
}

.shop-slider .swiper-pagination-bullet-active {
	background-color:#ba1b2d;
}

.swiper-button-prev ,
.swiper-button-next {
	display:none;
}

.has-shadow > .inner {
	position:relative;
}

.has-shadow img {
	position:relative;
	z-index:2;
}

.has-shadow > .inner::after {
	content:"";
	position:absolute;
	top:40px;
	width:100%;
	height:100%;
	background-color:#eceae4;
	z-index:1;
}

.photo-left .has-shadow > .inner::after {
	left:-80px;
}

.photo-right .has-shadow > .inner::after {
	right:-80px;
}

.sec-shop-outline > .inner > div.photo-left > figure {
	padding-left:6.67%;
}

.sec-shop-outline > .inner > div.photo-right > figure {
	padding-right:6.67%;
}

.sec-shop-outline > .inner > div > div {
	box-sizing:border-box;
	width:60%;
	padding:40px 13.83% 0 5.83%;
}

.sec-shop-outline > .inner > div > div h3 {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	text-align:left;
	font-size:32px;
	font-weight:400;
	line-height:1.33em;
}

.sec-shop-outline > .inner > div > div p {
	margin-top:25px;
	line-height:2em;
}

.sec-shop-outline .button a {
	margin:0;
}

.sec-home-business {
	background:url(../img/index/bg_sec_business.jpg) no-repeat center top;
	background-size:cover;
	padding:90px 0 90px;
}

.sec-home-business .sec-home-heading ,
.sec-home-business a {
	color:#ffffff;
}

.shop-menu-photo {
	margin-top:40px;
}

.shop-menu-photo ul {
	display:flex;
	flex-wrap:wrap;
	width:auto;
	margin:-50px -25.5px 0;
}

.shop-menu-photo li {
	box-sizing:border-box;
	width:33.33%;
	padding:0 25.5px;
	margin-top:50px;
	text-align:left;
}



.list-business {
	width:auto;
	max-width:1200px;
	margin:60px auto 0;
	text-align:left;
	padding-top:30px;
	color:#ffffff;
}

.list-business li {
	margin-top:50px;
}

.list-business dl {
	margin-top:25px;
}

.list-business dt {
	font-size:20px;
	font-weight:600;
	line-height:1.5em;
	color:#cfc25a;
}

.list-business dd {
	margin-top:10px;
}





@media screen and (min-width: 768px) and (max-width: 1000px){
	
}

@media screen and (max-width: 767px){
	
	.page-heading-home {
		height:420px;
		background:url(../img/index/pct_main.jpg) no-repeat center center;
		background-size:cover;
	}
	
	.page-heading-home > .inner {
		height:100%;
		background:url(../img/index/icon_building_large.png) no-repeat center center;
		background-size: 100px auto;
		display:flex;
		justify-content:center;
		align-items:center;
	}
	
	.page-heading-home > .inner p {
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
		color:#ffffff;
		font-size:30px;
		line-height:1.33em;
	}
	
	.ctg-home main {
		margin-top:0;
	}
	
	.sec-home-heading {
		position:relative;
		display:flex;
		justify-content: center;
	}
	
	.ttl-sec-home {
		text-align:left;
		font-size:20px;
		font-weight:600;
		line-height:1.33em;
		background:url(../img/index/icon_buiding_small.png) no-repeat left center;
		background-size:24px auto;
		padding-left:35px;
	}
	
	.ttl-sec-home span {
		display:block;
	}
	
	.ttl-sec-home span.txt-eng {
		font-size:11px;
		line-height:1.5em;
		margin-left:2px;
	}
	
	.ttl-sec-home span.txt-jpn {
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
		margin-top:5px;
	}
	
	.txt-shop-lead {
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
		text-align:left;
		font-size:24px;
		font-weight:400;
		line-height:1.67em;
		padding:0 0 0 5.83%;
		text-align:center;
	}
	
	.sec-shop-outline > .inner > div {
		margin-top:35px;
		padding-bottom:20px;
		display:block;
	}
	
	.sec-shop-outline > .inner > div.photo-right {
		flex-direction:row-reverse;
	}
	
	.sec-shop-outline > .inner > div > figure {
		box-sizing:border-box;
		width:auto;
	}
	
	.shop-slider {
	}
	
	.shop-slider p {
		line-height:2.67em;
	}
	
	.sec-shop-outline {
		padding:0;
	}
	
	.sec-shop-outline > .inner > div.shop-slider > div {
		padding-top:15px;
		padding-right:11.5%;
	}
	
	.sec-shop-outline > .inner > div.shop-slider > div p {
		margin-top:0;
		line-height:2.67em;
	}
	
	.sec-shop-outline > .inner > div.shop-slider > figure {
		box-sizing:border-box;
	}
	
	.swiper-shop-slider {
		margin-right:-100px;
	}
	
	.shop-slider .swiper-pagination-bullet {
		border-radius:0;
		width:26px;
		height:3px;
		margin-right:10px;
	}
	
	.shop-slider .swiper-pagination-bullet-active {
		background-color:#ba1b2d;
	}
	
	.has-shadow > .inner {
		position:relative;
	}
	
	.has-shadow img {
		position:relative;
		z-index:2;
	}
	
	.has-shadow > .inner::after {
		content:"";
		position:absolute;
		top:20px;
		width:100%;
		height:100%;
		background-color:#eceae4;
		z-index:1;
	}
	
	.photo-left .has-shadow > .inner::after {
		left:-20px;
	}
	
	.photo-right .has-shadow > .inner::after {
		right:-20px;
	}
	
	.sec-shop-outline > .inner > div.photo-left > figure {
		padding-left:20px;
		max-width:260px;
		margin:auto;
	}
	
	.sec-shop-outline > .inner > div.photo-right > figure {
		padding-right:20px;
		max-width:260px;
		margin:auto;
	}
	
	.sec-shop-outline > .inner > div > div {
		box-sizing:border-box;
		width:auto;
		padding:0;
		margin-top:40px;
	}
	
	.sec-shop-outline > .inner > div > div h3 {
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
		text-align:left;
		font-size:18px;
		font-weight:400;
		line-height:1.33em;
	}
	
	.sec-shop-outline > .inner > div > div p {
		margin-top:10px;
		line-height:2em;
	}
	
	.sec-shop-outline > .inner > div > div p.button {
		margin-top:20px;
	}
	
	
	.sec-home-business {
		background:url(../img/index/bg_sec_business.jpg) no-repeat center top;
		background-size:cover;
		padding:45px 0 45px;
	}
	
	.sec-home-business .sec-home-heading ,
	.sec-home-business a {
		color:#ffffff;
	}
	
	.sec-shop-outline .button a {
		margin:auto;
	}
	
	.shop-menu-photo ul {
		display:flex;
		flex-wrap:wrap;
		width:auto;
		margin:-40px -10px 0;
	}
	
	.shop-menu-photo li {
		box-sizing:border-box;
		width:50%;
		padding:0 10px;
		margin-top:20px;
		text-align:left;
	}
	
	.shop-menu-photo li .name {
		display:block;
		font-size:13px;
		line-height:1.33em;
		margin-top:10px;
	}
	
	.list-business {
		padding-top:20px;
		margin:30px 20px 0;
	}
	
	.list-business li {
		margin-top:20px;
	}
	
	.list-business dl {
		margin-top:15px;
	}
	
	.list-business dt {
		font-size:16px;
		font-weight:600;
		line-height:1.5em;
	}
	
	.list-business dd {
		margin-top:5px;
	}
	
		
}





/* ESTATE 共通
-------------------------------------------------- */

.ctg-realestate .page-heading {
	background:url(../img/common/bg_build_image.gif) no-repeat calc(50% + 234px) top;
	background-color:#e7e4d1;
	padding:60px 0;
}

.ctg-realestate .page-heading > .inner {
	max-width:1200px;
	padding:0 20px;
	margin:0 auto;
}

.ctg-realestate .page-heading dl.estate-number {
	display:flex;
	justify-content: center;
	font-size:20px;
	font-weight:500;
}

.ctg-realestate .page-heading dl.estate-number > * {
	padding:0 5px;
}

.ctg-realestate .page-heading h1 {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size:40px;
	font-weight:400;
	line-height:1.5em;
	margin-top:10px;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
}

@media screen and (max-width: 767px){
	
	.ctg-realestate .page-heading {
		background:url(../img/common/bg_build_image.gif) no-repeat right 20px top;
		background-size: 130px auto;
		background-color:#e7e4d1;
		padding:30px 0 20px;
	}
	
	.ctg-realestate .page-heading > .inner {
		max-width:1200px;
		padding:0 20px;
		margin:0 auto;
	}
	
	.ctg-realestate .page-heading dl.estate-number {
		display:flex;
		justify-content: center;
		font-size:15px;
		font-weight:600;
	}
	
	.ctg-realestate .page-heading dl.estate-number > * {
		padding:0 5px;
	}
	
	.ctg-realestate .page-heading h1 {
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
		font-size:22px;
		font-weight:400;
		line-height:1.5em;
		margin-top:10px;
	}
	
		
}




/* ESTATE INDEX
-------------------------------------------------- */

.estate-button {
	display:flex;
	flex-wrap: wrap;
	justify-content: center;
	padding-bottom:40px;
}

.estate-button li {
	box-sizing:border-box;
	width:14.2857%;
	padding:0 2px;
	margin-top:4px;
}

.estate-button li span {
	display:block;
	background-color:#eceae4;
	padding:12px 5px;
	height:100%;
	box-sizing:border-box;
	line-height:1.25em;
	text-align:center;
}

.estate-button li.active span ,
.estate-button li span:hover {
	cursor:pointer;
	color:#ffffff;
	background-color:#84770b;
}


.estate-list {
	display:flex;
	flex-wrap:wrap;
	width:auto;
	margin:0 -20px 0;
}

.estate-list li {
	box-sizing:border-box;
	flex-basis:25%;
	padding:0 20px;
	margin-top:40px;
	text-align:left;
}

.estate-list li a {
	display:block;
	color:#000000;
	text-decoration:none;
}

.estate-list figcaption {
	display:inline-block;
	margin-top:10px;
	min-width:30px;
	padding:0 15px;
	color:#ffffff;
	background:#84770b;
	text-align:center;
}

.estate-list li div > p {
	font-size:16px;
	font-weight:600;
	line-height:1.5em;
	margin-top:15px;
}

.estate-list li div > div {
	margin-top:10px;
	font-size:14px;
	line-height:1.5em;
}

.estate-list li div > div span {
	display:inline-block;
	padding-right:10px;
}

.estate-list li p.date {
	margin-top:8px;
	font-size:13px;
	line-height:1.33em;
}

.estate-title {
	font-size:32px;
	line-height:1.67em;
}

.ctg-news .page-contents.column-2 {
	padding:70px 0 0;
}

.estate-heading {
	margin:0 0 40px;
}

.estate-heading dl > * {
	display:inline-block;
	font-size:14px;
	line-height:1em;
	margin-right:10px;
	padding:6px 0;
}

.estate-heading dl > dd {
	color:#ffffff;
	background-color:#000000;
	padding-left:10px;
	position:relative;
}

.estate-heading dl > dd:after {
	content:"";
	position:absolute;
	width: 0;
	height: 0;
	top:0;
	right:-26px;
	border-style: solid;
	border-width: 26px 26px 0 0;
	border-color: #000000 transparent transparent transparent;	
}

.estate-heading h1 {
	font-size:30px;
	font-weight:500;
	line-height:1.5em;
	margin-top:25px;
}



@media screen and (min-width: 768px) and (max-width: 1000px){
	
}

@media screen and (max-width: 767px){
	
	.estate-button {
		display:flex;
		flex-wrap: wrap;
		padding-bottom:40px;
	}
	
	.estate-button li {
		box-sizing:border-box;
		width:33.33%;
		padding:0 2px;
		margin-top:4px;
	}
	
	.estate-button li span {
		display:block;
		background-color:#eceae4;
		padding:6px 5px;
		height:100%;
		box-sizing:border-box;
		line-height:1.25em;
	}
	
	.estate-button li.active span ,
	.estate-button li span:hover {
		cursor:pointer;
		color:#ffffff;
	}
	
	
	.estate-list {
		display:block;
		width:auto;
		margin:20px 0 0;
		border-top:1px #cccccc solid;
	}
	
	.estate-list li {
		box-sizing:border-box;
		padding:0 0 20px;
		margin-top:30px;
		border-bottom:1px #cccccc solid;
	}
	
	.estate-list li a {
		display:block;
		color:#000000;
		text-decoration:none;
	}

	.estate-list figure {
		max-width:200px;
		margin:auto;
		position:relative;
	}
	
	.estate-list figcaption {
		display:inline-block;
		margin-top:0;
		padding:0 10px;
		color:#ffffff;
		background:#84770b;
		position:relative;
		font-size:9px;
		position:absolute;
		left:0;
		top:0;
	}
	
	.estate-list li a > div {
		font-size:13px;
		line-height:1.33em;
	}
	
	.estate-list li p {
		margin-top:15px;
	}
	
	.estate-list li p.date {
		margin-top:8px;
		font-size:13px;
		line-height:1.33em;
	}
	
	.estate-title {
		font-size:32px;
		line-height:1.67em;
	}

	
	.estate-heading {
		margin:0 0 40px;
	}
	
	.estate-heading dl > * {
		display:inline-block;
		font-size:12px;
		line-height:1em;
		margin-right:10px;
		padding:6px 0;
	}
	
	.estate-heading dl > dd {
		color:#ffffff;
		background-color:#000000;
		padding-left:10px;
		position:relative;
	}
	
	.estate-heading dl > dd:after {
		content:"";
		position:absolute;
		width: 0;
		height: 0;
		top:0;
		right:-24px;
		border-style: solid;
		border-width: 24px 24px 0 0;
		border-color: #000000 transparent transparent transparent;	
	}
	
	.estate-heading h1 {
		font-size:20px;
		font-weight:500;
		line-height:1.5em;
		margin-top:25px;
	}
	
}




/* ESTATE DETAIL
-------------------------------------------------- */

.sec-shop-gallery {
	margin-top:80px;
}

.realestate-outline > .inner {
	display:flex;
	max-width:1200px;
	padding:0 20px;
	margin:0 auto 0;
}

.realestate-outline dl {
	width:33.33%;
}

.realestate-outline dt {
	font-size:16px;
	font-weight:600;
	line-height:1.5em;
}

.realestate-outline dd {
	font-size:26px;
	font-weight:400;
	line-height:1.5em;
	margin-top:15px;
}

.realestate-outline dd strong {
	font-size:1.2em;
	font-weight:500;
}

.realestate-prpoint {
	background-color:#e7e4d1;
	margin-top:70px;
}

.realestate-prpoint > .inner {
	max-width:1200px;
	padding:60px 20px;
	margin:0 auto;
	background:url(../img/common/bg_build_image.gif) no-repeat left 20px top;
}

.realestate-prpoint p {
	margin-top:10px;
	line-height:2em;
}

.realestate-detail {
	margin-top:80px;
}

.realestate-detail > .inner {
	max-width:1200px;
	padding:0 20px;
	margin:50px auto 0;
	display:flex;
}

.realestate-detail > .inner > div {
	box-sizing:border-box;
	width:50%;
}

.realestate-detail > .inner > div.left-side {
	padding-right:30px;
}

.realestate-detail > .inner > div.right-side {
	padding-left:30px;
}


.realestate-detail table {
	width: 100%;
	border-collapse:collapse;
	border:none;
}

.realestate-detail table th {
	width:40%;
	background-color:#e7e4d1;
}

.realestate-detail table th ,
.realestate-detail table td {
	border:none;
	border:1px #cccccc;
	border-style: solid none;
	padding:15px 20px;
	vertical-align:top;
}

.text-note-area {
	max-width:1200px;
	padding:0 20px;
	margin:30px auto 0;
}

.text-note-area p {
	text-align:left;
	font-size:12px;
	line-height:2em;
}



@media screen and (min-width: 768px) and (max-width: 1000px){
	
}

@media screen and (max-width: 767px){
	
	.sec-shop-gallery {
		margin-top:40px;
	}
	
	.realestate-outline > .inner {
		display:block;
		max-width:1200px;
		padding:0 20px;
		margin:0 auto 0;
	}
	
	.realestate-outline dl {
		width:100%;
		margin-top:20px;
	}
	
	.realestate-outline dt {
		font-size:13px;
		font-weight:600;
		line-height:1.5em;
	}
	
	.realestate-outline dd {
		font-size:16px;
		font-weight:400;
		line-height:1.5em;
		margin-top:3px;
	}
	
	.realestate-outline dd strong {
		font-size:1.2em;
		font-weight:500;
	}
	
	.realestate-prpoint {
		background-color:#e7e4d1;
		margin-top:30px;
	}
	
	.realestate-prpoint > .inner {
		max-width:1200px;
		padding:30px 20px;
		margin:0 auto;
		background:url(../img/common/bg_build_image.gif) no-repeat left 20px top;
		background-size: 130px auto
	}
	
	.realestate-prpoint p {
		margin-top:10px;
		line-height:1.37em;
	}
	
	.realestate-detail {
		margin-top:40px;
	}
	
	.realestate-detail > .inner {
		max-width:1200px;
		padding:0 20px;
		margin:20px auto 0;
		display:block;
	}
	
	.realestate-detail > .inner > div {
		box-sizing:border-box;
		width:100%;
	}
	
	.realestate-detail > .inner > div.left-side {
		padding-right:0;
	}
	
	.realestate-detail > .inner > div.right-side {
		padding-left:0;
		margin-top:-1px;
	}
	
	
	.realestate-detail table {
		width: 100%;
		border-collapse:collapse;
		border:none;
		font-size:12px;
		line-height:1.5em;
	}
	
	.realestate-detail table th {
		width:33.33%;
		background-color:#e7e4d1;
		font-weight:400;
	}
	
	.realestate-detail table th ,
	.realestate-detail table td {
		border:none;
		border:1px #cccccc;
		border-style: solid none;
		padding:10px 10px;
		vertical-align:top;
	}
	
	.text-note-area {
		max-width:1200px;
		padding:0 20px;
		margin:10px auto 0;
	}
	
	.text-note-area p {
		text-align:left;
		font-size:11px;
		line-height:1.67em;
	}
	
}






/* SWIPER GALLERY
-------------------------------------------------- */

.swiper-gallery-main {
	width:auto;
	max-width:640px;
	margin:30px auto 0;
	position:relative;
}

.swiper-gallery-main .swiper-slide  {
}

.swiper-gallery-main .swiper-slide img {
	opacity:0.3;
}

.swiper-gallery-main .swiper-slide.swiper-slide-active img {
	opacity:1;
}

.swiper-gallery-main li figcaption {
	margin-top:20px;
}

.gallery-thumbnail {
	max-width:820px;
	padding:0 20px;
	margin:auto;
}

.gallery-thumbnail ul {
	display:flex;
	flex-wrap:wrap;
	margin-top:30px;
}

.gallery-thumbnail ul li {
	box-sizing:border-box;
	width:10%;
	margin:2px 1px 0;
}

.gallery-thumbnail ul li:hover {
	cursor:pointer;
	opacity:0.7;
}

.gallery-thumbnail ul img {
	width:100%;
	height:auto;
}

@media screen and (min-width: 768px) and (max-width: 1000px){
	
}

@media screen and (max-width: 767px){
	
	.swiper-gallery-main {
		width:auto;
		max-width:80%;
		margin:30px auto 0;
	}
	
	.swiper-gallery-main .swiper-slide img {
		opacity:0.7;
		width:100%;
		height:auto;
	}
	
	.swiper-gallery-main .swiper-slide.swiper-slide-active img {
		opacity:1;
	}
	
	.swiper-gallery-main li figcaption {
		margin-top:10px;
	}
	
	.gallery-thumbnail {
		max-width:820px;
		padding:0 20px;
		margin:auto;
	}
	
	.gallery-thumbnail ul {
		display:flex;
		flex-wrap:wrap;
		margin:20px -0.5px 0;
	}
	
	.gallery-thumbnail ul li {
		box-sizing:border-box;
		width:20%;
		margin:2px 0 0;
		padding:0 0.5px
	}
	
	.gallery-thumbnail ul li:hover {
		cursor:pointer;
		opacity:0.7;
	}
	
	.gallery-thumbnail ul img {
		width:100%;
		height:auto;
	}
		
}


/* GOOGLE MAP
-------------------------------------------------- */


.sec-shop-map {
	width:auto;
	padding-top:40px;
	margin-bottom:-1px;
}

.googlemap {
	height:440px;
	overflow: hidden;
	/*padding-bottom: 56.25%;*/
	/*padding-bottom: 40%;*/
	position: relative;
	margin: 30px 0 0;
    -webkit-filter:grayscale(100%);
    -moz-filter:grayscale(100%);
    -ms-filter:grayscale(100%);
    filter:grayscale(100%);
	border:1px #cccccc solid;
}

.googlemap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}



@media screen and (min-width: 768px) and (max-width: 1000px){
	
}

@media screen and (max-width: 767px){
	
	
	.sec-shop-map {
		width:auto;
		padding-top:10px;
		margin-bottom:-1px;
	}
	
	.googlemap {
		height:220px;
		margin: 15px 0 0;
	}
	
}


/* FORM LAYOUT
-------------------------------------------------- */

.contact-info {
	max-width:900px;
	margin:0 auto;
	text-align:left;
}

.contact-info .text-lead-02 + .text-note {
	margin-top:20px;
}

.contact-tel {
	border:3px #cccccc solid;
	padding:30px 0;
	margin-top:40px;
}

.contact-tel dl {
	display:flex;
	align-items: center;
}

.contact-tel dl dt {
	width:250px;
	text-align:center;
	font-size:20px;
	font-weight:600;
	line-height:1.67em;
}

.contact-tel dl dt i {
	color:#ba1b2d;
}

.contact-tel dl dd {
	border-left:1px #cccccc solid;
	padding-left:50px;
	font-size:18px;
	font-weight:500;
	line-height:1.67em;
}

.contact-tel dl dd p span {
	display:inline-block;
}

.contact-tel dl dd p span:nth-child(1) {
	width:5em;
}

.contact-tel.howto {
	border:3px #cccccc solid;
	padding:30px 30px;
	margin-top:40px;
}

.contact-tel.howto h2 {
	font-size:18px;
	font-weight:600;
	line-height:1.67em;
}

.contact-tel.howto ol {
	padding:0 0 0 22px;
	margin-top:20px;
}

.contact-tel.howto ol li {
	list-style:decimal outside;
	margin-top:10px;
}

.contact-tel.howto ol li span {
	display:block;
	font-weight:600;
}



.form-area {
	max-width:1200px;
	padding:0 20px;
	margin:20px auto 0;
}

.form-area > p.text-lead-02 {
	text-align:center;
}

.form-area form {
	margin-top:70px;
}

.form-area table {
	border:none;
}

.form-area table th,
.form-area table td {
	border:none;
	border:1px #cccccc;
	border-style: solid none;
	padding:20px;
	vertical-align:middle;
}

.form-area table th {
	box-sizing:border-box;
	text-align:left;
	vertical-align:middle;
	font-weight:600;
	position:relative;
	padding:20px 140px 20px 20px;
	width:30%;
}

.form-area table td {
	padding:20px 20px 20px 40px;
}

.form-area table .message th ,
.form-area table .message td {
	vertical-align:top;
}

.form-area table td div + div {
	margin-top:10px;
}

.form-area table span.note {
	display:block;
	font-size:0.8em;
	font-weight:400;
	line-height:1.33em;
}

.form-area table th span.validate {
	position:absolute;
	right:0;
	top:0;
	bottom:0;
	height:1.33em;
	margin:auto;
	font-size:12px;
	font-weight:400;
	line-height:1em;
	background-color:#e0e0e0;
	padding:5px 15px 2px;
}

.form-area table th span.validate.need {
	color:#ffffff;
	background-color:#84770b;
}

.form-area table .message th span.validate {
	top:23px;
	bottom:auto;
}

.form-area form input, textarea, select {
	border:none;
	background-color:#f6f6f5;
	padding:15px;
	box-sizing:border-box;
}

.form-area form select {
	border-right:10px #f6f6f5 solid;
}

.form-area form textarea {
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", sans-serif;
	width:100%;
}

.form-area form .wd80px {
	width:80px;
}

.form-area form .wd160px {
	width:160px;
}

.form-area form .wd50per {
	width:50%;
}

.form-area form .wd75per {
	width:75%;
}

.form-area form .wd100per {
	width:100%;
}

.button.btn-submit {
	margin-top:50px;
}

.button.btn-submit a {
	display:inline-block;
}

.button.btn-submit a.return {
	width:120px;
}

.button.btn-submit a.return i {
	float:left;
}

.button.btn-submit a.return:hover {
	background-color:#666666;
}

.form-error {
	color:#ba1b2d;
}

.inner.form-complete {
	box-sizing: border-box;
	max-width:800px;
	margin:auto;
}

.comp-msg {
	border:1px #cccccc solid;
	padding:30px;
	font-size:16px;
	font-weight:600;
	line-height:1.67em;
}

.comp-msg-note {
	text-align:left;
	font-size:14px;
	line-height:1.67em;
	margin-top:20px;
}
.comp-msg-note + .comp-msg-note {
	margin-top:0;:
}



@media screen and (min-width: 768px) and (max-width: 1000px){
	
}

@media screen and (max-width: 767px){
	
	.contact-info {
		max-width:900px;
		margin:0 20px;
		text-align:left;
	}
	
	.contact-info .text-lead-02 + .text-note {
		margin-top:20px;
	}
	
	.contact-tel {
		border:3px #cccccc solid;
		padding:15px 0;
		margin-top:20px;
	}
	
	.contact-tel dl {
		display:flex;
		align-items: center;
		flex-direction: column;
	}
	
	.contact-tel dl dt {
		width:250px;
		text-align:center;
		font-size:16px;
		font-weight:600;
		line-height:1.67em;
		padding:0 0 10px;
	}
	
	.contact-tel dl dt i {
		color:#ba1b2d;
	}
	
	.contact-tel dl dd {
		border:none;
		border-top:1px #cccccc solid;
		padding-left:20px;
		padding-top:15px;
		font-size:14px;
		font-weight:500;
		line-height:1.67em;
	}
	
	.contact-tel dl dd p span {
		display:inline-block;
	}
	
	.contact-tel dl dd p span:nth-child(1) {
		width:5em;
	}
	
	.contact-tel.howto {
		border:3px #cccccc solid;
		padding:15px 15px;
		margin-top:20px;
	}
	
	.contact-tel.howto h2 {
		font-size:16px;
		font-weight:600;
		line-height:1.67em;
	}
	
	.contact-tel.howto ol {
		padding:0 0 0 22px;
		margin-top:10px;
	}
	
	.form-area {
		margin:30px 20px 0;
		padding:0;
	}
	
	.form-area > p.text-lead-02 {
		text-align:left;
	}
	
	.form-area > p.text-lead-02 br {
		display:none;
	}
	
	.form-area form {
		margin-top:35px;
	}
	
	.form-area table {
		border:none;
	}
	
	.form-area table th ,
	.form-area table td {
		display:block;
		border:none;
		border:1px #cccccc;
		border-style: solid none;
		padding:20px;
		vertical-align:middle;
	}
	
	.form-area table th {
		box-sizing:border-box;
		text-align:left;
		vertical-align:middle;
		font-weight:600;
		position:relative;
		padding:12px 60px 12px 10px;
		width:100%;
		border:none;
	}
	
	.form-area table td {
		padding:12px 0 12px 0;
	}
	
	.form-area table .message th ,
	.form-area table .message td {
		vertical-align:top;
	}
	
	.form-area table td div + div {
		margin-top:10px;
	}
	
	.form-area table span.note {
		display:block;
		font-size:0.8em;
		font-weight:400;
		line-height:1.33em;
	}
	
	.form-area table th span.validate {
		position:absolute;
		right:0;
		top:0;
		bottom:0;
		height:1.33em;
		margin:auto;
		font-size:10px;
		font-weight:400;
		line-height:1em;
		background-color:#e0e0e0;
		padding:5px 10px 2px;
	}
	
	.form-area table th span.validate.need {
		color:#ffffff;
	}
	
	.form-area table .message th span.validate {
		top:23px;
		bottom:auto;
	}
	
	.form-area form input, textarea, select {
		border:none;
		background-color:#f6f6f5;
		padding:8px;
		box-sizing:border-box;
	}
	
	.form-area form textarea {
		font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", sans-serif;
		width:100%;
	}
	
	.form-area form .wd80px {
		width:60px;
	}
	
	.form-area form .wd160px {
		width:100px;
	}
	
	.form-area form .wd50per {
		width:100%;
	}
	
	.form-area form .wd75per {
		width:100%;
	}
	
	.form-area form .wd100per {
		width:100%;
	}
	
	.button.btn-submit {
		margin-top:20px;
	}
		
}


