@import url('/https:/fonts.googleapis.com/css2?family=Lato:wght@400;900&family=Noto+Sans+JP:wght@300;400;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@600&display=swap');

html,body{
    font-family: 'Lato', 'Noto Sans JP' ,sans-serif;
    color:#111;
    letter-spacing:0.06rem;
    padding:0;
    margin:0;
}
a:link,
a:visited,
a:active{
    text-decoration:none;   
    transition:0.5s all;
}
a:hover{
    text-decoration:none;   
}
p {
    font-size: 13px;
}
h1,h2,h3,h4,h5{
 margin:0;
 padding:0;   
}
ul,li {
    list-style:none;
    margin:0;
    padding:0;
}
.btn_sp{
 display:none;   
}
main{
 overflow:hidden;   
}
.container {
    max-width: 1140px;
    padding: 10px 20px;
    margin: 0 auto;
}
header .inner_list {
    display: flex;
    max-width: 1140px;
    padding: 20px 20px;
    margin: 0 auto;
    justify-content: space-between;
}

header nav {
    display: flex;
    align-items: center;
}

header nav ul{
 list-style:none;
 display:flex;  
}

header h1.logo{
 margin:0;
 padding:0;   
}

header a.form{
  font-weight: normal;
  color: #fff;
  border-radius: 0;
  height: 14px;
font-size: 14px;
padding: 15px 35px;
line-height: 1;
transition:0.5s all;
position:relative;
z-index:1;
overflow:hidden;
      background:-webkit-gradient(linear, left top, right top, from(#ff595d), to(#da233d));
    background:-webkit-linear-gradient(left, #ff595d, #da233d);
    background:linear-gradient(to right, #ff595d, #da233d);
}


header a.form::after {
  content: '';
    /*絶対配置でキラッと光るの位置を決める*/
  position: absolute;
  top: 0;
  left: -75%;
    /*キラッと光る形状*/
    width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
  transform: skewX(-25deg);
}

/*hoverした際の移動のアニメーション*/
header a.form:hover::after {
  animation: shine 0.7s;
}

@keyframes shine {
  100% {
    left: 125%;
  }
}


header a.form:hover:before{
 opacity:0;   
}

header h1.logo img {
    width: 150px;
    height: auto;
    vertical-align: bottom;
}

header nav a{
 color:#000000;   
 display:inline-block;
}

header nav ul li a:hover{
    color:#ff595d;
}

header nav ul li a{
margin-right:40px;   
}

.frontvisual{
 background:url(../img/ec.jpg) 0 0 no-repeat;
 background-size:cover;
 height:70vw;   
}

.frontvisual h2{
 color:#fff;
 text-shadow:4px 4px 5px #ff595d; 
 max-width:1140px;
 margin:0 auto;
 padding:15vw 40px 0 40px;  
 font-size:58px;
 font-weight:800;
}

section.struggle{
 background:#f1fafa;
 padding:0px 0;
}

section.struggle ul{
 list-style:none;   
}

section.struggle ul li{
 font-size:24px;
 font-weight:800;
 color:#1a385e;
 line-height:2.2;
 padding:0 0 0 30px;
 background:url(../img/icon_face.png) 0 14px no-repeat;
 background-size:24px auto;
}

section.struggle ul li span{
 position:relative;   
z-index:0;
}   

section.struggle ul li span:before{
 background:#9ce8f9;
 opacity:0.65;
 content:"";
 display:block;
 position:absolute;
 bottom:0;
left:0;
width:100%;
height:14px;
z-index:-1;
}

section.struggle .container{
 max-width:810px;
 margin:0 auto;   
 background:#f1fafa url(../img/illust_struggle.png) right bottom no-repeat;
 background-size:42% auto;
 padding:40px 0 40px 25px;
}

section.link {
    background: #35c8e8;
    color: #fff;
    text-align: center;
    margin: 0;
    padding: 0;
    position: relative;
}

section.link::before {
    background: #35c8e8;
    position: absolute;
    bottom: -70px;
    left: -20vw;
    content: "";
    display: block;
    border-radius: 50%;
    width: 140vw;
    height: 500px;
    transform: rotate(0deg);
    z-index: -1;
}

section.link h5 {
    padding: 50px 0 10px;
    margin: 0;
    font-size: 38px;
    font-weight: 800;
    display: inline-block;
    position:relative;
}
section.link h5:before{
 background:url(../img/quote.png) 0 0 no-repeat;
 content:"";
 display:block;
 position:absolute;
 top:30px;
 left:-44px;
 width:50px;
 height:50px;
 background-size:40px auto;   
}
section.link h5:after{
 background:url(../img/quote.png) 0 0 no-repeat;
 content:"";
 display:block;
 position:absolute;
 top:30px;
 right:-40px;
 width:50px;
 height:50px;
 background-size:40px auto;   
 transform:scale(-1,1)
}
section.link a {
    display: inline-block;
    background: #ff595d;
    color: #fff;
    font-size: 24px;
    font-weight: 800;
    padding: 20px 30px 20px 30px;
    line-height: 1;
    border-radius: 22px;
    margin: 20px 0 0 0;
    width: 470px;
    box-shadow:5px 5px 0px #1a385e;
}

section.link a img {
    width: 44px;
    height: auto;
    margin: -3px 10px 0 0;
    vertical-align: middle;
}

section.market{
 padding:100px 0 0 0;   
 text-align:center;
}

section.market h2{
 font-size:30px;
 font-weight:800;
 display:inline-block;
 position:relative;
 z-index:0;
}

section.market h2::before {
 background:#9ce8f9;
 opacity:0.65;
 content:"";
 display:block;
 position:absolute;
 bottom:0;
left:0;
width:100%;
height:14px;
z-index:-1;
}

section.market p{
 font-size:16px;
 line-height:1.8;   
}

section.market img{
 max-width:700px;
 margin:30px auto;   
}

section.merit{
 background:#1b395e;
 color:#fff;   
 text-align:center;
}

section.merit ul{
 background:#fff;
 border-radius:10px;
 padding:30px 30px;
 list-style:none;   
 max-width:670px;
 margin:0 auto 90px;
 text-align:left;
}
section.merit ul li{
 color:#1b395e;
 font-size:21px;
 line-height:2.2;   
 padding:0 0 0 40px;
 background:url(../img/tick.png)5px 13px no-repeat;
 background-size:26px auto;
 font-weight:600;
}

section.merit h2{
 font-size:30px;   
 padding:30px 0;
 margin:0;
}

section.merit .photo {
    background: url(../img/img_sns.jpg) 0 0 no-repeat;
    background-size: cover;
    box-shadow: inset 0px 16px 0px #1b395e;
    min-height: 420px;
}

section.merit .photo h3 {
    background: #ff595d;
    color: #fff;
    display: inline-block;
    margin: -29px auto 50px;
    padding: 20px 10px 20px 15px;
    font-size: 30px;
    font-weight: 800;
    line-height: 1;
    position: relative;
    z-index: 0;
    box-shadow:0px 6px 0px #1b395e;
}

section.merit .photo h3::before {
    content: "";
    display: block;
    position: absolute;
    top: 11px;
    left: -24px;
    width: 53px;
    height: 48px;
    background: #ff595d;
    transform: rotate(45deg);
    box-shadow: 0px 7px 0px #1b395e;
    z-index: -1;
}
section.merit .photo h3::after {
    content: "";
    display: block;
    position: absolute;
    top: 9px;
    right: -21px;
    width: 48px;
    height: 53px;
    background: #ff595d;
    transform: rotate(45deg);
    box-shadow: 7px -1px 0px #1b395e;
    z-index: -2;
}
section.merit .photo h3 span{
 position:relative;   
}
section.merit .photo h3 span::before {
    background: #ff595d;
    content: "";
    display: block;
    position: absolute;
    width: 200%;
    height: 11px;
    top: 8px;
    left: -50%;
    z-index: -1;
}

section.merit .photo ul {
    border-radius: 0px;
    background: rgba(244,244,244,0.8);
    padding: 20px 20px;
    max-width: 500px;
    margin: 130px 35px 40px auto;
}

section.merit .photo ul li{
 position:relative;   
 background:none;
 line-height:2;
}

section.merit .photo ul li:before{
    width:15px;
    height:15px;
    content:"";
    display:block;
    position:absolute;
    top:13px;
    left:13px;
    background:#1b395e;
    border-radius:50%;
}

section.task {
    background: #f8fcfc url(../img/illust_problem.png) 23% bottom no-repeat;
    background-size:330px auto;
    padding: 0;
    margin: -40px 0 0 0;
    text-align:center;
}

section.task h2 {
    padding: 23px 57px 30px;
    display: inline-block;
    margin: 60px auto 0px;
    font-size: 33px;
    color: #ff595d;
    background: url(../img/bg_baloon01.png) 0 0 no-repeat;
    background-size: 100%;
    line-height: 1;
}

section.task ul{
 max-width:490px;
 margin:30px 60px 30px auto;
 text-align:left;
 list-style:none;
 
}

section.task ul li{
 color:#1a385e;
 font-size:22px;
 font-weight:800;   
  padding:0 0 0 30px;
 background:url(../img/icon_face.png) 0 10px no-repeat;
 background-size:22px auto;
 line-height:1.8;
}

section.point{
 padding:100px 0 0 0;   
}

section.point h2{
 color:#1b395e;
 font-weight:800;
 text-align:center;
 font-size:35px;   
}

section.point h2 span{
 color:#f01d55;
 font-size:46px;
 display:inline-block;
 margin: 0 6px;   
}
section.point ul li p span{
font-family: "微软雅黑","宋体";}
section.point ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin:100px 0 0px;
}

section.point ul li {
    width: 34%;
    margin: 0 1% 100px;
    border: 8px solid #fff7c3;
    border-radius: 10px;
    padding: 0 30px 30px;
}

section.point ul li img{
 width:100%;
 height:auto;
 margin:30px 0 0 0;   
}

section.point ul li p{
 font-size:16px;
 margin:30px 0 10px 0;   
}

section.point ul li h3{
    background:#fff7c3;
    margin:-50px auto 0;
    text-align:center;
    width:86%;
    border-radius:10px;
    padding:15px 0;
    font-weight:800;
    font-size:22px;
}

section.onestop {
    background: #1b395e;
    text-align: center;
    padding: 0 0 60px 0;
    position:relative;
    z-index:1;
}

section.onestop::after {
    width: 80px;
    height: 80px;
    background: #1b395e;
    content: "";
    display: block;
    position: absolute;
    bottom: -7px;
    left: 50%;
    margin: 0 0 0 -53px;
    transform: skewX(30deg) rotate(59deg);
}
section.onestop br{
 display:none;   
}

section.onestop h2 {
    font-size: 30px;
    color: #fff;
    font-weight: 800;
    margin: 30px 0 50px;
    background: url(../img/bg_baloon02.png) 0 0 no-repeat;
    background-size: 100%;
    display: inline-block;
    padding: 19px 60px 22px;
    line-height: 1;
}

section.onestop .container{
 max-width:1000px;   
 position:relative;
}

.swiper {
        width: 100%;
        height: 100%;
      }

.swiper-slide {
        text-align: center;
        font-size: 18px;
        /* Center slide text vertically */
        display: -webkit-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-align-items: center;
        align-items: center;
}

.swiper-slide img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius:10px;
}

section.pre_contact {
    background: #35c8e8;
    color: #fff;
    text-align: center;
    padding: 60px;
    position:relative;
    z-index:0;
}

section.pre_contact:after{
     width: 80px;
    height: 80px;
    background: #35c8e8;
    content: "";
    display: block;
    position: absolute;
    bottom: -7px;
    left: 50%;
    margin: 0 0 0 -53px;
    transform: skewX(30deg) rotate(59deg);   
    z-index:-1;
}

section.pre_contact h2{
    position:relative;
    font-size:38px;
    display:inline-block;
}

section.pre_contact h2:before{
 background:url(../img/quote.png) 0 0 no-repeat;
 content:"";
 display:block;
 position:absolute;
 top:15px;
 left:-58px;
 width:50px;
 height:50px;
 background-size:40px auto;   
}
section.pre_contact h2:after{
 background:url(../img/quote.png) 0 0 no-repeat;
 content:"";
 display:block;
 position:absolute;
 top:15px;
 right:-50px;
 width:50px;
 height:50px;
 background-size:40px auto;   
 transform:scale(-1,1)
}

section.contact{
 padding:60px 0;   
}

section.contact .container {
    display: flex;
    max-width: 980px;
    justify-content: space-between;
    align-items: flex-start;
    padding:0 30px;
}

section.contact .contactus{
    width:39%;
    background:#fffce8;
    padding:20px 30px;
    border:5px solid #1b395e;
    text-align:center;
}

section.contact .contactus h2{
font-weight:800;
text-align:center;
font-size:26px;
display:inline-block;
margin:10px 0 10px -17px;
padding:20px 0 40px 95px;
background:url(../img/illust_contact.png) 0px  0px no-repeat;
background-size:86px;    
}

section.contact .contactus h3{
 font-weight:800;
 color:#f01d55;
 font-size:20px;
 text-align:left;   
 margin:15px 0;
}

section.contact .contactus p{
 font-size:16px;
 text-align:left;   
}

section.contact .contactus .hurry{
 color:#1b395e;
 text-align:center;
 font-size:25px;   
 font-weight:800;
 margin:30px 0 0px 0;
}

section.contact .contactus .phone {
    text-align: center;
    font-weight: 800;
    margin: 15px 0 30px 0;
    border: 5px solid #1b395e;
    border-radius: 33px;
    padding: 7px 30px 7px 65px;
    display: inline-block;
    background:url(../img/sp.png) 23px 7px no-repeat;
    background-size:36px auto;
}

section.contact .contactus .phone a {
    color: #1b395e;
    font-size: 38px;
    font-family: 'Oswald', sans-serif;
    line-height: 1;
    word-break: keep-all;
    letter-spacing: 0.01rem;
}
section.contact .form {
    width: 51%;
    overflow: hidden;
}

section.contact .form iframe {
    width: 100%;
    height: 1270px;
    margin: -2px 0 0 -2px;
}

footer{
 background:#1b395e;
 color:#fff;   
}

footer .container{
 padding:30px;   
}

footer .container h2{
 font-weight:300;
 font-size:20px;
 margin:0 0 10px 0;   
}

footer .container ul li{
 margin:0 0 0px 0;
 padding:0;
 font-size:14px;   
 font-weight:100;
 line-height:1.6
}

footer .copy{
 padding:0 40px 30px 0;
 text-align:right;
 font-size:11px; 
 font-weight:100;  
}

br.sp,.sp_v2,.sp_v3,.sp_v4{
 display:none;   
}

@media screen and (max-width:1085px) {
section.task ul {
    max-width: 50%;
    margin: 30px 10px 30px 47%;
}
}

@media screen and (max-width:1024px) {
    .frontvisual h2{
     font-size:5vw;   
    }
    section.task ul li {
    font-size: 21px;
    line-height: 1.9;
}
section.task {
    background: #f8fcfc url(../img/illust_problem.png) 16% bottom no-repeat;
    background-size:330px auto;
}
section.contact .contactus {
    width: 38%;
}
section.contact .contactus h2 {
    font-size: 24px;
    margin: 10px 0 0px -17px;
    padding: 20px 0 30px 84px;
    background-size: 79px;
}
section.contact .contactus h3{
 font-size:17px;   
}
section.contact .contactus p {
    font-size: 14px;
}
section.contact .contactus .hurry{
 font-size:22px;   
}
section.contact .contactus .phone a{
 font-size:34px;   
}
section.merit .photo h3 span::before {
    height: 9px;
    top: 6px;
}
}

@media screen and (max-width:940px) {
    section.task {
        background: #f8fcfc url(../img/illust_problem.png) center 145px no-repeat;
        background-size: 370px auto;
        padding: 0;
        margin: -40px 0 0 0;
        text-align: center;
    }
    section.merit .photo h3::before {
    top: 11px;
    left: -22px;
    width: 51px;
    height: 43px;
    box-shadow: -1px 8px 0px #1b395e;
}
section.merit .photo h3::after {
    top: 8px;
    right: -19px;
    width: 43px;
    height: 50px;
    box-shadow: 7px -1px 0px #1b395e;
}
    section.task ul {
max-width: 455px;
margin: 280px auto 30px auto;
}
header nav ul {
    display: none;
}
section.merit h2,
section.market h2,
section.merit .photo h3,
section.onestop h2{
 font-size:25px;   
}
section.task h2,
section.point h2{
 font-size:28px;   
}
section.contact .contactus h2{
 font-size:23px;   
}
section.point h2 span{
 font-size:40px;   
}
section.contact .contactus .hurry{
 font-size:21px;   
}
section.contact .contactus .phone a{
 font-size:34px;   
}
section.contact .contactus h3{
 font-size:17px;   
}
section.pre_contact h2{
 font-size:32px;   
}
section.point ul li h3 {
    width: 90%;
    font-size: 17px;
}
header a.form {
    padding: 15px 25px;
}
header h1.logo img {
    width: 120px;
}
section.struggle ul li{
 font-size:2.8vw;   
 background: url(../img/icon_face.png) 0 1.5vw no-repeat;
background-size: 3.5vw auto;
padding: 0 0 0 4.5vw;
}
section.link h5{
 font-size:5vw;   
}
section.link h5::before,section.link h5::after {
    background-size: 5vw auto;
}
section.link h5 {
    padding: 5vw 0 10px;
}
section.link a{
 width:59vw;   
}
section.market img {
    max-width: 700px;
    margin: 20px auto;
    height: auto;
    width: 95%;
} 
section.merit ul li{
 font-size:19px;   
}
section.merit ul {
    padding: 25px 30px;
    max-width: 585px;
    margin: 0 auto 80px;
}
section.merit ul li{
 font-size:17px;   
}
section.merit .photo{
 min-height:375px;   
}
section.merit .photo ul {
    padding: 18px 20px;
    max-width: 420px;
    margin:12vw 35px 40px auto;
}
section.merit .photo {
min-height: 360px;
}
}

@media screen and (max-width:840px) {
    section.merit .photo ul {
        padding: 18px 20px;
        max-width: 40vw;
        margin: 0vw 35px 40px auto;
    }
    section.pre_contact h2 {
font-size: 4vw;
}
section.pre_contact h2::before {
    left: -44px;
    background-size: 32px auto;
}
section.pre_contact h2::after {
    right: -33px;
    background-size: 32px auto;
}
    section.merit h2, section.market h2, section.merit .photo h3 {
font-size: 23px;
}
section.onestop h2 {
    margin: 30px 0 40px;
    background: url(../img/bg_baloon02.png) 10px 0 no-repeat;
    background-size: 98%;
    display: block;
    padding: 15px 32px 22px;
    font-size: 3.3vw;
}
section.merit .photo h3::before {
left: -21px;
width: 49px;
height: 41px;
}
    section.merit .photo h3::after {
        right: -18px;
        width: 42px;
        height: 48px;
    }
    section.contact .container{
     display:block;   
    }
    section.contact .contactus {
width: 400px;
margin: 0 auto 30px;
}
section.contact .form {
    width: 472px;
    margin: 0 auto;
}
section.merit ul li {
    padding: 0 0 0 35px;
    background: url(../img/tick.png)6px 8px no-repeat;
    background-size: 20px auto;
}
section.merit ul{
 margin:0 30px 80px;   
}
    .sp_v2{
     display:block;   
    }
    section.merit .photo {
min-height: 330px;
}
section.merit .photo h3{
    margin:-29px auto 30px;
}
section.task h2{
 margin:40px auto 0;
 padding:19px 47px 30px;   
}
section.point ul li {
    width: 440px;
    margin:0 1% 80px;
}
section.point ul li img {
    margin: 20px 0 0 0;
}
section.point ul li p {
    font-size: 16px;
    margin: 20px 0 10px 0;
}
section.point ul li h3 {
font-size: 20px;
}
}

@media screen and (max-width:660px) {
    .sp_v3{
     display:block;   
    }
    section.pre_contact h2 {
font-size: 6vw;
}
section.point h2 {
font-size: 26px;
}
section.point h2 span {
font-size: 32px;
}
section.onestop br{
 display:block;   
}
section.onestop h2 {
background: url(../img/bg_baloon02sp.png) 6.5vw 1vw no-repeat;
background-size: auto 20vw;
padding: 4.8vw 40px 31px;
font-size: 4.3vw;
line-height: 1.4;
}
section.pre_contact h2::before {
background-size: 39px auto;
}
section.pre_contact h2::after {
background-size: 39px auto;
}
    section.merit .photo h3{
     line-height:1.6;   
     padding: 13px 10px 13px 15px;
    }
    section.merit .photo h3::before {
left: -34px;
width: 74px;
height: 65px;
top: 17px;
}
    section.merit .photo h3::after {
right: -30px;
width: 66px;
height: 74px;
top: 12px;
    }
    section.merit .photo {
    box-shadow: inset 0px 10px 0px #1b395e;
}
section.task h2 {
font-size: 25px;
padding:19px 35px 30px;
}
    section.merit .photo h3 span::before {
height: 12px;
top: 21px;
width: 300%;
left: -100%;
}
section.merit .photo h3 {
margin: -50px auto 30px;
}
section.merit .photo {
    background: url(../img/img_sns.jpg) -85px 0 no-repeat;
    background-size: 140%;
    height: 392px;
}
section.merit .photo ul {
max-width: 46vw;
}
}


@media screen and (max-width:599px) {
    section.struggle .container {
    background: #f1fafa url(../img/illust_struggle.png) right bottom no-repeat;
    background-size: 55% auto;
    padding: 7vw 0 31vw 15px;
    letter-spacing: -0.001rem;
}
section.point ul li h3 {
font-size: 16px;
}
section.point ul li p {
font-size: 14px;
margin: 10px 0 10px 0;
}
section.point ul li h3{
 padding:15px 10px;   
}
section.point ul li h3 br{
 display:none;   
}
section.task h2{
 font-size:4.5vw;   
}
section.contact .contactus {
width: 74%;
margin: 0 auto 30px;
}
section.contact .form {
width: 96%;
margin: 0 auto;
}
section.contact .contactus .phone a {
font-size: 30px;
}
section.contact .contactus .phone {
    padding: 8px 23px 7px 52px;
    background: url(../img/sp.png) 18px 9px no-repeat;
    background-size: 28px auto;
}
section.merit ul li {
font-size: 15px;
}
section.task h2 {
font-size: 4vw;
padding: 16px 30px 30px;
}
section.task {
background: #f8fcfc url(../img/illust_problem.png) center 115px no-repeat;
background-size: 300px auto;
}
section.task ul {
max-width: 415px;
margin: 220px auto 30px auto;
}
section.task ul li {
font-size: 19px;
line-height: 1.9;
}
section.onestop h2 {
background: url(../img/bg_baloon02sp.png) 6.5vw center no-repeat;
background-size: auto 19.5vw;
padding: 4.8vw 20px 31px;
}
    section.struggle ul li {
        font-size: 4.3vw;
        background: url(../img/icon_face.png) 0 2.2vw no-repeat;
        background-size: 4.5vw auto;
        padding: 0 0 0 6vw;
    }
    section.link a{
     font-size:21px;   
    }
br.sp{
 display:block;   
}
section.contact .form iframe {
height: 1400px;
}
section.link h5 {
font-size: 7vw;
}
section.link h5::before, section.link h5::after {
background-size: 7vw auto;
}
section.link::before {
bottom: -54px;
left: -70vw;
width: 241vw;
}
section.merit h2, section.market h2, section.merit .photo h3 {
font-size: 23px;
}
section.market p {
font-size: 14px;
line-height: 1.8;
}
section.merit .photo {
background: url(../img/img_sns.jpg) -95px 0 no-repeat;
background-size: cover;
height: 330px;
}
section.merit .photo ul {
max-width: 45vw;
}
section.merit ul li {
padding: 0 0 0 35px;
background: url(../img/tick.png) 0px 6px no-repeat;
background-size: 18px auto;
font-size:14px;
}
section.merit .photo ul li {
line-height: 1.4;
margin-bottom: 6px;
}
section.merit .photo ul {
padding: 15px 13px 10px;
}
section.merit ul li{
 padding:0 0 0 26px;   
}
section.merit .photo ul li::before {
    width: 12px;
    height: 12px;
    top: 8px;
    left: 7px;
}
section.merit ul li{
 0 0 0 27px;   
}
}

@media screen and (max-width:460px) {
    section.link h5 {
padding: 8vw 0 10px;
}
section.pre_contact h2 {
font-size: 7vw;
}
section.task ul li {
font-size: 4.3vw;
line-height: 1.9;
    background: url(../img/icon_face.png) 0 2.2vw no-repeat;
    background-size: 4.5vw auto;
padding: 0 0 0 6vw;
}
section.pre_contact h2::before,
section.pre_contact h2::after {
background-size: 36px auto;
}
section.onestop h2 {
background: url(../img/bg_baloon02sp.png) 0 0 no-repeat;
background-size: 100%;
padding: 4vw 20px 21px;
font-size: 4.8vw;
margin:20px 0 20px;
}
section.point h2 {
font-size: 23px;
}
section.point h2 span {
font-size: 27px;
}
section.contact .container{
    padding:0 10px;
}
footer .copy {
padding: 0 30px 30px 0;
font-size: 9px;
}
section.contact .contactus h2 {
font-size: 19px;
}
footer .container h2 {
font-size: 17px;
}
section.contact .contactus h2 {
margin: 10px 0 0px -22px;
padding: 15px 0 30px 66px;
background-size: 59px;
}
section.contact .contactus h3 {
font-size: 4vw;
}
section.contact .contactus .phone{
 border:4px solid #1b395e;   
}
footer .container ul li{
 font-sizze:13px;   
}
section.contact .contactus p {
font-size: 3.4vw;
}
section.contact .contactus .hurry {
font-size: 6vw;
}
section.task h2 {
font-size: 4.7vw;
padding: 11px 30px 30px;
background: url(../img/bg_baloon01sp.png) 0 0 no-repeat;
background-size: 102%;
line-height: 1.4;
width: calc(100% - 60px);
}
.sp_v4{
 display:block;   
}
section.task h2 {
margin: 22px auto 0;
}
section.contact .contactus .phone {
padding: 8px 19px 7px 44px;
background: url(../img/sp.png) 13px 9px no-repeat;
background-size: 26px auto;
}
section.contact .contactus .phone a{
 font-size:7.5vw;   
}
section.merit .photo {
background: url(../img/img_sns.jpg) -125px 0 no-repeat;
background-size: auto 100%;
height: 275px;
min-height: 275px;
}
section.merit .photo ul {
max-width: 50vw;
margin: 0vw 15px 40px auto;
}
section.merit .photo ul li::before {
width: 10px;
height: 10px;
top: 4px;
left: 2px;
}
section.merit ul li {
padding: 0 0 0 20px;
font-size: 15px;
background: url(../img/tick.png) 0px 1px no-repeat;
line-height: 1.4;
background-size: 15px auto;
margin-bottom: 20px;
}
section.merit ul {
margin: 0 20px 80px;
}
.sp_v2{display:none;}
section.merit h2, section.market h2, section.merit .photo h3 {
font-size: 18px;
}
section.merit .photo h3::before {
left: -25px;
width: 56px;
height: 47px;
top: 13px;
}
section.merit .photo h3::after {
right: -21px;
width: 48px;
height: 55px;
top: 9px;
}
section.merit .photo h3 {
padding: 8px 2px 8px 2px;
}
    section.merit .photo h3 span::before {
        height: 11px;
        top: 17px;
    }
    section.link a{
     font-size:4.8vw;   
     padding:4vw;
     width:70vw;
     margin-top:2vw;
    }
    section.link a img {
    width: 9vw;
}
section.link h5:before{
 left:-7vw;   
}
section.link h5:after{
 right:-7vw;   
}
}

@media screen and (max-width:370px) {
section.merit .photo h3 {
font-size: 15px;
line-height: 1.5;
padding: 10px 2px 10px 2px;
}
section.contact .form iframe {
height: 1500px;
}
section.contact .contactus .phone a{
 font-size:7vw   
}
section.contact .contactus .phone {
padding: 7px 14px 5px 31px;
background: url(../img/sp.png) 9px 9px no-repeat;
background-size: 18px auto;
}
section.point h2 {
font-size: 19px;
}
section.point h2 span {
font-size: 25px;
}
section.point h2 br{
 display:none;   
}
section.merit .photo h3::before {
left: -22px;
width: 51px;
height: 40px;
top: 12px;
}
section.merit .photo h3::after {
right: -18px;
width: 42px;
height: 50px;
top: 7px;
}
section.merit .photo h3 span::before {
height: 8px;
top: 14px;
}
}

@media screen and (max-width:320px) {
 header .inner_list {
    padding: 10px 10px;
}   
section.pre_contact h2::before, section.pre_contact h2::after {
background-size: 29px auto;
top: 30px;
}
section.contact .contactus{
 padding:20px;   
}
.contact br.sp{
    display:none;
}
section.contact .contactus .hurry {
font-size: 5.1vw;
}
header h1.logo img {
width: 110px;
vertical-align: middle;
}
}