@charset "UTF-8";

.entry_header,
.entry_body section:first-of-type {
    display: none;
}

#pro+section .heading.block_header_6 {
    background: #F0F0F0;
    border-left: solid 3px #666;
    border-bottom: solid 1px #CCC;
    padding: 8px 10px !important;
}

#pro+section .heading.block_header_6 .h {
    font-size: 1.6rem !important;
}

#pro+section .wrapper_item {
    padding-bottom: 180px !important;
    position: relative;
}

#pro+section .inner_item_txt {
    position: absolute;
    right: 40px;
    bottom: 0;
    background: var(--i_bg_color);
    z-index: 2;
    padding: 30px 25px;
    box-sizing: border-box;
}

#pro+section .inner_item_img {
    text-align: left;
    flex-basis: 100%;
    max-width: 100%;
}

#pro+section .inner_item_img img {
    max-width: 640px !important;
    aspect-ratio: 6/5;
    object-fit: cover;
    object-position: right bottom;
}

#pro+section .heading.block_header_2 {
    display: flex;
    align-items: flex-end;
}

#pro+section .heading.block_header_2 .h {
    padding-left: 0;
    font-size: 2.2rem;
}

#pro+section .heading.block_header_2 .h::before {
    display: none;
}

#pro+section .heading.block_header_2 p {
    padding-left: 10px;
    color: #042455;
}

#pro+section dl {
    display: flex;
    font-size: 1.4rem;
    margin-bottom: 10px;
}

#pro+section dt {
    color: #042455;
    min-width: 120px;
    display: inline-block;
}

#pro2+section .heading.block_header_1 .h {
    font-size: 1.45rem;
    line-height: 1;
}

#pro2+section .heading.block_header_1 {
    width: 30%;
}

#pro2+section .wrapper_item {
    width: 85%;
    padding-right: 40px;
}

#pro3+div .heading.block_header_7 .h {
    background: #fff9e3;
    font-size: 1.65rem;
    display: block;
    width: 100%;
    padding: 8px 15px 5px;
}

#pro3+div .inner_item {
    padding: 5px;
    border: 1px solid var(--i_border_color);
}

#pro3+div .inner_item:has(a:hover) {
    background: #eee;
}

#pro3+div .inner_item_img img {
    height: auto !important;
    aspect-ratio: 4/5;
}

#pro3+div .inner_item_txt a {
    font-size: 1.45rem !important;
    line-height: 1.2;
    display: inline-block;
}

a[id^="pro"]+section::before,
a[id^="pro"]+div::before {
    position: absolute;
    display: block;
    content: "";
    pointer-events: none;
    background: #fff9f1;
    right: 0;
    bottom: 0;
    width: 80%;
    height: 100%;
}

#pro+section::before {
    height: calc(100% - 120px);
}

#pro3+div::before {
    bottom: auto;
    top: 0;
    height: 45px;
}

@media screen and (max-width: 900px) {
    #pro+section {
        padding-bottom: 35px;
    }

    #pro+section .inner_item_txt {
        position: relative;
        right: 0;
    }

    #pro+section .wrapper_item {
        padding-bottom: 0 !important;
    }

    #pro2+section {
        padding: 0;
        margin-bottom: 20px;
    }

    #pro2+section>.content_wrapper {
        background: #fff9f1;
        padding-top: 20px !important;
        padding-bottom: 20px !important;
        width: calc(100% - 40px);
    }

    a[id^="pro"]+section::before,
    a[id^="pro"]+div::before {
        display: none;
    }

    #pro2+section .heading.block_header_1 {
        width: 100%;
        margin-bottom: 15px;
    }

    #pro2+section .inner_item_txt p {
        font-size: 1.5rem !important;
        line-height: 1.6;
    }

    #pro2+section .wrapper_item {
        width: 100%;
        padding-right: 0;
    }


    #pro3+div .inner_item {
        width: 48% !important;
    }
}

@media screen and (min-width: 651px) {
    #pro3+div .inner_item_txt a {
        text-decoration: none !important;
    }
}

@media screen and (max-width: 650px) {

    #pro+section .heading.block_header_6,
    #pro3+div .heading.block_header_7 {
        border-left: none;
        border-top: double 3px #CCC;
    }

    #pro+section .heading.block_header_6 {
        margin-bottom: 0;
    }

    #pro3+div .heading.block_header_7 .h {
        background: #F0F0F0;
    }

    #pro+section dl {
        flex-direction: column;
    }

    #pro3+div .wrapper_item {
        gap: 5px;
    }

    #pro3+div .inner_item {
        width: 48% !important;
        margin: 0 !important;
        flex-direction: inherit;
    }

    #pro3+div .inner_item_txt {
        margin-top: 0;
    }

    #pro3+div .inner_item_txt a {
        color: #006dd9;
        text-decoration-color: #006dd9 !important;
        margin-left: 5px;
    }
}