@charset "Shift_JIS";

/*----------------------------------------------------*/ 
/* works - top
-----------------------------------------------------*/ 

.list01.col3.works {
    flex-wrap: wrap;
    margin-bottom: 50px;
}

.list01.col3.works::after {
    display: block;
    content: "";
    width: 29.6%;
}

.list01.col3.works li {
    margin-bottom: 2em;
}

.list01.col3.works .img_box {
    margin-bottom: 0.8em;
}

.list01.col3.works h5 {
    margin-bottom: 0.5em;
    font-size: 1.7rem;
    line-height: 1.4;
}

.list01.col3.works .post_meta {
    font-size: 1.3rem;
    line-height: 1.5;
}

.dl_works {
    line-height: 1.7;
}

.dl_works dt {
    float: left;
    font-size: 1.5rem;
}

.dl_works dd {
    padding-left: 115px;
}

.dl_works dd.title {
    margin-bottom: 0.4em;
    font-weight: 600;
    line-height: 1.5;
}

.dl_works dd.data {
    margin-bottom: 1.7em;
    font-size: 1.4rem;
}

/* 1080px（コンテンツ幅） */
@media only screen and (max-width: 1080px) {

}

/* 768px以下（タブレット縦・スマホ横） */
@media only screen and (max-width : 768px ) {

    .dl_works dt {
        float: none;
        margin-bottom: 0.3em;
    }
    
    .dl_works dd {
        padding-left: 0;
    }
    
    .dl_works dd.data {
        margin-bottom: 2em;
    }
    
}

/* 480px（スマホ縦） */
@media only screen and (max-width: 480px) {
    
    .list01.col3.works {
        padding-top: 15px;
        margin-bottom: 80px;
    }

}


/*----------------------------------------------------*/ 
/* works - single
-----------------------------------------------------*/ 

.box_header_works_single {
    margin-bottom: 40px;
}

.h1_works_single {
    margin-bottom: 0.7em;
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.4;
}

.meta_works {
    text-align: center;
    color: #72cf15;
    font-size: 1.5rem;
    font-weight: 600;
}

.works_outline {
    margin-bottom: 40px;
}

.box_comment {
    position: relative;
    margin-bottom: 30px;
    padding: 25px 35px;
    background: #f7f8fa;
    font-size: 1.4rem;
    line-height: 1.8;
}

.box_comment h2 {
    position: absolute;
    right: 35px;
    top: -0.9em;
    color: #c6c6c6;
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
}

.box_comment p {
    text-align: justify;
}

.list_works_01 {
    margin-bottom: 50px;
    line-height: 1.5;
    word-break: break-all;
}

.list_works_01 li {
    position: relative;
    margin-bottom: 0.5em;
    padding-left: 1.2em;
    font-size: 1.5rem;
    word-break: break-all;
}

.list_works_01 li::before {
    content: "";
    display: block;
    position: absolute;
    left: 0.5em;
    top: 0.7em;
    width: 2px;
    height: 2px;
    background-color: #333;
}

.box_credit {
    overflow: hidden;
    margin-bottom: 90px;
    border-top: 1px solid #ccc;
    padding-top: 50px;
}

.box_flyer {
    float: left;
    width: 27.2%;
}

.dl_credit {
    float: right;
    width: 68%;
    line-height: 1.6;
    font-size: 1.5rem;
}

.dl_credit dt {
    float: left;
    font-weight: 600;
}

.dl_credit dd {
    margin-bottom: 0.7em;
    padding-left: 7em;
}

.dl_credit dd span.aff {
    font-size: 1.2rem;
}

.box_nav_works {
    padding-top: 40px;
    border-top: 1px solid #ccc;
}

.nav_works {
    margin-bottom: 30px
}

.nav_works h2 {
    margin-bottom: 0.5em;
    font-size: 1.7rem;
}

.nav_works p.link_works {
    font-size: 1.4rem;
}

/* 1080px（コンテンツ幅） */
@media only screen and (max-width: 1080px) {

}

/* 768px以下（タブレット縦・スマホ横） */
@media only screen and (max-width : 768px ) {
    
    .box_flyer {
        float: none;
        width: 40%;
        min-width: 240px;
        margin: 0 auto 40px auto !important;
    }

    .dl_credit {
        float: none;
        width: 100%;
    }

}

/* 480px（スマホ縦） */
@media only screen and (max-width: 480px) {
    
    .box_header_works_single {
        margin-bottom: 30px;
    }
    
    .h1_works_single {
        margin-bottom: 0.5em;
        font-size: 2.2rem;
    }
    
    .box_credit {
        margin-bottom: 60px;
    }

    .dl_credit dt {
        float: none;
        margin-bottom: 0.2em;
    }

    .dl_credit dd {
        margin-bottom: 1em;
        padding-left: 0;
    }
    
}


/*----------------------------------------------------*/ 
/* works - photo
-----------------------------------------------------*/ 

.box_photo {
    position: relative;
    width: 76%;
    margin: 0 auto 45px auto;
}

.slick_works {
    opacity: 0;
    transition: opacity .7s linear;
}

.slick_works.slick-initialized {
    opacity: 1;
}

.slick-arrow {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 28px;
    height: 28px;
    border: none;
    font-size: 0;
    color: transparent;
    background-color: transparent;
    background-repeat: no-repeat;
    background-size: cover;
}

.slick-arrow:hover {
    cursor: pointer;
    opacity: 0.7;
}

.slick-prev {
    left: -48px;
    background-image: url("https://rudolf.kyoto.jp/wp/wp-content/uploads/2021/03/icon_arrow_l.png");
}

.slick-next {
    right: -48px;
    background-image: url("https://rudolf.kyoto.jp/wp/wp-content/uploads/2021/03/icon_arrow_r.png");
}

.photo_caption {
    margin-top: 0.3em;
    color: #666;
    text-align: right;
    font-size: 1.3rem;
}

/* 1080px（コンテンツ幅） */
@media only screen and (max-width: 1080px) {
    
    .box_photo {
        width: 80%;
        max-width: 720px;
    }

    .slick-arrow {
        width: 24px;
        height: 24px;
    }

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

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

}

/* 768px以下（タブレット縦・スマホ横） */
@media only screen and (max-width : 768px ) {
    
    .box_photo {
        width: 85%;
    }

    .slick-arrow {
        width: 24px;
        height: 24px;
    }

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

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

}

/* 480px（スマホ縦） */
@media only screen and (max-width: 480px) {
    
    .box_photo {
        width: 100%;
    }

    .slick-arrow {
        width: 50%;
        height: 100%;
        border-radius: 0;
    }
    
    .slick-arrow:hover {
        opacity: 0.2;
    }

    .slick-prev {
        z-index: 100;
        left: 0;
        background-image: none;
    }

    .slick-next {
        z-index: 100;
        right: 0;
        background-image: none;
    }

}