@charset "UTF-8";

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

#vi {
    width: 1000px;
    margin: 0 auto 50px auto;
}

#vi .pc { display: block; }
#vi .sp { display: none; }

#vi .vi_caption {
    margin-top: 0.75em;
    font-size: 1.2rem;
    line-height: 1.2;
    text-align: right;
    color: #777;
}

#vi .vi_caption span {
    font-size: 1.1rem;
}

.htype01_top {
    font-family: 'Montserrat', sans-serif;
    font-size: 3rem;
    letter-spacing: 0.1em;
    font-weight: 700;
}

#footer .breadcrumbs {
    display: none;
}

#footer .copyright {
    float: none;
    text-align: left;
}

/* 1080px（コンテンツ幅） */
@media only screen and (max-width: 1080px) {
    
    #vi {
        width: 100%;
    }
    
    #vi .vi_caption {
        margin-right: 1em;
    }

}

/* 834px以下（タブレット縦・スマホ横） */
@media only screen and (max-width : 834px ) {
    
    #vi {
        margin-top: 80px;
    }

}

/* 480px（スマホ縦） */
@media only screen and (max-width: 480px) {
    
    #vi {
        margin-top: 70px;
        margin-left: 0;
    }
    
    #vi .pc { display: none; }
    #vi .sp { display: block; }

    #vi .vi_caption {
        font-size: 1rem;
    }
    
    #vi .vi_caption span {
        font-size: 1rem;
    }
    
}


/*----------------------------------------------------*/ 
/* news
-----------------------------------------------------*/ 

.htype01_top.news {
    margin-bottom: 0.2em;
    text-align: center;
}

.btn01.readmore.news {
    display: table;
    margin-bottom: 2.5em;
}

.list01.col4 {
    margin-bottom: 50px;
}

.list01 li {
    position: relative;
}

.list01 .text_box h5.post_title {
    line-height: 1.4;
}

.list01 .text_box .post_meta {
    font-size: 1.2rem;
    margin-bottom: 0.3em;
    line-height: 1.4
}

a:link .post_meta {
    color: #666;
}

.list01 .text_box .status {
    position: absolute;
    top: 5px;
    right: 0;
    padding: .5em;
    background-color: rgba(255,255,255,0.7);
    color: #666;
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1;
}

.blog_sns_wrap {
    overflow: hidden;
}

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

}

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

    .list01.col4 {
        margin-bottom: 40px;
    }
    
}

/* 480px（スマホ縦） */
@media only screen and (max-width: 480px) {
    
    .htype01_top.news,
    .htype01_top.blog {
        margin-bottom: .2em;
        line-height: 1.3;
    }
    
    .list01.col4 {
        margin-bottom: 70px;
    }
    
}


/*----------------------------------------------------*/ 
/* blog
-----------------------------------------------------*/ 

.blog_wrap {
    float: left;
    width: 70%;
}

.htype01_top.blog {
    margin-bottom: 0.4em;
    display: inline-block;
    float: left;
}

.btn01.readmore.blog {
    display: inline-block;
    float: right;
    margin-top: 0.6em;
}

.list_blog {
    clear: both;
    border-top: 1px solid #ccc;
}

.list_blog li {
    padding: 2em 0;
    border-bottom: 1px solid #ccc;
    box-sizing: border-box;
}

.list_blog li a.link_cover {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: inherit;
}

.list_blog li a.link_cover:hover {
    opacity: 0.7;
}

.list_blog li .img_box {
    float: left;
    width: 100px;
}

.list_blog li .text_box,
.list_blog li .text_box2 {
    margin-left: calc( 100px + 2em );
}

.list_blog li .text_box .post_meta {
    line-height: 1;
    font-size: 1.3rem;
    margin-bottom: 0.7em;
}

.list_blog li .text_box h5.post_title {
    font-size: 1.6rem;
    margin-bottom: 0.8em;
    line-height: 1.4;
}

.list_blog li .text_box2 .post_contents {
    font-size: 1.4rem;
    line-height: 1.5;
}

/* 1080px（コンテンツ幅） */
@media only screen and (max-width: 1080px) {
    
    .list_blog li {
        padding: 1.5em 0;
    }
    
    .list_blog li .img_box {
        width: 80px;
    }
    
    .list_blog li .text_box,
    .list_blog li .text_box2 {
        margin-left: calc( 80px + 1.5em );
    }

}

/* 834px以下（タブレット縦・スマホ横） */
@media only screen and (max-width : 834px ) {
    
    .blog_wrap {
        float: none;
        width: 100%;
        margin-bottom: 50px;
    }
    
    .htype01_top.blog {
        float: none;
        display: block;
        margin-bottom: 0.2em;
        text-align: center;
    }
    
    .btn01.readmore.blog {
        float: none;
        display: table;
        margin-top: 0;
        margin-bottom: 2.5em;
    }

}

/* 480px（スマホ縦） */
@media only screen and (max-width: 480px) {
    
    .blog_wrap {
        margin-bottom: 60px;
    }
    
    .list_blog li .img_box {
        width: 70px;
        margin: 0 1.2em 1.2em 0;
    }
    
    .list_blog li .text_box {
        margin-left: calc( 70px + 1.2em );
    }
    
    .list_blog li .text_box2 {
        clear: both;
        margin-left: 0;
    }

}


/*----------------------------------------------------*/ 
/* sns_embed
-----------------------------------------------------*/ 

.sns_embed {
    display: block;
    box-sizing: border-box;
    width: 25%;
    float: right;
    margin-top: 1.2em;
}

.list_snsbnr {
	box-sizing: border-box;
	display: block;
}
.list_snsbnr_item {
	box-sizing: border-box;
	margin-bottom: 20px;
}
.list_snsbnr_item a:hover {
	opacity: 0.7;
}

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

/* 834px以下（タブレット縦・スマホ横） */
@media only screen and (max-width : 834px ) {
    
    .sns_embed {
        width: 70%;
        float: none;
		margin: 0 auto;
		padding-top: 20px;
	}
    
    .list_snsbnr {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.list_snsbnr_item {
		width: 48%;
		margin-bottom: 20px;
	}

}

/* 688px以下（タブレット縦・スマホ横） */
@media only screen and (max-width : 688px ) {
    
    .sns_embed {
        width: 100%;
		padding-top: 0;
    }
    
}

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