@charset "utf-8";
/*	reset	*/
html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video ,input , textarea{
 	font-family: "M PLUS 1p", sans-serif;
 	font-optical-sizing: auto;
	vertical-align:middle;
	background:transparent;
	list-style-type:none;
	font-size: max(1.3vw, 15px);
	font-weight:normal;
	font-style:normal;
	line-height: 1.8;
	text-align:left;
	color: #333;
	margin:0;
	padding:0;
	border:0;
	outline:none;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-webkit-text-size-adjust: 100%;
	-webkit-appearance: none;
	letter-spacing:0.1em;
}


/*
body.JP .japanese,
body.EN .english{
	display:block !important;
}

body.JP .english,
body.EN .japanese{
	display:none !important;
}
*/

/* 初期は全部非表示にして、言語クラスで表示 */
.index_property_list li .onImg,
.property_list li .onImg
.english.onImg,
.japanese.onImg,
.chinese.onImg ,
.english,
.japanese,
.chinese { display: none; }

/* EN 表示 */
body.EN .english { display: block; }
/* JP 表示 */
body.JP .japanese { display: block; }
/* CN 表示 */
body.CN .chinese { display: block; }
body.CN { font-family: "Noto Sans SC", "M PLUS 1p", system-ui, sans-serif; }

/* 画像上のラベルなど inline 表示が良い箇所があれば必要に応じて調整 */
body.EN .english.onImg,
body.JP .japanese.onImg,
body.CN .chinese.onImg { display: inline-block; }

body.JP .japanese *{
	word-break: break-all;
}


select,
button,
input{
	-webkit-appearance: none;
}

html{
	scroll-padding-top:100px;
	scroll-behavior: smooth;
	background:#fff;
}

a{
	text-decoration:none;
}

img{
	display:block;
	width:100%;
	margin:auto;
}

h2{
	font-size: max(2.2vw, 24px);
	font-weight:400;
	letter-spacing:0.05em;
}

h3{
	font-size: 1.8vw;
	font-weight:600;
	letter-spacing:0.1em;
}

.aligncenter{
	text-align:center;
}

.alignright{
	text-align:right;
}

.min{
	font-size:80%;
}

.sp{
	display:none;
}
.pc{
	display:block
}

body{
	position:relative;
}

footer,
header{
	width:100%;
	margin:auto;
	position:relative;
}

header{
	background: linear-gradient(0deg ,rgba(0,0,0,0),rgba(0,0,0,90));
	position:fixed;
	top:0;
	left:0;
	height:55px;
	z-index:5;
	padding-bottom:40px;
	transition:all .5s;
}

header.fixed{
	background: #0e0f0e;
	position:fixed;
	height:55px;
	z-index:5;
	padding-bottom:0;
}

.footer_inner,
.header_inner{
	z-index:3;
	position:relative;
	max-width:1440px;
	width:100%;
	margin:auto;
	top:0;
	overflow:hidden;
}

.footer_inner{
	padding:10px 0;
}

.header_inner{
	height:55px;
}

footer .footer_inner h1,
header .header_inner h1{
	position:absolute;
	top:10px;
	left:0;
	line-height:1.8rem;
}

footer .footer_inner h1 a,
header .header_inner h1 a{
	color:#fff;
	font-weight:bold;
	line-height:1.2rem;
	font-size:clamp(14px , 1.8vw , 24px);
}

.rrcc footer .footer_inner h1,
.rrcc header .header_inner h1{
	top:2px;
}

.rrcc footer .footer_inner h1 a,
.rrcc header .header_inner h1 a{
	font-size:80%;
}

footer .footer_inner h1{
	top:-3px;
}

header #global-nav h1{
	display:none;
}

header .selectLanguage{
	position:absolute;
	z-index:1;
	right:-5px;
	top:10px;
	text-align:center;
	width:260px;
	display:flex;
}

header .selectLanguage li{
	width:30%;
	position:relative;
}

header .selectLanguage li:nth-child(2){
	width:39%;
}

header .selectLanguage li::before{
	content:"";
	position:absolute;
	width:1px;
	height:70%;
	right:0;
	top:15%;
	background:#eee;
}

header .selectLanguage li:last-child::before{
	content:none;
}

header .selectLanguage li a{
	display:block;
	width:100%;
	text-align:center;
}


header #global-nav{
	position:absolute;
	width:100%;
	text-align:center;
	z-index:-1;
	height:50px;
	top:0;
	left:0;
}

header #global-nav ul.index_menu li a,
header .selectLanguage li a{
	text-align:center;
	color:#fff;
	font-size:14px;
	line-height:1.8rem;
}


