@media screen and (min-width: 769px), print {
  a[href^=tel] {
    pointer-events: none;
    text-decoration: none;
    cursor: default !important;
  }
  .show_sp {
    display: none !important;
  }
  .container {
    min-width: 1400px;
    overflow: hidden;
    padding-bottom: 110px;
  }
  .row {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
  }
  .inner {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
  }
  img {
    max-width: 100%;
    width: auto;
    height: auto;
  }
  .hvr-pop {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    -moz-transform: perspective(1px) translateZ(0);
         transform: perspective(1px) translateZ(0);
    -moz-box-shadow: 0 0 1px rgba(0, 0, 0, 0);
         box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  }
  .hvr-pop:hover, .hvr-pop:focus, .hvr-pop:active {
    -webkit-animation-name: hvr-pop;
    -moz-animation-name: hvr-pop;
         animation-name: hvr-pop;
    -webkit-animation-duration: 0.3s;
    -moz-animation-duration: 0.3s;
         animation-duration: 0.3s;
    -webkit-animation-timing-function: linear;
    -moz-animation-timing-function: linear;
         animation-timing-function: linear;
    -webkit-animation-iteration-count: 1;
    -moz-animation-iteration-count: 1;
         animation-iteration-count: 1;
  }
  .hvz {
    overflow: hidden;
  }
  .hvz figure {
    overflow: hidden;
  }
  .hvz img {
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    -moz-transition: transform 0.3s, -moz-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s, -moz-transform 0.3s;
  }
  .hvz:hover {
    opacity: 1;
  }
  .hvz:hover img {
    -webkit-transform: scale(1.1);
       -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
    opacity: 1;
  }
  .p_top .mv {
    position: relative;
    margin-bottom: 30px;
  }
  .p_top .mv img {
    vertical-align: bottom;
  }
  .p_top .mv > figure img, .p_top .mv picture img {
    display: block;
    width: 100%;
    height: auto;
  }
  .p_top .mv .txt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .p_top .mv .txt .row {
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .p_top .mv .txt .row picture {
    margin-right: -140px;
  }
  .p_top .cta {
    background-color: #FFF200;
    padding: 10px 0;
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 99;
  }
  .p_top .cta .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_top .cta_l span {
    font-weight: 800;
    color: #CE2D39;
  }
  .p_top .cta_l span:nth-of-type(1) {
    display: block;
    font-size: 19px;
  }
  .p_top .cta_l span:nth-of-type(2) {
    font-size: 41px;
  }
  .p_top .cta_r a {
    font-size: 51px;
    color: #22ABDB;
    font-weight: 800;
    position: relative;
    padding-left: 72px;
    margin-left: 30px;
    white-space: nowrap;
  }
  .p_top .cta_r a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 52px;
    height: 52px;
    background: url(../img/ic_tel.svg) center/contain no-repeat;
    display: block;
  }
  .p_top .why {
    padding: 60px 0 80px;
  }
  .p_top .why dl {
    text-align: center;
    border: 5px solid #22ABDB;
    margin-bottom: 15px;
  }
  .p_top .why dl dt {
    background-color: #22ABDB;
    padding: 10px;
  }
  .p_top .why dl dd {
    font-size: 21px;
    line-height: 1.7;
    color: #22ABDB;
    padding: 15px;
  }
  .p_top .why p {
    text-align: center;
    font-size: 53px;
    font-weight: 800;
  }
  .p_top .why p span {
    color: #ED1C24;
  }
  .p_top .price {
    background-color: #E6E7E8;
    padding: 45px 0 70px;
    margin-bottom: 35px;
  }
  .p_top .price_top {
    text-align: center;
    background-color: #fff;
    padding: 25px 50px 70px 60px;
    margin-bottom: 77px;
  }
  .p_top .price_top h2 {
    padding: 0 25px;
    font-size: 49px;
    margin-bottom: 45px;
    font-weight: 800;
    color: #22ABDB;
    display: inline-block;
    background: -webkit-linear-gradient(bottom, #FFF200 21px, transparent 21px, transparent 100%);
    background: -moz- oldlinear-gradient(bottom, #FFF200 21px, transparent 21px, transparent 100%);
    background: linear-gradient(to top, #FFF200 21px, transparent 21px, transparent 100%);
  }
  .p_top .price_top .tb {
    text-align: left;
    margin-bottom: 40px;
    padding-left: 20px;
    padding-right: 40px;
  }
  .p_top .price_top .tb dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-bottom: 2px solid #414042;
  }
  .p_top .price_top .tb dl dt {
    width: 477px;
    font-size: 37px;
    font-weight: 800;
    padding: 15px 15px 15px 30px;
    border-right: 2px dotted;
  }
  .p_top .price_top .tb dl dt small {
    font-size: 21px;
    font-weight: 400;
  }
  .p_top .price_top .tb dl dd {
    width: -webkit-calc(100% - 477px);
    width: -moz-calc(100% - 477px);
    width: calc(100% - 477px);
    font-size: 50px;
    font-weight: 800;
    padding-left: 30px;
  }
  .p_top .price_top .ctBot {
    padding-left: 165px;
    position: relative;
  }
  .p_top .price_top .ctBot::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 230px;
    height: 330px;
    background: url(../img/price_bg.png) center/contain no-repeat;
    display: block;
  }
  .p_top .price_top .ctBot ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-bottom: 18px;
  }
  .p_top .price_top .ctBot ul li {
    background-color: #22ABDB;
    -moz-border-radius: 50%;
         border-radius: 50%;
    width: 200px;
    height: 200px;
    font-weight: 800;
    font-size: 37px;
    line-height: 1.21622;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p_top .price_top .ctBot ul li:not(:last-child) {
    margin-right: 15px;
  }
  .p_top .price_top .ctBot ul li span:nth-of-type(1) {
    display: block;
    padding-bottom: 5px;
    margin-bottom: 3px;
    position: relative;
  }
  .p_top .price_top .ctBot ul li span:nth-of-type(1)::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 160px;
    height: 2px;
    background: #fff;
    display: block;
  }
  .p_top .price_top .ctBot ul li span:nth-of-type(2) {
    color: #FFF200;
  }
  .p_top .price_top .ctBot p {
    font-size: 30px;
    color: #22ABDB;
    text-align: left;
  }
  .p_top .price_bot {
    background-color: rgba(34, 171, 219, 0.52);
    text-align: center;
  }
  .p_top .contact {
    padding: 100px 0 60px;
  }
  .p_top .contact_top dl {
    border: 5px solid #22ABDB;
  }
  .p_top .contact_top dl dt {
    font-size: 46px;
    color: #fff;
    text-align: center;
    background-color: #22ABDB;
    padding: 20px;
    font-weight: 800;
  }
  .p_top .contact_top dl dd {
    padding: 30px 30px 65px 30px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_top .contact_top dl dd ul:nth-of-type(1) {
    width: 400px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p_top .contact_top dl dd ul:nth-of-type(1) li {
    width: 49%;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) {
    width: -webkit-calc(100% - 400px);
    width: -moz-calc(100% - 400px);
    width: calc(100% - 400px);
    padding-left: 30px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) li {
    position: relative;
    font-size: 25px;
    font-weight: 800;
    padding-left: 49px;
    width: 50%;
    margin: 7px 0;
    color: #22ABDB;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) li::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 39px;
    height: 37px;
    background: url(../img/ic_check.svg) center/contain no-repeat;
    display: block;
  }
  .p_top .contact_mid {
    width: 1000px;
    margin: 75px auto 115px;
    padding: 47px 0;
    position: relative;
  }
  .p_top .contact_mid p {
    color: #fff;
    font-size: 45px;
    font-weight: 800;
  }
  .p_top .contact_mid p span {
    font-size: 76px;
    color: #FFF200;
    line-height: 1;
  }
  .p_top .contact_bot ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p_top .contact_bot ul li {
    background-color: #E6E7E8;
    -moz-border-radius: 12px;
         border-radius: 12px;
    width: 23%;
  }
  .p_top .contact_bot ul li dl {
    text-align: center;
    padding: 10.5px;
  }
  .p_top .contact_bot ul li dl dt {
    font-size: 26.6px;
    color: #22ABDB;
    font-weight: 800;
  }
  .p_top .contact_bot ul li dl dd p {
    font-size: 15.4px;
  }
  .p_top .contact_bot ul li dl dd figure {
    padding: 10.5px;
  }
  .p_top .contact_bot ul li dl dd figure img {
    height: 100px;
  }
  .p_top .contact_form {
    width: 1100px;
    margin: 100px auto 0;
    background-color: #E6E7E8;
  }
  .p_top .contact_form > dl > dt {
    font-size: 37px;
    font-weight: 800;
    color: #fff;
    padding: 10px;
    background-color: #22ABDB;
    text-align: center;
  }
  .p_top .contact_form > dl > dd {
    padding: 35px 0 40px;
  }
  .p_top .contact_form > dl > dd .form_main {
    width: 820px;
    margin: 0 auto 0;
  }
  .p_top .contact_form > dl > dd .form_main .dlist {
    background-color: #EEEDED;
    border: 2px solid #D1D3D4;
    margin-bottom: 25px;
  }
  .p_top .contact_form > dl > dd .form_main p {
    font-size: 22px;
    color: #5B5A5C;
  }
  .p_top .contact_form > dl > dd .form_main dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 20px 0;
  }
  .p_top .contact_form > dl > dd .form_main dl:not(:last-child) {
    border-bottom: 2px solid #D1D3D4;
  }
  .p_top .contact_form > dl > dd .form_main dl dt {
    width: 160px;
    text-align: center;
    font-size: 18px;
    color: #000;
    font-weight: bold;
  }
  .p_top .contact_form > dl > dd .form_main dl dd {
    width: -webkit-calc(100% - 160px);
    width: -moz-calc(100% - 160px);
    width: calc(100% - 160px);
    padding-right: 135px;
  }
  .p_top .contact_form > dl > dd .form_main dl dd .select label {
    display: block;
    height: 33px;
    position: relative;
    background-color: #D1D3D4;
    -moz-border-radius: 8px;
         border-radius: 8px;
    -webkit-perspective: 1px;
       -moz-perspective: 1px;
            perspective: 1px;
  }
  .p_top .contact_form > dl > dd .form_main dl dd .select label::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    width: 0;
    height: 0;
    border: solid #BABABA;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    -webkit-transform: translateY(-50%) rotate(45deg);
       -moz-transform: translateY(-50%) rotate(45deg);
        -ms-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
    -webkit-transition: right 0.3s ease-in-out;
    -moz-transition: right 0.3s ease-in-out;
    transition: right 0.3s ease-in-out;
  }
  .p_top .contact_form > dl > dd .form_main dl dd .select label select {
    width: 100%;
    height: 100%;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    outline: none;
    border: none;
    padding: 0 35px 0 15px;
    background: transparent;
    font-size: 14px;
    color: #5B5A5C;
    cursor: pointer;
    position: relative;
    z-index: 3;
  }
  .p_top .contact_form > dl > dd .form_main dl dd .select label select::-ms-expand {
    display: none;
  }
  .p_top .contact_form > dl > dd .form_main dl dd input {
    width: 100%;
    height: 33px;
    padding: 0 15px;
    outline: none;
    font-size: 16px;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    -moz-border-radius: 0;
         border-radius: 0;
    border: 0;
    background-color: #D1D3D4;
    -moz-border-radius: 8px;
         border-radius: 8px;
  }
  .p_top .contact_form .btn {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 20px;
    padding-bottom: 20px;
  }
  .p_top .contact_form .btn button {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 200px;
    height: 50px;
  }
  .p_top .example {
    background-color: #22ABDB;
    padding: 55px 0 75px;
  }
  .p_top .example_main {
    background-color: #fff;
    border: 1px solid #231F20;
    padding: 40px 45px;
    text-align: center;
  }
  .p_top .example_main h2 {
    padding: 0 110px;
    font-size: 49px;
    margin-bottom: 45px;
    font-weight: 800;
    color: #22ABDB;
    display: inline-block;
    background: -webkit-linear-gradient(bottom, #FFF200 21px, transparent 21px, transparent 100%);
    background: -moz- oldlinear-gradient(bottom, #FFF200 21px, transparent 21px, transparent 100%);
    background: linear-gradient(to top, #FFF200 21px, transparent 21px, transparent 100%);
  }
  .p_top .example_main .tb {
    text-align: left;
  }
  .p_top .example_main .tb table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    table-layout: fixed;
  }
  .p_top .example_main .tb table tr:not(:last-child) td {
    border-bottom: 2px solid #414042;
  }
  .p_top .example_main .tb table td {
    font-size: 37px;
    font-weight: 800;
    padding: 20px;
    vertical-align: middle;
    width: 30%;
  }
  .p_top .example_main .tb table td:not(:last-child) {
    border-right: 2px solid #414042;
  }
  .p_top .example_main .tb table td:nth-of-type(3) {
    font-size: 50px;
    color: #58595B;
    width: 40%;
  }
  .p_top .qa {
    background-color: rgba(204, 221, 231, 0.7);
    padding: 55px 0 100px;
  }
  .p_top .qa .row {
    max-width: 1100px;
  }
  .p_top .qa h2 {
    font-size: 54px;
    font-weight: 800;
    text-align: center;
    color: #727276;
    margin-bottom: 25px;
  }
  .p_top .qa dl dt {
    font-weight: 600;
    color: #727276;
    font-size: 28px;
    background-color: #fff;
    padding: 10px 50px;
  }
  .p_top .qa dl dd {
    padding: 15px 15px 15px 50px;
    font-size: 22px;
    line-height: 2.18182;
  }
  .p_top .car {
    padding: 60px 0;
  }
  .p_top .car .row {
    max-width: 1100px;
  }
  .p_top .car .row > a {
    display: block;
    width: 100%;
    line-height: 0;
  }
  .p_top .car .row > a figure img {
    width: 100%;
    height: auto;
  }
  .p_top .car_main {
    background-color: #FFF200;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 40px;
  }
  .p_top .car_main figure {
    width: 223px;
  }
  .p_top .car_main .txt {
    width: -webkit-calc(100% - 223px);
    width: -moz-calc(100% - 223px);
    width: calc(100% - 223px);
    padding-left: 35px;
  }
  .p_top .car_main .txt dl dt {
    font-weight: bold;
    color: #EE2E3E;
    font-size: 28px;
  }
  .p_top .car_main .txt dl dd p {
    font-size: 22px;
    line-height: 2.18182;
    color: #5B5A5C;
  }
  .p_top .car_main .txt dl dd p:nth-of-type(2) {
    color: #231F20;
  }
  .p_top .car_main .txt dl dd p:nth-of-type(2) a {
    color: #231F20;
  }
  .p_top .access_main {
    max-width: 1260px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding: 50px 0;
  }
  .p_top .access_main p {
    width: 493px;
    font-size: 22px;
    line-height: 2.09091;
    color: #5B5A5C;
  }
  .p_top .access_main p a {
    color: #5B5A5C;
  }
  .p_top .access_main dl {
    color: #5B5A5C;
    width: -webkit-calc(100% - 493px);
    width: -moz-calc(100% - 493px);
    width: calc(100% - 493px);
    font-size: 22px;
    line-height: 2.09091;
  }
}

@media screen and (max-width: 768px) {
  img {
    width: 100%;
    height: auto;
  }
  .container {
    overflow: hidden;
    padding-bottom: 25.28445vw;
  }
  .show_pc {
    display: none !important;
  }
  .row {
    padding-left: 3.79267vw;
    padding-right: 3.79267vw;
  }
  .inner {
    padding-left: 3.79267vw;
    padding-right: 3.79267vw;
  }
  input, select, textarea {
    font-size: 16px !important;
  }
  .p_top .mv {
    position: relative;
    margin-bottom: 2.52845vw;
    background-color: #22ABDB;
    padding-bottom: 67.76233vw;
  }
  .p_top .mv img {
    vertical-align: bottom;
  }
  .p_top .mv > figure img, .p_top .mv picture img {
    display: block;
    width: 100%;
    height: auto;
  }
  .p_top .mv .txt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .p_top .mv .txt .row {
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    text-align: center;
    padding-bottom: 1.26422vw;
  }
  .p_top .mv .txt .row picture {
    width: 101.76991vw;
    margin-right: -9.1024vw;
  }
  .p_top .cta {
    background-color: #FFF200;
    padding: 2.52845vw 0;
    text-align: center;
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 99;
  }
  .p_top .cta_l span {
    font-weight: 800;
    color: #CE2D39;
  }
  .p_top .cta_l span:nth-of-type(1) {
    display: block;
    font-size: 2.40202vw;
  }
  .p_top .cta_l span:nth-of-type(2) {
    font-size: 5.18331vw;
  }
  .p_top .cta_r a {
    font-size: 7.71176vw;
    color: #22ABDB;
    font-weight: 800;
    position: relative;
    padding-left: 9.1024vw;
    line-height: 1.2;
  }
  .p_top .cta_r a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 6.57396vw;
    height: 6.57396vw;
    background: url(../img/ic_tel.svg) center/contain no-repeat;
    display: block;
  }
  .p_top .why {
    padding: 3.16056vw 0 5.689vw;
  }
  .p_top .why dl {
    text-align: center;
    border: 1.01138vw solid #22ABDB;
    margin-bottom: 3.79267vw;
  }
  .p_top .why dl dt {
    background-color: #22ABDB;
    padding: 1.26422vw;
  }
  .p_top .why dl dt img {
    width: 88.11631vw;
  }
  .p_top .why dl dd {
    font-size: 2.78129vw;
    line-height: 1.72727;
    color: #5B5A5C;
    padding: 1.89633vw 3.79267vw;
    text-align: left;
  }
  .p_top .why p {
    text-align: center;
    font-size: 6.70038vw;
    font-weight: 800;
  }
  .p_top .why p span {
    color: #ED1C24;
  }
  .p_top .price {
    padding: 0 0 6.32111vw;
  }
  .p_top .price_top {
    text-align: center;
    background-color: #fff;
    margin-bottom: 10.11378vw;
  }
  .p_top .price_top h2 {
    padding: 0 3.16056vw;
    font-size: 6.19469vw;
    margin-bottom: 4.42478vw;
    font-weight: 800;
    color: #22ABDB;
    display: inline-block;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(2.65487vw, #FFF200), color-stop(2.65487vw, transparent), to(transparent));
    background: -webkit-linear-gradient(bottom, #FFF200 2.65487vw, transparent 2.65487vw, transparent 100%);
    background: -moz- oldlinear-gradient(bottom, #FFF200 2.65487vw, transparent 2.65487vw, transparent 100%);
    background: linear-gradient(to top, #FFF200 2.65487vw, transparent 2.65487vw, transparent 100%);
  }
  .p_top .price_top .tb {
    text-align: left;
    margin-bottom: 5.689vw;
  }
  .p_top .price_top .tb dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-bottom: 0.25284vw solid #414042;
  }
  .p_top .price_top .tb dl dt {
    width: 49.30468vw;
    font-size: 3.53982vw;
    font-weight: 800;
    padding: 2.52845vw 2.52845vw 2.52845vw 3.79267vw;
    border-right: 0.25284vw dotted;
  }
  .p_top .price_top .tb dl dt small {
    font-size: 2.02276vw;
    font-weight: 400;
  }
  .p_top .price_top .tb dl dd {
    width: -webkit-calc(100% - 49.30468vw);
    width: -moz-calc(100% - 49.30468vw);
    width: calc(100% - 49.30468vw);
    font-size: 4.80405vw;
    font-weight: 800;
    padding-left: 3.79267vw;
  }
  .p_top .price_top .ctBot {
    padding-left: 16.43489vw;
    position: relative;
  }
  .p_top .price_top .ctBot::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 23.26169vw;
    height: 33.5019vw;
    background: url(../img/price_bg.png) center/contain no-repeat;
    display: block;
  }
  .p_top .price_top .ctBot ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-bottom: 2.2756vw;
  }
  .p_top .price_top .ctBot ul li {
    background-color: #22ABDB;
    -moz-border-radius: 50%;
         border-radius: 50%;
    width: 20.35398vw;
    height: 20.35398vw;
    font-weight: 800;
    font-size: 3.79267vw;
    line-height: 1.21622;
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .p_top .price_top .ctBot ul li:not(:last-child) {
    margin-right: 1.26422vw;
  }
  .p_top .price_top .ctBot ul li span:nth-of-type(1) {
    display: block;
    padding-bottom: 0.63211vw;
    margin-bottom: 0.37927vw;
    position: relative;
  }
  .p_top .price_top .ctBot ul li span:nth-of-type(1)::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 16.43489vw;
    height: 0.25284vw;
    background: #fff;
    display: block;
  }
  .p_top .price_top .ctBot ul li span:nth-of-type(2) {
    color: #FFF200;
  }
  .p_top .price_top .ctBot p {
    font-size: 3.03413vw;
    color: #22ABDB;
    text-align: left;
  }
  .p_top .price_bot {
    background-color: rgba(34, 171, 219, 0.52);
    text-align: center;
  }
  .p_top .price_bot img {
    width: 83.43869vw;
  }
  .p_top .box_yellow {
    background-color: #FFF200;
    text-align: center;
    padding: 2.52845vw 0;
  }
  .p_top .box_yellow .row p {
    font-size: 4.80405vw;
    font-weight: 800;
    color: #22ABDB;
  }
  .p_top .box_yellow .row p span {
    color: #ED1C24;
  }
  .p_top .contact {
    padding: 12.64223vw 0 6.32111vw;
  }
  .p_top .contact .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .p_top .contact_top {
    -webkit-box-ordinal-group: 2;
       -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .p_top .contact_top dl {
    border: 0.63211vw solid #22ABDB;
  }
  .p_top .contact_top dl dt {
    font-size: 4.5512vw;
    color: #fff;
    text-align: center;
    background-color: #22ABDB;
    padding: 2.52845vw;
    font-weight: 800;
  }
  .p_top .contact_top dl dd {
    padding: 2.52845vw 1.89633vw;
  }
  .p_top .contact_top dl dd ul:nth-of-type(1) {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 1.89633vw;
  }
  .p_top .contact_top dl dd ul:nth-of-type(1) li {
    width: 42.47788vw;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 0 2.52845vw;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) li {
    position: relative;
    font-size: 3.16056vw;
    font-weight: 800;
    padding-left: 6.19469vw;
    width: 34%;
    margin: 1.89633vw 0;
    color: #22ABDB;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) li:nth-of-type(1) {
    -webkit-box-ordinal-group: 2;
       -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) li:nth-of-type(2) {
    -webkit-box-ordinal-group: 3;
       -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 26%;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) li:nth-of-type(3) {
    -webkit-box-ordinal-group: 5;
       -moz-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) li:nth-of-type(4) {
    -webkit-box-ordinal-group: 6;
       -moz-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5;
    width: 26%;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) li:nth-of-type(5) {
    -webkit-box-ordinal-group: 4;
       -moz-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    width: 40%;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) li:nth-of-type(6) {
    -webkit-box-ordinal-group: 7;
       -moz-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6;
    width: 40%;
  }
  .p_top .contact_top dl dd ul:nth-of-type(2) li::before {
    content: "";
    position: absolute;
    top: 0.63211vw;
    left: 0;
    width: 4.93047vw;
    height: 4.67762vw;
    background: url(../img/ic_check.svg) center/contain no-repeat;
    display: block;
  }
  .p_top .contact_mid {
    padding: 2.52845vw 0;
    position: relative;
    margin-bottom: 8.84956vw;
    -webkit-box-ordinal-group: 4;
       -moz-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .p_top .contact_mid p {
    color: #fff;
    font-size: 4.17193vw;
    font-weight: 800;
  }
  .p_top .contact_mid p span {
    font-size: 6.95322vw;
    color: #FFF200;
    line-height: 1;
  }
  .p_top .contact_bot {
    -webkit-box-ordinal-group: 3;
       -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin: 9.48167vw 0 3.79267vw;
  }
  .p_top .contact_bot ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .p_top .contact_bot ul li {
    background-color: #E6E7E8;
    -moz-border-radius: 1.51707vw;
         border-radius: 1.51707vw;
    width: 44.24779vw;
    margin-bottom: 4.42478vw;
  }
  .p_top .contact_bot ul li:nth-of-type(1) figure img {
    width: 19.21618vw;
  }
  .p_top .contact_bot ul li:nth-of-type(2) figure img {
    width: 31.35272vw;
  }
  .p_top .contact_bot ul li:nth-of-type(3) figure img {
    width: 31.98483vw;
  }
  .p_top .contact_bot ul li:nth-of-type(4) figure img {
    width: 24.65234vw;
  }
  .p_top .contact_bot ul li dl {
    text-align: center;
    padding: 1.89633vw;
  }
  .p_top .contact_bot ul li dl dt {
    font-size: 5.05689vw;
    color: #22ABDB;
    font-weight: 800;
  }
  .p_top .contact_bot ul li dl dd p {
    font-size: 2.78129vw;
  }
  .p_top .contact_bot ul li dl dd figure {
    margin: 1.89633vw 0;
  }
  .p_top .contact_form {
    -webkit-box-ordinal-group: 5;
       -moz-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
    margin: 0 -3.79267vw;
  }
  .p_top .contact_form > dl > dt {
    font-size: 4.67762vw;
    font-weight: 800;
    color: #fff;
    padding: 1.26422vw;
    background-color: #22ABDB;
    text-align: center;
  }
  .p_top .contact_form > dl > dd {
    padding: 0.63211vw 0 0;
  }
  .p_top .contact_form > dl > dd .form_main .dlist {
    background-color: #EEEDED;
    border: 0.25284vw solid #D1D3D4;
    margin-bottom: 3.16056vw;
  }
  .p_top .contact_form > dl > dd .form_main p {
    font-size: 2.78129vw;
    color: #5B5A5C;
    text-align: center;
  }
  .p_top .contact_form > dl > dd .form_main dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 2.52845vw 0;
  }
  .p_top .contact_form > dl > dd .form_main dl:not(:last-child) {
    border-bottom: 0.25284vw solid #D1D3D4;
  }
  .p_top .contact_form > dl > dd .form_main dl dt {
    width: 20.22756vw;
    text-align: center;
    font-size: 13px;
    color: #000;
    font-weight: bold;
  }
  .p_top .contact_form > dl > dd .form_main dl dd {
    width: -webkit-calc(100% - 20.22756vw);
    width: -moz-calc(100% - 20.22756vw);
    width: calc(100% - 20.22756vw);
    padding-right: 12.01011vw;
  }
  .p_top .contact_form > dl > dd .form_main dl dd .select label {
    display: block;
    height: 33px;
    position: relative;
    background-color: #D1D3D4;
    -moz-border-radius: 1.01138vw;
         border-radius: 1.01138vw;
    -webkit-perspective: 1px;
       -moz-perspective: 1px;
            perspective: 1px;
  }
  .p_top .contact_form > dl > dd .form_main dl dd .select label::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    width: 0;
    height: 0;
    border: solid #BABABA;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    -webkit-transform: translateY(-50%) rotate(45deg);
       -moz-transform: translateY(-50%) rotate(45deg);
        -ms-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
    -webkit-transition: right 0.3s ease-in-out;
    -moz-transition: right 0.3s ease-in-out;
    transition: right 0.3s ease-in-out;
  }
  .p_top .contact_form > dl > dd .form_main dl dd .select label select {
    width: 100%;
    height: 100%;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    outline: none;
    border: none;
    padding: 0 35px 0 15px;
    background: transparent;
    font-size: 2.02276vw;
    color: #5B5A5C;
    cursor: pointer;
    position: relative;
    z-index: 3;
  }
  .p_top .contact_form > dl > dd .form_main dl dd .select label select::-ms-expand {
    display: none;
  }
  .p_top .contact_form > dl > dd .form_main dl dd input {
    width: 100%;
    height: 33px;
    padding: 0 15px;
    outline: none;
    font-size: 2.02276vw;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    -moz-border-radius: 0;
         border-radius: 0;
    border: 0;
    background-color: #D1D3D4;
    -moz-border-radius: 1.01138vw;
         border-radius: 1.01138vw;
  }
  .p_top .contact_form .btn {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 2.52845vw;
    padding-bottom: 2.52845vw;
  }
  .p_top .contact_form .btn button {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 37.92668vw;
    height: 8.84956vw;
  }
  .p_top .example {
    padding: 0 0 11.378vw;
  }
  .p_top .example_main {
    background-color: #fff;
    text-align: center;
  }
  .p_top .example_main h2 {
    padding: 0 13.90645vw;
    font-size: 5.05689vw;
    margin-bottom: 5.689vw;
    font-weight: 800;
    color: #22ABDB;
    display: inline-block;
    background: -webkit-gradient(linear, left bottom, left top, color-stop(2.65487vw, #FFF200), color-stop(2.65487vw, transparent), to(transparent));
    background: -webkit-linear-gradient(bottom, #FFF200 2.65487vw, transparent 2.65487vw, transparent 100%);
    background: -moz- oldlinear-gradient(bottom, #FFF200 2.65487vw, transparent 2.65487vw, transparent 100%);
    background: linear-gradient(to top, #FFF200 2.65487vw, transparent 2.65487vw, transparent 100%);
  }
  .p_top .example_main .tb {
    text-align: left;
  }
  .p_top .example_main .tb table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    table-layout: fixed;
  }
  .p_top .example_main .tb table td {
    font-size: 3.79267vw;
    font-weight: 800;
    padding: 2.52845vw;
    vertical-align: middle;
    border-bottom: 0.25284vw solid #414042;
  }
  .p_top .example_main .tb table td:not(:last-child) {
    border-right: 0.25284vw solid #414042;
  }
  .p_top .example_main .tb table td:nth-of-type(3) {
    font-size: 5.05689vw;
    color: #58595B;
  }
  .p_top .qa {
    background-color: rgba(204, 221, 231, 0.7);
    padding: 6.95322vw 0 8.84956vw;
  }
  .p_top .qa .row {
    padding: 0 1.26422vw;
  }
  .p_top .qa h2 {
    font-size: 6.8268vw;
    font-weight: 800;
    text-align: center;
    color: #727276;
    margin-bottom: 3.16056vw;
  }
  .p_top .qa dl dt {
    font-weight: 600;
    color: #727276;
    font-size: 3.53982vw;
    background-color: #fff;
    padding: 2.52845vw 4.42478vw;
  }
  .p_top .qa dl dd {
    padding: 2.52845vw 4.42478vw;
    font-size: 2.78129vw;
    line-height: 2.18182;
  }
  .p_top .car {
    padding: 7.58534vw 0;
  }
  .p_top .car .row > a {
    display: block;
    width: 100%;
    line-height: 0;
  }
  .p_top .car .row > a figure img {
    width: 100%;
    height: auto;
  }
  .p_top .car_main {
    background-color: #FFF200;
    padding: 5.05689vw;
  }
  .p_top .car_main figure {
    width: 35.14539vw;
    margin: 0 auto 3.79267vw;
  }
  .p_top .car_main .txt p {
    font-size: 3.4134vw;
    font-weight: bold;
  }
  .p_top .car_main .txt dl dt {
    font-weight: bold;
    color: #EE2E3E;
    font-size: 3.53982vw;
  }
  .p_top .car_main .txt dl dd p {
    font-size: 2.78129vw;
    line-height: 2.18182;
    color: #5B5A5C;
  }
  .p_top .car_main .txt dl dd p:nth-of-type(2) {
    color: #231F20;
  }
  .p_top .car_main .txt dl dd p:nth-of-type(2) a {
    color: #231F20;
  }
  .p_top .access .map iframe {
    height: 75.85335vw;
  }
  .p_top .access_main {
    padding: 6.32111vw 3.79267vw;
  }
  .p_top .access_main p {
    font-size: 2.78129vw;
    line-height: 2.09091;
    color: #5B5A5C;
    margin-bottom: 4.42478vw;
  }
  .p_top .access_main p a {
    color: #5B5A5C;
  }
  .p_top .access_main dl {
    color: #5B5A5C;
    font-size: 2.78129vw;
    line-height: 2.09091;
  }
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.error {
  color: #ff0000;
}

#contactForm .btn {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#contactForm .btn button {
  margin: 0 10px;
}

#contactForm #btnBack, #contactForm #btnSend {
  display: none;
}

#contactForm.confirm #btnBack, #contactForm.confirm #btnSend {
  display: inline-block;
}

#contactForm.confirm #btnConfirm {
  display: none;
}

#contactForm.confirm .errow {
  display: none;
}

#contactForm.confirm label {
  background: transparent;
}

#contactForm.confirm label::before {
  display: none;
}

#contactForm.confirm input, #contactForm.confirm select {
  background: none !important;
  pointer-events: none;
  outline: none;
  background-color: transparent;
}

#contactForm.confirm input:not(:-internal-autofill-selected), #contactForm.confirm select:not(:-internal-autofill-selected) {
  background-color: transparent;
}

#result {
  text-align: center;
  color: green;
}
