@charset "utf-8";

/* =======================================================================================
	TEMPLATE
======================================================================================= */



/* =======================================================================================
	COMMON
======================================================================================= */


/* lNavWrap
--------------------------------------------------------------------------- */
	.lNavWrap::before,
	.lNavWrap::after {
		border-bottom: 1px solid #858585;
	}
	.lNav li {
		width: 30%;
		padding: 0 1.5em;
	}
	.lNav .label {
		--M-fluidFontSize-max-fontsize: 22;
		--M-fluidFontSize-min-fontsize: 16;
		font-family: var(--site-font_family-serif);
		color: #b9b9b9;
	}
	/* hover, focus */
	.lNavWrap li.is-current a .label{
		border-bottom: 4px solid #d1ab5b;
		color: #d1ab5b;
	}
@media screen and (max-width: 600px) {
	.lNav.sizeContentWideS {
		width: 98%;
	}
	.lNav li {
		width: 32%;
		padding: 0 .5em;
	}
}





/* =======================================================================================
	PAGE | 一覧
======================================================================================= */


@media screen and (max-width: 600px) {

}



/* ------------------------------------------------------------------------
galleryWrap
------------------------------------------------------------------------ */

/* galleryCategoryBox
---------------------------------------------------- */
.galleryCategoryBox {
	margin-bottom: var(--site-marpad-XXXL);
}
.galleryCategoryBox:last-child {
	margin-bottom: 0;
}


/* gallerySlideWrap（swiperスライドショー）
---------------------------------------------------- */
	.gallerySlideWrap {
		/*padding-top: var(--site-marpad-XL);*/
	}
	.gallerySlideWrap .swiper {
		position: relative;
		overflow: hidden;
		z-index: 1;
	}
	.gallerySlideWrap .swiper-slide .picUnit {
		position: relative;
	}
	.gallerySlideWrap .swiper-slide .picUnit img {
		display: block;
		width: 100%;
		height: auto;
	}

	/* キャプション（画像右下） */
	.gallerySlideWrap .swiper-slide .picUnit .picCaption {
		position: absolute;
		z-index: 1;
		right: 0;
		bottom: 0;
		color: #fff;
		line-height: 1.4;
		letter-spacing: .05em;
		font-size: 2rem;
		padding: .6em 1em;
		text-shadow: 0 0 5px rgba(0,0,0,.45), 0 0 20px rgba(0,0,0,.4);
	}
	/* 画像が明るく白文字が見えにくい場合：スライドに data-label-color="bk" を指定すると黒文字になる */
	.gallerySlideWrap .swiper-slide .picUnit .picCaption.bk {
		color: #000;
		text-shadow: 0 0 5px rgba(255,255,255,.85), 0 0 20px rgba(255,255,255,.8);
	}

	/* 矢印 */
	.gallerySlideWrap .swiper-button-prev,
	.gallerySlideWrap .swiper-button-next {
		width: 56px;
		height: 56px;
		border-radius: 50%;
		background: rgba(0,0,0,.5);
		margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
		transition: opacity .2s ease-out;
	}
	.gallerySlideWrap .swiper-button-prev {
		left: 16px;
	}
	.gallerySlideWrap .swiper-button-next {
		right: 16px;
	}
	.gallerySlideWrap .swiper-button-prev::after,
	.gallerySlideWrap .swiper-button-next::after {
		color: #fff;
		font-size: 18px;
	}
	/* hover, focus */
	@media (hover: hover) and (pointer: fine) {
		.gallerySlideWrap .swiper-button-prev:hover,
		.gallerySlideWrap .swiper-button-next:hover {
			opacity: .7;
		}
	}


	/* サムネイル
	----------------------- */
	[class*="galleryThumbnail_"] button {
		-webkit-appearance: none; -moz-appearance: none; appearance: none;
		color: inherit; font: inherit; text-align: inherit;
		background: transparent; border: none; border-radius: 0;
	}
	[class*="galleryThumbnail_"] button:not([disabled]) {
		cursor: pointer;
	}
	[class*="galleryThumbnail_"] .thumb-list {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 6px;
		margin-top: 6px;
	}
	[class*="galleryThumbnail_"] .thumb-item {
		flex: 0 0 calc((100% - (6px * 9)) / 10.001);
		position: relative;
		aspect-ratio: 1280 / 760;
		background: #000;
	}
	[class*="galleryThumbnail_"] .thumb-button {
		position: absolute;
		inset: 0;
		opacity: .4;
		transition: opacity .13s ease-out;
	}
	[class*="galleryThumbnail_"] .thumb-button img {
		display: block;
		width: 100%;
		max-width: none;
		height: 100%;
		object-fit: cover;
		object-position: 50% 50%;
	}
	/* active */
	[class*="galleryThumbnail_"] .thumb-item-active .thumb-button {
		opacity: 1;
	}
	/* hover, focus */
	@media (hover: hover) and (pointer: fine) {
		[class*="galleryThumbnail_"] .thumb-button:hover {
			opacity: 1;
		}
	}
	[class*="galleryThumbnail_"] .thumb-button:focus-visible {
		opacity: 1;
	}

@media screen and (max-width: 600px) {
	.gallerySlideWrap {
		padding-top: var(--site-marpad-M);
	}
	.gallerySlideWrap .swiper-button-prev,
	.gallerySlideWrap .swiper-button-next {
		width: 30px;
		height: 30px;
	}
	.gallerySlideWrap .swiper-button-prev {
		left: 5px;
	}
	.gallerySlideWrap .swiper-button-next {
		right: 5px;
	}
	.gallerySlideWrap .swiper-button-prev::after,
	.gallerySlideWrap .swiper-button-next::after {
		font-size: 14px;
	}
	[class*="galleryThumbnail_"] .thumb-list {
		gap: 4px;
	}
	[class*="galleryThumbnail_"] .thumb-item {
		flex: 0 0 calc((100% - (4px * 3)) / 4.001);
	}
	.gallerySlideWrap .swiper-slide .picUnit .picCaption {
		font-size: 1.4rem;
		padding: .4em .7em;
	}
}






/* ------------------------------------------------------------------------
equipment
------------------------------------------------------------------------ */
	/* ボディ */
	.equSectionBody {}


/* eqList
------------------------------------------------------------------------ */
	.eqList {
	}
	.eqList.generalColBox {
		--base-generalColBox-margin-row:	clamp(30px, (60 / 1400 * 100vw), 60px);
		--base-generalColBox-margin-column:	clamp(30px, (60 / 1400 * 100vw), 60px);
	}
	.eqListItem .pic {
		position: relative;
	}
	.eqListItem .pic img {
		width: 100%;
		max-width: none;
	}
	.eqListItem .ttl {
		line-height: 1.4;
		font-size: clamp(1.4rem, (16 / 1400 * 100vw), 1.6rem);
		padding: .8em 0 .6em;
		text-align: center;
	}


@media screen and (max-width: 600px) {
	.eqListItem .ttl {
		font-size: 1.6rem;
	}

}








