@charset "UTF-8";

.content-fluid > div:nth-child(2){
    padding: 25px 0 0;
}

h2 {
    text-align: center;
    font-size: 35px;
    font-weight: 500;
    margin-bottom: 70px;
}

h2:before {
    display: block;
    margin-bottom: 5px;
}

figure {
    text-align: center;
}

p {
    margin-bottom: 25px;
}

.cf:after {
    content: "";
    display: block;
    clear: both;
}

.fL {
    float: left;
}

.fR {
    float: right;
}
small{
    font-size: 77% !important;
}
figcaption {
    font-size: 80%;
    padding-top: 15px;
    margin-bottom: 5%;
    text-align: left;
}

.sec_col {
    width: 100%;
}

.sec_col p {
    width: 790px;
    margin: 0 auto 25px;
}


.sec_col figure {
    margin-bottom: 40px;
}

.sec_col .stack {
    max-width: 1180px;
    margin: 0 auto;
    padding-bottom: 3%;
    padding-top: 3%;
    border-bottom: 1px solid #f2f1eb;
}
.sec_col .stack a{
    color:#4c4c4c !important;
}
.sec_col .stack:hover{
    /* background: #f2f1eb; */
}
.sec_col .stack .num_figure{
    width: 23.72%;
}
.sec_col .stack .num_txt{
    width: 73%;
    padding-right: .5em;
}
.sec_col .stack .num_txt h2{
    font-size: 1.432vw;
    font-weight: 500;
    text-align: left;
    margin-bottom: 2%;
    padding-left: 0;
    position: relative;
    /*line-height: 1.5;*/
    margin-bottom: 6px;
}

.sec_col .stack .num_txt h2 div:last-child{
    width:88%;
}

.sec_col .stack .num_txt p{
    font-size: 1.217vw;
    text-align: left;
    margin: 0;
    width: 100%;
}

#foot_area .stack {
    max-width: 1080px;
    margin: 7% auto 0;
}
#foot_area .btn_f {
    max-width:49%;
    margin-left: 2%;
}

#foot_area .btn_f:first-child{
    margin-left: 0;
}

.pc_only{
    display: block !important;
}
.sp_only{
    display: none !important;
}
.pc-only{
    display: inline !important;
}
.sp-only{
    display: none !important;
}

@media screen and (min-width: 1396px) {
    .sec_col .stack .num_txt h2{
        font-size: 20px;
    }
    .sec_col .stack .num_txt p{
        font-size: 17px;
        display: -webkit-box;             
        -webkit-box-orient: vertical; 
        overflow: hidden;  
        text-overflow: ellipsis; 
        -webkit-line-clamp: 3; 
    }
}
@media screen and (max-width: 1080px) {
    .content-fluid {
        padding: 6% 0 0;
    }
    .content-inner{
        width:96%;
        margin: 0 auto;
    }
    
    #foot_area .stack {
        padding: 0 2%;
    }
}

@media screen and (max-width: 767px) {
    body {
        line-height: 1.7647058824;
    }
    .pc_only{
        display: none !important;
    }
    .sp_only{
        display: block !important;
    }
    .pc-only{
        display: none !important;
    }
    .sp-only{
        display: inline !important;
    }
    .content-inner{
        width:90%;
        margin: 0 auto;
    }

    h2 {
        text-align: center;
        font-size: 28px;
        margin-bottom: 12%;
    }

    h2:before {
        display: block;
        margin-bottom: 5px;
    }

    figure {
        text-align: center;
    }

    p {
        text-align: justify;
        text-justify: inter-ideograph;
        margin-bottom: 12%;
        line-height: 1.85;
    }

    .fL {
        float: none;
    }

    .fR {
        float: none;
    }
    .sec_col {
        width: 100%;
        border-bottom:1px solid #f2f1eb;
        margin-bottom: 10%;
    }
    .sec_col .stack {
        margin: 0 auto 10vw;
        padding-bottom: 0;
        border-bottom: none;
    }
    .sec_col .stack .num_figure {
        width: 100%;
        margin-bottom: 4%;
        text-align: center;
    }

    .sec_col .stack .num_txt {
        width: 100%;
    }

    .sec_col .stack .num_txt h2 {
        font-size: 18px;
        margin-bottom: 4%;
    }
    .sec_col .stack .num_txt p {
        font-size: 14px;
        display: -webkit-box;             
        -webkit-box-orient: vertical; 
        overflow: hidden;  
        text-overflow: ellipsis; 
        -webkit-line-clamp: 5; 
    }
    .sec_col .content-inner {
        overflow: inherit;
    }

    .sec_col p {
        width: 100%;
        margin: 0 auto 10%;
        /*        text-align: center;*/
    }


    .sec_col figure {
        margin-bottom: 0;
    }
    
    #foot_area .stack {
        max-width: none;
        width: 90%;
        margin: 0 auto;
        padding: 0;
    }
    #foot_area .btn_f {
        max-width: none;
/*        width: 90%;*/
        margin-left: 0;
        margin: 0 auto 5%;
    }
}



/*==============新ヘッダー==============*/

.head-title {
    width: 100%;
    border-top: 2px solid #DEB887;
    border-bottom: 2px solid #DEB887;
    padding: 10px 0;
}

