@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Alata&family=Noto+Sans+JP:wght@100..900&family=Zen+Kaku+Gothic+New&display=swap');

body {
    font-family: Zen Kaku Gothic New, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}

.-alta {
    font-family: Alata, "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}

.mig_sec * {
    font-size: 16px;
}

.mig_sec.-about {
    margin-bottom: 62px;
}

.mig_bg_blue {
    background-color: #F0F2F6;
}

.mig_bg_sky {
    background-color: #F2F8FC;
}

.mig_intro {
    padding-top: 50px;
}

.mig_intro_card {
    margin-bottom: 126px;
    padding: 45px 60px;
    background-color: #F2F8FC;
    border-radius: 20px;
}

.mig_intro_card_ttl {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
    font-size: 22px;
}

.mig_intro_card_ttl strong {
    padding: 0 19px;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
    background-color: #ED6759;
}

.intro_bold_ttl {
    margin-bottom: 25px;
    font-size: 30px;
    font-weight: 500;
    line-height: 2;
}

.mig_intro_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px;
    margin: 68px 0 77px;
}

.mig_intro_list li {
    width: calc((100% - 20px) / 3);
    background-color: #001976;
    border-radius: 20px;
    margin-bottom: 7px;
    color: #fff;
    box-shadow: 0 8px 0 #D6D6D6;
    transition: transform .3s, box-shadow .3s;
}

@media (hover: hover) {
    .mig_intro_list li:hover {
        transform: translateY(4px);
        box-shadow: 0 4px 0 #D6D6D6;
    }
}

.mig_intro_list li a {
    display: block;
    padding: 18px;
}

.mig_intro_list li.-reason {
    width: 100%;
    max-width: 340px;
}

.mig_intro_list li.-voice {
    width: 100%;
    max-width: 220px;
}

.mig_intro_list li.-flow {
    width: 100%;
    max-width: 340px;
}

.mig_intro_list li.-question {
    width: 100%;
    max-width: 220px;
}

.mig_underbar_hd {
    margin-bottom: 64px;
    padding-bottom: 29px;
    border-bottom: solid 2px #001976;
}

.mig_underbar_hd_ttl {
    font-size: 40px;
    font-weight: 500;
    color: #001976;
}

.mig_col {
    display: flex;
    flex-wrap: wrap;
    gap: 70px;
}

.mig_col.-between {
    justify-content: space-between;
}

.mig_col .-col50 {
    width: calc(50% - 35px);
    font-size: 18px;
    line-height: 1.8;
    color: #333;
}

.mig_col .-col33 {
    width: calc(33.33% - 23.33px);
}

.mig_sec.-diff01 {
    padding: 56px 0 62px;
}

.mig_bold_ttl {
    margin-bottom: 36px;
    font-size: 30px;
    font-weight: bold;
    color: #001976;
}

.mig_bold_ttl.-center {
    text-align: center;
}

.mig_ttl {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 17px;
    color: #001976;
}

.mig_card {
    padding: 52px 60px;
    border-radius: 20px;
    background-color: #fff;
}

.mig_card p {
    margin-bottom: 28px;
}

.mig_card_list.-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
}

.mig_card_list.-wrap li {
    width: calc((100% - 12px) / 2);
}

.mig_card_list li {
    text-indent: -1em;
    padding-left: 1em;
}

.mig_sec.-field {
    padding-top: 142px;
}

.-field .mig_col {
    margin-bottom: 47px;
}

.mig_field_circle {
    text-align: center;
}

.mig_field_circle figure {
    margin-bottom: 14px;
}

.mig_field_circle span {
    font-size: 24px;
    font-weight: bold;
}

.-field .mig_card {
    background-color: #F0F2F6;
}

.mig_comment {
    position: relative;
    margin-bottom: 146px;
    padding: 29px 40px;
    border-radius: 20px;
    border: solid 2px #ED6759;
    background-color: #FFF6F5;
}

