@charset "utf-8";


/* ------------------------------
 お知らせ一覧
------------------------------ */
.newsListBlock .main li {
    padding: 20px 0;
    border-bottom: 1px dotted #443932;
}
.newsListBlock .main li:first-child {
    padding-top: 0;
}
.newsListBlock .main li:last-child{
    padding-bottom: 0;
    border-bottom: none;
}
.newsListBlock .main li a {
    position: relative;
    display: block;
    text-decoration: none;
}
.newsListBlock .main li a.cms_blank::after {
    content: none;
}
.newsListBlock .main li .date {
    margin-bottom: 5px;
}
.date .tag {
    display: inline-block;
    min-width: 75px;
    padding: 4px 10px;
    margin-right: 15px;
    font-size: 1.4rem;
    text-align: center;
    color: #fff;
    background-color: #064676;
}
.date .day {
    display: inline-block;
    font-size: 1.6rem;
    font-weight: bold;
    color: #064676;
}
.newsText {
    position: relative;

}
a .newsText {
    text-decoration: underline;
}
a.cms_blank .newsText::after {
    content: '';
    display: block;
    width: 11px;
    height: 10px;
    line-height: .7;
    margin-left: 5px;
    display: inline-block;
    background: url(../img/icon_blank_g.png) no-repeat 0 0 / cover;
        background-size: cover;
    background-size: 11px;
} 
.newsListBlock .side .sideNav > ul > li {
    border-top: 1px dotted #443932;
}
.newsListBlock .side .sideNav > ul > li:last-child {
    border-bottom: 1px dotted #443932;
}
.newsListBlock .side .sideNav > ul > li.on {
    border-top: none;
    border-bottom: none;
}
.newsListBlock .side .sideNav > ul > li  a {
    text-decoration: none;
}
.newsListBlock .side .sideNav > ul > li > a {
    position: relative;
    padding: 15px 50px 15px 25px;
    display: block;
    width: 100%;
}
.newsListBlock .side .sideNav > ul > li.on > a {
    background: #443932;
    color: #fff;
}
.newsListBlock .side .sideNav > ul > li > a::after {
    content: "";
    display: block;
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 33px;
    height: 9px;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
    background: url('../img/icon_arrow_brown.png') no-repeat;
    background-size: 33px;
}
.newsListBlock .side .sideNav > ul > li.on > a::after {
    background-image: url('../img/icon_arrow.png');
}
.newsListBlock .side .sideNav > ul > li > ul {
    display: none;
    background-color: #f3eddf;
    padding: 20px;
}
.newsListBlock .side .sideNav > ul > li.on ul {
    display: block;
}
.newsListBlock .side .sideNav > ul > li.on ul li:not(:last-child) {
    margin-bottom: 25px;
}
.newsListBlock .side .sideNav > ul > li.on ul li a {
    position: relative;
    padding-left: 15px;
}
.newsListBlock .side .sideNav > ul > li.on ul li a::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid #443932;
    border-right: 2px solid #443932;
    transform: rotate(45deg);
}
/* ------------------------------
 PC用限定CSS
------------------------------ */
@media print,screen and (min-width:768px) {
    .newsListBlock {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        width: 1140px;
        margin: 0 auto 80px;
        
    }
    .newsListBlock .main {
        width: 830px;
    }
    .newsListBlock .side .sideNav > ul > li > a:hover::after  {
        right: 5px;
    }
    .newsListBlock .side {
        width: 250px;
    }
}
/* ----------------------
 スマホ用コード
---------------------- */
@media screen and (max-width:767px) {
    .main,
    .side  {
        width: 100%;
        padding: 0 5%;
        margin-bottom: 60px;
    }
}

/* ------------------------------
 お知らせ詳細
------------------------------ */
.newsTitle {
    margin-bottom: 60px;
}
.newsTitle .date {
    margin-bottom: 20px;
}
.newsTitle h2 {
    font-weight: normal;
    font-size: 2.8rem;
    padding-bottom: 40px;
    margin-bottom: 0;
    border-bottom: 1px dotted #443932;
}
.btn.btn-b a {
    background-color: #443932;
}
.btn.btn-b a::before {
    left: 15px;
    right: auto;
    background-image: url('../img/icon_arrow_l.png');
}
@media screen and (max-width:767px) {
    .newsTitle {
        margin-bottom: 30px;
    }
    .newsTitle .date {
        margin-bottom: 10px;
    } 
    .newsTitle h2 {
        font-size: 2.0rem;
        padding-bottom: 20px;
    }
    
}