
/**
 * common
 */

body {
    min-width: 0 !important;
}  

#contents {
    width: 0;
}

#contents img {
    max-width: 100%;
}

.sp {
    display: block;
}

.sp_inline {
    display: inline;
}

.pc,
.pc_inline {
    display: none;
}

/**
 * index
 */

.fj-head,
.fj-head .fj-l-inner,
.fj-l-inner,
.fj-foot {
    min-width: auto;
}
#contents.index #news,
#contents.index #our_business .slide_wrap,
#contents.index #our_business .slide_parent,
#contents.index #ir .data,
#contents.index #csr .flex {
    width: 100%;
}

#contents.index {
    font-size: 1.5rem;
}


#contents.index #mv_buttons a{
width: auto;
}

#contents.index #news {
    margin: 90px auto;
    width: 90%;
}

#contents.index #news ul a .category {
    font-size: 1.4rem;
    font-weight: bold;
    padding: 10px 28px;
}

#contents.index #news ul a .date {
    color: #049;
    font-size: 1.4rem;
}

#contents.index #news ul a .text {
    display: block;
    color: #000;
    margin: 1rem 0 2rem;
}

#contents.index #news .flex {
    display: block;
    line-height: 2;
}

#contents.index #news #news_sub {
    margin-top: 80px;
}

#contents.index #news #news_sub .rss,
#contents.index #news #news_sub .more{
    font-size: 1.4rem;
}

#contents.index #news #news_sub .rss img {
    width: 98px;
}

#contents.index #news #news_sub .rss div {
    display: inline-block;
}

#contents.index #news #news_sub .rss a {
    margin: 0;
}

#contents.index #news #news_sub .rss a:nth-child(1) {
    margin-right: 1rem;
}

#contents.index #news #news_sub .rss a:nth-child(2) {
    margin-left: 1rem;
}

#contents.index #news #news_sub .more {
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 8px;
}

#contents.index #news #news_sub .more a {
    padding-right: 60px;
}

#contents.index #news #news_sub .more a:last-child {
    margin-right: 0;
}

#contents.index #banner_area {
    margin: 64px auto 90px;
    width: 90%;
}

#story {
    width: 90%;
    margin: 70px auto 0;
}

#contents.index #our_business .visual {
    background: url(/images/renewal/index/sp/bg_01.png) center top no-repeat;
    height: auto;
}

#contents.index #our_business .visual h2 {
    padding-top: 64px;
}

#contents.index #our_business .visual img {
    max-width: 80%;
    padding-bottom: 128px;
}

#contents.index #our_business .tabs {
    width: 95%;
    align-items: stretch;
}

#contents.index #our_business .tabs div {
    font-size: 1.2rem;
    font-weight: normal;
    text-align: center;
    width: 30%;
    height: auto;
    padding: 8px 0;
}

#contents.index #our_business .tab {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

#contents.index #our_business .tab h3 {
    font-size: 1.6rem;
}

#contents.index #our_business #slide1 img,
#contents.index #our_business #slide3 img {
    width: 80px;
}

#contents.index #our_business .slide_parent .arrow_box {
    height: 48px;
}

#contents.index #our_business .slide_parent a:nth-child(odd) .box {
    border-left: none;
}

#contents.index #our_products h3 {
    padding: 32px 0;
    margin: 0;
}

#contents.index #our_products .visual {
    background: url(/images/renewal/index/sp/bg_02.png) center top no-repeat;
    height: auto;
}

#contents.index #our_products .visual .inner {
    padding: 32px 0;
}

#contents.index #our_products .visual h2 {
    margin-bottom: 0;
    padding: 64px 0;
}

#contents.index #our_products .visual h2 img {
    max-width: 80%;
}

#contents.index #our_products .visual h3 img {
    max-width: 70%;
}

#contents.index #our_products #search {
    width: 90%;
}
/**
 * common
 */

#contents {
    width: 100%;
    min-width:auto;
    margin-top:68px;
}

#contents img {
    max-width: 100%;
}

