﻿/* Slider */
ul.slider,
ul.slider li { margin: 0; padding: 0; list-style: none;}
.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}
.slick-list {
	position: relative;
	display: block;
	margin: 0; padding: 0;
	overflow: hidden;
}
.slick-list:focus { outline: none;}
.slick-list.dragging { cursor: pointer; cursor: hand;}
.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.slick-track {
	position: relative;	top: 0;	left: 0;
	display: block;
	margin-left: auto;margin-right: auto;
}
.slick-track:before,
.slick-track:after { display: table; content: '';}
.slick-track:after{ clear: both;}
.slick-loading .slick-track { visibility: hidden;}
.slick-slide { display: none; float: left; height: 100%; min-height: 1px;}
[dir='rtl'] .slick-slide { float: right; }
.slick-slide img { display: block;}
.slick-slide.slick-loading img { display: none;}
.slick-slide.dragging img{ pointer-events: none;}
.slick-initialized .slick-slide { display: block;}
.slick-loading .slick-slide { visibility: hidden;}
.slick-vertical .slick-slide { display: block;	height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }
.slick-arrow.slick-disabled { pointer-events:none; opacity:0.5;}

/* Loading */
.slick-loading .slick-list { background: #fff url('../../common/js/slick/ajax-loader.gif') center center no-repeat;}


/* Arrows */
.slick-prev,
.slick-next,
.slick-prev:before,
.slick-next:before { width:70px; height:100px; }
.slick-prev,
.slick-next {
    position: absolute; top:50%;
    display: block; margin: auto; padding: 0;
    font-size: 0;
    line-height: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
	z-index:99;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus { color: transparent; outline: none; background: transparent;}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before { opacity:0.75;}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before { opacity: 1;}
.slick-prev:before,
.slick-next:before {
	display:block;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-prev{ left:0;}
.slick-next{ right:0;}
[dir='rtl'] .slick-prev{ right:0; left: auto;}
[dir='rtl'] .slick-next{ right: auto; left:0;}
.slick-next:before,
[dir='rtl'] .slick-prev:before{
    content: '';
    background:#fff url( "arrow_r.png") no-repeat center center;
    background-size: 42px auto;
    border-top-left-radius: 100px;
    border-bottom-left-radius: 100px;
}
.slick-prev:before,
[dir='rtl'] .slick-next:before {
    content: '';
    background:#fff url("arrow_l.png") no-repeat center center;
    background-size: 42px auto;
    border-top-right-radius: 100px;
    border-bottom-right-radius: 100px;
}


/* Dots */
.slick-dotted.slick-slider { /*margin-bottom: 30px;*/ }
.slick-dots{
    position: absolute; bottom: -25px;
    display: block;
    padding: 0; margin: 0;
    width: 100%;
    list-style: none;
    text-align: center;
}
.slick-dots li { cursor: pointer; position: relative; display: inline-block; margin: 0 2px; padding: 0;}
.slick-dots li button {
    cursor: pointer;
    display: block;
    padding: 5px;
    color: transparent;
    font-size: 0;
    line-height: 0;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus { outline: none;}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before { opacity: 1;}
.slick-dots li button:before {
    position: absolute; top: 0; left: 0;
    content: '●';
    text-align: center;
    opacity: .25;
    color:#000;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before { opacity: .75; color:#000;}
.slick-dots li,
.slick-dots li button:before,
.slick-dots li button { width: 20px; height: 20px;}
.slick-dots li button:before { font-size:20px; line-height:20px;}

/* TOPページ：イベント・研修情報、活動レポート用 */
@media only screen and (max-width:820px){
    .slick-slider {
        display:grid;
        grid-template:
            "slide slide" auto
            "prev next" 1fr / 1fr 1fr;
        gap:2em;

        & .slick-list { grid-area:slide;}
        & .slick-prev,
        & .slick-prev::before,
        & .slick-next,
        & .slick-next::before {
            width:50px;
            height:40px;
        }
        & :is(.slick-prev, .slick-next) {
            position:static;
            transform:unset;
        }
        & .slick-prev { grid-area:prev; margin-inline:auto 0;}
        & .slick-next { grid-area:next; margin-inline:0 auto;}
        & .slick-prev::before,
        & .slick-next::before {
            background-size:55% auto;
            border-radius:100vmax;
        }
    }
}
@media only screen and (max-width:468px){
    .slick-slider {
        gap:1em;
    }
}