/* ============================================================
ぱっとレジ用css
URL：/patto-regi/
============================================================ */

/* ============================================================
共通
============================================================ */
.section_heading_under_text{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 32px;
  /* PC */
    @media screen and (min-width: 768px){
        margin-bottom: 40px;
        text-align: center;
        font-size: 20px;
    }
}
.section_end_text{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
    margin-top: 32px;
    text-align: center;
    /* PC */
    @media screen and (min-width: 768px){
        
        font-size: 20px;
        margin-top: 40px;
    }
}

/* ============================================================
メインビジュアル
============================================================ */
.main_visual{
    padding-bottom: 48px;
    .main_visual__inner{
        display: flex;
        flex-direction: column-reverse;
        gap: 16px;
        .main_visual__desc{
            display: flex;
            flex-direction: column;
            align-items: center;
            padding: 0 16px;
            .main_visual__heading__sub{
                font-size: 20px;
                font-weight: bold;
                text-align: center;
                line-height: 1.4;
                color: #44AE35;
            }
            .main_visual__heading{
                width: 280px;
                margin: 16px auto 24px;
                img{
                    width: 100%;
                }
            }
            .main_visual__heading_under{
                font-size: 18px;
                text-align: center;
                line-height: 1.5;
                margin-bottom: 16px;
            }
            .main_visual__heading_text{
                font-size: 16px;
                line-height: 1.4;
            }
            .check_text__wrapper{
                margin-top: 12px;
                width: 100%;
                display: flex;
                flex-direction: column;
                gap: 4px;
                .check_text{
                    --check-text-size: 14px;
                }
            }
        }
        .main_visual__img{
            img{
                width: 100%;
            }
        }
    }
    

}

/* PC */
@media screen and (min-width: 768px){
    .main_visual{
        padding: 0 12px;
        height: 650px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding-bottom: 0;
        .main_visual__inner{
            flex-direction: row;
            justify-content: center;
            align-items: center;
            gap: clamp(30px, 3vw, 56px);
            .main_visual__desc{
                align-items: flex-start;
                flex-shrink: 0;
                .main_visual__heading__sub{
                    font-size:24px;
                    text-align: left;
                    line-height: 1.3;
                }
                .main_visual__heading{
                    width: 300px;
                    margin: 16px  0 ;
                }
               .main_visual__heading_under{
                    font-size: 20px;
                    text-align: left;
                }
                .main_visual__heading_text{
                    font-size: 16px;
                    line-height: 1.7;
                }
                .check_text__wrapper{
                    gap:8px;
                    .check_text{
                        --check-text-size: 16px;
                        --check-text-height: 1.4;
                        --check-text-padding-left: 30px;
                        --check-icon-size: 24px;
                        --check-icon-margin-top: 1px;
                    }
                }
            }
            .main_visual__img{
                max-width: 687px;
            }
        }
    }
   
}


/* ============================================================
こんなお悩みありませんか？
============================================================ */
.problem_section{
    &.--bg{
        --bg--color: #EBF7EB;
    }
    .problem_content{
        display: grid;
        grid-template-columns : 1fr ;
        gap: 32px;
        .problem_content__item{
            background-color: #fff;
            border-radius: 8px;
            border: 3px solid #89CF81;
            padding: 32px 20px;
            width: 100%;
        }
        .problem_content__item__heading{
            font-size: 18px;
            margin-bottom: 16px;
            text-align: center;
        }
        .problem_content__item__img{
            height: 81px;
            margin: 0 auto 24px;
        }
        .problem_content__item__text{
            line-height: 1.6;
            text-align: left;
        }
    }
    /* PC */
    @media screen and (min-width: 768px){
        .problem_content{
            grid-template-columns: repeat(3, 1fr);
            .problem_content__item{
               
            }
            .problem_content__item__heading{
                
            }
            .problem_content__item__img{
                
            }
            .problem_content__item__text{
                text-align: center;
            }
        }
    }
}