.sp {
    display: block;
}

.sp_inline {
    display: inline;
}

.pc,
.pc_inline {
    display: none;
}

/**
 * index
 */

.fj-head,
.fj-head .fj-l-inner,
.fj-l-inner,
.fj-foot {
    min-width: auto;
}

#contents.index #news,
#contents.index #our_business .slide_wrap,
#contents.index #our_business .slide_parent,
#contents.index #ir .data,
#contents.index #csr .flex {
    width: 100%;
}

#contents.index {
    font-size: 1.5rem;
}

#contents.index #news {
    margin: 90px auto;
    width: 90%;
}

#contents.index #news ul a .category {
    font-size: 1.4rem;
    font-weight: bold;
    padding: 10px 28px;
}

#contents.index #news ul a .date {
    color: #049;
    font-size: 1.4rem;
}

#contents.index #news ul a .text {
    display: block;
    color: #000;
    margin: 1rem 0 2rem;
}

#contents.index #news .flex {
    display: block;
    line-height: 2;
}

#contents.index #news #news_sub {
    margin-top: 80px;
}

#contents.index #news #news_sub .rss,
#contents.index #news #news_sub .more{
    font-size: 1.4rem;
}

#contents.index #news #news_sub .rss img {
    width: 98px;
}

#contents.index #news #news_sub .rss div {
    display: inline-block;
}

#contents.index #news #news_sub .rss a {
    margin: 0;
}

#contents.index #news #news_sub .rss a:nth-child(1) {
    margin-right: 1rem;
}

#contents.index #news #news_sub .rss a:nth-child(2) {
    margin-left: 1rem;
}

#contents.index #news #news_sub .more {
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 8px;
}

#contents.index #news #news_sub .more a {
    padding-right: 60px;
}

#contents.index #news #news_sub .more a:last-child {
    margin-right: 0;
}

#contents.index #banner_area {
    margin: 64px auto 90px;
    width: 90%;
}

#contents.index #our_business .visual {
    background: url(/images/renewal/index/sp/bg_01.png) center top no-repeat;
    height: auto;
}

#contents.index #our_business .visual h2 {
    padding-top: 64px;
}

#contents.index #our_business .visual img {
    max-width: 80%;
    padding-bottom: 0;
}

#contents.index #our_business .button_area.gray {
    padding-bottom: 100px;
}

#contents.index #our_business .tabs {
    width: 95%;
    align-items: stretch;
}

#contents.index #our_business .tabs div {
    font-size: 1.2rem;
    font-weight: normal;
    text-align: center;
    width: 30%;
    height: auto;
    padding: 8px 0;
}

#contents.index #our_business .tab {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

#contents.index #our_business .tab h3 {
    font-size: 1.6rem;
}

#contents.index #our_business #slide1 img,
#contents.index #our_business #slide3 img {
    width: 80px;
}

#contents.index #our_business .slide_parent .arrow_box {
    height: 48px;
}

#contents.index #our_business .slide_parent a:nth-child(odd) .box {
    border-left: none;
}

#contents.index #our_products .visual {
    background: url(/images/renewal/index/sp/bg_02.png) center top no-repeat;
    height: auto;
}

#contents.index #our_products .visual .inner {
    padding: 32px 0;
}

#contents.index #our_products .visual h2 {
    margin-bottom: 0;
    padding: 64px 0;
}

#contents.index #our_products .visual h2 img {
    max-width: 80%;
}

#contents.index #our_products .visual h3 img {
    max-width: 70%;
}

#contents.index #our_products #search {
    width: 90%;
}

#contents.index #our_products #search .buttons {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#contents.index #our_products #search .buttons a {
    width: 49%;
    margin-bottom: 12px;
    padding: 8px 24px;
    text-align: left;
    line-height: 1.4;
}

#contents.index #our_products #search .words {
    text-align: center;
    margin-bottom: 0;
}

#contents.index #our_products #search .words span {
    display: block;
    margin-bottom: 4px;
}

#contents.index #our_products #search .words a {
    margin-left: 8px;
}

