@charset 'UTF-8';

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

/* Icons ***********************************/
@font-face {
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;

    src: url('./fonts/slick.eot');
    src: url('./fonts/slick.eot?#iefix') format('embedded-opentype'), url('./fonts/slick.woff') format('woff'), url('./fonts/slick.ttf') format('truetype'), url('./fonts/slick.svg#slick') format('svg');
}

/* Arrows ***********************************/
.slick-prev,
.slick-next {
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 24px;
    height: 24px;
    padding: 0;
    -webkit-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: .4;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: .25;
}


.slick-prev:before,
.slick-next:before {
    font-family: 'slick';
    font-size: 36px;
    line-height: 1;

    opacity: .2;
    color: #000;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
    left: -45px;
}

[dir='rtl'] .slick-prev {
    right: -45px;
    left: auto;
}

.slick-prev:before {
    content: '←';
}

@media screen and (max-width: 640px) {

    .slick-prev:before,
    .slick-next:before {
        font-family: 'slick';
        font-size: 36px;
        line-height: 1;

        opacity: 0;
        color: #000;

        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
}

[dir='rtl'] .slick-prev:before {
    content: '→';
}


.slick-next {
    right: -40px;
}

[dir='rtl'] .slick-next {
    right: auto;
    left: -40px;
}

.slick-next:before {
    content: '→';
}

[dir='rtl'] .slick-next:before {
    content: '←';
}

@media screen and (max-width: 640px) {
    .slick-prev {
        left: 10px;
    }

    [dir='rtl'] .slick-prev {
        right: 10px;
        left: auto;
    }

    .slick-next {
        right: 10px;
    }

    [dir='rtl'] .slick-next {
        right: auto;
        left: 10px;
    }
}



/* Dots ***********************************/
.slick-dotted.slick-slider {
    margin-bottom: 30px;
}

.slick-dots {
    position: absolute;
    bottom: 25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}

.slick-dots li {
    position: relative;
    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}

@media screen and (max-width: 640px) {
    .slick-dots {
        position: absolute;
        bottom: 20px;

        display: block;

        width: 100%;
        padding: 0;
        margin: 0;

        list-style: none;

        text-align: center;
    }

    .slick-dots li {
        position: relative;

        display: inline-block;

        width: 10px;
        height: 10px;
        margin: 0 5px;
        padding: 0;

        cursor: pointer;
    }
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    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 {
    font-family: 'slick';
    font-size: 8px;
    line-height: 36px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: #fff;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
    opacity: .65;
    color: #fff;
}


/* Layout ***********************************/

#col_slide {
    width: 100%;
    margin-bottom: 40px;
}

ul.slider {
    width: 100%;
    height: 710px;
}

ul.slider .sl01 {
    width: 100%;
    height: 710px;
    background: url(../img/slide/slide_01.jpg) no-repeat top center;
}

ul.slider .sl02 {
    width: 100%;
    height: 710px;
    background: url(../img/slide/slide_02.jpg) no-repeat top center;
}

ul.slider .sl03 {
    width: 100%;
    height: 710px;
    background: url(../img/slide/slide_03.jpg) no-repeat top center;
}

ul.slider .copy {
    font-family: 'Lato', 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    width: 1100px;
    color: #fff;
    font-size: 48px;
    font-weight: 700;
    margin: 0 auto 0 auto;
    padding-top: 280px;
}

@media screen and (max-width: 640px) {
    #col_slide {
        width: 100%;
        height: 450px;
        margin: 40px 0 40px 0;
    }

    ul.slider {
        width: 100%;
        height: 450px;
    }

    ul.slider .sl01 {
        width: 100%;
        height: 450px;
        background: url(../img/slide/slide_01.jpg) no-repeat top center;
        background-size: auto 450px;
    }

    ul.slider .sl02 {
        width: 100%;
        height: 450px;
        background: url(../img/slide/slide_02.jpg) no-repeat top center;
        background-size: auto 450px;
    }

    ul.slider .sl03 {
        width: 100%;
        height: 450px;
        background: url(../img/slide/slide_03.jpg) no-repeat top center;
        background-size: auto 450px;
    }

    ul.slider .copy {
        font-family: 'Lato', 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
        width: 100%;
        color: #fff;
        font-size: 28px;
        font-weight: 700;
        margin: 0 auto 0 auto;
        padding: 190px 10px 0 25px;
    }
}
