@charset "UTF-8";

.product {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px 24px;
    margin-top: 80px;
    margin-bottom: 80px;
}

.product_item {
}

.product_item_link {
    display: block;
}

.product_item_ttl {
    color: var(--c-blue);
    font-weight: 550;
    font-size: 32px;
    line-height: 1.5;
}

.product_item_img {
    margin-top: 8px;
    overflow: hidden;
}

.product_item_img > img {
    display: inline-block;
    transition: transform 0.6s;
}

.product_item_link:hover .product_item_img > img {
    transform: scale(1.1);
    transition: transform 0.2s;
}

.product_item_text {
    margin-top: 12px;
}

.post {
    margin-top: 40px;
}

.post_hd {
    line-height: 1.5;
    text-align: center;
}

.post_ttl {
    color: var(--c-blue);
    font-weight: 500;
    font-size: 32px;
}

.post_en {
    color: #909091;
    font-size: 24px;
}

.post_slide {
    margin: 24px var(--margin-offset) 0;
    background: #f7f2d9;
}

.post_slide_list {
    max-width: 1024px;
    margin: 0 auto;
}

.post_slide_item {
}

.post_thumb {
    margin: 0 var(--margin-offset) 0;
    padding: 24px 64px;
    background: #000000;
}

.post_thumb_list {
    max-width: 1024px;
    margin: 0 auto;
}

.post_thumb_item {
    opacity: 0.7;
    cursor: pointer;
    transition: opacity 0.3s;
}

.post_thumb_item.is-active {
    opacity: 1;
}

.splide__arrow {
    position: absolute;
    top: 50%;
    z-index: 10;
    margin-top: -20px;
    cursor: pointer;
}

.splide__arrow path {
    fill: #a2a2a2;
}

.splide__arrow--prev {
    left: -50px;
    transform: rotate(180deg);
}

.splide__arrow--next {
    right: -50px;
}

.post_cnt {
    max-width: 1024px;
    margin: 32px auto;
}

.post_body {
}

.post_contact {
    margin-top: 48px;
    text-align: center;
}

.post_contact > a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 320px;
    padding: 8px 12px;
    background: var(--c-blue-light);
    color: var(--c-white);
    font-weight: 550;
    font-size: 18px;
}

.post_ft {
    margin-top: 24px;
    text-align: center;
}

.post_ft_list {
    display: inline-block;
    position: relative;
}

.post_ft_list::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--c-base);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.2s var(--ease);
}

.post_ft_list:hover::before {
    transform: scaleX(1);
}

.other {
    margin-top: 80px;
    margin-bottom: 80px;
}

.other_ttl {
    color: var(--c-blue);
    font-weight: 550;
    font-size: 32px;
    line-height: 1.5;
    text-align: center;
}

.other_slide {
    margin-top: 24px;
}

.other_slide .splide__arrows {
    opacity: 0;
    transition: opacity 0.3s;
}

.other_slide:has(.is-overflow) .splide__arrows {
    opacity: 1;
}

.other_list {
}

.other_item {
}

.other_item_link {
    display: grid;
    gap: 12px;
}

.other_item_img {
}

.other_item_ttl {
}

@media screen and (max-width: 1251.98px) {
    .product {
        gap: 40px 24px;
        margin-top: 60px;
        margin-bottom: 40px;
    }

    .product_item {
    }

    .product_item_link {
    }

    .product_item_ttl {
        font-size: 24px;
    }

    .product_item_img {
    }

    .product_item_img > img {
    }

    .product_item_link:hover .product_item_img > img {
    }

    .product_item_text {
    }

    .post {
    }

    .post_hd {
    }

    .post_ttl {
        font-size: 28px;
    }

    .post_en {
        font-size: 18px;
    }

    .post_slide {
    }

    .post_slide_list {
    }

    .post_slide_item {
    }

    .post_thumb {
    }

    .post_thumb_list {
    }

    .post_thumb_item {
    }

    .post_thumb_item.is-active {
    }

    .splide__arrow {
    }

    .splide__arrow path {
    }

    .splide__arrow--prev {
    }

    .splide__arrow--next {
    }

    .post_cnt {
    }

    .post_body {
    }

    .post_contact {
    }

    .post_contact > a {
    }

    .post_ft {
    }

    .post_ft_list {
    }

    .post_ft_list::before {
    }

    .post_ft_list:hover::before {
    }

    .other {
        margin: 60px 0;
    }

    .other_ttl {
    }

    .other_slide {
    }

    .other_slide .splide__arrows {
    }

    .other_slide:has(.is-overflow) .splide__arrows {
    }

    .other_list {
    }

    .other_item {
    }

    .other_item_link {
    }

    .other_item_img {
    }

    .other_item_ttl {
    }
}

@media screen and (max-width: 767.98px) {
    .product {
    grid-template-columns: 1fr;
    }

    .product_item {
    }

    .product_item_link {
    }

    .product_item_ttl {
    font-size: 20px;
    }

    .product_item_img {
    }

    .product_item_img > img {
    }

    .product_item_link:hover .product_item_img > img {
    }

    .product_item_text {
    }

    .post {
    }

    .post_hd {
    }

    .post_ttl {
    font-size: 24px;
    }

    .post_en {
    font-size: 15px;
    }

    .post_slide {
    }

    .post_slide_list {
    }

    .post_slide_item {
    }

    .post_thumb {
    padding: 16px 32px;
    }

    .post_thumb_list {
    }

    .post_thumb_item {
    }

    .post_thumb_item.is-active {
    }

    .splide__arrow {
    margin-top: -16px;
    width: 32px;
    }

    .splide__arrow path {
    }

    .splide__arrow--prev {
    left: -32px;
    }

    .splide__arrow--next {
    right: -32px;
    }

    .post_cnt {
    margin: 32px 0 0;
    }

    .post_body {
    }

    .post_contact {
    margin-top: 40px;
    }

    .post_contact > a {
    font-size: 16px;
    max-width: 100%;
    }

    .post_ft {
    margin-top: 20px;
    }

    .post_ft_list {
    }

    .post_ft_list::before {
    }

    .post_ft_list:hover::before {
    }

    .other {
    margin: 50px 0 32px;
    }

    .other_ttl {
    font-size: 24px;
    }

    .other_slide {
    padding: 0 32px;
    margin: 24px var(--margin-offset);
    }

    .other_slide .splide__arrows {
    }

    .other_slide:has(.is-overflow) .splide__arrows {
    }

    .other_list {
    }

    .other_item {
    }

    .other_item_link {
    }

    .other_item_img {
    }

    .other_item_ttl {
    }
}
