@charset "utf-8";

/* 製品情報共通 */
.product_mv_ttl_sub {
    text-align: center;
}
.product_wrap {
    overflow: clip;
}
.product_automatic_txt {
    line-height: 2;
}
.product_inner .common_ttl_1 {
    width: 100vw;
    margin-right: calc(50% - 50vw);
}
.product_common_ttl {
    font-weight: 500;
}
.product_common_ttl_small {
    display: inline-block;
}
.product_common_ttl_2 {
    font-weight: 500;
}
.product_common_ttl_2::before {
    content: "";
    background-color: #124b9c;
    display: inline-block;
    border-radius: 50%;
}
.product_automatic_box {
    display: flex;
    justify-content: center;
    line-height: calc(32 / 18);
}
.product_automatic_box_figure > figcaption {
    text-align: center;
    margin-top: 12rem;
}
.product_automatic_box_img {
    box-shadow: 0 4px 10px rgba(0, 52, 127, 0.12);
    display: inline-block;
}
.product_automatic_box_marker > dt {
    font-weight: 500;
    background-color: #f0f4ff;
    width: fit-content;
    line-height: 1;
}
.product_automatic_box_list {
    display: flex;
    justify-content: start;
    align-items: start;
}
.product_automatic_box_list > ul > li + li {
    margin-top: 7rem;
}
.product_line {
    border-bottom: 2px dotted rgba(18, 75, 156, 0.3);
    position: relative;
}
.product_mv_sub_ttl_word {
    letter-spacing: -0.1em;
}
.product_automatic_box_img_txt {
    font-weight: 500;
    text-align: center;
    color: #000;
}
@media (min-width: 751px) {
    .common_ttl_1::before, 
    .common_ttl_1::after{
        height: calc((100% - 8rem) / 2);
    }
    .common_ttl_1::before {
        top: 4rem;
    }
    .common_ttl_1::after {
        top: calc((100% - 8rem) / 2 + 4rem);
    }
    .product_mv_ttl_sub {
        font-size: 20rem;
    }
    .product_wrap .common_side_nav_item .contents_btn_inner {
        padding: 15rem 14rem;
    }
    .product_wrap {
        position: relative;
    }
    .product_wrap::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 43.056vw;
        min-height: 620rem;
        z-index: -1;
        background: url(/images/common/main_bg.png) no-repeat center bottom /
            100% auto;
    }
    .product_wrap .common_side_nav_target_item + .common_side_nav_target_item {
        margin-top: 90rem;
    }
    .product_inner {
        padding-block: 80rem;
    }
    .product_automatic_txt {
        margin-block: -10rem 75rem;
        font-size: 18rem;
    }
    .product_inner .common_ttl_1 {
        margin-bottom: 45rem;
    }
    .product_common_ttl {
        font-size: 46rem;
        line-height: 1;
    }
    .product_common_ttl_small {
        font-size: 20rem;
        margin-left: 17rem;
    }
    .product_common_ttl_2 {
        font-size: 24rem;
        line-height: calc(38 / 24);
        margin-bottom: 15rem;
    }
    .product_common_ttl_2::before {
        width: 24rem;
        height: 22rem;
        margin-right: 3rem;
    }
    .product_common_ttl_indent_2 {
        text-indent: -24rem;
        padding-left: 24rem;
    }
    .product_automatic_box {
        column-gap: 32rem;
        align-items: start;
    }
    .product_automatic_box_desc {
        width: 452rem;
        flex-shrink: 0;
    }
    .product_automatic_box_txt {
        font-size: 16rem;
        line-height: calc(32 / 18);
    }
    .product_automatic_box_txt + .product_automatic_box_txt {
        margin-top: 40rem;
    }
    .product_automatic_box_marker > dt {
        font-size: 20rem;
        margin-top: 25rem;
        padding: 5rem 9rem;
    }
    .product_automatic_box_marker > dd {
        line-height: calc(32 / 18);
        margin-top: 5rem;
        font-size: 18rem;
    }
    .product_box {
        margin-top: 45rem;
    }
    .product_automatic_box_list_wrap {
        padding: 34rem 80rem 34rem 28rem;
    }
    .product_automatic_box_list {
        font-size: 16rem;
        column-gap: 68rem;
    }
    .product_automatic_box_list > ul > li {
        text-indent: -17rem;
        padding-left: 17rem;
    }
    .product_btn {
        margin-top: 40rem;
    }
    .product_btn .contents_btn {
        width: 250rem;
    }
    .product_btn .contents_btn_inner {
        padding: 11rem 40rem;
    }
    .product_line {
        padding-bottom: 50rem;
        margin-bottom: 50rem;
    }
    .product_automatic_box_img {
        width: 360rem;
        height: auto;
    }
    .product_automatic_box_img_l {
        width: 100%;
    }
    .product_automatic_box_img_txt {
        margin-top: 16rem;
        font-size: 16rem;
    }
    .product_automatic_box > img {
        width: 360rem;
        height: auto;
    }
}
@media (max-width: 750px) {
    .product_wrap .contents_btn_inner {
        font-size: 24rem;
    }
    .product_wrap .common_side_nav_target_item + .common_side_nav_target_item {
        margin-top: 135rem;
    }
    .product_mv_ttl_sub {
        font-size: 28rem;
        line-height: calc(40 / 28);
    }
    .product_automatic_txt {
        margin-block: -10rem 130rem;
    }
    .product_inner .common_ttl_1 {
        margin-bottom: 55rem;
    }
    .product_common_ttl {
        font-size: 56rem;
    }
    .product_common_ttl_small {
        font-size: 26rem;
        margin-left: 20rem;
    }
    .product_common_ttl_2 {
        font-size: 36rem;
        line-height: calc(60 / 36);
    }
    .product_common_ttl_2::before {
        width: 30rem;
        height: 30rem;
        margin-right: 5rem;
    }
    .product_automatic_box {
        flex-direction: column;
        row-gap: 57rem;
    }
    .product_automatic_box_txt {
        line-height: calc(50 / 26);
        margin-top: 15rem;
    }
    .product_automatic_box_marker > dt {
        font-size: 32rem;
        margin-top: 88rem;
        padding: 6rem 9rem;
    }
    .product_automatic_box_marker > dd {
        font-size: 26rem;
        line-height: calc(32 / 18);
        margin-top: 20rem;
    }
    .product_box {
        margin-top: 66rem;
    }
    .product_box .common_box_ttl {
        font-size: 40rem;
    }
    .product_automatic_box_list_wrap {
        padding: 45rem 40rem 50rem;
    }
    .product_automatic_box_list {
        font-size: 24rem;
        column-gap: 40rem;
    }
    .product_automatic_box_list > ul > li {
        text-indent: -13px;
        padding-left: 13px;
    }
    .product_automatic_box_list_inner{
        width: 50%;
    }
    .product_btn .contents_btn {
        width: 590rem;
        margin-inline: auto;
    }
    .product_btn .contents_btn_inner {
        font-size: 32rem;
    }
    .product_line {
        padding-bottom: 72rem;
        margin-bottom: 76rem;
    }
    .product_automatic_box_img_txt {
        margin-top: 32rem;
        font-size: 24rem;
    }
    .product_common_ttl_small_block {
        margin-left: 0;
        padding-bottom: 8rem;
    }
}