/* ============================================================
「ぱっとレジ」でできること
============================================================ */
.feature_section{
    &.--bg{
        --bg--color: #EBF7EB;
    }
}

/* ============================================================
「ぱっとレジ」が選ばれる6つの理由
============================================================ */
.reason_section{
    .reason_content{
        display: grid;
        gap: 48px;
        .reason_content__item{
            text-align: left;
            .reason_content__item__img{
                width: 100%;
                aspect-ratio: 4 / 3;
                height: auto;
                margin-bottom: 16px;
                img{
                    width: 100%;
                }
            }
            h4{
                font-size: 18px;
                line-height: 1.4;
                font-weight: bold;
            }
            p{
                margin-top: 8px;
                font-size: 14px;
                line-height: 1.6;
            }
        }
    }
    /* PC */
    @media screen and (min-width: 768px){
        .reason_content{
            grid-template-columns: repeat(3, 1fr);
            gap: 40px;
            .reason_content__item{
                .reason_content__item__img{
                    width: 100%;
                }
                h4{
                    font-size: 20px;
                    margin-top: 24px;
                }
                p{
                    font-size: 16px;
                    margin-top: 16px;
                }
            }
        }
    }
}

/* ============================================================
他社とのサービス比較
============================================================ */
.comparison_section{
    .comparison_content{
        width: calc(100% + 16px);
        .comparison_table_scroll{
            overflow-x: auto;
            padding-bottom: 4px;
            -webkit-overflow-scrolling: touch;
            @media screen and (max-width: 767px){
                .scroll_hint_table_wrapper{
                    padding-right: 16px;
                }
            }
        }
        .comparison_table{
            --scroll-hint-table-width: 840px;
            --column-01-width: 160px;
            --column-02-width: 240px;
            --column-03-width: 220px;
            --column-04-width: 220px;
            --comparison-green: #44AF35;
            --comparison-gray: #F5F5F5;
            --comparison-border: #d9d9d9;
            border-collapse: separate;
            border-spacing: 0;
            /* table-layout: fixed; */
            margin-top: 0;
            background-color: #fff;
            font-weight: bold;
            position: relative;
            margin-bottom: 5px;
            &:before{
                content: "";
                position: absolute;
                top: 0;
                left: var(--column-01-width);
                width: var(--column-02-width);
                bottom: -3px;
                border: 5px solid var(--comparison-green);
                pointer-events: none;
                border-radius: 8px 8px 0 0;
            }

            
            th,
            td{
                width: auto;
                border-right: 2px solid var(--comparison-border);
                border-bottom: 2px solid var(--comparison-border);
                padding: 16px 12px;
                text-align: center;
                vertical-align: middle;
                font-size: 16px;
                line-height: 1.5;
                letter-spacing: 0;
                font-weight: bold;
            }
            tr > *:nth-child(1){
                width: var(--column-01-width);
            }
            tr > *:nth-child(2){
                width: var(--column-02-width);
            }
            tr > *:nth-child(3){
                width: var(--column-03-width);
            }
            tr > *:nth-child(4){
                width: var(--column-04-width);
            }
            tr:not(.first_line) > *:first-child{
                border-left: 0;
            }
            tr > *:last-child{
                border-right: 0;
            }
            tr:not(.first_line) > th{
                background-color: #F3FAF3;
                color: var(--comparison-green);
                font-size: 18px;
                border-right: 0;
            }
            td{
                background-color: #fff;
            }
            
            .first_line{
                th{
                    font-size: 18px;
                    color: #fff;
                    border: 0;
                    padding: 16px 10px;
                    font-weight: bold;
                    &:first-child{
                        width: var(--column-01-width);
                        background-color: transparent;
                        border-right: 0;
                    }
                    &:nth-child(2){
                        background-color: var(--comparison-green);
                        border-top: 3px solid var(--comparison-green);
                        border-right: 3px solid var(--comparison-green);
                        border-left: 3px solid var(--comparison-green);
                        width: var(--column-02-width);
                    }
                    &:nth-child(3){
                        border-right: 2px solid #fff;
                        width: var(--column-03-width);
                    }
                    &:nth-child(4){
                        border-right: 0;
                        width: var(--column-04-width);
                    }
                    &:nth-child(3),
                    &:nth-child(4){
                        background-color: var(--comparison-gray);
                        border-left: 2px solid #fff;
                        color: var(--comparison-green);
                    }

                    &:nth-child(2),
                    &:nth-child(3),
                    &:nth-child(4){
                        border-top-left-radius: 8px;
                        border-top-right-radius: 8px;
                    }
                    
                    
                }
            }
            
        }
        
    }
    /* PC */
    @media screen and (min-width: 768px){
        .comparison_content{
            width: 100%;
            .comparison_table{
                width: 100%;
                min-width: 0;
                --column-01-width: 18%;
                --column-02-width: 30%;
                --column-03-width: 26%;
                --column-04-width: 26%;
                font-size: 18px;
                margin-bottom: 0;
                th,
                td{
                    padding: 24px 16px;
                }
                
                .first_line{
                    th{
                        padding: 24px 16px;
                    }
                }
                
            }
            
        }
    }
}