#contents.index #our_products .panels .left{
	width:auto;
}


#contents.index #our_products .panels .left .carousel {
    width: 100vw;
}

#contents.index #our_products .panels .right .carousel {
    width:100vw;
}


#contents.index #our_products .panels .right{
   width: auto;
}

#contents.index #our_products .panels .left a,
#contents.index #our_products .panels .right a{
    background: none;
}

#contents.index #our_products .panels .left a,
#contents.index #our_products .panels .right a,
#contents.index #our_products .panels .left a .overlay,
#contents.index #our_products .panels .right a .overlay {
    width: 100%;
    height: auto;
}

#contents.index #our_products .panels .left a .content,
#contents.index #our_products .panels .right a .content {
    display: none;
}

#contents.index #case_study .visual {
    background: url(/images/renewal/index/sp/bg_03.png) center top no-repeat;
}

#contents.index #case_study .visual h2 img {
    max-width: 80%;
}

#contents.index #case_study .clients {
    padding: 16px;
    -ms-flex-pack: distribute;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#contents.index #case_study .clients div {
    width: 38%;
    margin: 0 0 24px;
}

#contents.index #case_study .clients div p {
    font-size: 1.3rem;
}

#contents.index #case_study .clients div a {
    font-size: 1.4rem;
}

#contents.index #case_study .clients div .text {
    display: none;
}

#contents.index #ir .visual h2 {
    padding: 64px 0 0;
}

#contents.index #ir .visual h2 img {
    max-width: 80%;
}

#contents.index #ir .visual {
    height: auto;
    background: url(/images/renewal/index/sp/bg_04.png) center top no-repeat;
}

#contents.index #ir .visual .flex {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#contents.index #ir .data {
    padding-bottom: 64px;
}

#contents.index #ir .data .box {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 16px;
}

#contents.index #ir .data div {
    width: auto;
    margin: 0 auto;
    padding-top: 4px;
}

#contents.index #ir .data .box:nth-child(1) div {
    background: url(/images/renewal/index/icon_ir_01.png) left center no-repeat;
}

#contents.index #ir .data .box:nth-child(2) div {
    background: url(/images/renewal/index/icon_ir_02.png) left center no-repeat;
}

#contents.index #ir .data .box:nth-child(3) div {
    background: url(/images/renewal/index/icon_ir_03.png) left center no-repeat;
}

#contents.index #ir .data div .head {
    font-size: 1.2rem;
}

#contents.index #ir .data div .value {
    font-size: 4rem;
}

#contents.index #ir .data div .unit {
    font-size: 1rem;
}

#contents.index #ir .data div .note {
    font-size: .8rem;
}

#contents.index #csr .visual {
    width: 100%;
    height: auto;
    background: url(/images/renewal/index/sp/bg_05.png) center top no-repeat;
    background-size: cover;
    padding-bottom: 8px;
}

#contents.index #csr h2 {
    text-align: center;
}

#contents.index #csr h3 {
    font-size: 1.4rem;
}

#contents.index #csr .flex {
    display: block;
    height: auto;
}

#contents.index #csr .flex .inner {
    padding-bottom: 60px;
}

#contents.index #csr .flex > a,
#contents.index #csr .flex > div {
    width: 100%;
}

#contents.index #csr .flex div:nth-child(2) {
    padding-bottom: 24px;
}

#contents.index #csr .flex div:nth-child(1).arrow.right7:before {
    display: none;
}

#contents.index #csr .flex div:nth-child(1).arrow.right7:after {
    display: none;
}

#contents.index #csr .flex div:nth-child(2).arrow.right7:before {
    display: none;
}

#contents.index #csr .flex div:nth-child(2).arrow.right7:after {
    display: none;
}

#contents.index #csr .flex > div:first-child {
    border-right: none;
}

#contents.index #csr .flex > div .inner {
    margin-top: 0;
}

#contents.index #csr .flex > div:nth-child(2) .inner {
    border-top: 1px solid #ccc;
}

