@charset "UTF-8";

/* CSS Document */
@media screen and (max-width:768px) {

    /*600px以上で適用する内容*/
    html {
        font-size: 10px;
    }

    body {
        font-family: 'Noto Sans JP', sans-serif;
        color: #535353;
    }

    .pc {
        display: none !important;
    }

    .sp {
        display: block !important;
    }

    .cf {
        zoom: 1;
        /*for IE 5.5-7*/
    }

    .cf:after {
        /*for modern browser*/
        content: ".";
        display: block;
        height: 0px;
        clear: both;
        visibility: hidden;
    }

    .opacity a:hover {
        opacity: 0.6;
    }

    img {
        vertical-align: bottom;
        width: 100%;
    }

    .t_a_c {
        text-align: center;
    }

    .fw100 {
        font-weight: 100;
    }

    .wrap {
        width: 85%;
        margin: 0 auto;
    }

    .btn {
        background: #f39800;
        border-radius: 35px;
        width: 90%;
        margin: 0 auto 40px;
        text-align: center;
        height: 50px;
        line-height: 50px;
        font-size: 4vw;
        box-shadow: 0 4px 4px rgba(74, 74, 74, 0.4);
    }

    .btn a {
        color: #fff;
        display: block;
    }

    .btn01 {
        background: #F0D80A;
        border-radius: 35px;
        width: 90%;
        margin: 0 auto 40px;
        text-align: center;
        height: 50px;
        line-height: 50px;
        font-size: 4vw;
        box-shadow: 0 4px 4px rgba(74, 74, 74, 0.4);
    }

    .btn01 a {
        color: #fff;
        display: block;
    }

    .btn02 {
        background: #13b5b1;
        border-radius: 35px;
        width: 160px;
        margin: 0 auto;
        text-align: center;
        height: 36px;
        line-height: 36px;
        font-size: 24px;
        box-shadow: 0 2px 4px rgba(74, 74, 74, 0.4);
    }

    .btn02 a {
        color: #fff;
        display: block;
    }

    h3 {
        background: #4c8bf5;
        color: #fff;
        text-align: center;
        border-radius: 60px;
        font-size: 4vw;
        line-height: 6vw;
        padding: 15px 0;
        margin: 20px 0 30px;
    }

    header {
        width: 100%;
        height: 64px;
        color: #535353;
        border-bottom: 2px solid #f1f1f1;
    }

    header .wrap {
        position: relative;
        width: 90%;
    }

    header h1 {
        width: 35%;
        position: absolute;
        top: 25px;
        left: 0;
    }

    header p.text {
        font-size: 2.5vw;
        color: #535353;
        position: absolute;
        top: 10px;
        left: 0;
    }

    header p.logo02 {
        width: 15%;
        position: absolute;
        right: 0;
        top: 6px;
    }


    nav.gnav {
        width: 100%;
        position: fixed;
        bottom: 0;
        background: #fff;
        z-index: 100;
        border-top: 2px solid #f1f1f1;
    }

    nav.gnav ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
    }

    .footercampaign {
        text-align: center;
        color: red;
        margin-top: 10px;
    }

    nav.gnav li {
        font-size: 10pt;
        margin: 10px 0;
        display: inline-block;
    }

    nav.gnav li:nth-child(2) {
        margin: 14px 0 0 0;
    }

    nav.gnav li.tel span {
        display: block;
        color: #999;
        font-size: 3vw;
        font-weight: 100;
    }

    nav.gnav li.tel {
        letter-spacing: -0.5px;
        font-size: 5.5vw;
        color: #4c8bf5;
        line-height: 6vw;
        text-align: center;
        font-weight: bold;
    }

    .btn02 {
        background: #f39700;
        border: 2px solid #f39700;
        border-radius: 35px;
        width: 42%;
        margin: 0 auto;
        text-align: center;
        height: 36px;
        line-height: 32px;
        font-size: 3vw;
        box-shadow: 0 2px 4px rgba(74, 74, 74, 0.4);
        transition: all 0.3s;
    }

    nav.gnav li.tel a {
        color: #f39400;
    }

    .menu__item {
        background: #4c8bf5;
        color: #fff;
        cursor: pointer;
        display: block;
        height: 60px;
        text-align: center;
        font-size: 18px;
    }

    .menu__item__link {
        color: #fff;
        display: block;
        line-height: 60px;
        padding: 0 1rem;
        position: relative;
    }

    .menu__item__link:after {
        content: "";
        display: block;
        position: absolute;
        right: 33%;
        top: 22px;
        width: 18px;
        height: 18px;
        background: url("../img/hum_off.jpg") center center;
        background-size: cover;
    }

    .menu__item__link.on:after {
        background: url("../img/hum_on.jpg") center center;
    }

    .submenu {
        background: #fff;
        display: none;
        position: relative;
        z-index: 10;
    }

    .submenu li {
        font-weight: 100;
        text-align: left;
        padding: 20px;
        border-bottom: 1px solid #eee;
    }

    .submenu li a {
        cursor: pointer;
        display: block;
        color: #626262;
    }

    .topcatch {
        background: #4153b6;
        border: solid #4153b6;
        border-width: 0 0.5em;
        box-decoration-break: clone;
        color: #FFF;
        font-size: 2rem;
        line-height: 1.5;
        padding: 0.5em 0;
    }


    #sec01 {
        position: relative;
        padding: 20px 0 20px;
        background: #e4eeff;
    }

    #sec01 .wrap {
        width: 80%;
        margin: 0 auto;
        text-align: center;
    }

    #sec01 h1 {
        font-size: 10vw;
        color: #4153b6;
        font-weight: 900;
    }

    #sec01 h1 span {
        color: #4b8bf5;
        display: block;
        font-size: 5vw;
        line-height: 7vw;
        font-weight: bold;
    }

    #sec01 h1 span+span {
        margin: 0 0 15px 0;
    }

    #sec01 .img03 {
        width: 100%;
        margin: 15px 0;
    }

    #sec01 p {
        margin: 15px auto;
        display: flex;
        align-items: flex-start;
        justify-content: space-around;
    }

    #sec01 ul {
        margin: 20px auto;
        display: flex;
        justify-content: space-around;
    }

    #sec01 ul li {
        font-size: 3.6vw;
        line-height: 4vw;
        position: relative;
        color: #fff;
        background: #4153b6;
        border-radius: 50%;
        width: 24vw;
        height: 24vw;
        float: left;
        text-align: center;
    }

    #sec01 ul li span {
        position: absolute;
        display: block;
        top: 50%;
        width: 100%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        -webkit- transform: translateY(-50%) translateX(-50%);
    }

    #sec01 .text01 {
        color: #626262;
        font-size: 3.6vw;
        line-height: 5vw;
        font-weight: bold;
    }

    #sec02 {
        background: url("../img/bg_blue.jpg") repeat;
        padding: 30px 0;
        position: relative;
        z-index: 10;
        color: #fff;
    }

    #sec02 h2 {
        color: #ffff00;
        text-align: center;
        font-size: 6vw;
        margin: 20px 0 0;
        line-height: 30px;
    }

    #sec02 h2 span {
        color: #fff;
        display: block;
        font-size: 4vw;
        line-height: 6vw;
    }

    #sec02 .text01 {
        text-align: center;
        font-size: 4vw;
        line-height: 6vw;
        border-bottom: 4px solid #fff;
        display: inline-block;
        padding: 0 0 5px;
    }

    #sec02 .btn {
        margin: 20px auto 0;
    }

    #sec02 .btn01 {
        margin: 20px auto 0;
    }

    #sec02 .text02 {
        text-align: center;
        font-weight: 100;
        font-size: 3vw;
        margin: 20px 0 0 0;
        line-height: 4vw;
    }

    #sec03 {
        padding: 30px 0 40px 0;
        background: #e4eeff;
    }

    #sec03 .box01 {
        padding: 55px 0;
    }

    #sec03 .box01 img {
        width: 90%;
        margin: 0 auto;
    }

    #sec03 .box01 h2 {
        line-height: 7vw;
        font-size: 4.5vw;
        margin: 50px 0;
        color: #4254b6;
        text-align: left;
    }

    #sec03 .box01 .text01 {
        font-size: 3.5vw;
        line-height: 6vw;
    }

    #sec03 .box02 {
        background: url("../img/bg_blue02.jpg") repeat;
        padding: 40px 0 15px 0;
    }

    #sec03 .box02 .text01 {
        font-size: 4.5vw;
        font-weight: 500;
        line-height: 6.5vw;
        color: #fff;
        text-align: center;
        margin: 0 0 40px 0;
    }

    #sec03 .box02 ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        width: 80%;
        margin: 0 auto;
    }

    #sec03 .box02 ul li {
        width: 100%;
        background: #fff;
        border-radius: 20px;
        margin: 0 0 20px 0;
    }

    #sec03 .box02 .text02 {
        font-size: 4vw;
        line-height: 6vw;
        font-weight: bold;
        color: #498af4;
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 10px 0 20px 0;
    }

    #sec03 .box02 .text03 {
        font-size: 3.5vw;
        line-height: 5vw;
        padding: 0 30px 30px;
        word-break: break-all;
    }

    #sec03 .box02 ul li img {
        width: 60%;
        margin: 30px auto 0;
        display: block;
    }


    #sec03 .box03 {
        background: #fff;
        padding: 1px 20px 15px;
        margin: 20px 0 0;
    }

    #sec03 .box03 h3 {
        margin: 40px 0;
    }

    #sec03 .box03 h4 {
        color: #535353;
        font-size: 4vw;
        position: relative;
        border: none;
        padding: 0 0 0 20px;
        margin: 0 0 20px 0;
    }

    #sec03 .box03 h4:before {
        content: "";
        display: block;
        width: 15px;
        height: 15px;
        background: #4c8bf5;
        position: absolute;
        left: 0;
        top: 1px;
    }

    #sec03 .box03 .text01 {
        font-size: 3.5vw;
        line-height: 6vw;
        margin: 15px 0 0 0;
    }

    #sec03 .box03 ul>li {
        margin: 0 0 45px;
    }

    #sec03 .box03 ul>li:last-child {
        margin: 0;
    }

    #sec03 .box03 ul.first li {
        display: flex;
        flex-direction: column;
        margin: 0 0 10px 0;
        font-size: 3.5vw;
    }

    #sec03 .box03 ul.first li .box04 {
        width: 100%;
        background: #4c8bf5;
        color: #fff;
        padding: 15px;
    }

    #sec03 .box03 ul.first li .box05 {
        width: 100%;
        background: #eee;
        padding: 15px;
        vertical-align: middle;
    }

    #sec03 .box03 ul.first li .box05 p {
        display: inline-block;
        vertical-align: middle;
    }

    #sec03 .box03 ul.first li .box05 p>span {
        font-size: 4vw;
        line-height: 6vw;
        font-weight: bold;
        position: relative;
        margin: 30px 0 0 0;
        display: block;
    }

    #sec03 .box03 ul.first li .box05 p>span:before {
        content: "";
        display: block;
        width: 11px;
        height: 18px;
        background: url("../img/arrow03.png");
        position: absolute;
        top: 7px;
        left: 0;
        top: -20px;
        transform: rotate(90deg);
    }

    #sec03 .box03 ul.first li .box05 p>span>span {
        color: #4c8bf5;
    }

    #sec03 .box03 ul.second li {
        display: flex;
        flex-direction: column;
        margin: 0 0 10px 0;
        font-size: 3.5vw;
        line-height: 5.5vw;
    }

    #sec03 .box03 ul.second li .box06 {
        width: 100%;
        background: #80adf7;
        color: #fff;
        padding: 15px;
    }

    #sec03 .box03 ul.second li .box07 {
        width: 100%;
        background: #eee;
        padding: 15px;
    }

    #sec03 .box03 ul.second li .box07 span {
        color: #4c8bf5;
    }

    #sec03 .box03 ul.second li .box07 font {
        line-height: 46px;
    }

    #sec03_04{
    	margin: 40px 0 0;
    }

    #sec03 .box08 {
        background: #fff;
        padding: 1px 20px 15px;
        margin: 20px 0 0;
    }

    #sec03 .box08 .text01 {
    line-height: 7vw;
    font-size: 4.5vw;
    margin: 20px 0;
    text-align: center;
    }

    #sec04 {
        background: url("../img/bg_blue02.jpg");
        padding: 10px 0 20px 0;
    }

    #sec04 h3 {
        margin: 40px 0 33px;
        background: #fff;
        color: #4c8bf5;
    }

    #sec04 ul {
        display: flex;
        flex-direction: column;
        position: relative;
        z-index: 1;
        margin: 45px 0 0 0;
    }

    #sec04 ul li+li:before {
        content: "";
        position: absolute;
        width: 4px;
        height: 20px;
        background: #fff;
        top: -20px;
        z-index: -1;
        left: calc(50% - 2px);
    }

    #sec04 ul li {
        position: relative;
        width: 100%;
        margin: 0 0 20px;
        height: 80px;
    }

    #sec04 ul li .box01 {
        width: 10%;
        float: left;
        text-align: center;
        background: #4254b6;
        color: #fff;
        font-size: 4vw;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        font-weight: bold;
    }

    #sec04 ul li .box02 {
        width: 90%;
        float: left;
        font-weight: bold;
        line-height: 5.5vw;
        background: #fff;
        display: flex;
        align-items: center;
        font-size: 4vw;
        height: 100%;
        padding: 0 0 0 20px;
    }

    #sec08 {
        padding: 0 0 20px;
    }

    #sec08 .text02 {
        font-weight: bold;
        color: #4254b6;
        text-align: center;
        font-size: 6vw;
        margin: 30px 0 0;
        line-height: 8vw;
    }

    #sec08 .text02 span {
        color: #626262;
        display: block;
        font-size: 4vw;
        line-height: 6vw;
    }

    #sec08 .text01 {
        font-weight: bold;
        text-align: center;
        font-size: 4vw;
        line-height: 6vw;
        border-bottom: 4px solid #4c8bf5;
        display: inline-block;
        padding: 0 0 5px;
        color: #4c8bf5;
    }

    #sec08 h3 {
        margin: 50px 0 35px;
    }



    #sec08 .box10 {
        background: #f39800;
        color: #fff;
        font-size: 3.5vw;
        padding: 15px 0;
        line-height: 5vw;
    }

    #sec08 .box11 {
        margin: 20px 0 30px;
    }

    #sec08 .box09 {
        margin: 10px 0 50px;
        border: 2px solid #dcdcdc;
        text-align: center;
        line-height: 7vw;
        padding: 20px 0;
    }

    #sec08 .box09 .text14 {
        font-size: 4vw;
    }

    #sec08 .box09 .text15 {
        font-size: 7vw;
        color: #4c8bf5;
        margin: 0 auto;
        text-align: center;
        font-weight: bold;
    }

    #sec08 .box09 .text15 a {
        color: #f39800;
    }

    #sec08 .box09 .text15 span {
        font-size: 3vw;
        font-weight: 100;
        color: #999;
        display: block;
    }

    #sec08 .form {
        background: #fff;
        width: 100%;
    }

    footer {
        padding: 0 0 90px;
    }

    footer .wrap {
        position: relative;
    }

    footer h2 {
        width: 40%;
        padding: 20px 0;
        margin: 10px auto 0;
    }

    footer p.text {
        text-align: center;
        font-size: 12px;
        color: #535353;
    }

    footer p.logo02 {
        width: 80px;
        margin: 20px auto;
    }

    footer nav ul {
        display: flex;
        justify-content: space-around;
        font-size: 14px;
        width: 100%;
        margin: 30px auto 0 0;
    }

    footer small {
        text-align: center;
        display: block;
        margin: 30px 0 0;
    }


    /*プライバシーポリシーページ*/
    #sec_pp {
        padding: 80px 0 50px 0;
    }

    #sec_pp h2 {
        text-align: center;
        font-size: 4vw;
        margin: 0 0 40px;
        font-weight: 100;
    }

    #sec_pp .text01 {
        font-size: 3vw;
        line-height: 5vw;
        margin: 0 0 40px;
    }

    #sec_pp .text02 {
        font-size: 3.5vw;
        margin: 0 0 25px;
    }

    #sec_pp .text03 {
        font-size: 3vw;
        line-height: 5vw;
        margin: 0 0 55px;
    }

    #sec_pp .text03 a {
        color: #13b5b1;
    }

    /*サンクスページ*/
    #sec_th {
        padding: 100px 0 100px 0;
    }

    #sec_th h2 {
        text-align: center;
        font-size: 5vw;
        margin: 0 0 40px;
        color: #13b5b1;
    }

    #sec_th .text01 {
        font-size: 3.5vw;
        line-height: 5.5vw;
        margin: 0 0 80px;
        text-align: center;
    }

    #sec_th .link {
        padding: 0 0 40px 0;
    }
    #sec_th .link .ttl {
        font-size: 4.5vw;
        line-height: 1.6;
        margin: 0 0 30px;
        text-align: center;
        font-weight: bold;
    }

    #sec_th .link .list li {
        max-width: 300px;
        margin: 0 auto;
        padding: 0 0 30px 0;
    }
    #sec_th .link .list li a {
        display: block;
        color: #4B4B4B;
        transition: all 0.3s;
    }
    #sec_th .link .list li a:hover {
        opacity: 0.8;
    }
    #sec_th .link .list li p {
        padding: 12px 0 0 0;
        font-size: 3.5vw;
        line-height: 1.3;
    }

    #sec_th .btn03 {
        background: #959595;
        border: 2px solid #959595;
        border-radius: 35px;
        width: 90%;
        margin: 0 auto 70px;
        text-align: center;
        height: 50px;
        line-height: 46px;
        font-size: 3.5vw;
        box-shadow: 0 4px 4px rgba(74, 74, 74, 0.4);
        transition: all 0.3s;
    }

    #sec_th .btn03 a {
        color: #fff;
        display: block;
    }

    #sec_th .btn04 {
       background: #f39801;
        border: 2px solid #f39801;
        border-radius: 35px;
        width: 90%;
        margin: 0 auto 30px;
        text-align: center;
        height: 50px;
        line-height: 46px;
        font-size: 3.5vw;
        box-shadow: 0 4px 4px rgba(74, 74, 74, 0.4);
        transition: all 0.3s;
    }
    #sec_th .btn04 a {
        color: #fff;
        display: block;
    }










