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

/* =======================================
    共通
======================================= */
.btn-tab,
h5.category-title,
h3 span.tag-new{
	display: none;
	}

/*　　h title　　*/
h4{
	font-size: 2.8rem;
	border-left: solid 4px #000;
	margin-bottom: 2rem;
	padding: 0 0 0 1rem;
	}
.contents.rows-contents h4{
	border-left: none;
	border-bottom: solid 1px #000;
	padding: 0 0 1rem 0;
	}
h3 a{
	font-size: 2.4rem;
	padding:1rem 0 2rem;
	}
h5.category-title.display{
	display: block;
	font-size: 2.2rem;
	border-left: solid 4px #000;
	margin-bottom: 1rem;
	padding-left: 1rem;
	}
h5.category-title.display a{
	color: #000;
	text-decoration: none;
	}

/*　　layout　　*/
.column{
	display: -webkit-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	}
.contents{
	width: 100%;
	/*overflow: hidden;*/
	}
.contents.wrapper {
	width: 1024px;
	margin-left: auto;
	margin-right: auto;
}
.contents.two-contents{
	width: 50%;
	}
.contents.rows-contents .wrap-block{
	margin-bottom: 4rem;
	}
.block{
	display: -webkit-flex;
    display: flex;
	-webkit-justify-content: flex-start;
    justify-content: flex-start;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	border-bottom: solid 1px #ededed;
	margin-bottom: 0rem;
	padding: 2rem 0;
	}
.block-img img{
	display: block;
	width: 100%;
	}
.block-body{
	-webkit-flex-grow: 1;
    flex-grow: 1;
	}
.block-body p a{
	font-size: 1.8rem;
	padding-bottom: 1rem;
	}
.block a{
	display: block;
	color: #000;
	text-decoration: none;
	}
span.tag-new{
	display: inline-block;
	font-size: 1rem;
	line-height: 1;
	color: #fff;
	background-color: #900;
	margin-right: 1rem;
	padding: 0.6rem;
	}
span.tag-new.none{
	display: none;
	}
date span{
	font-size: 1.2rem;
	}