header #global-nav ul.index_menu{
	display:block;
	text-align:center;
	position:absolute;
	top:50%;
	left:50%;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
}

header #global-nav ul.index_menu li{
	display:inline-block;
	vertical-align:baseline;
}

header #global-nav ul.index_menu li.sp{
	display:none;
}

header #global-nav ul.index_menu li a{
	color:#ccc;
	border:solid 1px #ccc;
	padding:3px 10px;
	line-height:1rem;
	display:block;
}

header #global-nav ul.index_menu li a:hover{
	background:#ccc;
	color:#333;
}

.index_firstview{
	position:fixed;
	left:0;
	top:0;
	z-index:-1;
	min-width:100%;
	width:100%;
	height:100dvh;
	overflow:hidden;
}

.index_firstview::before{
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	background:rgba(255,255,255,0);
	transition:all 0.5s;
	z-index:2;
}

.index_firstview.scrol_100::before{
	background:rgba(255,255,255,0.2);
}

.index_firstview.scrol_200::before{
	background:rgba(255,255,255,0.4);
}

.index_firstview.scrol_300::before{
	background:rgba(255,255,255,0.6);
}

.index_firstview.scrol_400::before{
	background:rgba(255,255,255,0.8);
}

.index_firstview.scrol_500::before{
	background:rgba(255,255,255,1);
}

.index_firstview img,
.index_firstview video{
	left: 50%;
	max-height: initial;
	max-width: initial;
	min-height: 100vh;
	min-width: 100vw;
	position: absolute;
	width:auto;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
	z-index: 1;
	display:block;
	aspect-ratio: 16/9;
}

.index_firstview2 img{
	left: unset;
	top: unset;
	transform: none;
	-webkit-transform: none;
}


.index_firstview p{
	position:absolute;
	left:50%;
	transform:translateX(-50%);
	bottom:32px;
	color:#fff;
	font-size:16px;
	max-width:1440px;
	width:100%;
	z-index:3;
}

.index_firstview.scrol_500 p,
.index_firstview.scrol_400 p,
.index_firstview.scrol_300 p,
.index_firstview.scrol_200 p,
.index_firstview.scrol_100 p{
	text-indent:-999999px;
}

.index_firstview p a{
	color:#fff;
	text-decoration:underline;
}

main{
	max-width:1440px;
	width:100%;
	margin:auto;
	background:rgba(255,255,255,0.8);
}

.toFm h2,
.content_block h2{
	font-size:40px;
	color:#333;
	text-align:center;
	line-height:2rem;
	padding:20px 0;
	font-weight:normal;
	margin-bottom:10px;
	padding-top:90px;
	margin-top:-90px;
}

.content_block h2 span{
	font-size:20px;
	color:#fff;
}

.nisekoLand #gallery,
#about{
	margin-top:calc(100vh + 70px);
	margin-bottom:100px;
	padding-top:30px;
}

.nisekoLand #about{
	margin-top:70px;
	margin-bottom:100px;
}

.rrcc #about{
	margin-top:100vh;
}

#conditions,
#about2{
	margin-bottom:100px;
}

.nisekoLand #gallery p,
#conditions table,
#about2 p,
#about p{
	text-align:center;
	width:65%;
	margin:20px auto 70px;
	font-size:15px;
}

#about2 h3,
#about2 p strong,
#about h3,
#about p strong{
	font-weight:700;
	font-size:16px;
	text-align:center;
}

.nisekoLand #gallery p b,
#about p b{
	font-size:16px;
	font-weight:bold;
	text-decoration:underline;
}

#about h3{
	font-size:18px;
}

#about2 .about_main_img,
#about .about_main_img{
	width:90%;
	margin:auto auto 100px;
}

#about2 ul li,
#about ul li{
	display:flex;
	margin-bottom:40px;
	background:#f2f2f2;
}

#about2 ul li:last-child,
#about ul li:last-child{
	margin-bottom:0;
}

#about p.attention{
	text-align:right;
	margin-top:0;
	width:100%;
	color:#999;
}

#about2 ul li .right_content,
#about2 ul li .left_content,
#about ul li .right_content,
#about ul li .left_content{
	width:30%;
	position:relative;
}

#about2 ul li .right_content,
#about ul li .right_content{
	width:70%;
}

#about2 ul li .right_content dl,
#about ul li .right_content dl{
	width:85%;
	margin:auto;
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.nisekoLand #about ul li{
	align-items:center;
}

.nisekoLand #about ul li .right_content dl{
	position:relative;
	top: unset;
	left: unset;
	transform: none;
	padding:15px 0;
}

#about2 ul li .right_content dl dt,
#about ul li .right_content dl dt{
	font-size:24px;
	margin-bottom:0.8rem;
}

