@charset "UTF-8";
/* このCSSは[php/set_03_style/style_05_mainview.php]により生成されます。 */

#mainview_wrap #mainview_slider{z-index:1}
#mainview_wrap .slide_caption_wrap{
	z-index:2;
	top:0;
	right:0;
	bottom:0;
	left:0;
	pointer-events:none;
	opacity:0;
	transition:880ms ease;
}
#mainview_slider.is_ready .slick-current .slide_caption_wrap{
	opacity:1;
	transition-delay:440ms;
}
#mainview_wrap .slide_caption_inner{padding:32px 56px;}
#mainview_wrap .slide_caption_inner *{pointer-events: auto}
#mainview_slider .slide_item{padding:0}
#mainview_slider .slide_img_wrap{height:calc(100svh - 0px - var(--header-main-height));}
#mainview_slider .slide_img_wrap::after{
	content:"";
	display:block;
	position:absolute;
	z-index:1;
	inset:0;
	pointer-events:none;
	background:rgba(0,0,0,0.59);
}
#mainview_slider .slide_img{
	transform:scale(1.2);
transition:transform 2.4s cubic-bezier(.645, .045, .355, 1);
}
#mainview_slider .slick-slide.slick-current .slide_img{transform: scale(1);opacity:1}
#mainview_slider .slick-prev,
#mainview_slider .slick-next {
	position: absolute;
	z-index: 5;
	border: none;
	width: 32px;
	height: 32px;
	top:50%;
	transform: translateY(-50%);
	border-radius:10%;
	background: rgba(0,0,0,0.5);
	color:#fff;
	cursor: pointer;
	transition: background 0.4s;
}
#mainview_slider .slick-prev {left:8px}
#mainview_slider .slick-next {right:8px}
#mainview_slider .svg_icon {font-size:13px}
#mainview_dots{
	width:100%;
	position: absolute;
	left: 0;
	bottom: 8px;
	z-index:5;
	pointer-events:none;
}
#mainview_dots .slick-dots{
	display: flex !important;
	justify-content:center;
	gap: 12px;
	margin:1em 0;
	padding:0;
	list-style:none;
}
#mainview_dots .slick-dots button {
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	width: 16px;
	height: 16px;
	padding:0;
	border:none;
	background:none;
	font-size:0;
	cursor: pointer;
	pointer-events:auto
}
#mainview_dots .slick-dots button::after{
	content:"";
	display:block;
	transition:all .4s ease-out;
	border:1px solid #ffffff;
	width:100%;	height:100%;	flex: 0 0 100%;
	border-radius:8px;
	background: #d3d3d3;
}
#mainview_dots .slick-dots li.slick-active button::after{
	background: #dd3333;
}

@media all and (min-width:768px){

	#mainview_slider .slide_img_wrap{	height:calc(100svh - 0px - var(--header-main-height));}

}

@media all and (min-width:1024px){

	#mainview_slider .slide_img_wrap{
	height:calc(100svh - 0px - var(--header-main-height));	}
	#mainview_wrap .slide_caption_inner{padding:28px 72px;}
	#mainview_slider .slick-prev,
	#mainview_slider .slick-next {
		width: 48px;
		height: 48px;
	}
	#mainview_slider .svg_icon {font-size:19px}
	#mainview_dots .slick-dots button {
		width: 12px;
		height: 12px;
	}
	#mainview_dots .slick-dots button::after{
		border-radius:6px;
	}

}

@media all and (min-width:1280px){


}

@media all and (min-width:1440px){

	#mainview_slider .slick-prev,
	#mainview_slider .slick-next {
		width:64px;
		height:64px;
	}
	#mainview_slider .svg_icon{font-size:26px}
	#mainview_wrap .slide_caption_inner{padding:28px 88px;}

}

@media (hover: hover) and (pointer: fine) {

	#mainview_slider .slick-prev:hover,
	#mainview_slider .slick-next:hover {
		background: rgba(221,51,51,0.74);
	}
	#mainview_dots .slick-dots li:hover button::after{
		background: #dd3333;
	}

}