#contents.index #csr ul li:last-child {
    margin-bottom: 0;
}

#contents.index #csr ul li:after {
    position: absolute;
    left: 0;
    margin: auto;
    content: '';
    vertical-align: middle;
    transition: all .5s ease-in;
}

#contents.index #csr ul li:after {
    left: -24px;
    top: 9px;
    width: 8px;
    height: 8px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#contents.index #csr ul li span {
    font-size: 1.3rem;
}

#contents.index #about .visual {
    height: auto;
    background: url(/images/renewal/index/sp/bg_06.png) center top no-repeat;
}

#contents.index #about .visual h2 {
    padding: 180px 0;
}

#contents.index #ir .visual h2 img {
    max-width: 80%;
}

#contents.index #about .visual h2 img {
    max-width: 80%;
}

/**
 * arrow
 */

.slide_wrap .arrow.prev:before {
    left: -43px;
}

.slide_wrap .arrow.prev:after {
    left: -30px;
}

.slide_wrap .arrow.next:before {
    left: 11px;
}

.slide_wrap .arrow.next:after {
    right: -30px;
}

.arrow.down:before {
    top: 20px;
    left: -32px;
    width: 64px;
    height: 64px;
}

.arrow.down:after {
    top: 11px;
    left: -11px;
    width: 20px;
    height: 20px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

.arrow.down:hover:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.up:before {
    width: 48px;
    height: 48px;
    top: 4px;
    left: -24px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #ececec;
}

.arrow.up:after {
    top: 6px;
    left: -7px;
    width: 12px;
    height: 12px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
    -webkit-transform: rotate(315deg);
    transform: rotate(315deg);
}

.arrow.up:hover:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.right:before {
    width: 48px;
    height: 48px;
    right: 50px;
}

.arrow.right:after {
    right: 69px;
    width: 12px;
    height: 12px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.right:hover:after {
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

.arrow.right2:before {
    width: 48px;
    height: 48px;
}

.arrow.right2:after {
    left: auto;
    right: 19px;
    top: 0;
    width: 12px;
    height: 12px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

.arrow.right2:hover:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.right3:before {
    width: 48px;
    height: 48px;
    left: -24px;
}

.arrow.right3:after {
    left: -11px;
    top: -1px;
    width: 12px;
    height: 12px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

#contents #our_business .slide_parent a:hover .arrow.right3:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.right4:after {
    right: 28px;
    left: auto;
    top: 0;
    width: 12px;
    height: 12px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#contents #our_business .tab .button:hover .arrow.right4:after {
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

.arrow.right5:before {
    width: 48px;
    height: 48px;
    right: 28px;
    bottom: 28px;
}

.arrow.right5:after {
    width: 12px;
    height: 12px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    right: 47px;
    bottom: 44px;
}

.arrow.right5:hover:after {
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

.arrow.right6:before {
    width: 48px;
    height: 48px;
}

.arrow.right6:after {
    width: 12px;
    height: 12px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

.arrow.right6:hover:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.right7:before {
    width: 48px;
    height: 48px;
    right: 28px;
    bottom: 28px;
}

.arrow.right7:after {
    width: 12px;
    height: 12px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
    right: 47px;
    bottom: 44px;
}

#contents #csr a:hover .arrow.right7:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

/**
 * index @ max-width: 480px
 */

@media only screen and (max-width: 480px) {
    #contents.index {
        font-size: 16px;
        margin-top:0;
    }

    #contents.index #news ul a .category,
    #contents.index #news ul a .date,
    #contents.index #news #news_sub .rss,
    #contents.index #news #news_sub .more,
    #contents.index #our_business .tabs div,
    #contents.index #our_business .tab h3,
    #contents.index #our_products #search .words span,
    #contents.index #our_products #search .words a,
    #contents.index #case_study .clients div p,
    #contents.index #ir .data div .head {
        font-size: 1rem;
    }

    #contents.index #case_study .clients div a {
        font-size: 1.1rem;
    }

    #contents.index #news {
        margin: 40px auto;
    }

    #contents.index #news #news_sub {
        margin-top: 28px;
    }

    #contents.index #news #news_sub .more a {
        padding-right: 40px;
    }

    #contents.index #our_business .tabs {
        width: 100%;
    }

    #contents.index #our_business .tabs div {
        width: 32%;
    }

    #contents.index #our_products #search .buttons a {
        padding: 8px 12px;
    }

    #contents.index #ir .data div .head {
        margin-top: 8px;
    }

    #contents.index #ir .data div .value {
        font-size: 3rem;
    }

    .arrow.down:before {
        top: -2px;
        left: -32px;
    }

    .arrow.down:after {
        top: -9px;
        left: -11px;
    }

    .arrow.right2:before {
        width: 32px;
        height: 32px;
    }

    .arrow.right2:after {
        left: auto;
        right: 13px;
        top: 0;
        width: 10px;
        height: 10px;
        border-top: 2px solid #049;
        border-right: 2px solid #049;
    }

    .arrow.right2:hover:after {
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }

    .arrow.right4::after {
        right: 24px;
    }

    .arrow.right5::before {
        top: 0;
        bottom: 0;
    }

    .arrow.right5::after {
        top: 0;
        bottom: 0;
    }

}


