.notransition {
	transition: none !important;
}

.slider {
	display: block;
	position: relative;
}

.slider .slides {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.slider .slides > * {
	display: flex;
    position: relative;
	transition: transform 1.2s cubic-bezier(0.6,0,0.4,1);
    z-index: 1;

    -webkit-backface-visibility: hidden;
    -webkit-transform-style: preserve-3d;
}

.slider .slides.touch > * {
	transition: transform 0.4s cubic-bezier(0,0.6,0.4,1);
}

.slider .slides > * > * {
	display: block;
	position: relative;
    z-index: 2;
}

.slider li img, 
.slider li picture img,
.slider article img, 
.slider article picture img {
	width: 100%;
	height: 100%;
    object-fit: cover;
}

.slider.fadein .slides > * {
	display: block;
}

.slider.fadein .slides > * > * {
	display: block;
	position: absolute;
    opacity: 0;
	transition: opacity 1.2s linear;
    z-index: 10;
}

.slider.fadein.init .slides > * > *:nth-child(1) {
    opacity: 1;
}

.slider.fadein .slides > * > *.active,
.slider.zoomin .slides > * > *.active {
    opacity: 1;
    z-index: 20;
}

.slider.fadein li.transition {
    transition: opacity linear 1.2s;
}

.slider.zoomin li picture {
    overflow: hidden;
    transition: transform 0s 1.2s linear;
}

.slider.zoomin li.active picture {
    transform: scale(1.05);
    transition: transform 8s 0s linear;
}

.slider.pan li picture {
    transform: scale(1.15);
    transform-origin: left center;
}

.slider.pan li.transition picture {
    transform-origin: right center;
    transition: transform-origin linear 6.2s 0s;
}

.slider .ctrl-arr {
    display: none;
    justify-content: space-between;
	position: absolute;
    width: calc(100vw - (var(--page-margin) * 2));
	left: var(--page-margin);
	top: 50%;
	pointer-events: none;
	transform: translateY(-50%);
	z-index: 20;
}

.slider .ctrl-arr.show {
    display: flex;
}

.slider .ctrl-arr button {
	display: block;
	width: clamp(min(36px, (36 / var(--base-w-mobile)) * 100vw), (80 / var(--base-w)) * 100vw, 80px);
	height: clamp(min(27px, (27 / var(--base-w-mobile)) * 100vw), (60 / var(--base-w)) * 100vw, 60px);
	background: rgba(var(--color-black),0.8) url("../images/ico-arrow-slideshow.svg") center center no-repeat;
	background-size: clamp(min(24px, (24 / var(--base-w-mobile)) * 100vw), (50 / var(--base-w)) * 100vw, 50px) auto;
	pointer-events: auto;
}

.slider .ctrl-arr button:disabled {
    pointer-events: none;
    opacity: 0.2;
}

.slider .ctrl-arr button[data-dir="next"] {
    transform: scaleX(-100%);
}

.slider .ctrl-bts {
    display: none;
}

.slider .ctrl-bts.show {
    display: flex;
    flex-flow: row wrap;
    column-gap: 15px;
}

.slider .ctrl-bts button {
	display: block;
	width: 15px;
	height: 15px;
	background-color: rgba(var(--color-white),0.3);
	border-radius: 50%;
	padding: 0;
	transition: background-color 0.4s;
}

.slider .ctrl-bts button.ctrl-bt-on {
	background-color: rgba(var(--color-white),1);
}

.slider .slider-status {
    display: none;
	color: rgb(0,0,0);
	font-size: 16px;
	line-height: 1.2em;
}

.slider .slider-status.show {
    display: block;
}

.slider .box-shadow {
	display: none;
}

figcaption {
	display: none;
}

figure figcaption {
	display: block;
}


/*************************************
	Header
 *************************************/


section.header .slider .slides,
section.header .slider .slides li,
section.header .slider .slides picture {
	display: block;
	width: 100vw;
    height: var(--header-img-h);
}

section:not(.header) .slider.fadein.zoomin {
	grid-column: 1 / -1;
	margin-left: calc(var(--page-margin) * -0.5);
	margin-right: calc(var(--page-margin) * -0.5);
}

section:not(.header) .slider.fadein.zoomin .slides,
section:not(.header) .slider.fadein.zoomin .slides li,
section:not(.header) .slider.fadein.zoomin .slides picture {
	display: block;
	width: calc(min(var(--base-w) * 1px, 100vw) - calc(var(--page-margin) * 1));
    height: var(--header-img-h);
}

/*.slider:not(.fadein) li:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: rgb(var(--color-black));
	mix-blend-mode: overlay;
	transition: opacity 0.8s linear;
	transition-delay: 1.2s;
}

.slider:not(.fadein) li.active:after {
	opacity: 0;
	transition-delay: 0.8s;
}

.slider:not(.fadein) li img {
	filter: grayscale(100%);
	transition: filter 0.8s linear;
	transition-delay: 1.2s;
}

.slider:not(.fadein) li.active img {
	filter: grayscale(0%);
	transition-delay: 0.8s;
}*/

section.header .slides:after,
.slider.inline .slides li:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: rgba(var(--color-crimson),0.5);
	/*mix-blend-mode: overlay;*/
	mix-blend-mode: multiply;
	transition: opacity 0.8s linear;
	z-index: 10;
}

