body {
  min-height: 100%;
  background-color: #efede2;
  -webkit-text-size-adjust: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 100%;
  line-height: normal;
  font-style: normal;
  color: #333333; }

.arial {
  font-family: 'Arial'; }

.end_news {
  background: #E0146E;
  color: #ffffff;
  position: absolute;
  font-size: 24px;
  top: 0;
  right: 0;
  z-index: 100;
  height: 80px;
  width: 100%;
  max-width: 100%;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center; }
  @media all and (max-width: 1012px) {
    .end_news {
      font-size: 2.1vw; } }
  @media all and (max-width: 767px) {
    .end_news {
      display: block;
      height: auto;
      padding: 3vw 0;
      line-height: 1.3;
      font-size: 4.5vw;
      font-weight: bold; } }
  .end_news br {
    display: none; }
    @media all and (max-width: 767px) {
      .end_news br {
        display: inline; } }
  .end_news span {
    font-size: 32px; }
    @media all and (max-width: 1012px) {
      .end_news span {
        font-size: 3.5vw; } }
    @media all and (max-width: 767px) {
      .end_news span {
        font-size: 8vw; } }
  .end_news a {
    color: #fff;
    font-size: 15px;
    text-decoration: underline;
    margin-left: 20px;
    margin-top: 9px; }
    @media all and (max-width: 1012px) {
      .end_news a {
        font-size: 1.4vw; } }
    @media all and (max-width: 767px) {
      .end_news a {
        font-size: 3vw;
        text-decoration: underline;
        margin-top: 3vw;
        margin-left: 0;
        display: inline-block; } }

.kv {
  background: url(../image/kv_bg.png) no-repeat;
  background-size: contain;
  position: relative;
  margin-top: 80px; }
  @media all and (max-width: 767px) {
    .kv {
      margin-top: 35vw; } }
  .kv:before, .kv:after {
    content: "";
    width: 1.4%;
    width: 40px;
    height: 100%;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    background: url(../image/bg_left.png) repeat-y;
    background-size: contain; }
  .kv:after {
    left: auto;
    right: 0;
    background: url(../image/bg_right.png) repeat-y;
    background-size: contain; }
  @media all and (max-width: 767px) {
    .kv:before, .kv:after {
      width: 3.2%; } }
  .kv__conts__top {
    background: url(../image/kv_bg.png) no-repeat center top;
    background-size: cover;
    padding-bottom: 32px;
    position: relative;
    z-index: 1; }
    @media all and (max-width: 767px) {
      .kv__conts__top {
        padding-bottom: 7.4666666667vw; } }
    .kv__conts__top header {
      padding: 46px 0 0 0;
      margin: 0 auto 22px;
      width: 80%;
      max-width: 1180px;
      position: relative; }
      @media all and (max-width: 767px) {
        .kv__conts__top header {
          padding: 4.5333333333vw 0 0 8.8vw;
          margin: 0 auto 5.8666666667vw;
          width: 100%; }
          .kv__conts__top header img {
            width: 26.1333333333vw; } }
    .kv__conts__top > div {
      max-width: 1012px;
      width: 80%;
      margin: 0 auto;
      position: relative; }
      @media all and (max-width: 767px) {
        .kv__conts__top > div {
          width: 100%; } }
      .kv__conts__top > div p {
        width: 54.15%;
        max-width: 548px;
        text-align: center; }
        .kv__conts__top > div p img {
          width: 358px; }
        @media (max-width: 900px) {
          .kv__conts__top > div p {
            margin: 0 auto;
            width: 86%;
            max-width: 800px; } }
        @media all and (max-width: 767px) {
          .kv__conts__top > div p {
            width: 100%; }
            .kv__conts__top > div p img {
              width: 68.2666666667vw; } }
  .kv__conts__bottom {
    background: #fff;
    padding: 36px 0 48px;
    position: relative;
    z-index: 2;
    font-weight: 500; }
    @media all and (max-width: 767px) {
      .kv__conts__bottom {
        padding: 5.8666666667vw 0 8.2666666667vw; } }
    .kv__conts__bottom > div {
      max-width: 1012px;
      width: 80%;
      margin: 0 auto;
      position: relative; }
      @media all and (max-width: 767px) {
        .kv__conts__bottom > div {
          width: 100%; } }
      .kv__conts__bottom > div .whats__card {
        background: #EFEDE2;
        /*box-shadow:0px 7px 7px rgba(0, 0, 0, 0.2);*/
        border: 1px solid #C7C0A5;
        width: 54.15%;
        max-width: 548px;
        box-sizing: border-box;
        margin: 0;
        position: relative;
        border-radius: 24px;
        text-align: center;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 55px 20px 20px; }
        @media (max-width: 900px) {
          .kv__conts__bottom > div .whats__card {
            margin: 0 auto;
            width: 86%;
            max-width: 800px; } }
        @media all and (max-width: 767px) {
          .kv__conts__bottom > div .whats__card {
            width: 85.3333333333vw;
            max-width: 100%;
            border-radius: 5.3333333333vw;
            padding: 9.0666666667vw 2.6666666667vw 3.2vw;
            box-shadow: 0px 1.5vw 1.5vw rgba(0, 0, 0, 0.2); } }
        .kv__conts__bottom > div .whats__card h2 {
          color: #E0146E;
          margin-bottom: 7px;
          font-size: 24px;
          font-weight: bold;
          position: absolute;
          top: -16px;
          left: 0;
          right: 0;
          margin: auto; }
          @media all and (max-width: 767px) {
            .kv__conts__bottom > div .whats__card h2 {
              font-size: 4vw;
              margin-bottom: 2.6666666667vw;
              top: -3.7vw; } }
          @media (max-width: 767px) {
            .kv__conts__bottom > div .whats__card h2 img {
              width: 66.733333vw; } }
        .kv__conts__bottom > div .whats__card p {
          font-size: 13px;
          line-height: 1.7;
          padding: 0 1.7em; }
          .kv__conts__bottom > div .whats__card p br.pc-hide {
            display: none; }
          @media all and (max-width: 767px) {
            .kv__conts__bottom > div .whats__card p {
              font-size: 2.4vw; }
              .kv__conts__bottom > div .whats__card p br.pc-hide {
                display: inline; } }
        .kv__conts__bottom > div .whats__card__lead {
          color: #005920;
          margin-bottom: 6px;
          font-size: 18px !important;
          font-weight: bold !important;
          line-height: 1.4 !important; }
          @media all and (max-width: 767px) {
            .kv__conts__bottom > div .whats__card__lead {
              font-size: 3.2vw !important;
              margin-bottom: 1.0666666667vw !important; } }
          .kv__conts__bottom > div .whats__card__lead span {
            font-size: 28px; }
            @media all and (max-width: 767px) {
              .kv__conts__bottom > div .whats__card__lead span {
                font-size: 5.3333333333vw; } }
        .kv__conts__bottom > div .whats__card__feebox {
          background: #FAF9F4;
          border-radius: 24px;
          position: relative;
          padding: 10px 0px 23px 0;
          width: 100%;
          max-width: 400px;
          margin: 15px auto 0; }
          @media all and (max-width: 767px) {
            .kv__conts__bottom > div .whats__card__feebox {
              width: 95%;
              max-width: 100%;
              padding: 3vw 0px 5vw 0; } }
          .kv__conts__bottom > div .whats__card__feebox:before {
            display: block;
            content: "";
            width: 94.6%;
            height: 90.2%;
            border-radius: 20px;
            border: #ED80B0 1px solid;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%); }
            @media all and (max-width: 767px) {
              .kv__conts__bottom > div .whats__card__feebox:before {
                border-radius: 4.2666666667vw;
                height: 93.2%; } }
          .kv__conts__bottom > div .whats__card__feebox:after {
            display: block;
            content: "";
            width: 91.6%;
            height: 84.2%;
            border-radius: 16px;
            border: #ED80B0 2px solid;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%); }
            @media all and (max-width: 767px) {
              .kv__conts__bottom > div .whats__card__feebox:after {
                border-radius: 3.7333333333vw;
                height: 86.6%; } }
        .kv__conts__bottom > div .whats__card__fee {
          color: #E0146E;
          font-size: 30px !important;
          display: flex;
          align-items: center;
          justify-content: center;
          margin-bottom: -10px;
          padding: 0 !important; }
          @media all and (max-width: 767px) {
            .kv__conts__bottom > div .whats__card__fee {
              font-size: 5.6vw !important;
              margin-bottom: -3vw; } }
          .kv__conts__bottom > div .whats__card__fee small {
            font-size: 17px;
            font-weight: bold;
            color: #FFFFFF;
            padding: 5px 15px;
            background: #E0146E;
            border-radius: 20px; }
            @media all and (max-width: 767px) {
              .kv__conts__bottom > div .whats__card__fee small {
                font-size: 3.4666666667vw;
                padding: .5vw 3vw; } }
          .kv__conts__bottom > div .whats__card__fee span {
            font-size: 49px;
            font-family: 'Arial';
            font-weight: bold;
            padding-left: 0.2em; }
            @media all and (max-width: 767px) {
              .kv__conts__bottom > div .whats__card__fee span {
                font-size: 9.6vw; } }
        .kv__conts__bottom > div .whats__card dl {
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-items: center;
          margin: 0 auto;
          width: 18.6em; }
          @media all and (max-width: 767px) {
            .kv__conts__bottom > div .whats__card dl {
              width: 62.6666666667vw; } }
          .kv__conts__bottom > div .whats__card dl dt {
            color: #E0146E;
            font-weight: bold;
            text-align: center;
            position: relative;
            font-size: 16px;
            width: 100%; }
            @media all and (max-width: 767px) {
              .kv__conts__bottom > div .whats__card dl dt {
                font-size: 4.2666666667vw; } }
            .kv__conts__bottom > div .whats__card dl dt span {
              font-size: 17px;
              position: relative;
              z-index: 2; }
              @media all and (max-width: 767px) {
                .kv__conts__bottom > div .whats__card dl dt span {
                  font-size: 2.9333333333vw; } }
            .kv__conts__bottom > div .whats__card dl dt:before {
              display: block;
              content: "";
              height: 3px;
              width: 100%;
              background: #E0146E;
              top: 49%;
              left: 0;
              position: absolute;
              z-index: 0; }
              @media all and (max-width: 767px) {
                .kv__conts__bottom > div .whats__card dl dt:before {
                  height: 0.5333333333vw; } }
            .kv__conts__bottom > div .whats__card dl dt:after {
              display: block;
              content: "";
              height: 100%;
              width: 6em;
              background: #FAF9F4;
              top: 50%;
              left: 50%;
              position: absolute;
              transform: translateX(-50%) translateY(-50%);
              z-index: 1; }
              @media all and (max-width: 767px) {
                .kv__conts__bottom > div .whats__card dl dt:after {
                  width: 21.3333333333vw;
                  height: 5.3333333333vw; } }
          .kv__conts__bottom > div .whats__card dl dd {
            text-align: center;
            font-size: 14px;
            color: #E0146E; }
            @media all and (max-width: 767px) {
              .kv__conts__bottom > div .whats__card dl dd {
                font-size: 2.9333333333vw; } }
            .kv__conts__bottom > div .whats__card dl dd span {
              font-size: 32px;
              font-family: 'Arial';
              font-weight: bold;
              vertical-align: middle;
              padding: 0 0.15em; }
              @media all and (max-width: 767px) {
                .kv__conts__bottom > div .whats__card dl dd span {
                  font-size: 6.6666666667vw; } }
        .kv__conts__bottom > div .whats__card__woman {
          position: absolute;
          width: 32.37%;
          height: auto;
          z-index: 4;
          right: 0;
          top: 0;
          transform: translate(-22.84%, -64.6%); }
          @media all and (max-width: 767px) {
            .kv__conts__bottom > div .whats__card__woman {
              width: 28vw; } }
      .kv__conts__bottom > div img.phone {
        position: absolute;
        z-index: 1;
        right: 30px;
        bottom: -6px; }
        @media (max-width: 1100px) {
          .kv__conts__bottom > div img.phone {
            width: 30vw;
            right: 3vw; } }
        @media (max-width: 900px) {
          .kv__conts__bottom > div img.phone {
            display: none; } }
    .kv__conts__bottom .whats__btn-entry {
      display: none; }
      @media all and (max-width: 767px) {
        .kv__conts__bottom .whats__btn-entry {
          display: flex;
          align-items: center;
          justify-content: center;
          width: 68.2666666667vw;
          height: 18.6666666667vw;
          margin: 6.9333333333vw auto 0;
          border-radius: 18.6666666667vw;
          background: #E0146E;
          color: #fff;
          font-size: 5.3333333333vw;
          box-shadow: 0px 1.5vw 1.5vw rgba(0, 0, 0, 0.2);
          cursor: pointer; } }

.service {
  background: #EFEDE2;
  background-size: 100% auto;
  text-align: center;
  padding: 80px 0 90px; }
  @media all and (max-width: 767px) {
    .service {
      padding: 11.2vw 0 18.6666666667vw; } }
  .service h2 {
    line-height: 1.4;
    font-size: 42px;
    margin-bottom: 20px; }
    @media all and (max-width: 767px) {
      .service h2 {
        font-size: 7.4666666667vw;
        margin-bottom: 5.8666666667vw; } }
  .service__lead {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 120px; }
    @media all and (max-width: 767px) {
      .service__lead {
        font-size: 3.2vw;
        margin-bottom: 9.6vw;
        padding: 0 5vw; } }
  .service__bmsg {
    font-size: 18px;
    color: #005920;
    font-weight: bold; }
    @media all and (max-width: 767px) {
      .service__bmsg {
        display: none; } }
  .service__list {
    width: 88%;
    max-width: 1090px;
    margin: 0 auto 30px; }
    @media all and (max-width: 767px) {
      .service__list {
        width: 85.3333333333vw;
        margin: 0 auto 0; } }
    .service__list dl {
      line-height: 1;
      display: flex;
      margin-bottom: 4px; }
      @media all and (max-width: 767px) {
        .service__list dl {
          flex-direction: column; } }
      .service__list dl dt {
        width: 412px;
        width: 37.8%;
        background: #fff;
        color: #005920; }
        @media (max-width: 1000px) {
          .service__list dl dt {
            width: 30%;
            padding-left: 2%;
            padding-right: 2%; } }
        @media all and (max-width: 767px) {
          .service__list dl dt {
            width: 100%;
            background: none; } }
      .service__list dl dd {
        display: flex;
        width: 62%; }
        @media (max-width: 1000px) {
          .service__list dl dd {
            width: 70%; } }
        @media all and (max-width: 767px) {
          .service__list dl dd {
            width: 100%;
            justify-content: space-between; } }
        .service__list dl dd > div {
          width: 210px;
          margin-left: 18px;
          background: #fff;
          display: flex;
          align-items: center;
          justify-content: center; }
          .service__list dl dd > div.bronze {
            color: #CA7858; }
          .service__list dl dd > div.silver {
            color: #A59E92; }
          .service__list dl dd > div.gold {
            color: #C9A065; }
          @media (max-width: 1000px) {
            .service__list dl dd > div {
              margin-left: 2%; } }
          @media all and (max-width: 767px) {
            .service__list dl dd > div {
              margin-left: 0;
              width: 27.4666666667vw; } }
      @media all and (max-width: 767px) {
        .service__list dl.head {
          flex-direction: column-reverse;
          margin-bottom: 10.9333333333vw; } }
      .service__list dl.head dt {
        background: #006A2C;
        min-height: 166px;
        border-radius: 16px 0 0 0;
        color: #fff;
        font-size: 21px;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center; }
        @media all and (max-width: 767px) {
          .service__list dl.head dt {
            min-height: 0;
            height: 17.0666666667vw !important;
            font-size: 4.8vw;
            border-radius: 0;
            margin-top: 14.6666666667vw; } }
      @media all and (max-width: 767px) {
        .service__list dl.head dd {
          display: block; } }
      .service__list dl.head dd > div {
        position: relative; }
        @media all and (max-width: 767px) {
          .service__list dl.head dd > div {
            width: 100%;
            display: flex;
            height: 30.6666666667vw;
            justify-content: space-between; }
            .service__list dl.head dd > div:not(:last-of-type) {
              margin-bottom: 4vw; } }
        .service__list dl.head dd > div .ttl {
          max-width: 150px;
          width: 90%;
          height: 68px;
          padding-top: 16px;
          border-radius: 16px 16px 0 0;
          font-size: 14px;
          display: flex;
          flex-direction: column;
          align-items: center;
          color: #fff;
          position: absolute;
          left: 50%;
          top: 0;
          transform: translate(-50%, -100%);
          font-weight: 500; }
          .service__list dl.head dd > div .ttl span {
            font-size: 24px;
            font-weight: bold;
            font-family: 'Arial';
            margin-bottom: 2px; }
            @media all and (max-width: 767px) {
              .service__list dl.head dd > div .ttl span {
                font-size: 6.4vw; } }
          .service__list dl.head dd > div .ttl img.i_nyuukai {
            width: 52px;
            height: 52px;
            position: absolute;
            left: 0;
            top: 0;
            transform: translate(-40%, -40%); }
            @media all and (max-width: 767px) {
              .service__list dl.head dd > div .ttl img.i_nyuukai {
                width: 13.8666666667vw;
                height: 13.8666666667vw;
                transform: translate(-20%, -16%); } }
          @media all and (max-width: 767px) {
            .service__list dl.head dd > div .ttl {
              position: relative;
              left: 0;
              width: 50%;
              max-width: 50%;
              height: 100%;
              top: 0;
              border-radius: 0;
              transform: translate(0, 0);
              display: flex;
              flex-direction: column;
              align-items: center;
              justify-content: center;
              font-size: 3.7333333333vw;
              padding-top: 0; } }
        .service__list dl.head dd > div.bronze .ttl {
          background: #CA7858; }
        .service__list dl.head dd > div.silver .ttl {
          background: #A59E92; }
        .service__list dl.head dd > div.gold .ttl {
          background: #C9A065; }
        .service__list dl.head dd > div .cont {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          padding: 16px 0 13px;
          line-height: 1; }
          @media all and (max-width: 767px) {
            .service__list dl.head dd > div .cont {
              width: 50%; } }
          .service__list dl.head dd > div .cont img {
            width: 120px;
            margin-bottom: 10px;
            filter: drop-shadow(0 5px 5px rgba(0, 0, 0, 0.1)); }
            @media all and (max-width: 767px) {
              .service__list dl.head dd > div .cont img {
                display: none; } }
          .service__list dl.head dd > div .cont span.small {
            font-size: 13px;
            margin-bottom: 5px;
            color: #444;
            font-weight: 500; }
            @media all and (max-width: 767px) {
              .service__list dl.head dd > div .cont span.small {
                font-size: 3.4666666667vw; } }
          .service__list dl.head dd > div .cont span.fee {
            font-size: 22px;
            font-weight: 500; }
            @media all and (max-width: 767px) {
              .service__list dl.head dd > div .cont span.fee {
                font-size: 4.5333333333vw; } }
            .service__list dl.head dd > div .cont span.fee small {
              font-family: 'Arial';
              font-size: 28px;
              font-weight: bold; }
              @media all and (max-width: 767px) {
                .service__list dl.head dd > div .cont span.fee small {
                  display: block;
                  font-size: 5.6vw;
                  margin: 0.5333333333vw 0; } }
      .service__list dl.item {
        /*
                        @media all and (max-width: 767px) {
                            &.od2,
                            &.man10,
                            &.raiten{
                                dd{
                                    > div{
                                        padding-top:pxtovw(26);
                                        padding-bottom:pxtovw(2);
                                    }
                                }
                            }
                        }
                        */ }
        @media all and (max-width: 767px) {
          .service__list dl.item:not(:last-of-type) {
            margin-bottom: 11.7333333333vw; } }
        .service__list dl.item dt {
          display: flex;
          padding: 23px 0 23px 25px;
          font-weight: bold;
          align-items: center; }
          @media (max-width: 1000px) {
            .service__list dl.item dt {
              flex-direction: column;
              align-items: center;
              padding-left: 2%;
              padding-right: 2%; } }
          @media all and (max-width: 767px) {
            .service__list dl.item dt {
              padding: 0 0 5.0666666667vw 0; } }
          .service__list dl.item dt > p {
            width: 74px;
            height: 74px;
            margin-right: 17px; }
            @media (max-width: 1000px) {
              .service__list dl.item dt > p {
                margin: 0; } }
            @media all and (max-width: 767px) {
              .service__list dl.item dt > p {
                width: 22.9333333333vw;
                height: 22.9333333333vw;
                margin-bottom: 3.7333333333vw; } }
            .service__list dl.item dt > p img {
              border-radius: 100%;
              background: #EFE9DE;
              width: 100%;
              height: auto; }
              @media all and (max-width: 767px) {
                .service__list dl.item dt > p img {
                  background: #fff; } }
          .service__list dl.item dt > div {
            flex: 1;
            text-align: left; }
            @media (max-width: 1000px) {
              .service__list dl.item dt > div {
                text-align: center; } }
            .service__list dl.item dt > div h3 {
              font-size: 18px;
              position: relative;
              line-height: 1.4;
              padding-bottom: 8px; }
              @media all and (max-width: 767px) {
                .service__list dl.item dt > div h3 {
                  font-size: 4.8vw;
                  padding-bottom: 1.8666666667vw;
                  margin-bottom: 1.0666666667vw; } }
              .service__list dl.item dt > div h3:after {
                content: "";
                width: 40px;
                height: 3px;
                background: #005920;
                position: absolute;
                bottom: 0;
                left: 0; }
                @media (max-width: 1000px) {
                  .service__list dl.item dt > div h3:after {
                    left: 50%;
                    transform: translateX(-50%); } }
                @media all and (max-width: 767px) {
                  .service__list dl.item dt > div h3:after {
                    width: 10.6666666667vw;
                    height: 0.8vw; } }
            .service__list dl.item dt > div p {
              padding-top: 5px;
              line-height: 1.4;
              font-size: 14px; }
              @media all and (max-width: 767px) {
                .service__list dl.item dt > div p {
                  font-size: 3.7333333333vw; } }
              .service__list dl.item dt > div p .arial {
                vertical-align: middle;
                font-weight: bold;
                line-height: 1;
                padding-left: 0.2em; }
                .service__list dl.item dt > div p .arial.txt-l {
                  font-size: 30px; }
                  @media all and (max-width: 767px) {
                    .service__list dl.item dt > div p .arial.txt-l {
                      font-size: 8vw; } }
              .service__list dl.item dt > div p .txt-l2 {
                line-height: 1;
                font-size: 20px;
                vertical-align: middle; }
                @media all and (max-width: 767px) {
                  .service__list dl.item dt > div p .txt-l2 {
                    font-size: 5.3333333333vw; } }
        .service__list dl.item dd .arial {
          font-size: 34px;
          font-weight: bold; }
          @media all and (max-width: 767px) {
            .service__list dl.item dd .arial {
              font-size: 5.6vw; } }
          .service__list dl.item dd .arial.txt-l {
            font-size: 42px; }
            @media all and (max-width: 767px) {
              .service__list dl.item dd .arial.txt-l {
                font-size: 6.4vw; } }
          @media all and (max-width: 767px) {
            .service__list dl.item dd .arial.txt-dash {
              font-size: 10.6666666667vw;
              font-weight: normal;
              line-height: 0.8;
              transform: translateY(20%); } }
          .service__list dl.item dd .arial.txt-maru {
            font-size: 100px;
            line-height: 0; }
            @media all and (max-width: 767px) {
              .service__list dl.item dd .arial.txt-maru {
                font-size: 29.3333333333vw;
                line-height: 0.8; } }
        .service__list dl.item dd .txt-m {
          font-size: 24px;
          padding-left: 0.2em;
          vertical-align: text-bottom;
          font-weight: 500; }
          @media all and (max-width: 767px) {
            .service__list dl.item dd .txt-m {
              font-size: 3.7333333333vw; } }
        .service__list dl.item dd .icon img {
          vertical-align: middle; }
        @media all and (max-width: 767px) {
          .service__list dl.item dd > div {
            padding-top: 16.5333333333vw;
            padding-bottom: 6.1333333333vw;
            position: relative; }
            .service__list dl.item dd > div:before {
              color: #fff;
              font-weight: bold;
              font-family: 'Arial';
              font-size: 4.2666666667vw;
              text-align: center;
              height: 10.6666666667vw;
              display: flex;
              align-items: center;
              justify-content: center;
              position: absolute;
              top: 0;
              width: 100%; }
            .service__list dl.item dd > div.bronze:before {
              content: "BRONZE";
              background: #CA7858; }
            .service__list dl.item dd > div.silver:before {
              content: "SILVER";
              background: #A59E92; }
            .service__list dl.item dd > div.gold:before {
              content: "GOLD";
              background: #C7B163; }
            .service__list dl.item dd > div.icon {
              padding: 14.6666666667vw 0 3.7333333333vw;
              display: flex;
              flex-direction: column;
              justify-content: center;
              align-items: center; }
              .service__list dl.item dd > div.icon .icon-dash img {
                width: 4.8vw; }
              .service__list dl.item dd > div.icon .icon-maru img {
                width: 10.9333333333vw; } }

footer {
  background: #006A2C;
  height: 60px; }
  @media (max-width: 767px) {
    footer {
      height: 42px; } }

/*
* storemodal
*/
.storemodal_bg {
  background: #5F5F5F;
  mix-blend-mode: multiply;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  opacity: 0;
  pointer-events: none;
  transition-duration: 0.4s; }
  .storemodal_bg.show {
    opacity: 1;
    pointer-events: all; }

.storemodal {
  width: 100vw;
  height: 100vh;
  position: fixed;
  z-index: 1000;
  top: 0;
  opacity: 0;
  pointer-events: none;
  transition-duration: 0.4s; }
  .storemodal__cont {
    width: 76.53vw;
    max-width: 578px;
    height: 84.48vw;
    position: absolute;
    z-index: 1000;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -40%);
    background: #fff;
    border-radius: 2.6vw;
    box-shadow: 0px 0.65vw 1.3vw #00000080;
    transition-delay: 0.4s;
    transition-duration: 0.6s;
    pointer-events: none;
    opacity: 0; }
    .storemodal__cont h3 {
      height: 14.47vw;
      background: #006A2C;
      display: flex;
      justify-content: center;
      align-items: center;
      color: #fff;
      font-weight: bold;
      font-size: 4.17vw;
      border-radius: 2.6vw 2.6vw 0 0;
      margin-bottom: 4.4vw; }
    .storemodal__cont .storemodal__storewrapper {
      width: 82%;
      margin: 0 auto;
      padding: 0 4.6vw 0 1vw;
      position: relative;
      height: 41.8vw;
      overflow-y: scroll; }
      .storemodal__cont .storemodal__storewrapper::-webkit-scrollbar {
        width: 1.825vw;
        height: 1.825vw;
        background: #EDEDED;
        border-radius: 0.96vw; }
      .storemodal__cont .storemodal__storewrapper::-webkit-scrollbar-thumb {
        background: #A5C12F;
        border-radius: 0.96vw; }
      .storemodal__cont .storemodal__storewrapper__item {
        padding: 0 0 4.4vw 5.8vw;
        margin-bottom: 4.4vw;
        border-bottom: 1px solid #ccc; }
        .storemodal__cont .storemodal__storewrapper__item:last-child {
          border: none;
          margin-bottom: 0; }
        .storemodal__cont .storemodal__storewrapper__item input {
          display: none; }
        .storemodal__cont .storemodal__storewrapper__item label {
          font-size: 4.17vw;
          font-weight: bold;
          position: relative; }
          .storemodal__cont .storemodal__storewrapper__item label:before {
            position: absolute;
            top: 0.8vw;
            left: -5.8vw;
            content: "";
            width: 1.1em;
            height: 1.1em;
            border-radius: 50%;
            display: block;
            box-shadow: 0 0 2px #777; }
        .storemodal__cont .storemodal__storewrapper__item input:checked + label:after {
          position: absolute;
          top: 0.8vw;
          left: -5.8vw;
          content: "";
          width: 1.1em;
          height: 1.1em;
          border: solid 0.9vw #fff;
          background: #A5C12F;
          border-radius: 50%; }
        .storemodal__cont .storemodal__storewrapper__item p {
          padding-top: 0.13em;
          font-size: 3.12vw;
          text-decoration: underline; }
          .storemodal__cont .storemodal__storewrapper__item p a {
            color: #006A2C; }
            .storemodal__cont .storemodal__storewrapper__item p a i {
              display: inline-block;
              width: 3.3vw;
              height: 3.3vw;
              font-size: 0.6em;
              color: #fff;
              background: #006A2C;
              border-radius: 100%;
              display: inline-block;
              text-align: center;
              vertical-align: -0.25em;
              margin-left: 1vw;
              position: relative; }
              .storemodal__cont .storemodal__storewrapper__item p a i:before {
                content: "";
                display: block;
                position: absolute;
                width: 1vw;
                height: 1vw;
                border-top: solid 1px #fff;
                border-right: solid 1px #fff;
                top: 50%;
                left: 50%;
                transform: translate(-70%, -50%) rotate(45deg); }
    .storemodal__cont .ps__rail-y.ps--clicking .ps__thumb-y {
      background-color: #A5C12F !important; }
    .storemodal__cont .storemodal__btnwrapper {
      padding: 2.868vw 0 8.213vw;
      position: absolute;
      width: 100%;
      bottom: 0;
      text-align: center; }
      .storemodal__cont .storemodal__btnwrapper button {
        width: 47.45vw;
        height: 13.03vw;
        border-radius: 6.57vw;
        border: 0;
        font-size: 4vw;
        background: #DDDDDD;
        color: #A5A5A5;
        pointer-events: none;
        transition-duration: 0.3s; }
        .storemodal__cont .storemodal__btnwrapper button:hover {
          filter: brightness(1.2); }
        .storemodal__cont .storemodal__btnwrapper button.active {
          background: transparent linear-gradient(90deg, #A61B01 0%, #E73817 100%) 0% 0% no-repeat padding-box;
          box-shadow: 0px 1.3vw 2.6vw #00000052;
          color: #fff;
          pointer-events: all;
          cursor: pointer; }
    .storemodal__cont .b_close {
      position: absolute;
      right: 0;
      top: -40px;
      height: 36px;
      width: 36px;
      cursor: pointer;
      transition-duration: 0.3s; }
      .storemodal__cont .b_close:hover {
        opacity: 0.7; }
      .storemodal__cont .b_close:before, .storemodal__cont .b_close:after {
        content: "";
        display: block;
        width: 100%;
        height: 2px;
        position: absolute;
        top: 50%;
        background: #fff;
        transform: translateY(-50%) rotate(45deg); }
      .storemodal__cont .b_close:after {
        transform: translateY(-50%) rotate(-45deg); }
  .storemodal.show {
    opacity: 1;
    pointer-events: all; }
    .storemodal.show .storemodal__cont {
      transform: translate(-50%, -50%);
      pointer-events: all;
      opacity: 1; }