/*
三角形を上につける
*/
.mig_comment::before {
    content: "";
    position: absolute;
    top: -20px;
    right: 280px;
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-bottom: 20px solid #ED6759;
}

.mig_comment::after {
    content: "";
    position: absolute;
    top: -16px;
    right: 284px;
    width: 0;
    height: 0;
    border-left: 16px solid transparent;
    border-right: 16px solid transparent;
    border-bottom: 16px solid #FFF6F5;
}

.mig_sec.-diff02 {
    padding: 91px 0 101px;
}

.diff_tbl {
    width: 100%;
    border-collapse: collapse;
}

.diff_tbl thead th {
    padding: 13px 18px;
    font-weight: bold;
    color: #fff;
}

.diff_tbl thead th:nth-child(1) {
    background-color: #7A888E;
    border-right: solid 1px #D6D6D6;
}

.diff_tbl thead th:nth-child(2) {
    background-color: #001976;
    border-right: solid 1px #D6D6D6;
}

.diff_tbl thead th:nth-child(3) {
    background-color: #4396D0;
}

.diff_tbl tbody th,
.diff_tbl tbody td {
    padding: 13px 18px;
    border-bottom: solid 1px #D6D6D6;
}

.diff_tbl tbody th {
    background-color: #E5E9EB;
    border-right: solid 1px #D6D6D6;
}

.diff_tbl tbody td {
    background-color: #fff;
    border-right: solid 1px #D6D6D6;
}

.diff_tbl tbody td:last-of-type {
    border-right: none;
}

.diff_tbl tbody tr:last-of-type td,
.diff_tbl tbody tr:last-of-type th {
    border-bottom: none;
}

.mig_sec.-merit {
    padding: 120px 0 209px;
}

.mig_sec.-merit p {
    margin-bottom: 25px;
}

.mig_merit_list .mig_col {
    display: flex;
    flex-wrap: nowrap;
    margin-bottom: 10px;
    padding: 31px;
    background-color: #FFF6F5;
    border-radius: 20px;
}

.mig_merit_list .mig_col em {
    display: flex;
    align-items: center;
    padding-right: 23px;
    flex-shrink: 0;
    font-size: 30px;
    font-weight: bold;
    color: #ED6759;
    border-right: solid 1px #707070;
}

.mig_merit_list .mig_col em span {
    font-size: 30px;
}

.mig_bold_txt {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 500;
}

.mig_sec.-cost {
    position: relative;
    padding: 156px 0 104px;
}

.mig_cost_ttl {
    position: absolute;
    top: -63px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 898px;
    height: 149px;
    font-size: 30px;
    font-weight: bold;
    color: #fff;
    border-radius: 83px;
    background-color: #4396D0;
    text-align: center;
}

.mig_cost_ttl::after {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 30px solid #4396D0;
}

.mig_cost_tbl {
    width: 100%;
    margin-bottom: 35px;
    border-collapse: collapse;
    border-top: solid 1px #D6D6D6;
}

.mig_cost_tbl tr th,
.mig_cost_tbl tr td {
    padding: 46px 0;
    border-bottom: solid 1px #D6D6D6;
}

.mig_cost_tbl tr th > div{
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 20px;
    font-weight: bold;
}

.mig_cost_tbl td .mig_col {
    gap: 32px;
}

.slider_btn {
    display: flex;
    align-items: center;
    gap: 4px;
}

.slider_btn button[type="button"] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: solid 1px #E0E0E0;
    border-radius: 10px;
    background-color: #fff;
    cursor: pointer;
}

.mig_cost_tbl .slider_bar {
    position: relative;
    width: 100%;
    max-width: 459px;
    height: 24px;
    border-color: rgb(67, 150, 208, 0.3) !important;
    background: rgb(67, 150, 208, 0.3) !important;
}

