@charset "UTF-8";
#detail{
	position: relative;
	z-index: 25;

}
/*------------------------
トップエリア
------------------------*/

/*ギャラリー*/
.top-wrap .image-wrap{
	position: relative;
}
.image-wrap.js-anim{
		transform:none;
}
.top-wrap .mainimg .img{
	background: none;
	height: 100%;
}
.top-wrap .mainimg img{
	width: 100%;
	height: 100%;
	object-fit:contain;
	object-position: center;
}
.image-wrap .thumb-wrap .shopimg {
	opacity: .5;
	transition: opacity .3s;
}
.top-wrap .thumb-wrap .shopimg.is-active {
	opacity: 1;
}
.top-wrap .thumb-wrap img{
	width: 100%;
	height: 100%;
	object-fit:cover;
}
.mainimg .swiper-slide {
position: relative;
}
/* .mainimg .swiper-slide::before{
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: rgba(255, 255, 255, .3);
	pointer-events: none;
} */
.mainimg .swiper-slide > *{
	position: relative;
	z-index: 2;
}
.head-block{
	position: relative;
	display: flex;
	flex-direction: column;
	flex: 1;
}
.head-block::before,
.head-block::after{
	content: "";
	position: absolute;
	display: block;
	width: 34px;
	height: 56px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	filter: drop-shadow(2px 2px 6px rgba(0, 0, 0, 0.3));
}
.head-block::before{
	top: -1px;
	left: 0;
	background-image: url("/nishiogi-koukashita/img/pc/common/quotation marks_b.svg");
}
.head-block::after{
	right: 0;
	bottom: 0;
	background-image: url("/nishiogi-koukashita/img/pc/common/quotation marks_b2.svg");
}
.head-block{
	position: relative;
	display: flex;
	flex-direction: column;
	flex: 1;
}
.head-block .flex{
	display: flex;
	justify-content: space-between;
	align-items: end;
	color: var(--olive);
	font-weight: bold;
	position: relative;
}
.top-wrap h1,
.top-wrap .cat{
	letter-spacing:0.2em;
}
.top-wrap h1{
	line-height: 1.45;
	text-align: right;
}
.top-wrap .cat{
	text-align: right;
}
.top-wrap .flex .num{
	line-height: 1;
	position: absolute;
	left: 0;
	bottom: 0;
}
.head-block .head{
	display: flex;
	flex-direction: column;
	align-items: end;
	width: 100%;
}
.top-wrap .textarea{
	line-height: 2;
	letter-spacing: .08em;
}
/*テーブル*/
.top-wrap .outline table{
	border-top: 1px solid var(--green);
}
.top-wrap .outline table th{
	border-right: 1px solid var(--green);
	color: var(--green);
	font-weight: bold;
}
.top-wrap .outline table td{
	color: var(--olive);
	font-weight: bold;
}
/*SNS*/
.top-wrap .flex-btn{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.top-wrap .flex-btn .url a{
	color: var(--bg1);
	background:var(--sage);
	font-weight: bold;
}
#detail .top-wrap .sns-icon{
	display: flex;
}
#detail .top-wrap .sns-icon a{
	display: block;
	transition: all 0.5s ease 0s;
}
#floormap{
	position: relative;
}
#floormap .guide{
	display: flex;
	justify-content: space-between;
	position: relative;
}
.viewer-container .viewer-canvas img {
	background-color: var(--bg1);
	box-shadow: 0 0 0 24px var(--bg1);
}
/* PC */
@media screen and (min-width:768px) {
	#detail {
		padding-top: 190px;
	}
	#detail .inner{
		max-width: 1200px;
		margin: 0 auto;
	}
	#detail .top-wrap{
		display: flex;
		max-width: 1200px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.top-wrap .image-wrap{
		width: 45.833%;
		max-width: 550px;
	}
	.top-wrap .image-wrap .mainimg{
		width: 100%;
		height: 356px;
		overflow: hidden;
		margin-bottom: 50px;
	}
	.top-wrap .thumb-wrap {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
	}
	.top-wrap .thumb-wrap .img {
		width: calc((100% - 20px) / 3);
		aspect-ratio: 175 / 114;
	}

	.top-wrap .text-wrap{
		width: 42.333%;
		max-width: 508px;
	}
	.shop-detail .img-area img{
		width: 100%;
		height: auto;
	}
	/*カッコ*/
	.top-wrap .flex{
		padding-right: 18px;
		padding-left: 50px;
		margin-bottom: 35px;
	}
	.top-wrap .flex .num{
		font-size: 70px;
			padding-left: 50px;
			bottom: .05em;
	}
	.top-wrap h1{
		font-size: 28px;
		margin-bottom:42px;
	}
	.top-wrap .cat{
		font-size: 15px;
	}
	.top-wrap .textarea{
		padding: 0 40px 0 20px;
		padding-bottom: 50px;
		font-size: 16px;
	}
	/*table*/
	.top-wrap .outline table{
		font-size: 16px;
		margin-bottom: 45px;
	}
	.top-wrap .outline table th{
		padding:16px 13px 0 16px;
		width:24%
	}
	.top-wrap .outline table td{
		padding:16px 0 0 25px;
	}
	.top-wrap .outline table tr:first-of-type th,
	.top-wrap .outline table tr:first-of-type td{
			padding-top: 22px;
		}
	/*SNS*/
	.top-wrap .flex-btn .url a{
		width: 104px;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 40px;
	}
	.top-wrap .sns-icon a{
		width: 34px;
		height: 34px;
		display: block;
		margin-right: 8px;
		transition: all 0.5s ease 0s;
	}
	.top-wrap .sns-icon a:hover{
		transform: translateY(-5px);
	}
	#detail .come{
		font-size: 13px;
		margin-top: 40px;
	}
	.back{
		margin: 60px auto 0;
		padding-bottom: 110px;
	}
	/*フロアマップ*/
	#floormap {
		margin-top: 80px;
	}
	#floormap .guide {
		padding-top: 5px;
	}
	#floormap .guide .left,
	#floormap .guide .right{
		height: 26px;
		width: auto;
	}
	#floormap .guide .center{
		height: 32px;
		width: auto;
		margin-top: 20px;
	}
	.floor-control{
		width: fit-content;
		margin: 30px auto 0;
	
	}
	#floormap .zoom {
		position: relative;
		border-radius: 50%;
		aspect-ratio: 1 / 1;
		background-color: #1D6F66;
		width: 58px;
		height: 58px;
	}
	#floormap .zoom::before,
	#floormap .zoom::after{
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		width: 28px;
		height: 4px;
		background-color: var(--bg1);
		transform: translate(-50%, -50%);
	}
