@charset "UTF-8";

.p-comparison,
.p-comparison * {
    box-sizing: border-box;
}

.p-comparison {
    padding: 68px 0 86px;
    background-color: #eefaff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22'%3E%3Cpath d='M11 5l6 6-6 6-6-6z' fill='%237fc8ef' fill-opacity='.105'/%3E%3C/svg%3E");
    color: #11457f;
    font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
}

.p-comparison > .l-inner {
    width: min(calc(100% - 40px),1120px);
}

.p-comparison .c-sectionEn {
    margin: 0 0 3px;
    color: #2389d6;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: .08em;
    line-height: 1.3;
    text-align: center;
}

.p-comparison .c-sectionTitle {
    display: block;
    width: 100%;
    margin: 0;
    color: #0d57a1;
    font-size: 3rem;
    font-weight: 900;
    letter-spacing: .02em;
    line-height: 1.35;
    text-align: center;
}

.p-comparison .c-sectionTitle::after {
    display: none;
}

.p-comparison__scroll {
    width: 100%;
    margin-top: 30px;
    padding-top: 16px;
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
}

.p-comparison__table {
    width: min(100%,1000px);
    min-width: 820px;
    margin: 0 auto;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: 0 5px 14px rgba(36,115,166,.1);
    table-layout: fixed;
    text-align: center;
    overflow: visible;
}

.p-comparison__th {
    height: 62px;
    padding: 8px 12px;
    border: 0;
    font-weight: 800;
    line-height: 1.25;
    vertical-align: middle;
}

.p-comparison__th:first-child {
    width: 22%;
    background: transparent;
    box-shadow: none;
}

.p-comparison__th--ours {
    width: 46%;
    position: relative;
    z-index: 2;
    padding-top: 15px;
    padding-bottom: 1px;
    border-radius: 10px 10px 0 0;
    background: #287fd1;
    box-shadow: 0 14px 0 #287fd1;
    color: #fff;
    font-size: 3rem;
    transform: translateY(-14px);
}

.p-comparison__th--other {
    width: 32%;
    background: #999;
    color: #fff;
    font-size: 1.8rem;
}

.p-comparison__rowTitle,
.p-comparison__ours,
.p-comparison__other {
    height: 70px;
    padding: 10px 14px;
    border-top: 0;
    border-bottom: 1px dotted #61aee0;
    line-height: 1.35;
    vertical-align: middle;
}

.p-comparison__rowTitle {
    width: 22%;
    background: rgba(255,255,255,.95);
    color: #1679bd;
    font-size: 1.65rem;
    font-weight: 500;
}

.p-comparison__ours {
    width: 46%;
    border-right: 3px solid #287fd1;
    border-left: 3px solid #287fd1;
    background: #fffdf0;
}

.p-comparison__other {
    width: 32%;
    background: rgba(255,255,255,.95);
    color: #777;
    font-size: 1.55rem;
    font-weight: 500;
}

.p-comparison__mark,
.p-comparison__cross,
.p-comparison__tri {
    display: block;
    margin-bottom: 1px;
    font-size: 2.35rem;
    font-weight: 400;
    line-height: .8;
}

.p-comparison__mark {
    color: #ff6948;
}

.p-comparison__cross,
.p-comparison__tri {
    color: #858585;
}

.p-comparison__strong {
    color: #1678bd;
    font-size: 1.95rem;
    font-weight: 900;
    line-height: 1.25;
}

.p-comparison__table tbody tr:last-child .p-comparison__rowTitle,
.p-comparison__table tbody tr:last-child .p-comparison__other {
    border-bottom-color: transparent;
}

.p-comparison__table tbody tr:last-child .p-comparison__ours {
    border-bottom: 3px solid #287fd1;
}

@media (max-width: 767px) {
    .p-comparison {
        padding: 58px 0 72px;
    }

    .p-comparison > .l-inner {
        width: min(calc(100% - 28px),680px);
    }

    .p-comparison .c-sectionEn {
        font-size: 1.15rem;
    }

    .p-comparison .c-sectionTitle {
        font-size: 2.55rem;
    }

    .p-comparison__scroll {
        margin-top: 24px;
        padding-top: 14px;
        padding-bottom: 6px;
    }

    .p-comparison__table {
        width: 640px;
        min-width: 640px;
        margin-left: 0;
    }

    .p-comparison__th--ours {
        border-radius: 9px 9px 0 0;
        box-shadow: 0 12px 0 #287fd1;
        font-size: 2.15rem;
        transform: translateY(-12px);
    }

    .p-comparison__th--other {
        font-size: 1.35rem;
    }

    .p-comparison__strong {
        font-size: 1.45rem;
    }
}
