/*=============================================================
 #home HOME
=============================================================*/
@media (min-width: 600px) { #gHeader { -webkit-transition: background-color 1s cubic-bezier(0.19, 1, 0.22, 1); transition: background-color 1s cubic-bezier(0.19, 1, 0.22, 1); }
  #gHeader.is_white { background: #fff; } }

/* #about
================================================ */
#about { margin-bottom: 43px; }

#about .inner { padding: 0 15px; }

#about .areaNav { position: relative; margin: 32px 0 60px; }

#about .areaNav:before { position: absolute; content: ''; top: 236px; left: -204px; width: calc(100% - 63px); height: 1009px; -webkit-transform: skew(-28deg); -ms-transform: skew(-28deg); transform: skew(-28deg); background: -webkit-gradient(linear, left top, left bottom, from(#f2f1f0), color-stop(50%, #f2f1f0), color-stop(50%, transparent), to(transparent)); background: linear-gradient(to bottom, #f2f1f0 0%, #f2f1f0 50%, transparent 50%, transparent 100%); background-position: 0 100%; background-size: 0 100%; -webkit-transition: background-position 5s cubic-bezier(0.19, 1, 0.22, 1); transition: background-position 5s cubic-bezier(0.19, 1, 0.22, 1); -webkit-transition-delay: 2s; transition-delay: 2s; }

#about .areaNav .list { position: relative; width: 100%; padding-left: 30px; box-sizing: border-box; }

@media (max-width: 599px) { #about .areaNav .list { height: 236px; } }

#about .areaNav .list:before { position: absolute; content: ""; display: block; top: 0; left: -2px; width: 3px; height: 0; -webkit-transition: height 0.3s cubic-bezier(0.19, 1, 0.22, 1); transition: height 0.3s cubic-bezier(0.19, 1, 0.22, 1); -webkit-transition-delay: .5s; transition-delay: .5s; background: #292828; }

#about .areaNav .list .item { overflow: hidden; float: left; position: relative; width: 29.5%; height: 117px; -webkit-transform: translateX(-74px) skewX(-28deg); -ms-transform: translateX(-74px) skewX(-28deg); transform: translateX(-74px) skewX(-28deg); -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1); opacity: 0; margin-right: 2px; }

@media (min-width: 320px) and (max-width: 374px) { #about .areaNav .list .item { width: 23.4vw; } }

#about .areaNav .list .item .itemIn { position: relative; display: block; margin: 0 -32px; height: 117px; text-decoration: none; color: #fff; background-position: 50% 50%; background-repeat: no-repeat; background-size: 100%; }

#about .areaNav .list .item .itemIn:before { position: absolute; content: ''; bottom: 0; left: 0; width: 100%; height: 100%; background: -webkit-gradient(linear, left bottom, left top, from(rgba(41, 40, 40, 0.85)), color-stop(30%, transparent), to(transparent)); background: linear-gradient(to top, rgba(41, 40, 40, 0.85) 0%, transparent 30%, transparent 100%); }

#about .areaNav .list .item .itemIn .itemImg { position: absolute; display: block; left: 0; top: 0; width: 100%; height: 100%; background-size: cover; -webkit-transform: skew(28deg); -ms-transform: skew(28deg); transform: skew(28deg); }

#about .areaNav .list .item .itemIn .txtWrap { position: relative; display: table; width: 100%; height: 100%; padding: 0 26px; box-sizing: border-box; }

#about .areaNav .list .item .itemIn .txt { display: table-cell; padding: 0 30px 6px 0; vertical-align: bottom; -webkit-transform: skewX(28deg); -ms-transform: skewX(28deg); transform: skewX(28deg); font-size: 1.2rem; letter-spacing: .04em; line-height: 1.2; }

@media all and (max-width: 320px) { #about .areaNav .list .item .itemIn .txt { font-size: 1rem; padding-right: 29px; } }

#about .areaNav .list .item .itemIn .txt img { position: relative; top: 5px; display: inline-block; width: 10px; margin-left: 5px; }

#about .areaNav .list .item01 { z-index: 1; -webkit-transition-delay: 1.4s; transition-delay: 1.4s; }

#about .areaNav .list .item01 a .itemImg { background-image: url(../../home/image/bg_about_nav01.jpg); }

#about .areaNav .list .item02 { -webkit-transition-delay: 1.5s; transition-delay: 1.5s; }

#about .areaNav .list .item02 a .itemImg { background-image: url(../../home/image/bg_about_nav02.jpg); }

#about .areaNav .list .item03 { -webkit-transition-delay: 1.6s; transition-delay: 1.6s; }

#about .areaNav .list .item03 a .itemImg { background-image: url(../../home/image/bg_about_nav03.jpg); }

#about .areaNav .list .item04 { -webkit-transition-delay: 1.4s; transition-delay: 1.4s; }

#about .areaNav .list .item04 a .itemImg { background-image: url(../../home/image/bg_about_nav04.jpg); }

#about .areaNav .list .item05 { -webkit-transition-delay: 1.5s; transition-delay: 1.5s; }

#about .areaNav .list .item05 a .itemImg { background-image: url(../../home/image/bg_about_nav05.jpg); }

#about .areaNav .list .item06 { -webkit-transition-delay: 1.6s; transition-delay: 1.6s; }

#about .areaNav .list .item06 a .itemImg { background-image: url(../../home/image/bg_about_nav06.jpg); }

#about .areaNav .list .item:nth-child(n+4) { margin-top: 2px; -webkit-transform: translateX(-74px) skewX(28deg); -ms-transform: translateX(-74px) skewX(28deg); transform: translateX(-74px) skewX(28deg); }

#about .areaNav .list .item:nth-child(n+4) .itemIn .itemImg { -webkit-transform: skewX(-28deg); -ms-transform: skewX(-28deg); transform: skewX(-28deg); }

#about .areaNav .list .item:nth-child(n+4) .itemIn .txtWrap { padding: 0 8px; }

#about .areaNav .list .item:nth-child(n+4) .itemIn .txt { text-align: right; padding: 0 8px 6px 51px; -webkit-transform: skewX(-28deg); -ms-transform: skewX(-28deg); transform: skewX(-28deg); }

#about .areaNav .btn { position: absolute; width: 80px; height: 30px; box-sizing: border-box; right: 0; bottom: -30px; background: #e42c2c; font-size: 1.2rem; font-weight: 500; letter-spacing: .14em; box-shadow: 0px 0px 12px 3px rgba(0, 0, 0, 0.08); }

#about .areaNav .btnIn { position: relative; display: block; color: #fff; text-decoration: none; padding-top: 4px; padding-left: 8px; }

#about .areaNav .btnIn:before { position: absolute; display: block; content: ""; top: 50%; right: 10px; width: 4px; height: 7px; margin-top: 2px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../../common/image/ico_arw01.png) no-repeat 0 0; background-size: cover; }

#about .areaNav.is_active:before { background-position: 0 0; background-size: 100% 200%; }

#about .areaNav.is_active .list:before { height: 100%; }

#about .areaNav.is_active .list .item { -webkit-transform: translateX(0) skew(-28deg); -ms-transform: translateX(0) skew(-28deg); transform: translateX(0) skew(-28deg); opacity: 1; }

#about .areaNav.is_active .list .item:nth-child(n+4) { -webkit-transform: translateX(0) skew(28deg); -ms-transform: translateX(0) skew(28deg); transform: translateX(0) skew(28deg); }

#about .areaTxt { margin-top: 30px; opacity: 0; -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); }

#about .areaTxt .head { margin-bottom: 16px; font-weight: bold; text-align: center; }

#about .areaTxt .head .en { margin-bottom: 7px; color: #e42c2c; font-size: 1.7rem; letter-spacing: .12em; line-height: 1.2; }

#about .areaTxt .head .tit { font-size: 2.5rem; letter-spacing: .11em; line-height: 1.2; }

#about .areaTxt .detail .txt { font-size: 1.4rem; line-height: 1.8; }

#about .areaTxt.is_active { -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); opacity: 1; }

@media (min-width: 600px) { #about { width: 1160px; margin: 0 auto 130px; }
  #about .inner { padding: 0; }
  #about .areaNav { float: right; width: 800px; margin: -70px 0 0 0; }
  #about .areaNav:before { top: 619px; left: -287px; width: 631px; height: 2225px; -webkit-transform: skew(-22deg); -ms-transform: skew(-22deg); transform: skew(-22deg); }
  #about .areaNav .list { padding-left: 82px; }
  #about .areaNav .list:before { width: 5px; }
  #about .areaNav .list .item { width: 206px; height: 307px; margin-right: 6px; }
  #about .areaNav .list .item .itemIn { margin: 0 -62px; height: 307px; }
  #about .areaNav .list .item .itemIn:hover .txtWrap:before { -webkit-transform: translate(0, 0); -ms-transform: translate(0, 0); transform: translate(0, 0); }
  #about .areaNav .list .item .itemIn .itemImg { left: -10%; width: 120%; -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1); }
  #about .areaNav .list .item .itemIn .txtWrap { letter-spacing: 0; }
  #about .areaNav .list .item .itemIn .txtWrap:before { position: absolute; display: block; content: ""; top: 0; left: 0; width: 100%; height: 100%; -webkit-transform: translate(-120%, 0) skew(28deg); -ms-transform: translate(-120%, 0) skew(28deg); transform: translate(-120%, 0) skew(28deg); background: rgba(228, 44, 44, 0.4); -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1); }
  #about .areaNav .list .item .itemIn .txt { padding: 0 123px 20px 0; font-size: 1.7rem; font-weight: 500; line-height: 1.23529; letter-spacing: .07em; text-indent: 0; text-align: right; }
  #about .areaNav .list .item .itemIn .txt img { top: 8px; width: 15px; margin-left: 10px; }
  #about .areaNav .list .item:nth-child(n+4) { margin-top: 4px; }
  #about .areaNav .list .item:nth-child(n+4) .txtWrap:before { -webkit-transform: translate(-120%, 0); -ms-transform: translate(-120%, 0); transform: translate(-120%, 0); }
  #about .areaNav .list .item:nth-child(n+4) .itemIn .txt { padding: 0 12px 20px 125px; }
  #about .areaNav .btn { width: 110px; height: 35px; bottom: -25px; overflow: hidden; -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); } }

@media all and (min-width: 600px) and (-ms-high-contrast: none) { #about .areaNav .btn { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; } }

@media (min-width: 600px) { #about .areaNav .btn a { position: relative; z-index: 2; padding-left: 16px; padding-top: 7px; }
  #about .areaNav .btn a:before { margin-top: 3px; }
  #about .areaNav .btn:after { position: absolute; content: ''; width: 110px; height: 35px; top: 0; left: -110px; background: #920000; -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); z-index: 1; } }

@media all and (min-width: 600px) and (-ms-high-contrast: none) { #about .areaNav .btn:after { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; } }

@media (min-width: 600px) { #about .areaNav .btn:hover:after { left: 0; }
  #about .areaTxt { float: left; width: 315px; margin: 0; padding: 0; }
  #about .areaTxt .head { text-align: left; }
  #about .areaTxt .head .en { margin-bottom: 10px; font-size: 2.2rem; }
  #about .areaTxt .head .tit { font-size: 3.4rem; line-height: 1.52941; }
  #about .areaTxt .detail .txt { font-size: 1.5rem; line-height: 1.86667; } }

/* #data
================================================ */
#data .inner { margin-top: -50px; padding: 0 15px; }

#data .head { padding-bottom: 15px; }

#data .head a { position: relative; display: block; height: 230px; border: 4px solid #9d9d9d; box-sizing: border-box; box-shadow: 0px 0px 14px 6px rgba(0, 0, 0, 0.08); text-decoration: none; }

#data .head a .bg { width: 100%; height: 100%; }

#data .head a .bgIn { width: 100%; height: 100%; background: #fff url(../../home/image/bg_data_map01_sp.png) no-repeat 50% 0; background-size: 100%; }

#data .head .map { padding: 68px 0 0; }

#data .head .tit { position: absolute; display: block; top: 50%; left: 0; width: 100%; text-align: center; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

#data .head .tit span { display: block; font-weight: bold; line-height: 1.2; }

#data .head .tit .txt01 { font-size: 2.9rem; letter-spacing: .12em; color: #181818; }

#data .head .tit .txt02 { display: block; line-height: 1; margin-top: 5px; font-size: 4.3rem; letter-spacing: .14em; }

#data .head .tit .txt02 svg { display: block; width: 130px; height: 25px; margin: auto; }

#data .head .btn { position: absolute; width: 195px; height: 50px; padding-top: 14px; box-sizing: border-box; left: 50%; bottom: -19px; margin-left: -97px; background: #e42c2c; color: #fff; font-size: 1.4rem; font-weight: 500; text-align: center; letter-spacing: .14em; box-shadow: 0px 0px 12px 3px rgba(0, 0, 0, 0.08); }

#data .head .btnIn { position: relative; display: block; }

#data .head .btnIn:before { position: absolute; display: block; content: ""; top: 50%; right: 10px; width: 4px; height: 7px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../../common/image/ico_arw01.png) no-repeat 0 0; background-size: cover; }

#data .content .areaTxt { position: relative; margin-bottom: 25px; padding: 33px 0 0 48px; }

#data .content .areaTxt:before { position: absolute; content: ''; top: -50px; left: 20px; width: 3px; height: 0; box-sizing: border-box; background: #181818; -webkit-transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1); }

#data .content .areaTxt .tit { margin-bottom: 10px; font-size: 2.5rem; font-weight: bold; letter-spacing: .11em; line-height: 1.5; }

#data .content .areaTxt .txt { font-size: 1.4rem; line-height: 1.75; }

#data .content .areaTxt .tit, #data .content .areaTxt .txt { opacity: 0; -webkit-transform: translateY(30px); -ms-transform: translateY(30px); transform: translateY(30px); -webkit-transition: all 0.5s 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.5s 0.7s cubic-bezier(0.19, 1, 0.22, 1); }

#data .content .areaTxt.is_active:before { height: calc(100% + 83px); }

#data .content .areaTxt.is_active .tit, #data .content .areaTxt.is_active .txt { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

#data .content .areaBnr { margin-bottom: 41px; }

#data .content .areaBnr .list .item { position: relative; width: 55%; opacity: 0; }

#data .content .areaBnr .list .item:before { position: absolute; display: block; content: ""; z-index: -1; right: 0; top: 0; width: calc(100% - 10px); height: 100%; background: url(../image/banner_data_stripe01_sp.png) no-repeat 0 0; background-size: cover; }

#data .content .areaBnr .list .itemIn { position: relative; overflow: hidden; z-index: -1; }

#data .content .areaBnr .list .itemIn .img { position: relative; z-index: 0; display: block; }

#data .content .areaBnr .list .item01 { float: left; margin-top: 48px; margin-left: -8px; margin-right: -25px; -webkit-transform: translateY(-30px); -ms-transform: translateY(-30px); transform: translateY(-30px); }

#data .content .areaBnr .list .item02 { float: right; margin-left: -25px; -webkit-transform: translateY(30px); -ms-transform: translateY(30px); transform: translateY(30px); }

#data .content .areaBnr .list .item a { position: relative; display: block; padding-right: 10px; padding-top: 10px; }

#data .content .areaBnr .list .item a img { display: block; }

#data .content .areaBnr .list .item a .btn { position: absolute; width: 80px; height: 30px; padding-top: 5px; box-sizing: border-box; right: 5px; bottom: -6px; padding-left: 8px; background: #e42c2c; color: #fff; font-size: 1.2rem; font-weight: 500; letter-spacing: .14em; box-shadow: 0px 0px 12px 3px rgba(0, 0, 0, 0.08); }

#data .content .areaBnr .list .item a .btnIn { position: relative; display: block; }

#data .content .areaBnr .list .item a .btnIn:before { position: absolute; display: block; content: ""; top: 50%; right: 10px; width: 4px; height: 7px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../../common/image/ico_arw01.png) no-repeat 0 0; background-size: cover; }

#data .content .areaBnr .list .txt { position: absolute; display: block; top: 20%; left: 20px; width: 46.5%; }

#data .content .areaBnr.is_active .list .item01, #data .content .areaBnr.is_active .list .item02 { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); -webkit-transition: all 0.8s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.8s cubic-bezier(0.19, 1, 0.22, 1); }

@media (min-width: 600px) { #data { width: 1160px; margin: 0 auto 170px; }
  #data .inner { margin-top: -65px; padding: 0; }
  #data .head { padding-bottom: 20px; }
  #data .head a { height: 400px; }
  #data .head a .bg { overflow: hidden; }
  #data .head a .bgIn { background-image: url(../../home/image/bg_data_map01_pc.png); background-position: center bottom; -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); } }

@media all and (min-width: 600px) and (-ms-high-contrast: none) { #data .head a .bgIn { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; } }

@media (min-width: 600px) { #data .head a:hover .bgIn { -webkit-transform: scale(1.05, 1.05); -ms-transform: scale(1.05, 1.05); transform: scale(1.05, 1.05); }
  #data .head a:hover .btn:before { left: 0; }
  #data .head .map { padding: 160px 0 0; }
  #data .head .tit .txt01 { font-size: 4rem; }
  #data .head .tit .txt02 { font-size: 5.8rem; }
  #data .head .tit .txt02 svg { width: 260px; height: 59px; }
  #data .head .btn { overflow: hidden; bottom: -28px; width: 270px; height: 65px; margin-left: -135px; padding-top: 19px; font-size: 1.5rem; -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); } }

@media all and (min-width: 600px) and (-ms-high-contrast: none) { #data .head .btn { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; } }

@media (min-width: 600px) { #data .head .btn span { position: relative; z-index: 2; }
  #data .head .btn:before { position: absolute; content: ''; width: 270px; height: 65px; top: 0; left: -270px; background: #920000; -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); z-index: 1; } }

@media all and (min-width: 600px) and (-ms-high-contrast: none) { #data .head .btn:before { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; } }

@media (min-width: 600px) { #data .content .areaTxt { float: right; width: 410px; margin: 0; padding: 186px 0 58px 66px; box-sizing: border-box; }
  #data .content .areaTxt:before { width: 5px; left: 0; top: -65px; }
  #data .content .areaTxt .tit { margin-bottom: 17px; font-size: 3.4rem; line-height: 1.52941; }
  #data .content .areaTxt .txt { font-size: 1.5rem; line-height: 1.86667; }
  #data .content .areaBnr { float: left; width: 703px; padding: 127px 0 0 48px; box-sizing: border-box; }
  #data .content .areaBnr .list .item01 { margin: 90px -46px 0 0; }
  #data .content .areaBnr .list .item02 { margin-left: -46px; }
  #data .content .areaBnr .list .item:before { width: calc(100% - 20px); height: calc(100% - 20px); background-image: url(../image/banner_data_stripe01_pc.png); }
  #data .content .areaBnr .list .itemIn .img { -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); } }

@media all and (min-width: 600px) and (-ms-high-contrast: none) { #data .content .areaBnr .list .itemIn .img { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; } }

@media (min-width: 600px) { #data .content .areaBnr .list .item a { padding-top: 20px; padding-right: 20px; }
  #data .content .areaBnr .list .item a .btn { overflow: hidden; right: 10px; bottom: -10px; width: 110px; height: 35px; padding-top: 5px; padding-left: 16px; font-size: 1.3rem; -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); } }

@media all and (min-width: 600px) and (-ms-high-contrast: none) { #data .content .areaBnr .list .item a .btn { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; } }

@media (min-width: 600px) { #data .content .areaBnr .list .item a .btn span { position: relative; z-index: 2; }
  #data .content .areaBnr .list .item a .btn:before { position: absolute; content: ''; width: 110px; height: 35px; top: 0; left: -110px; background: #920000; -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); z-index: 1; } }

@media all and (min-width: 600px) and (-ms-high-contrast: none) { #data .content .areaBnr .list .item a .btn:before { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; } }

@media (min-width: 600px) { #data .content .areaBnr .list .item a:hover .itemIn .img { -webkit-transform: scale(1.1, 1.1); -ms-transform: scale(1.1, 1.1); transform: scale(1.1, 1.1); }
  #data .content .areaBnr .list .item a:hover .btn:before { left: 0; }
  #data .content .areaBnr .list .item .txt { top: 100px; left: 45px; width: 135px; }
  #data .content .areaBnr.is_active .list .item { -webkit-transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); -webkit-transition-delay: 1.2s; transition-delay: 1.2s; } }

/* #project
================================================ */
#project { position: relative; margin-bottom: 42px; }

#project a, #project img { display: block; text-decoration: none; }

#project .bnr { position: relative; height: 230px; box-sizing: border-box; }

#project .bnr .bg { width: 100%; height: 100%; }

#project .bnr .bgIn { width: 100%; height: 100%; background: url(../../home/image/bg_project01_sp.jpg) no-repeat 50% 50%; background-size: cover; }

#project .bnr .head { position: absolute; display: block; top: 50%; width: 100%; box-sizing: border-box; text-align: center; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

#project .bnr .head .en { font-size: 3.2rem; color: #fff; text-shadow: 0 0 10px #292828; }

#project .bnr .leadTxt { color: #fff; font-size: 1.6rem; font-weight: bold; text-align: center; letter-spacing: .12em; line-height: 1.2; }

#project .btn { width: 195px; height: 50px; margin: 0 auto; padding-top: 14px; box-sizing: border-box; box-shadow: 0px 0px 12px 3px rgba(0, 0, 0, 0.1); background: #e42c2c; color: #fff; font-size: 1.4rem; font-weight: 500; letter-spacing: .14em; text-align: center; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

#project .btnIn { position: relative; display: block; }

#project .btnIn:before { position: absolute; display: block; content: ""; top: 50%; right: 10px; width: 4px; height: 7px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: url(../../common/image/ico_arw01.png) no-repeat 0 0; background-size: cover; }

@media (min-width: 600px) { #project { width: 1160px; margin: 0 auto 116px; }
  #project .bnr { height: 460px; padding: 0; }
  #project .bnr .bg { overflow: hidden; }
  #project .bnr .bgIn { background-image: url(../../home/image/bg_project01_pc.jpg); background-size: cover; -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); } }

@media all and (min-width: 600px) and (-ms-high-contrast: none) { #project .bnr .bgIn { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; } }

@media (min-width: 600px) { #project .bnr .head .en { display: block; font-size: 6rem; text-align: center; letter-spacing: 0.12em; }
  #project .bnr .leadTxt { font-size: 2.2rem; }
  #project .btn { overflow: hidden; position: relative; width: 270px; height: 65px; padding-top: 20px; font-size: 1.5rem; }
  #project .btn span { position: relative; }
  #project .btn:before { position: absolute; content: ''; width: 270px; height: 65px; background: #920000; top: 0; left: -270px; -webkit-transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.7s cubic-bezier(0.19, 1, 0.22, 1); } }

@media all and (min-width: 600px) and (-ms-high-contrast: none) { #project .btn:before { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; } }

@media (min-width: 600px) { #project a:hover .bgIn { -webkit-transform: scale(1.05, 1.05); -ms-transform: scale(1.05, 1.05); transform: scale(1.05, 1.05); }
  #project a:hover .btn:before { left: 0; } }

/* #contents
================================================ */
#contents { position: relative; }

#contents .leadTit { margin-bottom: 8px; font-size: 3rem; font-weight: 900; text-align: center; line-height: 1.4; letter-spacing: .14em; }

#contents .head { padding: 25px 0 45px; background: #e42c2c; }

#contents .head .nav .item { float: left; margin: 0 5px 5px 0; padding: 2px 13px 4px; border: 1px solid #fff; border-radius: 3px; background: #fff; font-size: 1.1rem; font-weight: 500; color: #e42c2c; letter-spacing: .11em; line-height: 1.4; }

#contents .head .nav .item.is_current { background: none; color: #fff; }

#contents .content { min-height: 200px; padding: 0 10px 30px; background: url(../../common/image/bg_block01.jpg) repeat-y 50% 0; background-size: auto 528px; }

#contents .listCards { min-height: 50px; margin-bottom: -25px; padding: 0 5px; -webkit-transform: translateY(-25px); -ms-transform: translateY(-25px); transform: translateY(-25px); }

@media (min-width: 600px) { #contents .leadTit { margin-bottom: 17px; font-size: 4rem; }
  #contents .head { padding: 40px 0 60px; }
  #contents .head .nav { width: 1160px; margin: auto; }
  #contents .head .nav .item { margin: 0 10px 10px 0; padding: 4px 20px 5px; border-radius: 4px; font-size: 1.4rem; cursor: pointer; }
  #contents .content { min-height: 366px; padding-bottom: 80px; box-sizing: border-box; background-size: auto auto; }
  #contents .listCards { padding: 0; -webkit-transform: translateY(-31px); -ms-transform: translateY(-31px); transform: translateY(-31px); }
  #contents .listCardsWrap { width: 1160px; margin: auto; } }
