@charset "utf-8";

/* mainimage */
#mainvisual{
	position: relative;
	overflow: hidden;
	width: 100%;
}
#mainvisual h2{
	width: 58.735%;
	position: absolute;
	bottom: -7px;
	right: 5%;
	z-index: 2;
	display: flex;
}
.mainimage{
	/* background: url("../img/main_image.webp") no-repeat top center; */
	/* background-size: cover; */
	width: 100%;
	/* min-height: 965px; */
}
/* .mainimage figcaption.cap_w{
	font-size: 12px;
	position: absolute;
	bottom: 10px;
	right: 20px;
	z-index: 2;
}
.mainimage figcaption.cap_b{
	font-size: 10px;
	position: absolute;
	bottom: 10px;
	right: 20px;
	z-index: 2;
} */
.contents_imgbg{
	background: url("../../common/img/concept_bg.webp") no-repeat top center;
	background-size: cover;
}
.inner{
	max-width: 1000px;
	margin: 0 auto;
}

/* mvlink */
.mv_links{
	/* position: absolute; */
	/* top: 17%; */
	width: 100%;
	padding: 80px 20px 0;
	/* z-index: 10; */
}
.mv_link{
	text-align: center;
}
.mv_link a{
	background: #ffffff;
	background: linear-gradient(90deg,#FFF 0%, #f0f0ea 100%);
	border-top: 1px solid #867756;
	border-right: 1px solid #867756;
	border-bottom: 1px solid #867756;
	border-left: 18px solid #867756;
	color: #867756;
	display: inline-flex;
	font-size: 20px;
	height: 100px;
	width: 40%;
	max-width: 460px;
	justify-content: center;
	align-items: center;
	margin: 0 10px;
	overflow: hidden;
	position: relative;
	text-decoration: none;
	transition: 0.5s;
}
.mv_link a::before{
	background: #867756;
	content: "";
	display: block;
	width: 80px;
	height: 40px;
	transform: rotate(-45deg);
	position: absolute;
	bottom: -20px;
	right: -40px;
}
.mv_link a span{
	font-size: 26px;
	letter-spacing: 0.15em;
}
.mv_link a:hover{
	opacity: 0.8;
}

/* location */
#location{
	/* padding: 150px 0; */
}
.location_main_container{
	max-width: 1560px;
	margin: 100px auto 0;
	position: relative;
}
.location_mainimage_text {
  color: #FFF;
  width: 100%;
  height: 100%;
  padding: 110px 20px 20px;
  text-align: center;
  position: absolute;
  top: 0;
  z-index: 2;
  /*text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.8);*/
  margin-bottom: 100px;
}
.location_mainimage_text h3 {
  font-size: 32px;
  letter-spacing: 0.15em;
  margin-bottom: 35px;
  font-weight: 600;
}
.location_mainimage_text p {
  font-size: 18px;
  letter-spacing: 0.1em;
  line-height: 200%;
  font-weight: 600;
}
.location_main_container p.note{
	font-size: 10px;
	text-align: right;
	margin-top: 5px;
}
.contents_head{
	color: #867756;
	margin: 80px 0;
}
.location_ttl{
	font-size: 40px;
	letter-spacing: 0.1em;
	text-align: center;
	margin-bottom:40px;
}
.location_read{
	font-size: 32px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-align: center;
}
.intro_main{
	position: relative;
}
.intro_mainimg img{
	width: 100%;
}
.intro_info{
	flex: 1;
}
.intro_info figure{
	margin-bottom: 20px;
}
.intro_info h4{
	font-size: 24px;
	margin-bottom: 0px;
}
.intro_info .distance_info{
	font-size: 18px;
}
.intro_info .distance_info strong{
	font-size: 36px;
	color: #867756;
	margin: 0 4px;
	line-height: 100%;
}
.contents_intro p.note{
	font-size: 14px;
	line-height: 180%;
	margin: 30px 0 0;
}
.contents_border {
  border-bottom: 1px solid #231815;
	padding-bottom: 80px;
}

