@charset "UTF-8";
/* CSS Document */

/* html{
	scroll-behavior: smooth;
	scroll-padding-top: 100px;
} */

/** header **/

/** パンくず ***/

.logo {
		width: 260px;
}
@media (width < 1025px) {
    .logo {
        width: 180px;
    }
}

/* footer */
.footerL {
	width: 370px;
}
.footerL a {
	display: block;
	width: 214px;
	height: 63px;
	margin: 5px 0 0 0;
}
.footerL a img {
	display: block;
	width: 214px;
	height: 63px;
}
.footerR2 {
	/* padding-top: 17px; */
}

  /*///////////////////////////////////////
 TOP
 /////////////////////////////////////*/

/*** mv ***/

.img-route_map{
  width: 240px;
  position: absolute;
  transform: translate(-50%);
  left: 85%;
  bottom: 0;
}
@media (width < 640px) {
.img-route_map{
    width: 40%;
    position: absolute;
    transform: translate(-50%);
    left: 75%;
    bottom: 0;
  }
}
@media (768px <= width < 821px)  {
.img-route_map{
    width: 200px;
    position: absolute;
    transform: translate(-50%);
    left: 83%;
    top: 20px;
    bottom: auto;
  }
}

.sec011L {
	display: table-cell;
	width: 710px;
	vertical-align: top;
	padding-right: 15px;
	display: flex;
	flex-wrap: wrap;
	position: relative;
	a{
		transition: ease .3s;
	}
	a:hover{
		opacity: .7;
		transition: ease .3s;
	}
}
.sec011L img {
	display: block;
	/* object-fit: cover; */
}
 a.c-btn {
	position: absolute;
	bottom: 10px;
	width: 480px;
	line-height: 0;
	transition: all .3s;
}
@media screen and (max-width: 969px) {
	a.c-btn {
		position: static;
		display: block;
		margin-top: 5px;
		width: 100%;
		line-height: 0;
		transition: all .3s;
	}
}
.sec011L a.c-btn:hover {
	transition: all .3s;
	opacity: .5;
}
.sec011R {
	display: table-cell;
	width: 236px;
	vertical-align: top;
}
.sec011R img {
	display: block;
	width: 236px;
	height: 377px;
	object-fit: cover;
}

.sec011WrapperSP{
	position: relative;
}

/* space */
.spaceL {
	vertical-align: top;
	padding-top: calc(25px + 1.1em);
}
@media screen and (max-width: 969px) {
	.spaceL {
		vertical-align: top;
		padding-top: 0;
	}
}

/* floor */

  /*///////////////////////////////////////
 フロアマップ　スクロールボタン
 /////////////////////////////////////*/

 .bt-area{
	margin-top: 40px;
}

.upperLink {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	padding-bottom: 10px;
}
.upperLink li {
	/* width: 235px; */
	width: calc(100% / 5 - 10px);
}
@media screen and (max-width: 969px) {
	.upperLink li {
		width: calc((100% - 30px) / 4);
	}
}
.upperLink li a {
	display: block;
	padding: 7px 0;
	border: 1px solid #61a82b;
	border-radius: 5px;
	color: #5b5b5b;
	text-align: center;
	/* font-size: 90%; */
	font-size: 16px;
	font-weight: 600;
}