#about2 ul li .right_content dl dt span,
#about ul li .right_content dl dt span{
	font-size:15px;
	vertical-align:middle;
}

#about2 ul li .right_content dl dd,
#about ul li .right_content dl dd{
	font-size:16px;
	color:#777;
}

#about .about_main_img img{
	margin-bottom:70px;
}

#about2 .about_main_img h3,
#about .about_main_img h3{
	font-size:18px;
	text-align:center;
	margin-bottom:20px;
	font-weight:400;
	padding-top:90px;
	margin-top:-90px;
}

#about .about_main_img p{
	margin-bottom:10px;
	font-size:18px;
}

#about .about_main_img p strong{
	font-size:24px;
	vertical-align:baseline;
}

#about .about_main_img dl dt{
	border:solid 1px #fff;
	padding:10px 0;
	width:25%;
	text-align:center;
	display:inline-block;
	margin-right:3%;
	margin-bottom:15px;
	font-size:15px;
	clear:both;
}

#about .about_main_img dl dd{
	display:inline-block;
	width:70%;
	font-size:14px;
	margin-bottom:15px;
}

#about2 .gmap,
#about2 .about_main_img ul,
#about .about_main_img ul{
	text-align:left;
	margin:40px auto 70px;
	width:100%;
	display:block;
}

#about2 .about_main_img,
#about2 .about_main_img ul{
	margin-bottom:20px;
}


#about2 .about_main_img ul li,
#about .about_main_img ul li{
	text-align:center;
	background:none;
	display:inline-block;
	font-size:14px;
	line-height:1.2rem;
	position:relative;
	border:solid 1px #ccc;
	margin-right:10px;
	margin-bottom:10px;
	padding:5px 20px;
	word-break: break-word;
}

body.JP .japanese #about2 .about_main_img ul li,
body.JP .japanese #about .about_main_img ul li{
	word-break: keep-all;
}


#about .topAttention{
	overflow:hidden;
}

#about .topAttention .topAttention_inner{
	padding:20px 3%;
	margin:40px auto 60px;
	display:block;
	border:solid 2px #f72;
	width:90%;
	max-width:1000px;
}

#about .topAttention .topAttention_inner p,
#about .topAttention .topAttention_inner h3{
	color:#f72;
	text-align:center;
}

#about .topAttention .topAttention_inner h3{
	font-size:150%;
	font-weight:500;
}

#about .topAttention .topAttention_inner p{
	font-size:100%;
	padding:10px 3%;
	margin:auto;
	width:90%;
}

#about .topAttention .topAttention_inner p a{
	color:#f72;
	text-decoration:underline;
}

#about .topAttention .topAttention_inner.topSoldOut{
	border:solid 2px rgba(200,80,80,0.9);
}

#about .topAttention .topAttention_inner.topSoldOut p,
#about .topAttention .topAttention_inner.topSoldOut h3,
#about .topAttention .topAttention_inner.topSoldOut p a{
	color:rgba(200,80,80,0.9);
}


#gallery h2 span{
	margin-left:30px;
}

#gallery ul{
	overflow:hidden;
	width:100%;
	margin:auto auto 120px;
}


#gallery ul li{
	width:20%;
	float:left;
	padding:5px;
	margin-bottom:0;
}

.nisekoLand #gallery ul li{
	width:25%;
}

#gallery ul li a,
#gallery ul li video,
#gallery ul li a img{
	display:block;
	width:100%;
}

.nisekoLand #gallery ul li {
  position: relative;
  display: inline-block;
}


/* 再生ボタン */
.nisekoLand #gallery ul li .play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 30px;
  color: white;
  background: rgba(0,0,0,0.5);
  border-radius: 50%;
  padding: 10px 20px;
  cursor: pointer;
  transition: background 0.3s;
}
.nisekoLand #gallery ul li .play-btn:hover {
  background: rgba(0,0,0,0.8);
}


#infomation p{
	text-align:center;
	width:65%;
	margin:20px auto 70px;
	font-size:15px;
}

#infomation .map{
	width:100%;
	margin:auto auto 80px;
}

.toFm h2,
#gallery h2:not(.nisekoLand #gallery h2),
#about2 h2,
#conditions h2,
#contact h2,
#policy h2{
	font-size:24px;
	font-weight:600;
}

#about .about_main_img p:not(.attention){
	margin-bottom:30px;
}

#policy{
	position:relative;
	margin-bottom:70px;
	padding:20px;
}

#conditions table,
#policy p{
	font-size:13px;
	color:#999;
	width:90%;
	margin:10px auto 30px;
}

#policy dl{
	width:90%;
	margin:10px auto 30px;
}

