.view-02, .tpl-residents {
	display:block;
	box-sizing: border-box;
	padding:0;
	margin:0;
}

/* baner */
.view-02 .ps-baner {
	display:block;
	box-sizing:border-box;
	width:100%;	
	padding:0;
	margin:0;
	background-color:#ffffff;
}

.view-02 .ps-baner .st-bleed{
	display:block;
	box-sizing:border-box;
	padding:0 20px;
	margin:0;
}

.view-02 .ps-baner .st-cnt {
	display:block;
	box-sizing:border-box;
	max-width:1360px;
	padding:0;
	margin:0 auto;
	position:relative;
}

.view-02 .ps-baner .main-cols {
	display:flex;
	flex-direction:row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	box-sizing: border-box;
	max-width:1100px;
	padding: 0;
	margin: 0 auto;
}

.view-02 .ps-baner .main-cols .col-left {
	order:0;
	display:block;
	box-sizing:border-box;
	width:54%;
	padding:80px 40px 0 0;
	margin:0;
}

.view-02 .ps-baner .main-cols .col-left .description {
	display:block;
	box-sizing:border-box;
	max-width:460px;
	padding:0;
	margin:0 0 20px 0;
}

.view-02 .ps-baner .main-cols .col-left .description:last-child {
	margin:0;
}

.view-02 .ps-baner .main-cols .col-left .description .page-title {
	display:block;
	box-sizing:border-box;
	font-size:46px;
	font-weight:600;
	line-height:120%;
	text-align:left;
	color:#000;
	padding:0;
	margin:0 0 20px 0;	
}

.view-02 .ps-baner .main-cols .col-left .description .page-title:last-child {
	margin: 0;
}

.view-02 .ps-baner .main-cols .col-left .description p {
	display:block;
	box-sizing:border-box;
	font-size:16px;
	font-weight:400;
	line-height:140%;
	text-align:left;
	color:#000;
	padding:0;
	margin:0 0 20px 0;	
}

.view-02 .ps-baner .main-cols .col-left .description p:last-child {
	margin:0;
}

.view-02 .ps-baner .main-cols .col-right {
	order:0;
	display:block;
	box-sizing:border-box;
	width:46%;
	padding:0;
	margin:0;
}

.view-02 .ps-baner .main-cols .col-right .image {
	display:block;
	box-sizing:border-box;
	width:100%;
	height:580px;
	line-height:0;
	text-align:center;
	padding:0;
	margin:0;
	position:relative;
}

.view-02 .ps-baner .main-cols .col-right .image img {
	width:773px;
	max-width:none;
	height:267px;
	position:absolute;
	left:0;
	top:58%;
	transform:translateY(-50%);
}

@media only screen and (max-width: 960px) { 
	.view-02 .ps-baner .main-cols {
		flex-wrap: wrap;
	}

	.view-02 .ps-baner .main-cols .col-left {
		order:1;
		display:flex;
		flex-direction:row;
		flex-wrap:nowrap;
		justify-content:center;
		align-items: stretch;
		width:100%;
		padding:60px 0 90px 0;
	}

	.view-02 .ps-baner .main-cols .col-left .description {
		max-width:none;
	}

	.view-02 .ps-baner .main-cols .col-right {
		order:0;
		width:100%;
		padding:120px 0 0 0;
	}

	.view-02 .ps-baner .main-cols .col-right .image {
		height:280px;
	}

	.view-02 .ps-baner .main-cols .col-right .image img {
		width:auto;
		max-width:none;
		height:100%;
		position:absolute;
		left:50%;
		top:0;
		transform:translateX(-50%);
	}		
}

@media only screen and (max-width: 768px) { 
	.view-02 .ps-baner .main-cols .col-left .description .page-title {
		font-size:40px;
	}

	.view-02 .ps-baner .main-cols .col-left .description p {
		font-size:14px;
	}
}

@media only screen and (max-width: 640px) { 

	.view-02 .ps-baner .main-cols .col-left {
		padding:60px 0 70px 0;
	}

	.view-02 .ps-baner .main-cols .col-right {
		padding:140px 0 0 0;
	}
}