.slider .ctrl-bts {
	position: absolute;
	left: 50%;
	bottom: calc((100 / 880) * min(var(--base-w) * 1px, 100vw));
	transform: translateX(-50%);
	z-index: 20;
}

section:not(.header) .slider.fadein.zoomin .ctrl-bts {
	/*bottom: calc((50 / 880) * min(var(--base-w) * 1px, 100vw));*/
	bottom: min(55px, (55 / var(--base-w)) * 100vw);
}


/*************************************
	Inline
 *************************************/


.slider.inline {
	/*--mw: calc((var(--base-w) * 1px) - (var(--page-margin) * 2));*/
	--mw: 800;
	--sw: min(var(--mw) * 1px, (var(--mw) / var(--base-w)) * 100vw);
	width: 100vw;
	/*margin-left: min(0px, (700px - 50vw));*/
	margin-left: calc(min(0px, 700px - 50vw) - var(--page-margin));
}

/*.slider.inline .slides {
	width: calc(100vw + (((752 / var(--base-w)) * 100vw) - ((50vw - ((752 / var(--base-w)) * 50vw)))));
	margin: 0;
	margin-left: calc(((50vw - ((752 / var(--base-w)) * 50vw))) - ((752 / var(--base-w)) * 100vw));
}

.slider.inline .slides li,
.slider.inline .slides picture {
	display: block;
	width: calc((752 / var(--base-w)) * 100vw);
    height: calc((685 / 778) * ((752 / var(--base-w)) * 100vw));
}*/

.slider.inline .slides {
	/*width: calc(100vw + (((800 / var(--base-w)) * 100vw) - ((50vw - ((800 / var(--base-w)) * 50vw)))));
	margin: 0;
	margin-left: calc(((50vw - ((800 / var(--base-w)) * 50vw))) - ((800 / var(--base-w)) * 100vw));*/
	width: calc(100vw - ((50vw - (var(--sw) * 0.5)) - var(--sw)));
	margin: 0;
	margin-left: calc((50vw - (var(--sw) * 0.5)) - var(--sw));
}

.slider.inline .slides li,
.slider.inline .slides picture {
	display: block;
	position: relative;
	/*width: calc((800 / var(--base-w)) * 100vw);
    height: calc((933 / 1400) * ((800 / var(--base-w)) * 100vw));*/
	width: var(--sw);
    height: calc((933 / 1400) * var(--sw));
}

.slider.inline .slides li {
	transform: scale(0.8);
	transition: transform 1.2s cubic-bezier(0.6,0,0.4,1);
}

.slider.inline .slides li picture {
	border: solid calc(20px / 0.8) rgb(var(--color-white));
	transition: border-width 1.2s cubic-bezier(0.6,0,0.4,1);
}

.slider.inline .slides li.active + li {
	transform: scale(1);
}

.slider.inline .slides li.active:after {
	opacity: 1;
	transition-delay: 0s;
}

.slider.inline .slides li img {
	filter: grayscale(100%);
	transition: filter 0.8s linear;
	transition-delay: 0s;
}

.slider.inline .slides li.active + li:after {
	opacity: 0;
	transition-delay: 0.8s;
}

.slider.inline .slides li.active + li picture {
	border-width: 20px;
}

.slider.inline .slides li.active + li img {
	filter: grayscale(0%);
	transition-delay: 0.8s;
}

.slider.inline .ctrl-arr {
    /*width: min((var(--base-w) * 1px) - (var(--page-margin) * 2) + min(150px, (150 / var(--base-w)) * 100vw), 100vw - (var(--page-margin) * 2) + min(150px, (150 / var(--base-w)) * 100vw));*/
    width: min((var(--base-w) * 1px) - (var(--page-margin) * 2) + min(75px, (75 / var(--base-w)) * 100vw), 100vw - (var(--page-margin) * 2) + min(75px, (75 / var(--base-w)) * 100vw));
	left: 0;
	right: 0;
	top: 50%;
	margin: 0 auto;
	transform: translateY(-50%);
	z-index: 20;
}

.slider.inline .ctrl-arr button {
	display: block;
	/*width: min(150px, (150 / var(--base-w)) * 100vw);
	height: min(80px, (80 / var(--base-w)) * 100vw);*/
	width: min(75px, (75 / var(--base-w)) * 100vw);
	height: min(40px, (40 / var(--base-w)) * 100vw);
	background: rgba(var(--color-pink),0.8) url("../images/ico-arrow-slideshow.svg") center center no-repeat;
	background-size: 50% auto;
	border-radius: 9999px;
}

@media screen and (max-width: 960px) {
	.slider.inline .slides {
		width: calc(100vw + ((var(--page-margin) - (100vw - (var(--page-margin) * 2))) * -1));
		margin-left: calc(var(--page-margin) - (100vw - (var(--page-margin) * 2)));
	}
	
	.slider.inline .slides li,
	.slider.inline .slides picture {
		width: calc(100vw - (var(--page-margin) * 2));
		height: calc(100vw - (var(--page-margin) * 2));
	}
	
	.slider.inline .ctrl-arr {
		display: none;
	}
}