@charset "UTF-8";
@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 {
    padding-top: 80px;
    overflow: hidden;
  }
  .row {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
  }
}

@media screen and (min-width: 769px) and (max-width: 1017px) {
  .row {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media screen and (min-width: 769px), print {
  img {
    max-width: 100%;
    width: auto;
    height: auto;
  }
  .header {
    padding: 17px 0px 14px;
    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: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: fixed;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    max-width: 1000px;
    width: 100%;
    z-index: 999;
  }
  .header::after {
    position: absolute;
    content: "";
    width: 5000%;
    height: 100%;
    background: #fff;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: -1;
  }
  .header__logo {
    line-height: 0;
    width: 174px;
  }
  .header__logo a {
    display: block;
    line-height: 0;
    width: 100%;
  }
  .header__logo a img {
    width: 100%;
    height: auto;
  }
  .header__right {
    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;
  }
  .header__right p {
    font-size: 12px;
    line-height: 17px;
    font-weight: 700;
    color: #1A1A1A;
    text-align: right;
  }
  .header__right ul {
    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;
    margin-left: 11px;
  }
  .header__right ul li {
    width: 187px;
  }
  .header__right ul li + li {
    margin-left: 6px;
  }
  .header__right ul li a {
    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: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    height: 48.78px;
    -moz-border-radius: 5px;
         border-radius: 5px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    color: #fff;
    font-size: 13px;
    line-height: 19px;
    font-weight: 700;
  }
  .header__right ul li a::before {
    content: "";
    margin-right: 6px;
  }
  .header__right ul li a.mail {
    background: #FF7602 url("../img/bgMailHeader_pc.png") left bottom no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    border: 2px solid #EF9D81;
  }
  .header__right ul li a.mail::before {
    width: 25.64px;
    height: 18.18px;
    background: url("../img/icMail.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
  }
  .header__right ul li a.line {
    background: #3BB171 url("../img/bgLineHeader_pc.png") left bottom no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    border: 2px solid #7BC39C;
  }
  .header__right ul li a.line::before {
    width: 29.35px;
    height: 27.97px;
    background: url("../img/icLine.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
  }
  .p_top .fv {
    background: url("../img/gridFV.png") 0 0 repeat;
    padding: 45px 0 0px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p_top .fv::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 725px;
    background: url("../img/bgFV_pc.png") 0 0 no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
    top: 0;
    left: 0;
    z-index: -1;
  }
  .p_top .fv__main {
    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;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .p_top .fv__main--left {
    width: 537px;
    padding-bottom: 19px;
  }
  .p_top .fv__intro {
    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 .fv__intro::before, .p_top .fv__intro::after {
    content: "";
    width: 39px;
    height: 66px;
    background: url("../img/icSplash.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
  }
  .p_top .fv__intro::before {
    margin-right: 3px;
  }
  .p_top .fv__intro::after {
    -webkit-transform: scaleX(-1);
       -moz-transform: scaleX(-1);
        -ms-transform: scaleX(-1);
            transform: scaleX(-1);
    margin-left: 3px;
  }
  .p_top .fv__intro span {
           font-size: 24px;
    line-height: 37px;
    font-weight: 700;
    color: #fff;
    text-align: center;
  }
  .p_top .fv__list {
    margin: 9.5px -5.5px -5.5px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -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 .fv__list li {
    min-width: 161px;
    height: 48px;
    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;
    padding: 0 5px;
    color: #fff;
    font-size: 22px;
    line-height: 32px;
    font-weight: 700;
    border: 1px solid #fff;
    -moz-border-radius: 5px;
         border-radius: 5px;
    margin: 5.5px;
  }
  .p_top .fv__title {
    margin-top: 5px;
    padding: 0 0 0 15px;
    font-size: 64px;
    line-height: 92px;
    font-weight: 700;
    color: #fff;
  }
  .p_top .fv__title span {
    display: inline-block;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p_top .fv__title span::before {
    position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    background: #FFD800;
    -moz-border-radius: 50%;
         border-radius: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    top: 7px;
  }
  .p_top .fv__title em {
    font-style: normal;
    font-size: 82px;
    line-height: 82px;
  }
  .p_top .fv__partner {
    padding: 0 0 0 15px;
    margin-top: 18px;
  }
  .p_top .fv__partner ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
  .p_top .fv__partner ul li {
    line-height: 0;
    -moz-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
         box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    margin-right: 8px;
  }
  .p_top .fv__partner ul li a {
    display: block;
    line-height: 0;
  }
  .p_top .fv__partner ul li a img {
    width: 100%;
    height: auto;
  }
  .p_top .fv__partner ul li.partner01 {
    width: 158px;
  }
  .p_top .fv__partner ul li.partner02 {
    width: 273px;
  }
  .p_top .fv__partner p {
    color: #fff;
    font-size: 15px;
    line-height: 21px;
    font-weight: 700;
    margin-top: 5px;
  }
  .p_top .fv__info {
    padding: 0 14px 0 0;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    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;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 426.89px;
  }
  .p_top .fv__info::before {
    position: absolute;
    content: "";
    width: 326px;
    height: 287px;
    background: url("../img/illus01.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    left: 36px;
    top: -245.8px;
    z-index: -1;
  }
  .p_top .fv__info dl {
    width: 205px;
    height: 205px;
    -moz-border-radius: 50%;
         border-radius: 50%;
    background: url("../img/bgCircle.png") 0 0 no-repeat;
    -moz-background-size: cover;
         background-size: cover;
    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;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
  }
  .p_top .fv__info dl dt {
    font-size: 26px;
    line-height: 29px;
    font-weight: 700;
    color: #006B6E;
  }
  .p_top .fv__info dl dd {
    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;
    margin-top: 8px;
  }
  .p_top .fv__info dl dd span {
    font-size: 83px;
    line-height: 1;
    color: #FF7600;
    font-weight: 700;
  }
  .p_top .fv__info dl dd span small {
    font-size: 56px;
    font-weight: 400;
  }
  .p_top .fv__info dl dd em {
    font-size: 26px;
    line-height: 29px;
    font-weight: 700;
    color: #FF7600;
    font-style: normal;
    text-align: left;
  }
  .p_top .fv__info dl[data-text] {
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p_top .fv__info dl[data-text]::after {
    position: absolute;
    content: attr(data-text);
    font-size: 27px;
    line-height: 39px;
    font-weight: 700;
    color: #fff;
    right: -15px;
    top: -15px;
    -webkit-transform: rotate(33deg);
       -moz-transform: rotate(33deg);
        -ms-transform: rotate(33deg);
            transform: rotate(33deg);
  }
  .p_top .fv__info dl + dl {
    margin-left: 8px;
  }
  .p_top .fv__slider {
    margin-top: 25px;
  }
  .p_top .fv__slider .swiper-wrapper {
    -webkit-transition-timing-function: linear;
       -moz-transition-timing-function: linear;
            transition-timing-function: linear;
  }
  .p_top .fv__slider .swiper-slide {
    width: 170px;
    margin: 0 5px;
    line-height: 0;
  }
  .p_top .fv__slider .swiper-slide img {
    width: 170px;
    height: 306px;
    object-fit: cover;
  }
  .p_top .elite {
    position: relative;
    z-index: 2;
    margin-top: 44px;
  }
  .p_top .elite__inner h2 {
    text-align: center;
    font-size: 24px;
    line-height: 36px;
    font-weight: 700;
    color: #0A8083;
  }
  .p_top .elite__inner h2 span {
    background: -webkit-repeating-linear-gradient(top, white 0%, white 75%, #ffe200 75%, #ffe200 95%);
    background: -moz- oldrepeating-linear-gradient(top, white 0%, white 75%, #ffe200 75%, #ffe200 95%);
    background: repeating-linear-gradient(180deg, white 0%, white 75%, #ffe200 75%, #ffe200 95%);
  }
  .p_top .elite__list {
    margin-top: 28px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 28px -16px -16px;
  }
  .p_top .elite__list dl {
    -moz-border-radius: 10px;
         border-radius: 10px;
    -moz-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.16);
         box-shadow: 0 3px 10px rgba(0, 0, 0, 0.16);
    background: #fff;
    width: 484px;
    margin: 16px;
  }
  .p_top .elite__list dl dt {
    background: #088083;
    -moz-border-radius: 10px 10px 0 0;
         border-radius: 10px 10px 0 0;
    padding: 16px 20px;
    font-size: 18px;
    line-height: 26px;
    font-weight: 700;
    color: #fff;
    text-align: center;
  }
  .p_top .elite__list dl dt span {
    color: #FFEB00;
  }
  .p_top .elite__list dl dd {
    padding: 24px 38px 30px;
    font-size: 16px;
    line-height: 26px;
    font-weight: 700;
    color: #1A1A1A;
  }
  .p_top .elite__list dl dd span {
    color: #FF3463;
  }
  .p_top .example {
    margin-top: 91px;
  }
  .p_top .example__inner {
    background: url("../img/bgGridExample.png") 0 0 repeat;
    -moz-background-size: contain;
         background-size: contain;
    padding: 5px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p_top .example__inner h2 {
    text-align: center;
    line-height: 0;
    display: block;
    position: absolute;
    top: -37px;
    left: 0;
    width: 100%;
  }
  .p_top .example__inner h2 em {
    font-style: normal;
    color: #fff;
    width: 341.38px;
    line-height: 0;
    display: inline-block;
  }
  .p_top .example__inner h2 em img {
    width: 100%;
    height: auto;
  }
  .p_top .example__inner--white {
    background: #fff;
    padding: 49.4px 25px 39px;
  }
  .p_top .example__inner--white h3 {
    text-align: center;
    font-size: 22px;
    line-height: 29px;
    font-weight: 700;
    color: #088083;
  }
  .p_top .example__inner--white h3 br {
    display: none;
  }
  .p_top .example__inner--white h3 span {
    display: inline-block;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p_top .example__inner--white h3 span::after {
    position: absolute;
    content: "";
    width: 211px;
    height: 16.49px;
    background: url("../img/bgYellow.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    left: 50%;
    bottom: -5px;
    -webkit-transform: translateX(-50%) rotate(3deg);
       -moz-transform: translateX(-50%) rotate(3deg);
        -ms-transform: translateX(-50%) rotate(3deg);
            transform: translateX(-50%) rotate(3deg);
    z-index: -1;
  }
  .p_top .example__inner--white ul.type {
    margin: 19px -3px -3px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p_top .example__inner--white ul.type li {
    min-width: 140px;
    margin: 3px;
    color: #fff;
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
    background: #05C8CC;
    -moz-border-radius: 19px;
         border-radius: 19px;
    padding: 6px 5px;
    text-align: center;
  }
  .p_top .example__inner--white h4 {
    text-align: center;
    font-size: 20px;
    line-height: 29px;
    font-weight: 700;
    color: #5A5A5A;
    margin: 11px -20px 0;
  }
  .p_top .example__inner--white h4 span {
    color: #FF3463;
  }
  .p_top .example__inner--white ul.list {
    margin: 11px -5.3px -7.2px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p_top .example__inner--white ul.list li {
    line-height: 0;
    width: 147.36px;
    margin: 5.3px;
  }
  .p_top .example__inner--white ul.list li img {
    width: 100%;
    height: auto;
  }
  .p_top .improvement {
    margin-top: 89.7px;
    background: #EDFFFF;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    padding-top: 113.2px;
    padding-bottom: 44.5px;
    max-width: 100%;
  }
  .p_top .improvement span.result {
    width: 120px;
    height: 120px;
    -moz-border-radius: 50%;
         border-radius: 50%;
    background: #FFEB00;
    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;
    font-size: 24px;
    line-height: 30px;
    text-align: center;
    color: #1A1A1A;
    font-weight: 700;
    position: absolute;
    top: -51px;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .p_top .improvement span.result::after {
    position: absolute;
    content: "";
    width: 33px;
    height: 42px;
    background: url("../img/icTriangle.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    bottom: -24px;
  }
  .p_top .improvement__main {
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    background: #464C58;
    -moz-border-radius: 15px;
         border-radius: 15px;
    -moz-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.39);
         box-shadow: 0 3px 10px rgba(0, 0, 0, 0.39);
    padding: 23px 11px 27.4px;
    max-width: 1000px;
    width: 100%;
    margin: auto;
  }
  .p_top .improvement__main::before, .p_top .improvement__main::after {
    position: absolute;
    content: "";
    width: 13.52px;
    height: 13.52px;
    -moz-border-radius: 50%;
         border-radius: 50%;
    -moz-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.46);
         box-shadow: 0 3px 6px rgba(0, 0, 0, 0.46);
    top: 16px;
    background: -webkit-gradient(linear, left top, left bottom, from(#efdf21), to(#fd980d));
    background: -webkit-linear-gradient(top, #efdf21 0%, #fd980d 100%);
    background: -moz- oldlinear-gradient(top, #efdf21 0%, #fd980d 100%);
    background: linear-gradient(180deg, #efdf21 0%, #fd980d 100%);
  }
  .p_top .improvement__main::before {
    left: 15px;
  }
  .p_top .improvement__main::after {
    right: 15px;
  }
  .p_top .improvement__main h2 {
    text-align: center;
    font-size: 32px;
    line-height: 46px;
    font-weight: 700;
    color: #fff;
  }
  .p_top .improvement__slider {
    margin-top: 15.5px;
    padding: 0 6px;
  }
  .p_top .improvement__slider article {
    padding: 0 6px;
  }
  .p_top .improvement__slider article .arInner {
    background: #fff;
    -moz-border-radius: 15px;
         border-radius: 15px;
    border: 2px dashed #FFE200;
  }
  .p_top .improvement__slider article .arInner h3 {
    text-align: center;
    -moz-border-radius: 15px 15px 0 0;
         border-radius: 15px 15px 0 0;
    margin: -2px -2px 0;
    font-size: 20px;
    line-height: 29px;
    font-weight: 700;
    color: #5A5A5A;
    padding: 16px 10px 17px;
    background: #FFE200;
  }
  .p_top .improvement__slider article .arInner .info {
    padding: 0 31px;
    margin-top: 17.2px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p_top .improvement__slider article .arInner .info > figure, .p_top .improvement__slider article .arInner .info > picture {
    width: 103px;
    margin-right: 16px;
  }
  .p_top .improvement__slider article .arInner .info .txt {
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
    color: #1A1A1A;
  }
  .p_top .improvement__slider article .arInner .acquisition {
    padding: 0 5px 15px 31px;
    margin-top: 10px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .p_top .improvement__slider article .arInner .acquisition > dl {
    width: 156px;
  }
  .p_top .improvement__slider article .arInner .acquisition > dl dt {
    width: 100%;
    height: 30.48px;
    -moz-border-radius: 15px;
         border-radius: 15px;
    color: #fff;
    background: #363636;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    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: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p_top .improvement__slider article .arInner .acquisition > dl dd {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    padding: 0 32px 0 0;
  }
  .p_top .improvement__slider article .arInner .acquisition > dl dd::before {
    position: absolute;
    content: "";
    width: 135px;
    height: 57.79px;
    background: url("../img/lineDel.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0;
  }
  .p_top .improvement__slider article .arInner .acquisition > dl dd::after {
    position: absolute;
    content: "";
    width: 20px;
    height: 33px;
    background: url("../img/icTriangle02.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    right: 0;
    top: 12.5px;
  }
  .p_top .improvement__slider article .arInner .acquisition > dl dd span {
    font-size: 65px;
    font-weight: 400;
    line-height: 79px;
    display: inline-block;
  }
  .p_top .improvement__slider article .arInner .acquisition > dl dd small {
    font-size: 25px;
    line-height: 60px;
    font-weight: 700;
    color: #1A1A1A;
  }
  .p_top .improvement__slider article .arInner .acquisition .reduce {
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .p_top .improvement__slider article .arInner .acquisition .reduce span {
    font-size: 110px;
    line-height: 0.8;
    display: inline-block;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    color: #FF3463;
  }
  .p_top .improvement__slider article .arInner .acquisition .reduce span::before {
    position: absolute;
    content: "%";
    font-size: 56px;
    line-height: 0.8;
    font-weight: 400;
    color: #FF3463;
    right: -33px;
    top: 5px;
    font-family: 'Bebas Neue',sans-serif;
  }
  .p_top .improvement__slider article .arInner .acquisition .reduce span::after {
    position: absolute;
    content: attr(data-bottom);
    font-size: 30px;
    line-height: 44px;
    font-family: 'Noto Sans',sans-serif;
    font-weight: 700;
    color: #FF3463;
    right: -60px;
    top: 43px;
  }
  .p_top .improvement__next, .p_top .improvement__prev {
    position: absolute;
    width: 17px;
    height: 65px;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 19;
  }
  .p_top .improvement__next {
    background: url("../img/ctrlRight.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    right: 2px;
  }
  .p_top .improvement__prev {
    background: url("../img/ctrlLeft.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    left: 2px;
  }
  .p_top .compare {
    padding: 34.5px 0 41px;
  }
  .p_top .compare .title {
    text-align: center;
  }
  .p_top .compare .title p {
    font-size: 18px;
    line-height: 26px;
    font-weight: 700;
    color: #1A1A1A;
  }
  .p_top .compare .title h2 {
    font-size: 46px;
    line-height: 70px;
    font-weight: 700;
    color: #FF3463;
    margin-top: -10px;
  }
  .p_top .compare .title h2 small {
    font-size: 38px;
  }
  .p_top .compare .wrapTable {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    max-width: 830px;
    width: 100%;
    margin: 30px auto 0;
  }
  .p_top .compare .wrapTable .cols .cell {
    font-weight: 700;
    color: #1A1A1A;
    letter-spacing: 0.1em;
    text-align: center;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p_top .compare .wrapTable .cols .cell .inner {
    padding: 17px 0 21px;
  }
  .p_top .compare .wrapTable .cols .cell em {
    font-size: 14px;
    line-height: 20px;
    font-style: normal;
    font-weight: 700;
  }
  .p_top .compare .wrapTable .cols .cell p {
    font-size: 14px;
    line-height: 16px;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .p_top .compare .wrapTable .cols .cell p small {
    font-size: 10px;
    line-height: 14px;
  }
  .p_top .compare .wrapTable .cols .cell ul li {
    font-size: 14px;
    line-height: 20px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    padding: 0 0 0 12px;
    text-align: left;
    letter-spacing: 0.1em;
  }
  .p_top .compare .wrapTable .cols .cell ul li + li {
    margin-top: 6px;
  }
  .p_top .compare .wrapTable .cols .cell ul li::before {
    position: absolute;
    content: "・";
    font-size: 10px;
    line-height: 12px;
    font-weight: 700;
    color: #1A1A1A;
    letter-spacing: 0.1em;
    top: 0;
    left: 0;
  }
  .p_top .compare .wrapTable .cols .cell.deadline, .p_top .compare .wrapTable .cols .cell.support {
    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;
    -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 .compare .wrapTable .cols .cell.cost {
    height: var(--cost-height);
  }
  .p_top .compare .wrapTable .cols .cell.deadline {
    height: var(--deadline-height);
  }
  .p_top .compare .wrapTable .cols .cell.support {
    height: var(--support-height);
  }
  .p_top .compare .wrapTable .cols .cell.strengths {
    height: var(--strengths-height);
  }
  .p_top .compare .wrapTable .cols.label {
    width: 115px;
    margin-right: 2px;
  }
  .p_top .compare .wrapTable .cols.label .cell {
    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;
    width: 100%;
    color: #fff;
    background: #033D3E;
    -moz-border-radius: 5px;
         border-radius: 5px;
    font-size: 20px;
    line-height: 29px;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .p_top .compare .wrapTable .cols.label .cell small {
    font-size: 20px;
  }
  .p_top .compare .wrapTable .cols.label .cell + .cell {
    margin-top: 1px;
  }
  .p_top .compare .wrapTable .cols.cover {
    width: 293px;
    margin-right: 2px;
    background: #FFF5ED;
    -moz-border-radius: 5px;
         border-radius: 5px;
    border: 3px solid #FF7600;
    color: #1A1A1A;
  }
  .p_top .compare .wrapTable .cols.cover .cell.head {
    background: #FF7600;
    line-height: 0;
    padding: 13px 0 12px;
  }
  .p_top .compare .wrapTable .cols.cover .cell.head img {
    width: 162px;
  }
  .p_top .compare .wrapTable .cols.cover .cell.cost em {
        font-size: 41px;
        line-height: 39px;
    font-style: normal;
    color: #1A1A1A;
  }
  .p_top .compare .wrapTable .cols.cover .cell.cost small {
    font-size: 13px;
    line-height: 19px;
    font-weight: 700;
    letter-spacing: 0.1em;
  }
  .p_top .compare .wrapTable .cols.cover .cell.cost p {
    display: block;
    font-size: 10px;
    line-height: 14px;
  }
  .p_top .compare .wrapTable .cols.cover .cell:not(:last-child)::after {
    position: absolute;
    content: "";
    height: 1px;
    width: 86.45833%;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    background: rgba(255, 118, 2, 0.22);
  }
  .p_top .compare .wrapTable .cols.cover .cell.strengths ul, .p_top .compare .wrapTable .cols.cover .cell.support ul {
    padding: 0 10px;
  }
  .p_top .compare .wrapTable .cols.cover .cell.support .fullInner {
    width: 100%;
  }
  .p_top .compare .wrapTable .cols.normal {
    width: 208px;
    margin-right: 2px;
    border: 2px solid #989898;
    background: #fff;
    -moz-border-radius: 5px;
         border-radius: 5px;
  }
  .p_top .compare .wrapTable .cols.normal:last-child {
    margin-right: 0;
  }
  .p_top .compare .wrapTable .cols.normal .cell.head {
    background: #989898;
    line-height: 0;
    padding: 12px 0 11px;
    text-align: center;
    font-size: 12px;
    line-height: 16px;
    font-size: 700;
    color: #fff;
  }
  .p_top .compare .wrapTable .cols.normal .cell.cost {
    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;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p_top .compare .wrapTable .cols.normal .cell.cost em {
    font-style: normal;
    font-size: 32px;
    line-height: 25px;
    font-weight: 400;
    color: #1A1A1A;
  }
  .p_top .compare .wrapTable .cols.normal .cell.cost small {
    font-size: 10px;
    line-height: 15px;
  }
  .p_top .compare .wrapTable .cols.normal .cell.strengths ul, .p_top .compare .wrapTable .cols.normal .cell.support ul {
    padding: 0 5px;
  }
  .p_top .compare .wrapTable .cols.normal .cell:not(:last-child)::after {
    position: absolute;
    content: "";
    height: 1px;
    width: 86.45833%;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.22);
  }
  .p_top .compare .note {
    margin-top: 18px;
    font-size: 16px;
    line-height: 26px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    padding: 0 0 0 21px;
    color: #1A1A1A;
    font-weight: 500;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    max-width: 830px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .p_top .compare .note::before {
    position: absolute;
    content: "※";
    font-size: 16px;
    line-height: 26px;
    top: 0;
    left: 0;
  }
  .p_top .effective {
    background: #0BB5B9 url("../img/bgCost.png") 0 0 repeat;
    -moz-background-size: contain;
         background-size: contain;
    padding-top: 67.8px;
    padding-bottom: 26px;
    max-width: 100%;
  }
  .p_top .effective__main {
    background: #fff;
    padding: 0px 59px 23px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    max-width: 830px;
    width: 100%;
    margin: auto;
  }
  .p_top .effective__main::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 73px;
    background: url("../img/bgCurve_pc.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    top: -46px;
    left: 0;
    z-index: -1;
  }
  .p_top .effective__main h2 {
    text-align: center;
  }
  .p_top .effective__main h2 span {
    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;
    border: 1px solid #0BB5B9;
    font-size: 31px;
    line-height: 45px;
    font-weight: 700;
    padding: 0 6px;
    color: #0BB5B9;
    margin-right: 5px;
  }
  .p_top .effective__main h2 em {
    font-style: normal;
    font-size: 28px;
    line-height: 40px;
    font-weight: 700;
    color: #1A1A1A;
  }
  .p_top .effective__main h3 {
    text-align: center;
    font-size: 28px;
    line-height: 40px;
    font-weight: 700;
    color: #1A1A1A;
    margin-top: 6px;
  }
  .p_top .effective__main .note {
    text-align: center;
    font-size: 16px;
    line-height: 27px;
    font-weight: 700;
    color: #1A1A1A;
    margin-top: 17px;
  }
  .p_top .effective__main .note span {
    background: -webkit-repeating-linear-gradient(top, white 0%, white 75%, #ffe200 75%, #ffe200 95%);
    background: -moz- oldrepeating-linear-gradient(top, white 0%, white 75%, #ffe200 75%, #ffe200 95%);
    background: repeating-linear-gradient(180deg, white 0%, white 75%, #ffe200 75%, #ffe200 95%);
  }
  .p_top .effective__main .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;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin: -5.5px;
    margin-top: 9.5px;
  }
  .p_top .effective__main .btn a {
    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;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    height: 91px;
    padding: 0 0 0 74px;
    width: 350px;
    margin: 5.5px;
    -moz-border-radius: 5px;
         border-radius: 5px;
  }
  .p_top .effective__main .btn a small {
    color: #fff;
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
  }
  .p_top .effective__main .btn a span {
    font-size: 25px;
    line-height: 36px;
    font-weight: 700;
    color: #fff;
  }
  .p_top .effective__main .btn a::after {
    position: absolute;
    content: "";
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: -1;
  }
  .p_top .effective__main .btn a.mail {
    background: #FF7602 url("../img/bgMailBig.png") left bottom no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    border: 2px solid #EF9D81;
  }
  .p_top .effective__main .btn a.mail::after {
    width: 48px;
    height: 34.02px;
    background: url("../img/icMail.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    left: 12px;
  }
  .p_top .effective__main .btn a.line {
    background: #3BB171 url("../img/bgLineBig.png") left bottom no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    border: 2px solid #7BC39C;
  }
  .p_top .effective__main .btn a.line::after {
    width: 46.59px;
    height: 44.4px;
    background: url("../img/icLine.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    left: 22px;
  }
  .p_top .feel {
    padding: 41px 0 0;
  }
  .p_top .feel .title {
    text-align: center;
  }
  .p_top .feel .title p {
    font-size: 22px;
    line-height: 33px;
    font-weight: 700;
    color: #0A8083;
  }
  .p_top .feel .title h2 {
    font-size: 46px;
    line-height: 47px;
    font-weight: 700;
    color: #FF3463;
  }
  .p_top .feel__main {
    background: #F4F4F4;
    padding-top: 43px;
    padding-bottom: 25px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    margin-top: 15px;
    max-width: 100%;
  }
  .p_top .feel__main--list {
    max-width: 784px;
    width: 100%;
    margin: auto;
  }
  .p_top .feel__main--list ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    margin: -5px -8px;
  }
  .p_top .feel__main--list ul li {
    width: 384px;
    margin: 5px 8px;
    border: 2px solid #088083;
    padding: 13px 17px 12px 50px;
    background: #fff;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p_top .feel__main--list ul li::before {
    position: absolute;
    content: "";
    width: 25.16px;
    height: 19.98px;
    background: url("../img/icCheck01.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    left: 16px;
    top: 15.5px;
  }
  .p_top .feel__main--list ul li span {
    background: -webkit-repeating-linear-gradient(top, white 0%, white 50%, #ffe200 50%, #ffe200 100%);
    background: -moz- oldrepeating-linear-gradient(top, white 0%, white 50%, #ffe200 50%, #ffe200 100%);
    background: repeating-linear-gradient(180deg, white 0%, white 50%, #ffe200 50%, #ffe200 100%);
  }
  .p_top .feel__main::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 351px;
    background: url("../img/triangleFeel_pc.png") bottom center no-repeat;
    -moz-background-size: cover;
         background-size: cover;
    -webkit-filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.16));
            filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.16));
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    bottom: -24px;
    z-index: -1;
  }
  .p_top .successful {
    padding-top: 42px;
    padding-bottom: 65px;
    background: #03C1D0;
    max-width: 100%;
  }
  .p_top .successful__main {
    max-width: 1000px;
    width: 100%;
    margin: auto;
  }
  .p_top .successful__main h2 {
    text-align: center;
    font-size: 46px;
    line-height: 66px;
    font-weight: 700;
    color: #fff;
  }
  .p_top .successful__main h3 {
    font-size: 31px;
    line-height: 45px;
    font-weight: 700;
    color: #fff;
    text-align: center;
  }
  .p_top .successful__main .wrapAr {
    margin: -8.5px -15px;
    margin-top: 13.5px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p_top .successful__main .wrapAr article {
    -moz-border-radius: 10px;
         border-radius: 10px;
    background: #fff;
    padding: 0 0 23px;
    width: 485px;
    margin: 8.5px 15px;
  }
  .p_top .successful__main .wrapAr article h4 {
    text-align: center;
    font-size: 20px;
    line-height: 34px;
    font-weight: 700;
    padding: 16px 10px 17px;
    -moz-border-radius: 10px 10px 0 0;
         border-radius: 10px 10px 0 0;
    background: #088083;
    color: #fff;
  }
  .p_top .successful__main .wrapAr article figure, .p_top .successful__main .wrapAr article picture {
    text-align: center;
  }
  .p_top .successful__main .wrapAr article figure.cus01, .p_top .successful__main .wrapAr article picture.cus01 {
    margin: 30px 0 29px;
  }
  .p_top .successful__main .wrapAr article figure.cus01 img, .p_top .successful__main .wrapAr article picture.cus01 img {
    width: 229px;
    height: auto;
  }
  .p_top .successful__main .wrapAr article figure.cus02, .p_top .successful__main .wrapAr article picture.cus02 {
    margin: 15px 0 0px;
  }
  .p_top .successful__main .wrapAr article figure.cus02 img, .p_top .successful__main .wrapAr article picture.cus02 img {
    width: 296px;
    height: auto;
  }
  .p_top .successful__main .wrapAr article figure.cus03, .p_top .successful__main .wrapAr article picture.cus03 {
    margin: 20px 0 21px;
  }
  .p_top .successful__main .wrapAr article figure.cus03 img, .p_top .successful__main .wrapAr article picture.cus03 img {
    width: 331px;
    height: auto;
  }
  .p_top .successful__main .wrapAr article .txt {
    font-size: 16px;
    line-height: 28px;
    font-weight: 400;
    color: #151515;
    padding: 0 29px;
  }
  .p_top .successful__main .wrapAr article .txt span {
    color: #FF3463;
    font-weight: 700;
  }
  .p_top .successful__main .wrapAr article .txt em {
    background: #FFFF00;
    font-style: normal;
  }
  .p_top .successful__main .wrapAr article .note {
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    padding: 0 29px 0 44px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    margin-top: 9px;
  }
  .p_top .successful__main .wrapAr article .note::before {
    position: absolute;
    content: "※";
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    left: 29px;
    top: 0px;
  }
  .p_top .successful__main .diagram {
    margin-top: 46px;
    text-align: center;
  }
  .p_top .successful__main .diagram img {
    width: 593px;
    height: auto;
  }
  .p_top .successful__main .diagram .txt {
    margin-top: 14.7px;
    font-size: 42px;
    line-height: 68px;
    color: #fff;
    font-weight: 700;
  }
  .p_top .production {
    padding: 32.5px 15px 43px;
    background: url("../img/bgLP.jpg") 0 0 repeat;
    max-width: 100%;
  }
  .p_top .production h2 {
    text-align: center;
    font-size: 28px;
    line-height: 40px;
    font-weight: 700;
    color: #1A1A1A;
  }
  .p_top .production .list {
    max-width: 611.99px;
    margin: 21px auto 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
  .p_top .production .list li {
    background: #fff;
    -moz-border-radius: 10px;
         border-radius: 10px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    padding: 12.6px 60.5px 13.6px 69.13px;
    font-size: 18px;
    line-height: 24px;
    font-weight: 700;
    width: 294.79px;
    margin: 10.2px 5.6px;
  }
  .p_top .production .list li::before, .p_top .production .list li::after {
    position: absolute;
    content: "";
  }
  .p_top .production .list li::before {
    width: 50.53px;
    height: 100%;
    top: 0;
    left: 0;
    background: #3BB171 url("../img/icCheck02.png") center no-repeat;
    -moz-background-size: 24.01px 25.43px;
         background-size: 24.01px 25.43px;
    -moz-border-radius: 10px 0 0 10px;
         border-radius: 10px 0 0 10px;
  }
  .p_top .production .list li.ic1::after {
    width: 47.18px;
    height: 38.82px;
    background: url("../img/icLP01.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    right: 15.6px;
    top: -6.8px;
  }
  .p_top .production .list li.ic2::after {
    width: 47.18px;
    height: 37.26px;
    background: url("../img/icLP02.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    right: 15.6px;
    top: -5.2px;
  }
  .p_top .production .list li.ic3::after {
    width: 36.74px;
    height: 36.62px;
    background: url("../img/icLP03.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    right: 10.9px;
    top: -5.7px;
  }
  .p_top .production .list li.ic4::after {
    width: 40.71px;
    height: 47.44px;
    background: url("../img/icLP04.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    right: 18.6px;
    top: -7.8px;
  }
  .p_top .faq {
    padding-top: 41.5px;
    max-width: 830px;
  }
  .p_top .faq h2 {
    text-align: center;
    font-size: 28px;
    line-height: 40px;
    font-weight: 700;
    color: #1A1A1A;
  }
  .p_top .faq .list {
    margin-top: 15px;
  }
  .p_top .faq .list dl + dl {
    margin-top: 14px;
  }
  .p_top .faq .list dl dt {
    background: #03C1D0;
    color: #fff;
    font-size: 18px;
    line-height: 26px;
    font-weight: 700;
    padding: 17.6px 52px 17.4px 55px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p_top .faq .list dl dt::before {
    position: absolute;
    content: "";
    width: 24.27px;
    height: 27.79px;
    background: url("../img/Q.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    left: 20.2px;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .p_top .faq .list dl dt::after {
    position: absolute;
    content: "";
    width: 25px;
    height: 25px;
    background: url("../img/icPlus.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 11.5px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    transition: all 0.5s ease;
  }
  .p_top .faq .list dl dd {
    display: none;
  }
  .p_top .faq .list dl dd .txt {
    background: #F7F7F7;
    padding: 17px 52px 26px 55px;
    font-size: 16px;
    line-height: 28px;
    font-weight: 400;
    color: #151515;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p_top .faq .list dl dd .txt::before {
    position: absolute;
    content: "";
    width: 26px;
    height: 35px;
    background: url("../img/A.png") 0 0 no-repeat;
    -moz-background-size: contain;
         background-size: contain;
    left: 19.2px;
    top: 18px;
  }
  .p_top .faq .list dl.open dt::after {
    -webkit-transform: translateY(-50%) rotate(45deg);
       -moz-transform: translateY(-50%) rotate(45deg);
        -ms-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
  }
  .p_top .thought {
    margin-top: 43.2px;
    max-width: 830px;
  }
  .p_top .thought__main {
    background: #464C58;
    -moz-border-radius: 15px;
         border-radius: 15px;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    -moz-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.39);
         box-shadow: 0 3px 10px rgba(0, 0, 0, 0.39);
    padding: 34.7px 23.5px 24.1px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
  .p_top .thought__main::before, .p_top .thought__main::after {
    position: absolute;
    content: "";
    width: 13.52px;
    height: 13.52px;
    -moz-border-radius: 50%;
         border-radius: 50%;
    -moz-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.46);
         box-shadow: 0 3px 6px rgba(0, 0, 0, 0.46);
    top: 16px;
    background: -webkit-gradient(linear, left top, left bottom, from(#efdf21), to(#fd980d));
    background: -webkit-linear-gradient(top, #efdf21 0%, #fd980d 100%);
    background: -moz- oldlinear-gradient(top, #efdf21 0%, #fd980d 100%);
    background: linear-gradient(180deg, #efdf21 0%, #fd980d 100%);
  }
  .p_top .thought__main::before {
    left: 15px;
  }
  .p_top .thought__main::after {
    right: 15px;
  }
  .p_top .thought__main h2 {
    text-align: center;
    font-size: 32px;
    line-height: 46px;
    font-weight: 700;
    color: #fff;
    width: 100%;
  }
  .p_top .thought__main h3 {
    font-size: 18px;
    line-height: 28px;
    margin-top: 21px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    width: 100%;
  }
  .p_top .thought__main .txt {
    font-size: 16px;
    line-height: 26px;
    margin-top: 25px;
    color: #fff;
    width: 410px;
    margin-right: 21px;
  }
  .p_top .thought__main .txt b {
    font-weight: 700;
  }
  .p_top .thought__main .txt span {
    color: #FFD800;
  }
  .p_top .thought__main figure, .p_top .thought__main picture {
    margin-top: 25px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    overflow: hidden;
    width: 336px;
  }
  .p_top .thought__main figure img, .p_top .thought__main picture img {
    width: 100%;
    height: auto;
  }
  .p_top .contact {
    margin-top: 55.8px;
    background: #03C1D0;
    padding-top: 44px;
    padding-bottom: 38px;
    max-width: 100%;
  }
  .p_top .contact h2 {
    text-align: center;
    color: #fff;
    font-size: 28px;
    line-height: 40px;
    font-weight: 700;
  }
  .p_top .contact__form {
    background: #fff;
    padding: 33px 48px 29px;
    -moz-border-radius: 10px;
         border-radius: 10px;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    max-width: 830px;
    margin: auto;
    margin-top: 31px;
  }
  .p_top .contact__form .intro {
    text-align: center;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    letter-spacing: 0.05em;
    color: #2F2F2F;
    margin-bottom: 36px;
  }
  .p_top .contact__form 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;
  }
  .p_top .contact__form dl + dl {
    margin-top: 19px;
  }
  .p_top .contact__form dl.aifs {
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .p_top .contact__form dl dt {
    font-size: 16px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #000000;
    width: 187px;
    margin-right: 37px;
  }
  .p_top .contact__form dl dt.required {
    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;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_top .contact__form dl dt.required::after {
    content: "必須";
    width: 51px;
    height: 23px;
    color: #fff;
    background: #C60404;
    -moz-border-radius: 5px;
         border-radius: 5px;
    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;
    font-size: 12px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.07em;
  }
  .p_top .contact__form dl dd {
    font-size: 14px;
    line-height: 18px;
    font-weight: 500;
    letter-spacing: 0.05em;
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  .p_top .contact__form dl dd p {
    margin-bottom: 11px;
  }
  .p_top .contact__form dl dd input, .p_top .contact__form dl dd textarea {
    width: 100%;
    background: #F0F0F0;
    -moz-border-radius: 5px;
         border-radius: 5px;
    font-size: 1.6rem;
    line-height: 1;
    height: 45px;
    padding: 5px 15px;
    outline: none;
    border: 0;
    -moz-box-shadow: none;
         box-shadow: none;
    color: #000;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  }
  .p_top .contact__form dl dd input::-webkit-input-placeholder, .p_top .contact__form dl dd textarea::-webkit-input-placeholder {
    opacity: 1;
    color: #B2B2B2;
  }
  .p_top .contact__form dl dd input::-moz-placeholder, .p_top .contact__form dl dd textarea::-moz-placeholder {
    opacity: 1;
    color: #B2B2B2;
  }
  .p_top .contact__form dl dd input:-ms-input-placeholder, .p_top .contact__form dl dd textarea:-ms-input-placeholder {
    opacity: 1;
    color: #B2B2B2;
  }
  .p_top .contact__form dl dd input::placeholder, .p_top .contact__form dl dd textarea::placeholder {
    opacity: 1;
    color: #B2B2B2;
  }
  .p_top .contact__form dl dd textarea {
    height: 319px;
  }
  .p_top .contact__form .terms {
    margin-top: 18px;
    width: 100%;
    height: 137px;
    border: 1px solid #F2F2F2;
    background: #fff;
    -moz-border-radius: 5px;
         border-radius: 5px;
    padding: 19px;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0.05em;
    font-weight: 500;
    overflow: auto;
  }
  .p_top .contact__form .checkPrivacy {
    margin-top: 22px;
    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;
  }
  .p_top .contact__form .checkPrivacy label input {
    position: absolute;
    width: 0;
    height: 0;
    opacity: 0;
  }
  .p_top .contact__form .checkPrivacy label input:checked + span::before {
    content: "\2713";
  }
  .p_top .contact__form .checkPrivacy label span {
    font-size: 16px;
    line-height: 18px;
    font-weight: 500;
    color: #2F2F2F;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    padding: 0 0 0 28px;
    display: inline-block;
  }
  .p_top .contact__form .checkPrivacy label span::before {
    position: absolute;
    content: "";
    width: 21px;
    height: 21px;
    background: #F0F0F0;
    -moz-border-radius: 3px;
         border-radius: 3px;
    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;
    font-size: 21px;
    font-weight: 500;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .p_top .contact__form button {
    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;
    border: 0;
    outline: none;
    width: 326px;
    height: 70px;
    -moz-border-radius: 60px;
         border-radius: 60px;
    color: #fff;
    background: #292929;
    -moz-box-shadow: none;
         box-shadow: none;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;
    cursor: pointer;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    margin: 26px auto 0;
  }
  .p_top .contact__form button::after {
    position: absolute;
    content: ">";
    font-size: 18px;
    line-height: 1;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 20px;
  }
  .p_top .thanks {
    padding-top: 26px;
    padding-bottom: 100px;
  }
  .p_top .thanks h2 {
    text-align: center;
  }
  .p_top .thanks h2 span {
    display: inline-block;
    font-size: 31px;
    line-height: 45px;
    font-weight: 700;
    color: #0BB5B9;
    border: 1px solid #0BB5B9;
    padding: 0 6px;
  }
  .p_top .thanks .txt {
    font-size: 16px;
    line-height: 27px;
    font-weight: 700;
    margin-top: 36px;
    text-align: center;
  }
  .p_top .thanks .txt p {
    color: #1A1A1A;
  }
  .p_top .thanks .txt p + p {
    margin-top: 27px;
  }
  .p_top .thanks .txt p.red {
    color: #FF3463;
  }
  .p_top .thanks .btn {
    margin-top: 50px;
    text-align: center;
  }
  .p_top .thanks .btn a {
    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: 326px;
    height: 70px;
    background: #292929;
    color: #fff;
    font-size: 18px;
    line-height: 24px;
    font-weight: 700;
    letter-spacing: 0.07em;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    position: relative;
    -webkit-transform: translateZ(0);
       -moz-transform: translateZ(0);
            transform: translateZ(0);
    -moz-border-radius: 70px;
         border-radius: 70px;
  }
  .p_top .thanks .btn a::after {
    position: absolute;
    content: ">";
    font-size: 18px;
    line-height: 24px;
    font-weight: 700;
    letter-spacing: 0.07em;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 20px;
  }
  .footer {
    text-align: center;
    padding: 25px 0 143px;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  }
  .footer__link {
    text-align: center;
    font-size: 16px;
    line-height: 18px;
    letter-spacing: 0.05;
    color: #000000;
  }
  .footer__copy {
    text-align: center;
    font-size: 14px;
    line-height: 18px;
    font-weight: 500;
    color: #000000;
    margin-top: 51px;
  }
}

@media screen and (max-width: 768px) {
  .p_top .elite__partner {
    margin-bottom: 7.48792vw;
  }
  .p_top .elite__partner ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
       -moz-box-orient: horizontal;
       -moz-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p_top .elite__partner ul li {
    line-height: 0;
    -moz-box-shadow: 0 0.72464vw 1.44928vw rgba(0, 0, 0, 0.16);
         box-shadow: 0 0.72464vw 1.44928vw rgba(0, 0, 0, 0.16);
  }
  .p_top .elite__partner ul li a {
    display: block;
    line-height: 0;
  }
  .p_top .elite__partner ul li a img {
    width: 100%;
    height: auto;
  }
  .p_top .elite__partner ul li.partner01 {
    width: 33.57488vw;
  }
  .p_top .elite__partner ul li.partner02 {
    width: 58.21256vw;
  }
  .p_top .elite__partner p {
    color: #0A8083;
    font-size: 3.38164vw;
    line-height: 5.07246vw;
    font-weight: 700;
    margin-top: 1.20773vw;
  }
}
