@charset "UTF-8";

img {
    vertical-align: bottom;
}
@media print, screen and (max-width: 768px) {
    #wrapper {
        padding-bottom: 75px;
    }
}
@media screen and (min-width: 1001px) {
    .top .sec01 {
        display: flex;
        justify-content: space-between;
        width: 980px;
        margin: 0 auto;
        padding: 90px 0 0;
    }

    .top .sec01 div {
        background: #fff;
        width: 310px;
        margin-right: 25px;
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
        padding-bottom: 20px;
    }
}

@media screen and (min-width: 900px) {
    .mv img.mv_main {
        max-width: 889px;
    }
}

@media screen and (min-width: 769px) and (max-width: 899px) {
    .mv img.mv_main {
        width: 90%;
    }
}

@media screen and (min-width: 961px) {
    .flow img {
        max-width: 947px;
    }
}

@media screen and (min-width: 769px) and (max-width: 960px) {
    .flow img {
        width: 98%;
        margin-left: auto;
        margin-right: auto;
    }
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
    .top .sec01 {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        max-width: 740px;
        margin: 10px auto 75px;
    }

    .top .sec01 div {
        background: #fff;
        width: 310px;
        margin-right: 20px;
        margin-left: 20px;
        margin-bottom: 40px;
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
        padding-bottom: 20px;
    }
}

@media screen and (min-width: 1338px) {
    img.kizuku {
        position: relative;
        top: 100px;
        left: 540px;
        max-width: 26%;
    }
}

@media screen and (min-width: 769px) and (max-width: 1337px) {
    img.kizuku {
        position: relative;
        top: -70px;
        left: 300px;
        max-width: 26%;
    }
}

@media screen and (min-width: 769px) {
    .mv {
        background: url("../img/top/mv_bg.png") no-repeat center bottom;
        background-size: 100%;
        position: relative;
    }

    .mv_lead {
        color: #333;
        font-size: 30px;
        font-weight: bold;
        margin-top: 60px;
    }

    h2.mv_h2 {
        font-size: 55px;
        font-weight: bold;
        color: #e96f0b;
        margin-top: 70px;
    }

    .mv_text {
        font-size: 18px;
        font-weight: bold;
        color: #333;
        margin-top: -60px;
        line-height: 1.6;
    }

    .arrowbox {
        display: flex;
        justify-content: space-around;
        background-image: url(../img/top/arrowbox_bg.png);
        background-repeat: no-repeat;
        background-position: center bottom;
        height: auto;
        margin: 50px auto;
        max-width: 618px;
        height: 80px;
    }

    .arrowbox_item1 {
        font-size: 18px;
        background-color: #e86b00;
        font-weight: bold;
        color: #fff;
        padding: 5px 5px;
        display: inline-block;
        align-self: flex-start;
        width: 42%;
    }

    .arrowbox_item2 {
        font-size: 34px;
        color: #000;
        font-weight: bold;
        width: 42%;
    }

    .top .sec01 div:last-child {
        margin-right: 0;
    }

    .top .sec01 a:link,
    .top .sec01 a:visited {
        text-decoration: none;
    }

    .top .sec01 a:hover {
        text-decoration: none;
        transition: 0.3s;
        transform: translateY(-5px);
    }

    .top .sec01 div h2 {
        text-align: center;
        padding: 20px 0;
        color: #ed6c00;
        font-size: 18px;
        font-weight: bold;
    }

    .top .sec01 div span.sec01_1 {
        display: block;
        padding: 40px 25px 10px;
        color: #e86b00;
        font-size: 24px;
        font-weight: bold;
        line-height: 160%;
    }

    .top .sec01 div span.sec01_2 {
        display: block;
        padding: 20px 25px 10px;
        color: #e86b00;
        font-size: 24px;
        font-weight: bold;
        line-height: 160%;
    }

    .top .sec01 div span:after {
        content: url(../img/common/icon_link.png);
        margin-left: 10px;
    }

    .top .sec01 div p {
        color: #333333;
        font-size: 16px;
        line-height: 180%;
        padding: 0 25px 0;
    }

    .top .sec01 div .link_btn,
    .top .sec01 div .unpub {
        position: absolute;
        bottom: 40px;
        left: 0;
    }

    .top .sec01 div .unpub {
        font-size: 14px;
        color: #999999;
    }

    .top .reform_banner {
        max-width: 980px;
        margin: 0 auto;
        box-sizing: border-box;
        padding: 70px 0 0;
    }

    .top .reform_banner h2 {
        font-size: 22px;
        color: #333;
        font-weight: bold;
        text-align: center;
    }

    .top .reform_banner a img {
        display: block;
        margin: 40px auto 0 auto;
    }

    .top .reform_banner a:hover img {
        transition: 0.3s;
        transform: translateY(-5px);
    }

    .top .flow {
        border-top: 1px solid #ddddd9;
        border-bottom: 1px solid #ddddd9;
        max-width: 980px;
        margin: 0 auto;
        box-sizing: border-box;
        padding: 30px 0 45px;
        padding-left: 39px;
    }

    .top .flow h2 {
        font-size: 25px;
        color: #e77024;
        font-weight: bold;
        float: left;
        padding-right: 30px;
        margin-bottom: 30px;
    }

    .top .flow h2 span {
        font-size: 16px;
        margin-right: 22px;
    }

    .top .flow img {
        max-width: 947px;
    }

    .top .flow .link_btn {
        font-size: 16px;
    }
}

@media screen and (max-width: 768px) {
    .mv {
        background: url("../img/top/mv_bg_sp.png") no-repeat center top;
        background-size: cover;
        text-align: center;
        position: relative;
        height: auto;
        padding-bottom: 30px;
    }

    .mv_lead {
        font-size: 16px;
        color: #333;
        padding-top: 50px;
        letter-spacing: -1px;
        font-weight: bold;
    }

    img.kizuku {
        margin-top: 10px;
    }

    h2.mv_h2 {
        font-size: 38px;
        font-weight: bold;
        color: #e96f0b;
        margin-top: 40px;
    }

    .mv_text {
        font-size: 16px;
        font-weight: bold;
        color: #333;
        margin-top: 40px;
        line-height: 1.8;
        max-width: 360px;
        max-width: 70%;
        margin-left: auto;
        margin-right: auto;
    }

    .arrowbox {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        background-image: url(../img/top/arrowbox_bg.png);
        background-repeat: no-repeat;
        background-position: center bottom;
        height: auto;
        margin: 40px auto 30px auto;
        max-width: 352px;
        width: 96%;
        height: 160px;
    }

    .arrowbox_item1 {
        font-size: 18px;
        background-color: #e86b00;
        font-weight: bold;
        color: #fff;
        padding: 10px 10px;
        display: inline-block;
        align-self: flex-start;
        width: 275px;
    }

    .arrowbox_item2 {
        font-size: 34px;
        color: #000;
        font-weight: bold;
        width: 96%;
        padding-bottom: 30px;
    }
}

@media screen and (max-width: 360px) {
    .mv .lead {
        line-height: 180%;
        font-size: 15px;
    }
}

a:hover img.kizuku {
    transition: 0.3s;
    transform: translateY(5px);
}

@media screen and (min-width: 769px) {
    .top .movie_box {
        width: auto;
        max-width: 893px;
        display: flex;
        justify-content: space-between !important;
        margin: 60px auto 0;
        padding: 0 0 90px !important;
    }

    .top iframe {
        border-radius: 10px;
        margin-left: 0;
    }

    .top img.kuzuku_movie {
        margin-left: auto;
        margin-right: auto;
    }

    .movie_box2 {
        width: 74%;
        max-width: 670px;
        aspect-ratio: 16 / 9;
        display: block;
        text-align: center;
        /* margin: 0 auto 0; */
        margin: 90px auto 0;
        padding: 0 !important;
    }

    .movie_box2 iframe {
        width: 100%;
        height: 100%;
    }
}