/* shopping */
.shopping_mainflex{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
	margin-top: 50px;
}
.shopping .intro_mainimg{
	text-align: right;
}
.shopping .intro_info{
	padding-right: 30px;
}
.shopping .intro_main{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-direction: row-reverse;
}
.intro_mainimg{
	width: 66.38655462184874%;
}
.shopping_mainimg{
	width: 66.38655462184874%;
}
.shopping_info{
	display: flex;
	align-items: flex-end;
	flex: 1;
	padding-left: 40px;
	position: relative;
	flex-direction: column;
}
.shopping_info h4{
font-size: 24px;
}
/* .shopping_facilityinfo{
	background: #FFF;
	width: 46%;
	position: absolute;
	top: 40px;
	right: 0;
	padding: 25px;
} */
.shopping_facilityinfo h4{
	color: #867756;
	font-size: 16px;
	margin-bottom: 10px;
}
.shopping_facilityinfo ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	border-bottom: 1px solid #867756;
	border-top: 1px solid #867756;
	padding: 1em 0;
	margin-bottom:20px;
}
.shopping_facilityinfo ul li{
	font-size: 12px;
	width: 46%;
	line-height: 1.8;
	text-indent: -1em;
	padding-left: 1em;
}
.shopping_facilityinfo ul li:nth-child(even){
	font-size: 12px;
	width: 52%;
	line-height: 1.8;
	text-indent: -1em;
	padding-left: 1em;
}
.shopping_facilityinfo ul li.gap{
	line-height: 1.2;
}
.shopping_maininfo .distance_info{
	font-size: 18px;
}
.shopping_maininfo .distance_info strong{
	font-size: 36px;
	color: #867756;
	margin: 0 4px;
	line-height: 100%;
}
.shopping_maininfo p{
	margin-top: 30px;
	font-size: 14px;
	line-height: 1.8;
}
.location_list{
	margin-top: 60px;
}
.location_list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.location_list .location_detail{
	width: 30.67226890756303%;
	margin-bottom: 30px;
}
.location_list_txt ul{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.location_list_txt li{
	width: 40%;
}
.location_list_txt li span{
	color: #867756;
	margin-right:0.3em;
}
.location_detail h4{
	font-size: 16px;
	margin: 10px 0 0;
}
.location_detail .distance_info{
	font-size: 16px;
}
.location_detail .distance_info strong{
	color: #867756;
	font-size: 36px;
	margin: 0 3px;
	letter-spacing: 0.08em;
	line-height: 100%;
}
.location_wide{
	margin: 50px 0 80px;
	text-align: center;
}
.contents_label .location_read{
	color: #867756;
}

/* medical */
.medical .intro_mainimg{
	text-align: right;
}
.medical .intro_info{
	padding-right: 30px;
}
.medical .intro_main{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-direction: row-reverse;
}
.medical .intro_mainimg{
	text-align: right;
}


/* park */
.park .intro_mainimg{
	text-align: right;
}
.park .intro_info{
	padding-left: 30px;
}
.park .intro_main{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-direction: row;
}
.park .intro_info h4{
	font-size: 22px;
}
.park .intro_info figure{
	    margin-bottom: 0;
    margin-top: 20px;
}
.innertext{
	width: 74%;
	margin: 0 0 0 auto;
}
.location_list .location_detail.detail_mid{
	width: 47.9%;
}
.location_list .location_detail.detail_mid h4,.location_list .location_detail.detail_mid .distance_info{
	display: inline-block;
	margin: 10px 0 0;
}
.location_list .location_detail.detail_mid h4{
	margin-right: 20px;
}

/* education */
.education .intro_mainimg{
	text-align: right;
}
.education .intro_info{
	padding-right: 30px;
}
.education .intro_main{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-direction: row-reverse;
}

/* life information */
#lifeinformation{
	margin-top: 0;
}
.lifeinformation_listmap{
	width: 100%;
	max-width: 1425px;
	margin: 0 auto 100px;
}
.lifeinfo_btn{
	display: flex;
	justify-content: space-between;
}
.lifeinfo_btn li{
	border: 1px solid #999;
	width: 11.5%;
	height: 60px;
	display: flex;
	align-content: center;
	justify-content: center;
}
.lifeinfo_btn li div{
	display: flex;
	align-items: center;
	padding-left: 35px;
	margin-right: 10px;
	font-size: 0.9em;
    line-height: 1.3;
}
.lifeinfo_btn li.shopping div{
	background: url("../img/map/pin_shopping.svg") no-repeat left center;
	background-size: auto 30px;
}
.lifeinfo_btn li.gourmet div{
	background: url("../img/map/pin_gourmet.svg") no-repeat left center;
	background-size: auto 30px;
}
.lifeinfo_btn li.park div{
	background: url("../img/map/pin_park.svg") no-repeat left center;
	background-size: auto 30px;
}
.lifeinfo_btn li.public div{
	background: url("../img/map/pin_public.svg") no-repeat left center;
	background-size: auto 30px;
}
.lifeinfo_btn li.medical div{
	background: url("../img/map/pin_medical.svg") no-repeat left center;
	background-size: auto 30px;
}
.lifeinfo_btn li.education div{
	background: url("../img/map/pin_education.svg") no-repeat left center;
	background-size: auto 30px;
}
.lifeinfo_btn li.finance div{
	background: url("../img/map/pin_finance.svg") no-repeat left center;
	background-size: auto 30px;
}
.lifeinfo_btn li.leisure div{
	background: url("../img/map/pin_leisure.svg") no-repeat left center;
	background-size: auto 30px;
}
.lifeinfo_btn li.active{
	background: #eeeeee;
}
.googlemap{
	border: 1px solid #999;
	margin-top: 5px;
}
.googlemap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.googlemap #gmap {
  width: 70%;
  height: 600px;
  border-right: solid 1px #eeeeee;
}
.h_item{
  padding: 10px 0px 10px 0px;
  background-color: #f0f0f0;
  width: 30%;
}
.lifeinfo_column{
	max-height: 580px;
  overflow: auto;
}
.lifeinfo_column .panel{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.9em;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 14px 24px;
  cursor: pointer;
  border-bottom: 1px solid #dbd6d4;
}
.lifeinfo_column .panel .marker_img{
  width: 19px;
  margin: 0 5px 0 0;
}
.lifeinfo_column .panel .panel_txt {
  width: calc(100% - 25px);
}
.centerbnr {margin: 0 auto 100px;}