/* ============================================================
＜管理担当者＞「ぱっとレジ」の管理・運用方法
============================================================ */
.use-admin_section{
    &.--bg{
        background-color: #EBF7EB;
    }
    .check_list{
        display: flex;
        gap: 8px 16px;
        flex-wrap: wrap;
        .check_text{
            --check-text-padding-left:26px;
            font-size: 14px;
        }
    }
    .use-admin_desc{
        margin-top: 64px;
        padding: 16px 20px;
        background-color: #fff;
        border: 2px solid #44AF35;
        border-radius: 8px;
        font-size: 16px;
        line-height: 1.7;
        text-align: center;
        font-weight: bold;
    }
    /* PC */
    @media screen and (min-width: 768px){
        /* .two_column_content__img{
            width: 60%;
        }
        .two_column_content__desc{
            width: 40%;
        } */
        .check_list{
            gap: 24px;
            .check_text{
                font-size: 16px;
            }
        }
        .use-admin_desc{
            margin: 80px auto 0;
            padding: 32px 24px;
            font-size: 20px;
            max-width: 800px;
        }
    }
}

/* ============================================================
＜従業員＞「ぱっとレジ」の使い方
============================================================ */
.use-staff_section{
    .use-staff_content{
        max-width: 800px;
        margin: auto;
    }
}

/* ============================================================
「ぱっとレジ」の使い方ムービー
============================================================ */
.movie_section{
    .movie_under_notes{
        max-width: 640px;
        text-align: center;
        font-size: 14px;
        margin: auto;
    }
}

/* ============================================================
導入までの流れ
============================================================ */
.flow_section{
    &.--bg{
        background-color: #EBF7EB;
    }
    /* PC */
    @media screen and (min-width: 768px){
        .introduction_flow__item__heading{
            display: flex;
            justify-content: center;
            align-items: center;
        }
    }
}

