@charset "UTF-8";

body {
    position: relative;
    font-family: "Noto Sans JP", sans-serif;
    font-size: min(calc(20vw / 1480 * 100), 20px);
    color: #444;
    line-height: 1.5;
    overflow-x: hidden;
}

img {
    width: 100%;
    vertical-align: top;
    transition: all 0.3s;
}

iframe {
    width: 100%;
    height: 100%;
}

video {
    width: 100%;
    height: 100%;
}

a {
    text-decoration: underline;
}

a:hover {
    text-decoration: none;
}

a img:hover {
    opacity: 0.7;
}

section {
    position: relative;
}

.inner {
    position: relative;
    width: min(calc(1080vw / 1480 * 100), 1080px);
    margin: 0 auto;
}

.show-sp {
    display: none;
}

.asta {
    font-size: 0.5em;
    vertical-align: top;
}

.num {
    font-family: "Poppins", sans-serif;
}

.common-sec {
    position: relative;
}

@media (max-width: 750px) {
    body {
        font-size: calc(20vw / 390 * 100);
    }

    .inner {
        width: calc(350vw / 390 * 100);
    }

    .show-pc {
        display: none;
    }

    .show-sp {
        display: block;
    }
}

@keyframes gatagata {
    0% {
        transform: translate(4px, 0px);
    }

    5% {
        transform: translate(-4px, 0px);
    }

    10% {
        transform: translate(4px, 0px);
    }

    15% {
        transform: translate(-4px, 0px);
    }

    20% {
        transform: translate(4px, 0px);
    }

    25% {
        transform: translate(-4px, 0px);
    }

    30% {
        transform: translate(0px, 0px);
    }
}

@keyframes kira-n {
    0% {
        transform: scale(0) rotate(45deg);
        opacity: 0;
    }

    80% {
        transform: scale(0) rotate(45deg);
        opacity: 0.5;
    }

    81% {
        transform: scale(4) rotate(45deg);
        opacity: 1;
    }

    100% {
        transform: scale(50) rotate(45deg);
        opacity: 0;
    }
}


/* modal */
.modal {
    position: fixed;
    top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 20;
}

.modal .inner {
    background-color: #fff;
    width: min(calc(640vw / 1480 * 100), 640px);
    border-radius: min(calc(10vw / 1480 * 100), 10px);
    text-align: center;
}

.modal-cnt {
    width: 100%;
    max-height: 90vh;
    padding: min(calc(30vw / 1480 * 100), 30px) min(calc(40vw / 1480 * 100), 40px);
    -ms-overflow-style: none;
    scrollbar-width: none;
    overflow-y: scroll;
}

.modal-cnt::-webkit-scrollbar {
    display: none;
}

.modal-close-btn {
    position: absolute;
    top: max(calc(-40vw / 1480 * 100), -40px);
    right: max(calc(-40vw / 1480 * 100), -40px);
    width: min(calc(80vw / 1480 * 100), 80px);
    cursor: pointer;
}

.modal-sub-head {
    font-size: min(calc(22vw / 1480 * 100), 22px);
    font-weight: bold;
}

.modal-head {
    font-size: min(calc(48vw / 1480 * 100), 48px);
    font-weight: bold;
    line-height: 1.2;
}

.modal-img {
    width: min(calc(348vw / 1480 * 100), 348px);
    margin: min(calc(20vw / 1480 * 100), 20px) auto 0;
}

.modal-company {
    margin-top: min(calc(10vw / 1480 * 100), 10px);
    font-size: min(calc(32vw / 1480 * 100), 32px);
    font-weight: bold;
    color: #E53333;
}

.modal-txt {
    margin-top: min(calc(10vw / 1480 * 100), 10px);
    font-size: min(calc(22vw / 1480 * 100), 22px);
}

.modal-btn {
    position: relative;
    margin-top: min(calc(15vw / 1480 * 100), 15px);
    animation: gatagata 2s infinite;
    overflow: hidden;
}

.modal-btn::before {
    content: '';
    position: absolute;
    display: inline-block;
    top: max(calc(-180vw / 1480 * 100), -180px);
    left: 0;
    width: min(calc(30vw / 1480 * 100), 30px);
    height: 100%;
    background-color: #fbfbfb;
    animation: kira-n 2s ease-in-out infinite;
}

.modal-notes-list {
    margin-top: min(calc(20vw / 1480 * 100), 20px);
}

.modal-notes {
    display: flex;
    font-size: min(calc(12vw / 1480 * 100), 12px);
    color: #888;
    text-align: left;
}

@media (max-width: 750px) {
    .modal .inner {
        width: calc(350vw / 390 * 100);
        border-radius: calc(10vw / 390 * 100);
    }

    .modal-cnt {
        padding: calc(20vw / 390 * 100) calc(20vw / 390 * 100);
    }

    .modal-close-btn {
        top: calc(-20vw / 390 * 100);
        right: calc(-20vw / 390 * 100);
        width: calc(56vw / 390 * 100);
    }

    .modal-sub-head {
        font-size: calc(14vw / 390 * 100);
    }

    .modal-head {
        font-size: calc(24vw / 390 * 100);
    }

    .modal-img {
        width: calc(191vw / 390 * 100);
        margin: calc(20vw / 390 * 100) auto 0;
    }

    .modal-company {
        margin-top: calc(10vw / 390 * 100);
        font-size: calc(18vw / 390 * 100);
    }

    .modal-txt {
        margin-top: calc(10vw / 390 * 100);
        font-size: calc(14vw / 390 * 100);
    }

    .modal-btn {
        margin-top: calc(15vw / 390 * 100);
    }

    .modal-btn::before {
        top: calc(-180vw / 390 * 100);
        width: calc(30vw / 390 * 100);
    }

    .modal-notes-list {
        margin-top: calc(20vw / 390 * 100), ;
    }

    .modal-notes {
        font-size: calc(10vw / 390 * 100);
    }
}

