@charset "UTF-8";
/* CSS Document */

/* ---------- COMMON ---------- */

/* slide */
.slider img{
    width: 100%;
}

article h1{
    display: none;
}

/* collies */
.collies h2{
    background-image: url("../img/common/bg_title_sub.svg");
    background-repeat: no-repeat;
    background-position: center top;
    color: #00406f;
    font-weight: 600;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.introduction{
    font-weight: 600;
    line-height: 1.6em;
    text-align: center;
}

.collies ol{
    list-style: none;
}

.collies ol li{
    margin-bottom: 25px;
}

.dog_profile{
    display: table;
    width: 100%;
}

.collies ol dl{
    display: table-cell;
    vertical-align: top;
}

.js-modal-open{
    display: table-cell;
    text-align: right;
}

.js-modal-open img{
    width: 28px;
}

.collies ol dl dt{
    background: url("../img/common/icon_rose.svg") no-repeat left 4px;
    background-size: 16px;
    color: #00406f;
    font-size: 90%;
    font-weight: 700;
    padding-left: 1.25em;
}

.collies ol dl dd{
    font-size: 80%;
    line-height: 1.5em;
}

.collies ol dl dd span{
    display: block;
}

/* comment */
.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
}
.modal__bg{
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal__content{
    background-color: #ffffff;
    background-image: url("../img/toppage/bg_comment_01.svg"),url("../img/toppage/bg_comment_02.svg"),url("../img/toppage/bg_comment_03.svg"),url("../img/toppage/bg_comment_04.svg");
    /*background-position: left top, right top, right bottom, left bottom;*/
    /*background-size: 72px;*/
    background-repeat: no-repeat;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
}

.modal__content h3{
    display: none;
}

.modal__content p{
    line-height: 1.5em;
}

.modal__content p:nth-of-type(1){
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.modal__content p:nth-of-type(3){
    text-align: center;
}

.modal__content p:nth-of-type(3) a{
    border: solid 1px #00406f;
    border-radius: 5px;
    color: #00406f;
    font-weight: 700;
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 5em;
}

/* breeding policy */
.breeding_policy{
    background: #ffffff;
}

.breeding_policy h2{
    background-image: url("../img/common/bg_title_sub.svg");
    background-repeat: no-repeat;
    background-position: center top;
    color: #00406f;
    font-weight: 600;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.breeding_policy p{
    font-weight: 600;
    line-height: 1.7em;
}

/* items */
.items ol{
    list-style: none;
}

.items ol li figure{
    text-align: center;
}

.items ol li figure img{
    border-radius: 10px;
}

.items ol li h3{
    text-align: center;
}

.items ol li h3 a{
    background: url("../img/toppage/icon_link.svg") no-repeat left center;
    background-size: 12px;
    padding-left: 15px;
}

.items ol li p{
    line-height: 1.5em;
}

/* info area */
.info_area h2{
    background-repeat: no-repeat;
    color: #00406f;
    font-weight: 600;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.bnnr_area li{
    margin-bottom:10px;
    list-style: none;
}

.bnnr_area li img{
    width: 250px;
}

.blog_articles h3{
    color: #00406f;
}

.blog_articles ul{
    border-top:solid 1px #ffffff;
}

.blog_articles ul li{
    border-bottom:solid 1px #ffffff;
    list-style: none;
    padding-top:15px;
    padding-bottom: 15px;
}

.blog_articles ul li p{
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
}

/* ---------- Mobile ---------- */
@media(max-width:737px) {
/* slide */
    .slider{
        margin-bottom: 25px;
    }

    article{
        margin-bottom: 40px;
    }

/* collies */
    .collies h2{
        font-size: 110%;
        height: 43px;
        margin-bottom: 20px;
        padding-top: 20px;
        width: 312px;
    }

    .introduction{
        font-size: 90%;
        margin-left: 1em;
        margin-right: 1em;
        margin-bottom: 30px;
    }

    .collies ol{
        margin-left: auto;
        margin-right: auto;
        width: 280px;
    }

/* comment */
    .modal__content{
        background-position: left 5px top 5px, right 5px top 5px, right 5px bottom 5px, left 5px bottom 5px;
        background-size: 40px;
        padding:20px 0 0 0;
        width: 90%;
    }

    .modal__content p{
        font-size: 75%;
    }

    .modal__content p:nth-of-type(1){
        margin-bottom: 15px;
    }

    .modal__content p:nth-of-type(2){
        padding-left:15px;
        padding-right: 15px;
        margin-bottom: 15px;
    }

    .modal__content p:nth-of-type(3){
        margin-bottom: 20px;
    }

    .modal__content p:nth-of-type(3) a{
        padding-top: 5px;
        padding-bottom: 5px;
    }

/* breeding policy */
    .breeding_policy{
        padding-top: 15px;
        padding-bottom: 15px;
    }

    .breeding_policy h2{
        font-size: 110%;
        height: 43px;
        margin-bottom: 20px;
        padding-top: 20px;
        width: 312px;
    }

    .breeding_policy p{
        font-size: 85%;
        padding-left: 25px;
        padding-right: 25px;
    }

/* items */
    .items{
        margin-left: 1em;
        margin-right: 1em;
    }

    .items ol{
        padding-top:35px;
    }

    .items ol li{
        margin-bottom: 30px;
    }

    .items ol li figure img{
        height: 150px;
        width: 280px;
        object-fit:cover;
    }

    .items ol li:nth-of-type(1) figure img{
        object-position:50% 90%;
    }

    .items ol li h3{
        font-size: 95%;
        margin-bottom: 5px;
    }

    .items ol li p{
        font-size: 80%;
    }

/* info area */
    .info_area h2{
        background-image: url("../img/common/bg_title_sub.svg");
        background-position: center top;
        font-size: 110%;
        height: 43px;
        margin-bottom: 20px;
        padding-top: 20px;
        width: 312px;
    }

    .bnnr_area{
        text-align: center;
    }

    .bnnr_area li span{
        font-size: 75%;
    }

    .blog_articles{
        margin-left: 1em;
        margin-right: 1em;
    }

    .blog_articles dl dt{
        font-size: 90%;
        font-weight: 600;
    }

    .blog_articles dl dd{
        font-size: 80%;
    }

    .blog_articles ul li p{
        font-size: 85%;
    }
}

/* ---------- SE ---------- */
@media(max-width:374px) {

/* collies */
    .collies h2{
        height: 45px;
        padding-top: 15px;
        width: 300px;
    }

    .breeding_policy h2{
        height: 45px;
        padding-top: 15px;
        width: 300px;
    }
}

/* ---------- Tablet / PC ---------- */
@media (min-width: 738px) {
/* slide */
    .slider{
        margin-bottom: 40px;
    }

/* collies */
    .collies h2{
        font-size: 150%;
        height: 62px;
        margin-bottom: 30px;
        padding-top: 40px;
        width: 542px;
    }

    .collies ol li{
        display: inline-block;
    }

/* comment */
    .modal__content{
        background-position: left 10px top 10px, right 10px top 10px, right 10px bottom 10px, left 10px bottom 10px;
        background-size: 70px;
        padding:45px 0 0 0;
        width: 660px;
    }

    .modal__content p:nth-of-type(1){
        margin-bottom: 20px;
    }

    .modal__content p:nth-of-type(2){
        padding-left: 30px;
        padding-right: 30px;
        margin-bottom: 20px;
    }

    .modal__content p:nth-of-type(3){
        margin-bottom: 20px;
    }

    .modal__content p:nth-of-type(3) a{
        padding-top: 10px;
        padding-bottom: 10px;
    }

/* breeding policy */
    .breeding_policy{
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .breeding_policy h2{
        font-size: 150%;
        height: 62px;
        margin-bottom: 30px;
        padding-top: 40px;
        width: 542px;
    }

    .breeding_policy p{
        margin-bottom: 20px;
    }

/* items */
    .items{
        margin-bottom: 40px;
    }

    .items ol{
        display: table;
        padding-top:30px;
    }

    .items ol li{
        display: table-cell;
        margin-bottom: 30px;
    }

/* info area */
    .info_area{
        display: table;
    }

    .links_area{
        display: table-cell;
    }

    .bnnr_area li span{
        font-size: 80%;
    }

    .blog_articles{
        display: table-cell;
        vertical-align: top;
    }

    .blog_articles h3{
        font-size: 110%;
        margin-bottom: 10px;
    }

    .info_area h2{
        background-image: url("../img/toppage/bg_news.svg");
        background-position: center top;
        background-size: 157px;
        font-size: 150%;
        font-weight: 500;
        height: 120px;
        margin-bottom: 30px;
        padding-top: 30px;
        width: 157px;
    }

    .info_area h2 span{
        display: block;
        font-size: 90%;
    }

    .blog_articles dl{
        display: table;
    }

    .blog_articles dl dt{
        display: table-cell;
        font-weight: 600;
    }

    .blog_articles dl dd{
        display: table-cell;
        font-size: 80%;
        text-align: right;
    }

}

/* ---------- Tablet ---------- */
@media(max-width:1022px) and (min-width: 737px){
    article{
        margin-bottom: 40px;
    }

/* collies */
    .intro_area{
        margin-bottom: 30px;
    }

    .collies ol{
        margin-left: auto;
        margin-right: auto;
        width: 630px;
    }

    .collies ol li{
        margin-left: 15px;
        margin-right: 15px;
        width: 280px;
    }

/* breeding policy */
    .breeding_policy p{
        margin-left: 1em;
        margin-right: 1em;
    }

/* items */
    .items ol{
        margin-left: auto;
        margin-right: auto;
        width: 690px;
    }

    .items ol li{
        width: 210px;
    }

    .items ol li:nth-of-type(2){
        padding-left: 20px;
        padding-right: 20px;
    }

    .items ol li figure img{
        width: 200px;
    }

    .items ol li p{
        font-size: 90%;
    }

/* info area */
    .info_area{
        margin-left: 1em;
        margin-right: 1em;
    }

    .links_area{
        width: 270px;
    }

    .blog_articles{
        width: 350px;
    }

    .blog_articles ul li p{
        width: 28em;
    }
}

/* ---------- PC ---------- */
@media(min-width:1023px){
/* slide */
    .slider{
        background: linear-gradient(to bottom, #00406f,#3e5f80,#5d9ba9);
        background: -moz-linear-gradient(to bottom, #00406f,#3e5f80,#5d9ba9);
        background: -webkit-linear-gradient(to bottom, #00406f,#3e5f80,#5d9ba9);
        height: 400px;
        text-align: center;
    }

    .slider img{
        width: 920px;
    }

    .slider li{
        height: 400px;
    }

    article{
        margin-bottom: 60px;
    }

/* collies */
    .collies{
        margin-left: auto;
        margin-right: auto;
        width: 920px;
    }

    .intro_area{
        float: left;
        width: 600px;
    }

    .collies ol li:nth-of-type(1){
        margin-left: 25px;
        margin-right: 0;
    }

    .collies ol li{
        margin-left: 12px;
        margin-right: 10px;
    }

/* breeding policy */
    .breeding_policy p{
        margin-left: auto;
        margin-right: auto;
        width: 810px;
    }

/* items */
    .items{
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 40px;
        width: 920px;
    }

    .items ol li:nth-of-type(2){
        padding-left: 40px;
        padding-right: 40px;
    }

    .items ol li figure{
        margin-bottom: 5px;
    }

    .items ol li h3{
        font-size: 110%;
        margin-bottom: 10px;
    }

    .items ol li p{
        font-size: 95%;
    }

/* info area */
    .info_area{
        margin-left: auto;
        margin-right: auto;
        width: 920px;
    }

    .links_area{
        width: 295px;
    }
    
    .blog_articles{
        width: 625px;
    }

    .blog_articles ul li p{
        width: 40em;
    }

}