@charset "UTF-8";
a {
  text-decoration: none;
  display: block;
}

.founded, .revival, .shinsei, .transformation, .challenging {
  color: #fff;
}

.founded {
  background-color: #87612e;
}

.revival {
  background-color: #54842f;
}

.shinsei {
  background-color: #ce6b11;
}

.transformation {
  background-color: #2f6184;
}

.challenging {
  background-color: #d12258;
}

/*mv_lower
-----------------------------------------------------------------------------*/
#mv_lower .mv_inner .txt {
  letter-spacing: 0.1em;
  font-family: "游明朝体", "Yu Mincho", "游明朝", YuMincho, "HG明朝E", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 600;
}
@media print, screen and (min-width: 768px) {
  #mv_lower .mv_inner .txt {
    font-size: 2.7777777778rem;
    margin-top: 2.1111111111rem;
  }
}
@media only screen and (max-width: 767px) {
  #mv_lower .mv_inner .txt {
    font-size: 1.5625rem;
    margin-top: 4.9543676662vw;
  }
}

/*nav_history_wrap
-----------------------------------------------------------------------------*/
#nav_history_wrap {
  background-image: url("../add_img/history/bg_b.jpg");
  background-repeat: repeat;
}
#nav_history_wrap .nav_history_area {
  font-family: "游明朝体", "Yu Mincho", "游明朝", YuMincho, "HG明朝E", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#nav_history_wrap .nav_history_area .h_list {
  letter-spacing: 0.1em;
  font-weight: 600;
  position: relative;
}
#nav_history_wrap .nav_history_area .h_list a {
  position: relative;
}
#nav_history_wrap .nav_history_area .h_list a::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-image: url("../add_img/b_arrow_b_g.svg");
}
#nav_history_wrap .nav_history_area .h_list span {
  text-align: center;
  display: block;
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  #nav_history_wrap {
    z-index: -2;
  }
  #nav_history_wrap .nav_history_area {
    position: relative;
    padding: 2.5rem 0 2.8888888889rem;
  }
  #nav_history_wrap .nav_history_area::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-color: #333333;
    width: 1px;
    height: 2.7777777778rem;
    position: absolute;
    bottom: 2.8888888889rem;
    right: 0;
    z-index: 0;
  }
  #nav_history_wrap .nav_history_area .h_list {
    width: 20%;
    font-size: 0.8888888889rem;
    text-align: center;
  }
  #nav_history_wrap .nav_history_area .h_list a {
    padding-bottom: 1.1111111111rem;
    z-index: 0;
    -webkit-transition: all 0.4s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
    -ms-transition: all 0.4s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
    transition: all 0.4s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
  }
  #nav_history_wrap .nav_history_area .h_list a::after {
    width: 0.5rem;
    height: 0.4444444444rem;
    position: absolute;
    left: 50%;
    bottom: 0;
    z-index: 0;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }
  #nav_history_wrap .nav_history_area .h_list a::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-color: rgba(135, 97, 46, 0.2);
    width: 8.5555555556rem;
    height: 5.5555555556rem;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 0;
    -webkit-transition: all 0.4s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
    -ms-transition: all 0.4s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
    transition: all 0.4s cubic-bezier(0.66, 0.01, 0.67, 0.71) 0s;
  }
  #nav_history_wrap .nav_history_area .h_list a:hover::before {
    opacity: 1;
  }
  #nav_history_wrap .nav_history_area .h_list::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-color: #333333;
    width: 1px;
    height: 2.7777777778rem;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 0;
  }
  #nav_history_wrap .nav_history_area .h_list span {
    width: 26.6666666667%;
    margin: 0 auto 0.5555555556rem;
    font-size: 0.7777777778rem;
    padding: 0.3333333333rem 0;
  }
}
@media print and (-ms-high-contrast: none), screen and (min-width: 768px) and (-ms-high-contrast: none), print and (-ms-high-contrast: active), screen and (min-width: 768px) and (-ms-high-contrast: active) {
  #nav_history_wrap .nav_history_area .h_list {
    /* IE11にのみ適用したいスタイルシート */
  }
  #nav_history_wrap .nav_history_area .h_list span {
    padding-top: 0.6666666667rem;
  }
}