/* header */
.header {
    position: fixed;
    top: 0;
    background-color: #fff;
    width: 100%;
    height: min(calc(90vw / 1480 * 100), 90px);
    border-bottom: min(calc(1vw / 1480 * 100), 1px) solid #D5D5D5;
    z-index: 10;
}

.header .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: min(calc(1480vw / 1480 * 100), 1480px);
    height: 100%;
    margin: 0 auto;
    padding: 0 min(calc(20vw / 1480 * 100), 20px);
}

.header-logo {
    width: min(calc(262vw / 1480 * 100), 262px);
}

.header-btn {
    width: min(calc(250vw / 1480 * 100), 250px);
}

@media (max-width: 750px) {
    .header {
        height: calc(64vw / 390 * 100);
        border-bottom: calc(1vw / 390 * 100) solid #D5D5D5;
    }

    .header .inner {
        width: 100%;
        padding: 0 calc(20vw / 390 * 100);
    }

    .header-logo {
        width: calc(180vw / 390 * 100);
    }

    .header-btn {
        width: calc(152vw / 390 * 100);
    }
}

/* fv */
.fv {
    background-image: url(../img/pc/fv_bg.png);
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
    margin-top: min(calc(90vw / 1480 * 100), 90px);
}

.fv .inner {
    width: min(100%, 1480px);
}

@media (max-width: 750px) {
    .fv {
        background: none;
        margin-top: calc(64vw / 390 * 100);
    }

    .fv .inner {
        width: 100%;
    }
}

/* step */
.step {
    padding: min(calc(25vw / 1480 * 100), 25px) 0 min(calc(100vw / 1480 * 100), 100px);
    text-align: center;
}

.step-company-list {
    display: flex;
    justify-content: space-between;
}

.step-company {
    width: min(calc(252vw / 1480 * 100), 252px);
}

.step-top {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #F26060;
    height: min(calc(60vw / 1480 * 100), 60px);
    margin-top: min(calc(25vw / 1480 * 100), 25px);
    font-size: min(calc(18vw / 1480 * 100), 18px);
    font-weight: bold;
    color: #fff;
    border-radius: min(calc(50vw / 1480 * 100), 50px);
}

.step-sub-head {
    margin-top: min(calc(75vw / 1480 * 100), 75px);
    font-size: min(calc(32vw / 1480 * 100), 32px);
    font-weight: bold;
    line-height: 1;
}

.step-head {
    font-size: min(calc(48vw / 1480 * 100), 48px);
    font-weight: bold;
    line-height: 1;
}

.step-head .accent {
    font-family: "Poppins", sans-serif;
    color: #F26060;
}

.step-head .num {
    font-size: min(calc(64vw / 1480 * 100), 64px);
}

.step-box-list {
    display: flex;
    justify-content: space-between;
    margin-top: min(calc(85vw / 1480 * 100), 85px);
}

.step-box {
    position: relative;
    background-color: #F0F0F0;
    width: min(calc(332vw / 1480 * 100), 332px);
    padding: min(calc(40vw / 1480 * 100), 40px) min(calc(30vw / 1480 * 100), 30px) min(calc(30vw / 1480 * 100), 30px);
    border-radius: min(calc(10vw / 1480 * 100), 10px);
}

