@charset "utf-8";


.txt-link{
    color: #b26118;
    text-decoration: underline;
}
.txt-link-2{
    color: #f27f0c;
    text-decoration: underline;
}
#contents{
    width: 100%;
    position: relative;
}
#contents figure img{
    width: 100%;
}
.mv{
    width: 100%;
    background: #ffffff;
    border-bottom: 3px solid #1e1933;
}
.mv-title{
    width: 679px;
    margin: 0 auto;
    padding: 26px 0 54px;
}
.mv-title img{
    width: 100%;
}
.tab{
    width: 960px;
    margin: 0 auto;
    display: table;
}
.tab p{
    width: 320px;
    display: table-cell;
}
.tab p a{
    display: block;
    text-decoration: none;
    text-align: center;
    color: #787585;
    padding: 21px 0;
    font-size: 16px;
    font-weight: bold;
}
.tab p.current a{
    background: #1e1933;
    color: #ffffff;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.btn-wrap {
    width: 560px;
    margin: 0 auto;
    padding: 98px 0 64px;
    overflow: hidden;
    position: relative;
    z-index: 11;
}
.btn-wrap p{
    width: 230px;
    float: left;
    margin: 0;
}
.btn-wrap p:nth-child(1){
    margin-right: 100px;
}
.btn-wrap p a{
  padding-left: 0;
  text-decoration: none;
}
.btn-wrap p a:before{
 color: #fff;
}

.btn-wrap p a span{
    font-size: 14px;
}

.contents-detail{
    padding-bottom: 30px;
}

.chronological-table{
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    /*-webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;*/
    -webkit-transition: opacity 0.1s ease, -webkit-transform 0.1s ease 0.1s ease;
    transition: opacity 0.1s ease, transform 0.1s ease, visibility 0.1s ease;
    position: fixed;
    top: 83px;
    /*left: 60px;*/
    left: 0;
    z-index: 10;
    display: inline-block;
    border-top: 1px solid #f27f0c;
    opacity: 0;
    visibility: hidden;
}
.chronological-table.active {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
    visibility: visible;
}

.chronological-table p a{
    font-size: 16px;
    font-weight: bold;
    color: #f27f0c;
    display: block;
    border-bottom: 1px solid #f27f0c;
    text-decoration: none;
}
/*

modal

------------------------------------------------------------------*/
.modal-bg{
    -webkit-transition: opacity 0.4s ease, visibility 0.4s ease;
    transition: opacity 0.4s ease, visibility 0.4s ease;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 109;
    opacity: 0;
    visibility: hidden;
    background: rgba(0,0,0,0.8);
}
.modal-bg + .modal-bg{
    position: absolute;
    background: none;
    z-index: 110;
    height: auto;
}
.modal-bg.active {
    opacity: 1;
    visibility: visible;
}
.modal-element{
    display: none;
    width: 472px;
    background: #ffffff;
    padding: 60px 40px 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -236px;
}

.modal-mov-element{
    display: none;
    width: 930px;
    height: 540px;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -465px;
}

#mov-player {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
#mov-player iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}
.modal-mov-element .btn-modal-close {
    top: -40px;
    right: 0;
}
.btn-modal-close{
    position: absolute;
    width: 20px;
    top: 20px;
    right: 20px;
    margin: 0 0 0 0;
}
.btn-modal-close a{
    -webkit-transition: -webkit-transform 0.4s ease;
    transition: -webkit-transform 0.4s ease;
    transition: transform 0.4s ease;
    transition: transform 0.4s ease, -webkit-transform 0.4s ease;
    display: block;
}
.btn-modal-close a:hover {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
}
.btn-modal-close img{
    width: 100%;
}
.modal-txt{
    font-size: 15px;
    color: #000000;
}

