@charset "UTF-8";
h1 {
  font-size: 1.2rem;
  font-weight: bold;
  color: #808080;
  margin: 0 0 0.5em; }

.logo-font {
  font-family: 'M PLUS 1p', sans-serif;
  transform: rotate(0.03deg);
  font-weight: bold;
  font-size: 2.0rem; }
  .logo-font a {
    color: #2e9f32;
    text-decoration: none; }

.header-contant {
  display: none; }

.header-item {
  position: relative;
  z-index: 9999; }

.header-wrap {
  box-sizing: border-box;
  padding: 10px;
  background: #fff;
  box-shadow: 0px 6px 6px -2px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 9999; }

.inner {
  margin: 0 10px; }

.top-block {
  padding: 30px 0; }

.circle-title {
  text-align: center;
  font-weight: bold;
  color: #2e9f32;
  font-size: 2.0rem;
  margin: 0 0 1.5em; }
  .circle-title span {
    border: 1px solid #2e9f32;
    background: #fff;
    display: inline-block;
    box-sizing: border-box;
    padding: 0.25em 1.5em;
    border-radius: 20px; }

.service-list {
  letter-spacing: -.5em;
  font-size: 0; }
  .service-list li {
    letter-spacing: normal;
    font-size: 1.6rem;
    text-align: center;
    vertical-align: top;
    display: inline-block;
    width: 49%;
    margin: 0 2% 2% 0; }
    .service-list li:nth-child(2n) {
      margin: 0; }
    .service-list li p {
      color: #fff;
      font-weight: bold;
      background: #2e9f32;
      padding: 0.25em 0;
      letter-spacing: .1em; }

.supplement-block {
  background: #eaffad;
  padding: 40px 0 30px;
  text-align: center;
  position: relative; }
  .supplement-block:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 20px solid #fff;
    z-index: 1; }
  .supplement-block p {
    color: #2e9f32;
    font-weight: bold; }
    .supplement-block p.supplement-title {
      font-size: 2.2rem;
      margin: 0 0 0.5em; }
      .supplement-block p.supplement-title span {
        position: relative; }
        .supplement-block p.supplement-title span:before {
          content: "";
          position: absolute;
          left: -18px;
          bottom: 0;
          width: 12px;
          height: 28px;
          background: url(../img/supplement_deco_l.svg) no-repeat;
          background-size: contain; }
        .supplement-block p.supplement-title span:after {
          content: "";
          position: absolute;
          right: -18px;
          bottom: 0;
          width: 12px;
          height: 28px;
          background: url(../img/supplement_deco_r.svg) no-repeat;
          background-size: contain; }
  .supplement-block ul {
    margin: 1.5em auto 0;
    max-width: 300px; }
    .supplement-block ul li {
      padding: 10px;
      background: #fff;
      box-sizing: border-box;
      border: 1px solid #b4d35c;
      border-radius: 4px;
      letter-spacing: -.5em;
      margin: 0 0 10px; }
      .supplement-block ul li:last-child {
        margin: 0; }
      .supplement-block ul li .icon,
      .supplement-block ul li .icon-txt {
        letter-spacing: normal;
        display: inline-block;
        vertical-align: middle; }
      .supplement-block ul li .icon {
        width: 18%;
        margin: 0 6% 0 0; }
      .supplement-block ul li .icon-txt {
        width: 76%;
        letter-spacing: .05em;
        text-align: left; }
        .supplement-block ul li .icon-txt span {
          font-size: 1.8rem; }

section {
  padding: 40px 0; }
  section:last-child {
    padding: 40px 0 100px; }