@media screen and (max-width: 768px) {
    .mv img.mv_main {
        max-width: 380px;
        max-width: 94%;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }

    .top .movie_box {
        max-width: 480px;
        max-width: 94%;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column-reverse;
        box-sizing: border-box;
        gap: 40px;
        padding-bottom: 40px;
    }

    .top iframe {
        max-width: 480px;
        max-width: 100%;
        border-radius: 10px;
        margin: 0 auto;
    }

    .top img.kuzuku_movie {
        margin: 60px auto 0;
    }

    .movie_box2 {
        max-width: 480px;
        max-width: 94%;
        aspect-ratio: 16 / 9;
        display: block;
        text-align: center;
        margin: 40px auto 0;
        padding: 0 !important;
    }

    .movie_box2 iframe {
        max-width: 480px;
        max-width: 100%;
        height: 100%;
    }

    .top .sec01 {
        width: 100%;
        max-width: 740px;
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        padding: 40px 0 0;
    }

    .top .sec01 div {
        background: #fff;
        width: 280px !important;
        margin-left: 10px;
        margin-right: 10px;
        margin-top: 40px;
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
        padding-bottom: 20px;
    }

    .top .sec01 a {
        text-decoration: none;
    }

    .top .sec01 div h2 {
        text-align: center;
        padding: 20px 0;
        color: #ed6c00;
        font-size: 18px;
        font-weight: bold;
    }

    .top .sec01 div span.sec01_1 {
        display: block;
        padding: 30px 25px 10px;
        color: #e86b00;
        font-size: 20px;
        font-weight: bold;
        line-height: 160%;
    }

    .top .sec01 div span.sec01_2 {
        display: block;
        padding: 20px 20px 10px;
        color: #e86b00;
        font-size: 20px;
        font-weight: bold;
        line-height: 160%;
    }

    .top .sec01 div span:after {
        content: url(../img/common/icon_link.png);
        margin-left: 10px;
    }

    .top .sec01 div p {
        color: #333333;
        font-size: 14px;
        line-height: 180%;
        padding: 0 20px 0;
    }

    .top .sec01 div .link_btn,
    .top .sec01 div .unpub {
        position: absolute;
        bottom: 20px;
        left: 0;
    }

    .top .sec01 div .unpub {
        font-size: 14px;
        color: #999999;
    }

    .top .news {
        border-top: 1px solid #ddddd9;
        margin: 0 auto;
        width: calc(100% - 40px);
        box-sizing: border-box;
        padding: 60px 0 20px;
    }

    .top .news ul li {
        list-style-image: url(../img/top/news_list.png);
        list-style-position: inside;
        font-size: 16px;
        color: #000;
        line-height: 1.6;
        margin-left: 30px;
        margin-bottom: 10px;
    }

    .top .news h2 {
        font-size: 25px;
        color: #e77024;
        font-weight: bold;
        margin-bottom: 30px;
    }

    .top .news h2 span {
        font-size: 16px;
        margin-right: 22px;
    }

    .top .reform_banner {
        border-top: 1px solid #ddddd9;
        margin: 0 auto;
        width: calc(100% - 40px);
        box-sizing: border-box;
        padding: 20px 0 20px;
    }

    .top .reform_banner h2 {
        font-size: 18px;
        color: #333;
        font-weight: bold;
        text-align: center;
        line-height: 1.6;
    }

    .top .reform_banner a img {
        display: block;
        margin: 30px auto 0px auto;
    }

    .top .flow {
        border-top: 1px solid #ddddd9;
        border-bottom: 1px solid #ddddd9;
        margin: 0 auto;
        width: calc(100% - 40px);
        box-sizing: border-box;
        padding: 20px 0 20px;
    }

    .top .flow h2 {
        font-size: 18px;
        color: #e77024;
        font-weight: bold;
        float: left;
        padding-left: 10px;
        padding-right: 10px;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .top .flow h2 img {
        padding-right: 10px;
    }

    .top .flow .link_btn {
        font-size: 16px;
    }
}

@media screen and (min-width: 769px) {

    .form input,
    .form button {
        font-family: "Noto Sans Japanese", -apple-system, BlinkMacSystemFont,
            YuGothic, "Yu Gothic", Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue,
            Verdana, Meiryo, sans-serif;
    }

    .form#contents {
        padding-bottom: 0;
    }

    .form .under_ttl {
        background: #fff;
        font-size: 22px;
        font-weight: bold;
        color: #e77024;
        padding: 20px 0;
    }

    .form .under_ttl span {
        display: block;
        width: 980px;
        margin: 0 auto;
    }

    .form .under_ttl img {
        vertical-align: middle;
        padding-right: 28px;
    }

    .form .form_lead {
        font-size: 16px;
        color: #333;
        width: 980px;
        margin: 20px auto 30px;
    }

    .form .form_lead span {
        display: block;
        font-size: 12px;
        margin-top: 20px;
        line-height: 230%;
    }

    .form .form_lead.thanks {
        min-height: calc(100vh - 490px);
        margin-bottom: 0;
    }

    .form .form_lead.thanks span {
        font-size: 14px;
        line-height: 180%;
        margin-bottom: 30px;
    }

    .form .form_lead.thanks a {
        font-size: 14px;
        padding-top: 4px;
        padding-bottom: 2px;
    }

    .form .caution {
        background: #fff;
        box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
        border-radius: 5px;
        width: 980px;
        margin: 0 auto 40px;
        padding: 28px 28px 40px;
        box-sizing: border-box;
    }

    .form .caution h3 {
        background: url("../img/contact/caution.png") no-repeat left;
        background-size: auto 100%;
        padding: 6px 0 6px 40px;
        color: #cb0000;
        font-size: 16px;
        margin-bottom: 12px;
    }

    .form .caution h4 {
        margin-left: 40px;
        background: #e77024;
        color: #fff;
        margin-right: 23px;
        font-size: 16px;
        font-weight: bold;
        padding: 4px 10px 6px;
        margin-bottom: 10px;
    }

    .form .caution ul {
        margin-bottom: 40px;
    }

    .form .caution ul li {
        font-size: 16px;
        margin-left: 50px;
        margin-bottom: 13px;
        line-height: 160% \0;
        color: #333;
    }

    .form .caution ul li:before {
        content: "";
        display: inline-block;
        border-left: 3px solid #e77024;
        border-bottom: 3px solid #e77024;
        height: 5px;
        width: 9px;
        transform: rotate(-45deg);
        margin-right: 5px;
        position: relative;
        top: -3px;
    }

    .form .caution p {
        margin-left: 40px;
    }

    .form .caution .check {
        font-size: 18px;
    }

    .form .caution .check:before {
        width: 30px;
        height: 30px;
    }

    .form .caution .check.check {
        padding-left: 45px;
        padding-top: 8px;
        padding-top: 10px\0;
    }

    .form .caution .check:after {
        display: none;
        top: 50%;
        left: 10px;
        width: 19px;
        height: 11px;
        border-left: 3px solid #666;
        border-bottom: 3px solid #666;
        transform: rotate(-45deg);
    }

    .form.confirm .caution {
        padding: 20px;
    }

    .form.confirm .caution ul {
        margin-bottom: 0px;
    }

    .form.confirm .caution ul li {
        margin-left: 0;
        margin-bottom: 0;
        font-size: 18px;
    }

    .form.confirm .caution ul li:before {
        margin-right: 15px;
    }

    .form.confirm .pref,
    .form.confirm .address {
        margin: 27px 0;
    }

    .form input::placeholder {
        color: #999;
    }

    .form input:-ms-input-placeholder {
        color: #999;
    }

    .form input::-ms-input-placeholder {
        color: #999;
    }

    /* .form input[type='radio'], .form input[type='checkbox'] {
    display: none; }*/
    .form label.radio {
        cursor: pointer;
        display: inline-block;
        position: relative;
        margin: 0 50px 0 0;
        padding: 0 0 0 30px;
        padding-top: 3px\0;
        color: #666;
        vertical-align: top;
    }

    .form label.radio:before,
    .form label.radio:after {
        content: "";
        position: absolute;
    }

    .form label.radio:before {
        display: block;
        top: -1px;
        left: 4px;
        width: 18px;
        height: 18px;
        border: 1px solid #dfdfdf;
        border-radius: 50%;
        background: #fff;
    }

    .form label.radio:after {
        display: none;
        top: 5px;
        left: 10px;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #666;
    }

    .form input:checked+label.radio:after {
        display: block;
    }

    .form label.check {
        cursor: pointer;
        display: inline-block;
        position: relative;
        margin: 0 50px 0 0;
        padding: 0 0 0 30px;
        padding-top: 3px\0;
        color: #666;
        vertical-align: top;
        font-size: 16px;
    }

    .form label.check:before,
    .form label.check:after {
        content: "";
        position: absolute;
    }

    .form label.check:before {
        display: block;
        top: 50%;
        margin-top: -9px;
        left: 4px;
        width: 18px;
        height: 18px;
        border: 1px solid #dfdfdf;
        border-radius: 3px;
        background: #efefef;
    }

    .form label.check:after {
        display: none;
        top: 50%;
        margin-top: -6px;
        left: 8px;
        width: 12px;
        height: 6px;
        border-left: 2px solid #666;
        border-bottom: 2px solid #666;
        transform: rotate(-45deg);
    }

    .form input:checked+label.check:after {
        display: block;
    }

    .form .sec {
        font-size: 16px;
        width: 980px;
        margin: 0 auto 65px;
    }

    .form .sec.last {
        margin-bottom: 0;
    }

    .form .sec h3 {
        background: #969694;
        color: #fff;
        font-size: 16px;
        border-left: 7px solid #e77024;
        padding: 10px 18px;
        margin-bottom: 24px;
    }

    .form .sec table {
        text-align: left;
        font-weight: normal;
        color: #333;
        border-top: 1px solid #e9e7e7;
        width: 100%;
    }

    .form .sec table th {
        font-weight: normal;
        width: 310px;
        box-sizing: border-box;
        padding: 26px 13px 23px 18px;
        border-bottom: 1px solid #fff;
        position: relative;
        background: #ebeae3;
        vertical-align: top;
        background-clip: padding-box;
        text-align: left;
    }

    .form .sec table th span {
        display: inline-block;
        background: #f00;
        float: right;
        color: #fff;
        font-size: 11px;
        padding: 3px 5px 4px 5px;
        border-radius: 3px;
        position: absolute;
        right: 12px;
        line-height: 100%;
        vertical-align: middle;
    }

    .form .sec table th .left {
        float: left;
    }

    .form .sec table th .right {
        text-align: right;
        float: right;
        padding-right: 48px;
        font-size: 12px;
        margin-top: 3px;
    }

    .form .sec table th .right ul li {
        margin-bottom: 35px;
        margin-bottom: 40px\0;
    }

    .form .sec table th .right ul li:last-child {
        margin-bottom: 0;
    }

    @-moz-document url-prefix() {
        .form .sec table th .right ul li {
            margin-bottom: 40px;
        }
    }

    .form .sec table td {
        border-bottom: 1px solid #e9e7e7;
        vertical-align: middle;
        padding: 16px 13px 16px 18px;
        border-left: 1px solid #d6d5cf;
        box-shadow: 15px 0 15px -15px rgba(0, 0, 0, 0.15) inset;
    }

    .form .sec input[type="text"] {
        font-size: 16px;
        padding: 7px;
        border-radius: 3px;
        border: 1px solid #dfdfdf;
        width: 517px;
        box-sizing: border-box;
    }

    .form .sec input[type="text"].tel01,
    .form .sec input[type="text"].tel02 {
        width: 100px;
        margin-bottom: 12px;
    }

    .form .sec input[type="text"].tel02 {
        margin-right: 10px;
    }

    .form .sec input[type="text"].tel02+a {
        font-size: 14px;
    }

    .form .sec input[type="text"].address,
    .form .sec input[type="text"].address02 {
        margin-bottom: 12px;
    }

    .form .sec input[type="text"].sei,
    .form .sec input[type="text"].mei {
        width: 230px;
    }

    .form .sec input[type="text"].torihiki_shamei {
        width: 100%;
    }

    .form .sec input[type="tel"] {
        border: 1px solid #dfdfdf;
        font-size: 16px;
        padding: 7px;
        width: 517px;
        box-sizing: border-box;
        border-radius: 3px;
    }

    .form .sec input[type="email"] {
        border: 1px solid #dfdfdf;
        font-size: 16px;
        padding: 7px;
        width: 517px;
        box-sizing: border-box;
        border-radius: 3px;
    }

    .form .sec textarea {
        border: 1px solid #dfdfdf;
        font-size: 14px;
        padding: 7px;
        height: 130px;
        width: 100%;
        box-sizing: border-box;
        border-radius: 3px;
    }

    .form .sec select {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        border: 0;
        border: 1px solid #dfdfdf;
        border-radius: 0;
        border-radius: 5px;
        background: none transparent;
        background: #fff;
        color: inherit;
        font-size: inherit;
        font-size: 16px;
        vertical-align: middle;
        appearance: none;
        -moz-appearance: none;
        -webkit-appearance: none;
    }

    .form .sec select::-ms-expand {
        display: none;
    }

    .form .sec select {
        font-size: 16px;
        border: 1px solid #dfdfdf;
        padding: 7px;
        border-radius: 3px;
        margin-bottom: 12px;
        width: 240px;
        height: 40px;
        padding: 0 14px;
    }

    .form .sec .wrap-select {
        display: inline-block;
        position: relative;
    }

    .form .sec .wrap-select:after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        right: 10px;
        width: 7px;
        height: 14px;
        margin: -14px 0 0;
        background: url(../img/contact/ico_select_01.png) no-repeat 0 0;
        background-size: contain;
        pointer-events: none;
    }

    .form .sec dl dt {
        background: #ebeae3;
        padding: 16px 20px;
        margin-bottom: 20px;
    }

    .form .sec dl dt span {
        display: inline-block;
        background: #f00;
        margin-left: 20px;
        color: #fff;
        font-size: 11px;
        padding: 3px 5px 4px 5px;
        border-radius: 3px;
        line-height: 100%;
        vertical-align: middle;
    }

    .form .sec dl dd {
        margin-bottom: 30px;
        padding: 0 20px;
    }

    .form .sec dl dd.gyosyu {
        margin-bottom: 10px;
    }

    .form .sec dl dd ul li {
        display: inline-block;
        margin-bottom: 22px;
    }

    .breadcrumb {
        width: 980px;
        margin: 0 auto;
        font-size: 12px;
        padding: 15px 0;
        color: #333;
    }

    .breadcrumb ul li {
        display: inline;
    }

    .breadcrumb ul li:after {
        content: ">";
        padding: 0 3px;
    }

    .breadcrumb ul li:last-child:after {
        content: none;
    }

    .breadcrumb ul li a {
        text-decoration: none;
    }

    .submit,
    .cancel {
        border: none;
        background: none;
    }
}

