/*@mixin res-btn{
	a{
		display: block;
		padding: 1rem;
		border:solid 1px $c04;
		background: $c04;
		position: relative;
		padding: 2px;
		.txt{
			display: block;
			border:solid 1px $c04;
			padding: 10px;
			position: relative;
			z-index: 2;
			color: #fff;
			font-size: 1.4rem;
			line-height: 1;
			letter-spacing: .1em;
			text-align: center;
			transition: .3s;
		}
		&::after{
			content:"";
			display: block;
			width: 0;
			height: 100%;
			background: #fff;
			transition: .3s;
			position: absolute;
			top: 0;
			left: 0;
		}
		&:hover{
			.txt{
				color: $c04;
			}
			&::after{
				width: 100%;
			}
		}
	}
}*/
.sp { display: none !important; }
@media screen and (max-width: 480px) { .sp { display: block !important; } }

.gallery01 .inner2 { max-width: 1400px; }

.gallery-title { padding: 2.4rem calc(2.4rem + 7.5%); font-size: clamp(24px, 3vw, 4rem); color: #968246; text-align: left; line-height: 1.28; letter-spacing: 0.05em; }

#slide01 { width: 100%; }
#slide01 ul li .img .cap { font-size: 2rem; line-height: 1; letter-spacing: .1em; color: #fff; text-shadow: 0 0 10px #000,0 0 5px #000; position: absolute; bottom: 10px; right: 10px; z-index: 2; }
#slide01 .slick-slide li { padding: 0 2.4rem; transition: .3s; opacity: 0.48; }
#slide01 .slick-center li { opacity: 1; }
#slide01 .slide-arrow { bottom: 0; cursor: pointer; margin: auto; position: absolute; top: 0; width: 40px; z-index: 2; }
#slide01 .prev-arrow { left: 7.5%; }
#slide01 .next-arrow { right: 7.5%; }
@media screen and (max-width: 480px) { #slide01 .slick-slide li { padding: 0; opacity: 1; }
  #slide01 .prev-arrow { left: -2rem; }
  #slide01 .next-arrow { right: -2rem; } }

#thumb01 { max-width: 1080px; margin: auto; padding: 4.8rem 0 0; }
#thumb01 ul { display: grid; gap: 5px; grid-template-columns: repeat(5, 1fr); }
#thumb01 ul li { position: relative; cursor: pointer; }
#thumb01 ul li::after { content: ""; display: block; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.4); mix-blend-mode: multiply; position: absolute; left: 0; bottom: 0; transition: .3s; }
#thumb01 ul li .img { overflow: hidden; background: #000; cursor: pointer; }
#thumb01 ul li .img::before { content: ""; display: block; width: 100%; padding-bottom: 12%; background-image: linear-gradient(to top, black 32%, rgba(0, 0, 0, 0) 100%); mix-blend-mode: multiply; position: absolute; left: 0; bottom: 0; }
#thumb01 ul li .img .cap { width: 100%; left: 0; bottom: 0; padding: 6px 4px 4px; text-align: center; color: #fff; letter-spacing: 0.05em; }
#thumb01 ul li:hover::after, #thumb01 ul li.thumbnail-current::after { opacity: 0; }
#thumb01 ul li:hover .img img, #thumb01 ul li.thumbnail-current .img img { opacity: 1; }
@media screen and (max-width: 768px) { #thumb01 ul li .img::before { padding-bottom: 16%; } }
@media screen and (max-width: 480px) { #thumb01 ul { grid-template-columns: repeat(3, 1fr); }
  #thumb01 ul li .img::before { padding-bottom: 32%; } }