#policy p.inquery span,
#policy dl dt{
	font-size:15px;
	font-weight:bold;
}

#policy dl dd{
	font-size:13px;
	color:#999;
	margin-bottom:20px;
}

#conditions table{
	width:90%;
	margin:auto;
}

#conditions table th,
#conditions table td{
	font-size:15px;
	padding:15px;
	border-bottom:dashed 1px #ccc;
}

#conditions table th{
	text-align:center;
	font-weight:bold;
}

#conditions table tr td:first-child{
	font-weight:bold;
}

#policy p.inquiry{
	text-align:right;
}

footer{
	background:#0e0f0e;
	position:relative;
	padding:35px;
}

footer .site-footer-copyright{
	text-align:center;
	color:#888888;
	display:block;
	font-size:14px;
}

form .aligncenter a,
#policy p.inquiry a,
footer .site-footer-copyright a{
	color:#999;
	text-decoration:underline;
}
#policy,
#contact{
	margin-top:140px;
}

#contact form{
	width:95%;
	margin:10px auto;
}

#contact p{
	color:#999;
	font-size:14px;
}

.w1200{
	display:none;
}

#access{
	margin-bottom:100px;
}

#about2 .gmap iframe,
#access .gmap iframe{
	width:100%;
	display:block;
}

#access p{
	text-align:center;
	font-size:14px;
}

#movie,
#tour{
	aspect-ratio: 16/9;
	margin-bottom:60px;
}

#movie a{
	display:block;
}

#movie a img,
#tour iframe{
	width:100%;
	display:block;
	height:auto;
	aspect-ratio: 4/3;
}

#movie a img{
	aspect-ratio: 16/9;
}


.galleryImg_expansion{
	position:fixed;
	left:0;
	top:0;
	background:rgba(255,255,255,0.8);
	width:100%;
	height:100%;
	display:none;
}

.galleryImg_expansion .galleryImg_expansion_inner_2,
.galleryImg_expansion .galleryImg_expansion_inner{
	background:rgba(255,255,255,1);
	height:85%;
	overflow:hidden;
	position:absolute;
	top:50%;
	left:50%;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
	padding:2% 3%;
	border:solid 1px #aaa;
	aspect-ratio: 4/3;
	display:none;
}

.galleryImg_expansion .galleryImg_expansion_inner_2{
	padding:3% 2%;
	aspect-ratio: 3/4;
}

.galleryImg_expansion .galleryImg_expansion_inner img{
	display:none;
	width:100%;
	aspect-ratio: 4/3;
}

.galleryImg_expansion .galleryImg_expansion_inner_2 img{
	display:none;
	aspect-ratio: 3/4;
	width:100%;
}

.galleryImg_expansion .galleryImg_expansion_inner_2 a,
.galleryImg_expansion .galleryImg_expansion_inner a{
	width:30px;
	height:30px;
	background:#f77;
	position:absolute;
	right:10px;
	top:10px;
	display:block;
}

.galleryImg_expansion .galleryImg_expansion_inner_2 a::before,
.galleryImg_expansion .galleryImg_expansion_inner_2 a::after,
.galleryImg_expansion .galleryImg_expansion_inner a::before,
.galleryImg_expansion .galleryImg_expansion_inner a::after{
	content:"";
	position:absolute;
	width:22px;
	height:2px;
	background:#fff;
	top:14px;
	left:4px;
	transform:rotate(-45deg);
}

.galleryImg_expansion .galleryImg_expansion_inner_2 a::after,
.galleryImg_expansion .galleryImg_expansion_inner a::after{
	transform:rotate(45deg);
}

.toFm{
	overflow:hidden;
	clear:both;
	margin-bottom:100px;
}

#about .toFm p,
#about2 .toFm p,
.toFm p{
	text-align:center;
	margin-bottom:20px;
	font-size:15px;
	width:65%;
	margin:20px auto;
}

.toFm a{
	display:block;
	width:400px;
	text-align:center;
	padding:10px 0;
	border:solid 1px #ccc;
	background:#f77;
	color:#fff;
	margin:auto;
	position:relative;
	font-weight:bold;
}

.toFm a:hover{
	opacity:0.7;
}

.toFm a::before{
	content:"";
	width:7px;
	height:7px;
	border-top:solid 2px #fff;
	border-right:solid 2px #fff;
	transform:rotate(45deg);
	position:absolute;
	right:15px;
	top:calc(50% - 4px);
}

.property_list{
	overflow:hidden;
	width:100%;
	margin:20px auto;
	padding:0 5%;
	background:#eee;
}

.property_list h2{
	font-size:24px;
	font-weight:bold;
	padding:10px 0;
	margin-top:0;
	padding-top:40px;
}

