@charset "utf-8";

.common_ttl_1 {
    position: relative;
    z-index: 1;
}
.common_ttl_1_line {
    height: 1px;
    display: block;
    background-color: #124b9c;
    position: absolute;
    left: 0;
    bottom: 0;
}
@media (min-width: 751px) {
    .contents_inner {
        padding: 0;
    }
    .common_mv_inner {
        padding-top: 140rem;
        padding-bottom: 170rem;
    }
    .footer_inner {
        padding: 33rem 0 24rem;
    }
    .common_ttl_1_line {
        width: 100%;
    }
}
@media (max-width: 750px) {
    .contents_inner {
        padding: 0 40rem;
    }
    .common_mv_inner {
        padding-top: 155rem;
        padding-bottom: 265rem;
    }
    .footer_inner {
        padding: 0;
    }
    .common_ttl_1 {
        border-bottom: none;
    }
    .common_ttl_1_line {
        width: calc(100% + 40rem);
    }
}

/* mv */
.common_mv {
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-attachment: fixed;
}
@media (min-width: 751px) {
    .common_mv {
        background-image: url(/company/history/images/mv.jpg);
    }
}
@media (max-width: 750px) {
    .common_mv {
        background-image: url(/company/history/images/mv_sp.jpg);
    }
}

/* history */
.history_ttl_wrap {
    display: flex;
    justify-content: space-between;
}
.history_ttl {
    text-align: center;
    color: #124b9c;
    border: none;
    background-color: #c6cee6;
}
.history_year_list {
    display: flex;
}
.history_year_list_link {
    text-decoration: none;
    color: #124b9c;
    border: none;
    display: inline-block;
    position: relative;
}
.history_year_list_link::before {
    content: '';
    width: 100%;
    height: 1px;
    background-color: #124b9c;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    scale: 0 1;
}
.history_year_list_link .contents_btn_arrow {
    right: 0;
}
.history_box {
    position: relative;
}
.history_box_inner {
    background-color: #fff;
    position: sticky;
    left: 0;
}
.history_box_inner::before {
    content: '';
    background-color: #fff;
    display: block;
    position: absolute;
}
.history_year_list,
.history_ttl_wrap {
    position: relative;
    z-index: 2;
}