#floormap .zoom::after{
	transform: translate(-50%, -50%) rotate(90deg);
}
	/*ページャー*/
	.image-wrap.slide .slide-nav {
		display: none;
	}
}
@media screen and (min-width:768px) and (max-height:700px) {
	#detail {
		padding-top: 100px;
	}
}


/* SP */
@media screen and (max-width:767px) {
	#detail {
		padding: 11.8vw 3.846vw 0;
	}
	#detail .inner{
	}
	#detail .top-wrap{
	}
	.top-wrap .image-wrap{
		margin-bottom: 12vw;
	}
	.top-wrap .image-wrap .mainimg{
		margin: 0 -3.846vw;
		aspect-ratio: 390 / 254;
		overflow: hidden;
		margin-bottom:15.38vw;
	}
	.top-wrap .thumb-wrap {
		display: flex;
		flex-wrap: wrap;
		gap:1.8vw;
	}
	.top-wrap .thumb-wrap .img {
		width: calc((100% - 3.6vw) / 3);
		aspect-ratio: 119 / 77;
	}
	.top-wrap .text-wrap{
	}
	/*カッコ*/
	.head-block::before,
	.head-block::after{
		content: "";
		position: absolute;
		display: block;
		width: 6.154vw;
		height: 10.256vw;
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		filter: drop-shadow(0.51vw 0.51vw 1.54vw rgba(0, 0, 0, 0.3));
	}
	.top-wrap .flex{
		padding-right:5vw;
		padding-left: 8.46vw;
		margin-bottom:5.1vw;
	}
	.top-wrap .flex .num{
		font-size: 11.53vw;
		left: 8.46vw;
		bottom: .1em;
	}
	.top-wrap h1{
		font-size:5.64vw;
		margin-bottom:8.2vw;
	}
	.top-wrap .cat{
		font-size:2.82vw;
		max-width: 20em;
	}
	.top-wrap .textarea{
		padding: 0 6.14vw 7.435vw 6.14vw;
		font-size:3.33vw;
	}
	.head-block{
		margin-bottom: 6.6vw;
	}
	/*table*/
	.top-wrap .outline table{
		font-size: 3.07vw;
		margin-bottom: 8.7vw;
	}
	.top-wrap .outline table th{
		padding:3.5vw 2.82vw 0 3.07vw;
		width:24%
	}
	.top-wrap .outline table td{
		padding:3.5vw 0 0 3.59vw;
	}
	.top-wrap .outline table tr:first-of-type th,
	.top-wrap .outline table tr:first-of-type td{
			padding-top:4.1vw;
		}
	/*SNS*/
	.top-wrap .flex-btn .url a{
		width:19vw;
		display: flex;
		align-items: center;
		justify-content: center;
		height:7.18vw;
		font-size: 3.33vw;
	}
	.top-wrap .sns-icon a{
		width: 7.18vw;
		height: 7.18vw;
		display: block;
		margin-right: 2vw;
	}
	#detail .come{
		font-size:2.56vw;
		margin: 5.12vw 0 19vw ;
	}
	.back{
		margin: 0 auto 0;
		padding-bottom:25.64vw;
	}
	/*フロアマップ*/
	#floormap {
		margin-bottom: 24.87vw;
	}
	.floor-control{
		position: relative;
		padding-top: 7.7vw;
	}
	#floormap .zoom{
		position: absolute;
		border-radius: 50%;
		aspect-ratio: 1 / 1;
		background-color: #1D6F66;
		width: 8.97vw;
		height: 8.97vw;
		left: 50%;
		transform: translateX(-50%);
	}
		#floormap .zoom::before, #floormap .zoom::after {
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		width:4.36vw;
		height: 0.51vw;
		background-color: var(--bg1);
		transform: translate(-50%, -50%);
	}
	#floormap .zoom::after {
		transform: translate(-50%, -50%) rotate(90deg);
	}
		#floormap .guide {
		padding-top: 3vw;
	}
	#floormap .guide .left,
	#floormap .guide .right{
		height:4.8vw;
		width: auto;
	}
	#floormap .guide .center{
	height: 5vw;
	width: auto;
	margin-top: 4vw;
	}
	/*スライダー*/
	.image-wrap.slide .slide-nav {
		position: relative;
		z-index: 5;
		width: 100%;
	}
.image-wrap.slide .slide-arrow {
	position: absolute;
	width: 4.61vw;
	height: 2.82vw;
	padding: 0;
	border: 0;
	background: none;
	cursor: pointer;
	pointer-events: auto;
	bottom:6.1538vw;
}
.image-wrap.slide .slide-arrow::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	    background: url(/nishiogi-koukashita/img/pc/common/arrow_tri_green.svg)  center / contain no-repeat;
}
.image-wrap.slide .slide-prev {
	left:15.38vw;
}
.image-wrap.slide .slide-next {
	right:15.38vw;
}
.image-wrap.slide .slide-prev::before {
	transform: rotate(180deg);
}
}
/*------------------------
header
------------------------*/
/* PC */
@media screen and (min-width:768px) {
}
/* SP */
@media screen and (max-width:767px) {
}
/*------------------------
header
------------------------*/
/* PC */
@media screen and (min-width:768px) {
}
/* SP */
@media screen and (max-width:767px) {
}