@media only screen and (max-width: 480px) {
	.view-02 .ps-baner .main-cols .col-left .description .page-title {
		font-size:32px;
	}

	.view-02 .ps-baner .main-cols .col-right .image {
		height:180px;
	}	
}

/* phone */
.view-02 .ps-phone {
	display:block;
	box-sizing:border-box;
	width:100%;	
	padding:0;
	margin:0;
	background-color:#00a5d0;
}

.view-02 .ps-phone .st-bleed{
	display:block;
	box-sizing:border-box;
	padding:0 20px;
	margin:0;
}

.view-02 .ps-phone .st-cnt {
	display:block;
	box-sizing:border-box;
	max-width:1360px;
	padding:0;
	margin:0 auto;
}

.view-02 .ps-phone .main-cols {
	display:flex;
	flex-direction:row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	box-sizing: border-box;
	max-width:1100px;
	padding: 0;
	margin: 0 auto;
}

.view-02 .ps-phone .main-cols .col-left {
	order:0;
	display:block;
	box-sizing:border-box;
	width:54%;
	padding:0;
	margin:0;
}

.view-02 .ps-phone .main-cols .col-left .image {
	display:block;
	box-sizing:border-box;
	width:360px;
	height:580px;	
	line-height:0;
	text-align:center;
	padding:0;
	margin:0;
	position:relative;
	bottom:30px;
}

.view-02 .ps-phone .main-cols .col-left .image .phone {
	display:block;
	box-sizing:border-box;
	width:360px;
	max-width:none;
	height:600px;
	position:absolute;
	left:0;
	bottom:0;
	background-image: url(../images/pages/residents/htc_phone.png);
	background-repeat:no-repeat;
	background-position: center center;
	background-size: contain;
	z-index:30;
}

.view-02 .ps-phone .main-cols .col-left .image .comment-black {
	display:block;
	box-sizing:border-box;	
	width:115px;
	max-width:none;
	height:86px;
	position:absolute;
	left:288px;
	bottom:190px;
	background-image: url(../images/svg/pages/residents/comment_black.svg);
	background-repeat:no-repeat;
	background-position: center center;
	background-size: contain;
	z-index:20;
}

.view-02 .ps-phone .main-cols .col-left .image .comment-white {
	display:block;
	box-sizing:border-box;	
	width:169px;
	max-width:none;
	height:126px;
	position:absolute;
	left:276px;
	bottom:300px;
	background-image: url(../images/svg/pages/residents/comment_white.svg);
	background-repeat:no-repeat;
	background-position: center center;
	background-size: contain;
	z-index:40;
}

.view-02 .ps-phone .main-cols .col-right {
	order:1;
	display:block;
	box-sizing:border-box;
	width:46%;
	padding:0;
	margin:0;
}

.view-02 .ps-phone .main-cols .col-right .description {
	display:block;
	box-sizing:border-box;
	max-width:540px;
	padding:0;
	margin:0 0 20px 0;
}

.view-02 .ps-phone .main-cols .col-right .description:last-child {
	margin:0;
}

.view-02 .ps-phone .main-cols .col-right .description p {
	display:block;
	box-sizing:border-box;
	font-size:16px;
	font-weight:400;
	line-height:140%;
	text-align:left;
	color:#fff;
	padding:0;
	margin:0 0 20px 0;	
}

.view-02 .ps-phone .main-cols .col-right .description p:last-child {
	margin:0;
}

@media only screen and (max-width: 960px) { 

	.view-02 .ps-phone .main-cols {
		flex-wrap: wrap;
	}

	.view-02 .ps-phone .main-cols .col-left {
		width:100%;
	}

	.view-02 .ps-phone .main-cols .col-left .image {
		width:288px;
		height:480px;
		margin:0 auto;
		left:-60px;
	}

	.view-02 .ps-phone .main-cols .col-left .image .phone {
		width:100%;
		height:100%;
	}

	.view-02 .ps-phone .main-cols .col-left .image .comment-black {
		width:92px;
		height:68px;
		left:230px;
		bottom:160px;
	}

	.view-02 .ps-phone .main-cols .col-left .image .comment-white {
		width:135px;
		height:100px;
		left:220px;
		bottom:240px;
	}

	.view-02 .ps-phone .main-cols .col-right {
		width:100%;
		padding:10px 0 70px 0;
	}

	.view-02 .ps-phone .main-cols .col-right .description {
		max-width:none;
	}	
}

