@charset "utf-8";

/**************************************************
 * 拡大ギャラリー
 **************************************************/
.expandedGallery {
	z-index: 9999;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 125%;
	background: rgba(0, 0, 0, 0.8);
	overflow: hidden;
}

/* stylelint-disable-next-line selector-max-universal */
.expandedGallery * {
	-webkit-transform: translateZ(0);
}

.expandedGallery .galleryHeader {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 50px;
}

.expandedGallery .galleryHeader .headContents {
	position: absolute;
	box-sizing: border-box;
	width: 100%;
	height: 50px;
	padding-right: 100px;
}

.expandedGallery .galleryHeader .imageNumber {
	line-height: 50px;
	margin-left: 15px;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-shadow: 1px 1px 3px #000;
}

.expandedGallery .galleryHeader .imageNumber.behindCategory {
	line-height: 25px;
}

.expandedGallery .galleryHeader .imageCategory {
	line-height: 25px;
	margin-left: 15px;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	text-shadow: 1px 1px 3px #000;
	word-wrap: break-word;
}

.expandedGallery .galleryHeader .imageListButton {
	display: block;
	position: absolute;
	right: 50px;
	width: 50px;
	height: 50px;
	background-image: url(https://asset01.suumo.jp/sp/img/chintaigakubura/detail/gallery/image_list_button.png?id=20251204a9a2df4acc9);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-filter: drop-shadow(1px 1px 1px #444);
}

.expandedGallery .galleryHeader .imageListButton.ui-hover {
	opacity: 0.75;
}

.expandedGallery .galleryHeader .imageListButton .imageListHelpBalloon {
	position: absolute;
	right: 42px;
	width: 116px;
	padding: 8px;
	margin: 10px 13px 0 0;
	background: #6db62d;
	border-radius: 2px;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	-moz-animation: helpBalloonAnime 2.5s ease 0.5s 1 alternate both;
	-webkit-animation: helpBalloonAnime 2.5s ease 0.5s 1 alternate both;
	animation: helpBalloonAnime 2.5s ease 0.5s 1 alternate both;
}

@-moz-keyframes helpBalloonAnime {
	0% {
		opacity: 1;
	}

	5% {
		-moz-transform: scale3d(1, 1, 1);
	}

	12% {
		-moz-transform: scale3d(1.2, 1.2, 1.2);
	}

	33% {
		-moz-transform: scale3d(1, 1, 1);
	}

	90% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

@-webkit-keyframes helpBalloonAnime {
	0% {
		opacity: 1;
	}

	5% {
		-webkit-transform: scale3d(1, 1, 1);
	}

	12% {
		-webkit-transform: scale3d(1.2, 1.2, 1.2);
	}

	33% {
		-webkit-transform: scale3d(1, 1, 1);
	}

	90% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

@keyframes helpBalloonAnime {
	0% {
		opacity: 1;
	}

	5% {
		transform: scale3d(1, 1, 1);
	}

	12% {
		transform: scale3d(1.2, 1.2, 1.2);
	}

	33% {
		transform: scale3d(1, 1, 1);
	}

	90% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

.expandedGallery .galleryHeader .imageListButton .imageListHelpBalloon::after {
	content: "";
	position: absolute;
	top: 8px;
	right: -13px;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 0 7px 14px;
	border-color: transparent transparent transparent #6db62d;
}

.expandedGallery .galleryHeader .closeButton {
	position: absolute;
	right: 0;
	width: 50px;
	height: 50px;
}

.expandedGallery .galleryHeader .closeButton::before,
.expandedGallery .galleryHeader .closeButton::after {
	content: "";
	position: absolute;
	display: block;
	top: 23px;
	left: 12px;
	width: 50%;
	height: 4px;
	background-color: #fff;
	transform-origin: 50% 2px;
	border-radius: 2px;
}

.expandedGallery .galleryHeader .closeButton::before {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
}

.expandedGallery .galleryHeader .closeButton::after {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
}

.expandedGallery .galleryHeader .closeButton.shadow::before {
	background: #000;
	box-shadow: 1px 0 3px #000;
}

.expandedGallery .galleryHeader .closeButton.shadow::after {
	background: #000;
	box-shadow: 0 1px 3px #000;
}

.expandedGallery .galleryFooter {
	position: absolute;
	left: 0;
	bottom: 20%;
	width: 100%;
	min-height: 50px;
}

.expandedGallery .galleryFooter .imageName {
	box-sizing: border-box;
	width: 100%;
	padding: 17px;
	font-size: 13px;
	font-weight: normal;
	color: #fff;
	text-align: left;
	word-wrap: break-word;
	text-shadow: 1px 1px 3px #000;
}

.expandedGallery .leftArrow {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 20%;
	width: 50px;
	height: 40px;
	margin: auto;
	background: url(https://asset01.suumo.jp/sp/img/chintaigakubura/detail/common/sprite/gallery.png?id=20251204a9a2df4acc9) left top no-repeat;
	-webkit-background-size: 25px 114px;
	background-size: 25px 114px;
	background-position: 10px 0;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.expandedGallery .rightArrow {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 20%;
	width: 50px;
	height: 40px;
	margin: auto;
	background: url(https://asset01.suumo.jp/sp/img/chintaigakubura/detail/common/sprite/gallery.png?id=20251204a9a2df4acc9) left top no-repeat;
	-webkit-background-size: 25px 114px;
	background-size: 25px 114px;
	background-position: 15px -40px;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.expandedGallery .galleryView {
	height: 100%;
}

.expandedGallery .galleryView li {
	overflow: hidden;
}

.expandedGallery .galleryView .imgWrap {
	width: 100%;
	height: 100%;
}

.expandedGallery .galleryView .imgWrap img {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 20%;
	margin: auto;
	-webkit-transform-origin: left top;
}

.expandedGallery span.loader {
	position: absolute;
	display: block;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

/**************************************************
 * 拡大ギャラリーの画像一覧
 **************************************************/
.imageList {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.imageList.hidden {
	display: none;
}

.imageList .scrollWrap {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.imageList .layout {
	position: relative;
	width: 100%;
	padding-top: 50px;
}

.imageList .layout .listBox {
	position: relative;
	display: block;
	float: left;
	height: auto;
}

.imageList .layout .listBox::before {
	content: "";
	display: block;
	padding-top: 100%;
}

.imageList .layout .listBox .imageWrap {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 98%;
	height: 98%;
	margin: auto;
	background-size: cover;
	background-position: center;
}

.imageList .layout .listBox .imageWrap img {
	display: none;
}

.imageList .titleWrap {
	position: absolute;
	top: 0;
	left: 0;
	height: 50px;
}

.imageList .titleWrap p {
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	line-height: 50px;
	margin-left: 15px;
	text-shadow: 1px 1px 3px #000;
}

.imageList .closeButton {
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	height: 50px;
}

.imageList .closeButton .crossIcon::before,
.imageList .closeButton .crossIcon::after {
	content: "";
	position: absolute;
	display: block;
	top: 23px;
	left: 12px;
	width: 50%;
	height: 4px;
	background-color: #fff;
	transform-origin: 50% 2px;
	border-radius: 2px;
}

.imageList .closeButton .crossIcon::before {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
}

.imageList .closeButton .crossIcon::after {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
}

.imageList .closeButton .crossIcon.shadow::before {
	background: #000;
	box-shadow: 1px 0 3px #000;
}

.imageList .closeButton .crossIcon.shadow::after {
	background: #000;
	box-shadow: 0 1px 3px #000;
}