.mig_cost_tbl .slider_bar::before,
.mig_cost_tbl .slider_bar::after {
    position: absolute;
    font-family: Zen Kaku Gothic New, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
    top: 200%;
    transform: translateY(-50%);
    font-size: 14px;
    color: #4396D0;
}

.mig_cost_tbl .slider_bar.-people::before {
    content: "1名";
    left: 0;
}

.mig_cost_tbl .slider_bar.-people::after {
    content: "100名";
    right: 0;
}

.mig_cost_tbl .slider_bar.-year::before {
    content: "1年";
    left: 0;
}

.mig_cost_tbl .slider_bar.-year::after {
    content: "5年";
    right: 0;
}

.mig_cost_tbl .slider_bar .ui-slider-handle.ui-corner-all.ui-state-default {
    top: 50%;
    transform: translateY(-50%);
    width: 40px !important;
    height: 40px;
    border: solid 2px #fff;
    border-radius: 50%;
    background-color: #4396D0;
    background-image: none !important;
}

.mig_cost_num {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: #001976;
    color: #fff;
}

.mig_input {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 20px;
    border-radius: 6px;
    background-color: #fff;
}

.mig_input input[type="number"] {
    width: 70%;
}

.mig_input:has(input[type="number"]:read-only) {
    background-color: #DBE0EA;
}

td .mig_input:nth-child(2) {
    margin-top: 25px;
}

td .mig_radio:nth-child(2) {
    margin-top: 56px;
}

.mig_radio label {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 16px;
}

.mig_radio input[type="radio"] {
    display: none;
}

.mig_radio input[type="radio"] + span {
    position: relative;
    padding-left: 38px;
    cursor: pointer;
}

.mig_radio input[type="radio"] + span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    border: solid 1px #DDDDDD;
    border-radius: 50%;
    background-color: #fff;
}

.mig_radio input[type="radio"]:checked + span::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 5px;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: #001976;
}

.mig_calc_btn {
    display: block;
    width: 468px;
    height: 97px;
    border-radius: 10px;
    background-color: #001976;
    font-size: 30px;
    font-weight: 500;
    color: #fff;
    text-align: center;
    margin: 0 auto 50px;
    cursor: pointer;
    transition: opacity .3s;
}

@media (hover: hover) {
    .mig_calc_btn:hover {
        opacity: .7;
    }
}

.mig_cost_result .mig_card {
    margin-bottom: 7px;
}

.mig_cost_result .mig_card em {
    font-size: 29px;
}

.mig_cost_result .mig_col {
    gap: 33px;
}

.mig_cost_result .-end {
    text-align: end;
}

.mig_cost_result .-end span {
    font-size: 30px;
    color: #ED6759;
}

#total_employment_period_cost {
    font-size: 30px;
    font-weight: 500;
}

.mig_sec.-reason {
    padding: 139px 0 126px;
}

.mig_sec.-reason .mig_col {
    margin: 61px 0 28px;
}

.mig_sec.-reason .mig_col:nth-of-type(2) {
    margin-bottom: 54px;
}

.mig_reason_ttl_wrap {
    display: flex;
    align-items: center;
    margin-bottom: 28px;
    padding-top: 46px;
}

.mig_reason_ttl_wrap strong {
    position: relative;
    margin-right: 28px;
    padding-right: 28px;
    font-size: 64px;
    color: #001976;
}

.mig_reason_ttl_wrap strong::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 1px;
    height: 95px;
    background-color: #707070;
}

.mig_reason_ttl {
    font-size: 30px;
    font-weight: 500;
}

.mig_reason_box {
    margin-bottom: 27px;
    padding: 27px 32px;
    background-color: #F0F2F6;
}

.mig_reason_box_inner {
    padding: 48px 46px;
    background-color: #fff;
}

.mig_reason_box_ttl {
    font-size: 24px;
    font-weight: bold;
    color: #001976;
    padding-bottom: 15px;
}