#contents.index #our_products #search .buttons {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#contents.index #our_products #search .buttons a {
    width: 49%;
    margin-bottom: 12px;
    padding: 8px 24px;
    text-align: left;
    line-height: 1.4;
}

#contents.index #our_products #search .words {
    text-align: center;
    margin-bottom: 0;
}

#contents.index #our_products #search .words span {
    display: block;
    margin-bottom: 4px;
}

#contents.index #our_products #search .words a {
    margin-left: 8px;
}

#contents.index #our_products .panels .left a,
#contents.index #our_products .panels .right a:nth-child(1),
#contents.index #our_products .panels .right a:nth-child(2),
#contents.index #our_products .panels .right a:nth-child(3),
#contents.index #our_products .panels .right a:nth-child(4) {
    background: none;
}

#contents.index #our_products .panels .left a,
#contents.index #our_products .panels .right a,
#contents.index #our_products .panels .left a .overlay,
#contents.index #our_products .panels .right a .overlay {
    width: 100%;
    height: auto;
}

#contents.index #our_products .panels .left a .content,
#contents.index #our_products .panels .right a .content {
    display: none;
}

#contents.index #case_study .visual {
    background: url(/images/renewal/index/sp/bg_03.png) center top no-repeat;
}

#contents.index #case_study .visual h2 img {
    max-width: 80%;
}

/*
#contents.index #case_study .clients {
    padding: 16px 0;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
*/

/*
#contents.index #case_study .clients div {
    width: 40%;
    margin: 0 0 24px;
}
*/

#contents.index #case_study .clients div p {
    font-size: 1.3rem;
}

#contents.index #case_study .clients div a {
    font-size: 1.4rem;
}

#contents.index #case_study .clients div .text {
    display: none;
}

#contents.index #ir .visual h2 {
    padding: 64px 0 0;
}

#contents.index #ir .visual h2 img {
    max-width: 80%;
}

#contents.index #ir .visual {
    height: auto;
    background: url(/images/renewal/index/sp/bg_04.png) center top no-repeat;
}

#contents.index #ir .visual .flex {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#contents.index #ir .data {
    padding-bottom: 64px;
}

#contents.index #ir .data .box {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 16px;
}

#contents.index #ir .data div {
    width: auto;
    margin: 0 auto;
    padding-top: 4px;
}

#contents.index #ir .data .box:nth-child(1) div {
    background: url(/images/renewal/index/icon_ir_01.png) left center no-repeat;
}

#contents.index #ir .data .box:nth-child(2) div {
    background: url(/images/renewal/index/icon_ir_02.png) left center no-repeat;
}

#contents.index #ir .data .box:nth-child(3) div {
    background: url(/images/renewal/index/icon_ir_03.png) left center no-repeat;
}

