/*２カラム実装
---------------------------------------------------------------------------*/

.main,
.side {
  padding: 2%;
  text-align: left;
}
p {
  text-align: left;
}
img {
  max-width: 100%;
  height: auto;
}

@media ( min-width : 767px ){
  body {
    background: linear-gradient(90deg, 30%, 70%);
  }
  .flexbox {
    width: 80%;
    margin: 10 auto;
    display: -webkit-flex;
    display: flex;
  }
  .main,
  .side {
    -webkit-flex: 1;
    flex: 1;
    background: none;
  }
}

/*「お知らせ」ブロック
---------------------------------------------------------------------------*/


.news-list{
  list-style: none outside;
  margin: 0;
  padding: 0;
}
.news-list .item a{
  display: flex;
  flex-wrap: wrap;
  flex-wrap: nowrap;
  text-decoration: none;
  color: #333631 ;
  border-bottom: 1px solid #CCC;
  padding: 4px 4px;
}
.news-list .item:first-child a{
  border-top: 1px solid #CCC;
}
.news-list .item .date{
  margin: 0;
  min-width: 120px;
  font-size: 16px;
  color: #333631 ;
  padding: 0 20px 0 0;
}
.news-list .item .title{
  margin: 0;
  width: 100%;
}
.news-list .item a:hover .title{
  color: #333631 ;
}

@media screen and (max-width: 767px){
.news-list .item a{
  flex-wrap: wrap;
}
.news-list .item .date{
  min-width: 100px;
}
.news-list .item .title{
  margin-top: 10px;
}
}

/* 装飾 */
 
*{
  box-sizing: border-box;
}
a{
  text-decoration: none;
}
body{
  margin: 20px;
}

/*「今月の予定」ブロック
---------------------------------------------------------------------------*/
.info {
  -webkit-overflow-scrolling: touch;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  display: -webkit-box;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  max-width: 100%;
  height: 20em;
  margin: 0 auto;
  float : left; /* 左に寄せる */
  overflow-y: scroll
}

@media (min-width:767px) {
  .info {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
    flex-wrap: wrap
  }
}

.info dd,
.info dt {
  box-sizing: border-box;
  width: 100%;
  padding-top: .1em;
  padding-bottom: .1em;
  padding-left: .5em
}

.info dt {
  font-style: normal;
  font-weight: initial
}

@media (min-width:767px) {
  .info dt {
    width: 12.5em;
    margin-bottom: .5em;
    border-bottom: 1px dotted #343a40
  }
}

.info dt:first-of-type {
  padding-top: .5em;
  border-top: 1px dotted #343a40
}

.info dt time {
  margin-right: .5em
}

.info dt span {
  box-sizing: border-box;
  display: inline-block;
  width: 5em;
  margin-right: .1em;
  padding: 0 .1em;
  color: #333631 ;
  font-size: 1em;
  line-height: 1.75;
  text-align: center
}

.info time {
  color: #333631 
}

.info dd {
  margin-left: 0;
  margin-bottom: .5em;
  border-bottom: 1px dotted #343a40
}

@media (min-width:767px) {
  .info dd {
    width:calc(100% - 12.5em)
  }
  .info dd:first-of-type {
    padding-top: .5em;
    border-top: 1px dotted #343a40
  }
}

.info dd:nth-of-type(-n+3) {
  position: relative
}


/*「バナー類」ブロック
---------------------------------------------------------------------------*/