@media screen and (max-width: 1201px){
	.mv_link a span {
		font-size: 20px;
		letter-spacing: 0.1em;
	}
	.inner {
    width: 90%;
	}
}

@media screen and (max-width: 1099px){
	.shopping_mainflex {
	}
	.shopping_mainimg {
		width: 100%;
	}
	.shopping_facilityinfo {
		width: 40%;
		position: relative;
		top: 40px;
		right: 0;
		padding:0;
		margin: 15px 0;
		padding-left: 3%;
	}
	.shopping_info {
		padding-left: 0px;
		display: flex;
		flex-direction: row-reverse;
		justify-content: flex-end;
	}
}
@media screen and (max-width: 1001px){
	.location_mainimage_text {
	  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.8);
	}
	.mv_link a span {
		font-size: 16px;
		letter-spacing: 0.1em;
	}
	.location_read {
		font-size: 32px;
		letter-spacing: 0.1em;
	}
	.location_mainimage_text h3 {
		font-size: 30px;
		margin-bottom: 25px;
	}
	.location_mainimage_text p {
		font-size: 18px;
	}
	.location_list_txt li{
		width: 100%;
		font-size: 0.9em;
	}
	.intro_info h4 {
		font-size: 20px;
		margin-bottom: 0px;
	}
	.intro_info .distance_info {
		font-size: 18px;
	}
	.intro_info .distance_info strong {
		font-size: 36px;
	}
	.location_detail h4 {
		font-size: 16px;
	}
	.location_detail .distance_info {
		font-size: 15px;
	}
	.location_detail .distance_info strong{
		font-size: 30px;
	}
	.shopping .intro_info,.medical .intro_info,.park .intro_info,.education .intro_info{
		top: 15px;
	}
	.intro_info figure {
		margin-bottom: 10px;
	}
}
@media screen and (max-width: 767px){
	.inner{
		width: 90%;
	}
	
	/* mainimage */
	#mainvisual h2{
		width: 68.32%;
		bottom: -2px;
		right: 5%;
	}
	.mainimage{
		/* background: url("../img/main_image_sp.webp") no-repeat top center; */
		/* background-size: cover; */
		width: 100%;
		/* min-height: 384px; */
	}
	
	/* mv links */
	.mv_links{
		padding: 40px 20px 0 40px;
	}
	.mv_link a {
		border-left: 8px solid #867756;
		display: flex;
		font-size: 14px;
		height: 60px;
		width: 90%;
		max-width: 100%;
		margin: 10px;
		transition: 0.5s;
	}
	.mv_link a span {
		font-size: 18px;
		letter-spacing: 0.15em;
	}
	
	/* location */
	#location {
		/* padding: 70px 0; */
	}
	.location_main_container{
		margin: 60px 0 0;
	}
	.location_mainimage_text {
		padding: 50px 15px 30px;
		margin-bottom: 50px;
	  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.8);
	}
	.location_mainimage_text h3 {
		font-size: 1.3em;
		margin-bottom: 15px;
	}
	.location_mainimage_text p {
		font-size: 13px;
        line-height: 180%;
        text-align: left;
	}
	.location_main_container p {
        font-size: 13px;
        line-height: 180%;
        letter-spacing: 0.1em;
        text-align: center;
		margin-top: 30px;
    }
	.location_main_container p.note {
		font-size: 10px;
		text-align: left;
		margin-top: 5px;
		padding: 10px;
		letter-spacing: 0;
		line-height: 1.2;
	}
	.location_ttl {
		font-size: 32px;
		margin-bottom: 20px;
	}
	.location_read {
		font-size: 1.3em;
		letter-spacing: 0.1em;
	}
	.contents_head {
		margin: 40px 0;
	}
	.intro_mainimg{
		margin-bottom: 20px;
	}
	.intro_mainimg img {
		width: 100%;
	}
	.intro_info {
		width: 100%;
	}
	.intro_info h4 {
		font-size: 18px;
		margin-bottom: 0px;
	}
	.intro_info .distance_info {
		font-size: 14px;
	}
	.intro_info .distance_info strong {
		font-size: 28px;
	}
	.location_list{
		margin-top: 30px;
	}
	.location_list .location_detail {
		width: 48%;
		margin-bottom: 30px;
	}
	.location_detail h4 {
		font-size: 13px;
		letter-spacing: -0.01em;
	}
	.location_detail .distance_info {
		font-size: 12px;
		margin: 0 !important;
	}
	.location_detail .distance_info strong{
		font-size: 24px;
	}
	.contents_border {
		padding-bottom: 40px;
	}
	.shopping .intro_main,.medical .intro_main,.park .intro_main,.education .intro_main{
		display: block;
	}
	.intro_mainimg {
		width: 100% !important;
	}
	.shopping .intro_info, .medical .intro_info, .park .intro_info, .education .intro_info{
		padding: 0;
	}
	.contents_intro p.note {
		margin: 15px 0;
	}
	
	/* shopping */
	.shopping .intro_info,.medical .intro_info,.park .intro_info,.education .intro_info{
		position: relative;
		left: 0;
		top: 0;
	}
	.shopping_mainflex {
		display: block;
		margin-top: 30px;
	}
	.shopping_mainimg {
		width: 100%;
	}
	.shopping_facilityinfo {
		width: 100%;
		position: relative;
		top: 0;
		right: 0;
		padding:0;
		margin: 15px 0;
	}
	.shopping_info {
		padding-left: 0px;
		flex-direction: column-reverse;
		margin-top: 20px;
	}
	.shopping_info h4 {
	    font-size: 18px;
	}
	.shopping_maininfo .distance_info{
	    font-size: 14px;
	}
	.shopping_maininfo .distance_info strong {
	    font-size: 28px;
	}
	.location_wide {
		margin: 20px 0 40px;
	}
	
	.innertext {
		width: 100%;
		margin: 0;
	}
	.googlemap{
		margin: 0 10px;
		flex-wrap: wrap;
	}
	.googlemap #gmap {
		width: 100%;
		height: 50vh;
		border-right:none;
	}
	.h_item {
		padding: 30px 20px;
    width: 100%;
	}
	.lifeinfo_btn {
		margin: 0 10px;
		flex-wrap: wrap;
	}
	.lifeinfo_btn li{
		width: 49%;
		height: 50px;
		margin-bottom: 10px;
	}
.centerbnr {margin: 0 auto 50px;}
}