#contents.index #ir .data div .head {
    font-size: 1.2rem;
}

#contents.index #ir .data div .value {
    font-size: 4rem;
}

#contents.index #ir .data div .unit {
    font-size: 1rem;
}

#contents.index #ir .data div .note {
    font-size: .8rem;
}

#contents.index #csr .visual {
    width: 100%;
    height: auto;
    background: url(/images/renewal/index/sp/bg_05.png) center top no-repeat;
    background-size: cover;
    padding-bottom: 8px;
}

#contents.index #csr h2 {
    text-align: center;
}

#contents.index #csr h3 {
    font-size: 1.4rem;
}

#contents.index #csr .flex {
    display: block;
    height: auto;
}

#contents.index #csr .flex > a,
#contents.index #csr .flex > div {
    width: 100%;
}

#contents.index #csr .flex div:nth-child(2) {
    padding-bottom: 24px;
}

#contents.index #csr .flex div:nth-child(1).arrow.right7:before {
    display: none;
}

#contents.index #csr .flex div:nth-child(1).arrow.right7:after {
    display: none;
}

#contents.index #csr .flex div:nth-child(2).arrow.right7:before {
    display: none;
}

#contents.index #csr .flex div:nth-child(2).arrow.right7:after {
    display: none;
}

#contents.index #csr .flex > div:first-child {
    border-right: none;
}

#contents.index #csr .flex > div .inner {
    margin-top: 0;
}

#contents.index #csr .flex > div:nth-child(2) .inner {
    border-top: 1px solid #ccc;
}

#contents.index #csr ul li:last-child {
    margin-bottom: 0;
}

#contents.index #csr ul li:after {
    position: absolute;
    left: 0;
    margin: auto;
    content: '';
    vertical-align: middle;
    transition: all .5s ease-in;
}

#contents.index #csr ul li:after {
    left: -24px;
    top: 9px;
    width: 8px;
    height: 8px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#contents.index #csr ul li span {
    font-size: 1.3rem;
}

#contents.index #about .visual {
    height: auto;
    background: url(/images/renewal/index/sp/bg_06.png) center top no-repeat;
}

#contents.index #about .visual h2 {
    padding: 180px 0;
}

#contents.index #ir .visual h2 img {
    max-width: 80%;
}

#contents.index #about .visual h2 img {
    max-width: 80%;
}

/**
 * arrow
 */

.slide_wrap .arrow.prev:before {
    left: -43px;
}

.slide_wrap .arrow.prev:after {
    left: -30px;
}

.slide_wrap .arrow.next:before {
    left: 11px;
}

.slide_wrap .arrow.next:after {
    right: -30px;
}

.arrow.down:before {
    top: -15px;
    left: -32px;
    width: 64px;
    height: 64px;
}