.bg01 {
  background: #f6f4ed; }

.bg02 {
  background: url(../img/bg_01.png) repeat;
  background-size: 12px; }

.reg-title {
  text-align: center;
  font-size: 2.2rem;
  font-weight: bold;
  margin: 0 0 1.5em; }
  .reg-title .top-lead {
    display: block;
    font-size: 1.4rem;
    margin: 0 0 0.5em; }
    .reg-title .top-lead span {
      display: inline-block;
      background: #fff;
      color: #2e9f32;
      padding: 0.25em 0.75em;
      border: 2px solid #2e9f32;
      box-sizing: border-box;
      letter-spacing: normal;
      border-radius: 20px; }
  .reg-title .gl {
    color: #2e9f32; }

.trouble-list li {
  letter-spacing: -.5em;
  margin: 0 0 2.0em; }
  .trouble-list li:last-child {
    margin: 0; }
  .trouble-list li .trouble-img,
  .trouble-list li .trouble-txt {
    vertical-align: top;
    letter-spacing: normal;
    display: inline-block;
    box-sizing: border-box; }
  .trouble-list li .trouble-img {
    width: 16%;
    margin: 0 6% 0 0; }
  .trouble-list li .trouble-txt {
    width: 78%;
    padding: 1.0em;
    background: #f6f4ed;
    position: relative;
    border-radius: 10px;
    font-weight: bold; }
    .trouble-list li .trouble-txt span {
      color: #f15a24; }
    .trouble-list li .trouble-txt:before {
      content: "";
      position: absolute;
      top: 40%;
      left: -15px;
      margin-top: -10px;
      border: 5px solid transparent;
      border-right: 10px solid #f6f4ed; }
    .trouble-list li .trouble-txt p {
      letter-spacing: .1em; }

.catch-box01 {
  position: relative;
  margin: 50px 0 30px;
  padding: 30px 0 0;
  background: url(../img/catch_img01.png) no-repeat center bottom;
  background-size: cover; }
  .catch-box01:before {
    content: "";
    position: absolute;
    background: url(../img/arrow01.png) no-repeat;
    background-size: contain;
    width: 270px;
    height: 34px;
    left: 0;
    right: 0;
    top: -20px;
    z-index: 1;
    margin: 0 auto; }

.catch-item {
  letter-spacing: -.5em; }
  .catch-item .catch-txt,
  .catch-item .catch-img {
    letter-spacing: normal;
    display: inline-block;
    vertical-align: bottom; }
  .catch-item .catch-txt {
    width: 76%;
    margin: 0 4% 30px 0;
    background: #fff;
    padding: 1.0em;
    box-sizing: border-box;
    border-radius: 10px;
    border: 4px solid #f6f1dd;
    font-weight: bold; }
    .catch-item .catch-txt p {
      letter-spacing: .1em; }
      .catch-item .catch-txt p span {
        font-size: 1.8rem;
        line-height: 1.4;
        color: #f15a24;
        display: block;
        padding: 0.25em 0 0; }
  .catch-item .catch-img {
    width: 20%; }

.check-box ul {
  background: url(../img/bg_01.png) repeat;
  background-size: 12px;
  border: 4px solid #f2f2f2;
  border-radius: 6px;
  box-sizing: border-box;
  padding: 1.5em 1.0em; }
  .check-box ul li {
    font-weight: bold;
    position: relative;
    padding: 0 0 0 25px;
    margin: 0 0 2.0em; }
    .check-box ul li:last-child {
      margin: 0; }
    .check-box ul li:before {
      content: "";
      position: absolute;
      left: 0;
      top: 2px;
      width: 20px;
      height: 17px;
      background: url(../img/check01.svg) no-repeat;
      background-size: contain; }
    .check-box ul li span {
      color: #27862a;
      background: linear-gradient(transparent 50%, #ffff80 50%); }

.tap-txt {
  text-align: center;
  font-weight: bold;
  color: #808080;
  margin: 0 0 1.0em; }

.service-wrap {
  margin: 50px 0 0; }

.service-content {
  margin: 0 0 30px;
  background: #fff;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.15);
  border-radius: 6px; }
  .service-content h3 {
    text-align: center;
    background: #2e9f32;
    font-weight: bold;
    color: #fff;
    font-size: 2.0rem;
    padding: 0.5em 0; }
  .service-content h4 {
    font-weight: bold;
    margin: 0 0 1.0em;
    padding: 0;
    font-size: 1.8rem; }
  .service-content:last-child {
    margin: 0; }
  .service-content .service-item-img {
    margin: 0 0 20px; }
  .service-content .service-content-inner {
    box-sizing: border-box;
    padding: 1.5em; }
  .service-content .service-description {
    margin: 0 0 3.0em;
    border-left: 4px solid #b4d35c;
    padding: 0 0 0 1.0em; }
    .service-content .service-description p {
      margin: 0 0 1.0em;
      color: #333; }
      .service-content .service-description p:last-child {
        margin: 0; }
  .service-content .flow-list {
    background: #fefff2;
    box-sizing: border-box;
    padding: 1.0em;
    border-radius: 4px; }
    .service-content .flow-list li {
      position: relative;
      padding: 0 0 0 36px;
      margin: 0 0 1.5em;
      color: #333; }
      .service-content .flow-list li span {
        font-size: 1.4rem;
        display: block; }
      .service-content .flow-list li:last-child {
        margin: 0; }
      .service-content .flow-list li:nth-child(2):before {
        content: "2"; }
      .service-content .flow-list li:nth-child(3):before {
        content: "3"; }
      .service-content .flow-list li:nth-child(4):before {
        content: "4"; }
      .service-content .flow-list li:nth-child(5):before {
        content: "5"; }
      .service-content .flow-list li:before {
        content: "1";
        position: absolute;
        left: 0;
        top: 0;
        font-size: 1.6rem;
        font-weight: bold;
        text-align: center;
        background: #2e9f32;
        color: #fff;
        border-radius: 50%;
        width: 26px;
        height: 26px; }

.reason-list li {
  box-sizing: border-box;
  padding: 1.5em;
  background: #fffdf6;
  border: 1px solid #f6f1dd;
  margin: 0 0 30px; }
  .reason-list li:nth-child(2) h3:before {
    content: "2"; }
  .reason-list li:nth-child(3) h3:before {
    content: "3"; }
  .reason-list li:last-child {
    margin: 0; }
  .reason-list li h3 {
    font-weight: bold;
    color: #2e9f32;
    font-size: 2.0rem;
    margin: 0 0 1.0em;
    position: relative;
    padding: 0 0 1.0em 2.0em;
    border-bottom: 1px dotted #f6f1dd; }
    .reason-list li h3:before {
      content: "1";
      position: absolute;
      left: 0;
      top: 0;
      font-size: 2.0rem;
      font-weight: bold;
      text-align: center;
      background: #2e9f32;
      color: #fff;
      border-radius: 50%;
      width: 32px;
      height: 32px; }
  .reason-list li .reason-thum {
    display: block;
    width: 150px;
    margin: 0 auto 30px; }
  .reason-list li p {
    margin: 0 0 1.5em; }
    .reason-list li p:last-child {
      margin: 0; }

.review-item {
  box-sizing: border-box;
  background: #fffdf6;
  border: 4px solid #f6f1dd;
  padding: 20px 20px 30px;
  margin: 0 0 30px; }
  .review-item:last-child {
    margin: 0; }
  .review-item .review-img {
    width: 200px;
    margin: 0 auto 30px; }
    .review-item .review-img p {
      text-align: center;
      color: #333;
      margin: 0.5em 0 0; }
  .review-item .review-txt h3 {
    box-sizing: border-box;
    padding: 1.0em;
    font-weight: bold;
    color: #2e9f32;
    font-size: 1.8rem;
    position: relative;
    margin: 0 0 2.0em; }
    .review-item .review-txt h3:before, .review-item .review-txt h3:after {
      content: "";
      position: absolute;
      width: 16px;
      height: 14px; }
    .review-item .review-txt h3:before {
      left: 0;
      top: 0;
      background: url(../img/comment_deco_l.svg) no-repeat;
      background-size: contain; }
    .review-item .review-txt h3:after {
      right: 0;
      bottom: 0;
      background: url(../img/comment_deco_r.svg) no-repeat;
      background-size: contain; }
  .review-item .review-txt-inner p {
    font-size: 1.4rem;
    line-height: 2.0;
    color: #333; }

.contact-btn {
  border-bottom: 4px solid #e6e6e6;
  padding: 0 0 30px; }
  .contact-btn ul li span {
    display: block;
    text-align: center;
    font-size: 1.4rem;
    font-weight: bold;
    margin: 0.5em 0 0; }
  .contact-btn ul li a {
    display: block; }
  .contact-btn ul li:last-child {
    margin: 30px 0 0; }

.mail-lead {
  text-align: center;
  font-weight: bold;
  color: #fff;
  font-size: 2.0rem;
  padding: 30px 0 0; }
  .mail-lead span {
    background: #62aa9f;
    display: inline-block;
    box-sizing: border-box;
    padding: 0.25em 1.5em;
    border-radius: 15px; }

.mail-time {
  margin: 0.5em 0 2.0em;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center; }

.band-title {
  text-align: center;
  font-weight: bold;
  font-size: 2.0rem;
  color: #fff;
  background: #2e9f32;
  padding: 1.0em 0;
  position: relative; }
  .band-title:before {
    content: "";
    position: absolute;
    bottom: -35px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 20px solid #2e9f32;
    z-index: 1; }

.campaign-wrap {
  background: url(../img/campaign_bg.png) no-repeat center bottom;
  background-size: cover;
  padding: 2.0em 0 0; }
  .campaign-wrap .campaign-item {
    letter-spacing: -.5em;
    margin: 0 10px; }
    .campaign-wrap .campaign-item .campaign-img,
    .campaign-wrap .campaign-item .campaign-txt {
      letter-spacing: normal;
      display: inline-block;
      vertical-align: bottom; }
    .campaign-wrap .campaign-item .campaign-img {
      width: 23%;
      margin: 0 4% 0 0; }
    .campaign-wrap .campaign-item .campaign-txt {
      width: 73%;
      padding: 0 0 30px; }
      .campaign-wrap .campaign-item .campaign-txt p {
        font-weight: bold; }
        .campaign-wrap .campaign-item .campaign-txt p.top-lead span {
          font-size: 1.9rem; }
        .campaign-wrap .campaign-item .campaign-txt p.mid-lead {
          margin: 0.25em 0 0; }
          .campaign-wrap .campaign-item .campaign-txt p.mid-lead span {
            background: #534741;
            color: #fff;
            font-size: 1.9rem;
            display: inline-block;
            padding: 0.2em 0.5em;
            border-radius: 10px;
            margin: 0 0.5em 0 0; }
        .campaign-wrap .campaign-item .campaign-txt p.row-lead {
          font-size: 2.8rem;
          color: #f15a24; }

.price-wrap {
  padding: 40px 0 0; }

.price-title {
  text-align: center;
  font-weight: bold;
  color: #fff;
  font-size: 1.8rem;
  margin: 0 0 2.0em; }
  .price-title span {
    background: #534741;
    display: inline-block;
    box-sizing: border-box;
    padding: 0.25em 1.5em;
    border-radius: 15px; }

.op-title {
  text-align: center;
  font-weight: bold;
  color: #534741;
  font-size: 1.8rem;
  margin: 0 0 2.0em; }
  .op-title span {
    background: #fff;
    border: 2px solid #534741;
    display: inline-block;
    box-sizing: border-box;
    padding: 0.25em 1.5em;
    border-radius: 15px;
    min-width: 230px; }

.price-content {
  margin: 0 0 50px; }
  .price-content:nth-child(2) {
    margin: 0 0 100px; }
  .price-content:last-child {
    margin: 0; }

.price-attention {
  position: relative;
  box-sizing: border-box;
  padding: 1.5em;
  background: #fcfcfc;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin: 60px 0 0; }
  .price-attention:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -35px;
    background: url(../img/arrow02.svg) no-repeat;
    background-size: contain;
    width: 25px;
    height: 15px;
    margin: 0 auto; }
  .price-attention ul li {
    font-size: 1.4rem;
    padding: 0 0 0 1.0em;
    text-indent: -1.0em;
    font-weight: bold;
    margin: 0 0 1.0em; }
    .price-attention ul li:last-child {
      margin: 0; }

.pack-item {
  box-sizing: border-box;
  padding: 0 10px; }
  .pack-item ul li {
    margin: 0 0 30px;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.15); }
    .pack-item ul li:last-child {
      margin: 0; }
    .pack-item ul li h4 {
      font-size: 1.8rem;
      text-align: center;
      padding: 0.5em;
      margin: 0;
      font-weight: bold;
      color: #fff;
      background: #2e9f32; }
    .pack-item ul li .pack-inner {
      box-sizing: border-box;
      padding: 20px;
      background: #fff; }
    .pack-item ul li .pack-img {
      display: block;
      width: 150px;
      margin: 0 auto 20px; }
    .pack-item ul li .pack-price {
      text-align: center;
      font-weight: bold;
      font-size: 3.6rem;
      color: #ff0000;
      margin: 0 0 0.5em; }
      .pack-item ul li .pack-price span {
        font-size: 2.4rem; }
    .pack-item ul li .pack-txt {
      font-size: 1.4rem;
      padding: 0 0 0 1.0em;
      text-indent: -1.0em;
      font-weight: bold; }

#sp-contact {
  position: fixed;
  z-index: 9999;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.5); }
  #sp-contact p {
    color: #fff;
    font-weight: bold;
    font-size: 1.2rem;
    text-align: center;
    padding: 4px 0; }
  #sp-contact ul {
    width: 100%;
    display: table; }
    #sp-contact ul li {
      letter-spacing: normal;
      display: table-cell;
      width: 33.3%; }
      #sp-contact ul li a {
        text-align: center;
        text-decoration: none;
        color: #fff;
        display: block;
        position: relative; }
        #sp-contact ul li a img {
          width: 20px; }
        #sp-contact ul li a:before {
          content: "";
          top: 2px;
          right: 2px;
          border-bottom: 6px solid transparent;
          border-right: 6px solid rgba(255, 255, 255, 0.8);
          position: absolute; }
        #sp-contact ul li a span {
          display: block;
          font-size: 10px;
          margin: 4px 0 0;
          letter-spacing: 0.1em; }
      #sp-contact ul li:first-child {
        background: #ff7f00; }
      #sp-contact ul li:nth-child(2) {
        width: 33.4%;
        background: #62aa9f; }
      #sp-contact ul li:last-child {
        background: #33AE3A; }

.scroll-btn-pc,
.scroll-btn-sub {
  display: none; }

.proof-block {
  padding: 15px 0;
  background: #fefff2; }

/*media Queries PCサイズ（1000px以上）
----------------------------------------------------*/
@media only screen and (min-width: 1000px) {
  h1 {
    margin: 0;
    letter-spacing: 0.05em; }

  .header-item {
    width: 1000px;
    margin: 0 auto; }

  .main_visual {
    background: url(../img/main_bg.png) no-repeat bottom center;
    background-size: cover; }
    .main_visual .pc {
      display: block;
      width: 1000px;
      margin: 0 auto; }

  .logo-font {
    font-size: 3.0rem; }

  .header-wrap {
    padding: 20px 0; }

  .header-contant {
    display: block;
    position: absolute;
    right: 0;
    top: 8px; }
    .header-contant ul {
      letter-spacing: .5em; }
      .header-contant ul li {
        width: 228px;
        letter-spacing: normal;
        display: inline-block;
        vertical-align: top; }
        .header-contant ul li:last-child {
          width: 74px;
          margin: 0; }

  .inner {
    width: 1000px;
    margin: 0 auto; }

  .circle-title {
    font-size: 3.0rem; }
    .circle-title span {
      padding: 0.25em 2.0em; }

  .top-block {
    padding: 40px 0; }

  .service-list li {
    width: 232px;
    margin: 0 24px 0 0; }
    .service-list li:nth-child(2n) {
      margin: 0 24px 0 0; }
    .service-list li:last-child {
      margin: 0; }
    .service-list li p {
      font-size: 2.4rem; }

  .supplement-block p {
    font-size: 1.6rem; }
    .supplement-block p.supplement-title {
      font-size: 3.0rem; }
  .supplement-block ul {
    max-width: 800px;
    letter-spacing: -.5em; }
    .supplement-block ul li {
      display: inline-block;
      vertical-align: top;
      letter-spacing: normal;
      width: 252px;
      margin: 0 22px 0 0;
      padding: 15px 5px; }
      .supplement-block ul li:last-child {
        margin: 0; }
      .supplement-block ul li .icon {
        width: 50px;
        margin: 0 auto 4px; }
      .supplement-block ul li .icon-txt {
        width: 100%;
        text-align: center;
        font-size: 1.8rem; }
        .supplement-block ul li .icon-txt span {
          font-size: 2.1rem; }

  section {
    padding: 70px 0 100px; }
    section:last-child {
      padding: 70px 0 150px; }

  .reg-title {
    font-size: 5.0rem;
    line-height: 1.6; }
    .reg-title .top-lead {
      font-size: 2.0rem; }
      .reg-title .top-lead span {
        padding: 0.25em 1.0em; }

  .trouble-list {
    letter-spacing: -.5em; }
    .trouble-list li {
      letter-spacing: normal;
      display: inline-block;
      vertical-align: top;
      width: 480px;
      margin: 0 40px 40px 0; }
      .trouble-list li:nth-child(2n) {
        margin: 0 0 40px 0; }
      .trouble-list li:nth-child(3) .trouble-txt {
        min-height: 104.8px;
        line-height: 2.8; }
      .trouble-list li .trouble-img {
        width: 90px;
        margin: 0 26px 0 0; }
      .trouble-list li .trouble-txt {
        width: 360px;
        font-size: 2.2rem;
        line-height: 1.4; }
        .trouble-list li .trouble-txt:before {
          left: -25px;
          top: 50%;
          margin-top: -15px;
          border: 10px solid transparent;
          border-right: 15px solid #f6f4ed; }

  .catch-box01 {
    margin: 80px 0 50px;
    padding: 40px 0 0; }
    .catch-box01:before {
      width: 600px;
      height: 72px;
      top: -50px; }

  .catch-item .catch-txt,
  .catch-item .catch-img {
    vertical-align: bottom; }
  .catch-item .catch-txt {
    width: 670px;
    margin: 0 8px 30px 0;
    padding: 5.0em 2.5em; }
    .catch-item .catch-txt p {
      font-size: 3.0rem;
      letter-spacing: .05em; }
      .catch-item .catch-txt p span {
        font-size: 4.0rem; }
  .catch-item .catch-img {
    width: 322px; }

  .check-box ul {
    padding: 35px; }
    .check-box ul li {
      font-size: 2.2rem;
      padding: 0 0 0 46px;
      margin: 0 0 1.5em; }
      .check-box ul li:before {
        width: 30px;
        height: 24px;
        top: 4px; }

  .tap-txt {
    font-size: 2.2rem;
    margin: 0 0 1.5em; }

  .service-wrap {
    margin: 90px 0 0; }

  .service-content {
    margin: 0 0 50px; }
    .service-content h3 {
      font-size: 4.0rem;
      padding: 0.25em 0; }
    .service-content h4 {
      font-size: 3.0rem;
      margin: 0 0 0.5em; }
    .service-content .service-item {
      overflow: hidden; }
      .service-content .service-item .service-item-img {
        float: left;
        width: 300px; }
      .service-content .service-item .service-item-txt {
        float: right;
        width: 570px; }
    .service-content .service-content-inner {
      padding: 60px 45px; }
    .service-content .service-description {
      font-size: 2.0rem; }
    .service-content .flow-list {
      padding: 1.8em;
      font-size: 2.0rem; }
      .service-content .flow-list li {
        margin: 0 0 1.0em; }
        .service-content .flow-list li span {
          font-size: 1.6rem; }
        .service-content .flow-list li:before {
          top: 2px; }

  .reason-list {
    letter-spacing: -.5em; }
    .reason-list li {
      letter-spacing: normal;
      display: inline-block;
      vertical-align: top;
      width: 324px;
      margin: 0 14px 0 0;
      padding: 1.0em;
      min-height: 700px; }
      .reason-list li h3,
      .reason-list li p {
        letter-spacing: .1em; }
      .reason-list li h3 {
        font-size: 2.4rem; }
        .reason-list li h3:before {
          font-size: 2.4rem;
          width: 40px;
          height: 40px; }
      .reason-list li p {
        font-size: 1.6rem; }

  .review-item {
    overflow: hidden;
    padding: 35px 40px; }
    .review-item:nth-child(2n) .review-img {
      float: right; }
    .review-item:nth-child(2n) .review-txt {
      float: left; }
    .review-item .review-img {
      margin: 0;
      width: 240px;
      float: left; }
      .review-item .review-img p {
        font-size: 2.2rem; }
    .review-item .review-txt {
      float: right;
      width: 630px; }
      .review-item .review-txt h3 {
        text-align: center;
        font-size: 3.0rem;
        line-height: 1.4;
        margin: 0 0 1.0em; }
        .review-item .review-txt h3:before, .review-item .review-txt h3:after {
          content: "";
          position: absolute;
          width: 32px;
          height: 28px; }
    .review-item .review-txt-inner p {
      font-size: 1.8rem;
      line-height: 1.8; }

  .contact-btn {
    margin: 0 0 60px;
    padding: 0 0 60px; }
    .contact-btn ul {
      letter-spacing: -.5em; }
      .contact-btn ul li {
        display: inline-block;
        vertical-align: top;
        width: 490px;
        letter-spacing: normal; }
        .contact-btn ul li:last-child {
          margin: 0 0 0 20px; }
        .contact-btn ul li span {
          font-size: 2.2rem;
          letter-spacing: .1em; }

  .mail-lead {
    font-size: 3.6rem; }

  .mail-time {
    font-size: 2.2rem; }

  .band-title {
    font-size: 5.0rem;
    padding: 0.75em 0; }
    .band-title:before {
      bottom: -45px;
      border-top: 30px solid #2e9f32; }

  .campaign-wrap {
    padding: 35px 0 0; }
    .campaign-wrap .campaign-item {
      width: 950px;
      margin: 0 auto; }
      .campaign-wrap .campaign-item .campaign-img,
      .campaign-wrap .campaign-item .campaign-txt {
        vertical-align: middle; }
      .campaign-wrap .campaign-item .campaign-img {
        width: 332px;
        margin: 0 50px 0 0; }
      .campaign-wrap .campaign-item .campaign-txt {
        width: 568px; }
        .campaign-wrap .campaign-item .campaign-txt p.top-lead {
          font-size: 4.0rem; }
          .campaign-wrap .campaign-item .campaign-txt p.top-lead span {
            font-size: 5.0rem; }
        .campaign-wrap .campaign-item .campaign-txt p.mid-lead {
          font-size: 4.0rem; }
          .campaign-wrap .campaign-item .campaign-txt p.mid-lead span {
            font-size: 4.4rem;
            letter-spacing: .1em;
            border-radius: 20px; }
        .campaign-wrap .campaign-item .campaign-txt p.row-lead {
          font-size: 6.5rem;
          letter-spacing: .1em; }

  .price-wrap {
    padding: 90px 0 0; }

  .price-title,
  .op-title {
    font-size: 4.0rem;
    margin: 0 0 1.0em; }

  .price-content {
    margin: 0 0 100px; }
    .price-content:nth-child(2) {
      margin: 0 0 150px; }

  .price-attention {
    padding: 1.5em 3.0em;
    margin: 100px 0 0; }
    .price-attention:before {
      width: 50px;
      height: 30px;
      top: -65px; }
    .price-attention ul li {
      font-size: 2.0rem;
      margin: 0;
      line-height: 2.0; }

  .pack-item {
    padding: 0; }
    .pack-item ul {
      letter-spacing: -.5em;
      width: 662px;
      margin: 0 auto; }
      .pack-item ul li {
        letter-spacing: normal;
        display: inline-block;
        vertical-align: top;
        width: 324px;
        margin: 0 14px 0 0; }
        .pack-item ul li h4, .pack-item ul li p {
          letter-spacing: .05em; }
        .pack-item ul li h4 {
          font-size: 3.0rem; }
        .pack-item ul li .pack-price {
          font-size: 5.0rem;
          margin: 0 0 20px; }
          .pack-item ul li .pack-price span {
            font-size: 3.4rem; }
        .pack-item ul li .pack-txt {
          font-size: 1.6rem; }
        .pack-item ul li .pack-inner {
          min-height: 362px; }

  #sp-contact {
    display: none; }

  .scroll-btn-sub {
    width: 510px;
    right: 0;
    display: block;
    position: fixed;
    bottom: 0;
    margin: 0;
    z-index: 9999; }
    .scroll-btn-sub ul {
      letter-spacing: -.4em; }
      .scroll-btn-sub ul li {
        letter-spacing: normal;
        display: inline-block;
        vertical-align: middle;
        width: 49%;
        box-sizing: border-box;
        border: 1px solid #fff;
        position: relative;
        text-align: center;
        font-size: 2.0rem;
        font-weight: bold;
        box-shadow: 0 1px 13px rgba(0, 0, 0, 0.1);
        padding: 0.5em 0;
        color: #fff;
        line-height: 1.4;
        max-height: 66px; }
        .scroll-btn-sub ul li .mini {
          font-size: 1.4rem;
          display: inline-block; }
        .scroll-btn-sub ul li a {
          color: #fff;
          text-decoration: none;
          display: block;
          position: relative; }
          .scroll-btn-sub ul li a:before {
            content: "";
            display: block;
            position: absolute;
            top: 40%;
            left: 3%;
            width: 12px;
            height: 12px;
            background: url(../img/arrow04.png) no-repeat;
            background-size: cover; }
          .scroll-btn-sub ul li a:hover {
            opacity: 0.6; }
        .scroll-btn-sub ul li:first-child {
          background: #ff7f00;
          letter-spacing: .05em;
          font-size: 2.2rem;
          line-height: 1.3; }
          .scroll-btn-sub ul li:first-child:before {
            content: "";
            position: absolute;
            background: url(../img/icon_tel.png) no-repeat;
            background-size: contain;
            width: 24px;
            height: 48px;
            right: 8px;
            top: 12px; }
        .scroll-btn-sub ul li:last-child {
          margin: 0 0 0 2%;
          background: #009f00; }
          .scroll-btn-sub ul li:last-child:before {
            content: "";
            position: absolute;
            background: url(../img/icon_line.png) no-repeat;
            background-size: contain;
            width: 50px;
            height: 48px;
            right: 5px;
            top: 10px; }
        .scroll-btn-sub ul li span {
          display: block;
          font-size: 1.2rem;
          font-weight: normal;
          letter-spacing: normal; }

  .scroll-btn-pc {
    display: block;
    position: fixed;
    right: 0;
    top: 0;
    width: 80px;
    z-index: 9999; }
    .scroll-btn-pc:hover {
      opacity: 0.8; }
    .scroll-btn-pc a {
      display: block; }

  .proof-block {
    padding: 30px 0; }
    .proof-block .inner {
      width: 600px; } }