.property_list li{
	width:50%;
	float:left;
	padding:3%;
	position:relative;
}


.property_list li:nth-child(2n+1){
	clear:both;
}

.property_list li a{
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	top:0;
}

.property_list li a:hover{
	background:rgba(255,255,255,0.2);
}

.index_property_list li img,
.property_list li img{
	display:block;
	width:100%;
	margin:auto;
	aspect-ratio: 16/9;
}

.property_list li dl{
	width:100%;
	margin:0 auto;
}

.property_list li dl dt{
	font-weight:bold;
	font-size:16px;
}

.property_list li dl dd{
	font-size:14px;
}


.firstview{
	display:block;
	position:relative;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
	list-style: none;
	padding: 0;
	z-index: 1;
	height: 100vh;
	width: 100%;
	margin-bottom:60px;
}

.firstview img{
	width: 100%;
	height: auto;
	max-height: none;
	object-fit: cover;
	display: block;
	margin: 0 auto;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	aspect-ratio: 16/9;
}

.firstview h1 {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	font-size: 1.6rem;
	font-weight: 400;
	text-align: center;
	line-height: 1.4;
	max-width: 90%;
	z-index: 2;
	pointer-events: none;
	background-color: rgba(0, 0, 0, 0.6);
	box-shadow: 0 0 20px 10px rgba(0, 0, 0, 0.4);
	padding:10px 20px;
	box-sizing:border-box;
	border:solid 2px #fff;
	width:300px;
}

.swiper {
	height: 100vh;
	width: 100%;
	position:relative;
	overflow:hidden;
}

.swiper-slide {
	position: relative;
	height: 100vh;
	width: 100%;
	overflow: hidden;
}
.swiper-slide img {
	width: 100%;
	height: 100%;
	max-height: none;
	object-fit: cover;
	display: block;
	margin: 0 auto;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.slider-caption {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	font-size: 1.4rem;
	font-weight: 400;
	text-align: center;
	line-height: 1.6;
	padding: 16px 24px;
	max-width: 90%;
	width:90%;
	z-index: 2;
	pointer-events: none;
}

.firstview .swiper-pagination-bullet-active{
	background:#f77;
}



.index_page_list h2{
	text-align:center;
	position:relative;
	z-index:2;
	margin-bottom:60px;
}

.index_page_list h2::before{
	content:"";
	width:100%;
	height:2px;
	position:absolute;
	background:#333;
	left:0;
	top:50%;
	transform: translateY(-50%);
	z-index:1;
}

.index_page_list h2 span{
	font-size:36px;
	line-height:110%;
	padding:10px 30px;
	background:#fff;
	z-index:2;
	position:relative;
	display:inline-block;
	text-align:center;
	font-weight:500;
}

.index_property_list{
	margin-bottom:40px;
}

.index_property_list ul li{
	position:relative;
	padding-top:40px;
	margin-bottom:80px;
}

.index_property_list ul li .index_property_list_img_area{
	position:absolute;
	left:0;
	top:0;
	width:35%;
	height:400px;
	display:block;
	z-index:3;
}

.index_property_list ul li .index_property_list_img_area img{
	display:block;
	width:100%;
}


.index_property_list ul li .index_property_list_detailed_area{
	background:#dfdfdf;
	padding:50px 5% 50px 30%;
	width:90%;
	margin-left:10%;
	overflow:hidden;
}

.index_property_list ul li .index_property_list_detailed_area p{
	font-size: min(1.3vw, 15px);
	margin-bottom:20px;
}

.index_property_list ul li .index_property_list_detailed_area a{
	display:block;
	width:200px;
	text-align:center;
	color:#fff;
	background:#333;
	padding:5px 0;
	float:right;
	font-size: min(1.3vw, 15px);
}

.index_property_list li .onImg,
.property_list li .onImg{
	position:absolute;
	left:10%;
	top:13%;
	font-size:min(1.2vw , 12px);
	text-align:center;
	color:#fff;
	padding:0 10px;
	border-radius:5px;
	font-weight:bold;
}

.index_property_list li .onImg{
	left:0;
	top:3%;
	border-radius:0 5px 5px 0;
}

.property_list li .onImg.villaa,
.index_property_list .onImg.villaa,
.index_property_list li .onImg.rrcc,
.property_list li .onImg.rrcc,
.index_property_list li .onImg.nisekoLand,
.property_list li .onImg.nisekoLand,
.index_property_list li .onImg.villab,
.property_list li .onImg.villab{
	background:rgba(200,80,80,0.9);
	border: solid 3px #fff;
	border-radius:0;
	padding:3px 25px;
}

.property_list li .onImg.villaa,
.index_property_list .onImg.villaa{
	background:rgba(20,20,70,0.9);
}

.index_property_list .onImg.rrcc,
.index_property_list .onImg.villaa,
.index_property_list .onImg.villab{
	left:10px;
}

.index_property_list .onImg.nisekoLand{
	left:13px;
}

.property_list li .onImg.villaa::before,
.index_property_list .onImg.villaa::before,
.index_property_list li .onImg.rrcc::before,
.property_list li .onImg.rrcc::before,
.index_property_list li .onImg.nisekoLand::before,
.property_list li .onImg.nisekoLand::before,
.property_list li .onImg.villab::before,
.index_property_list .onImg.villab::before{
  content: "";
  position: absolute;
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  background: none;
  border:solid 5px rgba(222,80,80,0.9);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(0);
  z-index: 0;
}

.property_list li .onImg.villaa::before,
.index_property_list .onImg.villaa::before{
  border:solid 5px rgba(20,20,70,0.9);
}

.nisekoLand_hr{
	margin:20px auto 60px;
	width:70%;
}

.nisekoLand #about .gmap iframe,
.nisekoLand #about .gmap{
	display:block;
	width:100%;
	height:500px;
}