.more-btn {
	padding: 15px;
	text-align: right;
}
.more-btn a {
	display: inline-block;
}
.more-btn a span {
  position: relative;
  vertical-align: top;
  width: 100%;
  padding: 1rem 2rem;
  font-size: 1.2rem;
  color:#454545;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
  background: #ecf0f1;
  border: 0;
  border-bottom: 2px solid #dadedf;
  cursor: pointer;
  -webkit-box-shadow: inset 0 -2px #dadedf;
  box-shadow: inset 0 -2px #dadedf;
}
.more-btn a span:active {
  top: 1px;
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

/* =======================================
    block1001
======================================= */
.block1001 .block-img{
	display: none;
	}

/* =======================================
    block1002～1004 共通
======================================= */
.block1002 h3, .block1003 h3, .block1004 h3{
	padding-top: 0;
	}

/* =======================================
    block1002・1003 共通
======================================= */
.block1002 .block-body a, .block1003 .block-body a{
	padding-left: 2rem;
	}

/* =======================================
    block1002
======================================= */
.block1002 .block-img{
	width: 15%;
	}
.block1002 .block-body{
	width: 75%;
	}

/* =======================================
    block1003・1004 共通
======================================= */
.block1003 .block-img, .block1004 .block-img{
	width: 33%;
	}
.block1003 .block-body, .block1004 .block-body{
	width: 67%;
	}

/* =======================================
    block1004
======================================= */
.block1004 .block{
	-webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
	}
.block1004 .block-body a{
	padding-right: 1.5rem;
	}

/* =======================================
    block1100
======================================= */
.block1100 ul{}
.block1100 li{
	position: relative;
	border: solid 1px #ccc;
	border-top: none;
	}
.block1100 li:first-child{
	border-top: solid 1px #ccc;
	}
.block1100 li a{
	display: block;
	font-size: 2rem;
	line-height: 1.2;
	text-decoration: none;
	padding: 1rem;
	}

.block1100 li span{
	position: absolute;
	right: 1rem;
	top: 50%;
	min-width: 4.1rem;
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
	color: #fff;
	background-color: #666;
	margin-top: -1.8rem;
	padding: 1rem;
	}

/* =======================================
    block1201～1204 タブ切り替え
======================================= */
.btn-tab.display{
	display: -webkit-flex;
    display: flex;
	list-style-type: none;
	}
.btn-tab li {
	font-size: 1.4rem;
	padding: 1rem;
	cursor: pointer;
	border-right: 1px solid #dedede;
}
.btn-tab li:last-child{
	border-right: none;
	}
.btn-tab li.current {
	background: #e9e0cb;
}
.tab-contents .tab-block{
	display: none;
}
.tab-contents .tab-block:nth-of-type(1){
	display: block;
	}

/* =======================================
    block1301～1304 contents 2つ並び
======================================= */
.left-contents{
	padding-right: 2rem;
	}
.right-contents{
	padding-left: 2rem;
	}

/* =======================================
    block2000系　共通
======================================= */
.block1003.blo-col-2,
.block1003.blo-col-3,
.block1004.blo-col-2,
.block1004.blo-col-3,
.block2000,
.block2100{
	display: -webkit-flex;
    display: flex;
	-webkit-justify-content: space-between;
    justify-content: space-between;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	}

.block2000 .block{
	border-bottom: none;
	}
.block2000 .block-img,
.block2000 .block-body{
	width: 100%;
	}

/*     block　1カラム	 */
.blo-col-1 article{
	width: 100%;
	}

/*     block　2カラム	 */
.blo-col-2 article{
	width: 49%;
	}

/*     block　3カラム	 */
.blo-col-3 article{
	width: 32%;
	}

/*     block　3カラム 1番目のカラムだけ大きい	 */
.blo-col-3-02 article{
	width: 24%;
	}
.blo-col-3-02 article:nth-of-type(1){
	width: 48%;
	}

/*     block　4カラム	 */
.blo-col-4 article{
	width: 24%;
	}

/*     block　5カラム	 */
.blo-col-5{
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	}
.blo-col-5 article{
	width: 19%;
	}

/*     block　6カラム	 */
.blo-col-6 article{
	width: 15%;
	}

/* =======================================
    block1000系　共通
======================================= */
.block2100{

	}

.block2100 .block{
	position: relative;
	padding: 0;
	border-bottom: none;
	}
.block2100 .block-img,
.block2100 .block-body{
	width: 100%;
	}
.block2100 .block-body{
	position: absolute;
	left: 0;
	bottom: 0;
	max-height: 100%;
	background-color: rgba(0,0,0,0.8);
	opacity: 0;
	-ms-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	}
.block2100 .block-img:hover + .block-body,
.block2100 .block-body:hover{
	opacity: 1;
	}
.block2100 .block-img a span.tag-new{
	position: absolute;
	left: 0.5rem;
	top: 0.5rem;
	}
.block2100 .block-body a.tag-date{
	display: none;
	}
.block2100 .block-body a{
	color: #fff;
	padding: 0 1.5rem 1.5rem;
	}
.block2100 .block-body p a{
	padding-bottom: 1rem;
	}
.block2100 .block-body h3 a{
	padding: 2rem 1.5rem 1rem;
	}
.block2100 a.tag-date{
	padding-bottom: 2rem;
	}

/*     block　2カラム, 3カラム	 */
.block2100.blo-col-2 h3 a,
.block2100.blo-col-3 h3 a,
.block2100.blo-col-4 h3 a{
	font-size: 2.2rem;
	padding-top: 1.5rem;
	}
.block2100.blo-col-2 .block-body p a,
.block2100.blo-col-3 .block-body p a,
.block2100.blo-col-4 .block-body p a{
	font-size: 1.6rem;
	}
.block2100.blo-col-2 a.tag-date,
.block2100.blo-col-3 a.tag-date,
.block2100.blo-col-4 a.tag-date,
.block2100.blo-col-5 a.tag-date{
	padding-bottom: 1rem;
	}


/*     block　4カラム	 */
.block2100.blo-col-4 .block-body{
	height: 100%;
	top: 0;
	}

/*     block　5カラム	 */
.block2100.blo-col-5 .block-body{
	height: 100%;
	top: 0;
	}
.block2100.blo-col-5 h3 a{
	font-size: 2rem;
	padding-top: 1rem;
	}
.block2100.blo-col-5 .block-body p a{
	font-size: 1.4rem;
	}

/*     block　6カラム	 */
.block2100.blo-col-6 .block-body{
	height: 100%;
	top: 0;
	}
.block2100.blo-col-6 .block-body a{
	padding: 0 1rem 1rem;
	}
.block2100.blo-col-6 .block-body h3 a{
	font-size: 1.8rem;
	padding-top: 1rem;
	}
.block2100.blo-col-6 .block-body p a{
	font-size: 1.4rem;
	}
.block2100.blo-col-6 .block-body a.tag-date{
	display: none;
	}

/* block1311 */
.block1311 ul {}
.block1311 ul li {
	padding: 21px 17px;
	border-bottom: 1px solid #e6e9ee;
}
.block1311 ul li > * {
	display:inline-block;
	padding-right: 1rem;
}