@media only screen and (max-width: 768px) { 

	.view-02 .ps-phone .main-cols .col-right .description p {
		font-size:14px;
	}
}

@media only screen and (max-width: 640px) { 

	.view-02 .ps-phone .main-cols .col-left .image {
		width:252px;
		height:420px;
	}

	.view-02 .ps-phone .main-cols .col-left .image .comment-black {
		width:80px;
		height:60px;
		left:200px;
		bottom:130px;
	}

	.view-02 .ps-phone .main-cols .col-left .image .comment-white {
		width:116px;
		height:86px;
		left:190px;
		bottom:210px;
	}	
}

@media only screen and (max-width: 480px) { 

	.view-02 .ps-phone .main-cols .col-left .image {
		width:216px;
		height:360px;
		left:-30px;
	}

	.view-02 .ps-phone .main-cols .col-left .image .comment-black {
		width:78px;
		height:52px;
		left:170px;
		bottom:110px;
	}

	.view-02 .ps-phone .main-cols .col-left .image .comment-white {
		width:100px;
		height:72px;
		left:170px;
		bottom:190px;
	}	

	.view-02 .ps-phone .main-cols .col-right {
		padding:0 0 60px 0;
	}	
}

/* map */
.view-02 .ps-map {
	display:block;
	box-sizing:border-box;
	width:100%;	
	padding:0;
	margin:0;
	background-color:#fff;
}

.view-02 .ps-map .st-bleed{
	display:block;
	box-sizing:border-box;
	padding:0 20px;
	margin:0;
}

.view-02 .ps-map .st-cnt {
	display:block;
	box-sizing:border-box;
	max-width:1360px;
	padding:0;
	margin:0 auto;
}

.view-02 .ps-map .main-cols {
	display:flex;
	flex-direction:row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	box-sizing: border-box;
	max-width:1100px;
	padding: 0;
	margin: 0 auto;
}

.view-02 .ps-map .main-cols .col-left {
	order:0;
	display:block;
	box-sizing:border-box;
	width:52%;
	padding:100px 40px 0 0;
	margin:0;
}

.view-02 .ps-map .main-cols .col-left .description {
	display:block;
	box-sizing:border-box;
	max-width:540px;
	padding:0;
	margin:0 0 20px 0;
}

.view-02 .ps-map .main-cols .col-left .description:last-child {
	margin:0;
}

.view-02 .ps-map .main-cols .col-left .description p {
	display:block;
	box-sizing:border-box;
	font-size:16px;
	font-weight:400;
	line-height:140%;
	text-align:left;
	color:#000;
	padding:0;
	margin:0 0 20px 0;	
}

.view-02 .ps-map .main-cols .col-left .description p:last-child {
	margin:0;
}

.view-02 .ps-map .main-cols .col-right {
	order:1;
	display:block;
	box-sizing:border-box;
	width:48%;
	padding:0;
	margin:0;
}

.view-02 .ps-map .main-cols .col-right .image {
	display:block;
	box-sizing:border-box;
	width:100%;
	height:500px;
	line-height:0;
	text-align:center;
	padding:0;
	margin:0;
	position:relative;
}

.view-02 .ps-map .main-cols .col-right .image img {
	width:425px;
	height:400px;
	position:absolute;
	right:-15px;
	bottom:20px;
}

@media only screen and (max-width: 960px) { 
	.view-02 .ps-map .main-cols {
		flex-wrap: wrap;
		justify-content: center;
	}

	.view-02 .ps-map .main-cols .col-left {
		order:1;
		width:100%;
		padding:50px 0 20px 0;
	}

	.view-02 .ps-map .main-cols .col-left .description {
		max-width:none;
	}

	.view-02 .ps-map .main-cols .col-right {
		order:0;
		width:100%;
		padding:50px 0 0 0;
	}

	.view-02 .ps-map .main-cols .col-right .image {
		width:auto;
		height:auto;
	}

	.view-02 .ps-map .main-cols .col-right .image img {
		width:100%;
		max-width:60%;
		height:auto;
		position:static;
		right:auto;
		bottom:auto;
	}
}

