@charset "utf-8";



.ct-container {

  position: relative;

  width: 100%;

  margin: 0 auto 15px;

  padding: 0;

}

.ct-container::after {

  /* clearfix */

  content: '';

  display: table;

  clear: both;

}



.ct-unit {

	position:relative;

	background:#F5F5F5;

	padding:10px 0;

}



.ct-timeline-index {

   cursor:pointer;

}



.ct-timeline-date {

    position:relative;

}



.ct-timeline-date .ct-timeline-index:after {

    content:"▲閉じる";

    position:absolute;

    top:2px;

    right:10px;

    color:#FFF;

    font-size:13px;

} 



.ct-timeline-date.closed .ct-timeline-index:after {

    content:"▼詳細を見る";

} 





.ct-timeline-index .label{

display:block;

text-align:left;

}

.ct-timeline-title {

margin-left:60px;

margin-bottom:10px;

}

.ct-timeline-block {

  position: relative;

  padding: 10px 0;

	margin:0;

	z-index:3;

    -webkit-transition: all .5s;

    -moz-transition: all .5s;

    -o-transition: all .5s;

    -ms-transition: all .5s;

    transition: all .5s;	

}



.ct-timeline-block::before {

  /* this is the vertical line */

  content: '';

  position: absolute;

  top: 0px;

  left: 30px;

  height: 100%;

  width: 5px;

  background: #ccc;

}



.ct-timeline-img {

  position: absolute;

  top: 10px;

  left: 18px;

  width: 30px;

  height: 30px;

  text-align:center;

  padding-top: 4px;

  border-radius: 50%;

  background: #9c8061;

  color:#FFF;

}



.ct-timeline-img i.fa {

	font-size:18px;

	height:18px;

	display: inline-block;

}





.ct-timeline-content {

  position: relative;

  margin: 10px 15px 10px 55px;

  background: white;

  border-radius: 0.25em;

  padding: 15px 15px 10px 15px;

  box-shadow: 1px 1px 0 #DDD inset;

}



.ct-timeline-content::before {

  content: '';

  position: absolute;

  top: -5px;

  left: 15px;

  width:9px;

  height:9px;

  background:#FFF;

  border-left:1px #DDD solid;

  border-bottom:1px #DDD solid;

  transform: rotate( 135deg );

}



.ct-timeline-content:after {

  content: "";

  display: table;

  clear: both;

}



.ct-timeline-title h3 {

	font-size:1.2em;

	margin:0;

	color: #666;

}



.ct-timeline-title h3 small {

	display: inline-block;

}



.ct-timeline-content img {

	width:25%;

	float:left;

	margin:0 10px 10px 0;

}



@media (max-width:767px) {

	.ct-timeline-content img {

		width:100%;

		float:none;

		margin:0;

	}	

} /* end @media*/





.ct-timeline-content p {

  margin: 0 0 10px;

  line-height: 1.6;

}



.ct-timeline-content .label {

	display:inline-block;

	margin-bottom:3px;

	border-radius:6px 0 6px 0;

}





.ct-timeline-content-detail {

    -webkit-transition: all .5s;

    -moz-transition: all .5s;

    -o-transition: all .5s;

    -ms-transition: all .5s;

    transition: all .5s;		

}



.ct-timeline-content-detail.closed {

	display: none;

    -webkit-transition: all .5s;

    -moz-transition: all .5s;

    -o-transition: all .5s;

    -ms-transition: all .5s;

    transition: all .5s;		

}



.ct-timeline-block.closed {

  padding: 5px 0;

    -webkit-transition: all .5s;

    -moz-transition: all .5s;

    -o-transition: all .5s;

    -ms-transition: all .5s;

    transition: all .5s;		

}

.ct-timeline-block.closed .ct-timeline-img {

	top:8px;

    -webkit-transition: all .5s;

    -moz-transition: all .5s;

    -o-transition: all .5s;

    -ms-transition: all .5s;

    transition: all .5s;		

}



.ct-timeline-block.closed .ct-timeline-content,

.ct-timeline-block.closed .ct-timeline-content::before {

	background:none!important;

	box-shadow: none!important;

	border:none!important;

	padding-left:0;	

}



.ct-timeline-block:after {

  content: "";

  display: table;

  clear: both;

}



.ct-timeline-block:last-child {

  margin-bottom: 0;

}