.step-box+.step-box::before {
    content: "";
    background-color: #C6C6C6;
    display: block;
    position: absolute;
    top: min(calc(174vw / 1480 * 100), 174px);
    left: max(calc(-32vw / 1480 * 100), -32px);
    width: min(calc(18vw / 1480 * 100), 18px);
    height: min(calc(30vw / 1480 * 100), 30px);
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.step-box-top {
    font-family: "Poppins", sans-serif;
    position: absolute;
    top: max(calc(-25vw / 1480 * 100), -25px);
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #F26060;
    width: min(calc(95vw / 1480 * 100), 95px);
    height: min(calc(50vw / 1480 * 100), 50px);
    margin: 0 auto;
    font-size: min(calc(16vw / 1480 * 100), 16px);
    font-weight: bold;
    color: #fff;
    border-radius: min(calc(50vw / 1480 * 100), 50px);
}

.step-box-top .num {
    font-size: min(calc(25vw / 1480 * 100), 25px);
}

.step-box-icon {
    width: min(calc(197vw / 1480 * 100), 197px);
    margin: 0 auto;
}

.step-box-head {
    display: flex;
    justify-content: center;
    align-items: center;
    height: min(calc(72vw / 1480 * 100), 72px);
    margin-top: min(calc(10vw / 1480 * 100), 10px);
    font-size: min(calc(28vw / 1480 * 100), 28px);
    font-weight: bold;
    line-height: 1.3;
}

.step-box-txt {
    margin-top: min(calc(15vw / 1480 * 100), 15px);
    font-size: min(calc(16vw / 1480 * 100), 16px);
    text-align: left;
}

@media (max-width: 750px) {
    .step {
        padding: calc(30vw / 390 * 100) 0 calc(65vw / 390 * 100);
    }

    .step-company-list.show-pc {
        display: none;
    }

    .step-company {
        width: calc(252vw / 390 * 100);
    }

    .step-top {
        flex-direction: column;
        height: calc(70vw / 390 * 100);
        margin-top: 0;
        font-size: calc(15vw / 390 * 100);
        border-radius: calc(50vw / 390 * 100);
    }

    .step-sub-head {
        margin-top: calc(65vw / 390 * 100);
        font-size: calc(22vw / 390 * 100);
    }

    .step-head {
        margin-top: calc(20vw / 390 * 100);
        font-size: calc(32vw / 390 * 100);
    }

    .step-head .accent {
        display: inline-block;
        margin-top: calc(10vw / 390 * 100);
        font-size: calc(40vw / 390 * 100);
    }

    .step-head .num {
        font-size: calc(56vw / 390 * 100);
    }

    .step-box-list {
        flex-direction: column;
        margin-top: calc(60vw / 390 * 100);
    }

    .step-box {
        width: 100%;
        padding: calc(30vw / 390 * 100) calc(30vw / 390 * 100) calc(30vw / 390 * 100);
        border-radius: calc(10vw / 390 * 100);
    }

    .step-box+.step-box {
        margin-top: calc(60vw / 390 * 100);
    }

    .step-box+.step-box::before {
        top: calc(-55vw / 390 * 100);
        left: 0;
        right: 0;
        width: calc(18vw / 390 * 100);
        height: calc(30vw / 390 * 100);
        margin: 0 auto;
        transform: rotate(90deg);
    }

    .step-box-top {
        top: calc(-17vw / 390 * 100);
        width: calc(80vw / 390 * 100);
        height: calc(35vw / 390 * 100);
        font-size: calc(16vw / 390 * 100);
        border-radius: calc(50vw / 390 * 100);
    }

    .step-box-top .num {
        padding-left: calc(4vw / 390 * 100);
        font-size: calc(25vw / 390 * 100);
    }

    .step-box-icon {
        width: calc(177vw / 390 * 100);
    }

    .step-box-head {
        height: auto;
        margin-top: calc(10vw / 390 * 100);
        font-size: calc(24vw / 390 * 100);
    }

    .step-box-txt {
        margin-top: calc(20vw / 390 * 100);
        font-size: calc(14vw / 390 * 100);
        text-align: center;
        line-height: 1.7;
    }
}

/* ranking */
.ranking {
    background-color: #FFE3E3;
    padding: min(calc(85vw / 1480 * 100), 85px) 0 min(calc(80vw / 1480 * 100), 80px);
}

.ranking.result {
    display: none;
}

.ranking-sub-head {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    font-size: min(calc(32vw / 1480 * 100), 32px);
    font-weight: bold;
    text-align: center;
    line-height: 1;
}

.ranking-sub-head::before,
.ranking-sub-head::after {
    content: "";
    display: block;
    width: min(calc(1vw / 1480 * 100), 1px);
    height: min(calc(40vw / 1480 * 100), 40px);
    margin: 0 min(calc(15vw / 1480 * 100), 15px);
    border-right: min(calc(4vw / 1480 * 100), 4px) dotted #F26060;
}

.ranking-sub-head::before {
    transform: rotate(-20deg);
}

.ranking-sub-head::after {
    transform: rotate(20deg);
}

.ranking-head {
    margin-top: min(calc(20vw / 1480 * 100), 20px);
    font-size: min(calc(48vw / 1480 * 100), 48px);
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
}

.ranking-head .accent {
    color: #F26060;
}

.ranking-box-list {
    margin-top: min(calc(55vw / 1480 * 100), 55px);
}

.ranking-box {
    position: relative;
    background-color: #fff;
    padding-bottom: min(calc(40vw / 1480 * 100), 40px);
    border-radius: min(calc(10vw / 1480 * 100), 10px);
}

.ranking-box+.ranking-box {
    margin-top: min(calc(30vw / 1480 * 100), 30px);
}

.ranking-box-head-area {
    position: relative;
    padding: min(calc(32vw / 1480 * 100), 32px) 0;
    border-bottom: min(calc(1vw / 1480 * 100), 1px) solid #C6C6C6;
}

.ranking-box-inner {
    width: min(calc(960vw / 1480 * 100), 960px);
    margin: 0 auto;
}

.ranking-box-head-area .ranking-box-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.ranking-box-head {
    display: flex;
    align-items: center;
    font-size: min(calc(56vw / 1480 * 100), 56px);
    font-weight: bold;
    color: #E53333;
}

.ranking-box-head::before {
    content: "";
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    width: min(calc(110vw / 1480 * 100), 110px);
    height: min(calc(94vw / 1480 * 100), 94px);
    margin-right: min(calc(30vw / 1480 * 100), 30px);
}

.ranking-box:nth-child(1) .ranking-box-head::before {
    background-image: url(../img/pc/ranking_icon_01.png);
}

.ranking-box:nth-child(2) .ranking-box-head::before {
    background-image: url(../img/pc/ranking_icon_02.png);
}

.ranking-box:nth-child(3) .ranking-box-head::before {
    background-image: url(../img/pc/ranking_icon_03.png);
}

.ranking-box:nth-child(4) .ranking-box-head::before {
    background-image: url(../img/pc/ranking_icon_04.png);
}

.ranking-box-head-star {
    width: min(calc(315vw / 1480 * 100), 315px);
}

.ranking-box-head-info {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #C6C6C6;
    position: absolute;
    bottom: max(calc(-13vw / 1480 * 100), -13px);
    right: 0;
    padding: min(calc(5vw / 1480 * 100), 5px) min(calc(10vw / 1480 * 100), 10px);
    font-size: min(calc(13vw / 1480 * 100), 13px);
    color: #fff;
    border-radius: min(calc(50vw / 1480 * 100), 50px) 0 0 min(calc(50vw / 1480 * 100), 50px);
}

.ranking-box-txt {
    margin-top: min(calc(30vw / 1480 * 100), 30px);
    font-size: min(calc(36vw / 1480 * 100), 36px);
    font-weight: bold;
}

.ranking-box-txt .accent {
    color: #F26060;
}

.ranking-box-point-area {
    display: flex;
    justify-content: space-between;
    margin-top: min(calc(40vw / 1480 * 100), 40px);
}

.ranking-box-point-img {
    width: min(calc(350vw / 1480 * 100), 350px);
}

.ranking-box-point-details {
    position: relative;
    background-color: #FFF9E6;
    width: min(calc(580vw / 1480 * 100), 580px);
    margin-top: min(calc(25vw / 1480 * 100), 25px);
    padding: min(calc(55vw / 1480 * 100), 55px) min(calc(40vw / 1480 * 100), 40px) min(calc(45vw / 1480 * 100), 45px);
    border-radius: min(calc(10vw / 1480 * 100), 10px);
}

.ranking-box-point-details-top {
    position: absolute;
    top: max(calc(-25vw / 1480 * 100), -25px);
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #27A5EA;
    width: min(calc(244vw / 1480 * 100), 244px);
    height: min(calc(53vw / 1480 * 100), 53px);
    font-size: min(calc(20vw / 1480 * 100), 20px);
    font-weight: bold;
    color: #fff;
    border-radius: min(calc(50vw / 1480 * 100), 50px) min(calc(50vw / 1480 * 100), 50px) 0 min(calc(50vw / 1480 * 100), 50px);
}

.ranking-box-point-details-txt {
    font-size: min(calc(28vw / 1480 * 100), 28px);
    font-weight: bold;
    padding-left: min(calc(30vw / 1480 * 100), 30px);
    text-indent: max(calc(-30vw / 1480 * 100), -30px);
    line-height: 1.3;
}

.ranking-box-point-details-txt::before {
    content: "";
    background-color: #F26060;
    display: inline-block;
    width: min(calc(13vw / 1480 * 100), 13px);
    height: min(calc(17vw / 1480 * 100), 17px);
    margin-right: min(calc(15vw / 1480 * 100), 15px);
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.ranking-box-point-details-txt .accent {
    color: #F26060;
}

.ranking-box-point-details-txt .num {
    font-size: min(calc(32vw / 1480 * 100), 32px);
}

.ranking-box-point-details-txt+.ranking-box-point-details-txt {
    margin-top: min(calc(20vw / 1480 * 100), 20px);
}

.ranking-box-detail {
    margin-top: min(calc(40vw / 1480 * 100), 40px);
}

.ranking-box-tag-list {
    display: flex;
    justify-content: space-between;
    margin-top: min(calc(40vw / 1480 * 100), 40px);
}

.ranking-box-tag {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: min(calc(10vw / 1480 * 100), 10px) min(calc(25vw / 1480 * 100), 25px);
    font-size: min(calc(20vw / 1480 * 100), 20px);
    color: #27A5EA;
    border: min(calc(1vw / 1480 * 100), 1px) solid #27A5EA;
    border-radius: min(calc(50vw / 1480 * 100), 50px);
}

.ranking-box-tag.disabled {
    color: #C6C6C6;
    border: min(calc(1vw / 1480 * 100), 1px) solid #C6C6C6;
}

.ranking-box-btn {
    position: relative;
    margin-top: min(calc(40vw / 1480 * 100), 40px);
    animation: gatagata 2s infinite;
    overflow: hidden;
}

.ranking-box-btn::before {
    content: '';
    position: absolute;
    display: inline-block;
    top: max(calc(-180vw / 1480 * 100), -180px);
    left: 0;
    width: min(calc(30vw / 1480 * 100), 30px);
    height: 100%;
    background-color: #fbfbfb;
    animation: kira-n 2s ease-in-out infinite;
}


.ranking-box-notes-list {
    margin-top: min(calc(25vw / 1480 * 100), 25px);
}

.ranking-box-notes {
    display: flex;
    font-size: min(calc(12vw / 1480 * 100), 12px);
    color: #888;
}

.ranking-box-notes::before {
    content: "※";
    display: block;
}

@media (max-width: 750px) {
    .ranking {
        padding: calc(45vw / 390 * 100) 0 calc(55vw / 390 * 100);
    }

    .ranking .inner {
        width: calc(370vw / 390 * 100);
    }

    .ranking-sub-head {
        font-size: calc(20vw / 390 * 100);
        white-space: nowrap;
    }

    .ranking-sub-head::before,
    .ranking-sub-head::after {
        width: calc(1vw / 390 * 100);
        height: calc(40vw / 390 * 100);
        margin: 0 calc(11vw / 390 * 100);
        border-right: calc(4vw / 390 * 100) dotted #F26060;
    }

    .ranking-head {
        margin-top: calc(10vw / 390 * 100);
        font-size: calc(32vw / 390 * 100);
        line-height: 1.3;
    }

    .ranking-box-list {
        margin-top: calc(35vw / 390 * 100);
    }

    .ranking-box {
        padding-bottom: calc(20vw / 390 * 100);
        border-radius: calc(10vw / 390 * 100);
    }

    .ranking-box+.ranking-box {
        margin-top: calc(20vw / 390 * 100);
    }

    .ranking-box-head-area {
        padding: calc(13vw / 390 * 100) 0 calc(28vw / 390 * 100);
        border-bottom: calc(1vw / 390 * 100) solid #C6C6C6;
    }

    .ranking-box-head-area .ranking-box-inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .ranking-box-inner {
        width: calc(350vw / 390 * 100);
    }

    .ranking-box-head {
        font-size: calc(32vw / 390 * 100);
    }

    .ranking-box-head::before {
        width: calc(49vw / 390 * 100);
        height: calc(42vw / 390 * 100);
        margin-right: calc(20vw / 390 * 100);
    }

    .ranking-box:nth-child(1) .ranking-box-head::before {
        background-image: url(../img/sp/ranking_icon_01.png);
    }

    .ranking-box:nth-child(2) .ranking-box-head::before {
        background-image: url(../img/sp/ranking_icon_02.png);
    }

    .ranking-box:nth-child(3) .ranking-box-head::before {
        background-image: url(../img/sp/ranking_icon_03.png);
    }

    .ranking-box:nth-child(4) .ranking-box-head::before {
        background-image: url(../img/sp/ranking_icon_04.png);
    }

    .ranking-box-head-star {
        width: calc(169vw / 390 * 100);
        margin: calc(10vw / 390 * 100) 0 0 auto;
    }

    .ranking-box-head-info {
        bottom: calc(-13vw / 390 * 100);
        padding: calc(5vw / 390 * 100) calc(10vw / 390 * 100);
        font-size: calc(13vw / 390 * 100);
        border-radius: calc(50vw / 390 * 100) 0 0 calc(50vw / 390 * 100);
    }

    .ranking-box-txt {
        width: calc(310vw / 390 * 100);
        margin: calc(20vw / 390 * 100) auto 0;
        font-size: calc(22vw / 390 * 100);
    }

    .ranking-box-point-area {
        flex-direction: column;
        width: calc(310vw / 390 * 100);
        margin: calc(20vw / 390 * 100) auto 0;
    }

    .ranking-box-point-img {
        width: 100%;
    }

    .ranking-box-point-details {
        width: calc(310vw / 390 * 100);
        margin: calc(35vw / 390 * 100) auto 0;
        padding: calc(30vw / 390 * 100) calc(20vw / 390 * 100) calc(15vw / 390 * 100);
        border-radius: calc(10vw / 390 * 100);
    }

    .ranking-box-point-details-top {
        top: calc(-13vw / 390 * 100);
        width: calc(152vw / 390 * 100);
        height: calc(33vw / 390 * 100);
        font-size: calc(14vw / 390 * 100);
        border-radius: calc(50vw / 390 * 100) calc(50vw / 390 * 100) 0 calc(50vw / 390 * 100);
    }

    .ranking-box-point-details-txt {
        font-size: calc(16vw / 390 * 100);
        padding-left: calc(20vw / 390 * 100);
        text-indent: calc(-20vw / 390 * 100);
    }

    .ranking-box-point-details-txt::before {
        width: calc(8vw / 390 * 100);
        height: calc(10vw / 390 * 100);
        margin-right: calc(10vw / 390 * 100);
    }

    .ranking-box-point-details-txt+.ranking-box-point-details-txt {
        margin-top: calc(15vw / 390 * 100);
    }

    .ranking-box-point-details-txt .num {
        font-size: calc(18vw / 390 * 100);
    }

    .ranking-box-detail {
        width: calc(310vw / 390 * 100);
        margin: calc(20vw / 390 * 100) auto 0;
    }

    .ranking-box-tag-list {
        justify-content: flex-start;
        flex-wrap: wrap;
        width: calc(310vw / 390 * 100);
        margin: calc(20vw / 390 * 100) auto 0;
    }

    .ranking-box-tag {
        padding: calc(7vw / 390 * 100) calc(8vw / 390 * 100);
        margin: 0 calc(5vw / 390 * 100) calc(5vw / 390 * 100) 0;
        font-size: calc(14vw / 390 * 100);
        border: calc(1vw / 390 * 100) solid #27A5EA;
        border-radius: calc(50vw / 390 * 100);
    }

    .ranking-box-tag.disabled {
        border: calc(1vw / 390 * 100) solid #C6C6C6;
    }

    .ranking-box-btn {
        margin-top: calc(15vw / 390 * 100);
    }

    .ranking-box-btn::before {
        top: calc(-180vw / 390 * 100);
        width: calc(30vw / 390 * 100);
    }

    .ranking-box-notes-list {
        margin-top: calc(15vw / 390 * 100);
    }

    .ranking-box-notes {
        margin-top: calc(5vw / 390 * 100);
        font-size: calc(11vw / 390 * 100);
    }

    .ranking-box-notes::before {
        margin-right: calc(10vw / 390 * 100);
    }
}

/* chart */
.chart {
    padding: min(calc(80vw / 1480 * 100), 80px) 0 min(calc(80vw / 1480 * 100), 80px);
}

.chart .inner {
    width: min(calc(960vw / 1480 * 100), 960px);
}

.chart-head-area {
    position: relative;
    height: min(calc(200vw / 1480 * 100), 200px);
    text-align: center;
}

.chart-sub-head {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    font-size: min(calc(32vw / 1480 * 100), 32px);
    font-weight: bold;
    line-height: 1.4;
}

.chart-sub-head::before,
.chart-sub-head::after {
    content: "";
    display: block;
    width: min(calc(1vw / 1480 * 100), 1px);
    height: min(calc(70vw / 1480 * 100), 70px);
    margin: 0 min(calc(35vw / 1480 * 100), 35px);
    border-right: min(calc(4vw / 1480 * 100), 4px) dotted #F26060;
}

.chart-sub-head::before {
    transform: rotate(-20deg);
}

.chart-sub-head::after {
    transform: rotate(20deg);
}

.chart-head {
    margin-top: min(calc(10vw / 1480 * 100), 10px);
    font-size: min(calc(48vw / 1480 * 100), 48px);
    font-weight: bold;
    color: #F26060;
    line-height: 1.2;
}

.chart-head-img {
    position: absolute;
    right: min(calc(50vw / 1480 * 100), 50px);
    bottom: max(calc(-70vw / 1480 * 100), -70px);
    width: min(calc(194vw / 1480 * 100), 194px);
    z-index: -1;
}

.chart-table-row {
    text-align: center;
}

.chart-table-head,
.chart-table-data {
    width: min(calc(180vw / 1480 * 100), 180px);
    font-size: min(calc(20vw / 1480 * 100), 20px);
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
}

.chart-table-head {
    padding: min(calc(25vw / 1480 * 100), 25px) 0;
    background-color: #F0F0F0;
}

.chart-table-head+.chart-table-head {
    border-left: min(calc(1vw / 1480 * 100), 1px) solid #C6C6C6;
}

.chart-table-head.service,
.chart-table-data.service {
    width: min(calc(280vw / 1480 * 100), 280px);
}

.chart-table-head.detail,
.chart-table-data.detail {
    width: min(calc(140vw / 1480 * 100), 140px);
}

.chart-table-data {
    padding: min(calc(20vw / 1480 * 100), 20px) min(calc(20vw / 1480 * 100), 20px);
    font-size: min(calc(26vw / 1480 * 100), 26px);
    font-weight: bold;
    border-bottom: min(calc(1vw / 1480 * 100), 1px) solid #C6C6C6;
}

.chart-table-data+.chart-table-data {
    border-left: min(calc(1vw / 1480 * 100), 1px) solid #C6C6C6;
}

.chart-table-data-head {
    display: flex;
    align-items: center;
    font-size: min(calc(20vw / 1480 * 100), 20px);
    font-weight: bold;
    color: #E53333;
}

.chart-table-data-head::before {
    content: "";
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    width: min(calc(30vw / 1480 * 100), 30px);
    height: min(calc(25vw / 1480 * 100), 25px);
    margin-right: min(calc(15vw / 1480 * 100), 15px);
}

.chart-table-row:nth-of-type(2) .chart-table-data-head::before {
    background-image: url(../img/pc/chart_service_icon_01.png);
}

.chart-table-row:nth-of-type(3) .chart-table-data-head::before {
    background-image: url(../img/pc/chart_service_icon_02.png);
}

.chart-table-row:nth-of-type(4) .chart-table-data-head::before {
    background-image: url(../img/pc/chart_service_icon_03.png);
}

.chart-table-row:nth-of-type(5) .chart-table-data-head::before {
    background-image: url(../img/pc/chart_service_icon_04.png);
}

.chart-table-data-img {
    width: min(calc(150vw / 1480 * 100), 150px);
    margin: min(calc(5vw / 1480 * 100), 5px) auto 0;
}

.chart-table-data.circle {
    background-image: url(../img/pc/chart_icon_circle.svg);
    background-size: min(calc(64vw / 1480 * 100), 64px) min(calc(64vw / 1480 * 100), 64px);
    background-position: center center;
    background-repeat: no-repeat;
}

.chart-table-data.tel {
    font-size: min(calc(20vw / 1480 * 100), 20px);
}

.chart-table-data-btn {
    width: min(calc(80vw / 1480 * 100), 80px);
    margin: 0 auto;
}

.chart-notes {
    margin-top: min(calc(20vw / 1480 * 100), 20px);
    font-size: min(calc(12vw / 1480 * 100), 12px);
    color: #888;
}

@media (max-width: 750px) {
    .chart {
        padding: calc(50vw / 390 * 100) 0 calc(50vw / 390 * 100);
    }

    .chart .inner {
        width: calc(350vw / 390 * 100);
    }

    .chart-head-area {
        height: auto;
    }

    .chart-sub-head {
        font-size: calc(22vw / 390 * 100);
    }

    .chart-sub-head::before,
    .chart-sub-head::after {
        width: calc(1vw / 390 * 100);
        height: calc(50vw / 390 * 100);
        margin: 0 calc(15vw / 390 * 100);
        border-right: calc(4vw / 390 * 100) dotted #F26060;
    }

    .chart-head {
        margin-top: calc(5vw / 390 * 100);
        font-size: calc(32vw / 390 * 100);
    }

    .chart-table {
        margin-top: calc(20vw / 390 * 100);
    }

    .chart-table-head,
    .chart-table-data {
        width: calc(65vw / 390 * 100);
        font-size: calc(12vw / 390 * 100);
    }

    .chart-table-head {
        padding: calc(6vw / 390 * 100) 0;
        line-height: 1.3;
    }

    .chart-table-head+.chart-table-head {
        border-left: calc(1vw / 390 * 100) solid #C6C6C6;
    }

    .chart-table-head.service,
    .chart-table-data.service {
        width: calc(90vw / 390 * 100);
    }

    .chart-table-head.detail,
    .chart-table-data.detail {
        width: calc(65vw / 390 * 100);
    }

    .chart-table-data {
        padding: calc(10vw / 390 * 100) calc(5vw / 390 * 100);
        font-size: calc(11vw / 390 * 100);
        border-bottom: calc(1vw / 390 * 100) solid #C6C6C6;
    }

    .chart-table-data+.chart-table-data {
        border-left: calc(1vw / 390 * 100) solid #C6C6C6;
    }

    .chart-table-data-head {
        font-size: calc(12vw / 390 * 100);
    }

    .chart-table-data-head::before {
        width: calc(18vw / 390 * 100);
        height: calc(15vw / 390 * 100);
        margin-right: calc(5vw / 390 * 100);
    }

    .chart-table-row:nth-of-type(2) .chart-table-data-head::before {
        background-image: url(../img/sp/chart_service_icon_01.png);
    }

    .chart-table-row:nth-of-type(3) .chart-table-data-head::before {
        background-image: url(../img/sp/chart_service_icon_02.png);
    }

    .chart-table-row:nth-of-type(4) .chart-table-data-head::before {
        background-image: url(../img/sp/chart_service_icon_03.png);
    }

    .chart-table-row:nth-of-type(5) .chart-table-data-head::before {
        background-image: url(../img/sp/chart_service_icon_04.png);
    }

    .chart-table-data-img {
        width: calc(70vw / 390 * 100);
        margin: calc(5vw / 390 * 100) auto 0;
    }

    .chart-table-data.circle {
        background-size: calc(29vw / 390 * 100) calc(29vw / 390 * 100);
        background-position: center calc(20vw / 390 * 100);
        padding-top: calc(50vw / 390 * 100);
    }

    .chart-table-data.time .num {
        font-size: calc(15vw / 390 * 100);
    }

    .chart-table-data.tel {
        font-size: calc(11vw / 390 * 100);
    }

    .chart-table-data-btn {
        width: calc(24vw / 390 * 100);
    }

    .chart-notes {
        margin-top: calc(20vw / 390 * 100);
        font-size: calc(12vw / 390 * 100);
    }
}

/* qa */
.qa {
    background-color: #E9F6FD;
    padding: min(calc(80vw / 1480 * 100), 80px) 0 min(calc(75vw / 1480 * 100), 75px);
}

.qa .inner {
    width: min(calc(960vw / 1480 * 100), 960px);
}

.qa-box {
    display: flex;
    justify-content: space-between;
}

.qa-box+.qa-box {
    margin-top: min(calc(40vw / 1480 * 100), 40px);
}

.qa-box-icon {
    width: min(calc(72vw / 1480 * 100), 72px);
}

.qa-box-txt-area {
    width: min(calc(864vw / 1480 * 100), 864px);
    margin-top: min(calc(10vw / 1480 * 100), 10px);
}

.qa-box-txt {
    font-size: min(calc(32vw / 1480 * 100), 32px);
    font-weight: bold;
}

.qa-box-select-wrapper {
    position: relative;
    margin-top: min(calc(30vw / 1480 * 100), 30px);
}

.qa-box-select-wrapper::after {
    content: "";
    display: block;
    position: absolute;
    top: min(calc(30vw / 1480 * 100), 30px);
    right: min(calc(33vw / 1480 * 100), 33px);
    width: min(calc(15vw / 1480 * 100), 15px);
    height: min(calc(15vw / 1480 * 100), 15px);
    border-right: min(calc(2vw / 1480 * 100), 2px) solid #363636;
    border-bottom: min(calc(2vw / 1480 * 100), 2px) solid #363636;
    transform: rotate(45deg);
}

.qa-box-select {
    background-color: #fff;
    width: 100%;
    height: min(calc(80vw / 1480 * 100), 80px);
    padding: 0 min(calc(20vw / 1480 * 100), 20px);
    font-size: min(calc(25vw / 1480 * 100), 25px);
    border: min(calc(1vw / 1480 * 100), 1px) solid #C6C6C6;
    border-radius: min(calc(10vw / 1480 * 100), 10px);
    cursor: pointer;
}

.qa-result {
    margin-top: min(calc(50vw / 1480 * 100), 50px);
}

.qa-result-txt {
    font-size: min(calc(24vw / 1480 * 100), 24px);
    text-align: center;
}

.qa-result-txt .accent {
    padding: 0 min(calc(5vw / 1480 * 100), 5px);
    color: #E53333;
}

.qa-result-txt .num {
    font-size: min(calc(28vw / 1480 * 100), 28px);
    font-weight: bold;
}

.qa-result-btn-area {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: min(calc(30vw / 1480 * 100), 30px);
}

.qa-result-btn {
    width: min(calc(808vw / 1480 * 100), 808px);
    cursor: pointer;
}

.qa-result-btn.disabled {
    filter: grayscale(1);
    pointer-events: none;
}

.qa-result-btn-reset {
    width: min(calc(132vw / 1480 * 100), 132px);
    cursor: pointer;
}

@media (max-width: 750px) {
    .qa {
        padding: calc(55vw / 390 * 100) 0 calc(50vw / 390 * 100);
    }

    .qa .inner {
        width: calc(350vw / 390 * 100);
    }

    .qa-box {
        position: relative;
    }

    .qa-box+.qa-box {
        margin-top: calc(20vw / 390 * 100);
    }

    .qa-box-icon {
        position: absolute;
        top: calc(-4vw / 390 * 100);
        left: 0;
        width: calc(38vw / 390 * 100);
    }

    .qa-box-txt-area {
        width: 100%;
        margin-top: 0;
    }

    .qa-box-txt {
        margin-left: calc(50vw / 390 * 100);
        font-size: calc(16vw / 390 * 100);
    }

    .qa-box-select-wrapper {
        margin-top: calc(20vw / 390 * 100);
    }

    .qa-box-select-wrapper::after {
        top: calc(12vw / 390 * 100);
        right: calc(12vw / 390 * 100);
        width: calc(10vw / 390 * 100);
        height: calc(10vw / 390 * 100);
        border-right: calc(2vw / 390 * 100) solid #363636;
        border-bottom: calc(2vw / 390 * 100) solid #363636;
    }

    .qa-box-select {
        height: calc(42vw / 390 * 100);
        padding: 0 calc(13vw / 390 * 100);
        font-size: calc(14vw / 390 * 100);
        border: calc(1vw / 390 * 100) solid #C6C6C6;
        border-radius: calc(10vw / 390 * 100);
    }

    .qa-result {
        margin-top: calc(30vw / 390 * 100);
    }

    .qa-result-txt {
        font-size: calc(14vw / 390 * 100);
    }

    .qa-result-txt .accent {
        padding: 0 calc(5vw / 390 * 100);
    }

    .qa-result-txt .num {
        font-size: calc(16vw / 390 * 100);
    }

    .qa-result-btn-area {
        flex-direction: column;
        margin-top: calc(10vw / 390 * 100);
    }

    .qa-result-btn {
        width: 100%;
    }

    .qa-result-btn-reset {
        width: calc(110vw / 390 * 100);
        margin: calc(12vw / 390 * 100) auto 0;
    }
}

/* footer */
.footer {
    background-color: #363636;
    padding: min(calc(35vw / 1480 * 100), 35px) 0;
}

.footer .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer-nav-list {
    display: flex;
}

.footer-nav-item {
    font-size: min(calc(16vw / 1480 * 100), 16px);
    color: #fff;
}

.footer-nav-item+.footer-nav-item {
    margin-left: min(calc(30vw / 1480 * 100), 30px);
}

.footer-logo {
    width: min(calc(204vw / 1480 * 100), 204px);
}

@media (max-width: 750px) {
    .footer {
        padding: calc(35vw / 390 * 100) 0;
    }

    .footer .inner {
        flex-direction: column;
    }

    .footer-nav-list {
        flex-direction: column;
    }

    .footer-nav-item {
        font-size: calc(14vw / 390 * 100);
    }

    .footer-nav-item+.footer-nav-item {
        margin: calc(25vw / 390 * 100) 0 0;
    }

    .footer-logo {
        width: calc(204vw / 390 * 100);
        margin: calc(35vw / 390 * 100) auto 0;
    }
}

/* other */
.other {
    margin-top: min(calc(90vw / 1480 * 100), 90px);
    padding: min(calc(80vw / 1480 * 100), 80px) 0;
}

.other .inner {
    width: min(calc(960vw / 1480 * 100), 960px);
}

.other-head {
    font-size: min(calc(32vw / 1480 * 100), 32px);
    font-weight: bold;
}

.other-table {
    width: 100%;
    margin-top: min(calc(75vw / 1480 * 100), 75px);
    border-bottom: min(calc(1vw / 1480 * 100), 1px) solid #C6C6C6;
}

.other-table-row {
    display: flex;
    justify-content: center;
}

.other-table-head,
.other-table-data {
    display: flex;
    align-items: center;
    width: 50%;
    padding: min(calc(26vw / 1480 * 100), 26px) min(calc(30vw / 1480 * 100), 30px);
    font-size: min(calc(20vw / 1480 * 100), 20px);
    text-align: center;
    border-top: min(calc(1vw / 1480 * 100), 1px) solid #C6C6C6;
}

.other-table-head {
    background-color: #F0F0F0;
    justify-content: center;
    font-weight: bold;
}

.other-table-data {
    text-align: left;
}

.other-sub-head {
    margin-top: min(calc(60vw / 1480 * 100), 60px);
    padding: min(calc(20vw / 1480 * 100), 20px) 0;
    font-size: min(calc(24vw / 1480 * 100), 24px);
    font-weight: bold;
    border-bottom: min(calc(1vw / 1480 * 100), 1px) solid #C6C6C6;
}

.other-list {
    margin-top: min(calc(40vw / 1480 * 100), 40px);
}

.other-item {
    display: flex;
    font-size: min(calc(20vw / 1480 * 100), 20px);
}

.other-item::before {
    content: "";
    flex: 0 0 auto;
    background-color: #F26060;
    display: block;
    width: min(calc(10vw / 1480 * 100), 10px);
    height: min(calc(10vw / 1480 * 100), 10px);
    margin: min(calc(12vw / 1480 * 100), 12px) min(calc(10vw / 1480 * 100), 10px) 0 0;
    border-radius: 50%;
}

.other-item+.other-item {
    margin-top: min(calc(20vw / 1480 * 100), 20px);
}

.other-item-child {
    display: flex;
    margin: min(calc(20vw / 1480 * 100), 20px) 0 0 min(calc(20vw / 1480 * 100), 20px);
}

.other-item-child::before {
    content: "";
    flex: 0 0 auto;
    background-color: #fff;
    display: block;
    width: min(calc(10vw / 1480 * 100), 10px);
    height: min(calc(10vw / 1480 * 100), 10px);
    margin: min(calc(12vw / 1480 * 100), 12px) min(calc(10vw / 1480 * 100), 10px) 0 0;
    border: min(calc(1vw / 1480 * 100), 1px) solid #F26060;
    border-radius: 50%;
}

.other-notes {
    display: flex;
    align-items: center;
    margin-top: min(calc(20vw / 1480 * 100), 20px);
    padding: 0 min(calc(20vw / 1480 * 100), 20px);
    font-size: min(calc(16vw / 1480 * 100), 16px);
}

.other-notes::before {
    content: "※";
    display: block;
}

.other-txt {
    margin-top: min(calc(30vw / 1480 * 100), 30px);
    padding: 0 min(calc(20vw / 1480 * 100), 20px);
    font-size: min(calc(20vw / 1480 * 100), 20px);
    line-height: 1.6;
}

@media (max-width: 750px) {
    .other {
        margin-top: calc(64vw / 390 * 100);
        padding: calc(40vw / 390 * 100) 0;
    }

    .other .inner {
        width: calc(350vw / 390 * 100);
    }

    .other-head {
        font-size: calc(22vw / 390 * 100);
    }

    .other-table {
        margin-top: calc(41vw / 390 * 100);
        border-bottom: calc(1vw / 390 * 100) solid #C6C6C6;
    }

    .other-table-head,
    .other-table-data {
        justify-content: flex-start;
        padding: calc(5vw / 390 * 100) calc(10vw / 390 * 100);
        font-size: calc(14vw / 390 * 100);
        border-top: calc(1vw / 390 * 100) solid #C6C6C6;
        text-align: left;
    }

    .other-table-head {
        width: calc(115vw / 390 * 100);
    }

    .other-table-data {
        width: calc(235vw / 390 * 100);
    }

    .other-sub-head {
        margin-top: calc(25vw / 390 * 100);
        padding: calc(15vw / 390 * 100) 0;
        font-size: calc(18vw / 390 * 100);
        border-bottom: calc(1vw / 390 * 100) solid #C6C6C6;
    }

    .other-list {
        margin-top: calc(30vw / 390 * 100);
    }

    .other-item {
        font-size: calc(14vw / 390 * 100);
    }

    .other-item::before {
        width: calc(8vw / 390 * 100);
        height: calc(8vw / 390 * 100);
        margin: calc(7vw / 390 * 100) calc(8vw / 390 * 100) 0 0;
    }

    .other-item+.other-item {
        margin-top: calc(15vw / 390 * 100);
    }

    .other-item-child {
        margin: calc(16vw / 390 * 100) 0 0 0;
    }

    .other-item-child::before {
        width: calc(8vw / 390 * 100);
        height: calc(8vw / 390 * 100);
        margin: calc(5vw / 390 * 100) calc(10vw / 390 * 100) 0 0;
        border: calc(1vw / 390 * 100) solid #F26060;
    }

    .other-notes {
        align-items: flex-start;
        margin-top: calc(15vw / 390 * 100);
        padding: 0 calc(20vw / 390 * 100);
        font-size: calc(13vw / 390 * 100);
    }

    .other-txt {
        margin-top: calc(15vw / 390 * 100);
        padding: 0 calc(15vw / 390 * 100);
        font-size: calc(14vw / 390 * 100);
        line-height: 1.5;
    }
}