@media screen and (max-width: 768px) {
    .form#contents {
        padding-bottom: 0;
    }

    .form .under_ttl {
        background: #fff;
        font-size: 16px;
        font-weight: bold;
        color: #e77024;
        padding: 10px 0;
    }

    .form .under_ttl span {
        display: block;
        margin: 0 15px;
    }

    .form .under_ttl img {
        vertical-align: middle;
        padding-right: 15px;
        width: 50px;
    }

    .form .form_lead {
        font-size: 16px;
        color: #333;
        margin: 20px 15px 30px;
        line-height: 200%;
    }

    .form .form_lead span {
        display: block;
        font-size: 70%;
        margin-top: 0px;
        line-height: 230%;
    }

    .form .form_lead.thanks {
        min-height: calc(100vh - 400px);
        margin-bottom: 0;
    }

    .form .form_lead.thanks span {
        font-size: 14px;
        line-height: 180%;
        margin-bottom: 30px;
    }

    .form .form_lead.thanks a {
        font-size: 14px;
        padding-top: 4px;
        padding-bottom: 2px;
    }

    .form .caution {
        background: #fff;
        box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
        border-radius: 5px;
        margin: 0 15px 40px;
        padding: 15px 15px 40px;
        box-sizing: border-box;
    }

    .form .caution h3 {
        background: url("../img/contact/caution.png") no-repeat center top;
        padding: 40px 0 6px 0px;
        color: #cb0000;
        font-size: 16px;
        margin-bottom: 6px;
        line-height: 180%;
    }

    .form .caution h4 {
        background: #e77024;
        color: #fff;
        font-size: 16px;
        font-weight: bold;
        padding: 4px 10px 6px;
        margin-bottom: 10px;
    }

    .form .caution ul {
        margin-bottom: 40px;
    }

    .form .caution ul li {
        font-size: 16px;
        margin-bottom: 13px;
        color: #333;
        margin-left: 1.8em;
        text-indent: -1em;
        line-height: 140%;
    }

    .form .caution ul li:before {
        content: "";
        display: inline-block;
        border-left: 3px solid #e77024;
        border-bottom: 3px solid #e77024;
        height: 5px;
        width: 9px;
        transform: rotate(-45deg);
        margin-right: 5px;
        position: relative;
        top: -3px;
    }

    .form .caution p {
        margin-left: 40px;
    }

    .form .caution .check {
        font-size: 18px;
    }

    .form .caution .check:before {
        width: 30px;
        height: 30px;
    }

    .form .caution .check.check {
        padding-left: 45px;
        padding-top: 5px;
    }

    .form .caution .check:after {
        display: none;
        top: 4px;
        left: 10px;
        width: 19px;
        height: 11px;
        border-left: 3px solid #666;
        border-bottom: 3px solid #666;
        transform: rotate(-45deg);
    }

    .form.confirm .caution {
        padding: 10px;
        padding-left: 0;
    }

    .form.confirm .caution ul {
        margin-bottom: 0px;
    }

    .form.confirm .caution ul li {
        font-size: 15px;
        margin-bottom: 0;
    }

    .form.confirm .pref,
    .form.confirm .address {
        margin: 27px 0;
    }

    .form input::placeholder {
        color: #999;
    }

    .form input:-ms-input-placeholder {
        color: #999;
    }

    .form input::-ms-input-placeholder {
        color: #999;
    }

    /* .form input[type='radio'], .form input[type='checkbox'] {
    display: none; }*/
    .form label.radio {
        cursor: pointer;
        display: inline-block;
        position: relative;
        margin: 0 0px 10px 0;
        padding: 0 0 0 30px;
        color: #666;
        vertical-align: top;
    }

    .form label.radio:before,
    .form label.radio:after {
        content: "";
        position: absolute;
    }

    .form label.radio:before {
        display: block;
        top: -3px;
        left: 4px;
        width: 18px;
        height: 18px;
        border: 1px solid #dfdfdf;
        border-radius: 50%;
        background: #fff;
    }

    .form label.radio:after {
        display: none;
        top: 3px;
        left: 10px;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #666;
    }

    .form input:checked+label.radio:after {
        display: block;
    }

    .form label.check {
        cursor: pointer;
        display: inline-block;
        position: relative;
        margin: 0 0px 0 0;
        padding: 0 0 0 30px;
        color: #666;
        vertical-align: top;
        font-size: 14px;
        line-height: 140%;
    }

    .form label.check:before,
    .form label.check:after {
        content: "";
        position: absolute;
    }

    .form label.check:before {
        display: block;
        top: 0px;
        left: 4px;
        width: 18px;
        height: 18px;
        border: 1px solid #dfdfdf;
        border-radius: 3px;
        background: #efefef;
    }

    .form label.check:after {
        display: none;
        top: 3px;
        left: 8px;
        width: 12px;
        height: 6px;
        border-left: 2px solid #666;
        border-bottom: 2px solid #666;
        transform: rotate(-45deg);
    }

    .form input:checked+label.check:after {
        display: block;
    }

    .form .sec {
        font-size: 14px;
        margin: 0 auto 65px;
    }

    .form .sec.last {
        margin-bottom: 0;
    }

    .form .sec h3 {
        background: #969694;
        color: #fff;
        font-size: 16px;
        box-sizing: border-box;
        border-left: 7px solid #e77024;
        padding: 10px 18px;
        margin-bottom: 24px;
    }

    .form .sec table {
        text-align: left;
        font-weight: normal;
        color: #333;
        border-top: 1px solid #e9e7e7;
        width: 100%;
        display: block;
    }

    .form .sec table tr,
    .form .sec table th,
    .form .sec table tbody,
    .form .sec table td {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }

    .form .sec table th {
        font-weight: normal;
        box-sizing: border-box;
        padding: 10px 0px 10px 15px;
        border-bottom: 1px solid #fff;
        position: relative;
        background: #ebeae3;
        vertical-align: top;
    }

    .form .sec table th span {
        display: inline-block;
        background: #f00;
        margin-left: 10px;
        color: #fff;
        font-size: 11px;
        padding: 3px 5px 4px 5px;
        border-radius: 3px;
        line-height: 100%;
        vertical-align: middle;
    }

    .form .sec table th .right {
        display: none;
        text-align: right;
    }

    .form .sec table th .right ul li {
        margin-bottom: 28px;
    }

    .form .sec table th .right ul li:last-child {
        margin-bottom: 0;
    }

    .form .sec table td {
        border-bottom: 1px solid #e9e7e7;
        vertical-align: middle;
        padding: 16px 13px 26px 18px;
        border-left: 1px solid #d6d5cf;
        box-shadow: 15px 0 15px -15px rgba(0, 0, 0, 0.15) inset;
    }

    .form .sec input[type="text"] {
        font-size: 16px;
        padding: 7px;
        border-radius: 3px;
        border: 1px solid #dfdfdf;
        width: 100%;
        box-sizing: border-box;
    }

    .form .sec input[type="text"].tel01,
    .form .sec input[type="text"].tel02 {
        width: 100px;
        margin-bottom: 12px;
    }

    .form .sec input[type="text"].tel02 {
        margin-right: 10px;
    }

    .form .sec input[type="text"].tel02+a {
        font-size: 14px;
    }

    .form .sec input[type="text"].address,
    .form .sec input[type="text"].address02 {
        margin-bottom: 12px;
    }

    .form .sec input[type="text"].sei,
    .form .sec input[type="text"].mei {
        width: 30%;
    }

    .form .sec input[type="text"].torihiki_shamei {
        width: 100%;
    }

    .form .sec input[type="tel"] {
        border: 1px solid #dfdfdf;
        font-size: 16px;
        padding: 7px;
        width: 100%;
        box-sizing: border-box;
        border-radius: 3px;
    }

    .form .sec input[type="email"] {
        border: 1px solid #dfdfdf;
        font-size: 16px;
        padding: 7px;
        width: 100%;
        box-sizing: border-box;
        border-radius: 3px;
    }

    .form .sec textarea {
        border: 1px solid #dfdfdf;
        font-size: 14px;
        padding: 7px;
        height: 130px;
        width: 100%;
        box-sizing: border-box;
        border-radius: 3px;
    }

    .form .sec select {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        border: 0;
        border: 1px solid #dfdfdf;
        border-radius: 0;
        border-radius: 5px;
        background: none transparent;
        background: #fff;
        color: inherit;
        font-size: inherit;
        font-size: 16px;
        vertical-align: middle;
        appearance: none;
        -moz-appearance: none;
        -webkit-appearance: none;
    }

    .form .sec select::-ms-expand {
        display: none;
    }

    .form .sec select {
        font-size: 16px;
        border: 1px solid #dfdfdf;
        padding: 7px;
        border-radius: 3px;
        width: 100%;
        margin-bottom: 12px;
    }

    .form .sec .wrap-select {
        display: inline-block;
        position: relative;
        width: 100%;
    }

    .form .sec .wrap-select:after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        right: 10px;
        width: 7px;
        height: 14px;
        margin: -14px 0 0;
        background: url(../img/contact/ico_select_01.png) no-repeat 0 0;
        background-size: contain;
        pointer-events: none;
    }

    .form .sec .pref {
        margin-top: 10px;
    }

    .form .sec dl {
        overflow: hidden;
    }

    .form .sec dl dt {
        background: #ebeae3;
        padding: 16px 20px;
        margin-bottom: 20px;
        box-sizing: border-box;
        line-height: 160%;
    }

    .form .sec dl dt span {
        display: inline-block;
        background: #f00;
        margin-left: 20px;
        color: #fff;
        font-size: 11px;
        padding: 3px 5px 4px 5px;
        border-radius: 3px;
        line-height: 100%;
        vertical-align: middle;
    }

    .form .sec dl dd {
        margin-bottom: 30px;
        padding: 0 20px;
    }

    .form .sec dl dd.gyosyu {
        margin-bottom: 10px;
    }

    .form .sec dl dd ul li {
        display: inline-block;
        margin-bottom: 12px;
        width: 49%;
    }

    .form .sec dl dd ul.from li {
        width: 100%;
    }

    .form .sec dl dd .check input[type="text"] {
        margin-top: 10px;
    }

    .breadcrumb {
        margin: 0 15px;
        font-size: 10px;
        padding: 5px 0;
        color: #333;
    }

    .breadcrumb ul li {
        display: inline;
    }

    .breadcrumb ul li:after {
        content: ">";
        padding: 0 3px;
    }

    .breadcrumb ul li:last-child:after {
        content: none;
    }

    .breadcrumb ul li a {
        text-decoration: none;
    }

    .submit,
    .cancel {
        border: none;
        background: none;
    }
}