@media only screen and (max-width: 767px) {
  #nav_history_wrap {
    padding: 19.556714472vw 0 10.4302477184vw;
  }
  #nav_history_wrap .nav_history_area {
    width: 75.6192959583vw;
    margin: 0 auto;
  }
  #nav_history_wrap .nav_history_area .h_list {
    padding: 2.6075619296vw 0;
  }
  #nav_history_wrap .nav_history_area .h_list a {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    align-items: center;
    font-size: 1.0625rem;
  }
  #nav_history_wrap .nav_history_area .h_list a::after {
    width: 3.520208605vw;
    height: 2.998696219vw;
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }
  #nav_history_wrap .nav_history_area .h_list span {
    width: 21.5123859192vw;
    font-size: 1.0625rem;
    padding: 2.0860495437vw 0;
    margin-right: 4.6936114733vw;
  }
}

/*timeline_wrap
-----------------------------------------------------------------------------*/
#timeline_wrap .timeline_list {
  font-family: "游明朝体", "Yu Mincho", "游明朝", YuMincho, "HG明朝E", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#timeline_wrap .timeline_list:nth-child(odd) {
  background-image: url("../add_img/history/bg_w.jpg");
  background-repeat: repeat;
}
#timeline_wrap .timeline_list:nth-child(even) {
  background-image: url("../add_img/history/bg_b.jpg");
  background-repeat: repeat;
}
#timeline_wrap .timeline_list:last-child {
  background-image: url("../add_img/history/bg_b_long.jpg");
  background-repeat: repeat-x;
}
#timeline_wrap .timeline_box {
  width: 90%;
  margin: 0 auto;
}
#timeline_wrap .timeline-date {
  color: #cfa21c;
  font-weight: 600;
}
#timeline_wrap .timeline-date span {
  display: block;
  text-align: center;
  letter-spacing: 0.1em;
}
#timeline_wrap figure {
  -webkit-align-items: flex-end;
  align-items: flex-end;
}
#timeline_wrap .current_box {
  margin: 0 auto;
  position: relative;
}
#timeline_wrap .current_box::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-image: url("../add_img/history/history_map.svg");
}
#timeline_wrap .current_box .tit {
  text-align: center;
  color: #fff;
  background-color: #87612e;
  letter-spacing: 0.1em;
  font-weight: 600;
  font-family: "游明朝体", "Yu Mincho", "游明朝", YuMincho, "HG明朝E", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  #timeline_wrap .timeline_list:first-child .icon_on .timeline-date {
    padding: 4.4444444444rem 3% 2.7777777778rem 0;
  }
  #timeline_wrap .timeline_list:first-child .icon_on .timeline-content {
    padding: 8.8888888889rem 0 2.7777777778rem;
  }
  #timeline_wrap .timeline_list:last-child .timeline-content {
    padding: 2.7777777778rem 0 4.4444444444rem;
  }
  #timeline_wrap .timeline_list:last-child .timeline-date {
    padding: 2.7777777778rem 3% 4.4444444444rem 0;
  }
  #timeline_wrap .timeline_box {
    max-width: 1200px;
  }
  #timeline_wrap .timeline_box.icon_on .timeline-content {
    padding-top: 7.2222222222rem;
  }
  #timeline_wrap .timeline-date, #timeline_wrap .timeline-content {
    padding: 2.7777777778rem 0;
  }
  #timeline_wrap .timeline-date {
    width: 21.5%;
    font-size: 1.7777777778rem;
    text-align: right;
    padding-right: 3%;
  }
  #timeline_wrap .timeline-date span {
    font-size: 1.3333333333rem;
    width: 44.9612403101%;
    margin: 0 auto 1.6666666667rem 0;
    padding: 0.6666666667rem 0;
  }
}
@media print and (-ms-high-contrast: none), screen and (min-width: 768px) and (-ms-high-contrast: none), print and (-ms-high-contrast: active), screen and (min-width: 768px) and (-ms-high-contrast: active) {
  #timeline_wrap .timeline-date {
    /* IE11にのみ適用したいスタイルシート */
  }
  #timeline_wrap .timeline-date span {
    padding-top: 1.3333333333rem;
  }
}
@media print, screen and (min-width: 768px) {
  #timeline_wrap .timeline-content {
    width: calc(100% - 21.5%);
    border-left: 1px #bcbcbc solid;
  }
  #timeline_wrap .timeline-content .txt {
    padding-left: 11.4649681529%;
    position: relative;
    line-height: 1.75;
  }
  #timeline_wrap .timeline-content .txt::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-color: #cfa21c;
    width: 0.5555555556rem;
    height: 0.5555555556rem;
    position: absolute;
    top: 0.2777777778rem;
    left: -0.2777777778rem;
    z-index: 2;
    border-radius: 100%;
  }
  #timeline_wrap .timeline-content .txt::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-color: #bcbcbc;
    width: 4.4444444444rem;
    height: 0.0555555556rem;
    position: absolute;
    top: 0.5555555556rem;
    left: 0;
    z-index: 1;
  }
  #timeline_wrap .timeline-content .img_box {
    padding-left: 11.4649681529%;
  }
  #timeline_wrap .timeline-content .img_box figure {
    padding-left: 0;
    width: 38.3693045564%;
  }
  #timeline_wrap .timeline-content .img_box figure:nth-child(even) {
    width: 48.4412470024%;
    margin-left: 1.9184652278%;
  }
  #timeline_wrap .timeline-content .img_box figure:nth-child(even) img {
    width: 79.2079207921%;
  }
  #timeline_wrap .timeline-content .img_box figure img {
    width: 100%;
  }
  #timeline_wrap .timeline-content figure {
    margin-top: 1.1111111111rem;
    padding-left: 11.4649681529%;
  }
  #timeline_wrap .timeline-content figure img {
    width: 38.3693045564%;
  }
  #timeline_wrap .timeline-content figure figcaption {
    margin-left: 1.9184652278%;
    font-size: 0.8888888889rem;
  }
  #timeline_wrap .timeline-content figure.img_size01 img {
    width: 25.1798561151%;
  }
  #timeline_wrap .timeline-content figure.img_size02 img {
    width: 20.2637889688%;
  }
  #timeline_wrap .timeline-content figure.img_size03 img {
    width: 30.6954436451%;
  }
  #timeline_wrap .timeline-content figure.img_size04 {
    width: 11.5107913669%;
  }
  #timeline_wrap .timeline-content figure.img_size04 img {
    width: 100%;
  }
  #timeline_wrap .timeline-content figure.img_size05 {
    width: 45.8033573141%;
    margin-left: 4.7961630695% !important;
  }
  #timeline_wrap .timeline-content figure.img_size05 img {
    width: 37.4345549738% !important;
    height: auto;
  }
  #timeline_wrap .timeline-content figure.img_size05 figcaption {
    line-height: 1.75;
  }
  #timeline_wrap .timeline-content figure.img_size06 img {
    width: 27.3381294964%;
  }
  #timeline_wrap .current_box {
    max-width: 1200px;
    height: 46.3333333333rem;
    padding: 2.7777777778rem 0 6.1111111111rem;
  }
  #timeline_wrap .current_box::before {
    width: 55.5555555556rem;
    height: 39.6666666667rem;
    position: absolute;
    left: 50%;
    top: 0;
    z-index: 0;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }
  #timeline_wrap .current_box::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-color: #bcbcbc;
    width: 1px;
    height: 2.7777777778rem;
    position: absolute;
    top: 0;
    left: 21.5%;
    z-index: 0;
  }
  #timeline_wrap .current_box .tit {
    width: 35.1666666667%;
    margin: 0 auto 0 4.8333333333%;
    padding: 0.7777777778rem 0;
    font-size: 2rem;
  }
}
@media print and (-ms-high-contrast: none), screen and (min-width: 768px) and (-ms-high-contrast: none), print and (-ms-high-contrast: active), screen and (min-width: 768px) and (-ms-high-contrast: active) {
  #timeline_wrap .current_box {
    /* IE11にのみ適用したいスタイルシート */
  }
  #timeline_wrap .current_box .tit {
    padding-top: 1.5555555556rem;
  }
}