@media only screen and (max-width: 768px) { 
	.view-02 .ps-map .main-cols .col-left {
		padding:40px 0 20px 0;
	}

	.view-02 .ps-map .main-cols .col-left .description p {
		font-size:14px;
	}
}

@media only screen and (max-width: 640px) {
	.view-02 .ps-map .main-cols .col-right .image img {
		max-width:80%;
	}
}

@media only screen and (max-width: 480px) {
	.view-02 .ps-map .main-cols .col-left {
		padding:30px 0 20px 0;
	}

	.view-02 .ps-map .main-cols .col-right .image img {
		max-width:90%;
	}
}

@media only screen and (max-width: 400px) {
	.view-02 .ps-map .main-cols .col-right .image img {
		max-width:100%;
	}
}

/* app */
.view-02 .ps-app {
	display:block;
	box-sizing:border-box;
	width:100%;	
	padding:0;
	margin:0;
	background-color:#fff;
}

.view-02 .ps-app .st-bleed{
	display:block;
	box-sizing:border-box;
	padding:0 20px;
	margin:0;
}

.view-02 .ps-app .st-cnt {
	display:block;
	box-sizing:border-box;
	max-width:1100px;
	height:160px;
	padding:0;
	margin:0 auto;
}

.view-02 .ps-app .main-cols {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	box-sizing: border-box;
	height: 100%;
	padding: 0;
	margin: 0;
}

.view-02 .ps-app .main-cols .col-left {
	display: block;
	box-sizing: border-box;
	padding: 0;
	margin: 0 30px 0 0;
}

.view-02 .ps-app .main-cols .col-right {
	display: block;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

.view-02 .ps-app .description {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

.view-02 .ps-app .description .icon-arrow {
	display: block;
	box-sizing: border-box;
	width: 42px;
	height: 42px;
	padding: 0;
	margin: 0 24px 0 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;		
	background-image:url(../images/svg/arrow_down_in_black_circle.svg);
}

.view-02 .ps-app .description .text {
	display: block;
	box-sizing: border-box;	
	font-size:20px;
	font-weight:700;
	line-height:100%;
	text-align:left;
	white-space: nowrap;
	color:#000;
	padding: 4px 0 0 0;
	margin: 0;
}

.view-02 .ps-app .store-buttons {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-end;
	align-items: stretch;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

.view-02 .ps-app .store-buttons .item {
	display: block;
	box-sizing: border-box;
	padding: 0;
	margin: 0 30px 0 0;
}

.view-02 .ps-app .store-buttons .item:last-child {
	margin:0;
}

.view-02 .ps-app .store-buttons .item .btn {
	display: block;
	box-sizing: border-box;
	width:160px;
	height:48px;
	line-height:0;
	padding: 0;
	margin: 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;	
}

.view-02 .ps-app .store-buttons .item .btn.app-store {
	background-image:url(../images/svg/app_store_black.svg);
}

.view-02 .ps-app .store-buttons .item .btn.google-play {
	background-image:url(../images/svg/google_play_black.svg);
}

@media only screen and (max-width: 768px) {

	.view-02 .ps-app .st-cnt {
		height:auto;
	}

	.view-02 .ps-app .main-cols {
		flex-direction: column;
		align-items: center;		
		height:auto;
		padding:30px 0 70px 0;
	}

	.view-02 .ps-app .description {
		margin: 0 0 30px 0;
	}

	.view-02 .ps-app .description .icon-arrow {
		width: 32px;
		height: 32px;
		margin: 0 20px 0 0;
	}	
}

@media only screen and (max-width: 480px) {

	.view-02 .ps-app .description .text {
		font-size:18px;
	}

	.view-02 .ps-app .store-buttons {
		flex-direction: column;
		justify-content: center;
	}

	.view-02 .ps-app .store-buttons .item {
		margin: 0 0 20px 0;
	}			
}