@media screen and (min-width: 769px) {
    .flow#contents {
        padding-bottom: 0;
    }

    .flow .under_ttl {
        background: #fff url("../img/flow/ttl_bg.png") no-repeat right;
        color: #e77024;
    }

    .flow .under_ttl .inner {
        display: block;
        width: 980px;
        padding: 70px 0;
        margin: 0 auto;
    }

    .flow .under_ttl span {
        font-size: 22px;
        font-weight: bold;
    }

    .flow .under_ttl img {
        vertical-align: middle;
        padding-right: 28px;
        display: inline-block;
        width: 108px;
    }

    .flow .breadcrumb {
        margin-bottom: 20px;
    }

    .flow .step_wrap {
        width: 980px;
        padding-bottom: 80px;
        margin: 0 auto 0px;
    }

    .flow .step_wrap .step {
        margin-bottom: 25px;
    }

    .flow .step_wrap .step:last-child .left:before {
        content: none;
    }

    .flow .step_wrap .step .left {
        float: left;
        width: 492px;
        padding-left: 55px;
        box-sizing: border-box;
        padding-bottom: 25px;
        position: relative;
        min-height: 182px;
    }

    .flow .step_wrap .step .left:before {
        content: "";
        position: absolute;
        width: 3px;
        height: calc(100%);
        min-height: 172px;
        background: #e77024;
        top: 0px;
        bottom: 0;
        left: 20px;
    }

    .flow .step_wrap .step .right {
        width: 435px;
        float: right;
        margin-top: -20px;
    }

    .flow .step_wrap .step h4 {
        font-size: 20px;
        font-weight: bold;
        vertical-align: middle;
        margin-bottom: 16px;
        color: #333;
        padding-left: 5px;
    }

    .flow .step_wrap .step h4 span {
        color: #e77024;
        vertical-align: 2px;
        font-size: 14px;
        display: inline-block;
        padding-right: 15px;
    }

    .flow .step_wrap .step h5 {
        font-size: 16px;
        color: #333;
        font-weight: bold;
        margin-bottom: 10px;
    }

    .flow .step_wrap .step .txt {
        font-size: 16px;
        line-height: 180%;
        color: #333;
        margin-bottom: 15px;
    }

    .submit {
        /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#62ad27+0,589c23+100 */
        background: #62ad27;
        /* Old browsers */
        background: -moz-linear-gradient(top, #62ad27 0%, #589c23 100%);
        /* FF3.6-15 */
        background: -webkit-linear-gradient(top, #62ad27 0%, #589c23 100%);
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom, #62ad27 0%, #589c23 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62ad27', endColorstr='#589c23', GradientType=0);
        /* IE6-9 */
        color: #fff;
        font-size: 18px;
        border: none;
        border-radius: 5px;
        text-align: center;
        padding: 15px 25px;
    }

    .breadcrumb {
        max-width: 980px;
        width: 96%;
        margin: 0 auto;
        font-size: 12px;
        padding: 15px 0;
        color: #333;
    }

    .breadcrumb ul li {
        display: inline;
    }

    .breadcrumb ul li:after {
        content: ">";
        padding: 0 3px;
    }

    .breadcrumb ul li:last-child:after {
        content: none;
    }

    .breadcrumb ul li a {
        text-decoration: none;
    }
}

@media screen and (max-width: 768px) {
    .flow#contents {
        padding-bottom: 0;
    }

    .flow .under_ttl {
        background: #fff;
        font-size: 16px;
        font-weight: bold;
        color: #e77024;
    }

    .flow .under_ttl span {
        display: block;
        margin: 0 15px;
    }

    .flow .under_ttl img {
        vertical-align: middle;
        padding-right: 15px;
        width: 50px;
    }

    .flow .under_ttl .inner {
        padding: 10px 0;
    }

    .flow .under_ttl>img {
        width: 100%;
        object-fit: cover;
        height: 90px;
        padding-right: 0;
    }

    .flow .basic_ttl {
        margin: 0 15px 15px;
    }

    .flow .step_wrap {
        width: 100%;
        box-sizing: border-box;
        margin: 0 auto 0px;
        padding: 0 15px 80px;
    }

    .flow .step_wrap .step {
        margin-bottom: 25px;
    }

    .flow .step_wrap .step:last-child .left:before {
        content: none;
    }

    .flow .step_wrap .step .left {
        padding-left: 25px;
        box-sizing: border-box;
        padding-bottom: 10px;
        position: relative;
        margin-bottom: 15px;
    }

    .flow .step_wrap .step .left:before {
        content: "";
        position: absolute;
        width: 2px;
        height: calc(100%);
        background: #e77024;
        top: 0px;
        bottom: 0;
        left: 10px;
    }

    .flow .step_wrap .step .right {
        margin-top: 0px;
    }

    .flow .step_wrap .step h4 {
        font-size: 16px;
        font-weight: bold;
        vertical-align: middle;
        margin-bottom: 10px;
        color: #333;
        padding-left: 5px;
    }

    .flow .step_wrap .step h4 span {
        color: #e77024;
        vertical-align: 2px;
        font-size: 12px;
        display: block;
        margin-bottom: 2px;
    }

    .flow .step_wrap .step h5 {
        font-size: 14px;
        color: #333;
        font-weight: bold;
        margin-bottom: 3px;
    }

    .flow .step_wrap .step .txt {
        font-size: 14px;
        line-height: 180%;
        color: #333;
        margin-bottom: 10px;
    }

    .flow .breadcrumb {
        margin: 0 15px 10px;
        font-size: 10px;
        padding: 5px 0;
        color: #333;
    }

    .flow .breadcrumb ul li {
        display: inline;
    }

    .flow .breadcrumb ul li:after {
        content: ">";
        padding: 0 3px;
    }

    .flow .breadcrumb ul li:last-child:after {
        content: none;
    }

    .flow .breadcrumb ul li a {
        text-decoration: none;
    }
}

