@charset "UTF-8";
/* リキッドレイアウト対応 */
@font-face {
  src: url("https://dl.dropboxusercontent.com/s/6snqvg654tirsyv/HuiFontP109.eot");
  src: url("https://dl.dropboxusercontent.com/s/6snqvg654tirsyv/HuiFontP109.eot?#iefix") format("embedded-opentype"), url("https://dl.dropboxusercontent.com/s/7pscemjdvt0wyiq/HuiFontP109.woff") format("woff"), url("https://dl.dropboxusercontent.com/s/0w9uuopxrns8ehi/HuiFontP109.ttf") format("truetype"), url("https://dl.dropboxusercontent.com/s/xnnsbxtz8o6d98i/HuiFontP109.svg#HuiFontP109") format("svg");
  font-family: "fontHuiP";
}
@media screen and (min-width: 768px) {
  .u-mobile {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .u-desktop {
    display: none;
  }
}
body {
  color: #000000;
  font-family: "Noto Sans JP", sans-serif;
}

/* ヘッダーからスクロールした際の位置調整 */
html {
  scroll-padding-top: 5rem;
}
@media screen and (min-width: 768px) {
  html {
    scroll-padding-top: 6.25rem;
  }
}

@media (max-width: 767px) {
  html {
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  html {
    font-size: 1.3333333333vw;
  }
}
@media (min-width: 1200px) {
  html {
    font-size: 16px;
  }
}

/* pcの電話番号発信対応 */
@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

/* ホバー */
a,
button {
  color: inherit;
  text-decoration: none;
}
a:hover,
button:hover {
  opacity: 0.8;
}
@media screen and (min-width: 768px) {
  a,
  button {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  line-height: 1.5;
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  display: block;
  max-width: 100%;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
img:not([alt]) {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="10" /></filter></svg>#filter');
  -webkit-filter: blur(10px);
          filter: blur(10px);
}

/* フォームリセット */
input:not([type=radio]),
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

@media screen and (min-width: 768px) {
  .c-card01__balloonBox {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.c-card01__balloon {
  background: #d9f1f0;
  border-radius: 3.125rem;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  padding: 28px 25px 30px;
  padding: 1.75rem 1.5625rem 1.875rem;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .c-card01__balloon {
    border-radius: 50vw;
    margin-left: 0;
    margin-right: 0;
    margin-top: 1.875rem;
    padding: 1.5625rem 3.125rem 1.5625rem;
    width: 72.9166666667%;
  }
}

.c-card01__balloon:after {
  background-image: url(/img/img_customerBalloon_sp.png);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 16px;
  bottom: 1rem;
  content: "";
  display: block;
  height: 70px;
  height: 4.375rem;
  left: 51%;
  position: absolute;
  top: auto;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  width: 25px;
  width: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .c-card01__balloon:after {
    background-image: url(/img/img_customerBalloon_pc.png);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: auto;
    height: 2.1875rem;
    left: auto;
    right: 1.75rem;
    top: 50%;
    -webkit-transform: translate(100%, -50%);
            transform: translate(100%, -50%);
    width: 3.8125rem;
  }
}

.c-card01__txt {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 18px;
  font-size: 1.125rem;
  letter-spacing: 0.06em;
  line-height: 1.9;
}
@media screen and (min-width: 768px) {
  .c-card01__txt {
    font-size: 1.125rem;
    letter-spacing: 0.09em;
    line-height: 1.9;
  }
}

.c-card01__name {
  font-size: 18px;
  font-size: 1.125rem;
  margin-top: 15px;
  margin-top: 0.9375rem;
  padding-right: 15px;
  padding-right: 0.9375rem;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .c-card01__name {
    font-size: 1.125rem;
    letter-spacing: 0.04em;
    margin-top: -1.125rem;
    padding-right: 0.75rem;
  }
}

.c-card01__humanImg {
  height: 195px;
  height: 12.1875rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 42px;
  margin-top: 2.625rem;
  width: 195px;
  width: 12.1875rem;
}
@media screen and (min-width: 768px) {
  .c-card01__humanImg {
    height: 13.75rem;
    margin-left: auto;
    margin-right: 0.625rem;
    margin-top: 0;
    width: 13.75rem;
  }
}

.l-cntct {
  margin-top: 114px;
  margin-top: 7.125rem;
}
@media screen and (min-width: 768px) {
  .l-cntct {
    margin-top: 8.75rem;
  }
}

.l-flow01 {
  margin-top: 117px;
  margin-top: 7.3125rem;
}
@media screen and (min-width: 768px) {
  .l-flow01 {
    margin-top: 10.9375rem;
  }
}

.l-flow02 {
  margin-top: 72px;
  margin-top: 4.5rem;
}
@media screen and (min-width: 768px) {
  .l-flow02 {
    margin-top: 8.4375rem;
  }
}

.l-flow03 {
  margin-top: 75px;
  margin-top: 4.6875rem;
}
@media screen and (min-width: 768px) {
  .l-flow03 {
    margin-top: 9.5rem;
  }
}

.l-innerA {
  height: auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 23px;
  padding-left: 1.4375rem;
  padding-right: 23px;
  padding-right: 1.4375rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .l-innerA {
    max-width: calc(960px + 15rem);
    padding-left: 7.5rem;
    padding-right: 7.5rem;
  }
}

.l-plan {
  margin-top: 90px;
  margin-top: 5.625rem;
}
@media screen and (min-width: 768px) {
  .l-plan {
    margin-top: 6.875rem;
  }
}

.l-result {
  margin-top: 75px;
  margin-top: 4.6875rem;
}
@media screen and (min-width: 768px) {
  .l-result {
    margin-top: 9.375rem;
  }
}

.l-voice {
  margin-top: 125px;
  margin-top: 7.8125rem;
}
@media screen and (min-width: 768px) {
  .l-voice {
    margin-top: 7.5rem;
  }
}

.p-cntct {
  padding-bottom: 163px;
  padding-bottom: 10.1875rem;
}
@media screen and (min-width: 768px) {
  .p-cntct {
    padding-bottom: 16.5625rem;
  }
}

.p-cntct__ttl {
  color: #00a199;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 25px;
  font-size: 1.5625rem;
  font-weight: 300;
  line-height: 1.5;
  padding-left: 2px;
  padding-left: 0.125rem;
}
@media screen and (min-width: 768px) {
  .p-cntct__ttl {
    font-size: 2.41625rem;
    padding-left: 1.875rem;
  }
}

.p-contact__txt {
  font-family: "Kosugi Maru", sans-serif;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  line-height: 1.62;
  margin-top: 17px;
  margin-top: 1.0625rem;
}
@media screen and (min-width: 768px) {
  .p-contact__txt {
    font-size: 1.125rem;
    margin-top: 2.1875rem;
    padding-left: 2rem;
  }
}

.p-cntct__form {
  margin-top: 40px;
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-cntct__form {
    margin-left: auto;
    margin-right: auto;
    margin-top: 3.125rem;
    width: 93.75%;
  }
}

.p-cntctForm {
  font-family: "Kosugi Maru", sans-serif;
}
.p-cntctForm__item {
  margin-top: 18px;
  margin-top: 1.125rem;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 1.25rem;
  }
}

.p-cntctForm__ttl {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__ttl {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    font-size: 1.125rem;
  }
}

@media screen and (min-width: 768px) {
  .p-cntctForm__ttl label {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding-right: 0.9375rem;
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .p-cntctForm__ttl.required label {
    padding-right: 4.75rem;
  }
}

@media screen and (min-width: 768px) {
  .p-cntctForm__ttl.p-cntctForm__ttl--email.required label {
    padding-right: 0.8125rem;
  }
}

.p-cntctForm__ttl label span {
  display: inline-block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__ttl label span {
    padding-top: 0.625rem;
  }
}

@media screen and (min-width: 768px) {
  .p-cntctForm__ttl.p-cntctForm__ttl--email.required label span {
    padding-top: 0;
  }
}

.p-cntctForm__ttl.required label span::after {
  color: red;
  content: "[必須]";
  display: block;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translate(100%, -50%);
          transform: translate(100%, -50%);
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__ttl.required label span::after {
    font-size: 1.125rem;
    top: 0.625rem;
    -webkit-transform: translate(100%, 0);
            transform: translate(100%, 0);
  }
}

.p-cntctForm__ttl.p-cntctForm__ttl--email.required label span::after {
  bottom: 0;
  content: "[必須]";
  display: block;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  left: 0;
  letter-spacing: 0.1em;
  position: absolute;
  right: auto;
  top: auto;
  -webkit-transform: translate(0, 88%);
          transform: translate(0, 88%);
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__ttl.p-cntctForm__ttl--email.required label span::after {
    bottom: 0;
    font-size: 1.125rem;
    left: auto;
    right: 0;
    top: auto;
    -webkit-transform: translate(0, 100%);
            transform: translate(0, 100%);
  }
}

.p-cntctForm__radio {
  -moz-column-gap: 0.9375rem;
       -webkit-column-gap: 0.9375rem;
          column-gap: 0.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  margin-top: 10px;
  margin-top: 0.625rem;
  padding-left: 2px;
  padding-left: 0.125rem;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__radio {
    -moz-column-gap: 1.875rem;
         -webkit-column-gap: 1.875rem;
            column-gap: 1.875rem;
    font-size: 1.125rem;
    margin-top: 0;
    width: 78.8888888889%;
  }
}

.p-cntctForm__radio label {
  -moz-column-gap: 0.4375rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
       -webkit-column-gap: 0.4375rem;
               column-gap: 0.4375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-cntctForm__radio input[type=radio] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  border-radius: 0;
  cursor: pointer;
  display: block;
  font-size: inherit;
  height: 0;
  height: 19.6px;
  height: 1.225rem;
  margin: 0;
  padding: 0;
  position: relative;
  width: 0;
  width: 19.6px;
  width: 1.225rem;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__radio input[type=radio] {
    height: 1.721875rem;
    width: 1.721875rem;
  }
}

.p-cntctForm__radio input[type=radio]::before {
  background-color: transparent;
  border: 1px solid #969696;
  border-radius: 0.3125rem;
  bottom: 0;
  content: "";
  cursor: pointer;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  -webkit-transition: border ease-out 0.3s;
  transition: border ease-out 0.3s;
  width: 100%;
}
.p-cntctForm__radio input[type=radio]:checked::before {
  background-color: #00a199;
  border: 1px solid #00a199;
}
.p-cntctForm__radio input[type=radio]:checked:after {
  background-image: url(/img/ico_check.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: auto;
  content: "";
  display: block;
  height: 14px;
  height: 0.875rem;
  left: 50%;
  position: absolute;
  right: auto;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 14px;
  width: 0.875rem;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__radio input[type=radio]:checked:after {
    height: 1.125rem;
    width: 1.125rem;
  }
}

.p-cntctForm__radio span {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
}
.p-cntctForm__input {
  margin-top: 8px;
  margin-top: 0.5rem;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__input {
    margin-top: 0;
    width: 78.8888888889%;
  }
}

.p-cntctForm__input.p-cntctForm__input--email {
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__input.p-cntctForm__input--email {
    margin-top: 0;
  }
}

.p-cntctForm__input .p-cntctForm__ttl--descri {
  display: block;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 9px;
  font-size: 0.5625rem;
  font-weight: 400;
  letter-spacing: 0.2em;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__input .p-cntctForm__ttl--descri {
    font-size: 0.875rem;
  }
}

.p-cntctForm__input .p-cntctForm__ttl--descri + input {
  margin-top: 5px;
  margin-top: 0.3125rem;
}
.p-cntctForm__input input[type=text],
.p-cntctForm__input input[type=email] {
  border: 1px solid #bdbdbd;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  padding: 7px 11px;
  padding: 0.4375rem 0.6875rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__input input[type=text],
  .p-cntctForm__input input[type=email] {
    font-size: 1.125rem;
    padding: 0.625rem 0.9375rem;
  }
}

.p-cntctForm__example {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 9px;
  font-size: 0.5625rem;
  font-weight: 400;
  letter-spacing: 0.2em;
  margin-top: 5px;
  margin-top: 0.3125rem;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__example {
    font-size: 0.875rem;
  }
}

.p-cntctForm__input--tel {
  -moz-column-gap: 2.1875rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
       -webkit-column-gap: 2.1875rem;
               column-gap: 2.1875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__input--tel {
    -moz-column-gap: 3.125rem;
         -webkit-column-gap: 3.125rem;
            column-gap: 3.125rem;
  }
}

.p-cntctForm__inputTelBox {
  display: block;
  position: relative;
  width: 25.4285714286%;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__inputTelBox {
    width: 7.8125rem;
  }
}

.p-cntctForm__inputTelBox:not(:first-of-type):before {
  background-color: #8A8A8A;
  content: "";
  display: block;
  height: 1px;
  left: -10px;
  left: -0.625rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-100%, -50%);
          transform: translate(-100%, -50%);
  width: 15px;
  width: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__inputTelBox:not(:first-of-type):before {
    left: -0.9375rem;
    top: 50%;
    -webkit-transform: translate(-100%, -50%);
            transform: translate(-100%, -50%);
    width: 1.25rem;
  }
}

.p-cntctForm__input--tel input[type=tel] {
  border: 1px solid #bdbdbd;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  padding: 7px 11px;
  padding: 0.4375rem 0.6875rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__input--tel input[type=tel] {
    font-size: 1.125rem;
    padding: 0.625rem 0.9375rem;
    width: 7.8125rem;
  }
}

@media screen and (min-width: 768px) {
  .p-cntctForm__descr {
    padding-top: 0.625rem;
    width: 78.8888888889%;
  }
}

.p-cntctForm__textarea {
  border: 1px solid #bdbdbd;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  height: 145px;
  height: 9.0625rem;
  margin-top: 8px;
  margin-top: 0.5rem;
  padding: 7px 11px;
  padding: 0.4375rem 0.6875rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__textarea {
    font-size: 1.125rem;
    height: 12.5rem;
    margin-top: 0.625rem;
    width: 100%;
  }
}

.p-cntctForm__textarea textarea {
  display: block;
  height: 100%;
  width: 100%;
}

.p-cntctForm__submitBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 47px;
  margin-top: 2.9375rem;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__submitBox {
    margin-top: 3.75rem;
  }
}

.p-cntctForm__submitBox input[type=submit] {
  background-color: #d5d5d5;
  border-radius: 0.3125rem;
  color: #000000;
  display: block;
  font-size: 12.8px;
  font-size: 0.8rem;
  font-weight: 400;
  letter-spacing: 0.2em;
  padding: 7.5px 33px;
  padding: 0.46875rem 2.0625rem;
}
@media screen and (min-width: 768px) {
  .p-cntctForm__submitBox input[type=submit] {
    font-size: 1.125rem;
    padding: 0.625rem 2.8125rem;
  }
}

.p-error {
  height: auto;
  min-height: calc(100vh - 14.6875rem);
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 80px;
  padding-top: 5rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-error {
    min-height: calc(100vh - 21.25rem);
    padding-bottom: 10.625rem;
    padding-top: 10.625rem;
  }
}

.p-error__inner {
  height: auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 23px;
  padding-left: 1.4375rem;
  padding-right: 23px;
  padding-right: 1.4375rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-error__inner {
    max-width: calc(960px + 15rem);
    padding-left: 9.375rem;
    padding-right: 9.375rem;
  }
}

.p-error__ttl {
  color: #00a199;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 25px;
  font-size: 1.5625rem;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-error__ttl {
    font-size: 2.40625rem;
  }
}

.p-error h4 {
  font-family: "Kosugi Maru", sans-serif;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  line-height: 1.6214285714;
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .p-error h4 {
    font-size: 1.125rem;
    line-height: 1.8888888889;
    margin-top: 5.25rem;
  }
}

.p-error__errorMessage {
  font-family: "Kosugi Maru", sans-serif;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  line-height: 1.6214285714;
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .p-error__errorMessage {
    font-size: 1.125rem;
    line-height: 1.8888888889;
    margin-top: 5.25rem;
  }
}

.p-error__txt {
  font-family: "Kosugi Maru", sans-serif;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  line-height: 1.6214285714;
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .p-error__txt {
    font-size: 1.125rem;
    line-height: 1.8888888889;
    margin-top: 5.25rem;
  }
}

.p-error__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.2em;
  margin-top: 63px;
  margin-top: 3.9375rem;
}
@media screen and (min-width: 768px) {
  .p-error__btn {
    font-size: 1.125rem;
    margin-top: 5.8125rem;
  }
}

.p-error__btn a {
  background-color: #d5d5d5;
  border-radius: 0.3125rem;
  display: block;
  padding: 8px 17px;
  padding: 0.5rem 1.0625rem;
}
@media screen and (min-width: 768px) {
  .p-error__btn a {
    padding: 0.625rem 1.4375rem;
  }
}

.p-error__btn input {
  background-color: #d5d5d5;
  border-radius: 0.3125rem;
  display: block;
  padding: 8px 17px;
  padding: 0.5rem 1.0625rem;
}
@media screen and (min-width: 768px) {
  .p-error__btn input {
    padding: 0.625rem 1.4375rem;
  }
}

.p-flow01__ttl {
  background-color: #00a199;
  background-image: url(/img/ico_flow_footprints_white.png);
  background-position: 95% 110%;
  background-repeat: no-repeat;
  background-size: 3.28125rem 4.05rem;
  color: #ffffff;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.45;
  padding: 10px 0 12px 97px;
  padding: 0.625rem 0 0.75rem 6.0625rem;
  position: relative;
  width: 93.25%;
}
@media screen and (min-width: 768px) {
  .p-flow01__ttl {
    background-position: 95% 30%;
    background-size: 4.2375rem 5.2375rem;
    font-size: 2.41625rem;
    left: calc(50% - 37.5rem);
    padding: 0.625rem 0 0.375rem 13.625rem;
    width: 75.8333333333%;
  }
}
@media screen and (min-width: 1201px) {
  .p-flow01__ttl {
    left: calc(50% - 37.5rem);
    width: calc(50% + 310px);
  }
}

.p-flow01__ttl::before {
  border-color: transparent transparent transparent #00a199;
  border-style: solid;
  border-width: 54.65px 0 54.65px 26.5px;
  border-width: 3.415625rem 0 3.415625rem 1.65625rem;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  right: 0.5px;
  top: 0;
  -webkit-transform: translate(100%, 0);
          transform: translate(100%, 0);
  width: 0;
}
@media screen and (min-width: 768px) {
  .p-flow01__ttl::before {
    border-width: 2.25rem 0 2.25rem 1.625rem;
  }
}

.p-flow01__ttlNum {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ffffff;
  border-radius: 50%;
  color: #00a199;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 43.8px;
  font-size: 2.7375rem;
  height: 48.7px;
  height: 3.04375rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 32px;
  left: 2rem;
  position: absolute;
  top: 10px;
  top: 0.625rem;
  width: 48.7px;
  width: 3.04375rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__ttlNum {
    font-size: 2.8125rem;
    height: 3.125rem;
    left: 8.75rem;
    top: 0.625rem;
    width: 3.125rem;
  }
}

.p-flow01__cntntsBoxA {
  margin-top: 22px;
  margin-top: 1.375rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__cntntsBoxA {
    margin-top: 2.1875rem;
    position: relative;
  }
}

.p-flow01__subTtlBoxA {
  height: 200.6px;
  height: 12.5375rem;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-flow01__subTtlBoxA {
    height: auto;
  }
}

.p-flow01__subTtlA {
  font-family: "Kosugi Maru", sans-serif;
  font-size: 25px;
  font-size: 1.5625rem;
  font-weight: 700;
  line-height: 1.2;
  padding-left: 3px;
  padding-left: 0.1875rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__subTtlA {
    font-size: 2.4rem;
  }
}

.p-flow01__imgBox01 {
  height: 197.6px;
  height: 12.35rem;
  position: absolute;
  right: 10px;
  right: 0.625rem;
  top: 3px;
  top: 0.1875rem;
  width: 186.6px;
  width: 11.6625rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__imgBox01 {
    right: 2rem;
    top: -5rem;
  }
}

.p-flow01__imgTxt01 {
  display: inline-block;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 9.3px;
  font-size: 0.58125rem;
  line-height: 1.2;
  position: absolute;
  right: 13px;
  right: 0.8125rem;
  top: 75%;
}
@media screen and (min-width: 768px) {
  .p-flow01__imgTxt01 {
    right: 2.5rem;
    top: 5.3125rem;
  }
}

.p-flow01__imgWrpprA {
  -moz-column-gap: 0.28125rem;
       -webkit-column-gap: 0.28125rem;
          column-gap: 0.28125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 23px;
  margin-top: 1.4375rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__imgWrpprA {
    bottom: 0;
    height: 10.3125rem;
    position: absolute;
    right: 0;
    top: auto;
    width: 26.625rem;
  }
}

.p-flow01__imgBoxA {
  height: 134.5px;
  height: 8.40625rem;
  width: calc(33.333% - 0.1875rem);
}
@media screen and (min-width: 768px) {
  .p-flow01__imgBoxA {
    height: 100%;
  }
}

.p-flow01__imgBoxA img {
  -o-object-fit: cover;
  -o-object-position: center;
  display: block;
  height: 100%;
     object-fit: cover;
     object-position: center;
  width: 100%;
}
.p-flow01__txtWrpprA {
  font-family: "Kosugi Maru", sans-serif;
  margin-top: 28px;
  margin-top: 1.75rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__txtWrpprA {
    margin-top: 1.5625rem;
  }
}

.p-flow01__txtUnit {
  padding-left: 27px;
  padding-left: 1.6875rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-flow01__txtUnit {
    padding-left: 1.5rem;
  }
}

.p-flow01__txtUnit::before {
  border: 1px solid #00a199;
  content: "";
  display: block;
  height: 15.5px;
  height: 0.96875rem;
  left: 4px;
  left: 0.25rem;
  position: absolute;
  top: 5px;
  top: 0.3125rem;
  width: 15.5px;
  width: 0.96875rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__txtUnit::before {
    left: 0.125rem;
  }
}

.p-flow01__txtUnit:not(:first-of-type) {
  margin-top: 21px;
  margin-top: 1.3125rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__txtUnit:not(:first-of-type) {
    margin-top: 1.0625rem;
  }
}

.p-flow01__cntntsHeading {
  color: #00a199;
  font-size: 18.4px;
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.4;
}
.p-flow01__cntntsTxt {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.01em;
  line-height: 1.417;
  margin-top: 7px;
  margin-top: 0.4375rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__cntntsTxt {
    font-size: 1rem;
    margin-top: 0.1875rem;
  }
}

.p-flow01__cntntsNote {
  font-size: 11px;
  font-size: 0.6875rem;
  letter-spacing: 0.03em;
  margin-top: 5px;
  margin-top: 0.3125rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__cntntsNote {
    font-size: 0.75rem;
    margin-top: 0.1875rem;
  }
}

.p-flow01__cntntsBoxB {
  font-family: "Kosugi Maru", sans-serif;
  margin-top: 55px;
  margin-top: 3.4375rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__cntntsBoxB {
    margin-top: 3.125rem;
  }
}

@media screen and (min-width: 768px) {
  .p-flow01__subTtlBoxB {
    -moz-column-gap: 1.875rem;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
         -webkit-column-gap: 1.875rem;
                 column-gap: 1.875rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-flow01__subTtlB {
  border-bottom: 1.5px solid #00a199;
  color: #00a199;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.2;
  padding-bottom: 7px;
  padding-bottom: 0.4375rem;
  position: relative;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-flow01__subTtlB {
    font-size: 1.9375rem;
    margin-bottom: 0.3125rem;
    padding-bottom: 0.625rem;
    padding-right: 0.9375rem;
    text-align: left;
  }
}

.p-flow01__subTtlB::before {
  background-image: url(/img/ico_flow_footprints_green.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: -33px;
  bottom: -2.0625rem;
  content: "";
  display: block;
  height: 43.1px;
  height: 2.69375rem;
  left: 0;
  position: absolute;
  top: auto;
  width: 45.3px;
  width: 2.83125rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__subTtlB::before {
    bottom: -1.9375rem;
    left: -2.25rem;
  }
}

.p-flow01__txt {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.62;
  margin-top: 15px;
  margin-top: 0.9375rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-flow01__txt {
    font-size: 0.96875rem;
    text-align: left;
  }
}

.p-flow01__cardWrpprB {
  -moz-column-gap: 0.5625rem;
  row-gap: 10px;
  row-gap: 0.625rem;
       -webkit-column-gap: 0.5625rem;
               column-gap: 0.5625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 25px;
  margin-top: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .p-flow01__cardWrpprB {
    -moz-column-gap: 2.15625rem;
    row-gap: 1.75rem;
         -webkit-column-gap: 2.15625rem;
                 column-gap: 2.15625rem;
    margin-top: 2.3125rem;
  }
}

.p-flow01__cardB {
  width: calc(50% - 0.28125rem);
}
@media screen and (min-width: 768px) {
  .p-flow01__cardB {
    width: calc(33.333% - 1.4375rem);
  }
}

.p-flow01__imgBoxB {
  height: 113.8px;
  height: 7.1125rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-flow01__imgBoxB {
    height: 12.375rem;
  }
}

.p-flow01__imgBoxB img {
  -o-object-fit: cover;
  -o-object-position: center;
  border-radius: 0.625rem;
  display: block;
  height: 100%;
     object-fit: cover;
     object-position: center;
  width: 100%;
}
.p-flow01__imgName {
  color: #00a199;
  font-size: 11.5px;
  font-size: 0.71875rem;
  margin-top: 1px;
  margin-top: 0.0625rem;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .p-flow01__imgName {
    font-size: 1.25rem;
    margin-top: 0.3125rem;
  }
}

.p-flow02 {
  font-family: "Kosugi Maru", sans-serif;
}
.p-flow02__ttl {
  background-color: #00a199;
  background-image: url(/img/ico_flow_footprints_white.png);
  background-position: 95% -12%;
  background-repeat: no-repeat;
  background-size: 3.28125rem 4.05rem;
  color: #ffffff;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.28;
  padding: 10px 0 12px 97px;
  padding: 0.625rem 0 0.75rem 6.0625rem;
  position: relative;
  width: 93.25%;
}
@media screen and (min-width: 768px) {
  .p-flow02__ttl {
    background-position: 95% 30%;
    background-size: 4.2375rem 5.2375rem;
    font-size: 2.41625rem;
    left: calc(50% - 37.5rem);
    padding: 0.625rem 0 0.6875rem 13.625rem;
    width: 87.6666666667%;
  }
}
@media screen and (min-width: 1201px) {
  .p-flow02__ttl {
    left: calc(50% - 37.5rem);
    width: calc(50% + 452px);
  }
}

.p-flow02__ttl::before {
  border-color: transparent transparent transparent #00a199;
  border-style: solid;
  border-width: 68.6px 0 68.6px 26.5px;
  border-width: 4.2875rem 0 4.2875rem 1.65625rem;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  right: 0.5px;
  top: 0;
  -webkit-transform: translate(100%, 0);
          transform: translate(100%, 0);
  width: 0;
}
@media screen and (min-width: 768px) {
  .p-flow02__ttl::before {
    border-width: 2.2025rem 0 2.2025rem 1.625rem;
  }
}

.p-flow02__ttlNum {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ffffff;
  border-radius: 50%;
  color: #00a199;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 43.8px;
  font-size: 2.7375rem;
  height: 48.7px;
  height: 3.04375rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 32px;
  left: 2rem;
  position: absolute;
  top: 10px;
  top: 0.625rem;
  width: 48.7px;
  width: 3.04375rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__ttlNum {
    font-size: 2.8125rem;
    height: 3.125rem;
    left: 8.75rem;
    top: 0.625rem;
    width: 3.125rem;
  }
}

.p-flow02__subTtlBox {
  margin-top: 18px;
  margin-top: 1.125rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__subTtlBox {
    -moz-column-gap: 1.25rem;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
         -webkit-column-gap: 1.25rem;
                 column-gap: 1.25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-flow02__subTtl {
  font-size: 25px;
  font-size: 1.5625rem;
  font-weight: 700;
  padding-left: 3px;
  padding-left: 0.1875rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__subTtl {
    font-size: 2.425rem;
    padding-left: 0;
  }
}

.p-flow02__subNote {
  font-size: 15px;
  font-size: 0.9375rem;
  margin-top: 1px;
  margin-top: 0.0625rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__subNote {
    font-size: 1.25rem;
    margin-bottom: 0.625rem;
  }
}

.p-flow02__cntntsBoxA {
  font-family: "Kosugi Maru", sans-serif;
  margin-left: auto;
  margin-right: auto;
  margin-top: 10px;
  margin-top: 0.625rem;
  width: 270px;
  width: 16.875rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__cntntsBoxA {
    -moz-column-gap: 6.25%;
         -webkit-column-gap: 6.25%;
            column-gap: 6.25%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: 0;
    margin-right: 0;
    margin-top: 1.25rem;
    width: 100%;
  }
}

.p-flow02__tableName {
  color: #00a199;
  font-size: 17px;
  font-size: 1.0625rem;
  padding-left: 3px;
  padding-left: 0.1875rem;
  width: 100%;
}
.p-flow02__beforeWrppr {
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-flow02__beforeWrppr {
    width: 28.125%;
  }
}

.p-flow02__beforeWrppr:after {
  border-color: #00a199 transparent transparent transparent;
  border-style: solid;
  border-width: 17.1px 18.55px 0 18.55px;
  border-width: 1.06875rem 1.159375rem 0 1.159375rem;
  bottom: -18px;
  bottom: -1.125rem;
  content: "";
  display: block;
  height: 0;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  width: 0;
}
@media screen and (min-width: 768px) {
  .p-flow02__beforeWrppr:after {
    border-color: transparent transparent transparent #00a199;
    border-width: 1.159375rem 0 1.159375rem 1.06875rem;
    bottom: auto;
    left: auto;
    right: -1.25rem;
    top: 50%;
    -webkit-transform: translate(100%, 0);
            transform: translate(100%, 0);
  }
}

.p-flow02__beforeTable01,
.p-flow02__afterTable01 {
  width: 100%;
}
.p-flow02__tableBox {
  border: 1px solid #898989;
}
@media screen and (min-width: 768px) {
  .p-flow02__tableBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-flow02__beforeTable01 {
  margin-top: 3px;
  margin-top: 0.1875rem;
  padding: 12px 21px 10px;
  padding: 0.75rem 1.3125rem 0.625rem;
}
.p-flow02__table:not(:first-of-type) {
  margin-top: 0;
}
.p-flow02__tableHeading {
  color: #00a199;
  font-size: 17.1px;
  font-size: 1.06875rem;
  width: 100%;
}
.p-flow02__tableHeading span {
  border-bottom: 1px solid #00a199;
  padding-bottom: 5px;
  padding-bottom: 0.3125rem;
}
.p-flow02__tableLists01 {
  -moz-column-gap: 11%;
       -webkit-column-gap: 11%;
          column-gap: 11%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 14px;
  margin-top: 0.875rem;
}
.p-flow02__tableTerm01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 17.1px;
  font-size: 1.06875rem;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  line-height: 1.55;
  position: relative;
  width: 31%;
}
.p-flow02__tableTerm01::after {
  content: ":";
  display: block;
  position: absolute;
  right: -5px;
  right: -0.3125rem;
  top: -0.2em;
  -webkit-transform: translate(100%, 0);
          transform: translate(100%, 0);
}
@media screen and (min-width: 768px) {
  .p-flow02__tableTerm01::after {
    right: -0.625rem;
  }
}

.p-flow02__tableDscr01 {
  font-size: 17.1px;
  font-size: 1.06875rem;
  line-height: 1.55;
  width: 58%;
}
.p-flow02__afterWrppr {
  margin-top: 33px;
  margin-top: 2.0625rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__afterWrppr {
    margin-top: 0;
    width: 64.8958333333%;
  }
}

.p-flow02__tableHeading--small {
  font-size: 12px;
  font-size: 0.75rem;
}
.p-flow02__afterTable01 {
  margin-top: 3px;
  margin-top: 0.1875rem;
  padding: 12px 21px 10px;
  padding: 0.75rem 1.3125rem 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__afterTable01 {
    width: 41.7335473515%;
  }
}

.p-flow02__afterTable02 {
  margin-top: 3px;
  margin-top: 0.1875rem;
  padding: 5px 21px 10px;
  padding: 0.3125rem 1.3125rem 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__afterTable02 {
    padding: 0.75rem 1.3125rem 0.625rem;
    position: relative;
    width: 29.0529695024%;
  }
}

.p-flow02__afterTable02::before {
  background-color: #00a199;
  content: "";
  display: block;
  height: 134px;
  height: 8.375rem;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 1px;
}

.p-flow02__tableLists02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 14px;
  margin-top: 0.875rem;
}
.p-flow02__tableDscr02 {
  font-size: 17.1px;
  font-size: 1.06875rem;
  line-height: 1.55;
  width: 100%;
}
.p-flow02__cntntsBoxB {
  font-family: "Kosugi Maru", sans-serif;
  margin-top: 33px;
  margin-top: 2.0625rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__cntntsBoxB {
    -moz-column-gap: 1.5625%;
         -webkit-column-gap: 1.5625%;
            column-gap: 1.5625%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 1.125rem;
  }
}

@media screen and (min-width: 768px) {
  .p-flow02__graphWrppr {
    width: 52.8125%;
  }
}

.p-flow02__graphName {
  color: #00a199;
  font-size: 15.8px;
  font-size: 0.9875rem;
}
.p-flow02__graphImgWrppr {
  border: 1px solid #898989;
  margin-top: 13px;
  margin-top: 0.8125rem;
  padding: 5px 0 0;
  padding: 0.3125rem 0 0;
}
@media screen and (min-width: 768px) {
  .p-flow02__graphImgWrppr {
    margin-top: 0rem;
  }
}

.p-flow02__infoWrppr {
  margin-top: 8px;
  margin-top: 0.5rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__infoWrppr {
    row-gap: 1.75rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin-top: 0;
    width: 45.625%;
  }
}

.p-flow02__graphNote {
  font-size: 10px;
  font-size: 0.625rem;
}
.p-flow02__selfWrppr {
  border: 1.5px solid #00a199;
  border-radius: 0.625rem;
  margin-top: 40px;
  margin-top: 2.5rem;
  padding: 14px 15px 23px 5px;
  padding: 0.875rem 0.9375rem 1.4375rem 0.3125rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-flow02__selfWrppr {
    margin-left: 1.25rem;
    margin-top: 0;
    padding: 0.75rem 0.9375rem 1.75rem 0.5rem;
  }
}

.p-flow02__selfHeading {
  font-size: 25px;
  font-size: 1.5625rem;
  font-weight: 800;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-flow02__selfHeading {
    font-size: 1.875rem;
  }
}

.p-flow02__selfHeading span {
  border-bottom: 1px solid #00a199;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .p-flow02__selfHeading span {
    padding-bottom: 0.3125rem;
  }
}

.p-flow02__selfTxt {
  font-size: 13px;
  font-size: 0.8125rem;
  padding: 13px 0 0 15px;
  padding: 0.8125rem 0 0 0.9375rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__selfTxt {
    font-size: 0.959375rem;
    padding: 1.1875rem 0 0 0.9375rem;
  }
}

.p-flow02__selfCatch {
  bottom: 25px;
  bottom: 1.5625rem;
  height: 82.4px;
  height: 5.15rem;
  position: absolute;
  right: 26px;
  right: 1.625rem;
  top: auto;
  width: 58.8px;
  width: 3.675rem;
}
@media screen and (min-width: 768px) {
  .p-flow02__selfCatch {
    bottom: 1.25rem;
    height: 6.4375rem;
    width: 4.59375rem;
  }
}

.p-flow03 {
  font-family: "Kosugi Maru", sans-serif;
  overflow: hidden;
}
.p-flow03__ttl {
  background-color: #00a199;
  color: #ffffff;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.28;
  padding: 25px 0 30px 97px;
  padding: 1.5625rem 0 1.875rem 6.0625rem;
  position: relative;
  width: 93.25%;
}
@media screen and (min-width: 768px) {
  .p-flow03__ttl {
    font-size: 2.41625rem;
    left: calc(50% - 37.5rem);
    padding: 0.625rem 0 0.6875rem 13.625rem;
    width: 75.8333333333%;
  }
}
@media screen and (min-width: 1201px) {
  .p-flow03__ttl {
    left: calc(50% - 37.5rem);
    width: calc(50% + 202px);
  }
}

.p-flow03__ttl::before {
  border-color: transparent transparent transparent #00a199;
  border-style: solid;
  border-width: 46.7px 0 46.7px 26.5px;
  border-width: 2.91875rem 0 2.91875rem 1.65625rem;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  right: 0.5px;
  top: 0;
  -webkit-transform: translate(100%, 0);
          transform: translate(100%, 0);
  width: 0;
}
@media screen and (min-width: 768px) {
  .p-flow03__ttl::before {
    border-width: 2.2025rem 0 2.2025rem 1.625rem;
  }
}

.p-flow03__ttl::after {
  background-image: url(/img/ico_flow_footprints_white.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 70px;
  height: 4.375rem;
  position: absolute;
  right: -10px;
  right: -0.625rem;
  top: -14px;
  top: -0.875rem;
  -webkit-transform: translate(0, 0) rotate(10deg);
          transform: translate(0, 0) rotate(10deg);
  width: 49.25px;
  width: 3.078125rem;
}
@media screen and (min-width: 768px) {
  .p-flow03__ttl::after {
    height: 5.23125rem;
    right: 3.75rem;
    top: -0.1875rem;
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    width: 4.2375rem;
  }
}

.p-flow03__ttlNum {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ffffff;
  border-radius: 50%;
  color: #00a199;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 43.8px;
  font-size: 2.7375rem;
  height: 48.7px;
  height: 3.04375rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 32px;
  left: 2rem;
  position: absolute;
  top: 20px;
  top: 1.25rem;
  width: 48.7px;
  width: 3.04375rem;
}
@media screen and (min-width: 768px) {
  .p-flow03__ttlNum {
    font-size: 2.8125rem;
    height: 3.125rem;
    left: 8.75rem;
    top: 0.625rem;
    width: 3.125rem;
  }
}

.p-flow03__inner {
  height: auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 23px;
  padding-left: 1.4375rem;
  padding-right: 10px;
  padding-right: 0.625rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-flow03__inner {
    max-width: calc(960px + 15rem);
    padding-left: 7.5rem;
    padding-right: 7.5rem;
  }
}

.p-flow03__cntntsWrppr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px) {
  .p-flow03__cntntsWrppr {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-flow03__cntntsBoxA {
  display: contents;
}
@media screen and (min-width: 768px) {
  .p-flow03__cntntsBoxA {
    display: block;
    width: 59.9479166667%;
  }
}

.p-flow03__subTtl {
  font-size: 25px;
  font-size: 1.5625rem;
  font-weight: 700;
  margin-top: 24px;
  margin-top: 1.5rem;
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
}
@media screen and (min-width: 768px) {
  .p-flow03__subTtl {
    font-size: 2.4125rem;
  }
}

.p-flow03__txt {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: -0.05em;
  margin-top: 12px;
  margin-top: 0.75rem;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media screen and (min-width: 768px) {
  .p-flow03__txt {
    font-size: 1.0625rem;
    letter-spacing: 0;
    margin-top: 0.9375rem;
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}

.p-flow03__txt--red {
  color: #e8380d;
}

.p-flow03__catchBox {
  background-color: #00a199;
  border-radius: 0.625rem;
  margin-top: 25px;
  margin-top: 1.5625rem;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  padding: 10px 5px 10px 34px;
  padding: 0.625rem 0.3125rem 0.625rem 2.125rem;
}
@media screen and (min-width: 768px) {
  .p-flow03__catchBox {
    margin-top: 1.125rem;
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    padding: 0.9375rem 0.3125rem 0.8125rem 3.125rem;
    width: 94.2658557776%;
  }
}

.p-flow03__catchTxt {
  color: #ffffff;
  font-size: 16.3px;
  font-size: 1.01875rem;
  font-weight: 700;
  line-height: 1.4;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-flow03__catchTxt {
    font-size: 1.521875rem;
    letter-spacing: 0.03em;
  }
}

.p-flow03__catchTxt::before {
  border: 1px solid #ffffff;
  content: "";
  display: block;
  height: 12.3px;
  height: 0.76875rem;
  left: -5px;
  left: -0.3125rem;
  position: absolute;
  top: 5px;
  top: 0.3125rem;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
  width: 12.3px;
  width: 0.76875rem;
}
@media screen and (min-width: 768px) {
  .p-flow03__catchTxt::before {
    height: 1.2rem;
    left: -0.625rem;
    top: 0.5rem;
    width: 1.2rem;
  }
}

.p-flow03__catctTxt--small {
  font-size: 13.7px;
  font-size: 0.85625rem;
  padding-left: 7px;
  padding-left: 0.4375rem;
}
@media screen and (min-width: 768px) {
  .p-flow03__catctTxt--small {
    font-size: 1.33125rem;
  }
}

.p-flow03__caseWrppr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 25px;
  margin-top: 1.5625rem;
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}
@media screen and (min-width: 768px) {
  .p-flow03__caseWrppr {
    margin-top: 2.25rem;
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}

.p-flow03__caseBox {
  width: 50%;
}
.p-flow03__caseHeading {
  font-size: 12.3px;
  font-size: 0.76875rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-flow03__caseHeading {
    font-size: 1.08125rem;
  }
}

.p-flow03__caseHeading span {
  border-bottom: 1px solid #231815;
  display: inline-block;
}

.p-flow03__caseImg01,
.p-flow03__caseImg02 {
  margin-top: 15px;
  margin-top: 0.9375rem;
}
.p-flow03__caseImg02 {
  width: 119%;
}
@media screen and (min-width: 768px) {
  .p-flow03__caseImg02 {
    width: 110%;
  }
}

.p-flow03__caseImg01 img,
.p-flow03__caseImg02 img {
  -o-object-position: left top;
  display: block;
  height: 100%;
     object-position: left top;
  width: 100%;
}
.p-flow03__cntntsBoxB {
  display: contents;
}
@media screen and (min-width: 768px) {
  .p-flow03__cntntsBoxB {
    display: block;
    width: 36.8020833333%;
  }
}

.p-flow03__humupayAppImg {
  border: 1px solid #898989;
  border-radius: 0.75rem;
  height: 395.6px;
  height: 24.725rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 28px;
  margin-top: 1.75rem;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  width: 228.5px;
  width: 14.28125rem;
}
@media screen and (min-width: 768px) {
  .p-flow03__humupayAppImg {
    height: auto;
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    width: 100%;
  }
}

.p-flow03__humupayAppImg img {
  border-radius: 0.75rem;
}

.p-footer {
  background-color: #666666;
  color: #ffffff;
  font-family: "Kosugi Maru", sans-serif;
  padding: 30px 0 45px;
  padding: 1.875rem 0 2.8125rem;
}
@media screen and (min-width: 768px) {
  .p-footer {
    padding: 4.375rem 0 5.3125rem;
  }
}

.p-footer__logoBox {
  height: 24.8px;
  height: 1.55rem;
  width: 179.3px;
  width: 11.20625rem;
}
@media screen and (min-width: 768px) {
  .p-footer__logoBox {
    height: 2.240625rem;
    width: 16.1875rem;
  }
}

.p-footer__logoBox a {
  display: block;
}
.p-footer__logoBox img {
  -o-object-fit: contain;
  -o-object-position: center;
  display: block;
  height: 100%;
     object-fit: contain;
     object-position: center;
  width: 100%;
}
.p-footer__cntctTxt {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 700;
  margin-top: 57px;
  margin-top: 3.5625rem;
}
@media screen and (min-width: 768px) {
  .p-footer__cntctTxt {
    font-size: 1.03125rem;
    margin-top: 2.5rem;
  }
}

.p-footer__cntctTxt--small {
  display: inline-block;
  font-size: 10px;
  font-size: 0.625rem;
  -webkit-transform: scale(0.9);
          transform: scale(0.9);
}
@media screen and (min-width: 768px) {
  .p-footer__cntctTxt--small {
    font-size: 0.75rem;
    margin-left: 1.125rem;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

.p-footer__tel {
  font-style: normal;
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-footer__tel {
    margin-top: 1.25rem;
  }
}

.p-footer__tel a {
  display: block;
}
.p-footer__telBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-footer__telBox {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

.p-footer__telPrefix {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  line-height: 1.1;
  margin-left: 3px;
  margin-left: 0.1875rem;
}
@media screen and (min-width: 768px) {
  .p-footer__telPrefix {
    font-size: 1.35625rem;
  }
}

.p-footer__prefixFree {
  display: block;
  font-size: 10px;
  font-size: 0.625rem;
  letter-spacing: 0;
  -webkit-transform: scale(0.7);
          transform: scale(0.7);
  -webkit-transform-origin: left center;
          transform-origin: left center;
}
@media screen and (min-width: 768px) {
  .p-footer__prefixFree {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}

.p-footer__telNum {
  font-size: 30px;
  font-size: 1.875rem;
  letter-spacing: 0.06em;
  line-height: 1.7;
  margin-left: 3px;
  margin-left: 0.1875rem;
}
@media screen and (min-width: 768px) {
  .p-footer__telNum {
    font-size: 3.4375rem;
    line-height: 0.9;
  }
}

.p-footer__telQRImg {
  height: 44.76px;
  height: 2.7975rem;
  margin-left: 18px;
  margin-left: 1.125rem;
  width: 44.76px;
  width: 2.7975rem;
}
@media screen and (min-width: 768px) {
  .p-footer__telQRImg {
    height: 4.0375rem;
    margin-left: 1.375rem;
    width: 4.0375rem;
  }
}

.p-fv__bgGreen {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #00a199), color-stop(80%, #ffffff));
  background: linear-gradient(180deg, #00a199 0 80%, #ffffff 80% 100%);
  overflow: hidden;
  padding-top: 114px;
  padding-top: 7.125rem;
}
@media screen and (min-width: 768px) {
  .p-fv__bgGreen {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #00a199), color-stop(67%, #ffffff));
    background: linear-gradient(180deg, #00a199 0 67%, #ffffff 67% 100%);
    padding-top: 5.4375rem;
  }
}

.p-fv__subTtl {
  color: #ffffff;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0.3em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-fv__subTtl {
    font-size: 1.25rem;
    padding-right: 3.125rem;
  }
}

.p-fv__ttlBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 15px;
  margin-top: 0.9375rem;
  padding-left: 5px;
  padding-left: 0.3125rem;
}
.p-fv__ttl {
  width: 89.25%;
}
@media screen and (min-width: 768px) {
  .p-fv__ttl {
    width: 34.46875rem;
  }
}

.p-fv__bgEllipseBox {
  margin-left: auto;
  margin-right: auto;
  margin-top: 27px;
  margin-top: 1.6875rem;
  overflow: hidden;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-fv__bgEllipseBox {
    margin-top: 0.625rem;
    width: 100%;
  }
}
.p-fv__bgEllipse {
  background-color: #ffffff;
  border-radius: 50%;
  height: 452px;
  height: 28.25rem;
  margin-left: -173.5px;
  margin-left: -10.84375rem;
  overflow: hidden;
  width: 747px;
  width: 46.6875rem;
}
@media screen and (min-width: 768px) {
  .p-fv__bgEllipse {
    height: 33.875rem;
    margin-left: -3.9583333333%;
    width: 107.9166666667%;
  }
}

.p-fv__bgLightGreen {
  background: url(/img/fv_sp.png), -webkit-gradient(linear, left top, left bottom, color-stop(0, #d9f1f0), color-stop(70%, #ffffff));
  background: url(/img/fv_sp.png), linear-gradient(180deg, #d9f1f0 0 70%, #ffffff 70% 100%);
  background-position: center -77px, left top;
  background-position: center -4.8125rem, left top;
  background-repeat: no-repeat, no-repeat;
  background-size: 53.547523427% 102.2123893805%, 100% 100%;
  height: 100%;
  padding-top: 23px;
  padding-top: 1.4375rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-fv__bgLightGreen {
    background: url(/img/fv_pc2.png), -webkit-gradient(linear, left top, left bottom, color-stop(0, #d9f1f0), color-stop(53%, #ffffff));
    background: url(/img/fv_pc2.png), linear-gradient(180deg, #d9f1f0 0 53%, #ffffff 53% 100%);
    background-position: calc(50% + 10.625rem) -9.8125rem, left top;
    background-repeat: no-repeat, no-repeat;
    background-size: 119.7683397683% 103.5055350554%, 100% 100%;
    padding-top: 3.9375rem;
  }
}
@media screen and (min-width: 1201px) {
  .p-fv__bgLightGreen {
    background: url(/img/fv_pc2.png), -webkit-gradient(linear, left top, left bottom, color-stop(0, #d9f1f0), color-stop(53%, #ffffff));
    background: url(/img/fv_pc2.png), linear-gradient(180deg, #d9f1f0 0 53%, #ffffff 53% 100%);
    background-position: calc(50% + 170px) -9.8125rem, left top;
    background-repeat: no-repeat, no-repeat;
    background-size: 1551px 103.5055350554%, 100% 100%;
  }
}

.p-fv__catchTxtBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-left: 13px;
  padding-left: 0.8125rem;
}
@media screen and (min-width: 768px) {
  .p-fv__catchTxtBox {
    padding-left: 8.75rem;
  }
}

.p-fv__catchTxt {
  color: #000000;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: 0.25em;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .p-fv__catchTxt {
    font-size: 2.1875rem;
    line-height: 1.63;
  }
}

.p-fv__movieWrppr {
  margin-left: auto;
  margin-right: auto;
  margin-top: 25px;
  margin-top: 1.5625rem;
  position: relative;
  width: 283px;
  width: 17.6875rem;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .p-fv__movieWrppr {
    margin-top: -4.6875rem;
    width: 29.53125rem;
  }
}

.p-fv__movieBox {
  height: 188.4px;
  height: 11.775rem;
}
@media screen and (min-width: 768px) {
  .p-fv__movieBox {
    height: 19.65625rem;
  }
}

.p-fv__movieBox iframe {
  border: none;
  display: block;
  height: 100%;
  width: 100%;
}
.p-fv__movieTxt {
  font-size: 9.5px;
  font-size: 0.59375rem;
  letter-spacing: 0.1em;
  margin-top: 10px;
  margin-top: 0.625rem;
  padding-left: 5px;
  padding-left: 0.3125rem;
}
@media screen and (min-width: 768px) {
  .p-fv__movieTxt {
    font-size: 1rem;
    margin-top: 1.25rem;
    padding-left: 0;
  }
}

.p-fv__snsWrppr {
  -moz-column-gap: 4.375rem;
       -webkit-column-gap: 4.375rem;
          column-gap: 4.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 52px;
  margin-top: 3.25rem;
}
@media screen and (min-width: 768px) {
  .p-fv__snsWrppr {
    -moz-column-gap: 7.5rem;
         -webkit-column-gap: 7.5rem;
            column-gap: 7.5rem;
    margin-top: 4.375rem;
  }
}

.p-fv__snsIcon {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.p-fv__snsImgBox {
  display: block;
  height: 42.82px;
  height: 2.67625rem;
  width: 42.82px;
  width: 2.67625rem;
}
@media screen and (min-width: 768px) {
  .p-fv__snsImgBox {
    height: 5.21625rem;
    width: 5.21625rem;
  }
}

.p-fv__snsImgBox img {
  -o-object-fit: contain;
  -o-object-position: center;
  border-radius: 0.3125rem;
  display: block;
  height: 100%;
     object-fit: contain;
     object-position: center;
  width: 100%;
}
.p-fv__snsTxt {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 9.5px;
  font-size: 0.59375rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin-top: 7px;
  margin-top: 0.4375rem;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .p-fv__snsTxt {
    font-size: 1rem;
    margin-top: 1.25rem;
  }
}

.p-header {
  background-color: #00a199;
  color: #ffffff;
  height: 60px;
  height: 3.75rem;
  left: 0;
  overflow: hidden;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 30;
}
@media screen and (min-width: 768px) {
  .p-header {
    height: 4.375rem;
  }
}

.p-header__inner {
  height: 100%;
  padding-left: 23px;
  padding-left: 1.4375rem;
  padding-right: 23px;
  padding-right: 1.4375rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-header__inner {
    padding-right: 1.25rem;
  }
}

.p-header__wrppr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}
.p-header__logoWrppr {
  padding-top: 20px;
  padding-top: 1.25rem;
  width: 210px;
  width: 13.125rem;
}
@media screen and (min-width: 768px) {
  .p-header__logoWrppr {
    padding-top: 1.5625rem;
    width: 16.1875rem;
  }
}

.p-header__logoWrppr a {
  display: block;
}

.p-header__logoBox {
  display: block;
  width: 100%;
}

.p-header__logoBox img {
  display: block;
  width: 100%;
}

.p-header__nav {
  background-color: transparent;
  display: block;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 25px;
  font-size: 1.5625rem;
  height: calc(100vh - 3.6875rem);
  left: 0;
  max-height: calc(100vh - 3.6875rem);
  min-height: calc(100vh - 3.6875rem);
  position: fixed;
  top: calc(-100vh - 3.6875rem);
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-header__nav {
    display: block;
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
    font-size: 1.09375rem;
    font-weight: 700;
    height: auto;
    left: auto;
    letter-spacing: 0.075em;
    max-height: auto;
    min-height: auto;
    position: static;
    top: auto;
    width: auto;
    width: auto;
  }
}

.p-header__nav.burgerOpen {
  top: 59px;
  top: 3.6875rem;
}

.p-header__navLists {
  background-color: #00a199;
  display: block;
  height: auto;
  padding: 60px 0 60px;
  padding: 3.75rem 0 3.75rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-header__navLists {
    -moz-column-gap: 1.375rem;
         -webkit-column-gap: 1.375rem;
            column-gap: 1.375rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    padding: 0;
    width: auto;
  }
}

.p-header__navItem {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-header__navItem {
    width: auto;
  }
}

.p-header__navItem:not(:first-of-type) {
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-header__navItem:not(:first-of-type) {
    margin-top: 0;
  }
}

.p-header__navLists a {
  display: block;
  padding: 15px 0;
  padding: 0.9375rem 0;
  text-align: center;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-header__navLists a {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    padding: 0 0.3125rem 0;
    text-align: left;
  }
}

@media screen and (min-width: 768px) {
  .p-header__navLists a span {
    padding: 0 0.3125rem;
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .p-header__navLists a span::before {
    background-color: #ffffff;
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: left top;
            transform-origin: left top;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .p-header__navLists a:hover span::before {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}

.p-header__burgerWrppr {
  cursor: pointer;
  padding-top: 17px;
  padding-top: 1.0625rem;
}
@media screen and (min-width: 768px) {
  .p-header__burgerWrppr {
    display: none;
  }
}

.p-header__burgerBox {
  height: 20px;
  height: 1.25rem;
  position: relative;
  width: 38px;
  width: 2.375rem;
}
.p-header__burgerWrppr .p-header__burgerBox span {
  background-color: #ffffff;
  border-radius: 50vw;
  display: block;
  height: 1.5px;
  width: 100%;
}
.p-header__burgerWrppr .p-header__burgerBox span:first-of-type {
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}
.p-header__burgerWrppr .p-header__burgerBox span:nth-of-type(2) {
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}
.p-header__burgerWrppr .p-header__burgerBox span:last-of-type {
  bottom: 0;
  left: 0;
  position: absolute;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}
.p-header__burgerWrppr.burgerOpen .p-header__burgerBox span:first-of-type {
  left: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(30deg);
          transform: translate(-50%, -50%) rotate(30deg);
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}
.p-header__burgerWrppr.burgerOpen .p-header__burgerBox span:nth-of-type(2) {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}
.p-header__burgerWrppr.burgerOpen .p-header__burgerBox span:last-of-type {
  bottom: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%) rotate(-30deg);
          transform: translate(-50%, -50%) rotate(-30deg);
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}
.p-header__burgerTxt {
  display: block;
  font-family: "Kosugi Maru", sans-serif;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 11px;
  font-size: 0.6875rem;
  font-weight: bold;
  letter-spacing: 0.075em;
  margin-top: 6px;
  margin-top: 0.375rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-plan {
    margin-left: auto;
    margin-right: auto;
    max-width: 960px;
  }
}

.p-plan__wrppr {
  margin-left: auto;
  margin-right: auto;
  width: 93%;
}
@media screen and (min-width: 768px) {
  .p-plan__wrppr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 768px) {
  .p-plan__card {
    padding-bottom: 1.5625rem;
    width: 50%;
  }
}

@media screen and (min-width: 768px) {
  .p-plan__card:first-of-type {
    margin-top: 1.5625rem;
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .p-plan__card:first-of-type::before {
    background-color: #000000;
    bottom: 0;
    content: "";
    display: block;
    height: 69%;
    left: auto;
    position: absolute;
    right: 0;
    top: auto;
    width: 1px;
  }
}

.p-plan__card:not(:first-of-type) {
  margin-top: 50px;
  margin-top: 3.125rem;
}
@media screen and (min-width: 768px) {
  .p-plan__card:not(:first-of-type) {
    margin-top: 0;
  }
}

.p-plan__fukidashiA {
  background-image: url(/img/img_plan_balloon01.png);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 98% 100%;
  font-family: "FontHuiP", sans-serif;
  font-size: 26px;
  font-size: 1.625rem;
  letter-spacing: -0.01em;
  padding: 20px 0px 35px;
  padding: 1.25rem 0rem 2.1875rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-plan__fukidashiA {
    font-size: 1.875rem;
    padding: 1.0625rem 0rem 2.1875rem;
  }
}

.p-plan__fukidashiB {
  background-image: url(/img/img_plan_balloon02.png);
  background-position: 20px top;
  background-position: 1.25rem top;
  background-repeat: no-repeat;
  background-size: 83% 100%;
  font-family: "FontHuiP", sans-serif;
  font-size: 29.4px;
  font-size: 1.8375rem;
  letter-spacing: 0em;
  padding: 35px 0px 45px 45px;
  padding: 2.1875rem 0rem 2.8125rem 2.8125rem;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .p-plan__fukidashiB {
    background-position: 4.375rem top;
    background-size: 72% 100%;
    letter-spacing: 0.03em;
    padding: 2.5rem 0rem 2.8125rem 6.25rem;
  }
}

.p-plan__fukidashiTxtA--02 {
  font-size: 17.65px;
  font-size: 1.103125rem;
  letter-spacing: 0.05em;
  margin-top: -13px;
  margin-top: -0.8125rem;
  padding-right: 12px;
  padding-right: 0.75rem;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .p-plan__fukidashiTxtA--02 {
    font-size: 1.125rem;
    padding-right: 2.25rem;
  }
}

.p-plan__fukidashiTxtB--02 {
  font-size: 17.65px;
  font-size: 1.103125rem;
  letter-spacing: 0.05em;
  margin-top: -23px;
  margin-top: -1.4375rem;
  padding-right: 12px;
  padding-right: 0.75rem;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .p-plan__fukidashiTxtB--02 {
    padding-right: 2.9375rem;
  }
}

.p-plan__cardInnerA {
  margin-left: auto;
  margin-right: auto;
  width: 94%;
}
@media screen and (min-width: 768px) {
  .p-plan__cardInnerA {
    margin-left: 4%;
    margin-right: 16%;
    width: 80%;
  }
}

.p-plan__cardInnerB {
  margin-left: auto;
  margin-right: auto;
  width: 94%;
}
@media screen and (min-width: 768px) {
  .p-plan__cardInnerB {
    margin-left: 15%;
    margin-right: 5%;
    width: 80%;
  }
}

.p-plan__headingAreaA {
  background-color: #00a199;
  color: #ffffff;
  font-size: 31.4px;
  font-size: 1.9625rem;
  font-weight: 700;
  line-height: 1.3;
  margin-top: 20px;
  margin-top: 1.25rem;
  padding: 7px 0 10px;
  padding: 0.4375rem 0 0.625rem;
  text-align: center;
}
.p-plan__headingAreaB {
  background-color: #00a199;
  color: #ffffff;
  font-size: 31.4px;
  font-size: 1.9625rem;
  font-weight: 700;
  line-height: 1.3;
  margin-top: 20px;
  margin-top: 1.25rem;
  padding: 22px 0 20px;
  padding: 1.375rem 0 1.25rem;
  text-align: center;
}
.p-plan__heading--small {
  display: block;
  font-size: 19.6px;
  font-size: 1.225rem;
}
.p-plan__txtA {
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.09em;
  line-height: 1.777;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-plan__txtA {
    font-size: 1.125rem;
    line-height: 2;
    margin-top: 2.1875rem;
  }
}

.p-plan__txtB {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: 0.1em;
  line-height: 1.777;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-plan__txtB {
    font-size: 1.125rem;
    line-height: 2;
    margin-top: 2.5rem;
  }
}

.p-plan__note {
  font-size: 13px;
  font-size: 0.8125rem;
  letter-spacing: 0.035em;
  margin-top: 11px;
  margin-top: 0.6875rem;
}
@media screen and (min-width: 768px) {
  .p-plan__note {
    font-size: 0.9375rem;
    margin-top: 0.8125rem;
  }
}

.p-prblm {
  margin-top: 103px;
  margin-top: 6.4375rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-prblm {
    margin-top: 9.1875rem;
  }
}

.p-prblm::after {
  border-color: #00a199 transparent transparent transparent;
  border-style: solid;
  border-width: 26.2px 22.05px 0 22.05px;
  border-width: 1.6375rem 1.378125rem 0 1.378125rem;
  bottom: -23px;
  bottom: -1.4375rem;
  content: "";
  display: block;
  height: 0;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  width: 0;
}
@media screen and (min-width: 768px) {
  .p-prblm::after {
    border-width: 3.1375rem 2.6375rem 0 2.6375rem;
    bottom: -2.8125rem;
  }
}

.p-prblm__inner {
  height: auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 23px;
  padding-left: 1.4375rem;
  padding-right: 20px;
  padding-right: 1.25rem;
  width: 100%;
}
.p-prblm__ttl {
  text-align: center;
}
.p-prblm__ttl--small {
  display: block;
  font-size: 15px;
  font-size: 0.9375rem;
  letter-spacing: 0.4em;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .p-prblm__ttl--small {
    font-size: 1.25rem;
  }
}

.p-prblm__ttl--large {
  border: 1.5px solid #00a199;
  border-radius: 0.625rem;
  display: inline-block;
  font-size: 26px;
  font-size: 1.625rem;
  line-height: 1.15;
  margin-top: 10px;
  margin-top: 0.625rem;
  padding: 10px 20px 15px;
  padding: 0.625rem 1.25rem 0.9375rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-prblm__ttl--large {
    border: 2px solid #00a199;
    font-size: 2.40625rem;
    margin-top: 0.875rem;
    padding: 1.0625rem 1.25rem 1.3125rem;
  }
}

.p-prblm__ttl--large::before {
  border-color: #00a199 transparent transparent transparent;
  border-style: solid;
  border-width: 23px 8.5px 0 8.5px;
  border-width: 1.4375rem 0.53125rem 0 0.53125rem;
  bottom: 0;
  content: "";
  display: block;
  height: 0;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  width: 0;
}
@media screen and (min-width: 768px) {
  .p-prblm__ttl--large::before {
    border-width: 1.9375rem 0.5625rem 0 0.5625rem;
  }
}

.p-prblm__ttl--large::after {
  border-color: #ffffff transparent transparent transparent;
  border-style: solid;
  border-width: 23px 8.5px 0 8.5px;
  border-width: 1.4375rem 0.53125rem 0 0.53125rem;
  bottom: 4px;
  content: "";
  display: block;
  height: 0;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  width: 0;
}
@media screen and (min-width: 768px) {
  .p-prblm__ttl--large::after {
    border-width: 1.9375rem 0.5625rem 0 0.5625rem;
    bottom: 7px;
  }
}

.p-prblm__cntntsWrppr {
  margin-top: 30px;
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-prblm__cntntsWrppr {
    -moz-column-gap: 1.875rem;
         -webkit-column-gap: 1.875rem;
            column-gap: 1.875rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 3.125rem;
    padding-left: 4.875rem;
  }
}

.p-prblm__item {
  font-family: "FontHuiP", sans-serif;
  font-size: 17.5px;
  font-size: 1.09375rem;
  letter-spacing: -0.03em;
  padding-left: 1.6em;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-prblm__item {
    font-size: 1.875rem;
    letter-spacing: 0;
  }
}

.p-prblm__item::before {
  background-color: #00a199;
  border-radius: 50%;
  content: "";
  display: block;
  height: 15.3px;
  height: 0.95625rem;
  left: 2px;
  left: 0.125rem;
  position: absolute;
  top: 0.27em;
  width: 15.3px;
  width: 0.95625rem;
}
@media screen and (min-width: 768px) {
  .p-prblm__item::before {
    height: 1.64375rem;
    width: 1.64375rem;
  }
}

.p-prblm__item:not(:first-of-type) {
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-prblm__item:not(:first-of-type) {
    margin-top: 2.125rem;
  }
}

.p-prblm__imgBox {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-prblm__imgBox {
    display: block;
    height: 19.8125rem;
    width: 13.8125rem;
  }
}

.p-result__subTtl {
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: 600;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-result__subTtl {
    font-size: 2.0625rem;
  }
}

.p-result__ttl {
  margin-left: auto;
  margin-right: auto;
  margin-top: 21px;
  margin-top: 1.3125rem;
  width: 288px;
  width: 18rem;
}
@media screen and (min-width: 768px) {
  .p-result__ttl {
    height: 5.39375rem;
    margin-top: 2.1875rem;
    width: 34.46875rem;
  }
}

.p-result__bgEllipseBox {
  height: 292.5px;
  height: 18.28125rem;
  margin-top: 42px;
  margin-top: 2.625rem;
  overflow: hidden;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-result__bgEllipseBox {
    height: 25rem;
    margin-top: 2.5rem;
  }
}

.p-result__bgEllipse {
  background-color: #d9f1f0;
  border-radius: 50%;
  height: 681px;
  height: 42.5625rem;
  margin-left: -447.5px;
  margin-left: -27.96875rem;
  padding-top: 56.5px;
  padding-top: 3.53125rem;
  width: 1295px;
  width: 80.9375rem;
}
@media screen and (min-width: 768px) {
  .p-result__bgEllipse {
    height: 53.125rem;
    margin-left: -14.75%;
    padding-top: 5.625rem;
    width: 129.5%;
  }
}

.p-result__lists {
  margin-left: auto;
  margin-right: auto;
  padding-left: 23px;
  padding-left: 1.4375rem;
  width: 400px;
  width: 25rem;
}
@media screen and (min-width: 768px) {
  .p-result__lists {
    width: 50rem;
  }
}

.p-result__item {
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 700;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-result__item {
    font-size: 2.4125rem;
  }
}

.p-result__item:not(:first-of-type) {
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-result__item:not(:first-of-type) {
    margin-top: 2.5rem;
  }
}

.p-result__number {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #00a199;
  border-radius: 50%;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 28px;
  font-size: 1.75rem;
  height: 37.8px;
  height: 2.3625rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 0;
  position: absolute;
  top: 0;
  width: 37.8px;
  width: 2.3625rem;
}
@media screen and (min-width: 768px) {
  .p-result__number {
    font-size: 2.8125rem;
    height: 3.8125rem;
    width: 3.8125rem;
  }
}

.p-result__itemTxt {
  display: block;
  padding-left: 50px;
  padding-left: 3.125rem;
}
@media screen and (min-width: 768px) {
  .p-result__itemTxt {
    padding-left: 5.3125rem;
  }
}

.p-result__itemTxt--01 {
  background-image: url(/img/img_resolution_yellowLine_01.png);
  background-position: 83% 130%;
  background-repeat: no-repeat;
  background-size: 11.4375rem 1.375rem;
}
@media screen and (min-width: 768px) {
  .p-result__itemTxt--01 {
    background-position: 56% 130%;
    background-size: 18.5rem 2.28125rem;
  }
}

.p-result__itemTxt--02 {
  background-image: url(/img/img_resolution_yellowLine_02.png);
  background-position: 14% 35%;
  background-repeat: no-repeat;
  background-size: 9.53125rem 1.1875rem;
}
@media screen and (min-width: 768px) {
  .p-result__itemTxt--02 {
    background-position: 9% 110%;
    background-size: 15.38125rem 1.89375rem;
  }
}

.p-result__itemTxt--03 {
  background-image: url(/img/img_resolution_yellowLine_03.png);
  background-position: 14% 80%;
  background-repeat: no-repeat;
  background-size: 7.75rem 1.21875rem;
}
@media screen and (min-width: 768px) {
  .p-result__itemTxt--03 {
    background-position: 10% 80%;
    background-size: 12.5rem 1.975rem;
  }
}

.p-result__txt {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.13em;
  line-height: 2;
  margin-top: 60px;
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .p-result__txt {
    font-size: 1.125rem;
    letter-spacing: 0.15em;
    line-height: 2.2;
    margin-top: 2.8125rem;
    padding-left: 3.75rem;
    padding-right: 3.125rem;
  }
}

.p-thanks {
  height: auto;
  min-height: calc(100vh - 14.6875rem);
  padding-bottom: 80px;
  padding-bottom: 5rem;
  padding-top: 80px;
  padding-top: 5rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-thanks {
    min-height: calc(100vh - 21.25rem);
    padding-bottom: 10.625rem;
    padding-top: 10.625rem;
  }
}

.p-thanks__inner {
  height: auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 23px;
  padding-left: 1.4375rem;
  padding-right: 23px;
  padding-right: 1.4375rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-thanks__inner {
    max-width: calc(960px + 15rem);
    padding-left: 9.375rem;
    padding-right: 9.375rem;
  }
}

.p-thanks__ttl {
  color: #00a199;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 25px;
  font-size: 1.5625rem;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-thanks__ttl {
    font-size: 2.40625rem;
  }
}

.p-thanks__txt {
  font-family: "Kosugi Maru", sans-serif;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  line-height: 1.6214285714;
  margin-top: 16px;
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .p-thanks__txt {
    font-size: 1.125rem;
    line-height: 1.8888888889;
    margin-top: 5.25rem;
  }
}

.p-thanks__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: 400;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: 0.2em;
  margin-top: 63px;
  margin-top: 3.9375rem;
}
@media screen and (min-width: 768px) {
  .p-thanks__btn {
    font-size: 1.125rem;
    margin-top: 5.8125rem;
  }
}

.p-thanks__btn a {
  background-color: #d5d5d5;
  border-radius: 0.3125rem;
  display: block;
  padding: 8px 17px;
  padding: 0.5rem 1.0625rem;
}
@media screen and (min-width: 768px) {
  .p-thanks__btn a {
    padding: 0.625rem 1.4375rem;
  }
}

.p-voice__ttl {
  font-family: "Kosugi Maru", sans-serif;
  font-size: 26px;
  font-size: 1.625rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-voice__ttl {
    font-size: 2rem;
    padding-left: 1.0625rem;
    text-align: left;
  }
}

.p-voice__ttl span {
  border: 1.5px solid #00a199;
  border-radius: 0.9375rem;
  display: inline-block;
  padding: 15px 20px;
  padding: 0.9375rem 1.25rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-voice__ttl span {
    border: 2px solid #00a199;
    padding: 0.625rem 1.25rem;
  }
}

.p-voice__ttl span::before {
  border-color: #00a199 transparent transparent transparent;
  border-style: solid;
  border-width: 28px 7.5px 0 7.5px;
  border-width: 1.75rem 0.46875rem 0 0.46875rem;
  bottom: 0;
  content: "";
  display: block;
  height: 0;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  width: 0;
}
.p-voice__ttl span::after {
  border-color: #ffffff transparent transparent transparent;
  border-style: solid;
  border-width: 28px 7.5px 0 7.5px;
  border-width: 1.75rem 0.46875rem 0 0.46875rem;
  bottom: 6px;
  content: "";
  display: block;
  height: 0;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  width: 0;
}
.p-voice__contentsBox {
  margin-top: 55px;
  margin-top: 3.4375rem;
}
@media screen and (min-width: 768px) {
  .p-voice__contentsBox {
    margin-top: 0.9375rem;
  }
}

.p-voice__item {
  font-family: "Kosugi Maru", sans-serif;
  width: 100%;
}
.p-voice__item:not(:first-of-type) {
  margin-top: 37px;
  margin-top: 2.3125rem;
}
@media screen and (min-width: 768px) {
  .p-voice__item:not(:first-of-type) {
    margin-top: 0;
  }
}
/*# sourceMappingURL=style.css.map */
