@charset "UTF-8";

.pg_hd {
    padding-top:2.0rem;
    .ft_s {
        font-size:2.5rem;
    }
}

.btn_link {
    a {
        display:block;
        width:350px;
        margin:1.5rem auto;
        padding:0.8rem 0;
        text-align:center;
        background:#fff;
        border:2px solid #0098bc;
        border-radius:50px;
        text-decoration:none;
        color:#0098bc;
        font-weight:bold;
        font-size:1.125rem;
        transition:0.2s ease;
    }
    a:hover {
        background:#0098bc;
        color:#fff;
    }
}

.extra_btn.w_btn {
    width:520px;
    a {
        width:100%;
    }
}
@media only screen and (max-width: 640px) {
    .extra_btn.w_btn {
        width:100%;
    }
}

.num_box_3,
.num_box_4 {
    display:flex;
    justify-content: space-between;
    margin-bottom:25px;
    .w_box {
        width:32%;
        padding:25px 0 10px;
        background-color:#fff;
        text-align:center;
        border-radius:8px;
        h3 {
            margin:0 0 1.2rem;
            font-size:1.325rem;
            font-weight:bold;
            line-height:1.5;
            span {
                font-size:0.925rem;
            }

        }
        h3.lh_01 {
            margin-bottom:3.0rem;
        }
        .mg_b_0 {
            margin-bottom:0;
        }
        .blu_txt {
            text-align:center;
            span {
                display:inline-block;
                padding:2px 8px;
                background:#a3dbe8;
                font-size:0.875rem;
            }
        }
        .num {
            color:#0098bc;
            font-family: "Lato", sans-serif;
            font-weight: 700;
            font-style: normal;
            font-size:3.0rem;
            span {
                font-family: inherit;
                font-size:1.225rem;
            }
            span.box_font {
                display:block;
                padding-bottom:15px;
            }
        }
        .detail {
            margin-bottom:10px;
            color:#0098bc;
            font-weight:bold;
        }
        .icon {
            width:160px;
            margin:20px auto;
            img {
                width:100%;
            }
        }
        .icon.pd_L {
            padding:16px 0;
        }
        .reference {
            font-size:0.775rem;
            color:#333;
        }

        .data_w {
            display:flex;
            justify-content:space-around;
            align-items:flex-end;
            margin:0 25px 20px;
            .icon {
                width:80px;
                margin:0;
                img {
                    width:100%;
                }
            }
            .num {
                white-space:nowrap;
                .ft_s {
                    font-size:0.875rem;
                    display:inline-block;
                    padding-bottom: 10px;
                }
            }
        }
        .wid_lyot_box {
            display:flex;
            justify-content:center;
            .data_w {
                width:15%;
                text-align:center;
            }

        }
        .wid_lyot_box_2 {
            display:flex;
            justify-content:center;
            .icon_w_box {
                width:40%;
            }
        }
        .sp_img {
            display:flex;
            .item {
                width:18%;
                img {
                    width:100%;
                }
            }
        }


    }
    .w_box.wid100 {
        width:100%;
    }
    .w_box.wid66 {
        width:66%;
    }
    .w_box.wid50 {
        width:48%;
    }
    .w_box.wid24 {
        width:24%;
    }
    .w_box.bg_trsf {
        background-color: transparent;
        .ilst_img {
            width: 200px;
            margin:1.5rem auto;
            img { width:100%; }
        }

    }
    .box_text {
        width:60%;
    }

}
.w_bg_box {
    padding-top:1.0rem;
    background:#fff;
    border-radius:8px;
    .ttl_all {
        margin:0 2.5rem 0.5rem;
        padding-bottom:1.5rem;
        text-align:center;
        font-size:1.225rem;
        border-bottom:1px dotted #6dc9dd;
        .num {
            color:#0098bc;
            font-family: "Lato", sans-serif;
            font-weight: 700;
            font-style: normal;
            font-size:3.0rem;
            span {
                font-family: inherit;
                font-size:1.225rem;
            }
        }
    }
    .num_box_3 {
        h3 {
            color:#0098bc;
            font-size:1.125rem;
        }
        .num {
            font-size:2.575rem;
        }
    }
}

@media only screen and (max-width: 640px) {
    .num_box_3,
    .num_box_4 {
        width:100%;
        flex-wrap:wrap;
        .w_box {
            width:100%;
            margin-bottom:1.5rem;
            h3.lh_01 {
                margin-bottom:0.5rem;
            }
            .w_box.bg_trsf {
                flex-wrap:wrap;
                .ilst_img {
                    width: 80%;
                    img { width:100%; }
                }
            }
            .data_w {
                width:60%;
                margin:0 auto 25px;
            }
            .wid_lyot_box {
                flex-wrap:wrap;
                .data_w {
                    width:40%;
                    margin:0;
                }
                .icon_L {
                    width:50%;
                    order: 3;
                    img { width:100%; }
                }
            }
            .wid_lyot_box_2 {
                display:flex;
                justify-content:center;
                .icon_L {
                    width:30%;
                    img { width:100%; }
                }
                .icon_w_box {
                    width:60%;
                }
            }
            .sp_img {
                flex-wrap:wrap;
                .item {
                    width:33%;
                }
            }
        }
        .w_box.wid24 {
            width:48%;
        }
        .w_box.wid66 {
            width:100%;
        }
        .box_text {
            width:100%;
        }

    }
    .w_bg_box {
        .ttl_all {
            margin:0 1.0rem 0.5rem;
            padding-bottom:1.0rem;
        }
        .num_box_3 {
            justify-content:center;
            .w_box {
                width:48%;
                .num {
                    font-size:2.575rem;
                }
            }

        }
        
    }

}