.nisekoLand #about .about_main_img,
.nisekoLand #about .about_main_img ul{
	margin-bottom:50px;
}

.nisekoLand #about ul:not(.detailed) li{
	display: flex;
	flex-wrap: wrap;
	margin-bottom:80px;
	background:#f2f2f2;
	align-items:normal;
}

.nisekoLand #about ul li div:not(.map_content){
	margin-bottom:40px;
}

.nisekoLand #about ul li .left_content{
	width:40%;
}

.nisekoLand #about ul li .right_content{
	width:60%;
}

.nisekoLand #about ul li .map_content{
	display:block;
	width:100%;
}

.nisekoLand #about ul li .right_content dl{
	width:90%;
}

.nisekoLand #about ul li .map_content iframe{
	width:100%;
	height:550px;
}

@media all and (max-width:1200px) {
	.w1200{
		display:block;
	}

	header.fixed #global-nav ul.index_menu li a,
	header.fixed .index_sns_menu li a, header .selectLanguage li a{
		font-size:max(1.2vw , 12px);
	}
}

@media all and (max-width:1000px) {
	.nisekoLand #gallery p,
	#about .about_main_img dl,
	#about p{
		width:100%;
	}
	
	header #global-nav ul.index_menu li a{
		padding:3px 5px;
	}
}