/* ソートボタンの調整 */
.sortTitle{
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.sortTitle li{
	padding: 0;
}

.sortTitle li span{
	display: block;
	line-height: 2.3;
	height: 30px;
}

@media screen and (min-width: 970px) {
	.sortTitle li:nth-of-type(8){
		margin-left: 90px;
	}

	.sortTitle li:nth-of-type(14){
		margin-left: 90px;
	}
}

.sortTitle li a.sort_btn{
	border: solid 1px #ccc;
	border-radius: 5px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #595959;
	font-weight: 600;
	box-sizing: border-box;
}

.sortTitle li a.sort_btn:hover{
	text-decoration: none;
	opacity: .7;
}

.sortTitle .fa-solid{
	font-size: 12px;
}

.floorH2{
	/* scroll-padding-top: 100px; */
	/* scroll-margin-top: 100px; */
}

.floor_sec041 {
	
}
.floor_shimbashi_18f {
	display: block;
	width: 970px;
	height: 450px;
	background: url(/images/shimbashi/floor/floor_18f.jpg) no-repeat 0 0;
}
.floor_shimbashi_17f {
	display: block;
	width: 970px;
	height: 450px;
	background: url(/images/shimbashi/floor/floor_17f.jpg) no-repeat 0 0;
}
.floor_shimbashi_16f {
	display: block;
	width: 970px;
	height: 450px;
	background: url(/images/shimbashi/floor/floor_16f.jpg) no-repeat 0 0;
}
#f1801 {
	display: block;
	width: 90px;
	height: 43px;
	position: relative;
		top: 195px;
		left: 453px;
}
#f1701 {
	display: block;
	width: 90px;
	height: 43px;
	position: relative;
		top: 79px;
		left: 777px;
}
#f1702 {
	display: block;
	width: 90px;
	height: 43px;
	position: relative;
		top: 150px;
		left: 527px;
}
#f1703 {
	display: block;
	width: 90px;
	height: 43px;
	position: relative;
		top: 107px;
		left: 263px;
}
#f1601 {
	display: block;
	width: 90px;
	height: 43px;
	position: relative;
		top: 306px;
		left: 778px;
}
#f1602 {
	display: block;
	width: 90px;
	height: 43px;
	position: relative;
		top: 263px;
		left: 519px;
}
#f1603 {
	display: block;
	width: 90px;
	height: 43px;
	position: relative;
		top: 220px;
		left: 250px;
}
#f1604 {
	display: block;
	width: 90px;
	height: 43px;
	position: relative;
		top: -24px;
		left: 263px;
}
#f1605 {
	display: block;
	width: 90px;
	height: 43px;
	position: relative;
		top: -67px;
		left: 552px;
}
#f1801 a,
#f1801 a img,
#f1701 a,
#f1701 a img,
#f1702 a,
#f1702 a img,
#f1703 a,
#f1703 a img,
#f1601 a,
#f1601 a img,
#f1602 a,
#f1602 a img,
#f1603 a,
#f1603 a img,
#f1604 a,
#f1604 a img,
#f1605 a,
#f1605 a img {
	display: block;
	width: 90px;
	height: 43px;
}
#f1801 a img,
#f1701 a img,
#f1702 a img,
#f1703 a img,
#f1601 a img,
#f1602 a img,
#f1603 a img,
#f1604 a img,
#f1605 a img {
	opacity: 0.6;
	filter: alpha(opacity=60);
}

#f1801 a:hover img,
#f1701 a:hover img,
#f1702 a:hover img,
#f1703 a:hover img,
#f1601 a:hover img,
#f1602 a:hover img,
#f1603 a:hover img,
#f1604 a:hover img,
#f1605 a:hover img {
	opacity: 1.0;
	filter: alpha(opacity=100);
}

.f1801 {
	position: relative;
	top: 2px;
	left: 453px;
}
.f1701 {
	display: block;
	width: 90px;
	height: 43px;
	position: relative;
		top: 79px;
		left: 777px;
}
.f1702 {
	position: relative;
	top: 348px;
	left: 447px;
}
.f1703 {
	position: relative;
	top: 347px;
	left: 94px;
}
.f1601 {
	position: relative;
	top: 306px;
	left: 795px;
}
.f1602 {
	position: relative;
	top: 398px;
	left: 459px;
}
.f1603 {
	position: relative;
	top: 398px;
	left: 100px;
}
.f1604 {
	position: relative;
	top: 6px;
	left: 33px;
}
.f1605 {
	position: relative;
	top: 6px;
	left: 262px;
}

