﻿@charset "UTF-8";
/* ==========================================================================
    アコーディオン
   ========================================================================== */
.proc-item {
    border-bottom: 1px solid #e5e7eb !important;
    transition: border-color 0.3s !important;
}

.proc-trigger {
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 15px 15px 10px !important;
    background: none !important;
    border: none !important;
    text-align: left !important;
    cursor: pointer !important;
    outline: none !important;
}

.proc-icon {
    flex-shrink: 0 !important;
    width: 20px !important;
    height: 20px !important;
    color: #6b7280 !important;
    transition: color 0.3s ease !important;
}

.proc-icon .line-vertical {
    transform-origin: center !important;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s ease !important;
}

.proc-item.is-open .proc-icon .line-vertical {
    transform: rotate(90deg) !important;
    opacity: 0 !important;
}

.proc-content-wrapper {
    overflow: hidden !important;
    background-color: #f2f2f2 !important;
    display: none; 
}

.row .ttl {
    font-size: 2.4rem !important;
    font-weight: bold !important;
    padding: 15px 0 5px 0 !important;
}

@media screen and (max-width: 768px) {
    .row .ttl {
        font-size: 1.6rem !important;
    }
}

/* ==========================================================================
    横スクロールスライダー設計（ss-carousel Gridレイアウト）
   ========================================================================== */
.ss-carousel-wrapper {
    padding: 20px 60px !important;
}
@media screen and (max-width: 767px) {
    .ss-carousel-wrapper {
        padding: 20px 10px !important;
    }
}
.ss-slide .item.k-howto-box {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    background-color: #fff;
    padding: 30px 30px 20px 30px;
}

.k-howto-img {
    text-align: center;
}
.k-howto-img img {
    border: 2px #666666 solid;
}

.k-howto-txt {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important; 
    justify-content: center !important; 
    width: 100% !important;
    margin-top: auto !important; 
    padding-top: 15px !important;
}
.k-howto-txt dt {
    flex-shrink: 0 !important;
    margin-right: 10px !important; 
}
.k-howto-txt dt span {
    display: block;
    width: 45px;
    height: 45px;
    background-color: #999;
    border-radius: 22.5px;
    font-size: 2.4rem;
    font-weight: 500;
    text-align: center;
    line-height: 45px;
    color: #fff;
}

.k-howto-txt dd {
    flex-grow: 1 !important;
    white-space: normal !important; 
    text-align: left !important; 
}

@media (max-width: 767px) {
    .k-howto-img img {
        width: 90%;
    }
    .k-howto-txt dt span {
        display: block;
        width: 30px;
        height: 30px;
        background-color: #999;
        border-radius: 15px;
        font-size: 1.5rem;
        font-weight: 500;
        text-align: center;
        line-height: 30px;
        color: #fff;
    }
}
