@charset "UTF-8";
/* MV */
.progress-mv{
    display: flex;
    flex-wrap: wrap;
}
.progress-mv-txt{
    background: #2274B6;
    color:#fff;
    width:40%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
/*.progress-mv-60th{
    width:135px;
    margin-bottom:20px;
}*/
.progress-mv-head{
    font-size:3rem;
    line-height: 1.5;
    margin-bottom:20px;
    font-weight: bold;
}
.progress-mv-txt p{
    font-size:1.6rem;
    letter-spacing: 0.01rem;
}
.progress-mv-image{width:60%;}

@media screen and (max-width: 768px) {
    .progress-mv{flex-direction: column-reverse;}
    .progress-mv-txt{
        text-align: center;
        width:100%;
        padding:7vw 0;
    }
    /*.progress-mv-60th{
        width:25%;
        margin:5vw 0;
    }*/
    .progress-mv-head{
        font-size: 7.467vw;
        line-height: 1.5;
        margin-bottom:5vw;
    }
   .progress-mv-txt p{font-size: 3.733vw;}
   .progress-mv-image{width:100%;
    } 
}

/* contents */
table{margin:0 auto;}
.progress-con table{
     table-layout: fixed;
     width: 100%;
}
colgroup .col1{
    /*width:-webkit-calc((100% - 1150px) / 2);
    width:-moz-calc((100% - 1150px) / 2);
    width:calc((100% - 1150px) / 2);*/
    width:15%;
}
colgroup .col2{width:140px;}
colgroup .col3{width:670px;}
colgroup .col4{width:180px;}
colgroup .col5{width:180px;}
colgroup .col6{
    /*width:-webkit-calc((100% - 1150px) / 2);
    width:-moz-calc((100% - 1150px) / 2);
    width:calc((100% - 1150px) / 2);*/
    width:15%;
}
.progress-tbl{
    border-collapse:collapse;
    font-size:12pt}
.tb-space{height:70px;}
tr td:nth-of-type(2){border-left:10px solid #9EC6D6;}
tr.tb-head td{
    text-align: center;
    color:#2274B6;
    font-weight:bold;
}
tr.tb-head td:nth-of-type(3),
tr.tb-head td:nth-of-type(4),
tr.tb-space td:nth-of-type(3),
tr.tb-space td:nth-of-type(4){border-left:2px solid #9EC6D6;}
tr.tb-body td:nth-of-type(4),
tr.tb-body td:nth-of-type(5){border-left:2px solid #9EC6D6;}
tr.tb-space td:nth-of-type(5),
tr.tb-head td:nth-of-type(5),
tr.tb-body td:nth-of-type(6){border-left:10px solid #9EC6D6;}
.tb-head{ border-top:10px solid #9EC6D6;}
.progress-tbl .bg{background: #F2F2F2;}
.tb-body td{
    font-size:1.2rem;
    vertical-align:top;
    line-height: 1.5;
}
.data p:not(.anniversary){
    font-size:4rem;
    font-weight:bold;
    color:#2274B6;
    position: relative;
    padding-left:15px;
    padding-right:15px;
}
.data p:not(.anniversary):before{
    position: absolute;
    content:'';
    background:#2274B6 ;
    width:10px;
    height:30px;
    left:-10px;
    top:18px;
}
.anniversary{
    display: block;
    font-size: 1.4rem;
    color:#fff;
    font-weight: bold;
    text-align: center;
    background:#8A682A ;
    position: relative;
    height:24px;
    line-height: 24px;
    margin:20px 15px -5px 15px;
}
.anniversary:before, .anniversary:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}
.anniversary:before {
  /*左端の山形*/
  top: 0;
  left: 0;
  border-width: 12px 0px 12px 6.5px;
  border-color: transparent transparent transparent #fff;
  border-style: solid;
}
.anniversary:after {
  /*右端の山形*/
  top: 0;
  right: 0;
  border-width: 12px 6.5px 12px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}
.bg .anniversary:before{border-color: transparent transparent transparent #F2F2F2;}
.bg .anniversary:after{border-color: transparent #F2F2F2 transparent transparent;}

#progress .txt-b{
    font-size:1.6rem;
    font-weight: bold;
    position: relative;
    top:7px;
}
#progress .txt-n{
    font-weight: bold;
    font-size:1.4rem;
    padding-left: 1em;
    text-indent: -1em;
}
#progress .txt-s{ margin:0 0 10px 1em;}
.new,.patent{
    display: inline-block;
    color: #fff;
    border-radius: 5px;
    margin-right:5px;
    margin-bottom:3px;
    width:80px;
    text-align: center;
    font-weight: bold;
    font-size:1.4rem;
    line-height: 1.5;
}
.new{background: #2274B6;}
.patent{ background: #164582;}
span.patent{padding-left:1em;}
#progress .contents-in{
    padding:20px 20px 20px 0;
    position: relative;
}
.contents-in ul li{
    display: flex;
    align-items: flex-start;
}
.contents-in ul li:not(.txt-n){margin-bottom:10px;}
.contents-in ul li:not(.txt-n):last-of-type{margin-bottom:0px;}
.contents-flex{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.contents-flex ul:nth-of-type(2){margin-left:40px;}
.contents-flex > li:nth-of-type(2){margin-left:40px;}
.image-00{
    width:112px;
    position: absolute;
    top:-50px;
    right:20px;
    margin-right:10px;
}
#progress .image-01{width:210px;margin-right:10px;}
#progress .image-02{width:135px;margin-right:10px;}
#progress .image-03{width:57px;margin-right:10px;}
#progress .image-04{width:170px;margin-right:10px;}
#progress .shadow{box-shadow: 0px 1px 6px rgba(0, 0, 0, .15); }
#progress .txt-border{
    border:1px solid #2274B6;
    padding:10px;
    width:100%;
    margin-top:20px;
}
#progress .txt-border.txt-border-s{width:77%;}
.exhibition,.office{
    padding-left: 1em;
    text-indent: -1em;
}
.s-group{
    padding-left: 5px;
    padding-bottom:20px;
    line-height: 1.5;
}
.s-group:first-of-type .age{padding-top:20px;}
.s-image{width:80%;}
.exhibition .age,.office .age{
    font-size:2rem;
    font-weight: bold;
    color:#2274B6;
    line-height: 1;
    margin-bottom: 5px;
}
.origin-link-in ul li:nth-of-type(1) .origin-link-bg:after{background: rgba(22,69,130,.84)!important;}

@media screen and (max-width: 768px) {
    .progress-con table{
         table-layout:auto;
         width: 100%;
    }
    colgroup .col1{width:calc((100% - 90%) / 2);}
    colgroup .col2{width:90%;}
    colgroup .col3{width:90%;}
    colgroup .col4{width:90%;}
    colgroup .col5{width:90%;}
    colgroup .col6{width:calc((100% - 90%) / 2);
    }
    .tb-head{display: none;}
    .tb-space td:nth-of-type(2),
    .tb-space td:nth-of-type(3),
    .tb-space td:nth-of-type(4){display: block;}
    tr.tb-space td:nth-of-type(2),
    tr.tb-space td:nth-of-type(3),
    tr.tb-space td:nth-of-type(4){border-left:10px solid #9EC6D6;}
    tr.tb-space td:nth-of-type(5),
    tr.tb-head td:nth-of-type(5),
    tr.tb-body td:nth-of-type(6){border-left:none;}
    .tb-space{height:5vw;}
    .tb-body.border-t{border-top:10px solid #9EC6D6;}
    .tb-body td:nth-of-type(2),
    .tb-body td:nth-of-type(3),
    .tb-body td:nth-of-type(4),
    .tb-body td:nth-of-type(5){
        display: block;
        border-left:10px solid #9EC6D6;
    }
    tr.tb-body td:nth-of-type(4),
    tr.tb-body td:nth-of-type(5){border-left:10px solid #9EC6D6;
    }
    .tb-body td{font-size: 3.2vw;}
    .data p:not(.anniversary){
        font-size: 8vw;
        padding-left:3vw;
        padding-right:3vw;
        line-height: 1.8;
    }
    .data p:not(.anniversary):before{
        width:10px;
        height:8vw;
        left:-10px;
        top:4vw;
    }
    .anniversary{
        display: block;
        font-size: 3.2vw;
        color:#fff;
        font-weight: bold;
        text-align: center;
        background:#8A682A ;
        position: relative;
        height:6.333vw;
        line-height: 6.333vw;
        margin:0 4vw -2.667vw 2.667vw;
        width:22%;
        top:3vw;
    }
    .anniversary + p{
        top:3vw;
        padding-bottom:3vw;
    }
    .anniversary:before, .anniversary:after {
      position: absolute;
      content: '';
      width: 0px;
      height: 0px;
      z-index: 1;
    }
    .anniversary:before {
      /*左端の山形*/
      top: 0;
      left: 0;
      border-width: 3.2vw 0px 3.2vw 1.733vw;
      border-color: transparent transparent transparent #fff;
      border-style: solid;
    }
    .anniversary:after {
      /*右端の山形*/
      top: 0;
      right: 0;
      border-width: 3.2vw 1.733vw 3.2vw 0px;
      border-color: transparent #fff transparent transparent;
      border-style: solid;
    }
    #progress .txt-b{
        font-size: 4.267vw  ;
        font-weight: bold;
        position: relative;
        top:-3vw;;
        line-height: 1.5;
    }
    #progress .txt-n{ font-size: 3.733vw}
    #progress .txt-n.mb20{margin-bottom:3vw !important;}
    #progress .txt-s{ margin:0 0 3vw 1em;}
    .new{
        display: inline-block;
        background: #2274B6;
        color: #fff;
        border-radius: 5px;
        padding:0;
        margin-right:1vw;
        text-align: center;
        font-size: 3.733vw;
        width:20vw;
        margin-top:1.5vw;
    }
    .patent{
        display: inline-block;
        background: #164582;
        color: #fff;
        border-radius: 5px;
        padding:0;
        text-align: center;
        font-size: 3.733vw;
        width: 20vw;
        margin-top:1.5vw;
    }
    #progress .contents-in{
        padding:0vw 3vw 3vw 3vw;
        position: relative;
    }
    .contents-in ul li{
        display: flex;
        flex-wrap: wrap;
    }
    .contents-in ul li > p{width:50%;}
    .contents-in ul li .txt-group{width:100%;}
    .contents-flex ul:nth-of-type(2){margin-left:0;}
    .contents-flex > li:nth-of-type(2){margin-left:0;}
    .image-00{
        width:26.667vw;
        position: absolute;
        top:6.3vw;
        right:0px;
    }
    #progress .image-01{
        width:57.333vw;
        margin-bottom:1vw;
    }
    #progress .image-02{
        width:36vw;
        margin-bottom:1vw;
    }
    #progress .image-03{
        width:15.2vw;
        margin-bottom:1vw;
    }
    #progress .image-04{
        width:45.333vw;
        margin-bottom:1vw;
    }
    #progress .txt-border{
        border:1px solid #2274B6;
        padding:2vw;
        width:100%;
        margin-top:0;
    }
    #progress .txt-border.txt-border-s{width:65%;}
    .office{padding-bottom:1vw;}
    .office p{line-height: 1.5;}
    .exhibition .age,.office .age{
        font-size: 4.8vw;
        font-weight: bold;
        color:#2274B6;
        line-height: 1;
        margin:0px 0 5px;
    }
    .s-group{
        padding-left: 3vw;
        padding-bottom:3vw;
        display: flex;
        align-items: flex-start;
    }
    .s-image{
        width:50%;
        margin-top:1vw;
        margin-left: 1em;
    }
    .s-group:first-of-type .age{padding-top:0px;}
    .s-group p{width:17%;}
    .s-group ul{width:83%;}
}