/* 製品カテゴリ  */
@media (min-width: 751px) {
    .common_local_list {
        gap: 4rem;
    }
    .common_local_list_link {
        width: 420rem;
        padding: 30rem 25rem;
    }
    .common_local_list > li:nth-child(1) .common_local_list_link {
        background-image: url(/product/images/product_list_link_1.jpg);
    }
    .common_local_list > li:nth-child(2) .common_local_list_link {
        background-image: url(/product/images/product_list_link_2.jpg);
    }
    .common_local_list > li:nth-child(3) .common_local_list_link {
        background-image: url(/product/images/product_list_link_3.jpg);
    }
    .common_local_list > li:nth-child(4) .common_local_list_link {
        background-image: url(/product/images/product_list_link_4.jpg);
    }
    .common_local_list > li:nth-child(5) .common_local_list_link {
        background-image: url(/product/images/product_list_link_5.jpg);
    }
    .common_local_list > li:nth-child(6) .common_local_list_link {
        background-image: url(/product/images/product_list_link_6.jpg);
    }
    .common_local_list > li:nth-child(7) .common_local_list_link {
        background-image: url(/product/images/product_list_link_7.jpg);
    }
    .common_local_list > li:nth-child(8) .common_local_list_link {
        background-image: url(/product/images/product_list_link_8.jpg);
    }
    .common_local_list > li:nth-child(9) .common_local_list_link {
        background-image: url(/product/images/product_list_link_9.jpg);
    }
    .product_category {
        margin-top: 90rem;
    }
}
@media (max-width: 750px) {
    .common_local_list {
        gap: 8rem;
    }
    .common_local_list_link {
        width: 330rem;
        height: 110rem;
        padding: 0 32rem;
        display: flex;
        align-items: center;
    }
    .common_local_list > li:nth-child(1) .common_local_list_link {
        background-image: url(/product/images/product_list_link_sp_1.jpg);
    }
    .common_local_list > li:nth-child(2) .common_local_list_link {
        background-image: url(/product/images/product_list_link_sp_2.jpg);
    }
    .common_local_list > li:nth-child(3) .common_local_list_link {
        background-image: url(/product/images/product_list_link_sp_3.jpg);
    }
    .common_local_list > li:nth-child(4) .common_local_list_link {
        background-image: url(/product/images/product_list_link_sp_4.jpg);
    }
    .common_local_list > li:nth-child(5) .common_local_list_link {
        background-image: url(/product/images/product_list_link_sp_5.jpg);
    }
    .common_local_list > li:nth-child(6) .common_local_list_link {
        background-image: url(/product/images/product_list_link_sp_6.jpg);
    }
    .common_local_list > li:nth-child(7) .common_local_list_link {
        background-image: url(/product/images/product_list_link_sp_7.jpg);
    }
    .common_local_list > li:nth-child(8) .common_local_list_link {
        background-image: url(/product/images/product_list_link_sp_8.jpg);
    }
    .common_local_list > li:nth-child(9) .common_local_list_link {
        background-image: url(/product/images/product_list_link_sp_9.jpg);
    }
    .product_category {
        margin-top: 135rem;
    }
}