.mig_reason_strength {
    position: relative;
    margin-top: 102px;
    padding: 45px 32px;
    border: solid 5px #001976;
    border-radius: 50px;
}

.mig_reason_strength_ttl {
    position: absolute;
    top: -24px;
    left: 50%;
    transform: translateX(-50%);
    padding: 0 41px;
    font-size: 24px;
    font-weight: bold;
    color: #001976;
    background-color: #fff;
}

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

.mig_sec.-voice {
    padding: 89px 0 96px;
}

.voice_slider li {
    padding: 43px 51px;
    border-radius: 20px;
    background-color: #fff;
}

.voice_slider {
    /* 任意：横幅を決めると見切れ感が作りやすい */
    margin: 0 auto;
}

.voice_slider .slick-slide {
    margin: 0 20px;
}

.voice_slider .slick-slide p {
    margin-bottom: 16px;
}

.voice_slider .slick-slide span {
    font-weight: 500;
    color: #001976;
}

.slick-arrow.voice_prev,
.slick-arrow.voice_next {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: 1;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #001976;
    font-size: 30px;
    line-height: 50px;
    text-align: center;
    cursor: pointer;
    transition: opacity .3s;
}

.slick-prev.voice_prev {
    left: 26%;
    background-image: url('./../img/img-arrow-left.svg');
    background-size: 17px;
    background-repeat: no-repeat;
    background-position: center;
}

.slick-next.voice_next {
    left: 70%;
    background-image: url('./../img/img-arrow-right.svg');
    background-size: 17px;
    background-repeat: no-repeat;
    background-position: center;
}

.slick-prev.voice_prev::before,
.slick-next.voice_next::before {
    content: none;
}

.slick-prev.voice_prev:focus,
.slick-next.voice_next:focus {
    background-color: #001976;
}

.slick-prev.voice_prev:focus {
    background-image: url('./../img/img-arrow-left.svg');
    background-size: 17px;
    background-repeat: no-repeat;
    background-position: center;
}

.slick-next.voice_next:focus {
    background-image: url('./../img/img-arrow-right.svg');
    background-size: 17px;
    background-repeat: no-repeat;
    background-position: center;
}

@media (hover: hover) {
    .slick-arrow.voice_prev:hover,
    .slick-arrow.voice_next:hover {
        opacity: .7;
        background-color: #001976;

    }

    .slick-arrow.voice_prev:hover {
        background-image: url('./../img/img-arrow-left.svg');
        background-size: 17px;
        background-repeat: no-repeat;
        background-position: center;
    }

    .slick-arrow.voice_next:hover {
        background-image: url('./../img/img-arrow-right.svg');
        background-size: 17px;
        background-repeat: no-repeat;
        background-position: center;
    }
}

.mig_sec.-flow {
    padding: 107px 0 126px;
}

.mig_flow_block {
    margin-top: 51px;
}

.mig_flow_list {
    margin-bottom: 70px;
}

.inner .mig_flow_block:last-of-type .mig_flow_list {
    margin-bottom: 0;
}

.mig_flow_list li {
    margin-bottom: 22px;
}

.mig_flow_list .mig_col {
    gap: 0;
}

.mig_flow_num {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    font-size: 24px;
    font-weight: bold;
    color: #fff;
    border-radius: 20px 0 0 20px;
    background-color: #001976;
}

/* 下向きの矢印 */
.mig_flow_num::before {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 20px solid #001976;
}

.mig_flow_num.-no_arrow::before {
    display: none;
}

.mig_flow_body {
    flex: 1;
    padding: 27px 39px;
    background-color: #fff;
    border-radius: 0 20px 20px 0;
}

.mig_flow_body .-left {
    width: 790px;
    border-right: solid 1px #707070;
}

.mig_flow_body .-left em {
    display: block;
    margin-bottom: 11px;
    font-size: 24px;
    font-weight: 500;
}

.mig_flow_body .-right {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 25px;
}