.head-title .head-title__inner {
    max-width: 1180px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 20px;
}
.head-title .head-title__number {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 230px;
    flex: 0 0 230px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-right: 20px;
    color: #DEB887;
    border-right: 1px solid #deb887;
}
.head-title .head-title__number__icn {
    display: inline-block;
    background: url(../images/home-icn.png) top center no-repeat;
    width: 64px;
    height: 48px;
    text-align: center;
    padding-top: 21px;
    margin-right: 8px;
    font-size: 1.3rem;
}

.head-title .head-title__number__title {
    padding-top: 7px;
    font-size: 1.7rem;
}

.head-title .head-title__number__icn span {
    font-size: 2rem;
    font-weight:bold;
}
.head-title .head-title__column-title {
    font-size: 2rem;
    font-weight: bold;
    margin-left: 20px;
}

@media screen and (max-width: 767px) {
    .head-title .head-title__inner {
        display: block;
        padding: 0;
    }
    .head-title .head-title__number {
        padding-right: 0;
        border-right: none;
    }

    .head-title .head-title__column-title {
        font-size: 1.8rem;
        margin-left: 0;
        padding: 0 20px;
        text-align: center;
        max-width:100%;
    }
    
    .head-title .head-title__column-title:before{
        content: "";
        display: block;
        width: 50px;
        height: 1px;
        background: #deb887;
        margin: 10px auto;
    }
}

#nextBtn a{
    display: block;
    max-width: 320px;
    padding: 15px;
    text-align: center;
    margin: auto;
    border: 1px #ccc solid;
    color: #333;
}

#tagList{
    padding-bottom: 10px;
    width: 1080px;
    margin: 0 auto;
    padding: 49px 0 0 0;
}
#tagList{
    font-size: 14px;
    font-weight: normal;
    margin-top: 3px;
}
#tagList ul{
    display: flex;
    flex-wrap: wrap;
}
#tagList ul li{
    margin-bottom: 4px;
}
#tagList span.ttl{
    background-color: #DEB887;
    color: #fff;
    padding: 2px 8px;
    margin-right: 10px;
}
#tagList a,
.topTagList p{
    display: inline-block;
    margin-right: 14px;
    background-size: 12px auto;
    background-position:left center;
    background-repeat: no-repeat;
    padding-left: 17px;
    color: #333;
    background-image: url(../images/index/tag-icn.png);
    margin-right: 15px;
    font-size: 16px;
}
.topTagList {
    display: flex;
    margin-bottom: 6px;
}
.topTagList p{
    display: inline-block;
    width: auto !important;
    margin-right: 10px !important;
    font-size: 14px !important;
}
#tagList a:hover{
    text-decoration: underline;
}

#recommendPost .bgBox{
    background-color: transparent;
    position: relative;
}
#recommendPost .bgBox .stripeback{
    background-image: url(../images/stripe_pattern_right.png);
    width: 100%;
    height: 100%;
    background-position: center top;
    position: absolute;
    top: 0;
    right: 0;
    z-index: -50;
}

.top_post_date{
    margin-top: 6px;
    font-size: 14px;
}

@media screen and (max-width: 1080px) {
    #tagList{
        width: 90%;
    }
    #tagList a{
        padding: 4px 0px 4px 17px;
        font-size: 12px;
    }
    #tagList ul li{
        margin-right: 5px;
    }
}

/* from index.html */
#secIndex{
        border-top: none;
        padding:0 0 0;
        margin-top: 0;
        width: 100%;
    }
    #secIndex h2,
    #tagList h2,
	#intro h2{
        margin-bottom: 15px;
        font-weight: 500;
        font-size: 28px;
    }
    .topic-path{
        margin-top: 0;
    }
    #blog-title{
        padding:20px 0 50px;
        margin-bottom: 30px;
    }
    .bgBox{
        background: #f5f5f5;
        padding: 30px;
    }
    .slick-track{
        display: flex;
        justify-content: center;
    } 
    #intro{
        margin-bottom: 2em;
    }
	a.a-btn-catalog {
    	color: #fff;
	}
	.o-header a{
		text-decoration:none;
	}
	.o-menu a{
		text-decoration:none;
	}
	.o-gnav a{
		text-decoration:none;
	}
	.footer-lyt a{
		text-decoration:none;
	}
	.o-footer a{
		text-decoration:none;
	}
    @media screen and (max-width: 767px){
        #blog-title{
            padding: 10px 0 20px;
        }
        #blog-title .content-inner{
            padding-left: 0;
            padding-right: 0;
        }
        #blog-title .hdg-02{
            font-size: 2.6rem;
        }
        #secIndex h2, #tagList h2, #intro h2{
            font-size:22px;
        }
        .bgBox{
            padding: 24px 0;
        }
        #tagList .bgBox{
            padding: 24px 24px 4px 24px;
        }
        .content-inner{
            padding: 0 34px;
        }
        #recommendPost .content-inner {
            width: 100%;
        }
        .slick-arrow{
            position: absolute;
            right: -30px;
            top: 40%;
            background: rgba(66,66,66,0.8);
            width: 24px;
            height: 24px;
            border-radius: 14px;
        }
        .slick-prev{
            right: auto;
            left: -30px;
        }
        .slick-arrow:before,
        .slick-prev:before{
            content: "";
            display:block;
            width:7px;
            height:7px;
            border-right: 2px #fff solid;
            border-bottom: 2px #fff solid;
            transform: rotate(-45deg);
            position: absolute;
            top:7px;
            left:6px;
        }
        .slick-prev:before{
            left: 9px;
            transform: rotate(135deg);
        }
        #post_area .content-inner{
            padding-left: 0;
            padding-right: 0;
        }
    }