@media screen and (min-width: 1000px) {
    .merit .merit_wrap {
        max-width: 980px;
        padding-bottom: 80px;
        margin: 0 auto 0px;
    }

    .merit .under_ttl .inner {
        display: block;
        width: 980px;
        padding: 70px 0;
        margin: 0 auto;
    }
}

@media screen and (min-width: 769px) and (max-width: 999px) {
    .merit .merit_wrap {
        width: 96%;
        padding-bottom: 80px;
        margin: 0 auto 0px;
    }

    .merit .under_ttl .inner {
        display: block;
        width: 980px;
        padding: 70px 0;
        margin: 0 auto;
    }
}

@media screen and (min-width: 769px) {
    .merit .merit_wrap img.merit_img {
        max-width: 100%;
    }

    .merit .merit_wrap img.merit_img2 {
        max-width: 100%;
        margin-top: 80px;
    }
}

@media screen and (max-width: 768px) {
    .merit .merit_wrap img.merit_img2 {
        margin-top: 40px;
    }
}

@media screen and (min-width: 769px) {
    .merit#contents {
        padding-bottom: 0;
        background: ;
    }

    .merit .breadcrumb {
        margin-bottom: 30px;
    }

    .merit .under_ttl {
        background: #fff url("../img/merit/ttl_bg.png") no-repeat right;
        background-size: auto 100%;
        color: #e77024;
    }

    .merit .under_ttl span {
        font-size: 22px;
        line-height: 170%;
        font-weight: bold;
    }

    .merit .under_ttl img {
        vertical-align: middle;
        padding-right: 28px;
        float: left;
    }

    .merit .merit_wrap .merit {
        margin-bottom: 30px;
        display: flex;
        justify-content: space-between;
    }

    .merit .merit_wrap .merit2 {
        margin-bottom: 30px;
        display: flex;
    }

    .merit .merit_wrap .merit3 {
        margin-bottom: 30px;
        display: flex;
    }

    .merit .merit_wrap .merit4 {
        margin-bottom: 30px;
        display: flex;
    }

    .merit .merit_wrap .merit:first-child {
        margin-bottom: 30px;
    }

    .merit .merit_wrap .merit.ptn02 {
        border-bottom: 1px solid #ddddd9;
    }

    .merit .merit_wrap .merit:last-child .left:before {
        content: none;
    }

    .merit .merit_wrap .merit.ptn02 {
        padding-bottom: 50px;
        margin-bottom: 35px;
    }

    .merit .merit_wrap .merit .left {
        max-width: 410px;
        width: calc(52% - 40px);
        margin-right: 40px;
        box-sizing: border-box;
        color: #333;
    }

    .merit .merit_wrap .merit2 .left {
        max-width: 490px;
        width: calc(60% - 40px);
        margin-right: 80px;
        margin-left: 0 !important;
        text-align: left;
        color: #333;
    }
    .merit .merit_wrap .merit2 .left02 {
        width: 570px;
        margin-right: 0;
        margin-left: 0 !important;
        text-align: left;
        color: #333;
    }
    .merit .merit_wrap .left02 .left02_note {
        font-size: 1.2rem;
    }
    .merit .merit_wrap .merit2 .left02 + .right {
        margin-left: 0;
    }
    .merit .merit_wrap .merit3 .left {
        max-width: 490px;
        width: calc(60% - 40px);
        margin-right: 80px;
        margin-left: 0 !important;
        text-align: left;
        color: #333;
    }

    .merit .merit_wrap .merit4 .left {
        max-width: 490px;
        width: calc(60% - 40px);
        margin-right: 40px;
        margin-left: 0 !important;
        text-align: left;
        color: #333;
    }
    .merit .merit_wrap .merit4 .left02 {
        max-width: 500px;
        width: calc(60% - 40px);
        margin-right: 40px;
        margin-left: 0 !important;
        text-align: left;
        color: #333;
    }
    .merit .merit_wrap .left02 .txt span {
        font-size: 12px;
        text-align: left;
        line-height: 1.1;
    }
    .merit .merit_wrap .left .txt {
        font-size: 16px;
        text-align: left;
    }

    .merit .merit_wrap .left .txt span {
        font-size: 12px;
        text-align: left;
    }

    .merit .merit_wrap .left .txt2 {
        font-size: 14px;
        text-align: center;
        line-height: 1.8;
    }

    .merit .merit_wrap .left img {
        padding-bottom: 10px;
        display: block;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
    }

    .merit .merit_wrap .left table {
        width: 100%;
        margin-top: 26px;
    }

    .merit .merit_wrap .left table tr th {
        text-align: left;
        font-size: 16px;
        line-height: 190%;
        width: 370px;
        font-weight: normal;
    }

    .merit .merit_wrap .left table tr td {
        text-align: right;
    }

    .merit .merit_wrap .merit .right {
        max-width: 410px;
        width: calc(52% - 40px);
        margin-left: 40px;
        box-sizing: border-box;
    }

    .merit .merit_wrap .merit2 .right {
        max-width: 410px;
        width: calc(52% - 40px);
        margin-left: 40px;
    }

    .merit .merit_wrap .merit3 .right {
        max-width: 330px;
        width: calc(44% - 40px);
        margin-left: 40px;
    }

    .merit .merit_wrap .merit4 .right {
        max-width: 410px;
        width: calc(52% - 40px);
        margin-left: 0px;
    }

    .merit .merit_wrap .right .txt {
        font-size: 16px;
    }

    .merit .merit_wrap .right .txt2 {
        font-size: 14px;
        text-align: center;
        line-height: 1.8;
    }

    .merit .merit_wrap .right img {
        padding-bottom: 10px;
        display: block;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
    }

    .merit .merit_wrap .right .caption2 {
        display: table;
        width: 100%;
    }

    .merit .merit_wrap .right .caption2 span {
        display: table-cell;
        width: 50%;
    }

    .merit .merit_wrap h4 {
        font-size: 20px;
        line-height: 160%;
        font-weight: bold;
        vertical-align: middle;
        margin-bottom: 25px;
        color: #333;
    }

    .merit .merit_wrap h4 span {
        vertical-align: 2px;
        font-size: 12px;
        display: inline-block;
        padding-bottom: 0px;
    }

    .merit .merit_wrap h4 span.subtitle {
        vertical-align: 2px;
        font-size: 16px;
        display: inline-block;
        padding-bottom: 0px;
    }

    .merit .merit_wrap h5 {
        font-size: 16px;
        color: #333;
        font-weight: bold;
        margin-bottom: 20px;
        text-align: center;
    }

    h5.h5_left {
        text-align: left !important;
        margin-top: 40px;
    }

    h5.h5_left2 {
        text-align: left !important;
        margin-top: 20px;
    }

    .merit .merit_wrap .cap {
        font-size: 14px;
        color: #333;
        margin-bottom: 3px;
        text-align: center;
    }

    .merit .merit_wrap .txt {
        font-size: 16px;
        line-height: 190%;
        color: #333;
        margin-bottom: 15px;
    }

    .merit .merit_wrap .txt2 {
        font-size: 16px;
        line-height: 190%;
        color: #333;
        margin-bottom: 15px;
    }

    .merit .merit_wrap .txt2 span {
        font-size: 14px;
        font-weight: bold;
        color: #e77024;
    }

    .merit .merit_wrap .link_btn {
        margin-bottom: 15px;
    }

    .merit .merit_wrap .link_btn a {
        background: url(../img/common/icon_link.png) no-repeat left 5px;
        text-decoration: none;
        color: #000;
        padding-left: 25px;
        font-size: 16px;
    }

    .submit {
        /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#62ad27+0,589c23+100 */
        background: #62ad27;
        /* Old browsers */
        background: -moz-linear-gradient(top, #62ad27 0%, #589c23 100%);
        /* FF3.6-15 */
        background: -webkit-linear-gradient(top, #62ad27 0%, #589c23 100%);
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom, #62ad27 0%, #589c23 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62ad27', endColorstr='#589c23', GradientType=0);
        /* IE6-9 */
        color: #fff;
        font-size: 18px;
        border: none;
        border-radius: 5px;
        text-align: center;
        padding: 15px 25px;
    }

    .breadcrumb {
        width: 980px;
        margin: 0 auto;
        font-size: 12px;
        padding: 15px 0;
        color: #333;
    }

    .breadcrumb ul li {
        display: inline;
    }

    .breadcrumb ul li:after {
        content: ">";
        padding: 0 3px;
    }

    .breadcrumb ul li:last-child:after {
        content: none;
    }

    .breadcrumb ul li a {
        text-decoration: none;
    }
}

@media screen and (max-width: 768px) {
    .merit#contents {
        padding-bottom: 0;
        background: #F9F8F5;
    }

    .merit .breadcrumb {
        margin: 0 15px 10px;
        font-size: 10px;
        padding: 5px 0;
        color: #333;
    }

    .merit .breadcrumb ul li {
        display: inline;
    }

    .merit .breadcrumb ul li:after {
        content: ">";
        padding: 0 3px;
    }

    .merit .breadcrumb ul li:last-child:after {
        content: none;
    }

    .merit .breadcrumb ul li a {
        text-decoration: none;
    }

    .merit .under_ttl {
        background: #fff;
        font-size: 16px;
        font-weight: bold;
        color: #e77024;
        padding: 10px 0;
    }

    .merit .under_ttl span {
        display: block;
        margin: 0 15px;
        line-height: 160%;
    }

    .merit .under_ttl img {
        vertical-align: middle;
        padding-right: 15px;
        width: 50px;
        float: left;
    }

    .merit .under_ttl .inner {
        padding: 10px 0 0;
    }

    .merit .under_ttl>img {
        width: 100%;
        object-fit: cover;
        height: 90px;
        padding-right: 0;
        float: none;
    }

    .merit .basic_ttl {
        margin: 0 15px 15px;
    }

    .merit .merit_wrap {
        width: 100%;
        box-sizing: border-box;
        margin: 0 auto 0px;
        padding: 0 15px 80px;
    }

    .merit .merit_wrap h3 {
        margin-left: 0;
        margin-right: 0;
    }

    .merit .merit_wrap .merit {
        margin-bottom: 30px;
    }

    .merit .merit_wrap .merit2 {
        margin-bottom: 30px;
    }

    .merit .merit_wrap .merit3 {
        margin-bottom: 30px;
    }

    .merit .merit_wrap .merit4 {
        margin-bottom: 30px;
    }

    .merit .merit_wrap .merit:last-child .left:before {
        content: none;
    }

    .merit .merit_wrap .merit.ptn02 {
        border-bottom: 1px solid #ddddd9;
    }

    .merit .merit_wrap .merit .left {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
        margin-top: 20px;
        margin-bottom: 20px;
        box-sizing: border-box;
        color: #333;
    }

    .merit .merit_wrap .merit2 .left,
    .merit .merit_wrap .merit2 .left02 {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
        margin-top: 20px;
        margin-bottom: 20px;
        text-align: left;
        color: #333;
    }
    .merit .merit_wrap .left02 .left02_note {
        font-size: 1.2rem;
    }
    .merit .merit_wrap .merit3 .left {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
        margin-top: 20px;
        margin-bottom: 20px;
        text-align: left;
        color: #333;
    }

    .merit .merit_wrap .merit4 .left {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
        margin-top: 20px;
        margin-bottom: 20px;
        text-align: left;
        color: #333;
    }

    .merit .merit_wrap .left .txt {
        font-size: 16px;
        text-align: left;
    }

    .merit .merit_wrap .left .txt span {
        font-size: 12px;
        text-align: left;
    }

    .merit .merit_wrap .left .txt2 {
        font-size: 14px;
        text-align: center;
        line-height: 1.8;
    }

    .merit .merit_wrap .left img {
        padding-bottom: 10px;
        display: block;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
    }

    .merit .merit_wrap .merit .left table {
        width: 100%;
    }

    .merit .merit_wrap .merit .left table th {
        font-size: 14px;
        padding-right: 20px;
        font-weight: normal;
        text-align: left;
    }

    .merit .merit_wrap .merit .right {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
        margin-top: 20px;
        margin-bottom: 20px;
        box-sizing: border-box;
    }

    .merit .merit_wrap .merit2 .right {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .merit .merit_wrap .merit3 .right {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .merit .merit_wrap .merit4 .right {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .merit .merit_wrap .right .txt {
        font-size: 16px;
    }

    .merit .merit_wrap .right .txt2 {
        font-size: 14px;
        text-align: center;
        line-height: 1.8;
    }

    .merit .merit_wrap .right img {
        padding-bottom: 10px;
        display: block;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
    }

    .merit .merit_wrap .merit .right .caption2 {
        display: table;
        width: 100%;
    }

    .merit .merit_wrap .merit .right .caption2 span {
        display: table-cell;
        width: 50%;
    }

    .merit .merit_wrap h4 {
        font-size: 18px;
        font-weight: bold;
        vertical-align: middle;
        margin-bottom: 10px;
        color: #333;
        line-height: 160%;
    }

    .merit .merit_wrap h4 span {
        font-size: 12px;
        display: block;
        margin-bottom: 2px;
    }

    .merit .merit_wrap h4 span.subtitle {
        vertical-align: 2px;
        font-size: 14px;
        display: inline-block;
        padding-bottom: 0px;
    }

    .merit .merit_wrap h5 {
        font-size: 16px;
        color: #333;
        font-weight: bold;
        margin-bottom: 20px;
        text-align: center;
    }

    h5.h5_left {
        text-align: left !important;
        margin-top: 40px;
    }

    h5.h5_left2 {
        text-align: left !important;
        margin-top: 40px;
    }

    .merit .merit_wrap .cap {
        font-size: 14px;
        color: #333;
        margin-bottom: 3px;
        text-align: center;
    }

    .merit .merit_wrap .txt {
        font-size: 16px;
        line-height: 180%;
        color: #333;
        margin-bottom: 15px;
    }

    .merit .merit_wrap .txt2 {
        font-size: 16px;
        line-height: 190%;
        color: #333;
        margin-bottom: 15px;
    }

    .merit .merit_wrap .txt2 span {
        font-size: 14px;
        font-weight: bold;
        color: #e77024;
    }

    .merit .merit_wrap .link_btn {
        margin-bottom: 15px;
    }

    .merit .merit_wrap .link_btn a {
        background: url(../img/common/icon_link.png) no-repeat left 5px;
        text-decoration: none;
        color: #000;
        padding-left: 25px;
        font-size: 16px;
    }
}

@media screen and (min-width: 769px) {
    .about#contents {
        padding-bottom: 0;
    }

    .about .under_ttl {
        background: #fff url("../img/about/ttl_bg.png") no-repeat right;
        background-size: auto 100%;
        color: #e77024;
    }

    .about .under_ttl .inner {
        display: block;
        width: 980px;
        padding: 70px 0;
        margin: 0 auto;
    }

    .about .under_ttl span {
        font-size: 22px;
        line-height: 170%;
        font-weight: bold;
    }

    .about .under_ttl img {
        vertical-align: middle;
        padding-right: 28px;
    }

    .about .breadcrumb {
        margin-bottom: 20px;
    }

    .about .about_wrap {
        width: 980px;
        padding-bottom: 80px;
        margin: 0 auto 0px;
    }

    .about .about_wrap .about {
        margin-bottom: 60px;
    }

    .about .about_wrap .about:first-child {
        margin-bottom: 30px;
    }

    .about .about_wrap .about:last-child .left:before {
        content: none;
    }

    .about .about_wrap .about.ptn02 {
        padding-bottom: 50px;
        margin-bottom: 35px;
    }

    .about .about_wrap .about .left {
        float: left;
        width: 492px;
        box-sizing: border-box;
        color: #333;
    }

    .about .about_wrap .about .left table {
        width: 100%;
        margin-top: 26px;
    }

    .about .about_wrap .about .left table tr th {
        text-align: left;
        font-size: 16px;
        line-height: 190%;
        width: 370px;
        font-weight: normal;
    }

    .about .about_wrap .about .left table tr td {
        vertical-align: top;
        text-align: left;
    }

    .about .about_wrap .about .right {
        width: 435px;
        float: right;
    }

    .about .about_wrap .about h4 {
        font-size: 20px;
        line-height: 160%;
        font-weight: bold;
        vertical-align: middle;
        margin-bottom: 25px;
        color: #333;
    }

    .about .about_wrap .about h4 span {
        vertical-align: 2px;
        font-size: 12px;
        font-weight: normal;
        display: block;
        padding-bottom: 10px;
    }

    .about .about_wrap .about h5 {
        font-size: 16px;
        color: #333;
        font-weight: bold;
        margin-bottom: 10px;
    }

    .about .about_wrap .about .txt {
        font-size: 16px;
        line-height: 190%;
        color: #333;
        margin-bottom: 15px;
    }

    .about .about_wrap .about .link_btn a {
        background: url(../img/common/icon_link.png) no-repeat left 5px;
        text-decoration: none;
        color: #000;
        padding-left: 25px;
        font-size: 16px;
    }

    .submit {
        /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#62ad27+0,589c23+100 */
        background: #62ad27;
        /* Old browsers */
        background: -moz-linear-gradient(top, #62ad27 0%, #589c23 100%);
        /* FF3.6-15 */
        background: -webkit-linear-gradient(top, #62ad27 0%, #589c23 100%);
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom, #62ad27 0%, #589c23 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62ad27', endColorstr='#589c23', GradientType=0);
        /* IE6-9 */
        color: #fff;
        font-size: 18px;
        border: none;
        border-radius: 5px;
        text-align: center;
        padding: 15px 25px;
    }

    .breadcrumb {
        max-width: 980px;
        width: 96%;
        margin: 0 auto;
        font-size: 12px;
        padding: 15px 0;
        color: #333;
    }

    .breadcrumb ul li {
        display: inline;
    }

    .breadcrumb ul li:after {
        content: ">";
        padding: 0 3px;
    }

    .breadcrumb ul li:last-child:after {
        content: none;
    }

    .breadcrumb ul li a {
        text-decoration: none;
    }
}

@media screen and (max-width: 768px) {
    .about#contents {
        padding-bottom: 0;
    }

    .about .under_ttl {
        background: #fff;
        font-size: 16px;
        font-weight: bold;
        color: #e77024;
        padding: 10px 0;
    }

    .about .under_ttl span {
        display: block;
        margin: 0 15px;
        line-height: 160%;
    }

    .about .under_ttl img {
        vertical-align: middle;
        padding-right: 15px;
        width: 50px;
        float: left;
    }

    .about .under_ttl .inner {
        padding: 10px 0 0;
    }

    .about .under_ttl>img {
        width: 100%;
        object-fit: cover;
        height: 90px;
        padding-right: 0;
        float: none;
    }

    .about .basic_ttl {
        margin: 0 15px 15px;
    }

    .about .about_wrap {
        width: 100%;
        box-sizing: border-box;
        margin: 0 auto 0px;
        padding: 0 15px 80px;
    }

    .about .about_wrap h3 {
        margin-left: 0;
        margin-right: 0;
    }

    .about .about_wrap .about {
        margin-bottom: 50px;
    }

    .about .about_wrap .about:last-child .left:before {
        content: none;
    }

    .about .about_wrap .about .left {
        box-sizing: border-box;
        padding-bottom: 10px;
        position: relative;
    }

    .about .about_wrap .about .left table {
        width: 100%;
    }

    .about .about_wrap .about .left table th {
        font-size: 14px;
        padding-right: 20px;
        font-weight: normal;
        text-align: left;
    }

    .about .about_wrap .about .right {
        margin-top: 0px;
    }

    .about .about_wrap .about h4 {
        font-size: 18px;
        font-weight: bold;
        vertical-align: middle;
        margin-bottom: 10px;
        color: #333;
        line-height: 160%;
    }

    .about .about_wrap .about h4 span {
        vertical-align: 2px;
        font-size: 12px;
        font-weight: normal;
        display: block;
        margin-bottom: 2px;
    }

    .about .about_wrap .about h5 {
        font-size: 14px;
        color: #333;
        font-weight: bold;
        margin-bottom: 3px;
    }

    .about .about_wrap .about .txt {
        font-size: 14px;
        line-height: 180%;
        color: #333;
        margin-bottom: 10px;
    }

    .about .breadcrumb {
        margin: 0 15px 10px;
        font-size: 10px;
        padding: 5px 0;
        color: #333;
    }

    .about .breadcrumb ul li {
        display: inline;
    }

    .about .breadcrumb ul li:after {
        content: ">";
        padding: 0 3px;
    }

    .about .breadcrumb ul li:last-child:after {
        content: none;
    }

    .about .breadcrumb ul li a {
        text-decoration: none;
    }
}

@media screen and (min-width: 769px) {
    .voice#contents {
        padding-bottom: 0;
    }

    .voice .under_ttl {
        background: #fff url("../img/voice/ttl_bg.png") no-repeat right;
        background-size: auto 100%;
        color: #e77024;
    }

    .voice .under_ttl .inner {
        display: block;
        width: 980px;
        padding: 70px 0;
        margin: 0 auto;
    }

    .voice .under_ttl span {
        font-size: 22px;
        line-height: 170%;
        font-weight: bold;
    }

    .voice .under_ttl img {
        vertical-align: middle;
        padding-right: 28px;
    }

    .voice .breadcrumb {
        margin-bottom: 20px;
    }

    .voice .voice_wrap {
        width: 980px;
        padding-bottom: 80px;
        margin: 25px auto 0px;
    }

    .voice .voice_wrap h4 {
        margin-top: 5px;
        margin-bottom: 25px;
        font-size: 20px;
        line-height: 160%;
        font-weight: bold;
        vertical-align: middle;
        color: #333;
        color: #e77024;
    }

    .voice .voice_wrap .voice {
        margin: 0 15px;
        padding-bottom: 25px;
        border-bottom: 1px solid #dddcd9;
        margin-bottom: 60px;
    }

    .voice .voice_wrap .voice:first-child {
        margin-bottom: 30px;
    }

    .voice .voice_wrap .voice.ptn02 {
        border-bottom: 1px solid #ddddd9;
    }

    .voice .voice_wrap .voice:last-child .left:before {
        content: none;
    }

    .voice .voice_wrap .voice.ptn02 {
        padding-bottom: 50px;
        margin-bottom: 35px;
    }

    .voice .voice_wrap .voice .left {
        float: left;
        width: 550px;
        box-sizing: border-box;
        color: #333;
    }

    .voice .voice_wrap .voice .left .video_wrap {
        max-width: 575px;
        margin: 0 auto 0 0;
    }

    .voice .voice_wrap .voice .left .txt {
        margin-top: 10px;
        font-size: 12px;
    }

    .voice .voice_wrap .voice .left table {
        width: 100%;
        margin-top: 26px;
    }

    .voice .voice_wrap .voice .left table tr th {
        text-align: left;
        font-size: 16px;
        line-height: 190%;
        width: 370px;
        font-weight: normal;
    }

    .voice .voice_wrap .voice .left table tr td {
        text-align: right;
    }

    .voice .voice_wrap .voice .right {
        width: 380px;
        float: right;
    }

    .voice .voice_wrap .voice .right .txt.large {
        font-size: 18px;
        line-height: 180%;
    }

    .voice .voice_wrap .voice .right .txt {
        font-size: 14px;
        line-height: 200%;
    }

    .voice .voice_wrap .voice .right .txt small {
        font-size: 14px;
    }

    .voice .voice_wrap .voice .right .txt.large dt span {
        font-size: 18px;
    }

    .voice .voice_wrap .voice .right .txt dt {
        font-size: 14px;
    }

    .voice .voice_wrap .voice .right .txt dt span {
        font-size: 14px;
    }

    .voice .voice_wrap .voice .right .txt dd {
        display: inline-block;
        float: left;
    }

    .voice .voice_wrap .voice .right .txt dd+dd:nth-of-type(2n) {
        float: right;
    }

    .voice .voice_wrap .voice .right .txt dd span {
        display: block;
        min-width: 0;
        font-size: 18px;
    }

    .voice .voice_wrap .voice .right img {
        padding-bottom: 10px;
    }

    .voice .voice_wrap .voice .right span {
        font-size: 14px;
    }

    .voice .voice_wrap .voice .right .caption2 {
        display: table;
        width: 100%;
    }

    .voice .voice_wrap .voice .right .caption2 span {
        display: table-cell;
        width: 50%;
    }

    .voice .voice_wrap .voice h5 {
        font-size: 16px;
        color: #333;
        font-weight: bold;
        margin-bottom: 20px;
    }

    .voice .voice_wrap .voice .txt {
        font-size: 16px;
        line-height: 190%;
        color: #333;
        margin-bottom: 35px;
    }

    .voice .voice_wrap .voice .link_btn {
        margin-bottom: 15px;
    }

    .voice .voice_wrap .voice .link_btn a {
        background: url(../img/common/icon_link.png) no-repeat left 5px;
        text-decoration: none;
        color: #000;
        padding-left: 25px;
        font-size: 16px;
    }

    .submit {
        /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#62ad27+0,589c23+100 */
        background: #62ad27;
        /* Old browsers */
        background: -moz-linear-gradient(top, #62ad27 0%, #589c23 100%);
        /* FF3.6-15 */
        background: -webkit-linear-gradient(top, #62ad27 0%, #589c23 100%);
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom, #62ad27 0%, #589c23 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62ad27', endColorstr='#589c23', GradientType=0);
        /* IE6-9 */
        color: #fff;
        font-size: 18px;
        border: none;
        border-radius: 5px;
        text-align: center;
        padding: 15px 25px;
    }

    .breadcrumb {
        max-width: 980px;
        width: 96%;
        margin: 0 auto;
        font-size: 12px;
        padding: 15px 0;
        color: #333;
    }

    .breadcrumb ul li {
        display: inline;
    }

    .breadcrumb ul li:after {
        content: ">";
        padding: 0 3px;
    }

    .breadcrumb ul li:last-child:after {
        content: none;
    }

    .breadcrumb ul li a {
        text-decoration: none;
    }
}

@media screen and (max-width: 768px) {
    .voice#contents {
        padding-bottom: 0;
    }

    .voice .under_ttl {
        background: #fff;
        font-size: 16px;
        font-weight: bold;
        color: #e77024;
    }

    .voice .under_ttl span {
        display: block;
        margin: 0 15px;
        line-height: 160%;
    }

    .voice .under_ttl img {
        vertical-align: middle;
        padding-right: 15px;
        width: 50px;
    }

    .voice .under_ttl .inner {
        padding: 10px 0;
    }

    .voice .under_ttl>img {
        width: 100%;
        object-fit: cover;
        height: 90px;
        padding-right: 0;
        float: none;
    }

    .voice .basic_ttl {
        margin: 0 15px 15px;
    }

    .voice .voice_wrap {
        width: 100%;
        box-sizing: border-box;
        margin: 0 auto 0px;
        padding: 0 15px 80px;
    }

    .voice .voice_wrap h3 {
        margin-left: 0;
        margin-right: 0;
    }

    .voice .voice_wrap h4 {
        margin-top: 5px;
        margin: 0 auto 25px;
        font-weight: bold;
        color: #e77024;
        vertical-align: middle;
        color: #333;
    }

    .voice .voice_wrap .voice {
        margin-bottom: 30px;
        border-bottom: 1px solid #dddcd9;
    }

    .voice .voice_wrap .voice:last-child .left:before {
        content: none;
    }

    .voice .voice_wrap .voice.ptn02 {
        border-bottom: 1px solid #ddddd9;
    }

    .voice .voice_wrap .voice .left {
        box-sizing: border-box;
        padding-bottom: 10px;
        position: relative;
    }

    .voice .voice_wrap .voice .left .video_wrap {
        margin: 0 auto;
    }

    .voice .voice_wrap .voice .left .txt {
        margin: 10px 0;
    }

    .voice .voice_wrap .voice .left table {
        width: 100%;
    }

    .voice .voice_wrap .voice .left table th {
        font-size: 14px;
        padding-right: 20px;
        font-weight: normal;
        text-align: left;
    }

    .voice .voice_wrap .voice .right {
        margin-top: 0px;
        padding-bottom: 20px;
    }

    .voice .voice_wrap .voice .right .txt small {
        font-size: 12px;
    }

    .voice .voice_wrap .voice .right .txt.large dd {
        font-size: 15px;
    }

    .voice .voice_wrap .voice .right .txt.large dt span {
        font-size: 15px;
    }

    .voice .voice_wrap .voice .right span,
    .voice .voice_wrap .voice .right .txt {
        font-size: 14px;
    }

    .voice .voice_wrap .voice .right img {
        padding-bottom: 5px;
    }

    .voice .voice_wrap .voice .right .caption2 {
        display: table;
        width: 100%;
    }

    .voice .voice_wrap .voice .right .caption2 span {
        display: table-cell;
        width: 50%;
    }

    .voice .voice_wrap .voice h4 {
        font-size: 18px;
        font-weight: bold;
        vertical-align: middle;
        margin-bottom: 10px;
        color: #e77024;
        line-height: 160%;
    }

    .voice .voice_wrap .voice h4 span {
        vertical-align: 2px;
        font-size: 12px;
        font-weight: normal;
        display: block;
        margin-bottom: 2px;
    }

    .voice .voice_wrap .voice h5 {
        font-size: 14px;
        color: #333;
        font-weight: bold;
        margin-bottom: 3px;
    }

    .voice .voice_wrap .voice .txt {
        font-size: 14px;
        line-height: 180%;
        color: #333;
        margin-bottom: 10px;
    }

    .voice .voice_wrap .voice .txt dt {
        font-size: 12px;
    }

    .voice .voice_wrap .voice .txt dt span {
        font-size: 14px;
    }

    .voice .voice_wrap .voice .txt dd {
        display: block;
    }

    .voice .voice_wrap .voice .txt dd span {
        font-size: 15px;
    }

    .voice .breadcrumb {
        margin: 0 15px 10px;
        font-size: 10px;
        padding: 5px 0;
        color: #333;
    }

    .voice .breadcrumb ul li {
        display: inline;
    }

    .voice .breadcrumb ul li:after {
        content: ">";
        padding: 0 3px;
    }

    .voice .breadcrumb ul li:last-child:after {
        content: none;
    }

    .voice .breadcrumb ul li a {
        text-decoration: none;
    }
}

.banner_the-way-of-200-million-yen {
    margin: 0 auto 50px;
    text-align: center;
}

.banner_the-way-of-200-million-yen img {
    width: calc(100% - 40px);
}

@media screen and (min-width: 769px) {
    .banner_the-way-of-200-million-yen {
        text-align: center;
    }

    .banner_the-way-of-200-million-yen img {
        width: 500px;
    }
}


/* ========================
    フロートボタン
======================== */
.float {
    display: none;
}
@media print, screen and (max-width: 768px) {
    .float {
        display: block;
        position: fixed;
        bottom: 0;
        background: #414141;
        padding: calc(100vw / 375 * 10);
        width: 100%;
        box-sizing: border-box;
    }
    .float_inner {
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        gap: 9px;
    }
    a.float_btn span {
        font-size: calc(100vw / 375 * 12);
        font-weight: bold;
        color: #fff;
        text-align: center;
        display: block;
    }
    a.float_btn img {
        display: block;
        margin-top: calc(100vw / 375 * 8);
    }
}