.history_list {
    position: relative;
    pointer-events: none;
}
.history_list::before {
    content: '';
    width: 0;
    height: 100%;
    border-left: 2px dotted #c2d0e5;
    display: block;
    position: absolute;
}
.product,
.company.product .history_list_year + .history_list_item_wrap,
.company.product .history_list_item_wrap + .history_list_item_wrap {
    color: #000;
}
.company.product .history_list_item_wrap{
    color: #124b9c;
}
.history_list_year {
    font-weight: 700;
    position: relative;
    z-index: -1;
}
.history_list_year::before {
    content: '';
    width: 100%;
    height: 70%;
    margin: auto;
    background-color: #fff;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
}
.history_list_year_inner {
    position: relative;
    z-index: 1;
}
.history_list_item {
    line-height: 1.777;
}
.history_list_img {
    display: block;
    position: relative;
    z-index: -1;
}
@media (min-width: 751px) {
    .history {
        margin-top: 77rem;
        overflow: clip;
    }
    .history_box {
        width: 1120rem;
        margin-inline: auto;
    }
    .history_ttl_wrap {
        margin-top: 40rem;
    }
    .history_ttl {
        width: 555rem;
        padding: 5rem 0;
        font-size: 28rem;
        color: #fff;
        background-color: #124b9c;
    }
    .history_ttl + .history_ttl {
        color: #124b9c;
        background-color: #c6cee6;
    }
    .history_year_list {
        margin-top: -10rem;
        justify-content: space-between;
    }
    .history_year_list_link {
        font-size: 16rem;
        padding: 10rem 30rem 10rem 0;
        cursor: pointer;
    }
    .history_box_inner {
        top: 130rem;
    }
    .history_box_inner::before {
        width: calc(100vw);
        height: calc(100% + 180rem);
        background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(255,255,255,1) 14%, rgba(255,255,255,1) 100%);
        top: -132rem;
        left: calc(50% - 50vw);
        z-index: 1;
    }
    .history_box_dec {
        max-width: none;
        display: block;
        position: absolute;
        z-index: -2;
    }
    .history_box_dec_1 {
        width: 1087rem;
        top: 2300rem;
        left: 670rem;
    }
    .history_box_dec_2 {
        width: 1315rem;
        top: 6200rem;
        left: -530rem;
    }
    .history_list {
        margin-top: -15rem;
        padding-bottom: 50rem;
    }
    .history_list::before {
        height: 100%;
        margin: auto;
        top: 60rem;
        left: 0;
        right: 0;
        z-index: -1;
    }
    .history_list > li {
        margin-top: 35rem;
        display: flex;
        align-items: flex-start;
        gap: 77rem;
    }
    .history_list > li.product {
        justify-content: flex-end;
    }
    .history_list > li.company.product {
        justify-content: space-between;
    }
    .history_list_item_wrap {
        width: 448rem;
        margin-top: 7rem;
        position: relative;
    }
    .history_list_item {
        font-size: 18rem;
        position: relative;
    }
    .history_list_item + .history_list_item {
        margin-top: 35rem;
    }
    .history_list_img + .history_list_item {
        margin-top: 45rem;
    }
    .history_list_item::before {
        content: '';
        width: 506rem;
        height: 1rem;
        background-color: #124b9c;
        display: block;
        position: absolute;
        left: 0;
        top: 16rem;
        z-index: -1;
    }
    .history_list_year + .history_list_item_wrap .history_list_item::before,
    .history_list_item_wrap + .history_list_item_wrap .history_list_item::before {
        background-color: #000;
        left: auto;
        right: 0;
    }
    .history_list_item_inner {
        padding-right: 16rem;
        background-color: #fff;
        display: inline-block;
        position: relative;
        z-index: -1;
    }
    .history_list_year + .history_list_item_wrap .history_list_item_inner,
    .history_list_item_wrap + .history_list_item_wrap .history_list_item_inner {
        padding-left: 16rem;
        padding-right: 0;
        display: block;
    }
    .history_list_item_inner sup{
        font-size: 10rem;
    }
    .history_list_year {
        font-size: 32rem;
    }
    .company.product .history_list_year_inner {
        color: #124b9c;
        background: -webkit-linear-gradient(top, #124b9c 0%, #124b9c 50%, #000 51%, #000 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }
    .history_list_item_co2 {
        font-size: 12rem;
    }
    .history_list_img {
        width: 432rem;
        margin-top: 15rem;
        box-shadow: 4rem 4rem 10rem rgba(0, 52, 127, 0.12);
    }
    .history_list_year + .history_list_item_wrap .history_list_img,
    .history_list_item_wrap + .history_list_item_wrap .history_list_img {
        margin-left: auto;
    }
    .history_list_img_1945,
    .history_list_img_1986 {
        position: absolute;
        top: 100%;
        left: 0;
    }
}
@media (max-width: 750px) {
    .history {
        margin-top: 80rem;
    }
    .history_box_inner {
        padding-bottom: 170rem;
        position: sticky;
        top: 150rem;
    }
    .history_box_inner::before {
        width: calc(100% + 40rem);
        height: calc(100% + 240rem);
        background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(255,255,255,1) 12%, rgba(255,255,255,1) 100%);
        top: -150rem;
        left: 0;
        z-index: 1;
    }
    .history_ttl_wrap {
        margin-top: 70rem;
        align-items: flex-end;
        position: relative;
    }
    .history_ttl_wrap::after {
        content: '';
        width: calc(100% + 32rem);
        height: 1px;
        background-color: #124b9c;
        display: block;
        position: absolute;
        left: -16rem;
        bottom: 0;
    }
    .history_ttl {
        width: 331rem;
        padding: 20rem 0;
        font-size: 28rem;
        border-radius: 16rem 16rem 0 0;
    }
    .is_active.history_ttl {
        padding: 23rem 0;
        font-size: 36rem;
        color: #fff;
        background-color: #124b9c;
    }
    .history_year_list {
        width: 100%;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 18rem 0;
        position: absolute;
        top: 130rem;
        left: 0;
    }
    .history_year_list_link {
        padding: 10rem 30rem 10rem 0;
        font-size: 26rem;
    }

    .history_list {
        margin-top: 50rem;
        padding: 1rem 0 60rem;
    }
    .history_list::before {
        top: 0;
        left: 10rem;
        z-index: -1;
    }
    .is_company .product,
    .is_product .company,
    .is_company .company.product .history_list_year + .history_list_item_wrap,
    .is_company .company.product .history_list_item_wrap + .history_list_item_wrap,
    .is_product .company.product .history_list_item_wrap {
        display: none;
    }
    .is_company .company.product,
    .is_product .company.product,
    .is_product .company.product .history_list_year + .history_list_item_wrap,
    .is_product .company.product .history_list_item_wrap + .history_list_item_wrap {
        display: block;
    }
    .is_company .company.product .history_list_year {
        color: #124b9c;
    }
    .is_product .company.product .history_list_year {
        color: #000;
    }
    .history_list > li {
        margin-top: 60rem;
        position: relative;
    }
    .history_list > li.history_list_1975 {
        margin-top: 0;
    }
    .history_list_item_wrap {
        padding-top: 30rem;
        padding-left: 40rem;
    }
    .history_list_year {
        font-size: 32rem;
        position: absolute;
        top: 0;
        left: 0;
    }
    .history_list_item {
        margin-top: 20rem;
        font-size: 26rem;
        position: relative;
        z-index: -1;
    }
    .history_list_item + .history_list_item {
        margin-top: 55rem;
    }
    .history_list_item_co2 {
        font-size: 15rem;
    }
    .history_list_img {
        margin-top: 25rem;
        box-shadow: 6rem 6rem 15rem rgba(0, 52, 127, 0.12);
    }
    .history_list_item_inner sup{
        font-size: 16rem;
    }
}
.history_year_list_link::before {
    transform-origin: 100%;
    transition: scale 0.5s 0.1s cubic-bezier(.16,.5,.43,1);
}
.is_active.history_year_list_link::before {
    transform-origin: 0;
    scale: 1 1;
}
@media (min-width: 751px) {

    .history_year_list_link .contents_btn_arrow {
        scale: 1;
    }
    .contents_btn_arrow,
    .contents_btn_arrow::before {
        transition: background-color 0.6s, scale 0.1s cubic-bezier(0.33, 1, 0.68, 1);
    }
    @media (hover: hover) {
        .history_year_list_link:hover .contents_btn_arrow {
            scale: 1.25;
        }
        .history_year_list_link:hover::before {
            transform-origin: 0;
            scale: 1 1;
        }
    }
}