@charset "utf-8";

@media screen and (max-width: 768px) {

header {
    padding: 0.5em;
}
header .logo {
    width: 40%;
}
.mv {
    background: url(../images/bg_mv_sp.png) no-repeat center;
    background-size: cover;
}

.mv .inner .mv_bloc ul li {
    width: 32%;
}
.mv_content {
    padding: 1em 0;
}
.mv_content .inner {
    position: relative;
}
.mv_content .inner .mv_bloc {
    position: relative;
    z-index: 2;
}
.mv .inner .mv_bloc h1 {
    margin-bottom: 0.2em;
}
.mv .inner > figure {
    position: absolute;
    width: 100px;
    top: 0;
    right: 1em;
}
.mv .inner .mv_bloc ul {
    padding: 0 1em;
}

.mv_bottom {
    padding: 0.4em 0.5em 0.2em;
}
.mv_bottom .inner {

}

.mv_bottom ul li:before {
    width: 20px;
    height: 17px;
    top: 1px;
    left: 0;
}
.mv_bottom ul li {
    font-size: 15px;
}
.mv_bottom ul {
    display: inline-block;
    text-align: left;
}

.cv_bloc h2 {
		font-size: 14px;
    margin-bottom: 0.5em;
}
.cv_bloc h2 em {
    font-size: 20px;
}
.cv_bloc h2 figure {
    width: 14px;
    margin: 0 auto;
}
.cv_button p {
    font-size: 14px;
}
.cv_button ul li + li {
    margin-top: 0.5em;
    margin-left: 0;
}
.cv {
    padding: 1em;
}
.cm_title h2 {
    font-size: 21px;
}
.cm_bloc {
    padding: 2em 0 1.5em;
}
.cv_point {
    width: 40px;
    top: 28px;
    right: 0;
}

.reason {
    padding: 1em;
}
.reason_bloc h2 {
    margin-bottom: 0.5em;
}

.reason_bloc {

}
.reason_bloc ol {
    align-items: flex-start;
    justify-content: center;
}
.reason_bloc ol li {
    width: 49%;
}
.reason_bloc ol li + li {

}

.trouble {
    padding: 1em;
    background-position: right 30% top;
}
.trouble_bloc h2 {
    margin-bottom: 0.5em;
}
.trouble_bloc .list_bloc {
    display: block;
}
.trouble_bloc ul li {
    font-size: 16px;
    line-height: 1.4em;
    padding-left: 1.5em;
}

.trouble_bloc ul li:before {
    width: 20px;
    height: 17px;
}
.trouble_bloc p {
    font-size: 16px;
    margin-top: 0.5em;
}

.result {
    padding: 1em;
    background-position: left 40% top;
}
.result_bloc {
    width: 70%;
    margin-left: auto;
}
.result_bloc h2 {
    margin-bottom: 0.5em;
}

.service {
    padding: 1em;
}
.service_bloc h2 {
    font-size: 21px;
}
.service_list ol li {
    display: block;
}
.service_list ol li .service_item {
    margin: 1em 0 0;
    text-align: center;
}
.service_list ol li .service_item .num {
    font-size: 12px;
}
.service_list ol li .service_item h3 {
    font-size: 18px;
}
.service_list ol li .service_item p {
    font-size: 14px;
}
.service_list ol li .service_item p em {
    font-size: 16px;
    vertical-align: text-bottom;
}
.service_list ol li + li:before {
    left: 0;
    right: 0;
    margin: 0 auto;
}

.voice {
    padding: 1em;
}
.voice_bloc h2 {
    margin-bottom: 0.5em;
}
.voice_graph ul {
    align-items: flex-start;
    justify-content: space-between;
}
.voice_graph ul li + li {
    margin-left: 0;
}
.voice_graph ul li {
    width: 31%;
}
.voice_graph {
    margin-bottom: 1em;
}

.voice_item {
    padding: 0.5em 1em 1em;
}
.voice_header {
		display: block;
    text-align: left;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em;
}
.voice_header .num {
    display: block;
    width: 80px;
    margin-bottom: 0.5em;
}
.voice_header h3 {
    margin: 0;
    font-size: 18px;
}
.voice_detail figure {
    width: 90px;
    margin-right: 1em;
}
.voice_detail p {
    margin: 0;
    font-size: 14px;
}
.voice_item + .voice_item {
    margin-top: 1em;
}

.price {
		padding: 1em 1em 2em;
}
.price_bloc h2 {
    font-size: 21px;
    margin-bottom: 0.5em;
}
.price_bloc h2 + p {
    font-size: 14px;
    margin-bottom: 1em;
}
.price_item h3 {
    font-size: 18px;
    margin-bottom: 0.5em;
}
.price_item table thead th {
    font-size: 12px;
    line-height: 1;
    padding: 0.5em;
}

.price_item table tbody th {
    padding: 0.5em;
    font-size: 12px;
    line-height: 1.2em;
}
.price_item table tbody td {
    padding: 0.5em;
    font-size: 10px;
}
.price_item table tbody td span {
    font-size: 16px;
}

.price_option {
    padding: 2em 1em 1em;
}
.price_option .plus {
    width: 2em;
    top: -25px;
}
.price_option_item h3 {
    font-size: 18px;
}
.price_option_item + .price_option_item {
    margin-left: 0;
    margin-top: 1em;
}
.price_option_item {
    padding: 1em;
    border: solid 2px #0082ff;
}
.price_option_item .list ul {
    height: auto;
}


.price_option_item .list ul li:before {
    width: 21px;
    height: 17px;
    top: 7px;
    left: 0;
}
.price_option_item .list ul li {
    font-size: 14px;
}

.price_option_item .bottom ul li {
    font-size: 12px;
}
.price_option_item .bottom p {
    font-size: 12px;
}
.price_option_item .bottom p span {
    font-size: 21px;
}
.price_plan {
    padding: 1em;
}
.price_plan h2 {
    margin-bottom: 1em;
}

.faq {
    padding: 1em;
}
.faq h2 {
    font-size: 21px;
    margin-bottom: 0.5em;
}
.faq_item h3.toggle {
    font-size: 16px;
}
.faq_item h3.toggle:before {
		top: 9px;
}
.faq_bloc dl {
    font-size: 14px;
}
.faq_bloc dl dt:before {
		width: 26px;
    height: 26px;
    font-size: 14px;
    line-height: 25px;
}
.faq_bloc dl dd:before {
		width: 26px;
    height: 26px;
    font-size: 14px;
    line-height: 25px;
}

.company {
    padding: 1em;
}
.company h2 {
    font-size: 21px;
    margin-bottom: 0.5em;
}
.company_bloc dl {
    font-size: 16px;
    line-height: 1.4em;
}
.company_bloc dl dt {
    font-size: 12px;
    width: 100%;
    padding: 0.5em 0.5em 0;
}
.company_bloc dl dd {
    width: 100%;
    padding: 0 0.5em 0.5em;
    font-size: 14px;
}


.focus_bloc .figure01 {
		width: 24%;
}
.focus_bloc .figure02 {
		width: 24%;
}
.focus_bloc h2 {
    width: 50%;
    margin-bottom: 0.2em;
}
.focus:after {
		height: 104%;
}
.focus {
    padding: 0 1em;
}


.contact_wrap h2 {
    font-size: 18px;
}
.contact_wrap h2 + p {
    font-size: 10px;
}
.contact_bloc {
    margin: 0 auto 1em;
}

















}