@charset "UTF-8";
/* CSS Document */

@media screen and (max-width:768px) {

    /*タブレット用*/

    /*common*/


    header {
        max-width: 1120px;
        width: 100%;
        margin: 0 auto;
        position: relative;
        padding-top: 0;
        font-size: 1.3rem;
        background-color: #fff;
        z-index: 500;
    }

    .head-tel,
    .head-sentence,
    .business-hour,
    .pc-nav {
        display: none;
    }

    .com-name {
        display: block;
        font-size: 2rem;
        padding: 3.5% 15%;
    }

    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        -webkit-transition: all .4s;
        transition: all .4s;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .menu {
        width: 10%;
        text-align: right;
        position: fixed;
        z-index: 99999999;
        display: inline;
        top: 0;
        right: 0;
    }

    .menu-trigger {
        position: relative;
        top: 10px;
        width: 50px;
        height: 44px;
        z-index: 9999999;
        margin-right: 10px;
    }

    .menu-trigger span {
        position: absolute;
        right: 0;
        width: 100%;
        height: 4px;
        background-color: #06184e;
        border-radius: 4px;
    }

    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }

    .menu-trigger span:nth-of-type(2) {
        top: 20px;
    }

    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }

    .menu-trigger.active {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }

    .menu-trigger.active span:nth-of-type(1) {
        -webkit-transform: translateY(20px) rotate(-45deg);
        transform: translateY(20px) rotate(-45deg);
    }

    .menu-trigger.active span:nth-of-type(2) {
        -webkit-transform: translateY(0) rotate(45deg);
        transform: translateY(0) rotate(45deg);
    }

    .menu-trigger.active span:nth-of-type(3) {
        opacity: 0;
    }

    .nav-head-top {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .nav-head-top p {
        margin-left: 5%;
        line-height: 2rem;
    }

    .nav-head-top p span {
        font-size: 2rem;
        padding-bottom: 3%;
        display: inline-block;
    }

    .sm-nav {
        padding-top: 20px;
        background-color: #fff;
        width: 100%;
        height: 100%;
        position: fixed;
        z-index: 999999;
        display: none;
    }

    .sm-nav ul {
        width: 80%;
        margin: 3% auto 0;
    }

    .sm-nav ul li {
        border-bottom: 1px dotted #ccc;
        text-align: right;

    }

    .sm-nav ul li a {
        display: block;
        padding: 6% 0;
        font-size: 1.8rem;
    }

    .sm-nav-logo {
        width: 15%;
        margin-left: 5%;
    }

    .contact-foot-sec {
        display: block;
        height: 500px;
        font-size: 1.8rem;
    }

    .contact-foot-sec h2 {
        width: 100%;
        text-align: center;
        font-size: 3.5rem;
        font-weight: bold;
        color: #fff;
        padding: 5% 0;
    }

    .contact-foot {
        font-size: 3.5rem;
        font-weight: bold;
    }

    .tel-foot,
    .mail-foot {
        width: 90%;
        border: 1px solid #fff;
        border-radius: 5px;
        padding: 3%;
    }

    .mail-foot {
        color: #fff;
        margin-top: 6%;
    }


    .foot-common {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .foot-company-out,
    .foot-menu {
        width: 100%;
    }

    .foot-company-out {
        padding: 0 0 30px 0;
    }

    .foot-company-out .foot-logos {
        width: 20%;
        padding: 5% 0 2%;
        margin: 0 auto;
    }

    .foot-menu ul {
        margin: 5% auto 5% 5%;
    }

    footer small {
        color: #fff;
        text-align: center;
        display: block;
        padding: .5%;
        font-size: 1.2rem;
    }

    /*common*/




    /*index.html*/
    .main_imgBox {
        height: 400px;
    }

    .main_img {
        height: 400px;
    }

    .key1 {
        height: 400px;
    }

    .key2 {
        height: 400px;
    }

    .key3 {
        height: 400px;
    }

    .key4 {
        height: 400px;
    }

    .key5 {
        height: 400px;
    }

    .key6 {
        height: 400px;
    }

    .head-image-sentence {
        top: 150px;
        left: 20%;
        z-index: 98;
        font-size: 3.8rem;
        line-height: 5rem;
    }

    .head-image-sentence-two {
        top: 260px;
        left: 9%;
        z-index: 99;
        line-height: 4rem;
        font-size: 1.9rem;
    }

    .key-link {
        z-index: 99;
        top: 390px;
        left: 9%;
        display: block;
        padding: 2.5% 7%;
    }

    .news {
        margin: 14% auto 5%;
    }

    .news div {
        width: 100%;
    }

    .news div ul li {
        margin: 2%;
    }

    .effect {
        max-width: 1120px;
        width: 100%;
        margin: 40px auto 50px;
    }

    .effect h2 {
        z-index: 99;
        position: relative;
    }



    .effect h2::before {
        font-size: 3.9rem;
        top: -10px;
        z-index: -5;
    }

    .ind-type-out {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .ind-type-inner {
        width: 100%;
        margin: 2% 0;
    }

    .ind-type-inner:nth-child(odd) {
        margin-right: 0;
    }

    .ind-type-inner h3 {
        margin-top: 3.3%;
    }

    .ind-type-inner p {
        width: 65%;
    }

    .about-us {
        margin: 60px auto 50px;
    }

    .about-us h2 {
        font-size: 2.9rem;
        z-index: 99;
    }

    .about-us h2::before {
        font-size: 3.9rem;
        top: -10px;
        z-index: -5;
    }

    .about-us p {
        margin-top: 10px;
        line-height: 2.7rem;
        text-align: justify;
    }

    .ind-us a:first-child {
        margin-right: 10%;
        padding: 3% 6%;
        width: 20%;
        margin-left: 10%;
    }

    .ind-us a:last-child {
        margin-left: 5%;
        padding: 3% 6%;
        width: 20%;
    }

    .tel-foot .contact-foot {
        background: none;
        position: relative;
        width: 100%;
    }

    .tel-foot .contact-foot::before {
        background: url(../img/tel_one.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        width: 35px;
        height: 35px;
        position: absolute;
        content: "";
        top: 10;
        left: 25px;
    }

    .mail-foot .contact-foot {
        background: none;
        position: relative;
        width: 100%;
        font-size: 3.5rem;
    }

    .mail-foot .contact-foot::before {
        background: url(../img/mail.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        width: 35px;
        height: 35px;
        position: absolute;
        content: "";
        top: 10px;
        left: -1.5em;
    }

    /*index.html end*/
    /*company.html*/

    .company-visual {
        height: 29vh;
    }

    .company-out {
        margin: 60px auto 50px;
    }

    .company-out h2 {
        font-size: 3rem;
        z-index: 99;
    }

    .company-out h2::before {
        font-size: 3.9rem;
        top: -10px;
        z-index: -5;
    }

    .company-out p {
        margin-top: 30px;
        line-height: 2.7rem;
        text-align: justify;
    }

    .company-two-out {
        margin: 60px auto 50px;
    }

    .company-two-out h2 {
        font-size: 3rem;
        z-index: 99;
    }

    .company-two-out h2::before {
        font-size: 4.6rem;
        top: -15px;
        left: 0;
        z-index: -5;
    }

    .company-two-out p {
        margin-top: 30px;
        line-height: 2.7rem;
    }

    /*company.html end*/
    /*filmtype.html*/
    .company-sentence {
        padding-top: 45px;
        padding-left: 40px;
        height: 25%;
        top: 32%;
    }

    .filmtype-out {
        margin: 60px auto 50px;
    }

    .filmtype-out h2 {
        font-size: 3rem;
        z-index: 99;
    }

    .filmtype-out h2::before {
        font-size: 3.9rem;
        top: -10px;
        z-index: -5;
    }

    .film-all {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        text-align: left;
        margin-left: 6%;
        line-height: 3rem;
    }

    .film-all li {
        width: calc(100% / 2);
    }

    .filmtype-one {
        display: block;
    }

    .filmtype-one > div img {
        width: 70%;
    }

    .film-effect-inner1 {
        width: 100%;
        margin: 4% 0;
    }

    .film-effect1 {
        width: 100%;
        margin-left: 0;
        margin-bottom: 10px;
    }

    .sp-10 > h4 {
        line-height: 2.5rem;
    }

    .sp-10 > p {
        margin-top: 10px;
        text-align: justify
    }

    /*filmtype.html end*/

    /*flow.html*/

    .flow-out {
        margin: 60px auto 50px;
    }

    .flow-out h2 {
        font-size: 3rem;
        z-index: 99;
    }

    .flow-out h2::before {
        font-size: 3.9rem;
        top: -10px;
        z-index: -5;
    }

    .flow-out p {
        text-align: justify;
    }

    .flow-one p {
        margin: 2% auto;
        width: 95%;
        text-align: justify;
    }

    .flow-button a {
        margin: 15% auto;
        width: 50%;
        padding: 4% 6%;
    }

    /*flow.html end*/
    /*contact.html*/
    .contact-out {
        margin: 60px auto 50px;
    }

    .contact-out h2 {
        font-size: 3rem;
        z-index: 99;
    }

    .contact-out h2::before {
        font-size: 3.9rem;
        top: -10px;
        z-index: -5;
    }

    .contact-out p {
        margin-top: 10px;
        line-height: 2.7rem;
    }

    .contact-detail {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .contact-detail p {
        width: 100%;
        padding: 6% 5% 3%;
        font-size: 4rem;
        font-weight: bold;
        background: -webkit-gradient(linear, left top, right top, from(#B0E7F7), to(#0072FF));
        background: linear-gradient(to right, #B0E7F7, #0072FF);
        text-align: center;
        color: #222;
        position: relative;
        border-radius: 3px;
    }

    .contact-detail p:first-child::before {
        content: "お電話でのお問い合わせ";
        font-size: 1.8rem;
        background-color: #fff;
        padding: .6% 1%;
        position: absolute;
        top: -17px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        border-top: 3px solid #0072FF;
        border-radius: 4px;
        width: 80%;
        text-align: center;
    }

    .contact-detail p:last-child::before {
        content: "メールでのお問い合わせ";
        font-size: 1.8rem;
        background-color: #fff;
        padding: .6% 1%;
        position: absolute;
        top: -17px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        border-top: 3px solid #0072FF;
        border-radius: 4px;
        width: 80%;
        text-align: center;
    }

    .contact-detail p:first-child {
        margin-right: 0;
        margin-bottom: 4%;
    }

    .contact-detail-line {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
		margin:auto;
    }

    .contact-detail-line p {
        width: 100%;
        padding: 6% 5% 3%;
        font-size: 4rem;
        font-weight: bold;
        background: -webkit-gradient(linear, left top, right top, from(#7fff00), to(#00B900));
        background: linear-gradient(to right, #7fff00, #00B900);
        text-align: center;
        color: #222;
        position: relative;
        border-radius: 3px;
    }

    .contact-detail-line p:last-child::before {
        content: "LINEでのお問い合わせ";
        font-size: 1.8rem;
        background-color: #fff;
        padding: .6% 1%;
        position: absolute;
        top: -17px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        border-top: 3px solid #00B900;
        border-radius: 4px;
        width: 80%;
        text-align: center;
    }

    .contact-detail-line p:first-child {
        margin-right: 0;
        margin-bottom: 4%;
    }

    .dt-inner {
        margin-top: 20px;
    }

    /*contact.html end*/
    /*price.html*/

    .price-out {
        margin: 60px auto 50px;
    }

    .price-out h2 {
        font-size: 3rem;
        z-index: 99;
    }

    .price-out h2::before {
        font-size: 3.9rem;
        top: -10px;
        z-index: -5;
    }

    .price-out p {
        margin-top: 10px;
        line-height: 2.7rem;
    }

    .p-sec {
        display: block;
    }

    .p-inner {
        width: 100%;
        margin: 5% 0 0%;
    }

    .p-inner p span:first-child {
        width: 60%;
    }

    .p-inner p span:last-child {
        width: 40%;
    }

    .p-inner:first-child {
        margin-right: 0;
    }

    .film-out {
        margin-bottom: 0;
    }

    .film-out h4 {
        margin: 8% 0 3%;
    }

    .film_attention {
        margin-top: 2.5%;
        line-height: 2.3rem;
    }

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

    .table-sec table {
        width: 100%;
        margin: 2% 0 6%;
    }

    /*price.html end*/
    /*strength.html*/

    .strength-out {
        margin: 60px auto 50px;
    }

    .strength-out h2 {
        font-size: 3rem;
        z-index: 99;
    }

    .strength-out h2::before {
        font-size: 3.9rem;
        top: -10px;
        z-index: -5;
    }

    .strength-out p {
        margin-top: 10px;
        line-height: 2.7rem;
    }

    .st-1 {
        display: block;
    }

    .st-1 div {
        width: 90%;
        margin: 0 auto;
    }

    .st-1 p {
        text-align: justify;
        width: 90%;
        margin: 4% auto;
    }

    .st-2 p {
        padding-right: 0;
    }

    .st-out {
        margin-top: 10%;
    }

    .st-out a {
        display: block;
        width: 20%;
        margin: 5% auto;
    }

    /*strength.html end*/
    /*voice.html*/

    .voice-out {
        margin: 60px auto 50px;
    }

    .voice-out h2 {
        font-size: 3rem;
        z-index: 99;
    }

    .voice-out h2::before {
        font-size: 3.9rem;
        top: -10px;
        z-index: -5;
    }

    .voice-out p {
        margin-top: 10px;
    }

    .v-inner {
        display: block;
    }

    .v-inner div p {
        padding-bottom: 2%;
        width: 95%;
    }

    .v-inner div:first-child {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .v-inner div p:first-child {
        position: relative;
        line-height: 2.3rem;
        font-weight: bold;
        padding-left: 35px;
        font-size: 1.8rem;
        padding-top: 30px;
        border-bottom: 4px solid #102942;
    }

    .v-inner div p:last-child {
        padding-top: 4%;
    }

    .v-inner div p:first-child::before {
        content: "";
        position: absolute;
        width: 35px;
        height: 35px;
        background: url(../img/customer.png);
        top: 22px;
        left: -5px;
    }

    .v-inner div:first-child {
        width: 100%;
        margin-right: 0;
    }

    .v-inner div:last-child {
        width: 100%;
    }

    .voice-common a {
        width: 40%;
        padding: 3% 6%;
    }

    .t-des li a {
        height: 25px;
    }

    /*voice.html end*/
}

@media screen and (max-width:480px) {

    /*スマートフォン用*/
    .load {
        width: 100%;
        height: 100%;
    }

    .load img {
        width: 50%;
        margin: 0 auto;
        height: auto;
    }

    .menu-trigger {
        position: relative;
        top: 10px;
        width: 40px;
        height: 39px;
    }

    .menu-trigger span {
        height: 3px;
    }

    .menu-trigger span:nth-of-type(2) {
        top: 19px;
    }

    .menu {
        width: 7%;
        top: 0;
        right: 7%;
    }

    .sm-nav ul {
        width: 80%;
        margin: 3% auto 0;
    }

    .sm-nav ul li {
        border-bottom: 1px dotted #ccc;
        text-align: right;

    }

    .sm-nav ul li a {
        display: block;
        padding: 6% 0;
    }

    .sm-nav-logo {
        width: 19%;
        margin-left: 2%;
    }

    .logos {
        position: absolute;
        width: 12%;
        left: 1%;
        background: rgba(255, 255, 255, .9);
        border-radius: 2px;
        top: 10%;
    }

    .com-name {
        padding: 3.5% 16%;
    }

    .nav-head-top p {
        font-size: 1rem;
        margin-left: 1%;
    }

    .contact-foot-sec h2 {
        font-size: 2.2rem;
    }

    .contact-foot {
        font-size: 3rem;
    }

    .tel-foot,
    .mail-foot {
        font-size: 1.5rem;
        border: none;
        width: 100%;
        text-align: right;
    }

    .mail-foot {
        color: #fff;
        margin-top: 0;
        padding-left: 7%;
    }


    .foot-common {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .foot-company-out,
    .foot-menu {
        width: 100%;
    }

    .foot-company-out {
        padding: 0 0 30px 0;
    }

    .foot-company-out .foot-logos {
        width: 20%;
        padding: 5% 0 2%;
        margin: 0 auto;
    }

    .foot-menu ul {
        margin: 5% auto 5% 5%;
        font-size: 1.4rem;
    }

    footer small {
        color: #fff;
        text-align: center;
        display: block;
        padding: .5%;
        font-size: 1.2rem;
    }

    .sup section h2 {
        font-size: 2.2rem;
        padding-top: 3%;
    }

    .cards h2 {
        font-size: 2.2rem;
    }

    .contact-foot-sec {
        height: 390px;
        font-size: 1.8rem;
    }

    .button-usual {
        width: 100%;
        padding: 5% 0;
    }

    .ind-type-inner h3 span {
        font-size: 1.3rem;
    }


    /*index.html*/

    .head-image-sentence {
        top: 100px;
        left: 28%;
        z-index: 98;
        font-size: 2.3rem;
        line-height: 5rem;
    }

    .head-image-sentence-two {
        top: 200px;
        left: 4%;
        z-index: 99;
        line-height: 4rem;
        font-size: 1.6rem;
        width: 90%
    }

    .key-link {
        top: 380px;
        left: 5%;
        width: 70%;
        text-align: center;
        padding: 5% 0;
    }

    .news {
        margin: 19% auto 5%;
    }

    .effect {
        max-width: 1120px;
        width: 100%;
        margin: 40px auto 50px;
    }

    .effect h2 {
        font-size: 2.2rem;
        z-index: 99;
    }

    .effect h2::before {
        font-size: 2.7rem;
        top: -10px;
        z-index: -5;
    }

    .effect > p {
        margin-bottom: 5%;
    }

    .effect p {
        margin-top: 10px;
        line-height: 2.7rem;
    }

    .ind-type-inner {
        margin: 4% 0;
    }

    .ind-type-inner:nth-child(odd) {
        margin-right: 0;
    }

    .ind-type-inner h3 {
        margin-top: 3.3%;
        font-size: 2rem;
    }

    .ind-type-inner p {
        width: 75%;
    }

    .about-us {
        margin: 40px auto 50px;
    }

    .about-us h2 {
        font-size: 2.2rem;
        z-index: 99;
    }

    .about-us h2::before {
        font-size: 2.7rem;
        top: -10px;
        z-index: -5;
    }

    .about-us p {
        margin-top: 10px;
        line-height: 2.7rem;
        text-align: justify;
    }

    .ind-us a:first-child {
        margin-right: 10%;
        padding: 5% 9%;
        width: 81%;
        margin-left: 0;
        display: block;
    }

    .ind-us a:last-child {
        margin-left: 0;
        padding: 5% 9%;
        width: 81%;
        display: block;
        margin-top: 9%;
    }

    .tel-foot .contact-foot {
        background: none;
        position: relative;
        width: 100%;
    }

    .tel-foot .contact-foot::before {
        background: url(../img/tel_one.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        width: 35px;
        height: 35px;
        position: absolute;
        content: "";
        top: 10;
    }

    .mail-foot .contact-foot {
        background: none;
        position: relative;
        width: 100%;
        font-size: 2.3rem;
    }

    .mail-foot .contact-foot::before {
        background: url(../img/mail.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        width: 35px;
        height: 35px;
        position: absolute;
        content: "";
        top: 10px;
        left: -10px;
    }

    /*index.html end*/

    /*company.html*/

    .company-visual {
        height: 35vh;
    }

    .company-out {
        margin: 40px auto 50px;
    }

    .company-out h2 {
        font-size: 2.2rem;
        z-index: 99;
    }

    .company-out h2::before {
        font-size: 3rem;
        top: -10px;
        z-index: -5;
    }

    .company-out p {
        margin-top: 10px;
        line-height: 2.7rem;
        text-align: justify;
    }

    .company-two-out {
        margin: 40px auto 50px;
    }

    .company-two-out h2 {
        font-size: 2.2rem;
        z-index: 99;
    }

    .company-two-out h2::before {
        font-size: 3rem;
        top: -10px;
        left: 0;
        z-index: -5;
    }

    .company-two-out p {
        margin-top: 30px;
        line-height: 2.7rem;
    }

    .company-two-out p {
        margin-top: 30px;
        line-height: 2.7rem;
    }

    .company-two-out table {
        width: 100%;
        margin: 5% 0;
        line-height: 2.5rem;
    }

    .company-two-out table tr {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        border-bottom: 1px dotted #ccc;
        margin: 3% 0;
    }

    .company-two-out table tr th {
        display: block;
        width: 100%;
        padding: 0;
        text-align: left;
    }

    .company-two-out table tr td {
        padding: 0;
        width: 100%;
    }

    /*company.html end*/

    /*filmtype.html*/
    .company-sentence {
        padding-top: 28px;
        padding-left: 15px;
        height: 25%;
        top: 32%;
        font-size: 2.5rem;
    }

    .filmtype-out {
        margin: 40px auto 50px;
    }

    .filmtype-out h2 {
        font-size: 2.2rem;
        z-index: 99;
    }

    .filmtype-out h2::before {
        font-size: 3rem;
        top: -10px;
        z-index: -5;
    }

    .filmtype-out > p {
        margin-top: 10px;
        margin-bottom: 25px;
    }

    .film-all {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        text-align: left;
        margin-left: 8%;
        margin-bottom: 25px;
        line-height: 3rem;
    }

    .film-all li {
        width: 100%;
    }

    .filmtype-one > div img {
        width: 100%;
    }

    /*filmtype.html end*/
    /*flow.html*/

    .flow-out {
        margin: 40px auto 50px;
    }

    .flow-out h2 {
        font-size: 2.2rem;
        z-index: 99;
    }

    .flow-out h2::before {
        font-size: 3rem;
        top: -10px;
        z-index: -5;
    }

    .flow-out p {
        text-align: justify;
        margin-top: 10px;
    }

    .flow-out > p {
        text-align: justify;
        margin-top: 10px;
        margin-bottom: 25px;
    }

    .flow-one p {
        margin: 2% auto;
        width: 95%;
        text-align: justify;
    }

    .flow-button a {
        margin: 15% auto;
        width: 80%;
        padding: 6% 10%;
    }

    /*flow.html end*/

    /*contact.html*/
    .contact-out {
        margin: 40px auto 20px;
    }

    .contact-out h2 {
        font-size: 2.2rem;
        z-index: 99;
    }

    .contact-out h2::before {
        font-size: 3rem;
        top: -10px;
        z-index: -5;
    }

    .contact-out p {
        margin-top: 10px;
        line-height: 2.7rem;
    }

    .contact-out h3 {
        font-size: 1.7rem;
    }

    .contact-out > p {
        margin-bottom: 25px;
    }

    .contact-detail {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .contact-detail p {
        width: 100%;
        padding: 9% 5% 3%;
        font-size: 2.8rem;
        font-weight: bold;
        background: -webkit-gradient(linear, left top, right top, from(#B0E7F7), to(#0072FF));
        background: linear-gradient(to right, #B0E7F7, #0072FF);
        text-align: center;
        color: #222;
        position: relative;
        border-radius: 3px;
        margin: 10% 0
    }

    .contact-detail p:first-child::before {
        content: "お電話でのお問い合わせ";
        font-size: 1.4rem;
        background-color: #fff;
        padding: .6% 1%;
        position: absolute;
        top: -17px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        border-top: 3px solid #0072FF;
        border-radius: 4px;
        width: 80%;
        text-align: center;
    }

    .contact-detail p:last-child::before {
        content: "メールでのお問い合わせ";
        font-size: 1.4rem;
        background-color: #fff;
        padding: .6% 1%;
        position: absolute;
        top: -17px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        border-top: 3px solid #0072FF;
        border-radius: 4px;
        width: 80%;
        text-align: center;
    }
    
	.contact-detail-line {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .contact-detail-line p {
        width: 100%;
        padding: 9% 5% 3%;
        font-size: 2.8rem;
        font-weight: bold;
        background: -webkit-gradient(linear, left top, right top, from(#7fff00), to(#00B900));
        background: linear-gradient(to right, #7fff00, #00B900);
        text-align: center;
        color: #222;
        position: relative;
        border-radius: 3px;
        margin: 10% 0
    }

    .contact-detail-line p:last-child::before {
        content: "LINEでのお問い合わせ";
        font-size: 1.4rem;
        background-color: #fff;
        padding: .6% 1%;
        position: absolute;
        top: -17px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        border-top: 3px solid #00B900;
        border-radius: 4px;
        width: 80%;
        text-align: center;
    }
	.contact-line {
}
    .tel {
        font-size: 3rem
    }

    .dt-inner {
        margin-top: 30px;
    }

    /*contact.html end*/

    /*price.html*/

    .price-out {
        margin: 40px auto 50px;
    }

    .price-out h2 {
        font-size: 2.2rem;
        z-index: 99;
    }

    .price-out h2::before {
        font-size: 3rem;
        top: -10px;
        z-index: -5;
    }

    .price-out p {
        margin-top: 10px;
        line-height: 2.7rem;
    }

    .price-out > p {
        margin-bottom: 25px;
    }

    .p-sec {
        display: block;
    }

    .p-inner {
        width: 100%;
        margin: 2% 0 8%;
    }

    .p-inner p span:first-child {
        width: 60%;
    }

    .p-inner p span:last-child {
        width: 40%;
    }

    .p-inner:first-child {
        margin-right: 0;
    }

    .film-out {
        margin-bottom: 0;
    }

    .film-out h4 {
        margin: 7% 0 0;
        font-size: 1.6rem;
        border: none;
    }

    .film_attention {
        margin-top: 2.5%;
        line-height: 2.3rem;
        margin: 0 auto;
        padding-left: 2%
    }

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

    .table-sec table {
        width: 100%;
        margin: 2% 0 6%;
    }

    .table-sec .h3 {
        margin: 10% 0 6%;
    }

    .table-sec .h4 {
        font-size: 1.5rem;
        margin: 8% 0 2%;
    }

    .film-out h4 span {
        padding: 0 1%;
        background-color: #ccc;
        margin-right: 1%;
        border-radius: 4px;
        display: inline-block;
        width: auto;
    }

    /*price.html end*/
    /*strength.html*/

    .strength-out {
        margin: 40px auto 50px;
    }

    .strength-out h2 {
        font-size: 2.2rem;
        z-index: 99;
    }

    .strength-out h2::before {
        font-size: 2.5rem;
        top: -5px;
        z-index: -5;
    }

    .strength-out p {
        margin-top: 10px;
        line-height: 2.7rem;
    }

    .st-1 {
        display: block;
    }

    .st-1 div {
        width: 100%;
        margin: 0 auto;
    }

    .st-1 p {
        text-align: justify;
        width: 100%;
        margin: 4% auto;
        padding-left: 0;
    }

    .st-2 p {
        padding-right: 0;
    }

    .st-out {
        margin-top: 20%;
        margin-bottom: 30%;
    }

    .st-out a {
        display: block;
        width: 100%;
        margin: 11% auto;
        padding: 5% 0;
    }

    .st-out h3 {
        font-size: 1.9rem;
        padding-bottom: 4%;
    }

    /*strength.html end*/
    /*voice.html*/

    .voice-out {
        margin: 40px auto 50px;
    }

    .voice-out h2 {
        font-size: 2.2rem;
        z-index: 99;
    }

    .voice-out h2::before {
        font-size: 3rem;
        top: -10px;
        z-index: -5;
    }

    .voice-out p {
        margin-top: 10px;
    }

    .voice-out > p {
        margin-bottom: 25px;
    }

    .v-inner {
        display: block;
    }

    .v-inner div p {
        padding-bottom: 2%;
        width: 100%;
    }

    .v-inner div:first-child {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .v-inner div p:first-child {
        position: relative;
        line-height: 2.3rem;
        font-weight: bold;
        padding-left: 0%;
        font-size: 1.6rem;
        padding-top: 30px;
        padding-left: 30px;
        border-bottom: 4px solid #102942;
        text-indent: 0em;
        width: 90%
    }

    .v-inner div p:last-child {
        padding-top: 4%;
    }

    .v-inner div p:first-child::before {
        content: "";
        position: absolute;
        width: 40px;
        height: 40px;
        background: url(../img/customer.png);
        top: 33px;
        left: -5px;
    }

    .v-inner div:first-child {
        width: 100%;
        margin-right: 0;
    }

    .v-inner div:last-child {
        width: 100%;
    }

    .voice-common a {
        width: 100%;
        padding: 6% 0;
        margin-bottom: 15%;
    }

    .t-des li a {
        height: 30px;
    }

    .t-des {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        margin-top: 8%;
    }

    .t-des li {
        width: calc(100% / 3);
        margin-right: 1px;
        color: #222;
    }

    .t-des li:last-child {
        margin-right: 0;
    }

    .t-des li a {
        display: block;
        text-align: center;
        padding: 6%;
        color: #222;
        font-size: 1.6rem;
        height: 25px;
    }

    .current {
        border-bottom: 5px solid #3aabd2;
        background-color: #3aabd2;
        border-radius: 8px 8px 0 0;
        color: #fff !important;
    }

    .w-contents {
        background-color: #3aabd2;
        color: #fff;
        border-radius: 0 0 8px 8px;
    }

    .w-contents .fl {
        width: 91%;
        padding: 4%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .w-contents .fl p:first-child {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
    }

    .w-contents .fl p:last-child {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
    }

    /*voice.html end*/

}