.w_box_bdr {
    p {
        a.link_01 {
            position:relative;
            display:inline-block;
            padding-left:25px;
            color:#0098bc;
        }
        a.link_01::after {
            display:inline-block;
            content:"";
            background-image:url(../img/icon_arrow_link.png);
            background-size:18px 14px;
            width:18px; height:14px;
            position:absolute;
            left:0; top: 7px;
        }
    }

}
.bdr_box_ye {
    background: #fcf5b6;
    border:3px solid #0098bc;
    border-radius: 15px;
    padding: 1.5em 1.8em;
    strong {
        font-size: 1.3em;
        color:#0098bc;
    }
    p {
        a.link_01 {
            position:relative;
            display:inline-block;
            padding-left:25px;
            color:#0098bc;
        }
        a.link_01::after {
            display:inline-block;
            content:"";
            background-image:url(../img/icon_arrow_link.png);
            background-size:18px 14px;
            width:18px; height:14px;
            position:absolute;
            left:0; top: 7px;
        }
    }
}

.box_exp {
    display:flex;
    justify-content:space-between;
    margin-bottom:2.0rem;
    .data {
        width:65%;
        h5 {
            display:inline-block;
            font-size:1.225rem;
            font-weight:bold;
            color:#0098bc;
            margin-top:0;
            margin-bottom:0;
            padding:0.5rem 1.2rem;
            border:2px solid #0098bc;
        }
        p {
            line-height:1.8;
        }
    }
    .pic {
        width:30%;
        padding-top:10px;
        img {
            width:100%;
            border:7px solid #fff;
        }
    }
}

.pg_btn_3 li a.ft_s {
    font-size:1.1rem;

}
@media only screen and (max-width: 640px) {
    .box_exp {
        flex-wrap:wrap;
            .data {
                width:100%;
            }
            .pic {
                width:80%;
                margin:0.5rem auto;
            }
    }

}

.tbl_spot_data {
    width:95%;
    margin:1.5rem auto;
    border-collapse:collapse;
    border-top:3px solid #0098bc;
    border-bottom:3px solid #0098bc;
    tr > td {
        padding:0.5rem 1.5rem;
        border-bottom:1px solid #0098bc;
        a {
            display:inline-block;
            padding:5px 1rem;
            border-radius:3px;
            background:#0098bc;
            color:#fff;
            text-decoration:none;
            transition:0.1s ease;
        }
        a:hover {
            opacity:0.7;
        }
    }
    tr:first-of-type > td {
        border-top:1px solid #0098bc;
    }
}

#TP_IK .btn_flx {
    display:flex;
    justify-content:center;
    align-items:center;
    width:400px;
    margin:0 auto;
    column-gap:40px;
    z-index:10;
    flex-wrap:wrap;
    a {
        display:block;
        position:relative;
        width:5rem; height:5rem;
        margin-bottom:1.5rem;
        background:#0098bc;
        color:#fff;
        font-size:0.875rem;
        text-decoration:none;
        text-align:center;
        border-radius:50%;
        line-height:5rem;
        transition:0.2s ease;
        font-weight:600;
    }
    a:nth-of-type(2),
    a:nth-of-type(3) {
        line-height:1.4;
        padding-top:1.28rem;
    }
    a:hover {
        background:#a3dbe8;
        color:#0098bc;
    }
}
@media only screen and (max-width: 640px) {
    #TP_IK .btn_flx {
        width:100%;
    }
}
.bluecats_comment_box {
    border: 5px solid #123c9b;
    border-radius: 12px;
    background:#fff;
    margin-top:3.5rem;
    padding:1.5rem 180px 1.5rem 2.0rem;
    position:relative;
    .title {
        position:absolute;
        left:2.0rem; top:-3.0rem;
        h5 {
            background:#123c9b;
            color:#fff;
            font-size:1.2rem;
            padding:10px 0;
            width:12rem;
            text-align:center;
            border-radius: 8px;
        }
    }
    .mascot {
        width:150px;
        position:absolute;
        right:15px; bottom:15px;
        img {
            width:100%;
        }
    }
}
.copyright_box {
    text-align:right;
    font-size:0.775rem;
    color:#999;
}
@media only screen and (max-width: 640px) {
    .bluecats_comment_box {
        padding:1.5rem 130px 1.5rem 2.0rem;
        .title {
            left:calc(50% - 6rem);
            top:-3.5rem;
        }
        .mascot {
            width:100px;
        }

    }
}

.block_FT {
    .voice {
        border-radius:8px;
        font-size:1.175rem;
        line-height:1.8;
        padding:1.0rem 1.5rem;
        background:#fcf2c6;
        position: relative;
        margin-top:1.5rem;

        display: inline-block;
        margin-right: 16px;
        padding: 16px;
        border-radius: 12px;
        background-color: #fce282;
        text-align: left;
        font-size: 1.175rem;
        font-weight: 400;
        line-height: 1.5;
        color: #000000;
    }

    .voice::after {
        content: "";
        position: absolute;
        top: 65%;
        right: 0;
        border-style: solid;
        border-width: 16px 0 0 16px;
        border-color: transparent transparent transparent #fce282;
        translate: 100% calc(-50% + 0.4px);
    }

}

@media only screen and (max-width: 640px) {
    .block_FT {
        .voice {
            margin-top:0.5rem;
            margin-right: 0;
        }
        .voice::after {
            display:none;
        }
    }
}

.disp_sp {
    display:none;
}
@media only screen and (max-width: 640px) {
    .disp_pc { display:none; }
    .disp_sp { display:inline; }

}