.modal-txt a{
  color: #b26118;
  text-decoration: none;
}
.modal-element .box {
    display: none;
}
/*

mv

------------------------------------------------------------------*/
.contents-mv-title-1{
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    margin: 0 0 0 0;
}
.contents-mv-title-2{
    font-size: 16px;
    text-align: center;
    line-height: 1.8;
    margin: 5px 0 0 0;
}
.mv-fukidashi{
    width: 142px;
    margin: 0 auto 5px;
}
.mv-fukidashi img{
    width: 100%;
}
.contents-mv{
    position: relative;
}
.contents-mv-title{
    width: 462px;
    position: absolute;
    top: 132px;
    left: 50%;
    margin-left: -231px;
    background: rgba(255,255,255,0.8);
    z-index: 2;
    padding: 20px 0;
}
.mvbg{
    width: 829px;
    margin: 128px auto 0;
    position: relative;
}
.mvbg img{
    width: 100%;
}
.obi{
    position: absolute;
    top: -2px;
    left: 50%;
    margin-left: -23px;
}
.btn-detail{
    z-index: 11;
    left: 409px!important;
    right: auto!important;
    width: 471px;
}
.btn-detail a{
    font-size: 28px;
    height: 66px;
    font-weight: bold;
    background: #1e1a33;
    color: #ffffff;
    text-decoration: none;
    position: relative;
    border-radius: 10px;
    display: table;
    table-layout:fixed;
    padding: 7px 6px 7px 24px;
    transition: .2s ease-out;
    -webkit-transition: .2s ease-out;
}
.btn-detail a:hover{
    opacity: 0.8;
}
.btn-detail a:before{
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: -9px;
    margin-top: -5px;
    background: url(../img/history/fukidashi_left.svg) no-repeat center center;
    background-size: 10px;
    width: 10px;
    height: 10px;
}
.btn-detail a span:nth-child(1){
    display: table-cell;
    vertical-align: middle;
    line-height: 1.36;
}
.ico-kuwashiku{
    content: "";
    display: table-cell;
    vertical-align: middle;
    background: url(../img/history/ico_kuwashiku.png) no-repeat center center;
    background-size: 48.5px;
    width: 48.5px;
    height: 43px;
}
.history-section{
    width: 800px;
    height: 15680px;
    margin: 333px auto 0;
    background: url(../img/history/obi_2.svg) repeat-y center center;
    background-size: 46px;
    position: relative;
}
.history-section:after{
    content: "";
    display: block;
    background: url(../img/history/obi-bottom.png) no-repeat center center;
    background-size: 60px;
    width: 60px;
    height: 58px;
    position: absolute;
    bottom: -30px;
    left: 50%;
    margin-left: -31px;
}
.caption{
    font-size: 15px;
    color: #1e1933;
    background: rgba(255,255,255,0.8);
    padding: 10px;
}
.period-list{
    width: 300px;
    margin: 0 0 0 0;
    overflow: hidden;
}
.period-list dt{
    font-size: 15px;
    font-weight: bold;
    color: #1e1933;
    float: left;
    margin: 0 0 0 0;
}
.period-list dd{
    font-size: 15px;
    color: #1e1933;
    margin: 0 0 0 0;
}
.thumb-circle{
    border-radius: 100%;
    display: block;
    margin: 0 0 5px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.history-section.color-2019 .thumb-circle,
.history-section.color-2019 .thumb-square{
    border: 10px solid #f27f0c;
}
.thumb-square{
    border-radius: 10px;
    display: block;
    margin: 0 0 5px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.marking{
    background: #fbddbe;
}

/*

2002

---------------------------------------------------------------------- */
.period-element-2002{
    position: absolute;
    top: -259px;
    left: 80px;
}
.period-2002{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2002{
    position: absolute;
    top: -256px;
    right: 60px;
}
.box-2002-1{
    position: absolute;
    top: 32px;
    left: 72px;
    width: 365px;
    margin: 0 0 0 0;
}
.box-2002-1 .caption{
    width: 70%;
    margin: 0 0 0 50px;
}
.box-2002-2{
    position: absolute;
    top: -120px;
    right: -105px;
    width: 476px;
    margin: 0 0 0 0;
}
.box-2002-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
    text-align: center;
}

/*

2003

---------------------------------------------------------------------- */
.period-element-2003{
    position: absolute;
    top: 606px;
    left: 79px;
}
.period-2003{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2003{
    position: absolute;
    top: 620px;
    right: 28px;
}
.box-2003-1{
    position: absolute;
    top: 866px;
    left: 69px;
    width: 399px;
    margin: 0 0 0 0;
}
.box-2003-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2003-2{
    position: absolute;
    top: 760px;
    right: -35px;
    margin: 0 0 0 0;
}
.box-2003-2 .caption{
    width: 100%;
    margin: 0 auto;
    background: none;
}
.img_2003_2{
    width: 327px;
}
.img_2003_3{
    position: absolute;
    top: 56px;
    right: -20px;
    z-index: 2;
    width:235px!important;
}

/*

2004

---------------------------------------------------------------------- */
.period-element-2004{
    position: absolute;
    top: 1431px;
    left: 78px;
}
.period-2004{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2004{
    position: absolute;
    top: 1447px;
    right: -25px;
}
.box-2004-1{
    width: 366px;
    position: absolute;
    top: 1717px;
    left: 80px;
    margin: 0 0 0 0;
}
.box-2004-1 .caption{
    width: 70%;
    margin: 0 auto;
}
.box-2004-2{
    position: absolute;
    top: 1576px;
    right: -74px;
    width: 400px;
    margin: 0 0 0 0;
}
.box-2004-2 .thumb-square{
    width: 100%;
}
.box-2004-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}

/*

2005

---------------------------------------------------------------------- */
.period-element-2005{
    position: absolute;
    top: 2280px;
    left: 78px;
}
.period-2005{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2005{
    position: absolute;
    top: 2286px;
    right: 115px;
}
.box-2005-1{
    position: absolute;
    top: 2570px;
    left: 77px;
    width: 382px;
    margin: 0 0 0 0;
}
.box-2005-1 .caption{
    width: 80%;
    margin: 0 auto;
}
.box-2005-2{
    width: 403px;
    position: absolute;
    top: 2450px;
    right: -90px;
    margin: 0 0 0 0;
}
.box-2005-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}


/*

2006

---------------------------------------------------------------------- */
.period-element-2006{
    position: absolute;
    top: 3081px;
    left: 77px;
}
.period-2006{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2006{
    position: absolute;
    top: 3119px;
    right: -35px;
}
.box-2006-1{
    position: absolute;
    top: 3422px;
    left: 80px;
    width: 436px;
    margin: 0 0 0 0;
}
.box-2006-1 .caption{
    width: 100%;
    margin: 0 auto;
    text-align: center;
}
.box-2006-2{
    position: absolute;
    top: 3240px;
    right: -90px;
    width: 347px;
    margin: 0 0 0 0;
}
.box-2006-3{
    position: absolute;
    top: 3732px;
    right: 219px;
    width: 366px;
    margin: 0 0 0 0;
}
.box-2006-2 .caption{
    width: 100%;
    margin: 0 auto;
    background: none;
}


/*

2007

---------------------------------------------------------------------- */
.period-element-2007{
    position: absolute;
    top: 4281px;
    left: 78px;
}
.period-2007{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2007{
    position: absolute;
    top: 4279px;
    right: 25px;
}
.box-2007-1{
    position: absolute;
    top: 4602px;
    left: 79px;
    width: 334px;
    margin: 0 0 0 0;
}
.box-2007-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2007-2{
    position: absolute;
    top: 4430px;
    right: -7px;
    width: 358px;
    margin: 0 0 0 0;
}
.box-2007-3{
    position: absolute;
    top: 3808px;
    right: 289px;
    width: 387px;
    margin: 0 0 0 0;
}
.box-2007-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}

/*

2008

---------------------------------------------------------------------- */
.period-element-2008{
    position: absolute;
    top: 5121px;
    left: 78px;
}
.period-2008{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2008{
    position: absolute;
    top: 5139px;
    right: 81px;
}
.box-2008-1{
    position: absolute;
    top: 5552px;
    left: 80px;
    width: 366px;
    margin: 0 0 0 0;
}
.box-2008-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2008-2{
    position: absolute;
    top: 5300px;
    right: -77px;
    width: 436px;
    margin: 0 0 0 0;
}
.box-2008-3{
    position: absolute;
    top: 5790px;
    right: 9px;
    width: 290px;
    margin: 0 0 0 0;
}
.box-2008-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}

/*

2009

---------------------------------------------------------------------- */
.period-element-2009{
    position: absolute;
    top: 6301px;
    left: 77px;
}
.period-2009{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2009{
    position: absolute;
    top: 6292px;
    right: 6px;
}
.box-2009-1{
    position: absolute;
    top: 6622px;
    left: 79px;
    width: 334px;
    margin: 0 0 0 0;
}
.box-2009-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2009-2{
    position: absolute;
    top: 6467px;
    right: 44px;
    width: 286px;
    margin: 0 0 0 0;
}
.box-2009-3{
    position: absolute;
    top: 6900px;
    right: 79px;
    width: 290px;
    margin: 0 0 0 0;
}
.box-2009-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}

/*

2010

---------------------------------------------------------------------- */
.period-element-2010{
    position: absolute;
    top: 7211px;
    left: 78px;
}
.period-2010{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2010{
    position: absolute;
    top: 7215px;
    right: -53px;
}
.box-2010-1{
    position: absolute;
    top: 7522px;
    left: 68px;
    width: 368px;
    margin: 0 0 0 0;
}
.box-2010-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2010-2{
    position: absolute;
    top: 7370px;
    right: 13px;
    width: 330px;
    margin: 0 0 0 0;
}
.box-2010-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}

/*

2011

---------------------------------------------------------------------- */
.period-element-2011{
    position: absolute;
    top: 7931px;
    left: 77px;
}
.period-2011{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2011{
    position: absolute;
    top: 7933px;
    right: 55px;
}
.box-2011-1{
    position: absolute;
    top: 8262px;
    left: 80px;
    width: 334px;
    margin: 0 0 0 0;
}
.box-2011-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2011-2{
    position: absolute;
    top: 8070px;
    right: 54px;
    width: 287px;
    margin: 0 0 0 0;
}
.box-2011-2 img{
    width: 100%;
}
.box-2011-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}


/*

2012

---------------------------------------------------------------------- */
.period-element-2012{
    position: absolute;
    top: 8731px;
    left: 77px;
}
.period-2012{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2012{
    position: absolute;
    top: 8735px;
    right: 58px;
}
.box-2012-1{
    position: absolute;
    top: 9072px;
    left: 78px;
    width: 334px;
    margin: 0 0 0 0;
}
.box-2012-1 img{
    width: 100%;
}
.box-2012-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2012-2{
    position: absolute;
    top: 8880px;
    right: 26px;
    width: 366px;
    margin: 0 0 0 0;
}
.box-2012-2 img{
    width: 100%;
}
.box-2012-2 .caption{
    width: 96%;
    margin: 0 0 0 40px;
    background: none;
}


/*

2013

---------------------------------------------------------------------- */
.period-element-2013{
    position: absolute;
    top: 9531px;
    left: 77px;
}
.period-2013{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2013{
    position: absolute;
    top: 9540px;
    right: 145px;
}
.box-2013-1{
    position: absolute;
    top: 9862px;
    left: 85px;
    width: 280px;
    margin: 0 0 0 0;
}
.box-2013-1 .caption{
    width: 90%;
    margin: 0 auto;
}
.box-2013-2{
    position: absolute;
    top: 9700px;
    right: 31px;
    width: 366px;
    margin: 0 0 0 0;
}
.box-2013-2 .caption{
    width: 80%;
    margin: 0 auto;
    background: none;
}


/*

2014

---------------------------------------------------------------------- */
.period-element-2014{
        position: absolute;
    top: 10391px;
    left: 79px;
}
.period-2014{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2014{
        position: absolute;
    top: 10391px;
    right: 56px;
}
.box-2014-1{
    position: absolute;
    top: 10720px;
    left: 78px;
    width: 334px;
    margin: 0 0 0 0;
}
.box-2014-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2014-2{
    position: absolute;
    top: 10550px;
    right: 33px;
    width: 277px;
    margin: 0 0 0 0;
}
.box-2014-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}
.box-2014-3{
    position: absolute;
    top: 11000px;
    right: -67px;
    width: 431px;
    margin: 0 0 0 0;
    z-index: 11;
}

/*

2015

---------------------------------------------------------------------- */
.period-element-2015{
    position: absolute;
    top: 11461px;
    left: 77px;
}
.period-2015{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2015{
    position: absolute;
    top: 11467px;
    right: 80px;
}
.box-2015-1{
    position: absolute;
    top: 11832px;
    left: 74px;
    width: 334px;
    margin: 0 0 0 0;
}
.box-2015-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2015-2{
    position: absolute;
    top: 11632px;
    right: -70px;
    width: 436px;
    margin: 0 0 0 0;
}
.box-2015-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}
.box-2015-3{
    position: absolute;
    top: 12650px;
    right: 113px;
    width: 290px;
    margin: 0 0 0 0;
}

/*

2016

---------------------------------------------------------------------- */
.period-element-2016{
    position: absolute;
    top: 12271px;
    left: 76px;
}
.period-2016{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2016{
    position: absolute;
    top: 12321px;
    right: 99px;
}
.box-2016-1{
    position: absolute;
    top: 12612px;
    left: 79px;
    width: 436px;
    margin: 0 0 0 0;
    z-index: 11;
}
.box-2016-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2016-2{
    position: absolute;
    top: 12430px;
    right: -27px;
    width: 277px;
    margin: 0 0 0 0;
}
.box-2016-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}


/*

2017

---------------------------------------------------------------------- */
.period-element-2017{
    position: absolute;
    top: 13061px;
    left: 78px;
}
.period-2017{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2017{
    position: absolute;
    top: 13086px;
    right: -25px;
}
.box-2017-1{
    position: absolute;
    top: 13372px;
    left: 74px;
    width: 355px;
    margin: 0 0 0 0;
}
.box-2017-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2017-2{
    position: absolute;
    top: 13210px;
    right: -57px;
    width: 424px;
    margin: 0 0 0 0;
}
.box-2017-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}

/*

2018

---------------------------------------------------------------------- */
.period-element-2018{
    position: absolute;
    top: 13931px;
    left: 78px;
}
.period-2018{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2018{
    position: absolute;
    top: 13978px;
    right: 5px;
}
.box-2018-1{
    position: absolute;
    top: 14271px;
    left: 78px;
    width: 436px;
    margin: 0 0 0 0;
}
.box-2018-1 .caption{
    width: 100%;
    margin: 0 auto;
}
.box-2018-2{
    position: absolute;
    top: 14100px;
    right: 3px;
    width: 280px;
    margin: 0 0 0 0;
}
.box-2018-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}

/*

2019

---------------------------------------------------------------------- */
.period-element-2019{
    position: absolute;
    top: 14763px;
    left: 78px;
}
.period-2019{
    width: 300px;
    margin: 0 0 5px 0;
}
.btn-detail.btn-2019{
    position: absolute;
    top: 14772px;
    right: -55px;
}
.box-2019-1{
    position: absolute;
    top: 15054px;
    left: 76px;
    width: 377px;
    margin: 0 0 0 0;
}
.box-2019-1 .caption{
    width: 80%;
    margin: 0 auto;
}
.box-2019-2{
    position: absolute;
    top: 14920px;
    right: -63px;
    width: 392px;
    margin: 0 0 0 0;
    z-index: 2;
}
.box-2019-2 .caption{
    width: 90%;
    margin: 0 auto;
    background: none;
}


.btn_mov a {
    -webkit-transition: opacity 0.4s ease;
    transition: opacity 0.4s ease;
}
.btn_mov a:hover {
    opacity: 0.8;
}



/* keyframes */
@keyframes anime1 {
  from { transform: translateY(0); }
  to   { transform: translateY(-604px); }
}
@keyframes anime2 {
  from { transform: translateY(0); }
  to   { transform: translateY(-960px); }
}
@keyframes anime3 {
  from { transform: translateY(0); }
  to   { transform: translateY(-700px); }
}
@keyframes anime4 {
  from { transform: translateY(0); }
  to   { transform: translateY(-513px); }
}
@keyframes anime5 {
  from { transform: translateY(0); }
  to   { transform: translateY(-435px); }
}
@keyframes anime6 {
  from { transform: translateY(0); }
  to   { transform: translateY(-612px); }
}
/*@keyframes anime7 {
  from { transform: translateY(0); }
  to   { transform: translateY(-459px); }
}*/
@keyframes anime8 {
  from { transform: translateY(0); }
  to   { transform: translateY(-486px); }
}
@keyframes anime9 {
  from { transform: translateY(0); }
  to   { transform: translateY(-420px); }
}


@keyframes anime1_noloop {
  from { transform: translateY(0); }
  to   { transform: translateY(-453px); }
}
@keyframes anime2_noloop {
  from { transform: translateY(0); }
  to   { transform: translateY(-720px); }
}
@keyframes anime3_noloop {
  from { transform: translateY(0); }
  to   { transform: translateY(-525px); }
}
@keyframes anime4_noloop {
  from { transform: translateY(0); }
  to   { transform: translateY(-342px); }
}
@keyframes anime5_noloop {
  from { transform: translateY(0); }
  to   { transform: translateY(-290px); }
}
@keyframes anime6_noloop {
  from { transform: translateY(0); }
  to   { transform: translateY(-459px); }
}
/*@keyframes anime7_noloop {
  from { transform: translateY(0); }
  to   { transform: translateY(-306px); }
}*/
@keyframes anime7_noloop {
  from { transform: translateX(250px); }
  to   { transform: translateX(0px); }
}
/*@keyframes anime8_noloop {
  from { transform: translateY(0); }
  to   { transform: translateY(-324px); }
}*/
@keyframes anime8_noloop {
  from { transform: translateX(245px); }
  to   { transform: translateX(0px); }
}
@keyframes anime9_noloop {
  from { transform: translateY(0); }
  to   { transform: translateY(-315px); }
}



.chara {
    transform: translateY(20px);
    transition: all 0.4s ease;
    opacity: 0;
    overflow: hidden;
    position: relative;
    position: absolute;
}
.chara.action {
    transform: translateY(0);
    opacity: 1;
}
.chara span {
    display: block;
    background-size: 100%, 100%;
    background-position: 0 0;
    background-repeat:repeat-y;
    /* animation-duration: 2s; */
    animation-delay: .5s;
    animation-iteration-count: infinite;
    animation-direction:alternate;
    position: absolute; top: 0; left: 0;
    width: 100%;
}
.chara.noloop span {
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
}


/* *********** anima1 ************** */
.chara.anime1 {
    width: 189px; height: 151px;
    top: 580px;
    left: 520px;
}
.chara.anime1 span {
    animation-timing-function: steps(4);
    background-image: url(../img/history/anime1/spritesheet.png);
    height: 400%;
}
.chara.anime1.noloop span {
    animation-timing-function: steps(3);
}
.chara.anime1.action span {
    animation-name: anime1;
}
.chara.anime1.noloop.action span {
    animation-name: anime1_noloop;
}

/* *********** anima2 ************** */
.chara.anime2 {
    width: 258px; height: 240px;
    top: 550px;
    left: 460px;
}
.chara.anime2 span {
    animation-timing-function: steps(4);
    background-image: url(../img/history/anime2/spritesheet.png);
    height: 400%;
}
.chara.anime2.noloop span {
    animation-timing-function: steps(3);
}
.chara.anime2.action span {
    animation-name: anime2;
}
.chara.anime2.noloop.action span {
    animation-name: anime2_noloop;
}

/* *********** anima3 ************** */
.chara.anime3 {
    width: 187px; height: 175px;
    top: 720px;
    left: 570px;
}
.chara.anime3 span {
    animation-timing-function: steps(4);
    background-image: url(../img/history/anime3/spritesheet.png);
    height: 400%;
}
.chara.anime3.noloop span {
    animation-timing-function: steps(3);
}
.chara.anime3.action span {
    animation-name: anime3;
}
.chara.anime3.noloop.action span {
    animation-name: anime3_noloop;
}

/* *********** anima4 ************** */
.chara.anime4 {
    width: 191px; height: 171px;
    top: 720px;
    left: 450px;
}
.chara.anime4 span {
    animation-timing-function: steps(3);
    background-image: url(../img/history/anime4/spritesheet.png);
    height: 300%;
}
.chara.anime4.noloop span {
    animation-timing-function: steps(2);
}
.chara.anime4.action span {
    animation-name: anime4;
}
.chara.anime4.noloop.action span {
    animation-name: anime4_noloop;
}

/* *********** anima5 ************** */
.chara.anime5 {
    width: 223px; height: 145px;
    top: -100px;
    left: 570px;
}
.chara.anime5 span {
    animation-timing-function: steps(3);
    background-image: url(../img/history/anime5/spritesheet.png);
    height: 300%;
}
.chara.anime5.noloop span {
    animation-timing-function: steps(2);
}
.chara.anime5.action span {
    animation-name: anime5;
}
.chara.anime5.noloop.action span {
    animation-name: anime5_noloop;
}

/* *********** anima6 ************** */
.chara.anime6 {
    width: 191px; height: 153px;
    top: 760px;
    left: 50px;
}
.chara.anime6 span {
    animation-timing-function: steps(4);
    background-image: url(../img/history/anime6/spritesheet.png);
    height: 400%;
}
.chara.anime6.noloop span {
    animation-timing-function: steps(3);
}
.chara.anime6.action span {
    animation-name: anime6;
}
.chara.anime6.noloop.action span {
    animation-name: anime6_noloop;
}

/* *********** anima7 ************** */
.chara.anime7 {
    width: 436px;
    height: 153px;
    top: 600px;
    left: 370px;
}
/*.chara.anime7 span {
    animation-timing-function: steps(3);
    background-image: url(../img/history/anime7/spritesheet.png);
    height: 300%;
}*/
.chara.anime7 span {
    /*animation-timing-function: steps(3);*/
    transform: translateX(250px);
    -webkit-transform: translateX(250px);
    background-image: url(../img/history/anime7/anime7.png);
    width: 187px;
    height: 152.5px;
    transition: all 0.4s ease-out;
    -webkit-transition: all 0.4s ease-out;
}
/*.chara.anime7.noloop span {
    animation-timing-function: steps(2);
}*/
.chara.anime7.action span {
    animation-name: anime7;
}
.chara.anime7.noloop.action span {
    animation-name: anime7_noloop;
}

/* *********** anima8 ************** */
.chara.anime8 {
    width: 455px; height: 162px;
    top: 860px;
    left: 370px;
}
.chara.anime8 span {
    /*animation-timing-function: steps(3);*/
    transform: translateX(250px);
    -webkit-transform: translateX(250px);
    background-image: url(../img/history/anime8/anime8.png);
    width: 194px;
    height: 161.5px;
    transition: all 0.4s ease-out;
    -webkit-transition: all 0.4s ease-out;
}
/*.chara.anime8.noloop span {
    animation-timing-function: steps(2);
}*/
.chara.anime8.action span {
    animation-name: anime8;
}
.chara.anime8.noloop.action span {
    animation-name: anime8_noloop;
}

/* *********** anima9 ************** */
.chara.anime9 {
    width: 195px; height: 105px;
    left: 50%;
    top: -97px;
    margin-left: -92px;
    z-index: 10;
}
.chara.anime9 span {
    animation-timing-function: steps(4);
    background-image: url(../img/history/anime9/spritesheet.png);
    height: 400%;
}
.chara.anime9.noloop span {
    animation-timing-function: steps(3);
}
.chara.anime9.action span {
    animation-name: anime9;
}
.chara.anime9.noloop.action span {
    animation-name: anime9_noloop;
}