/* access */ 
.sec03L {
	width: 420px;
}
.sec03R {
	width: 520px;
	padding-left: 30px;
}
.sec03R img {
	display: block;
	width: 520px;
	height: auto;
}
h3.sec03gaikanEntTitle {
	margin-top: 20px;
	margin-bottom: 5px;
	color: #333;
	font-size: 114%;
	font-weight: bold;
	text-align: left;
}
h3.sec03gaikanEntTitle:before {
	content: "■";
	color: #ccc;
	margin-right: 0.2em;
}
.sec03gaikanEntWrapper {
	display: table;
}
.sec03gaikanEnt {
	display: table-cell;
	width: 150px;
	padding: 0 10px;
}
.sec03gaikanEnt a,
.sec03gaikanEnt a img {
	display: block;
	width: 150px;
	height: 100px;
}
.sec03gaikanEnt a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
}
.sec03gaikanEnt span {
	display: block;
	text-align: center;
}
.spEntrance {
	display: none;
}


/* price-floorMap 201906 */
.price_floorMap {
	margin-top: 20px;
}
.price_floorMapTitleWrapper {
	margin-top: 20px;
}
.price_floorMapTitle {
	float: left;
	width: 475px;
	margin-right: 20px;
}
.price_floorMap .price_floorMapTitle:last-child {
	margin-right: 0;
}
.price_floorMapTitle span {
	padding: 2px 1em;
	background: #6eb42f;
	border-radius: 5px;
	color: #fff;
	font-size: 114.28571%;
	font-weight: bold;
}
.price_floorMapWrapper {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-content:stretch;
	margin-top: 5px;
}
.price_floorMapCont {
	width: 453px;
	padding: 10px;
	border: 1px solid #cfcfcf;
	align-items: center;
}
.price_floorMapCont a {
	display: block;
	width: 100%;
}
.price_floorMapCont a img {
	display: block;
	width: 100%;
}


.bannerSet li:nth-child(3) {
	/* display: none; */
}

.access01 {
	display: block;
	width: 300px;
}



.sister_pc {
	display: block;
	width: 970px;
	height: 450px;
	overflow: hidden;
	position: relative;
}
.sister_pc_bg {
	display: block;
	width: 970px;
	height: 450px;
}
.sister_pc_btn {
	display: block;
	width: 360px;
	height: 310px;
	position: relative;
	z-index: 2;
	top: -380px;
	left: 590px;
}
.sister_pc_btn a,
.sister_pc_btn a img {
	display: block;
	width: 360px !important;
	height: 310px !important;
	transition: all 0.3s;
}
.sister_pc_btn a img:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	transition: all 0.3s;
}

.sister_sp {
	display: none;
}

/*///////////////////////////////////////
 2024.05.01　新規追加　凡例アイコン調整
 /////////////////////////////////////*/

 @media screen and (min-width: 970px) {
  .legend_box {
    gap: 50px;
  }
}

@media screen and (max-width: 820px) {
	.legend_box {
		gap: 20px 10px;
	}
}


/*///////////////////////////////////////
 2024.05.17　TOP MV スライダー
 /////////////////////////////////////*/
 .swiper {
	width: 100%;
	height: 100%;
}

.swiper-slide {
	background-position: center;
	background-size: cover;
}

.swiper-slide a{
	transition: all .3s;
}

.swiper-slide a:hover:not(.mv *) {
	opacity: .7;
	transition: all .3s;
}

.swiper-slide img {
	display: block;
	width: 100%;
}

.swiper-button-next,
.swiper-button-prev {
	color: #fff;
	filter: drop-shadow(2px 2px 3px #777777);
}

.swiper-button-next:after,
.swiper-button-prev:after {
	font-size: 33px;
}

@media screen and (max-width: 768px) {

	.swiper-button-next:after,
	.swiper-button-prev:after {
		font-size: 22px;
	}
}

.swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	border-radius: 0;
	background-color: rgb(0, 0, 0, .2);
	border: solid 1px #bbb;
	opacity: 1;
}

.swiper-pagination-bullet-active {
	background-color: #72c232;
	width: 10px;
	height: 10px;
	border: solid 1px #fff;
}