#sec09 {
	padding: 30px 0;
  position: relative;
}
#sec09 .text01 {
  margin: 0 0 15px 0;
  line-height: 7vw;
  font-size: 4.5vw;
  text-align: center;
}
#sec09 p {
  font-size: 3.5vw;
  line-height: 6vw;
}
#sec09 .logobox {
  padding: 30px 0 0 0;
  text-align: center;
}
#sec09 .logobox img {
  display: inline-block;
  width: auto;
  max-width: 100%;
  height: 100px;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.5);
}
#sec09 .logobox div + div:before {
  content: "×";
  display: block;
  font-size: 40px;
  font-family: Verdana, Geneva, sans-serif;
  line-height: 1;
  vertical-align: middle;
}

#sec10 {
	padding: 30px 0;
  position: relative;
}
#sec10 .text01 {
  margin: 0 0 30px 0;
  color: #4254b6;
  line-height: 7vw;
  font-size: 4.5vw;
  text-align: center;
}
#sec10 .text02 {
  margin: 0 0 30px 0;
  font-size: 3.5vw;
  line-height: 6vw;
}
#sec10 .text02 .fb {
  font-weight: bold;
}
#sec10 .box01 {
  margin: 0 0 40px 0;
  color: #fff;
  background: url(../img/bg_blue02.jpg) repeat;
  padding: 15px 20px 30px 20px;
}
#sec10 .box01 .text03 {
  margin: 0 0 25px 0;
  line-height: 7vw;
  font-size: 4.5vw;
  text-align: center;
}
#sec10 .box01 ul {
  max-width: 700px;
  margin: 0 auto 15px auto;
  font-size: 4vw;
  line-height: 6vw;
}
#sec10 .box01 ul li {
  position: relative;
  margin: 0 0 2px 0;
  padding: 0 0 0 25px;
}
#sec10 .box01 ul li:before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 12px;
  height: 7px;
  border-width: 0 0 2px 2px;
  border-style: solid;
  border-color: #fff;
  transform: rotate(-45deg);
}
#sec10 .box01 p {
  font-size: 3.5vw;
  line-height: 6vw;
}
#sec10 .text04 {
  margin: 0 0 25px 0;
  font-size: 4vw;
  line-height: 6vw;
  text-align: center;
}
#sec10 .btn_c {
  text-align: center;
}
#sec10 .btn_c a {
  position: relative;
  display: inline-block;
  background: #4b55ac;
  border-radius: 50px;
  width: 90%;
  color: #fff;
  text-align: center;
  padding: 8px 20px;
  font-size: 3.5vw;
  line-height: 1.3;
  box-shadow: 0 4px 4px rgba(74, 74, 74, 0.4);
  transition: all 0.3s;
}
#sec10 .btn_c a em {
  display: block;
  font-size: 5vw;
  font-style: normal;
}
#sec10 .btn_c a:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 24px;
  width: 14px;
  height: 14px;
  margin-top: -7px;
  border-width: 2px 2px 0 0;
  border-style: solid;
  border-color: #fff;
  transform: rotate(45deg);
}