@media only screen and (max-width: 767px) {
  #timeline_wrap .timeline_list:first-child {
    padding-top: 10.4302477184vw;
  }
  #timeline_wrap .timeline_list:first-child .timeline_box {
    padding-top: 0;
  }
  #timeline_wrap .timeline_box {
    width: 92.0469361147vw;
    margin: 0 auto;
    border-left: 1px #bcbcbc solid;
    padding: 9.9087353325vw 0 8.4745762712vw;
  }
  #timeline_wrap .timeline_box.icon_on .timeline-date::before {
    position: absolute;
    top: 18.2529335072vw;
    left: -0.6518904824vw;
    z-index: 2;
  }
  #timeline_wrap .timeline_box.icon_on .timeline-date::after {
    position: absolute;
    top: 18.9048239896vw;
    left: 0;
    z-index: 1;
  }
  #timeline_wrap .timeline-date {
    font-size: 1.25rem;
    padding-left: 14.0808344198vw;
    position: relative;
  }
  #timeline_wrap .timeline-date::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-color: #cfa21c;
    width: 1.3037809648vw;
    height: 1.3037809648vw;
    position: absolute;
    top: 0.6518904824vw;
    left: -0.6518904824vw;
    z-index: 2;
    border-radius: 100%;
  }
  #timeline_wrap .timeline-date::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-color: #bcbcbc;
    width: 10.6910039113vw;
    height: 0.260756193vw;
    position: absolute;
    top: 1.3037809648vw;
    left: 0;
    z-index: 1;
  }
  #timeline_wrap .timeline-date span {
    width: 18.2529335072vw;
    font-size: 0.875rem;
    padding: 2.6075619296vw 0;
    margin: 0 auto 7.8226857888vw -9.9087353325vw;
  }
  #timeline_wrap .timeline-content {
    margin-top: 5.2151238592vw;
    padding-left: 3.9113428944vw;
  }
  #timeline_wrap .timeline-content .txt {
    font-size: 1rem;
    line-height: 1.5;
  }
  #timeline_wrap .timeline-content figure {
    margin: 5.2151238592vw auto 0 0;
  }
  #timeline_wrap .timeline-content figure img {
    width: 41.7209908735vw;
  }
  #timeline_wrap .timeline-content figure figcaption {
    margin-left: 3.3898305085vw;
    font-size: 0.8125rem;
  }
  #timeline_wrap .timeline-content figure.img_size01 img {
    width: 27.3794002608vw;
  }
  #timeline_wrap .timeline-content figure.img_size02 img {
    width: 22.0338983051vw;
  }
  #timeline_wrap .timeline-content figure.img_size03 img {
    width: 33.3767926988vw;
  }
  #timeline_wrap .timeline-content figure.img_size04 {
    width: 12.5162972621vw;
    margin-right: 0;
  }
  #timeline_wrap .timeline-content figure.img_size04 img {
    width: 100%;
  }
  #timeline_wrap .timeline-content figure.img_size05 {
    margin-left: 5.2151238592vw !important;
    margin-right: 0;
  }
  #timeline_wrap .timeline-content figure.img_size05 img {
    width: 18.6440677966vw !important;
    height: auto;
  }
  #timeline_wrap .timeline-content figure.img_size05 figcaption {
    line-height: 1.4;
  }
  #timeline_wrap .timeline-content figure.img_size06 img {
    width: 29.7262059974vw;
  }
  #timeline_wrap .current_box {
    height: 110.2998696219vw;
  }
  #timeline_wrap .current_box::before {
    width: 92.1773142112vw;
    height: 73.2724902216vw;
    position: absolute;
    left: 50%;
    top: 20.0782268579vw;
    z-index: 0;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }
  #timeline_wrap .current_box .tit {
    font-size: 1.5rem;
    padding: 3.1290743155vw 0;
  }
}
