@charset "UTF-8";
/*$xl: 1200px; // extra large
$lg: 1024px; // large
$l: 860px;
$sm: 576px; // small */
.p-top {
  overflow-x: hidden; }
  .p-top .slick-track {
    display: flex !important; }
  .p-top .slick-slide {
    height: auto !important; }
  .p-top .slick-slide a {
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column; }
    .p-top .slick-slide a .c-list-fill-btm {
      margin-top: auto; }
  .p-top-notice {
    width: 900px;
    margin: 40px auto 0;
    border: 2px solid #acacac;
    padding: 16px;
    border-radius: 20px;
    position: relative;
    background: #fafafa; }
    .p-top-notice-txt {
      position: relative;
      border-bottom: 1px solid #333333;
      padding-bottom: 7px;
      margin-bottom: 10px; }
      .p-top-notice-txt:last-child {
        border-bottom: none;
        margin-bottom: 0;
        padding-bottom: 0; }
      .p-top-notice-txt a {
        display: block; }
        .p-top-notice-txt a::before {
          content: "!";
          font-size: 20px;
          font-weight: 700;
          width: 30px;
          height: 30px;
          line-height: 30px;
          display: inline-block;
          vertical-align: middle;
          background: #acacac;
          color: #fff;
          text-align: center;
          border-radius: 50%;
          margin-right: 16px;
          margin-bottom: .2em; }
        .p-top-notice-txt a::after {
          display: inline-block;
          content: "\e915";
          font-family: 'icomoon';
          font-size: 12px;
          font-weight: 400;
          margin-right: 0.5em;
          position: absolute;
          right: 0;
          top: 50%;
          transform: translateY(-50%); }

.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999; }
  .modal .modal__bg {
    background: rgba(0, 0, 0, 0.8);
    height: 100vh;
    position: relative;
    width: 100%; }
  .modal .modal__content {
    left: 50%;
    padding: 40px;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%); }
  .modal .js-modal-close {
    position: relative;
    font-weight: normal;
    font-size: 13px; }
    .modal .js-modal-close span {
      position: absolute;
      top: -270px;
      left: 480px;
      color: #fff; }
  .modal .btnbox {
    margin: auto;
    display: flex;
    justify-content: space-around;
    position: relative; }
    .modal .btnbox span {
      font-size: 80%; }
  .modal .btn1 {
    margin-right: 30px;
    color: #fff;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2 !important;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.25);
    transition: all .2s;
    position: relative; }
    .modal .btn1 ::before {
      content: "";
      background: url(../../img/top/icon_gas.png) no-repeat center top/100%;
      width: 27%;
      height: 100%;
      position: absolute;
      top: -42px;
      left: 89px; }
    .modal .btn1 ::after {
      position: absolute;
      left: 104px;
      top: 127px;
      transform: translateY(-50%);
      content: "\e914";
      font-size: 22px;
      font-weight: 400;
      font-family: 'icomoon';
      color: #fff;
      transition: color .3s; }
    .modal .btn1 a {
      width: 230px;
      height: 100px;
      padding-top: 50px;
      color: #fff;
      display: block;
      background: #22D85F;
      border: 3px #fff solid;
      border-radius: 28px; }
      .modal .btn1 a:hover {
        background: #fff;
        color: #22D85F;
        border: 3px #22D85F solid;
        border-radius: 28px; }
        .modal .btn1 a:hover::after {
          position: absolute;
          left: 104px;
          top: 127px;
          transform: translateY(-50%);
          content: "\e914";
          font-size: 22px;
          font-weight: 400;
          font-family: 'icomoon';
          color: #22D85F;
          transition: color .3s; }
  .modal .btn2 {
    color: #fff;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2 !important;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.25);
    transition: all .2s;
    position: relative; }
    .modal .btn2 ::before {
      content: "";
      background: url(../../img/top/icon_ecocute.png) no-repeat center top/100%;
      width: 52%;
      height: 100%;
      position: absolute;
      top: -63px;
      left: 51px; }
    .modal .btn2 ::after {
      position: absolute;
      right: 103px;
      top: 127px;
      transform: translateY(-50%);
      content: "\e914";
      font-size: 22px;
      font-weight: 400;
      font-family: 'icomoon';
      color: #fff;
      transition: color .3s; }
    .modal .btn2 a {
      width: 230px;
      height: 100px;
      padding-top: 50px;
      color: #fff;
      display: block;
      background: #39C3FF;
      border: 3px #fff solid;
      border-radius: 28px; }
      .modal .btn2 a:hover {
        background: #fff;
        color: #39C3FF;
        border: 3px #39C3FF solid;
        border-radius: 28px; }
        .modal .btn2 a:hover::after {
          position: absolute;
          right: 103px;
          top: 127px;
          transform: translateY(-50%);
          content: "\e914";
          font-size: 22px;
          font-weight: 400;
          font-family: 'icomoon';
          color: #39C3FF;
          transition: color .3s; }

.p-mv {
  position: relative;
  height: 1070px; }
  .p-mv::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 950px;
    background: url("../../img/top/mv_dot.svg") no-repeat top -100px center, url("../../img/top/bg_ptn_dot_w.png") repeat top center, linear-gradient(145deg, #fdec73, #fec52e) center top; }
  .p-mv-inr {
    position: relative;
    width: 1300px;
    height: 100%;
    margin: auto;
    background-image: url(../../img/top/mv_pc.png);
    background-repeat: no-repeat;
    background-size: 95%;
    background-position: bottom 130px left -73%; }
  .p-mv-ttl {
    padding-top: 110px;
    text-align: center;
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 25px;
    line-height: 3;
    letter-spacing: 0.35em; }
  .p-mv-logo {
    margin: 0 auto 30px;
    text-align: center; }
    .p-mv-logo img {
      width: 38%; }
  .p-mv h2 {
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    margin: auto;
    line-height: 1.8 !important;
    letter-spacing: .2em; }
    .p-mv h2 span.line {
      width: 380px;
      height: 46px;
      margin: auto;
      display: inline-block;
      background-image: linear-gradient(to right, #000 2px, transparent 2px);
      background-size: 5px 2px;
      background-repeat: repeat-x;
      background-position: left bottom; }
    .p-mv h2 span.txt {
      color: #E60012; }
  .p-mv-btnbox {
    width: 490px;
    margin: 80px auto 0;
    display: flex;
    position: relative; }
    .p-mv-btnbox span {
      font-size: 80%; }
  .p-mv-btn1 {
    margin-right: 30px;
    color: #fff;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2 !important;
    position: relative;
    transition: all .2s; }
    .p-mv-btn1 ::before {
      content: "";
      background: url(../../img/top/icon_gas.png) no-repeat center top/100%;
      width: 25%;
      height: 60%;
      position: absolute;
      top: -39px;
      left: 88px; }
    .p-mv-btn1 ::after {
      position: absolute;
      left: 106px;
      top: 127px;
      transform: translateY(-50%);
      content: "\e914";
      font-size: 22px;
      font-weight: 400;
      font-family: 'icomoon';
      color: #fff;
      transition: color .3s; }
    .p-mv-btn1 a {
      width: 230px;
      height: 160px;
      background: #22D85F;
      border: 3px #fff solid;
      border-radius: 28px;
      color: #fff;
      padding-top: 52px;
      display: block;
      box-shadow: 0px 6px 0px 0px rgba(100, 170, 100, 0.4); }
      .p-mv-btn1 a:hover {
        color: #22D85F;
        background: #fff;
        border: 3px #22D85F solid; }
        .p-mv-btn1 a:hover::after {
          position: absolute;
          left: 106px;
          top: 127px;
          transform: translateY(-50%);
          content: "\e914";
          font-size: 22px;
          font-weight: 400;
          font-family: 'icomoon';
          color: #22D85F;
          transition: color .3s; }
  .p-mv-btn2 {
    margin-right: 30px;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2 !important;
    position: relative;
    transition: all .2s; }
    .p-mv-btn2 ::before {
      content: "";
      background: url(../../img/top/icon_ecocute.png) no-repeat center top/100%;
      width: 48%;
      height: 100%;
      position: absolute;
      top: -56px;
      left: 56px; }
    .p-mv-btn2 ::after {
      position: absolute;
      right: 101px;
      top: 127px;
      transform: translateY(-50%);
      content: "\e914";
      font-size: 22px;
      font-weight: 400;
      font-family: 'icomoon';
      color: #fff;
      transition: color .3s; }
    .p-mv-btn2 a {
      width: 230px;
      height: 160px;
      background: #39C3FF;
      border: 3px #fff solid;
      border-radius: 28px;
      color: #fff;
      padding-top: 52px;
      display: block;
      box-shadow: 0px 6px 0px 0px rgba(0, 130, 180, 0.3); }
      .p-mv-btn2 a:hover {
        color: #39C3FF;
        background: #fff;
        border: 3px #39C3FF solid; }
        .p-mv-btn2 a:hover::after {
          position: absolute;
          right: 101px;
          top: 127px;
          transform: translateY(-50%);
          content: "\e914";
          font-size: 22px;
          font-weight: 400;
          font-family: 'icomoon';
          color: #39C3FF;
          transition: color .3s; }
  .p-mv-icon2 {
    position: absolute;
    left: 319px;
    top: -42px; }
    .p-mv-icon2 img {
      width: 65%; }
  .p-mv-newyear {
    width: 500px;
    height: 80px;
    margin: 40px auto 0;
    background: url("../../img/common/newyear_top.png") no-repeat center top;
    text-align: center; }
    .p-mv-newyear p {
      font-weight: 700;
      font-size: 22px;
      color: #a87d09;
      line-height: 24px;
      padding-top: 10px; }
      .p-mv-newyear p span {
        font-size: 16px; }

.p-mv_kt {
  position: relative;
  height: 1070px; }
  .p-mv_kt::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 950px;
    background: url("../../img/top/mv_dot.svg") no-repeat top -150px center, url("../../img/top/mv_top_bg.jpg") no-repeat top -60px center/cover; }
  .p-mv_kt-inr {
    position: relative;
    width: 1300px;
    height: 100%;
    margin: auto;
    background-image: url(../../img/top/mv_pc.png);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: bottom 130px left -73%; }
  .p-mv_kt-ttl {
    padding-top: 90px;
    text-align: center;
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 25px;
    line-height: 3;
    letter-spacing: 0.35em; }
  .p-mv_kt-logo {
    margin: 0 auto 30px;
    text-align: center; }
    .p-mv_kt-logo img {
      width: 38%; }
  .p-mv_kt-ttl2 {
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    margin: auto;
    line-height: 1.8 !important;
    letter-spacing: .2em; }
    .p-mv_kt-ttl2 span.line {
      width: 380px;
      height: 46px;
      margin: auto;
      display: inline-block;
      background-image: linear-gradient(to right, #000 2px, transparent 2px);
      background-size: 5px 2px;
      background-repeat: repeat-x;
      background-position: left bottom; }
    .p-mv_kt-ttl2 span.txt {
      color: #E60012; }
  .p-mv_kt-btnbox {
    width: 490px;
    margin: 100px auto 0;
    display: flex;
    position: relative; }
    .p-mv_kt-btnbox span {
      font-size: 80%; }
  .p-mv_kt-btn1 {
    margin-right: 30px;
    color: #fff;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2 !important;
    position: relative;
    transition: all .2s; }
    .p-mv_kt-btn1 ::before {
      content: "";
      background: url(../../img/top/icon_gas.png) no-repeat center top/100%;
      width: 25%;
      height: 60%;
      position: absolute;
      top: -39px;
      left: 88px; }
    .p-mv_kt-btn1 ::after {
      position: absolute;
      left: 106px;
      top: 127px;
      transform: translateY(-50%);
      content: "\e914";
      font-size: 22px;
      font-weight: 400;
      font-family: 'icomoon';
      color: #fff;
      transition: color .3s; }
    .p-mv_kt-btn1 a {
      width: 230px;
      height: 160px;
      background: #22D85F;
      border: 3px #fff solid;
      border-radius: 28px;
      color: #fff;
      padding-top: 52px;
      display: block;
      box-shadow: 0px 6px 0px 0px rgba(100, 170, 100, 0.4); }
      .p-mv_kt-btn1 a:hover {
        color: #22D85F;
        background: #fff;
        border: 3px #22D85F solid; }
        .p-mv_kt-btn1 a:hover::after {
          position: absolute;
          left: 106px;
          top: 127px;
          transform: translateY(-50%);
          content: "\e914";
          font-size: 22px;
          font-weight: 400;
          font-family: 'icomoon';
          color: #22D85F;
          transition: color .3s; }
  .p-mv_kt-btn2 {
    margin-right: 30px;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2 !important;
    position: relative;
    transition: all .2s; }
    .p-mv_kt-btn2 ::before {
      content: "";
      background: url(../../img/top/icon_ecocute.png) no-repeat center top/100%;
      width: 48%;
      height: 100%;
      position: absolute;
      top: -56px;
      left: 56px; }
    .p-mv_kt-btn2 ::after {
      position: absolute;
      right: 101px;
      top: 127px;
      transform: translateY(-50%);
      content: "\e914";
      font-size: 22px;
      font-weight: 400;
      font-family: 'icomoon';
      color: #fff;
      transition: color .3s; }
    .p-mv_kt-btn2 a {
      width: 230px;
      height: 160px;
      background: #39C3FF;
      border: 3px #fff solid;
      border-radius: 28px;
      color: #fff;
      padding-top: 52px;
      display: block;
      box-shadow: 0px 6px 0px 0px rgba(0, 130, 180, 0.3); }
      .p-mv_kt-btn2 a:hover {
        color: #39C3FF;
        background: #fff;
        border: 3px #39C3FF solid; }
        .p-mv_kt-btn2 a:hover::after {
          position: absolute;
          right: 101px;
          top: 127px;
          transform: translateY(-50%);
          content: "\e914";
          font-size: 22px;
          font-weight: 400;
          font-family: 'icomoon';
          color: #39C3FF;
          transition: color .3s; }
  .p-mv_kt-icon2 {
    position: absolute;
    left: 319px;
    top: -42px; }
    .p-mv_kt-icon2 img {
      width: 65%; }
  .p-mv_kt-newyear {
    width: 500px;
    height: 80px;
    margin: 40px auto 0;
    background: url("../../img/common/newyear_top.png") no-repeat center top;
    text-align: center; }
    .p-mv_kt-newyear p {
      font-weight: 700;
      font-size: 22px;
      color: #a87d09;
      line-height: 24px;
      padding-top: 10px; }
      .p-mv_kt-newyear p span {
        font-size: 16px; }

.p-news {
  position: relative;
  z-index: 99;
  min-width: 1300px; }
  .p-news::before {
    position: absolute;
    content: "";
    top: -300px;
    width: 100%;
    height: 408px;
    background: url(../../img/top/news_bg.svg) no-repeat top -80px center; }
    .p-news::before::after {
      background: #fff; }
  .p-news h3 {
    text-align: center;
    position: relative;
    top: -258px; }
  .p-news ul {
    width: 900px;
    margin: -120px auto 0;
    position: relative;
    z-index: 99; }
    .p-news ul .slick-list {
      overflow: visible !important; }
      .p-news ul .slick-list li {
        opacity: .3;
        pointer-events: none; }
        .p-news ul .slick-list li.slick-active {
          opacity: 1;
          pointer-events: auto; }
  .p-news li {
    margin: 0 10px; }
  .p-news-sns {
    background: #E6FCFE url("../../img/top/bg_ptn_stripe_b.png") repeat top center;
    height: 259px;
    margin-top: 180px;
    position: relative; }
    .p-news-sns-ttl {
      font-size: 32px;
      font-weight: 700;
      color: #231815;
      padding-top: 30px;
      text-align: center;
      text-shadow: 3px 3px #fff;
      position: relative; }
      .p-news-sns-ttl::before {
        content: "";
        position: absolute;
        width: 203px;
        height: 140px;
        margin-left: -93px;
        margin-top: -179px;
        background: url(../../img/top/news_ttl_fukidashi.svg) no-repeat center top/90%; }
      .p-news-sns-ttl::after {
        content: "";
        position: absolute;
        width: 63px;
        height: 64px;
        margin-left: 0px;
        margin-top: -18px;
        background: url(../../img/top/news_ttl_icon.webp) no-repeat; }
      .p-news-sns-ttl span.txt_b {
        font-size: 40px;
        color: #39C3FF; }
      .p-news-sns-ttl span.txt_s {
        font-size: 24px;
        color: #231815; }
  .p-news-btnbox {
    width: 900px;
    margin: 20px auto 0;
    display: flex;
    justify-content: space-between;
    position: relative; }
    .p-news-btnbox span {
      font-size: 80%; }
    .p-news-btnbox::before {
      background: url(../../img/top/sns_illust.gif) no-repeat center top/12%;
      content: "";
      position: absolute;
      left: -1%;
      bottom: 172px;
      width: 100%;
      height: 100%; }
  .p-news-btn1, .p-news-btn2 {
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2 !important; }
    .p-news-btn1 a, .p-news-btn2 a {
      width: 420px;
      height: 90px;
      border-radius: 50px;
      color: #fff;
      display: block;
      padding-top: 26px;
      transition: color .3s;
      position: relative; }
      .p-news-btn1 a::before, .p-news-btn1 a::after, .p-news-btn2 a::before, .p-news-btn2 a::after {
        position: absolute;
        font-family: 'icomoon' !important;
        font-weight: normal;
        top: 50%;
        transform: translateY(-50%); }
      .p-news-btn1 a::before, .p-news-btn2 a::before {
        width: 4%;
        left: 45px;
        color: #fff; }
      .p-news-btn1 a::after, .p-news-btn2 a::after {
        content: "\e912";
        right: 26px;
        font-size: 16px;
        color: #fff; }
      .p-news-btn1 a:hover, .p-news-btn2 a:hover {
        background: #fff; }
      .p-news-btn1 a small, .p-news-btn2 a small {
        font-size: 14px; }
      .p-news-btn1 a span, .p-news-btn2 a span {
        font-size: 80%; }
  .p-news-btn1 a {
    background: #000;
    border: 4px #000 solid; }
    .p-news-btn1 a::before {
      content: "\e922"; }
    .p-news-btn1 a:hover {
      color: #333; }
      .p-news-btn1 a:hover::before {
        color: #000; }
      .p-news-btn1 a:hover::after {
        color: #000; }
  .p-news-btn2 a {
    background: #CF2E92;
    border: 4px #CF2E92 solid; }
    .p-news-btn2 a::before {
      content: "\ea92"; }
    .p-news-btn2 a:hover {
      color: #CF2E92; }
      .p-news-btn2 a:hover::before {
        color: #CF2E92; }
      .p-news-btn2 a:hover::after {
        color: #CF2E92; }
  .p-news .slick-prev,
  .p-news .slick-next {
    width: 48px;
    height: 48px;
    background: #333; }
    .p-news .slick-prev::before,
    .p-news .slick-next::before {
      font-size: 16px !important; }
  .p-news-maint {
    width: 900px;
    position: relative;
    top: -180px;
    margin: 0 auto; }
    .p-news-maint .l-info-maint {
      margin-bottom: 0; }

.p-movie {
  width: 100%;
  background: #9EE1FF url("../../img/top/bg_ptn_dot_w.png") repeat center top;
  position: relative;
  padding: 100px 0 80px; }
  .p-movie-box {
    width: 1000px;
    margin: auto;
    display: flex; }
    .p-movie-box div:nth-child(1) {
      margin-right: 40px; }
    .p-movie-box h3 {
      font-size: 24px;
      font-weight: 700;
      text-align: center;
      padding-bottom: 20px; }
  .p-movie-mediabox {
    width: 1000px;
    margin: 50px auto 0;
    background: #ffffff;
    border-radius: 20px;
    padding: 10px 0 30px; }
  .p-movie-media {
    width: 700px;
    margin: 0 auto; }
    .p-movie-media dl {
      display: flex;
      gap: 10px;
      line-height: 1.4 !important;
      margin: 0 auto 30px; }
      .p-movie-media dl dt {
        font-size: 12px;
        border: 1px #333 solid;
        border-radius: 4px;
        line-height: 1.2;
        padding: 3px 2px;
        width: 20%;
        height: 100%;
        text-align: center; }
      .p-movie-media dl dd {
        font-size: 15px;
        width: 80%; }
        .p-movie-media dl dd a {
          transition: opacity .2s; }
          .p-movie-media dl dd a:hover {
            opacity: .6; }
    .p-movie-media-btn {
      text-align: right;
      transition: opacity .2s; }
      .p-movie-media-btn:hover {
        opacity: .6; }

.p-number {
  width: 1000px;
  margin: auto;
  position: relative;
  padding-top: 150px;
  display: flex; }
  .p-number div:nth-child(1) {
    margin-right: 50px; }
  .p-number h3 {
    font-size: 28px;
    width: 590px;
    line-height: 50px;
    margin-top: 64px;
    letter-spacing: 0.2em; }
    .p-number h3 span {
      display: block;
      border-bottom: 2px dotted #000;
      margin-top: -50px; }
  .p-number .num {
    font-size: 80px;
    font-weight: 700;
    color: #fff;
    background: #E60012;
    padding-left: 35px; }
  .p-number .txt-sm {
    position: absolute;
    right: 80px;
    top: 254px;
    color: #fff;
    font-size: 24px; }
  .p-number .p-mv-txt {
    font-size: 31px;
    font-weight: 700;
    color: #E60012; }
  .p-number .p-pr-txt {
    text-align: left;
    line-height: 1.4;
    padding-top: 10px; }

.odometer.odometer-auto-theme, .odometer.odometer-theme-default {
  display: inline-block;
  *vertical-align: auto;
  *zoom: 1;
  *display: inline;
  position: relative;
  line-height: 1.1em; }
  .odometer.odometer-auto-theme .odometer-digit, .odometer.odometer-theme-default .odometer-digit {
    display: inline-block;
    vertical-align: middle;
    *vertical-align: auto;
    *zoom: 1;
    *display: inline;
    position: relative; }
    .odometer.odometer-auto-theme .odometer-digit .odometer-digit-spacer, .odometer.odometer-theme-default .odometer-digit .odometer-digit-spacer {
      display: inline-block;
      vertical-align: middle;
      *vertical-align: auto;
      *zoom: 1;
      *display: inline;
      visibility: hidden; }
    .odometer.odometer-auto-theme .odometer-digit .odometer-digit-inner, .odometer.odometer-theme-default .odometer-digit .odometer-digit-inner {
      text-align: left;
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      overflow: hidden; }
    .odometer.odometer-auto-theme .odometer-digit .odometer-ribbon, .odometer.odometer-theme-default .odometer-digit .odometer-ribbon {
      display: block; }
    .odometer.odometer-auto-theme .odometer-digit .odometer-ribbon-inner, .odometer.odometer-theme-default .odometer-digit .odometer-ribbon-inner {
      display: block;
      -webkit-backface-visibility: hidden; }
    .odometer.odometer-auto-theme .odometer-digit .odometer-value, .odometer.odometer-theme-default .odometer-digit .odometer-value {
      display: block;
      -webkit-transform: translateZ(0); }
      .odometer.odometer-auto-theme .odometer-digit .odometer-value.odometer-last-value, .odometer.odometer-theme-default .odometer-digit .odometer-value.odometer-last-value {
        position: absolute; }
  .odometer.odometer-auto-theme.odometer-animating-up .odometer-ribbon-inner, .odometer.odometer-theme-default.odometer-animating-up .odometer-ribbon-inner {
    -webkit-transition: -webkit-transform 2s;
    -moz-transition: -moz-transform 2s;
    -ms-transition: -ms-transform 2s;
    -o-transition: -o-transform 2s;
    transition: transform 2s; }
  .odometer.odometer-auto-theme.odometer-animating-up.odometer-animating .odometer-ribbon-inner, .odometer.odometer-theme-default.odometer-animating-up.odometer-animating .odometer-ribbon-inner {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%); }
  .odometer.odometer-auto-theme.odometer-animating-down .odometer-ribbon-inner, .odometer.odometer-theme-default.odometer-animating-down .odometer-ribbon-inner {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%); }
  .odometer.odometer-auto-theme.odometer-animating-down.odometer-animating, .odometer.odometer-theme-default.odometer-animating-down.odometer-animating {
    -webkit-transition: -webkit-transform 2s;
    -moz-transition: -moz-transform 2s;
    -ms-transition: -ms-transform 2s;
    -o-transition: -o-transform 2s;
    transition: transform 2s;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0); }
  .odometer.odometer-auto-theme .odometer-value, .odometer.odometer-theme-default .odometer-value {
    text-align: center; }

.p-onestop {
  width: 850px;
  margin: auto; }
  .p-onestop-icon {
    text-align: center;
    position: relative;
    top: 91px;
    z-index: 9; }
    .p-onestop-icon img {
      width: 24%; }
  .p-onestop-circle {
    width: 850px;
    height: 850px;
    position: relative;
    border: solid #FFE89C 15px;
    border-radius: 50%;
    box-sizing: border-box; }
    .p-onestop-circle::before {
      content: "";
      width: 806px;
      height: 806px;
      position: absolute;
      top: 7px;
      left: 7px;
      border: dashed #FFE89C 2px;
      border-radius: 50%;
      box-sizing: border-box; }
    .p-onestop-circle h3 {
      text-align: center;
      font-size: 38px;
      font-weight: 700;
      padding-top: 180px; }
      .p-onestop-circle h3 span {
        font-size: 60px;
        color: #FC8F31; }
    .p-onestop-circle-txt {
      font-size: 16px;
      text-align: center;
      line-height: 2.6 !important;
      padding-top: 50px;
      letter-spacing: 0.1em; }

.p-reason {
  width: 1200px;
  margin: auto;
  position: relative; }
  .p-reason:before {
    content: "";
    position: absolute;
    top: -130px;
    left: 405px;
    background: url(../../img/top/icon_reason.png) no-repeat center top/100%;
    width: 32%;
    height: 50%; }
  .p-reason-icon {
    text-align: center;
    margin-top: -150px;
    position: relative;
    z-index: 99; }
    .p-reason-icon::after {
      content: "";
      border-bottom: 1px solid #333;
      width: 400px;
      height: 1px;
      position: absolute;
      bottom: 0px;
      right: 404px; }
  .p-reason h3 {
    font-size: 28px;
    font-weight: bold;
    color: #231815;
    text-align: center;
    letter-spacing: 0.3em;
    padding: 120px 0 50px; }
    .p-reason h3 span.txt1 {
      font-size: 42px; }
    .p-reason h3 span.txt2 {
      font-size: 62px;
      color: #22D85F; }
  .p-reason-box {
    display: flex;
    width: 1100px;
    margin: 0 auto 100px; }
    .p-reason-box li {
      width: 260px;
      height: 260px;
      background: #22D85F;
      margin-right: 20px;
      color: #fff;
      font-weight: 700;
      font-size: 38px;
      text-align: center;
      line-height: 1.3 !important;
      padding-top: 55px;
      border-radius: 40px;
      position: relative; }
      .p-reason-box li::after {
        content: "";
        border-radius: 33px;
        border: 2px solid #fff;
        width: 240px;
        height: 240px;
        position: absolute;
        top: 8px;
        left: 8px;
        z-index: 9; }
      .p-reason-box li:nth-child(4) {
        margin-right: 0; }
      .p-reason-box li span {
        font-size: 20px;
        font-weight: normal; }
  .p-reason-notice {
    font-size: 10px;
    width: 1100px;
    margin: -90px auto 80px; }

.p-price {
  padding: 60px 0 100px;
  position: relative; }
  .p-price-icon {
    text-align: center;
    position: relative;
    z-index: 5;
    top: -100px; }
  .p-price:after {
    content: "";
    width: 100%;
    height: 514px;
    background: url("../../img/top/dot_price.png") no-repeat center top;
    position: absolute;
    z-index: 5;
    top: -80px;
    opacity: .4; }
  .p-price-bg:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background: linear-gradient(145deg, #fdec73, #fec52e);
    transform: skewY(-7deg);
    transform-origin: center;
    margin-top: 15px; }
  .p-price-bg:after {
    content: "";
    width: 100%;
    border: 2px solid #FFEA61;
    transform: skewY(-7deg);
    transform-origin: center;
    position: absolute;
    top: 65px; }
  .p-price-box {
    width: 1000px;
    margin: auto;
    position: relative;
    z-index: 11; }
    .p-price-box h3 {
      text-align: center;
      position: relative;
      font-size: 28px;
      margin: -100px 0 20px; }
      .p-price-box h3 span.txt1 {
        font-size: 65px;
        color: #E60012; }
      .p-price-box h3 span.txt2 {
        font-size: 65px;
        color: #E60012; }
      .p-price-box h3::before {
        content: "";
        background: url("../../img/top/fukidashi1_price.svg") no-repeat top center;
        width: 75px;
        height: 109px;
        position: absolute;
        top: -10px;
        left: 180px; }
      .p-price-box h3::after {
        content: "";
        background: url("../../img/top/fukidashi2_price.svg") no-repeat top center;
        width: 73px;
        height: 110px;
        position: absolute;
        top: -10px;
        right: 180px; }
    .p-price-box p.txt {
      text-align: center;
      position: relative;
      font-size: 18px;
      font-weight: 700;
      padding-bottom: 60px; }
  .p-price-gas {
    display: flex;
    width: 1000px;
    margin: auto;
    background: #fff;
    border: 6px solid #22D85F;
    border-radius: 20px;
    position: relative;
    z-index: 20;
    margin-top: 80px;
    padding: 70px 50px 100px;
    margin-bottom: -110px; }
    .p-price-gas-circle {
      position: absolute;
      left: 402px;
      top: -16%;
      content: "";
      width: 180px;
      height: 180px;
      border-radius: 50%;
      background: #22D85F;
      text-align: center;
      color: #fff;
      font-weight: normal;
      font-size: 18px;
      padding-top: 58px; }
      .p-price-gas-circle span {
        font-size: 30px;
        font-weight: 700;
        color: #FFEA61;
        line-height: 1.2;
        letter-spacing: 0.03em; }
      .p-price-gas-circle::before {
        content: "";
        position: absolute;
        top: 21px;
        left: 44%;
        width: 13%;
        height: 30%;
        background: url(../../img/top/icon_gas.svg) no-repeat center top/100%; }
      .p-price-gas-circle::after {
        content: "";
        width: 168px;
        height: 168px;
        border-radius: 50%;
        border: 1px solid #fff;
        position: absolute;
        top: 5px;
        left: 5px; }
    .p-price-gas-btn {
      text-align: left;
      position: absolute;
      bottom: -53px;
      left: 270px;
      font-size: 22px;
      font-weight: 700;
      line-height: 1.4 !important;
      z-index: 50;
      transition: all .2s; }
      .p-price-gas-btn::after {
        position: absolute;
        right: 30px;
        top: 51px;
        transform: translateY(-50%);
        content: "\e914";
        font-size: 22px;
        font-weight: 400;
        font-family: 'icomoon';
        color: #fff; }
      .p-price-gas-btn a {
        display: block;
        width: 450px;
        height: 100px;
        padding: 14px 0 0 40px;
        background: #22D85F;
        border: 3px #fff solid;
        border-radius: 20px;
        color: #fff;
        box-shadow: 0px 6px 0px 0px rgba(100, 170, 100, 0.4);
        transition: color .3s; }
        .p-price-gas-btn a:hover {
          color: #22D85F;
          background: #fff;
          border: 3px #22D85F solid; }
          .p-price-gas-btn a:hover::after {
            position: absolute;
            right: 30px;
            top: 51px;
            transform: translateY(-50%);
            content: "\e914";
            font-size: 22px;
            font-weight: 400;
            font-family: 'icomoon';
            color: #22D85F;
            transition: color .3s;
            z-index: 99; }
    .p-price-gas .pic img {
      height: 210px; }
    .p-price-gas .name img {
      width: 90px; }
  .p-price-ecocute {
    display: flex;
    position: relative;
    width: 1000px;
    margin: auto;
    background: #fff;
    border: 6px solid #39C3FF;
    border-radius: 20px;
    z-index: 15;
    padding: 70px 50px 100px;
    margin-top: 320px; }
    .p-price-ecocute-circle {
      position: absolute;
      left: 402px;
      top: -16%;
      content: "";
      width: 180px;
      height: 180px;
      border-radius: 50%;
      background: #39C3FF;
      text-align: center;
      color: #fff;
      font-weight: 700;
      font-size: 18px;
      font-weight: normal;
      padding-top: 58px; }
      .p-price-ecocute-circle span {
        font-size: 30px;
        font-weight: 700;
        color: #FFEA61;
        line-height: 1.2;
        letter-spacing: 0.03em; }
      .p-price-ecocute-circle::before {
        content: "";
        position: absolute;
        top: 22px;
        left: 37%;
        width: 21%;
        height: 34%;
        background: url(../../img/top/icon_ecocute.svg) no-repeat center top/100%; }
      .p-price-ecocute-circle::after {
        content: "";
        width: 168px;
        height: 168px;
        border-radius: 50%;
        border: 1px solid #fff;
        position: absolute;
        top: 5px;
        left: 5px; }
    .p-price-ecocute-btn {
      text-align: left;
      position: absolute;
      bottom: -53px;
      left: 270px;
      font-size: 22px;
      font-weight: 700;
      line-height: 1.4 !important;
      z-index: 50;
      transition: all .2s; }
      .p-price-ecocute-btn::after {
        position: absolute;
        right: 30px;
        top: 51px;
        transform: translateY(-50%);
        content: "\e914";
        font-size: 22px;
        font-weight: 400;
        font-family: 'icomoon';
        color: #fff; }
      .p-price-ecocute-btn a {
        display: block;
        width: 450px;
        height: 100px;
        padding: 14px 0 0 40px;
        background: #39C3FF;
        border: 3px #fff solid;
        border-radius: 20px;
        color: #fff;
        box-shadow: 0px 6px 0px 0px rgba(0, 130, 180, 0.3);
        transition: color .3s; }
        .p-price-ecocute-btn a:hover {
          color: #39C3FF;
          background: #fff;
          border: 3px #39C3FF solid; }
          .p-price-ecocute-btn a:hover::after {
            position: absolute;
            right: 30px;
            top: 51px;
            transform: translateY(-50%);
            content: "\e914";
            font-size: 22px;
            font-weight: 400;
            font-family: 'icomoon';
            color: #39C3FF;
            z-index: 99;
            transition: color .3s; }
    .p-price-ecocute .pic img {
      width: 243px; }
  .p-price-item {
    width: 450px; }
    .p-price-item:nth-child(3) {
      padding-right: 30px; }
    .p-price-item:nth-child(4) {
      border-left: 1px dotted #999;
      padding-left: 40px; }
    .p-price-item p.pic {
      text-align: center;
      margin: 0 0 10px; }
    .p-price-item ul {
      display: flex;
      margin-bottom: 10px;
      justify-content: center; }
      .p-price-item ul li.spec {
        font-size: 14px;
        color: #39C3FF;
        border: 1px solid #39C3FF;
        border-radius: 15px;
        padding: 0 10px;
        margin-right: 5px;
        background: #E1F3FF; }
    .p-price-item .name {
      font-size: 20px;
      font-weight: bold;
      color: #231815;
      padding: 10px 0;
      text-align: center; }
      .p-price-item .name img {
        display: inline-block;
        vertical-align: middle;
        margin-right: 1em;
        margin-bottom: 4px; }
    .p-price-item p.txt {
      font-size: 14px;
      color: #231815;
      padding-bottom: 18px; }
    .p-price-item .pricearea {
      display: flex; }
      .p-price-item .pricearea p.off {
        width: 85px;
        height: 85px;
        text-align: center;
        color: #fff;
        background: #E60012;
        border-radius: 50%;
        font-family: "Roboto", "Noto Sans JP", sans-serif;
        font-size: 20px;
        font-weight: 700;
        line-height: 1.0;
        padding-top: 14px;
        margin-top: -9px; }
        .p-price-item .pricearea p.off span {
          font-size: 40px; }
      .p-price-item .pricearea p.price-txt {
        font-weight: 700;
        margin-left: 20px;
        line-height: 1.4; }
        .p-price-item .pricearea p.price-txt span.txt1 {
          font-size: 14px;
          color: #231815;
          font-weight: normal; }
        .p-price-item .pricearea p.price-txt span.txt2 {
          font-size: 36px;
          color: #E60012;
          font-family: "Roboto", "Noto Sans JP", sans-serif;
          line-height: 1.2; }
          .p-price-item .pricearea p.price-txt span.txt2 span.txt-sm {
            font-size: 18px; }
        .p-price-item .pricearea p.price-txt span.line {
          text-decoration: line-through; }

.p-maker-tab-list {
  display: flex;
  justify-content: center; }
  .p-maker-tab-list li {
    width: 50px;
    height: 50px;
    border-radius: 5px;
    background: #DFDFDF;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.2;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin: 0 1.5px; }
    .p-maker-tab-list li span {
      font-size: 14px; }
    .p-maker-tab-list li.func-0, .p-maker-tab-list li.func-7 {
      display: none; }
    .p-maker-tab-list li.is-active.func-0 {
      background: #FFDD00; }
    .p-maker-tab-list li.is-active.func-1 {
      background: #52D1C6; }
    .p-maker-tab-list li.is-active.func-2 {
      background: #69B7EA; }
    .p-maker-tab-list li.is-active.func-3 {
      background: #EE6785; }
    .p-maker-tab-list li.is-active.func-4 {
      background: #EEA130; }
    .p-maker-tab-list li.is-active.func-5 {
      background: #AE89FB; }
    .p-maker-tab-list li.is-active.func-6 {
      background: #22D85F; }
    .p-maker-tab-list li.is-active.func-7 {
      background: #11A7CE; }
      .p-maker-tab-list li.is-active.func-7 span {
        font-size: 11px;
        letter-spacing: 0; }

.p-denka {
  width: 1000px;
  padding: 200px 0 60px;
  margin: auto;
  position: relative; }
  .p-denka::before {
    content: "";
    width: 500px;
    height: 500px;
    background: #FFE79B;
    border-radius: 50%;
    opacity: 0.5;
    position: absolute;
    top: -10px;
    left: -80px; }
  .p-denka::after {
    content: "";
    position: absolute;
    right: -100px;
    top: -50px;
    width: 375px;
    height: 500px;
    background: url("../../img/top/circle_denka.png") no-repeat center top;
    z-index: -1;
    opacity: .5; }
  .p-denka h3 {
    font-size: 32px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
    position: relative;
    z-index: 10;
    margin-bottom: 32px; }
  .p-denka-image {
    text-align: center;
    margin-bottom: 40px;
    position: relative;
    z-index: 1; }
  .p-denka-btn {
    position: relative;
    z-index: 10;
    top: 0;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    transition: all .2s; }
    .p-denka-btn span {
      font-size: 80%; }
    .p-denka-btn::after {
      position: absolute;
      right: 280px;
      top: 47px;
      transform: translateY(-50%);
      content: "\e914";
      font-size: 22px;
      font-weight: 400;
      font-family: 'icomoon';
      color: #fff; }
    .p-denka-btn a {
      margin: auto;
      color: #fff;
      display: block;
      width: 480px;
      height: 90px;
      background: #FEC818;
      border-radius: 20px;
      padding-top: 26px;
      border: 3px solid #fff;
      box-shadow: 0px 6px 0px 0px rgba(200, 170, 70, 0.3); }
      .p-denka-btn a:hover {
        color: #FEC818;
        background: #fff;
        border: 3px solid #FEC818; }
        .p-denka-btn a:hover::after {
          color: #FEC818;
          z-index: 100; }
  .p-denka-txt {
    text-align: center;
    position: relative;
    z-index: 1;
    margin-bottom: 32px; }

.l-cta2 * {
  box-sizing: border-box; }
.l-cta2-ic {
  text-align: center;
  position: relative;
  top: 104px;
  z-index: 10; }
.l-cta2-lead {
  font-size: 32px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  padding: 4px;
  width: 400px;
  height: 70px;
  border: 4px solid #fff;
  border-radius: 40px;
  position: relative;
  z-index: 50;
  margin: 0 auto 20px;
  top: 225px; }
  .l-cta2-lead::after {
    content: "";
    position: absolute;
    left: 180px;
    top: 63px;
    display: block;
    width: 0;
    height: 0;
    border-right: 15px solid transparent;
    border-top: 20px solid #fff;
    border-left: 15px solid transparent; }
  .l-cta2-lead::before {
    content: "";
    position: absolute;
    background: url(../../img/top/kts02.png) no-repeat center top/100%;
    left: 50%;
    transform: translate(-50%);
    top: -90px;
    width: 28%;
    height: 140%; }
.l-cta2-inr {
  width: 100%;
  margin: 0 auto;
  color: #fff;
  padding: 220px 0 80px;
  position: relative; }
  .l-cta2-inr::before {
    content: "";
    position: absolute;
    top: -40px;
    left: 0;
    right: 0;
    bottom: -35px;
    background: #E60012;
    transform: skewY(-7deg);
    transform-origin: center;
    z-index: 1;
    width: 100%; }
  .l-cta2-inr * {
    position: relative;
    z-index: 2; }
  .l-cta2-inr .c-ttl-lg {
    font-size: 70px;
    text-align: center; }
    .l-cta2-inr .c-ttl-lg span {
      width: 635px;
      margin: auto;
      display: inline-block;
      border-bottom: 1px solid #fff; }
.l-cta2-box {
  width: 1000px;
  margin: auto;
  position: relative;
  padding-top: 60px; }
  .l-cta2-box::before {
    content: "";
    background: url("../../img/top/fukidashi_cta.svg");
    width: 189px;
    height: 115px;
    position: absolute;
    z-index: 9;
    top: -12px;
    left: 161px;
    animation: fuwafuwa 1.5s ease 0s infinite; }
@keyframes fuwafuwa {
  0% {
    transform: translate(0, 0); }
  50% {
    transform: translate(0, -8%); }
  100% {
    transform: translate(0, 0); } }
  .l-cta2-box::after {
    position: absolute;
    background: url(../../img/top/cta_anmika.png) no-repeat center top;
    content: "";
    width: 159px;
    height: 595px;
    top: -279px;
    right: 22px; }
  .l-cta2-box .c-btn {
    text-align: center;
    position: relative;
    transition: all .2s; }
    .l-cta2-box .c-btn::before {
      content: "";
      background: url(../../img/top/icon_sp.svg) no-repeat center top/100%;
      width: 4%;
      height: 40%;
      position: absolute;
      top: 45px;
      left: 267px;
      z-index: 9; }
    .l-cta2-box .c-btn::after {
      position: absolute;
      right: 266px;
      top: 73px;
      transform: translateY(-50%);
      content: "\e914";
      font-size: 28px;
      font-weight: 400;
      font-family: 'icomoon';
      color: #231815;
      z-index: 9; }
    .l-cta2-box .c-btn-txt1 {
      color: #E60012;
      font-size: 14px;
      line-height: 1.4;
      font-weight: 700;
      display: inline-block; }
    .l-cta2-box .c-btn-txt2 {
      color: #E60012;
      font-size: 40px;
      display: inline-block;
      font-weight: 700; }
      .l-cta2-box .c-btn-txt2 span.txt_sm {
        font-size: 22px; }
    .l-cta2-box .c-btn-txt3 {
      width: 340px;
      margin: auto;
      color: #231815;
      font-size: 30px;
      font-weight: 700;
      border-top: 2px dashed #231815;
      padding-top: 4px;
      line-height: 2.0; }
    .l-cta2-box .c-btn a {
      width: 520px;
      height: 140px;
      background: #FFEA61;
      border-radius: 70px;
      display: block;
      padding-top: 6px;
      margin: auto;
      box-shadow: 0px 6px 0px 0px rgba(0, 0, 0, 0.2); }
      .l-cta2-box .c-btn a:hover {
        background: #FFF5B1; }
  .l-cta2-box .c-btn-tel-top {
    width: 330px;
    margin: 40px auto 0;
    text-align: center;
    position: relative;
    padding: 10px 0 10px 35px;
    border-top: 1px dashed #fff;
    border-bottom: 1px dashed #fff; }
    .l-cta2-box .c-btn-tel-top a {
      pointer-events: none; }
    .l-cta2-box .c-btn-tel-top::before {
      content: "";
      background: url(../../img/top/icon_tel.svg) no-repeat center top/100%;
      width: 8%;
      height: 60%;
      position: absolute;
      top: 26px;
      left: 17px; }
    .l-cta2-box .c-btn-tel-top span {
      color: #fff;
      font-size: 20px; }
    .l-cta2-box .c-btn-tel-top span.txt {
      font-size: 38px;
      font-weight: 700;
      line-height: 1.3; }

.p-survey {
  position: relative;
  padding: 200px 0 80px;
  color: #333; }
  .p-survey .c-box-inr {
    position: relative;
    width: 860px; }
  .p-survey-stop {
    background: #FDD663;
    width: 850px;
    height: 100%;
    position: relative;
    margin: 0 auto 50px;
    padding: 50px 0; }
    .p-survey-stop::before {
      content: "";
      background: url("../../img/top/stop_bg.png") repeat-x center top;
      width: 100%;
      height: 10px;
      position: absolute;
      top: 0; }
    .p-survey-stop::after {
      content: "";
      background: url("../../img/top/stop_bg.png") repeat-x center bottom;
      width: 100%;
      height: 10px;
      position: absolute;
      bottom: 0; }
    .p-survey-stop-box {
      display: flex;
      justify-content: space-between;
      padding: 0 50px; }
    .p-survey-stop-ttl {
      text-align: center;
      font-size: 20px;
      font-weight: 900; }
      .p-survey-stop-ttl-txt1 {
        font-size: 25px; }
      .p-survey-stop-ttl-txt2 {
        font-size: 16px; }
    .p-survey-stop-txt {
      margin: 30px 50px 0;
      border-top: 1px solid #000;
      padding-top: 30px; }
  .p-survey-summary-ttl {
    font-size: 30px;
    font-weight: 700;
    text-align: center;
    position: relative;
    margin: 100px 0 30px; }
    .p-survey-summary-ttl::before {
      content: "●";
      position: absolute;
      color: #E60012;
      left: 0;
      right: 0;
      top: -50px;
      margin: auto; }
  .p-survey-summary-score {
    width: 850px;
    margin: 40px auto;
    font-weight: 700;
    border-collapse: collapse;
    border: 2px solid #eee; }
  .p-survey-summary th, .p-survey-summary td {
    padding: 16px;
    vertical-align: middle; }
  .p-survey-summary th {
    background-color: #f7f7f7;
    font-weight: bold;
    width: 75%;
    font-size: 18px;
    padding-left: 120px;
    text-align: left; }
  .p-survey-summary td {
    text-align: right;
    color: #d40000;
    font-size: 32px;
    width: 25%;
    background-color: #fff;
    white-space: nowrap;
    font-family: "Roboto", "Noto Sans JP", sans-serif;
    padding-right: 68px; }
  .p-survey-summary tr + tr {
    border-top: 2px solid #eee; }
  .p-survey-summary .score::after {
    content: "点";
    font-size: 0.6em;
    margin-left: 4px; }
  .p-survey-btn1 {
    padding: 40px 0; }
  .p-survey-btn2 {
    padding: 20px 0 40px;
    position: relative; }
    .p-survey-btn2-txt {
      position: absolute;
      text-align: center;
      bottom: 95px;
      left: 0;
      right: 0;
      margin: auto; }
      .p-survey-btn2-txt::before {
        content: '\\';
        font-size: 110%; }
      .p-survey-btn2-txt::after {
        content: '/';
        font-size: 110%; }
  .p-survey-ttl {
    text-align: center;
    order: 1; }
    .p-survey-ttl img {
      widows: 510px; }
  .p-survey-txt-s {
    display: block;
    font-size: 10px;
    margin-top: .2em;
    font-weight: 400; }
  .p-survey-catch {
    font-weight: bold;
    text-align: center;
    font-size: 32px;
    line-height: 1.6; }
    .p-survey-catch span {
      background: linear-gradient(transparent 70%, #ffd3d7 70%); }
    .p-survey-catch-md {
      display: inline-block;
      font-size: 32px;
      font-weight: 700;
      letter-spacing: 0.1em;
      text-align: center;
      line-height: 1;
      margin-bottom: .25em; }
      .p-survey-catch-md span {
        display: block;
        font-size: 16px;
        font-weight: 700;
        letter-spacing: 0.02em;
        margin-bottom: 1.5em; }
      .p-survey-catch-md-sp {
        display: none; }
    .p-survey-catch-lg {
      display: block;
      font-size: 60px;
      font-weight: 700;
      line-height: 1;
      margin-top: 16px;
      color: #E60012; }
    .p-survey-catch-num {
      font-size: 120px !important;
      margin: -65px 0 0 30px;
      color: #E60012; }
  .p-survey-img {
    width: 422px;
    text-align: center;
    position: absolute;
    top: 110px;
    left: 0; }
  .p-survey .c-txt-lead {
    font-size: 20px;
    font-weight: 700;
    padding-top: 40px;
    margin-bottom: 24px; }
    .p-survey .c-txt-lead span.sub {
      font-size: 10px; }
  .p-survey-blog {
    width: 600px;
    height: 292px;
    margin: 60px auto 0;
    border: 4px solid #39C3FF;
    border-radius: 40px;
    position: relative;
    background: #F1F1F1;
    padding-top: 70px;
    text-align: center; }
    .p-survey-blog::before {
      content: "";
      background: url("../../img/top/icon_blog.svg") no-repeat;
      width: 164px;
      height: 122px;
      position: absolute;
      top: -57px;
      left: 212px; }
    .p-survey-blog h3 {
      font-size: 30px;
      color: #231815; }
    .p-survey-blog .txt {
      margin-top: 10px;
      font-size: 18px; }
    .p-survey-blog .c-btn-blog {
      font-size: 16px;
      position: relative;
      transition: all .2s; }
      .p-survey-blog .c-btn-blog::before {
        position: absolute;
        right: 154px;
        top: 24px;
        transform: translateY(-50%);
        content: "\e914";
        font-size: 24px;
        font-weight: 400;
        font-family: 'icomoon';
        color: #39C3FF; }
      .p-survey-blog .c-btn-blog a {
        width: 312px;
        height: 48px;
        display: block;
        color: #333;
        background: #fff;
        border: 1px solid #39C3FF;
        border-radius: 40px;
        margin: 30px auto 0;
        padding-top: 10px; }
        .p-survey-blog .c-btn-blog a:hover {
          color: #fff;
          background: #39C3FF;
          border: 1px solid #39C3FF; }
          .p-survey-blog .c-btn-blog a:hover::before {
            position: absolute;
            right: 154px;
            top: 24px;
            transform: translateY(-50%);
            content: "\e914";
            font-size: 24px;
            font-weight: 400;
            font-family: 'icomoon';
            color: #fff; }

.p-step .kts02 {
  width: 200px;
  margin: 0 auto 20px;
  position: relative;
  left: 27px; }
.p-step .c-ttl-lg span {
  display: block;
  color: #E60012;
  font-size: 24px;
  font-weight: 700;
  padding-bottom: 30px; }

.p-about .c-box-inr {
  width: 946px; }
.p-about-logo {
  text-align: center;
  margin-bottom: 32px; }
  .p-about-logo img {
    max-width: 240px; }
.p-about-txt {
  font-size: 15px;
  font-weight: 700;
  text-align: center;
  position: relative;
  padding: 24px 0;
  margin-bottom: 8px; }
  .p-about-txt::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: url("/assets/img/common/bg_about.png") no-repeat center;
    background-size: contain;
    width: 518px;
    height: 95px; }
  .p-about-txt span {
    position: relative; }
.p-about .c-box-child {
  padding-top: 80px; }
.p-about-row {
  margin-bottom: 32px;
  padding-left: 378px; }
  @media screen and (max-width: 767px) {
    .p-about-row {
      margin-bottom: 16px; } }
  .p-about-row + .c-txt-sm {
    padding-left: 378px;
    padding-right: 46px; }
.p-about-img {
  width: 338px;
  position: absolute;
  left: 0;
  bottom: 0; }

.p-message {
  position: relative; }

.p-bnr-kyutows {
  width: 800px;
  margin: 0 auto; }

.p-pr-txt {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 40px; }

/*# sourceMappingURL=top.css.map */