/* 製品カタログ */
.product_catalog_list {
    display: flex;
    justify-content: center;
    align-items: start;
    column-gap: 40rem;
}
.product_catalog_list > li {
    box-shadow: 0 6px 8px rgba(18, 30, 46, 0.1);
}
.product_catalog_btn .contents_btn .contents_btn_inner::before {
    content: "";
    background: url(/product/images/icon_pdf.svg) no-repeat 0 50% / contain;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
@media (min-width: 751px) {
    .product_catalog_list {
        column-gap: 40rem;
    }
    .product_catalog_btn {
        font-size: 16rem;
    }
    .product_catalog_btn .contents_btn {
        width: 360rem;
        margin: 43rem auto 0;
    }
    .product_catalog_btn .contents_btn .contents_btn_inner {
        padding: 13rem 60rem;
    }
    .product_catalog_btn .contents_btn .contents_btn_inner::before {
        width: 22rem;
        height: 27rem;
        left: 23rem;
    }
    .product_catalog_btn_note {
        margin: 10rem auto 0;
        font-size: 14rem;
    }
}
@media (max-width: 750px) {
    .product_catalog_list {
        column-gap: 20rem;
    }
    .product_catalog_list > li > img {
        width: 210rem;
        height: 297rem;
    }
    .product_catalog_btn {
        font-size: 32rem;
    }
    .product_catalog_btn .contents_btn {
        width: 590rem;
        margin: 60rem auto 0;
    }
    .product_catalog_btn .contents_btn .contents_btn_inner {
        padding: 35rem 86rem;
        font-size: 30rem;
        line-height: calc(40 / 32);
    }
    .product_catalog_btn .contents_btn .contents_btn_inner::before {
        width: 38rem;
        height: 46rem;
        left: 32rem;
    }
    .product_catalog_btn_note {
        width: 580rem;
        margin: 20rem auto 0;
        font-size: 24rem;
    }
}

/* 製品情報下層MV */
.product_mv_sub_ttl {
    color: #fff;
}
.product_mv_sub {
    display: grid;
    align-items: center;
    box-sizing: border-box;
}
@media (min-width: 751px) {
    .product_mv_sub {
        padding-inline: 40rem;
        margin-bottom: 35rem;
        height: 240rem;
    }
    .product_mv_sub_ttl {
        font-size: 32rem;
        line-height: calc(48 / 32);
    }
}
@media (max-width: 750px) {
    .product_mv_sub {
        padding-inline: 40rem;
        height: 280rem;
        position: relative;
        z-index: 21;
    }
    .product_mv_sub_ttl {
        font-size: 40rem;
    }
}

/* 製品情報下層パンくず */
.product_pankuzu_list {
    margin-bottom: 0;
}
.product_pankuzu_list li + li::before {
    background-color: #155d94;
}
.product_pankuzu_list > li > a {
    color: #155d94;
}
@media (min-width: 751px) {
    .product_pankuzu_list_wrap {
        width: 1200rem;
        padding: 140rem 0 0;
        margin-inline: auto;
    }
    .product_pankuzu_list {
        margin-bottom: 0;
        gap: 20rem 10rem;
    }
}
@media (max-width: 750px) {
    .product_pankuzu_list_wrap {
        padding: 145rem 40rem 35rem;
    }
}

/* テーブル */
.product_table {
    color: #251e1c;
    width: 100%;
}
.product_table_head {
    background-color: #f0f4ff;
}
.product_table_border > th,
.product_table_border > td {
    border: solid 1px #251e1c;
    box-sizing: border-box;
}
.product_table_center {
    text-align: center;
}
.product_table_list > li::before {
    content: "・";
}
@media (min-width: 751px) {
    .product_table_border > th,
    .product_table_border > td {
        padding: 5rem 4rem;
    }
    .product_table_desc_txt_sm {
        font-size: 16rem;
    }
    .product_table_txt_sm {
        font-size: 16rem;
    }
}
@media (max-width: 750px) {
    .product_table_border > th,
    .product_table_border > td {
        padding: 5rem 6rem;
    }
    .product_table_desc_txt_sm {
        font-size: 20rem;
        text-align: center;
    }
    .product_table_txt_sm {
        font-size: 18rem;
    }
    .product_table_list > li {
        text-indent: -25rem;
        padding-left: 25rem;
    }
}