#sec_contact {
  padding: 20px 0;
}
#sec_contact .form_block {
  max-width: 620px;
  margin: 0 auto;
  padding: 20px 0 50px 0;
}
#sec_contact .form_block .required,
#sec_contact .form_block .option {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
}
#sec_contact .form_block .required {
  background-color: #d9534f;
}
#sec_contact .form_block .option {
  background-color: #78909C;
}
#sec_contact .form_block .clm {
  margin: 0 0 25px 0;
  font-size: 4vw;
}
#sec_contact .form_block .title {
  margin: 0 0 8px 0;
}
#sec_contact .form_block input[type=text],
#sec_contact .form_block input[type=email] {
  width: 100%;
  height: 38px;
  padding: 10px;
  font-size: 4vw;
  border-radius: 5px;
  border: 1px solid #dcdcdc;
  box-sizing: border-box;
}
#sec_contact .form_block textarea {
  width: 100%;
  height: 120px;
  padding: 10px;
  font-size: 4vw;
  border-radius: 5px;
  border: 1px solid #dcdcdc;
  box-sizing: border-box;
}
#sec_contact .form_block label {
  display: flex;
  margin: 0 0 10px 0;
  padding: 8px;
  border-radius: 5px;
  border: 1px solid #dcdcdc;
}
#sec_contact .form_block .submit {
  padding: 15px 0;
}
#sec_contact .form_block .submit input[type=submit] {
  width: 100%;
  height: 42px;
  padding: 10px;
  color: #fff;
  font-size: 5vw;
  border-radius: 5px;
  border: none;
  background: #4c8bf5;
}
#sec_contact .btn03 {
  background: #959595;
  border: 2px solid #959595;
  border-radius: 35px;
  width: 90%;
  margin: 0 auto 70px;
  text-align: center;
  height: 50px;
  line-height: 46px;
  font-size: 3.5vw;
  box-shadow: 0 4px 4px rgba(74, 74, 74, 0.4);
  transition: all 0.3s;
}

#sec_contact .btn03 a {
  color: #fff;
  display: block;
}
#sec_contact .box09 {
  margin: 10px 0 50px;
  border: 2px solid #dcdcdc;
  text-align: center;
  line-height: 7vw;
  padding: 20px 0;
}
#sec_contact .box09 .text14 {
  font-size: 4vw;
}
#sec_contact .box09 .text15 {
  font-size: 7vw;
  color: #4c8bf5;
  margin: 0 auto;
  text-align: center;
  font-weight: bold;
}
#sec_contact .box09 .text15 a {
  color: #f39800;
}
#sec_contact .box09 .text15 span {
  font-size: 3vw;
  font-weight: 100;
  color: #999;
  display: block;
}









}