.mig_flow_block > p {
    margin-bottom: 30px;
}

.mig_flow_body .-right em {
    color: #001976;
    margin-bottom: 5px;
    padding: 2px 11px;
    background-color: #F2F8FC;
}

.mig_flow_body .-right p {
    padding-left: 5px;
}

.mig_flow_body .-right span {
    font-size: 13px;
}

.mig_sec.-question {
    padding: 111px 0 106px;
}

.mig_question {
    margin-bottom: 16px;
}

.mig_question_body {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    padding: 16px 27px;
    border-radius: 10px;
    background-color: #F0F2F6;
    cursor: pointer;
}

.mig_question_body .-left {
    display: flex;
    align-items: center;
    gap: 17px;
}

.mig_question_body .-left em {
    font-size: 24px;
    color: #001976;
}

.mig_question_body .-right {
    display: flex;
    align-items: center;
}

.mig_question_btn {
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px;
}

.mig_question_btn.-plus {
    background-image: url('./../img/img-plus.svg');
}

.mig_question_btn.-minus {
    background-image: url('./../img/img-minus.svg');
}

.mig_answer {
    display: flex;
    gap: 17px;
    padding: 0 0 20px 27px;
}

.mig_answer em {
    font-size: 24px;
    color: #ED6759;
}

@media screen and (max-width: 768px) {
    img {
        height: auto;
    }

    .mig_sec.-about {}

    .mig_bg_blue {}

    .mig_bg_sky {}

    .mig_intro {}

    .mig_intro_card {
        margin-bottom: 32px;
        padding: 25px 20px;
    }

    .mig_intro_card_ttl {
        gap: 8px;
        font-size: 16px;
    }

    .mig_intro_card_ttl strong {
        padding: 0 8px;
        font-size: 16px;
    }

    .intro_bold_ttl {
        font-size: 22px;
        line-height: 1.75;
    }

    .mig_intro_list {
        margin: 32px 0;
    }

    .mig_intro_list li {
        width: calc((100% - 10px) / 2);
    }

    .mig_intro_list li.-reason {
            width: calc((100% - 10px) / 2);
    }

    .mig_intro_list li.-voice {
        width: calc((100% - 10px) / 2);
    }

    .mig_intro_list li.-flow {
        width: calc((100% - 10px) / 2);
    }

    .mig_intro_list li.-question {
        width: calc((100% - 10px) / 2);
    }

    .mig_intro_list li a {
        font-size: 12px;
    }

    .mig_underbar_hd {
        margin-bottom: 24px;
        padding-bottom: 8px;
    }

    .mig_underbar_hd_ttl {
        font-size: 20px;
    }

    .mig_col {
        gap: 32px;
    }

    .mig_col.-between {}

    .mig_col .-col50 {
        width: auto;
        height: auto;
    }

    .mig_col .-col33 {
        width: 100%;
    }

    .mig_sec.-diff01 {
        padding: 22px 0 32px;
    }

    .mig_bold_ttl {
        font-size: 22px;
        margin-bottom: 22px;
    }

    .mig_bold_ttl.-center {
        font-size: 20px;
    }

    .mig_ttl {
        font-size: 22px;
        margin-bottom: 12px;
    }

    .mig_card {
        padding: 22px 20px;
    }

    .mig_card p {
        margin-bottom: 12px;
    }

    .mig_card_list.-wrap {}

    .mig_card_list.-wrap li {
        font-size: 14px;
    }

    .mig_card_list li {}

    .mig_sec.-field {
        padding-top: 64px;
    }

    .-field .mig_col {
        gap: 20px 32px;
        justify-content: center;
    }

    .mig_field_circle {
        /* 3等分 */
        width: calc((100% - 64px) / 3);
    }

    .mig_field_circle figure {
        margin-bottom: 7px;
    }

    .mig_field_circle span {
        font-size: 14px;
    }

    .-field .mig_card {}

    .mig_comment {
        margin-bottom: 62px;
        padding: 18px 23px;
    }

    /*三角形を上につける*/
    .mig_comment::before {
        right: 30px;
    }

    .mig_comment::after {
        right: 34px;
    }

    .mig_sec.-diff02 {
        padding: 32px 0 52px;
    }

    .diff_tbl_wrap {
        overflow-y: scroll;
    }

    .diff_tbl {
        width: 800px;
    }

    .diff_tbl thead th {}

    .diff_tbl thead th:nth-child(1) {}

    .diff_tbl thead th:nth-child(2) {}

    .diff_tbl thead th:nth-child(3) {}

    .diff_tbl tbody th,
    .diff_tbl tbody td {}

    .diff_tbl tbody th {}

    .diff_tbl tbody td {}

    .diff_tbl tbody td:last-of-type {}

    .diff_tbl tbody tr:last-of-type td,
    .diff_tbl tbody tr:last-of-type th {}

    .mig_sec.-merit {
        padding: 32px 0 109px;
    }

    .mig_sec.-merit p {}

    .mig_merit_list .mig_col {
        flex-direction: column;
        gap: 12px;
        padding: 22px;
    }

    .mig_merit_list .mig_col em {
        border-right: none;
        font-size: 24px;
    }

    .mig_merit_list .mig_col em span {
        font-size: 26px;
    }

    .mig_bold_txt {}

    .mig_sec.-cost {
        padding: 120px 0 42px;
    }

    .mig_cost_ttl {
        padding: 12px;
        width: 90%;
        height: 120px;
        font-size: 18px;
    }

    .mig_cost_ttl::after {}

    .mig_cost_tbl {}

    .mig_cost_tbl tr {
        display: flex;
        flex-direction: column;
    }

    .mig_cost_tbl tr th,
    .mig_cost_tbl tr td {
        padding: 21px 0 0;
        border-bottom: none;
    }

    .mig_cost_tbl tr th>div {
        align-items: flex-start;
    }

    .mig_cost_tbl td .mig_col {
        gap: 21px;
    }

    .slider_btn {}

    .slider_btn button[type="button"] {}

    .mig_cost_tbl .slider_bar {}

    .mig_cost_tbl .slider_bar::before,
    .mig_cost_tbl .slider_bar::after {}

    .mig_cost_tbl .slider_bar.-people::before {}

    .mig_cost_tbl .slider_bar.-people::after {}

    .mig_cost_tbl .slider_bar.-year::before {}

    .mig_cost_tbl .slider_bar.-year::after {}

    .mig_cost_tbl .slider_bar .ui-slider-handle.ui-corner-all.ui-state-default {}

    .mig_cost_num {}

    .mig_input {
        margin-top: 15px;
    }

    .mig_input input[type="number"] {}

    .mig_input:has(input[type="number"]:read-only) {}

    td .mig_input:nth-child(2) {}

    td .mig_radio:nth-child(2) {}

    .mig_radio label {}

    .mig_radio input[type="radio"] {}

    .mig_radio input[type="radio"]+span {}

    .mig_radio input[type="radio"]+span::before {
        top: 5px;
        transform: none;
    }

    .mig_radio input[type="radio"]:checked+span::after {
        top: 19px;
    }

    .mig_calc_btn {
        margin-bottom: 28px;
        padding: 0 16px;
        width: 100%;
        height: 97px;
        font-size: 24px;
    }

    .mig_cost_result .mig_card {
        margin-bottom: 22px;
    }

    .mig_cost_result .mig_card em {
        font-size: 24px;
    }

    .mig_cost_result .mig_col {
        flex-direction: column;
        gap: 16px;
        text-align: center;
    }

    .mig_cost_result .-end {
        text-align: center;
    }

    .mig_cost_result .-end span {}

    #total_employment_period_cost {}

    .mig_sec.-reason {
        padding: 64px 0 62px;
    }

    .mig_sec.-reason .mig_col {
        margin: 32px 0 42px;
    }

    .mig_sec.-reason .mig_col:nth-of-type(2) {}

    .mig_reason_ttl_wrap {
        padding-top: 0;
    }

    .mig_reason_ttl_wrap strong {
        font-size: 38px;
    }

    .mig_reason_ttl_wrap strong::after {}

    .mig_reason_ttl {
        font-size: 22px;
    }

    .mig_reason_box {
        padding: 12px 16px;
    }

    .mig_reason_box_inner {
        padding: 12px;
    }

    .-reason .mig_card_list.-wrap {
        flex-direction: column;
        gap: 12px;
    }

    .-reason .mig_card_list.-wrap li {
        width: 100%;
    }

    .mig_reason_box_ttl {}

    .mig_reason_strength {
        margin-top: 32px;
        padding: 45px 16px 22px;
    }

    .mig_reason_strength_ttl {
        top: -14px;
        font-size: 16px;
        padding: 0 3px;
        width: 100%;
        max-width: 264px;
    }

    .mig_reason_strength_list {
        gap: 12px;
        flex-wrap: wrap;
    }

    .mig_reason_strength_list li {
        width: calc((100% - 12px) / 2);
    }

    .mig_sec.-voice {
        padding: 52px 0 62px;
    }

    .voice_slider li {}

    .voice_slider {}

    .voice_slider .slick-slide {}

    .voice_slider .slick-slide p {}

    .voice_slider .slick-slide span {}

    .slick-arrow.voice_prev,
    .slick-arrow.voice_next {
        z-index: 999;
    }

    .slick-prev.voice_prev {
        left: 10px;
    }

    .slick-next.voice_next {
        left: calc(100% - 60px);
    }

    .slick-prev.voice_prev::before,
    .slick-next.voice_next::before {}

    .slick-prev.voice_prev:focus,
    .slick-next.voice_next:focus {}

    .slick-prev.voice_prev:focus {}

    .slick-next.voice_next:focus {}

    .slick-arrow.voice_prev:hover {}

    .slick-arrow.voice_next:hover {}

    .mig_sec.-flow {
        padding: 32px 0 42px;
    }

    .mig_flow_block {}

    .mig_flow_list {}

    .inner .mig_flow_block:last-of-type .mig_flow_list {}

    .mig_flow_list li {}

    .mig_flow_list .mig_col {}

    .mig_flow_num {
        width: 52px;
    }

    .mig_flow_num span {
        text-align: center;
    }

    /* 下向きの矢印 */
    .mig_flow_num::before {
        bottom: -12px;
        left: 55%;
    }

    .mig_flow_num.-no_arrow::before {}

    .mig_flow_body {
        padding: 12px 22px;
    }

    .mig_flow_body .-left {
        padding-bottom: 12px;
        width: auto;
        border-right: none;
        border-bottom: solid 1px #707070;
    }

    .mig_flow_body .-left em {
        font-size: 18px;
        margin-bottom: 6px;
    }

    .mig_flow_body .-right {
        width: 100%;
        padding-top: 12px;
        padding-left: 0;
        text-align: center;
    }

    .mig_flow_block>p {}

    .mig_flow_body .-right em {
        display: block;
        width: 112px;
        margin: auto;
    }

    .mig_flow_body .-right p {}

    .mig_flow_body .-right span {}

    .mig_sec.-question {
        padding:  32px 0 42px;
    }

    .mig_question {}

    .mig_question_body {
        padding: 16px 12px;
    }

    .mig_question_body .-left {
        gap: 8px;
    }

    .mig_question_body .-left em {}

    .mig_question_body .-right {}

    .mig_question_btn {}

    .mig_question_btn.-plus {}

    .mig_question_btn.-minus {}

    .mig_answer {
        padding: 0 12px;
    }

    .mig_answer em {}
}