.arrow.down:after {
    top: -22px;
    left: -11px;
    width: 20px;
    height: 20px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

.arrow.down:hover:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.up:before {
    width: 48px;
    height: 48px;
    top: 4px;
    left: -24px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #ececec;
}

.arrow.up:after {
    top: 6px;
    left: -7px;
    width: 12px;
    height: 12px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
    -webkit-transform: rotate(315deg);
    transform: rotate(315deg);
}

.arrow.up:hover:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.right:before {
    width: 48px;
    height: 48px;
    right: 50px;
}

.arrow.right:after {
    right: 69px;
    width: 12px;
    height: 12px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.right:hover:after {
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

.arrow.right2:before {
    width: 48px;
    height: 48px;
}

.arrow.right2:after {
    left: auto;
    right: 19px;
    top: 0;
    width: 12px;
    height: 12px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

.arrow.right2:hover:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.right3:before {
    width: 48px;
    height: 48px;
    left: -24px;
}

.arrow.right3:after {
    left: -11px;
    top: -1px;
    width: 12px;
    height: 12px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

#contents #our_business .slide_parent a:hover .arrow.right3:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.right4:after {
    right: 28px;
    left: auto;
    top: 0;
    width: 12px;
    height: 12px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#contents #our_business .tab .button:hover .arrow.right4:after {
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}

.arrow.right5:before {
    width: 48px;
    height: 48px;
    right: 28px;
    bottom: 28px;
}

.arrow.right5:after {
    width: 12px;
    height: 12px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    right: 47px;
    bottom: 44px;
}

.arrow.right5:hover:after {
    border-top: 3px solid #049;
    border-right: 3px solid #049;
}



.arrow.right6:after {
    width: 12px;
    height: 12px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
    right: 47px;
    bottom: 44px;
}

.arrow.right6:hover:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}

.arrow.right7:before {
    width: 48px;
    height: 48px;
    right: 28px;
    bottom: 28px;
}

.arrow.right7:after {
    width: 12px;
    height: 12px;
    border-top: 3px solid #049;
    border-right: 3px solid #049;
    right: 47px;
    bottom: 44px;
}

#contents #csr a:hover .arrow.right7:after {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
}


/* 20190919 追加 */
/**
 * header
 */

#header {
    width: 100%;
    min-width: 0;
    position: fixed;
    top: 0;
    z-index: 2;
    background: none;
}

#header .hide {
    display: none;
    width: 100vw;
    height: 100vh;
    background-color: rgba(250,250,250,1);

/* 20181002 修正 */
/*
    background-color: rgba(0,0,0,.7);
*/

}
#header .hide__inner {
    background-color: #fff;
}

#header .inner {
    min-height: 64px;
    margin: 0;
    padding: 8px 0;
    background-color: #fff;
}

#header .line {
    width: 100%;
}

#header .open,
#header .mail {
    width: 80px;
    text-align: center;
}

#header .open span {
    display: inline-block;
    width: 40px;
    margin-left: 20px;
}

#header .logo {
    width: 100%;
    text-align: center;
}

#header .logo img {
    margin: 0;
    max-width: 70%;
}

#header .mail a {
    display: inline-block;
    background: #f1aa00;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    margin-right: 20px;
}

#header .open a span,
#header .mail a span {
    display: -webkit-flex;
    display: flex;
    width: 100%;
    height: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#header .mail a img {
    vertical-align: middle;
}

#header .menus,
#header .menus > a {
    display: block;
}

#header .menus > a {
    width: 95%;
    margin: 0 auto;
    color: #049;
    font-weight: bold;
    text-align: center;
    padding: 8px;
    border-top: 1px solid #e5e5e5;
}

#header .menus > a:first-child {
    border-top: none;
}

#header .icons {
    text-align: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#header .icons a {
    width: 50%;
    font-size: .9rem;
}

#header .icons a div {
    background: #f1aa00;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    margin: 8px auto 8px;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#header .form {
    margin: 12px auto;
    width: 95%;
}

#header form {
    display: block;
    padding-top: 8px;
    padding-bottom: 8px;
}

#header form div,
#header .links {
    display: -webkit-flex;
    display: flex;
}

#header form div span:nth-child(1) {
    width: 90%;
}

#header form div span:nth-child(2) {
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#header form div input[type="text"] {
    width: 100%;
}

#header .links {
    width: 95%;
    margin: 0 auto;
    padding-bottom: 24px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#header .links a.img {
    width: 40px;
    height: 40px;
    margin-left: 8px;
}

#header .links .report {
    box-shadow: 0px 0px 5px #aaa;
    border-radius: 10px;
}


/**
 * footer
 */

body {
    padding-bottom: 0;
}

#footer,
#footer .inner {
    min-width: auto;
}

#footer img {
    max-width: 100%;
}

#footer .inner {
    display: block;
}

#footer .inner > div {
    width: 100%;
}

#footer .inner .left {
    text-align: center;
}

#footer .inner .links a:before {
    content: "\A";
}

#footer .inner .links a:nth-child(1):before {
    content: '';
}

#footer .download {
    margin: 0 0 24px;
}

#footer .download,
#footer .blog img {
    display: inline-block;
    width: 80%;
}

#footer .inner .right {
    text-align: center;
}

