@charset "utf-8";

.fix_banner {
    display:none;
}
@media screen and (max-width: 768px) {

body {
    padding-bottom: 15vw;
}

header .logo {
    padding: 0.5em;
    text-align: center;
}
header .logo img {
    display: block;
    width: 50%;
    margin: 0 auto;
}

footer .copy {
    font-size: 10px;
    overflow: hidden;
}
.footer_content {
    padding: 1em;
}
.footer_content .logo {
    width: 50%;
    margin: 0 auto 1em;
}
.footer_content address {
    font-size: 3vw;
}

.mv .inner {
    background-size: 32%;
    background-position: top right 2%;
}
.mv_box p {
    font-size: 3.5vw;
}
.mv_bloc {
    width: 68%;
    padding: 0 0.5em 0.5em;
}
.mv_list ul li {
    width: calc(100% / 3);
}
.mv figure {
    width: 36%;
    margin-right: -0.5em;
    margin-left: -4em;
}
.mv_box h1 {
    padding: 0;
}

.cv {
    padding: 1em;
}
.cv_upper {
    margin-bottom: 1em;
}
.cv_upper h2 {
    font-size: 6vw;
}
.cv_upper p {
    font-size: 5vw;
}



.cv_box {
    width: 100%;
    padding: 0 1em 1em;
    align-items: center;
    justify-content: center;
}
.cv_box h3 {
    font-size: 6vw;
}
.cv_box p {
    font-size: 6vw;
}
.cv_box p em {
    font-size: 16vw;
    line-height: 1em;
}

.cv_bloc {
    gap: 0.5em;
}
.cv_bloc figure {
    width: 34%;
}
.cv_cell {
    gap: 0.2em;
    padding-top: 0.2em;
    flex: 1 0 0%;
}
.cv_cell h3 {
    font-size: 7vw;
    padding: 0.2em 0.2em 0.2em 0.2em;
}
.cv_cell ul {
    width: 58%;
    gap: 0.2em;
}
.cv_cell ul li {
    font-size: 2.5vw;
}
.cv_btn_bloc ul {
    gap: 1em;
}
.cv_btn_bloc ul li {
    /*width: calc(100% / 2 - 0.25em);*/
    width: 100%;
}
.cv_btn_bloc ul li:first-child {
    width: 100%;
}



.cv_add_02 {
    margin: 1em auto;
}
.cv_add_01 {
    margin-top: 1em;
}


.trouble {
    padding: 2em 1em 0;
}
.trouble h2 {
    font-size: 6vw;
}
.trouble h2 .dotted {
    font-size: 8vw;
}
.trouble h2 .dotted span:after {
    background: #961dd4;
    width: 5px;
    height: 5px;
}
.trouble_item {
    width: calc(100% / 3);
}
.trouble_item:nth-child(1) p {
    margin-left: 0;
}
.trouble_item:nth-child(3) p {
    margin-right: 0;
}


.cm_band {
    padding: 1em;
}
.cm_band:after {
    border-width: 10px 15px 0 15px;
    bottom: -10px;
}
.cm_band h2 span {
    font-size: 4vw;
}
.cm_band p {
    font-size: 4vw;
}

.band {
    padding: 1em;
}
.band:after {
    border-width: 10px 15px 0 15px;
    bottom: -10px;
}
.band h2 {
    font-size: 6vw;
}

.cm_content {
    padding: 2em 1em;
}

.cm_bloc {
    gap: 1em;
}
.cm_item {
    width: 100%;
}
.cm_item .upper {
    margin-bottom: 0;
}
.cm_item .upper h3 {
    font-size: 5vw;
    height: auto;
}
.cm_item .upper p {
    font-size: 5vw;
    text-align: center;
}

.cm_item .box i {
    width: 1.5em;
    height: 1.5em;
    bottom: 15vw;
}
.cm_item .box p {
    font-size: 5vw;
}
.cm_item .bottom a {
    font-size: 5vw;
}

.maker_content {
    padding: 2em 1em;
}

.maker_upper p {
    font-size: 4vw;
}
.maker_upper {
    margin-bottom: 1em;
}
.maker_bloc ul {
    align-items: flex-start;
    justify-content: center;
    gap: 0.5em;
}
.maker_bloc ul li {
    width: calc(100% / 2 - 0.5em);
}

.hosho_item h3 {
    width: 50%;
    margin-left: 10vw;
}
.hosho_box figure {
    width: 30%;
    margin-top: -20vw;
}
.hosho_box ul {
    width: 68%;
    gap: 0;
}
.hosho_box ul li {
    width: calc(100% / 2 - 0.25em);
}
.hosho_box {
    padding: 0 1em 4vw;
    margin: 0;
}
.maker_bloc {
    margin-bottom: 12vw;
}
.hosho_item {
    background: none;
    margin-bottom: 0.5em;
}
.hosho_bloc p {
    font-size: 3vw;
    text-align: left;
    line-height: 1.4em;
}

.merit_content {
    padding: 2em 1em;
}

.merit_box {
    width: 100%;
}
.merit_meta span {
    font-size: 4vw;
    top: -2vw;
}
.merit_meta i {
    font-size: 16vw;
    line-height: 16vw;
}
.merit_meta h3 {
    font-size: 6vw;
}
.merit_box p {
    font-size: 4vw;
}
.merit_bloc figure {
    flex: none;
    width: 74%;
    margin: 0 auto;
}
.merit_bloc {
    gap: 1em;
}

.merit_bottom1 h4 {
    font-size: 5vw;
}
.merit_bottom1 p {
    font-size: 4vw;
}

.merit_bottom2 .box .upper h4 {
    font-size: 5vw;
}
.merit_bottom2 .box .upper p {
    font-size: 4vw;
}

.merit_bottom2 .box .cell {
    gap: 0.5em;
}
.merit_bottom2 .box .cell h4 {
    font-size: 5vw;
}
.merit_bottom2 .box .cell ul li {
    font-size: 4vw;
}

.merit_bottom2 .box .bottom h5 {
    font-size: 4vw;
}
.merit_bottom2 .box .bottom p {
    font-size: 4vw;
}

.merit_bottom2 {
    gap: 1em;
}
.merit_bottom2 figure {
    margin: 0;
}


.point_content {
    padding: 2em 1em;
}
.point_box {
    width: 100%;
}
.point_meta span {
    font-size: 4vw;
    top: -2vw;
}
.point_meta i {
    font-size: 16vw;
    line-height: 16vw;
}
.point_meta h3 {
    font-size: 6vw;
}
.point_box p {
    font-size: 4vw;
}
.point_bloc figure {
    flex: none;
    width: 100%;
    margin: 0 auto;
}
.point_bloc {
    gap: 1em;
}

.reason {
    padding: 2em 1em;
}
.reason_title figure {
    width: 24%;
}
.reason_title_bloc {
    flex: 1 0 0%;
    margin: 0;
    gap: 0.25em;
}
.reason_title_bloc h2 {
    font-size: 4vw;
}
.reason_title_bloc h2 em {
    font-size: 6vw;
}
.reason_title_bloc i {
    flex: 1 0 0%;
}
.reason_title {
    background-size: contain;
    margin-bottom: 1em;
}

.reason_item {
    border: solid 3px #f37111;
    border-radius: 1em;
    overflow: hidden;
}

.reason_meta h3 {
    flex: 1 0 0%;
    font-size: 5vw;
    line-height: 1.4em;
}
.reason_meta i {
    width: 13%;
}
.reason_meta {
    gap: 0.5em;
}
.reason_bloc p {
    font-size: 4vw;
}
.reason_item + .reason_item {
    margin-top: 1em;
}


.flow_content {
    padding: 2em 1em;
}
.flow_item {
    width: 100%;
    margin-top: 1em;
    padding: 2em 1em 1em;
}
.flow_item i {
    font-size: 10vw;
    top: -12vw;
}
.flow_item figure {
    width: 20%;
    margin: 0 auto 1em;
}
.flow_item h3 {
    font-size: 6vw;
}
.flow_item p {
    font-size: 4vw;
}

.area_box > .cv_cell {
    gap: 1em;
    padding: 0 1em;
}
.area_box > .cv_cell ul li {
    font-size: 3.5vw;
}
.area_box > .cv_cell ul {
    width: calc(100% - 7vw - 0.5em);
    flex: 1 0 0%;
}

.area_item {
    position: relative;
}
.area_box > .logo {
    padding: 1em;
}
.area_item > figure {
    position: absolute;
    width: 30%;
    margin: 0;
    top: 1em;
    right: 1em;
}

.contact_wrap {
    padding: 2em 1em;
}
.contact_upper p {
    font-size: 4vw;
    line-height: 1.4em;
}
.contact_upper ul li {
    font-size: 3vw;
}

.contact_bloc dl dt span {
    font-size: 4vw;
}

.thanks .detail h1 + p {
    font-size: 3.5vw;
    line-height: 1.6em;
    text-align: center;
}


.fix_banner {
    display: block;
    background: #f0f412;
    width: 100%;
    padding: 0.5em;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 10000;
}
.fix_banner ul {
    gap: 0.25em;
}
.fix_banner ul li {
    
}
.fix_banner ul li:nth-child(1) {
    width: calc(50% - 0.25em);
}
.fix_banner ul li:nth-child(2) {
    width: calc(50% - 0.25em);
}


/*
.fix_banner ul li:nth-child(1) {
    width: calc(24.827586206% - 0.25em);
}
.fix_banner ul li:nth-child(2) {
    width: calc(24.827586206% - 0.25em);
}
.fix_banner ul li:nth-child(3) {
    width: calc(50.344827586% - 0.25em);
}
*/




}