/* ============================================================
料金
============================================================ */
.price_section{
    .price_content{
        width: calc(100% + 16px);
        .price_table_scroll{
            overflow-x: auto;
            padding-bottom: 4px;
            -webkit-overflow-scrolling: touch;
            @media screen and (max-width: 767px){
                .scroll_hint_table_wrapper{
                    padding-right: 16px;
                }
            }
        }
        .price_table{
            --scroll-hint-table-width: 800px;
            --column-01-width: 140px;
            --column-02-width: 220px;
            --column-03-width: 220px;
            --price-green: #45B035;
            --price-blue: #123987;
            --price-border: #d9d9d9;
            border-collapse: separate;
            border-spacing: 0;
            table-layout: fixed;
            margin-top: 0;
            background-color: #fff;
            
            th,
            td{
                width: auto;
                border-right: 1px solid var(--price-border);
                border-bottom: 1px solid var(--price-border);
                padding: 16px 12px;
                text-align: center;
                vertical-align: middle;
                font-size: 16px;
                line-height: 1.5;
                letter-spacing: 0;
                font-weight: bold;
            }
            tr > *:nth-child(1){
                width: var(--column-01-width);
            }
            tr > *:nth-child(2){
                width: var(--column-02-width);
            }
            tr > *:nth-child(3){
                width: var(--column-03-width);
            }
            tr:not(.first_line) > *:first-child{
                border-left: 0;
            }
            tr > *:last-child{
                border-right: 0;
            }
            tr:not(.first_line) > th{
                width: var(--column-01-width);
                background-color: #F3FAF3;
                color: var(--price-green);
                font-size: 18px;
            }
            td{
                background-color: #fff;
                .text_small{
                    font-size: 14px;
                }
                .price_img{
                    width: 240px;
                    margin: 8px auto 0;
                }
                .mini_price_table{
                    width: 240px;
                    margin: 8px auto 0;
                    color: #45B035;
                    border-collapse: collapse;
                    th,td{
                        border: 1px solid #d9d9d9 !important;
                        padding: 4px 8px;
                    }
                    th{
                        width: 50%;
                        background-color: #F3FAF3;
                    }
                }
            }
            .first_line{
                th{
                    width: var(--column-02-width);
                    font-size: 18px;
                    color: #fff;
                    border: 0;
                    padding: 16px 10px;

                    &:first-child{
                        width: var(--column-01-width);
                        background-color: transparent;
                        border-right: 0;
                    }

                    &:nth-child(2){
                        border-right: 1px solid #fff;
                    }
                    &:nth-child(3){
                        border-left: 1px solid #fff;
                        border-right: 0;
                    }

                    &:nth-child(2),
                    &:nth-child(3){
                        border-top-left-radius: 8px;
                        border-top-right-radius: 8px;
                        background-color: var( --price-green);
                    }
                    
                    
                }
            }
            
        }
        .price_notes{
            display: grid;
            gap: 2px;
            margin-top: 8px;
            font-size: 10px;
        }
    }
    /* PC */
    @media screen and (min-width: 768px){
        .price_content{
            width: 100%;
            
            .price_table{
                width: 100%;
                min-width: 0;
                --column-01-width: 19.2308%;
                --column-02-width: 26.923%;
                --column-03-width: 26.923%;
                
                th,
                td{
                    padding: 24px 16px;
                    font-size: 18px;
                }
                
                .first_line{
                    th{
                        padding: 24px 16px;
                        font-size: 18px;
                    }
                }
            }
            
        }
    }
}

/* ============================================================
導入事例
============================================================ */
.case_section{
    .other_app_link{
        margin-top: 64px;
        .patto-regi-link{
            display: flex;
            flex-direction: column;
            margin: 40px auto 0;
            width: 70%;
            background-color: #fff;
            box-shadow: 0px 0px 6px -3px rgba(0, 0, 0, .5);
            border-radius: 8px;
            overflow: hidden;
            &:hover{
                opacity: 0.8;
                transition: 0.3s;
            }
            .patto-regi-link__left{
                width: 100%;
            }
            .patto-regi-link__right{
                width: 100%;
                padding: 24px;
                .img_fluid{
                    width: 64%;
                    margin: auto;
                }
                h3{
                    text-align: center;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    height: 3.2em;
                    line-height: 1.414;
                    font-size: 18px;
                    color: #44af35;
                    background-color: transparent;
                    padding: 0;
                }
                p{
                    text-align: left;
                    color: #2b2b2b;
                    font-size: 14px;
                }
            }
        }
    }
    

    /* PC */
    @media screen and (min-width: 768px){
        .other_app_link{
            margin-top: 80px;
            .patto-regi-link{
                flex-direction: row;
                width: 600px;
                .patto-regi-link__left{
                    width: 250px;
                    flex-shrink: 0;
                }
            }
        }
    }

}