#footer .inner .right img {
    margin: 0;
}

#footer .inner .right .fb span {
    display: block;
    margin: 24px 0 12px;
}

#footer .right .fb img {
    width: 20%;
    max-width: 100px;
}

#footer .copyright .f2s img {
    width: 20%;
    max-width: 100px;
}

/* 20180919 追加 */



/**
 * index @ max-width: 480px
 */

@media only screen and (max-width: 480px) {
    #contents.index {
        font-size: 16px;
    }

    #contents.index #news ul a .category,
    #contents.index #news ul a .date,
    #contents.index #news #news_sub .rss,
    #contents.index #news #news_sub .more,
    #contents.index #our_business .tabs div,
    #contents.index #our_business .tab h3,
    #contents.index #our_products #search .words span,
    #contents.index #our_products #search .words a,
    #contents.index #case_study .clients div p,
    #contents.index #ir .data div .head {
        font-size: 1rem;
    }

    #contents.index #case_study .clients div a {
        font-size: 1.1rem;
    }

    #contents.index #news {
        margin: 40px auto;
    }

    #contents.index #news #news_sub {
        margin-top: 28px;
    }

    #contents.index #news #news_sub .more a {
        padding-right: 40px;
    }

    #contents.index #our_business .tabs {
        width: 100%;
    }

    #contents.index #our_business .tabs div {
        width: 32%;
    }

    #contents.index #our_products #search .buttons a {
        padding: 8px 12px;
    }

    #contents.index #ir .data div .head {
        margin-top: 8px;
    }

    #contents.index #ir .data div .value {
        font-size: 3rem;
    }

    .arrow.down:before {
        top: -2px;
        left: -32px;
    }

    .arrow.down:after {
        top: -9px;
        left: -11px;
    }

    .arrow.right2:before {
        width: 32px;
        height: 32px;
    }

    .arrow.right2:after {
        left: auto;
        right: 13px;
        top: 0;
        width: 10px;
        height: 10px;
        border-top: 2px solid #049;
        border-right: 2px solid #049;
    }

    .arrow.right2:hover:after {
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }

    .arrow.right4::after {
        right: 24px;
    }

    .arrow.right5::before {
        top: 0;
        bottom: 0;
    }

    .arrow.right5::after {
        top: 0;
        bottom: 0;
    }

#contents.index #mv_wrap{
    margin-top: 0;
    position: relative;
    }



}

#border_line{
	border-bottom:none;
	}
#season-link-area{
	width:100%;
	}
h2.heading01{
	font-size:80%;
	font-weight:bold;
	}
	
p.text01{
	font-size:70%;
	}
	
p.read-more{
	font-size:70%;
	}


    .top-information {
        width:80%;
        margin-bottom: 0;
    }


    .top-information2 {
        width:80%;
        margin-bottom: 0;
    }
    

/* 旬情報追加 */


#topics{
	width:100%;
	}

#topics .topics_left{
	width: 100%;
	height:170px;
	background-size:100% auto;
	background-image: url(/images/renewal/index/img_robot_topics.png);
	background-repeat:no-repeat;
	color:#fff;
	}

#topics .topics_left h3,#topics .topics_left p{
	position:relative;
	top:10px;
	left:45px;
	width:85%;
	}

#topics .topics_center{
	width: 100%;
	height:170px;
	position:relative;
	background-size:100% auto;
	background-image: url(/images/renewal/index/img_showroom_topics.png);
	background-repeat:no-repeat;
	color:#fff;
	}
	
#topics .topics_center h3,#topics .topics_center p{
	position:relative;
	top:10px;
	left:45px;
	width:85%;
	}


#topics .topics_right{
	width: 100%;
	height:170px;
	position:relative;
	background-size:100% auto;
	background-image: url(/images/renewal/index/img_regenerative_topics.png);
	background-repeat:no-repeat;
	color:#fff;
	}
	
#topics .topics_right h3,#topics .topics_right p{
	position:relative;
	top:10px;
	left:45px;
	width:85%;
	}





