

/** timeline box structure **/
.timeline {
  list-style: none;
  padding: 100px 0 100px;
  margin: 3em 0 3em;
  position: relative; /* 可能無用 */
}

.timeline:before {
  top: 0;
  bottom: 0;
  position: absolute;
  content: " ";
  width: 3px;
  background-color: #eee;
  left: 50%;
  margin-left: -1.5px;
}

.tldate {
  display: block;
  width: 200px;
  background: #414141;
  border: 3px solid #212121;
  color: #ededed;
  margin: 0 auto;
  padding: 3px 0;
  font-weight: bold;
  text-align: center;
  -webkit-box-shadow: 0 0 11px rgba(0,0,0,0.35);
}

.timeline li {
  margin-bottom: 25px;
  position: relative;
}

.timeline li:before, .timeline li:after {
  content: " ";
  display: table;
}
.timeline li:after {
  clear: both;
}
.timeline li:before, .timeline li:after {
  content: " ";
  display: table;
}

/** timeline panels **/
.timeline li .timeline-panel {
  width: 46%;
  float: left;
  background: #fff;
  border: 1px solid #d4d4d4;
  padding: 20px;
  position: relative;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);
  /****  add  ****/  /* 漸層panels */
  background: -webkit-linear-gradient(rgb(255, 255, 255) , rgb(235, 235, 235)); /* For Safari 5.1 to 6.0 */
  background: -o-linear-gradient(rgb(255, 255, 255) , rgb(235, 235, 235)); /* For Opera 11.1 to 12.0 */
  background: -moz-linear-gradient(rgb(255, 255, 255) , rgb(235, 235, 235)); /* For Firefox 3.6 to 15 */
  background: linear-gradient(rgb(255, 255, 255) , rgb(235, 235, 235)); /* Standard syntax */
}


.timeline li.timeline-inverted .timeline-panel {
  float: right;
}

/** panel arrows **/

 /*-----------------------------   ** left side arrows **   -----------------------------
.timeline li .timeline-panel:before {
  position: absolute;
  top: 26px;
  right: -7px;
  display: inline-block;
  border-top: 7px solid transparent;
  border-left: 7px solid #ccc;
  border-right: 0 solid #ccc;
  border-bottom: 7px solid transparent;
  content: " ";
}

.timeline li .timeline-panel:after {
  position: absolute;
  top: 27px;
  right: -6px;
  display: inline-block;
  border-top: 6px solid transparent;
  border-left: 6px solid #fff;
  border-right: 0 solid #fff;
  border-bottom: 6px solid transparent;
  content: " ";
}


.timeline li .timeline-panel.noarrow:before, .timeline li .timeline-panel.noarrow:after {
  top:0;
  right:0;
  display: none;
  border: 0;
}*/



/* ----------------------------- ** right side arrows ** -----------------------------
.timeline li.timeline-inverted .timeline-panel:before {
  border-left-width: 0;
  border-right-width: 7px;
  left: -7px;
  right: auto;
}

.timeline li.timeline-inverted .timeline-panel:after {
  border-left-width: 0;
  border-right-width: 6px;
  left: -6px;
  right: auto;
}
--------------------------------------------------------------------   */

/** timeline circle icons **/
.timeline li .tl-circ {
  position: absolute;
  top: 34px;
  left: 50%;
  text-align: center;
  background: #6a8db3;
  color: #fff;
  width: 15px;
  height: 15px;
  line-height: 35px;
  margin-left: -8px;
  border: 3px solid #90acc7;
  border-top-right-radius: 50%;
  border-top-left-radius: 50%;
  border-bottom-right-radius: 50%;
  border-bottom-left-radius: 50%;
  z-index: 99999;
}


/** timeline content **/



/** media queries **/

@media (max-width: 991px) {
  .timeline li .timeline-panel {
    width: 44%;
  }
}

@media (max-width: 700px) {

  ul.timeline:before {
    left: 40px;
  }

  .tldate { width: 140px; }

  ul.timeline li .timeline-panel {
    width: calc(100% - 90px);
    width: -moz-calc(100% - 90px);
    width: -webkit-calc(100% - 90px);
  }

  ul.timeline li .tl-circ {
    top: 35px;
    left: 33px;
    margin-left: 0;

  }
  ul.timeline > li > .tldate {
    margin: 0;
  }

  ul.timeline > li > .timeline-panel {
    float: right;
  }

  ul.timeline > li > .timeline-panel:before {
    border-left-width: 0;
    border-right-width: 15px;
    left: -15px;
    right: auto;
  }

  ul.timeline > li > .timeline-panel:after {
    border-left-width: 0;
    border-right-width: 14px;
    left: -14px;
    right: auto;
  }
}


/* ---------------------------------------------------     my settting     ---------------------------------------------------*/


#myTimeline{
  min-height: 800px;
  background-color: #fcfcfc;
}

@media screen and (max-width:1024px) {
  .timeline {
    padding: 40px 0 40px;
  }
}

@media screen and (max-width:768px) {
  .timeline {
    padding: 20px 0 20px;
  }
}

/* when screen >=768px, 設定line-height讓icon置中，line-height = row height  */
@media screen and (min-width:768px) {
  .tl-icon3R{
    /* 內容為三行的icon行高 */
    line-height: 149px
  }
  .tl-icon4R{
    /* 內容為四行的icon行高 */
    line-height: 195px
  }
}

@media screen and (min-width:977px){
  .tl-row {
      display: flex;
      align-items: center;
  }
}


/* 3行與4行高的panel font size，置中 */
.tl-icon3R, .tl-icon4R{
  display: block;
  font-size: 6em;
  text-align: center;
}

.tl-title, .tl-subtitle{
  text-align: center;
  font-weight: bold;
  color: #545353
}


.tl-time{
  font-size: 3.5em;
  text-align: center;
  font-weight: bold;
  color: rgb(91, 107, 138);
}

.tl-content{
  font-size: 1.5em;
  text-align: center;
  color: #6a6a6a
}

/*
#myTimeline h2,h4,p{
  font-family: inherit;;
}
*/

/*  螢幕<400px時，panels的內容全部縮小 */
@media screen and (max-width:400px) {
  .tl-icon3R, .tl-icon4R{
    font-size: 3em;
  }
  .tl-title{
    font-size: 22px;
  }
  .tl-subtitle{
    font-size: 20px;
  }
  .tl-time{
    font-size: 30px;
  }
  .tl-content{
    font-size: 18px;
  }

}