@media all and (max-width:768px) {
	header #global-nav ul.index_menu li.sp,
	.sp{
		display:block;
	}

	.pc{
		display:none;
	}

	.rrcc footer .footer_inner h1 a,
	.rrcc header .header_inner h1 a{
		font-size: min(4vw, 16px);
		letter-spacing:0;
		margin-top:11px;
		display:block;
	}
	
	header{
		background:#000;
		height:45px;
	}
	
	#indexListPage header.fixed,
	#indexListPage header{
		background:none;
	}

	header.fixed{
		background:#000;
		height:40px;
	}

	header .header_inner h1{
		top:9px;
		width:100%;
		padding-left:15%;
		position:relative;
	}

	header .selectLanguage{
		bottom:10px;
		right:10px;
		position:fixed;
		top:unset;
		background:#777;
	}

	header .selectLanguage .showLang a{
		color:#aaa;
	}
	
	.hamburger {
		position:absolute;
		z-index:9999;
		left:3%;
		top:9px;
		width:5vw;
		height:4vw;
		max-width:30px;
		max-height:24px;
		min-width:30px;
		min-height:24px;
		cursor:pointer;
		text-align:center;
	}

	header.fixed .hamburger {
		position:fixed;
		top:7px;
	}

	.hamburger span {
		display:block;
		position: absolute;
		height:2px;
		background:#fff;
		-webkit-transition:0.3s ease-in-out;
		-moz-transition:0.3s ease-in-out;
		transition:0.3s ease-in-out;
		width:80%;
		left:10%;
	}
	
	.hamburger span:nth-child(1) {
		top:10%;
	}
	.hamburger span:nth-child(2) {
		top:50%;
	}
	.hamburger span:nth-child(3) {
		top:90%;
	}

	.hamburger.active::after{
		content:none;
	}

	.hamburger.active span:nth-child(1) {
		top:30%;
		left:5%;
		width:90%;
		-webkit-transform:rotate(-45deg);
		-moz-transform:rotate(-45deg);
		transform:rotate(-45deg);
	}

	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top:30%;
		left:5%;
		width:90%;
		-webkit-transform:rotate(45deg);
		-moz-transform:rotate(45deg);
		transform:rotate(45deg);
	}

	header.fixed #global-nav,
	header #global-nav{
		display:none;
		position:fixed;
		z-index:999;
		width:100%;
		height:100%;
		background:rgba(50,50,50,1);
		left:-100%;
		top:0;
		padding-top:45px;
		transition:all .6s;
	}

	header.fixed #global-nav.View,
	header #global-nav.View{
		display:block;
		left:0;
	}

	header .header_inner #global-nav h1{
		position:relative;
		padding-left:10px;
		font-size:6vw;
		display:block;
	}
	
	header .header_inner #global-nav h1 a{
		line-height:1.4em;
	}

	header.fixed #global-nav ul.index_menu,
	header #global-nav ul.index_menu{
		display:block;
		width:90%;
		margin:20px auto;
		position:relative;
		top:unset;
		left:unset;
		transform: none;
		-webkit-transform: unset;
	}
	
	header #global-nav ul.index_menu li,
	header.fixed #global-nav ul.index_menu li{
		margin-right:0;
		margin-left:0;
	}
	header #global-nav .index_menu li{
		display:block;
		width:100%;
		margin-bottom:0;
		margin-right:0;
	}

	header.fixed #global-nav ul.index_menu li a,
	header #global-nav ul.index_menu li a{
		text-align:left;
		font-size: min(5vw, 18px);
		display:block;
		padding:10px 0 10px 35px;
		position:relative;
		border:none;
		border-bottom:solid 1px #555;
	}

	header #global-nav ul.index_menu li a::before{
		content:"";
		position:absolute;
		width:8px;
		height:8px;
		border-top:solid 2px #aaa;
		border-right:solid 2px #aaa;
		top:calc(50% - 6px);
		left:4px;
		transform:rotate(45deg);
	}


	.index_firstview::before{
		transition:all 0.2s;
	}
	
	.index_firstview.scrol_100::before,
	.index_firstview.scrol_200::before,
	.index_firstview.scrol_300::before{
		background:rgba(255,255,255,0.8);
	}

	.index_firstview.scrol_400::before{
		background:rgba(255,255,255,0.9);
	}

	.index_firstview.scrol_500::before{
		background:rgba(255,255,255,1);
	}

	.index_firstview{
		height:45vh;
	}
	
	.nisekoLand #gallery,
	.rrcc #about,
	#about{
		margin-top:45vh;
	}
	
	.firstview h1{
		width:220px;
	}
	
	.index_firstview img,
	.index_firstview video{
		width:170%;
		left:50%;
		top:0;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		max-height:initial;
		max-width:initial;
		min-height:initial;
		min-width:initial;
	}
	
	.index_firstview2 img{
		width:100%;
		left:unset;
		transform:none;
		-webkit-transform:none;
	}
	
	.index_page_list h2{
		margin-bottom:20px;
	}

	.index_page_list h2 span,
	.content_block h2{
		line-height:180%;
		font-size:min(5vw,35px);
	}

	.nisekoLand #gallery h2,
	.index_page_list h2 span,
	#about.content_block h2{
		margin-top:10px;
		padding-top:0;
	}

	.index_page_list h3{
		line-height:150%;
		font-size:min(4vw,28px);
		margin-top:10px;
		padding-top:0;
	}

	.nisekoLand #gallery p,
	.index_property_list ul li .index_property_list_detailed_area a,
	.index_property_list ul li .index_property_list_detailed_area p strong,
	.index_property_list ul li .index_property_list_detailed_area p,
	#about .about_main_img p,
	#infomation p,
	#about p{
		margin:10px auto 40px;
		width:95%;
		font-size:min(3.5vw , 16px);
	}
	
	.index_property_list ul li .index_property_list_detailed_area p strong{
		font-weight:500;
	}

	.nisekoLand #gallery p,
	#about p{
		text-align:left;
		width:85%;
	}

	.nisekoLand #gallery p b,
	.nisekoLand #gallery p strong,
	#about .about_main_img p.aligncenter,
	#about p strong{
		text-align:center;
		display:block;
		margin-bottom:0;
	}

	#about .about_main_img p{
		width:100%;
		text-align:center;
	}

	#about .about_main_img ul.attention{
		width:100%;
	}

	#about .about_main_img ul.attention li,
	#about .about_main_img ul li span{
		line-height:1.4rem;
	}
	
	#gallery ul,
	#about2 ul li,
	#about ul li{
		display:block;
		margin-bottom:40px;
	}

	.nisekoLand #gallery ul li,
	#gallery ul li{
		width:50%;
		float:left;
		padding:5px;
		margin-bottom:0;
	}

	#about2 ul li .right_content,
	#about2 ul li .left_content,
	#about ul li .right_content,
	#about ul li .left_content{
		width:100%;
	}
	
	#gallery ul li iframe{
		height:100%;
		width:100%;
	}
	
	#about2 ul li .right_content dl,
	#about ul li .right_content dl{
		position:relative;
		width:90%;
		top:unset;
		left:unset;
		transform: translate(0,0);
		padding:40px 0;
	}
	
	#infomation{
		margin-bottom:40px;
	}

	#about2 .about_main_img dl dt,
	#about .about_main_img dl dt{
		width:40%;
		font-size:min(4.5vw , 16px);
	}

	#about2 .about_main_img dl dd,
	#about .about_main_img dl dd{
		width:52%;
		font-size:min(3.1vw , 14px);
	}
	
	#about2 .about_main_img ul li,
	#about .about_main_img ul li{
		font-size:min(3.1vw , 14px);
		line-height:1.8rem;
	}

	footer{
		padding:15px 10px 45px;
	}

	footer .footer_inner h1{
		width:100%;
		position:relative;
		text-align:center;
	}

	footer .site-footer-copyright{
		text-align:center;
	}

	#about{
		margin-bottom:50px;
	}

	.content_block h2 span{
		font-size:16px;
	}

	#about ul li .right_content dl dt{
		font-size:min(5.2vw , 18px);
	}

	#about ul li .right_content dl dd{
		font-size:min(4.5vw , 16px);
	}

	.galleryImg_expansion .galleryImg_expansion_inner_2,
	.galleryImg_expansion .galleryImg_expansion_inner{
		width:95%;
		height:auto;
	}
	
	.galleryImg_expansion .galleryImg_expansion_inner_2{
		width:90%;
	}

	#conditions table, #about2 p, #about p,
	#about .toFm p, #about2 .toFm p, .toFm p{
		width:95%;
		margin:auto;
	}

	#about2 p{
		margin-bottom:50px;
	}
	
	#about2 .about_main_img ul, #about .about_main_img ul {
		margin-top:10px;
	}
	
	.toFm a{
		width:70%;
	}

	#conditions table thead{
		display:none;
	}

	#conditions table tbody td,
	#conditions table tbody th{
		display:block;
		width:100%;
	}

	#conditions table tbody tr td:first-child::before{
		content:"■";
	}
	
	#conditions table tbody td{
		padding-top:0;
		padding-bottom:0;
	}

	#conditions table tbody tr td:last-child{
		padding-bottom:15px;
		padding-left:25px;
		margin-bottom:15px;
		border-bottom:none;
	}

	.index_property_list ul li{
		padding-top:0;
	}
	
	.index_property_list ul li .index_property_list_img_area{
		position:relative;
		left:0;
		top:0;
		width:100%;
		height:auto;
	}

	.index_property_list ul li .index_property_list_detailed_area{
		background:#dfdfdf;
		padding:5%;
		width:100%;
		margin-left:0;
	}

	.index_property_list ul li .index_property_list_detailed_area a{
		display:block;
		width:60%;
		margin:auto;
		margin-bottom:40px;
		float:none;
	}

	.index_property_list .onImg.villaa{
		left:5px;
	}

	.nisekoLand #about ul:not(.detailed) li{
		display: block;
	}
	.nisekoLand #about ul li .right_content,
	.nisekoLand #about ul li .left_content,
	.nisekoLand #about ul li .map_content{
		display:block;
		width:100%;
	}

	.nisekoLand #about p,
	.nisekoLand #about .gmap iframe,
	.nisekoLand #about .gmap,
	.nisekoLand #about ul li .map_content{
		margin-bottom:40px;
	}
}

@media all and (max-width:600px) {
	header.fixed .index_sns_menu li:last-child,
	header .index_sns_menu li:last-child{
		overflow:hidden;
		width:32vw;
	}

	header.fixed .index_sns_menu li:last-child a,
	header .index_sns_menu li:last-child a{
		font-size:max(1.2vw , 12px);
	}

	header .index_sns_menu li:first-child a img{
		width:4.5vw;
		min-width:24px;
		height:auto;
	}
	
	.property_list li,
	.property_list li:nth-child(2n+1){
		clear:both;
		width:100%;
		float:none;
		margin-bottom:40px;
		padding:0;
	}

	.index_property_list li .onImg,
	.property_list li .onImg{
		left:0;
		top:18px;
		padding:5px 10px;
		font-size:max(1vw , 10px);
		border-radius:0 5px 5px 0;
	}


	.property_list li .onImg.rrcc,
	.property_list li .onImg.villab,
	.property_list li .onImg.nisekoLand,
	.property_list li .onImg.villaa{
		left:5px;
	}
	

}
