@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}
html {
  font-size: 62.5%;
}

body {
  color: #2D4349;
  font-size: 1.5rem;
  line-height: 1.4;
  font-family: YakuHanJP, "Noto Sans JP", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
  letter-spacing: 0.02em;
}

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

a:link,
a:visited,
a:hover,
a:active {
  text-decoration: none;
}

*:focus {
  outline: none;
}

p,
ul li,
ol li {
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all;
}

img,
picture {
  display: block;
}

b {
  font-weight: bold;
}

main {
  background: #F2F4EB;
}

/*
* wrapper
*/

.l-main {
  background: #fff;
}

.l-side {
  display: none;
}

.l-sp-nav {
  z-index: 10;
  position: fixed;
  top: 0;
  right: -33rem;
  bottom: 0;
  width: 33rem;
  padding: 9.4rem 2.4rem 0;
  background: rgba(242, 253, 229, 0.95);
  transition: right 0.3s;
}
.l-sp-nav__inner {
  height: 100%;
  padding-bottom: 4.4rem;
  overflow: auto;
}
.l-sp-nav.active {
  right: 0;
}

/*
 * ボタン
 */
.c-btn {
  display: inline-block;
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  background-color: transparent;
  line-height: 1;
  text-align: center;
  cursor: pointer;
}

.c-btn-white2, .c-btn-white, .c-btn-green {
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  line-height: 1;
  vertical-align: top;
  transition: opacity 0.3s;
}
.c-btn-white2:hover, .c-btn-white:hover, .c-btn-green:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.c-btn-white2:after, .c-btn-white:after, .c-btn-green:after {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 0.6rem solid #fff;
  border-left: 0.6rem solid transparent;
  content: "";
}

.c-btn-green {
  padding: 0.5rem 1.8rem;
  gap: 0 0.5rem;
  border: 1px solid #fff;
  background: #11BB86;
  color: #fff;
  font-weight: 500;
  font-size: 1.1rem;
  letter-spacing: 0.05em;
}
.c-btn-green.-mail:before {
  display: inline-block;
  width: 1.1rem;
  height: 1rem;
  background: url("../images/icon/icon_mail.svg") no-repeat center/contain;
  content: "";
}

.c-btn-white {
  -ms-flex-align: end;
      align-items: flex-end;
  padding: 0.5rem 0;
  border-bottom: 1px solid #26906F;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.3), #fff);
}
.c-btn-white:after {
  border-bottom-color: #26906F;
}
.c-btn-white__txt {
  margin-right: 3rem;
  margin-bottom: 0.3rem;
  color: #26906F;
  font-weight: 500;
  font-size: 1.1rem;
}
.c-btn-white__num {
  color: #2AC696;
  font-style: normal;
  font-weight: 500;
  font-size: 3.1rem;
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  letter-spacing: 0.05em;
}
.c-btn-white__num small {
  margin-right: 0.6rem;
  font-size: 1.5rem;
  letter-spacing: 0;
}

.c-btn-white2 {
  width: 100%;
  padding: 0.8rem 2rem 1.2rem;
  border: 1px solid #82E1AD;
  border-image: linear-gradient(135deg, #BCE080 0%, #82E1AD 100%);
  border-image-slice: 1;
  background: #fff;
  color: #2AC696;
  font-weight: 500;
  font-size: 2.1rem;
}
.c-btn-white2:after {
  border-bottom-color: #82E1AD;
}
.c-btn-white2 + .c-btn-white2 {
  margin-top: 1.5rem;
}
.c-btn-white2.-tel {
  font-style: normal;
  font-weight: 500;
  font-size: 2.4rem;
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  letter-spacing: 0.06em;
}
.c-btn-white2.-tel small {
  display: inline-block;
  margin-top: 0.5rem;
  margin-right: 0.5rem;
  font-size: 1.7rem;
  vertical-align: text-bottom;
}
.c-btn-white2.-mail:before {
  display: inline-block;
  width: 1.8rem;
  height: 1.5rem;
  margin-right: 0.5rem;
  background: url("../images/icon/icon_mail_green.svg") no-repeat center/contain;
  content: "";
}

/*
 * 見出し
 */
.c-h1 {
  font-weight: bold;
  font-size: 2.4rem;
}

.c-h2 {
  font-weight: bold;
  font-size: 2.2rem;
}

.c-h1-green {
  margin-bottom: 2.4rem;
  padding: 0.5rem 0 1rem;
  background: #EFFDDE;
  font-weight: bold;
  font-size: 2.8rem;
  text-align: center;
}
.c-h1-green.-icon {
  padding-top: 1.8rem;
}
.c-h1-green small {
  font-weight: normal;
  font-size: 1.6rem;
}
.c-h1-green__icon {
  position: absolute;
  top: 0;
  left: 50%;
  width: 12rem;
  transform: translateX(-50%);
}
.c-h1-green__outer {
  position: relative;
  padding-top: 6.3rem;
}

.c-h1-2row {
  font-weight: bold;
  font-size: 2.8rem;
  text-align: center;
}
.c-h1-2row.-short {
  padding-top: 0.5rem;
  font-weight: 500;
  font-size: 2.4rem;
}
.c-h1-2row__small {
  display: block;
  margin-bottom: 1rem;
  padding-bottom: 1.9rem;
  background: url("../images/icon/Vector_203.svg") no-repeat center bottom/auto 1.1rem;
  font-weight: normal;
  font-size: 1.5rem;
}
.c-h1-2row__small.-white {
  background-image: url("../images/icon/Vector_203_white.svg");
}
.c-h1-2row em {
  font-size: 2.8rem;
}

.c-h1-1row {
  padding-bottom: 2.9rem;
  background: url("../images/icon/Vector_203_black.svg") no-repeat center bottom/auto 0.9rem;
  font-weight: bold;
  font-size: 2.8rem;
  text-align: center;
}
.c-h1-1row.-green {
  background-image: url("../images/icon/Vector_203_green.svg");
}

/*
 * 背景
 */
.c-bg-grad {
  background: linear-gradient(135deg, #F3FFDF, #AFDCC3);
}

/*
 * header
 */
.p-hdr {
  position: relative;
  border-bottom: 2px solid #F2F4EB;
  background: linear-gradient(135deg, #F8FFED, #C8F9DE);
}
.p-hdr__inner {
  width: min(100% - 48px, 1120px);
  margin: 0 auto;
  padding: 1rem 0 1.6rem;
}
.p-hdr__left, .p-hdr__right {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.p-hdr__right {
  margin-top: 1rem;
  gap: 1rem 0;
}
.p-hdr__h1 {
  margin-bottom: 0.3rem;
  color: #11BB86;
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1.1;
  letter-spacing: 0.03em;
}
.p-hdr__btn-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.p-hdr__txt {
  font-size: 1.2rem;
  line-height: 1.4;
}

.p-gnav-pc {
  display: none;
}
.p-gnav-pc__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
.p-gnav-pc__item {
  position: relative;
  padding: 1.2rem 4rem;
  font-size: 1.6rem;
}
.p-gnav-pc__item a {
  display: inline-block;
  color: inherit;
  letter-spacing: 0.05em;
  transition: opacity 0.3s;
}
.p-gnav-pc__item a:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-gnav-pc__item:before {
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 1.5rem;
  transform: translateY(-50%);
  background: #2D4349;
  content: "";
}
.p-gnav-pc__item:last-of-type:before {
  display: none;
}

.p-gnav-sp__btn {
  display: block;
  visibility: hidden;
  z-index: 11;
  position: fixed;
  top: 2rem;
  right: 24px;
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  background: linear-gradient(135deg, #BCE080, #82E1AD);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  transition: opacity 0.3s;
}
.p-gnav-sp__btn span {
  display: block;
  position: absolute;
  left: 1.57rem;
  width: 2.8rem;
  height: 0.3rem;
  border-radius: 0.2rem;
  background: #fff;
}
.p-gnav-sp__btn span:first-of-type {
  top: calc(50% - 1rem);
  transform-origin: left;
  transition: transform 0.3s, left 0.3s, top 0.3s;
}
.p-gnav-sp__btn span:nth-of-type(2) {
  top: calc(50% - 0.15rem);
  transition: opacity 0.3s;
}
.p-gnav-sp__btn span:last-of-type {
  bottom: calc(50% - 1rem);
  transform-origin: left;
  transition: transform 0.3s, left 0.3s, bottom 0.3s;
}
.p-gnav-sp__btn.visible {
  visibility: visible;
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  transition: opacity 0.3s;
}
.p-gnav-sp__btn.active span {
  left: 1.9rem;
}
.p-gnav-sp__btn.active span:first-of-type {
  top: calc(50% - 1.15rem);
  transform: rotate(45deg);
}
.p-gnav-sp__btn.active span:nth-of-type(2) {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}
.p-gnav-sp__btn.active span:last-of-type {
  bottom: calc(50% - 1.15rem);
  transform: rotate(-45deg);
}
.p-gnav-sp__list {
  margin-bottom: 2rem;
}
.p-gnav-sp__list a {
  color: #2D4349;
  font-size: 1.6rem;
}
.p-gnav-sp__list li + li {
  margin-top: 1.2rem;
}

/*
 * article
 */
.p-fv {
  background: url("../images/fv/fv-bg.jpg") repeat-x center/auto 100%;
}
.p-fv__img {
  width: min(100%, 144rem);
  margin: 0 auto;
}
.p-fv img {
  width: 100%;
}

.p-ques {
  position: relative;
}
.p-ques__img {
  padding-top: 8rem;
}
.p-ques__img img {
  width: 100%;
}
.p-ques__h1 {
  display: block;
  position: absolute;
  top: 2rem;
  left: 0;
  width: 100%;
}
.p-ques__h1__small {
  display: inline-block;
  position: relative;
  padding: 0.5rem 2.5rem;
  border-radius: 5px;
  background: #68A491;
  color: #fff;
  font-weight: 500;
  font-size: 1.9rem;
  line-height: 1;
}
.p-ques__h1__small:before {
  display: block;
  position: absolute;
  bottom: -0.8rem;
  left: 50%;
  transform: translateX(-50%);
  border-top: 0.8rem solid #68A491;
  border-right: 0.8rem solid transparent;
  border-left: 0.8rem solid transparent;
  content: "";
}
.p-ques__h1__large {
  display: block;
  margin-top: 1.5rem;
  font-weight: bold;
  font-size: 2.8rem;
  letter-spacing: 0.03em;
}
.p-ques__list {
  position: relative;
  top: -6rem;
  width: min(100% - 48px, 64rem);
  margin: 0 auto;
  padding: 2rem 2.4rem 2.4rem;
  border-radius: 1rem;
  background: #F2F4EB;
  font-weight: 500;
  font-size: 1.6rem;
}
.p-ques__list li {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  padding: 0.5rem 0;
}
.p-ques__list li:before {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.6rem;
  height: 1.6rem;
  margin: 0.5rem 0.5rem 0 0.3rem;
  background: url("../images/icon/icon_check.svg") no-repeat center/contain;
  content: "";
}
.p-ques__hukidashi {
  margin-top: -4rem;
}
.p-ques__hukidashi img {
  width: 32rem;
  margin: 0 auto;
}

.p-feat {
  padding: 6rem 0 4rem;
}
.p-feat__list {
  margin: 0 24px;
}
.p-feat__item {
  padding: 2rem;
  border-radius: 1rem;
  background: #F2F4EB;
}
.p-feat__item img {
  width: 20rem;
  margin: 0 auto;
}
.p-feat__item p {
  line-height: 1.8;
}
.p-feat__item + .p-feat__item {
  margin-top: 2.4rem;
}
.p-feat__h1 {
  margin-bottom: 1rem;
  padding: 0.5rem 0;
  background: #fff;
  font-weight: bold;
  text-align: center;
}

.p-diff {
  padding: 4rem 0 0;
}
.p-diff__img01 {
  position: absolute;
  top: -7rem;
  left: 50%;
  width: 24rem;
  margin: 0 auto;
  transform: translateX(-50%);
}
.p-diff__table {
  position: relative;
  width: 100%;
  margin-top: 10rem;
  font-weight: bold;
}
.p-diff__table th {
  padding-bottom: 0.6rem;
  color: #2AC696;
  font-size: 1.2rem;
  vertical-align: middle;
}
.p-diff__table th small {
  display: block;
  font-size: 1rem;
  line-height: 1;
}
.p-diff__table tr {
  border-top: 1px solid #B4BFBC;
  border-bottom: 1px solid #B4BFBC;
  text-align: center;
}
.p-diff__table tr:first-of-type {
  border-top: none;
}
.p-diff__table tr:nth-of-type(even) td:nth-of-type(odd) {
  background: rgba(242, 244, 235, 0.5);
}
.p-diff__table tr:nth-of-type(even) td:nth-of-type(even) {
  background: #F2F4EB;
}
.p-diff__table tr:nth-of-type(odd) td:nth-of-type(odd) {
  background: rgba(239, 253, 222, 0.5);
}
.p-diff__table tr:nth-of-type(odd) td:nth-of-type(even) {
  background: #EFFDDE;
}
.p-diff__table td {
  padding: 0.8rem 0.5rem;
  font-size: 1rem;
  vertical-align: middle;
}
.p-diff__table td small {
  display: block;
  font-weight: normal;
  font-size: 1rem;
  line-height: 1.3;
}
.p-diff__h2 {
  display: inline-block;
  position: relative;
  width: 95%;
  margin: 0 auto 2rem;
  padding: 1.3rem 0.5rem;
  border-radius: 1.8rem;
  background: #57B59A;
  color: #fff;
  font-weight: bold;
  font-size: 2.8rem;
  text-align: center;
}
.p-diff__h2 small {
  display: block;
  font-weight: 500;
  font-size: 1.4rem;
}
.p-diff__h2:before {
  position: absolute;
  top: -0.9rem;
  left: 50%;
  width: 3.4rem;
  height: 1rem;
  transform: translateX(-50%);
  background: url("../images/diff/Polygon_3.svg") no-repeat center bottom/contain;
  content: "";
}
.p-diff__img02 {
  width: 20.5rem;
  margin: 4.5rem auto 0;
}
.p-diff__list {
  margin: 0 24px;
}
.p-diff__item {
  padding: 2rem;
  border-radius: 1rem;
}
.p-diff__item:first-of-type {
  background: #F7FEEF;
}
.p-diff__item:last-of-type {
  background: #F2F6ED;
}
.p-diff__item + .p-diff__item {
  margin-top: 2rem;
}
.p-diff__item img {
  width: 10rem;
  margin: 0 auto;
}
.p-diff__h3 {
  margin-bottom: 2rem;
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1.2;
  text-align: center;
}
.p-diff__check-list li {
  display: -ms-flexbox;
  display: flex;
  font-weight: normal;
  line-height: 1.5;
}
.p-diff__check-list li:before {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.8rem;
  height: 1.8rem;
  margin: 0.3rem 1rem 0 0;
  background: url("../images/icon/icon_check_02.svg") no-repeat center/contain;
  content: "";
}
.p-diff__check-list li + li {
  margin-top: 2rem;
}
.p-diff__check-list li small {
  display: block;
  font-size: 1.5rem;
}

.p-rsn {
  padding: 4rem 24px;
  background: url("../images/5reason/rsn-bg-sp.jpg") repeat-y top center/100% auto;
}
.p-rsn__h1 {
  display: inline-block;
  position: relative;
  width: 100%;
  padding: 2.6rem 0 1.8rem;
  border-radius: 0.3rem;
  background: #26B088;
  color: #fff;
  font-weight: bold;
  font-size: 3.6rem;
  text-align: center;
}
.p-rsn__h1 small {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 500;
  font-size: 1.6rem;
}
.p-rsn__h1:before {
  position: absolute;
  top: 0.7rem;
  right: 0.7rem;
  bottom: 0.7rem;
  left: 0.7rem;
  border: 1px solid #fff;
  border-radius: 0.3rem;
  content: "";
}
.p-rsn__list {
  width: min(100%, 72rem);
  margin: 0 auto;
}
.p-rsn__item {
  position: relative;
  margin-top: 2rem;
  padding: 2rem 1.6rem 4rem;
  background: rgba(255, 255, 255, 0.8);
  text-align: center;
}
.p-rsn__num {
  display: inline-block;
  margin-bottom: 1rem;
  padding: 0.3rem 4rem 0;
  background: linear-gradient(135deg, #BCE080 0%, #82E1AD 100%);
  color: #fff;
  font-style: normal;
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 1;
  font-family: "Amiri", serif;
  letter-spacing: -0.02em;
}
.p-rsn__h2 {
  margin-bottom: 1rem;
  color: #57B59A;
  font-weight: 500;
  font-size: 2rem;
}
.p-rsn__2col img {
  display: inline-block;
  width: min(100% + 3.2rem, 37.5rem);
  margin: 0 -1.6rem 0.5rem;
}
.p-rsn__2col p {
  color: #000;
  line-height: 1.8;
}

.p-case {
  padding: 4rem 0;
}
.p-case__item {
  margin: 0 24px;
  padding: 2rem 0;
  border-bottom: 1px dashed #AFDCC3;
}
.p-case__item:last-of-type {
  border-bottom: none;
}
.p-case__item p {
  line-height: 1.8;
}
.p-case__thumb {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 20rem;
  margin: 0 auto 2rem;
}
.p-case__num {
  width: 8.8rem;
  margin: 0 auto 0.8rem;
}
.p-case__h1 {
  margin-bottom: 0.8rem;
  color: #26906F;
  font-weight: 500;
  font-size: 2rem;
  text-align: center;
}

.p-kinds {
  padding: 2.4rem 0;
  background: url("../images/kinds/kinds-bg-sp.jpg") no-repeat center/cover;
}
.p-kinds__inner {
  margin: 0 24px;
  padding: 2.4rem;
  border-radius: 1rem;
  background: #fff;
  box-shadow: 0 4px 11px rgba(156, 193, 181, 0.29);
}
.p-kinds__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: center;
      justify-content: center;
  margin-top: 2rem;
  gap: 2rem 6%;
}
.p-kinds__item {
  width: 40%;
}
.p-kinds__item img {
  width: 100%;
  margin-bottom: 0.8rem;
}
.p-kinds__item p {
  font-weight: bold;
  font-size: 1.2rem;
  text-align: center;
}

.p-symp {
  padding: 4rem 0;
}
.p-symp__item {
  margin: 2rem 24px 0;
  padding: 2.4rem;
  border: 1px solid #82E1AD;
  border-radius: 1rem;
  box-shadow: 0 4px 11px #DBEDE8;
}
.p-symp__thumb {
  position: relative;
  margin-bottom: 2rem;
}
.p-symp__thumb img {
  width: 100%;
}
.p-symp__thumb:before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1.4rem;
  transform: translateY(-50%);
  background: url("../images/symp/three-arrow.svg") no-repeat center/contain;
  content: "";
}
.p-symp__fig01, .p-symp__fig02 {
  position: absolute;
  left: 1.5rem;
  color: #fff;
  font-size: 2.1rem;
}
.p-symp__fig01 {
  top: 0.5rem;
}
.p-symp__fig02 {
  bottom: 0.5rem;
}
.p-symp__table {
  width: 100%;
}
.p-symp__table tr {
  background-image: linear-gradient(to right, #808B88 2px, transparent 2px);
  background-position: left bottom;
  background-size: 4px 0.5px;
  background-repeat: repeat-x;
}
.p-symp__table th,
.p-symp__table td {
  padding: 0.5rem 0;
  vertical-align: middle;
}
.p-symp__table th {
  width: 10rem;
  padding-right: 2rem;
  font-weight: bold;
  text-align: left;
}
.p-symp__table td {
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all;
}
.p-sel__inner {
  padding: 4rem 0;
  background: #F8FAF2;
}
.p-sel__bg-sp {
  display: block;
  width: 100%;
}
.p-sel__h1 {
  margin-bottom: 2rem;
}
.p-sel__item {
  margin: 0 24px;
}
.p-sel__item + .p-sel__item {
  margin-top: 3rem;
}
.p-sel__item p {
  line-height: 1.8;
}
.p-sel__img {
  position: relative;
  margin-bottom: 1rem;
}
.p-sel__img img {
  width: 100%;
}
.p-sel__img:before {
  display: block;
  position: absolute;
  left: 50%;
  width: 7.9rem;
  height: 100%;
  transform: translateX(-50%);
  background: url("../images/5reason/reason_polygon_4.png") no-repeat center/contain;
  content: "";
}
.p-sel__num {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #2AC696;
  font-weight: 500;
  font-size: 1.3rem;
  line-height: 1;
  text-align: center;
}
.p-sel__num span {
  display: block;
  margin-top: 0.8rem;
  color: #BCE080;
  font-style: normal;
  font-weight: 400;
  font-weight: normal;
  font-size: 3rem;
  font-family: "Amiri", serif;
}
.p-sel__h2 {
  margin-bottom: 0.5rem;
  font-weight: bold;
  font-size: 2rem;
  text-align: center;
}

.p-flow {
  padding: 4rem 0;
  counter-reset: number 0;
}
.p-flow__list {
  position: relative;
  margin: 0 3rem;
  padding-bottom: 2rem;
}
.p-flow__list:before {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 2.9rem;
  width: 2px;
  background-image: linear-gradient(to bottom, #BCE080 4px, transparent 4px);
  background-position: center top;
  background-size: 4px 6px;
  background-repeat: repeat-y;
  content: "";
}
.p-flow__item {
  display: -ms-flexbox;
  display: flex;
  position: relative;
  margin-top: 4rem;
  gap: 0 1rem;
}
.p-flow__item:before {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  width: 6rem;
  height: 6rem;
  margin: -1rem 0 0;
  padding-top: 0.5rem;
  border: 0.6rem solid #fff;
  border-radius: 50%;
  background: linear-gradient(135deg, #F3FFDF, #AFDCC3);
  content: "0" counter(number);
  color: #fff;
  font-style: normal;
  font-weight: 400;
  font-weight: bold;
  font-size: 2.3rem;
  line-height: 1;
  font-family: "Amiri", serif;
  letter-spacing: 0.04em;
  text-shadow: 0 0 10px #63DD7C;
  counter-increment: number 1;
}
.p-flow__item:first-of-type {
  margin-top: 2rem;
}
.p-flow__item p {
  line-height: 1.8;
}
.p-flow__h1 {
  margin-bottom: 1rem;
  color: #2AC696;
  font-weight: bold;
  font-size: 2rem;
}

.p-caution {
  padding: 4rem 0 5rem;
  background: #E3EAE5;
}
.p-caution__inner {
  padding: 24px 24px 0;
}
.p-caution__icon {
  width: 5.8rem;
  margin: 0 auto 1rem;
}
.p-caution__note {
  margin: 0 0 2.5rem;
  line-height: 1.8;
}
.p-caution__item + .p-caution__item {
  margin-top: 4rem;
}
.p-caution__item p {
  line-height: 1.8;
}
.p-caution__h2 {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  margin-bottom: 1rem;
  gap: 0 1rem;
  font-weight: 500;
  font-size: 2rem;
}
.p-caution__h2:before {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  margin: 0.7rem 0.5rem 0 0;
  background: url("../images/icon/icon_caution_black.svg") no-repeat center/contain;
  content: "";
}

.p-price {
  width: min(100% - 48px, 72rem);
  margin: 0 auto;
  padding: 4rem 0;
}
.p-price__box {
  margin-top: 2rem;
  padding: 2px;
  border-radius: 2rem;
  background: linear-gradient(135deg, #BCE080, #82E1AD);
}
.p-price__box-inner {
  padding: 2.4rem;
  border-radius: 1.8rem;
  background: #fff;
}
.p-price__table {
  width: 100%;
}
.p-price__table tr {
  background-image: linear-gradient(to right, #BCE080 2px, transparent 2px);
  background-position: left bottom;
  background-size: 5px 2px;
  background-repeat: repeat-x;
}
.p-price__table th,
.p-price__table td {
  padding: 1rem 0;
  vertical-align: middle;
}
.p-price__table th {
  padding-right: 2.4rem;
  font-weight: 500;
  font-size: 1.5rem;
  text-align: left;
}
.p-price__table td {
  font-weight: 500;
  font-size: 1.5rem;
  text-align: right;
  white-space: nowrap;
}
.p-price__table td.-em {
  font-weight: 500;
  font-size: 2.4rem;
}
.p-price__note {
  margin-top: 1rem;
  font-size: 1.4rem;
  text-align: right;
}

.p-pay {
  padding: 4rem 0;
  background: #EEF6CB;
}
.p-pay__h1 {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  gap: 0 1.5rem;
  font-weight: bold;
  font-size: 2.8rem;
}
.p-pay__h1 img {
  width: 7.5rem;
}
.p-pay__list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  margin: 2rem 0 0;
  gap: 0 2.1rem;
}
.p-pay__item {
  position: relative;
  width: 10.3rem;
  height: 10.3rem;
  border-radius: 50%;
  background: #fff;
  color: #2AC696;
}
.p-pay__ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
}
.p-pay__ttl em {
  font-size: 2.1rem;
}
.p-pay__ttl small {
  font-size: 1.3rem;
}
.p-pay__txt {
  margin: 2rem 24px 0;
  font-size: 1.6rem;
  line-height: 1.8;
}

.p-faq {
  background: url("../images/faq/faq-bg-sp.jpg") repeat-y center top/100% auto;
}
.p-faq__inner {
  padding: 4rem 24px 5rem;
  background: rgba(255, 255, 255, 0.8);
}
.p-faq__list {
  padding: 1rem 0.9rem 0;
}
.p-faq__item {
  margin-top: 4rem;
}
.p-faq__item:first-of-type {
  margin-top: 2rem;
}
.p-faq__q, .p-faq__a {
  position: relative;
  padding: 2rem 4rem;
  border-radius: 3rem;
}
.p-faq__q:before, .p-faq__a:before {
  position: absolute;
  bottom: 0;
  width: 2.8rem;
  height: 2.8rem;
  content: "";
}
.p-faq__q {
  background: #EEF6CB;
  font-weight: bold;
  font-size: 1.8rem;
}
.p-faq__q:before {
  left: -0.9rem;
  background: url("../images/faq/faq-q-parts.png") no-repeat bottom left/contain;
}
.p-faq__a {
  margin-top: 1rem;
  background: #D6F7ED;
  font-weight: 500;
  font-size: 1.6rem;
}
.p-faq__a:before {
  right: -0.9rem;
  background: url("../images/faq/faq-a-parts.png") no-repeat bottom right/contain;
}

.p-pro {
  padding: 4rem 0;
}
.p-pro__box {
  padding: 0 24px;
}
.p-pro__box img {
  width: 18rem;
  margin: 2rem auto;
}
.p-pro__name01 {
  margin-bottom: 0.5rem;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.8;
}
.p-pro__name02 {
  margin-bottom: 1rem;
  font-weight: 500;
  font-size: 2.4rem;
}
.p-pro__h2 {
  font-weight: bold;
  line-height: 1.8;
}
.p-pro__list li {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  line-height: 1.8;
}
.p-pro__list li:before {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding: 0 0.8rem;
  content: "・";
}
.p-pro__list + .p-pro__h2 {
  margin-top: 2.5rem;
}

.p-cta {
  padding: 3.5rem 0;
  background: url("../images/cta/cta-bg-sp.jpg") no-repeat top center/cover;
}
.p-cta__box {
  padding: 3.6rem 4rem 0;
}
.p-cta__h1 {
  font-size: 2rem;
}
.p-cta__btn {
  position: relative;
  width: min(100%, 32rem);
  height: 5.8rem;
  margin: 0 auto;
  border-bottom: 1.5px solid #fff;
  background: linear-gradient(135deg, #BCF263, #3DBF78);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
  transition: filter 0.3s;
}
.p-cta__btn:hover {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="1.05" /><feFuncG type="linear" slope="1.05" /><feFuncB type="linear" slope="1.05" /></feComponentTransfer></filter></svg>#filter');
  filter: brightness(1.05);
}
.p-cta__btn:before {
  position: absolute;
  right: 0;
  bottom: 0;
  border-bottom: 1.6rem solid #fff;
  border-left: 1.6rem solid transparent;
  content: "";
}
.p-cta__btn-tel, .p-cta__btn-net {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  height: 100%;
  color: #fff;
  text-shadow: 0 0 6px #80B874;
}
.p-cta__btn-tel {
  padding-left: 1rem;
  font-style: normal;
  font-weight: 500;
  font-size: 2.8rem;
  line-height: 1;
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  letter-spacing: 0.05em;
}
.p-cta__btn-tel small {
  display: inline-block;
  margin: 1.2rem 0.3rem 0 0;
  font-size: 1.4rem;
  letter-spacing: 0;
}
.p-cta__btn-tel .-icon01 {
  position: absolute;
  right: 1.2rem;
  bottom: 0;
  width: 7rem;
}
.p-cta__btn-net {
  -ms-flex-pack: center;
      justify-content: center;
  margin-top: 2.5rem;
  font-weight: bold;
  font-size: 2.5rem;
  line-height: 1;
  text-align: center;
}
.p-cta__btn-net small {
  display: block;
  font-weight: 500;
  font-size: 1.4rem;
}
.p-cta__btn-net .-icon01 {
  position: absolute;
  bottom: 0.6rem;
  left: 1rem;
  width: 5.4rem;
}
.p-cta__btn-net .-icon02 {
  position: absolute;
  right: 1.5rem;
  bottom: 1.2rem;
  width: 6.1rem;
}
.p-cta__txt {
  margin: 1.5rem -1rem 0;
  font-weight: bold;
  font-size: 2rem;
}

/*
 * aside
 */
.p-side {
  padding: 3rem 2rem;
  border: 1px solid #99D3B2;
  border-radius: 1rem;
  background: #fff;
}
.p-side__item {
  margin-bottom: 1.4rem;
}
.p-side__item:last-of-type {
  margin-bottom: 2rem;
}
.p-side__h1 {
  font-weight: 500;
  font-size: 1.4rem;
}
.p-side__h1 span {
  display: inline-block;
  margin-left: 0.5rem;
  color: #99D3B2;
  font-style: normal;
  font-weight: 500;
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
}
.p-side__txt {
  font-size: 1.5rem;
}
.p-side__txt a {
  color: inherit;
  transition: opacity 0.3s;
}
.p-side__txt a:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

/*
 * footer
 */
.p-ftr {
  padding-top: 4rem;
  background: linear-gradient(135deg, #F3FFDF, #AFDCC3);
}
.p-ftr__inner {
  width: min(100% - 48px, 120rem);
  margin: 0 auto 5.5rem;
}
.p-ftr__h1 {
  font-weight: 500;
  font-size: 2.4rem;
}
.p-ftr__h1 small {
  display: block;
  color: #13AF7F;
  font-style: normal;
  font-weight: 400;
  font-weight: normal;
  font-size: 2.4rem;
  font-family: "Amiri", serif;
}
.p-ftr__info {
  margin-top: 1rem;
}
.p-ftr__info th {
  width: 10rem;
  padding: 0.5rem 0;
  font-size: 1.8rem;
  text-align: left;
}
.p-ftr__info td {
  padding: 0.5rem 0;
  font-size: 1.8rem;
}
.p-ftr__info em {
  font-size: 1.8rem;
}
.p-ftr__table {
  width: 100%;
  margin-top: 3rem;
  font-size: 1.4rem;
}
.p-ftr__table th {
  padding: 0.2rem 0.8rem;
  background: #fff;
  text-align: left;
  vertical-align: middle;
}
.p-ftr__table th:first-of-type {
  padding: 0 0 0 1rem;
}
.p-ftr__table th:last-of-type {
  padding: 0 1rem 0 0.6rem;
}
.p-ftr__table td {
  padding: 0 0.6rem;
  letter-spacing: 0;
  text-align: left;
  vertical-align: middle;
}
.p-ftr__table td:first-of-type {
  padding: 0.5rem 0.5rem 0.5rem 1rem;
}
.p-ftr__table td:last-of-type {
  padding: 0.5rem 1rem 0.5rem 0.6rem;
}
.p-ftr__note {
  margin-bottom: 2.5rem;
  font-size: 1.1rem;
  text-align: right;
}
.p-ftr__nav {
  display: inline-block;
  padding: 0 2rem 0 0;
  vertical-align: top;
}
.p-ftr__nav li {
  font-size: 1.6rem;
}
.p-ftr__nav li + li {
  margin-top: 1rem;
}
.p-ftr__nav li a {
  display: inline-block;
  color: #2D4349;
  transition: opacity 0.3s;
}
.p-ftr__nav li a:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-ftr__map {
  position: relative;
  height: 40rem;
}
.p-ftr__map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.p-ftr__cr {
  padding: 8rem 0;
  background: #262626;
  color: #fff;
  font-weight: bold;
  font-size: 1.6rem;
  text-align: center;
}

/*
 * block
 */
.u-sp {
  display: block;
}

.u-pc {
  display: none;
}

.u-hidden {
  display: none;
}

/*
 * color
 */
.u-orange-light {
  color: #F16358;
}

.u-red {
  color: #F16358;
}

.u-green {
  color: #2AC696;
}

/*
 * text-align
 */
.u-tac {
  text-align: center;
}

/*-------------------------------

	Reset

-------------------------------*/
/*-------------------------------

	Foundation

-------------------------------*/
/*-------------------------------

	Layout

-------------------------------*/
/*-------------------------------

	Object

-------------------------------*/
/*---------- Component ----------*/
/*---------- Project ----------*/
/*---------- Utility ----------*/
@media only screen and (min-width: 768px){

  /* tablet-size */
  .l-2col{
    padding-bottom: 8rem;
  }
  .l-main{
    width: min(100%, 960px);
    margin: 0 auto;
  }
  .l-base{
    width: 92%;
    margin-right: auto;
    margin-left: auto;
  }
  .l-short{
    width: 83%;
    margin-right: auto;
    margin-left: auto;
  }
  .c-btn-white2:after, .c-btn-white:after, .c-btn-green:after{
    width: 1rem;
    height: 1rem;
    border-bottom-width: 1rem;
    border-left-width: 1rem;
  }
  .c-btn-green{
    font-size: 1.8rem;
  }
  .c-btn-green{
    padding: 0.7rem 3rem;
  }
  .c-btn-green.-mail:before{
    width: 1.6rem;
    height: 1.3rem;
  }
  .c-btn-white{
    padding: 1rem 2rem 1.2rem;
  }
  .c-btn-white__txt{
    font-size: 1.8rem;
  }
  .c-btn-white__txt{
    margin-right: 4rem;
  }
  .c-btn-white__num{
    font-size: 5rem;
  }
  .c-btn-white__num small{
    font-size: 2.4rem;
  }
  .c-btn-white2{
    font-size: 1.8rem;
  }
  .c-btn-white2{
    height: 3.5rem;
  }
  .c-btn-white2.-tel{
    font-size: 2.1rem;
  }
  .c-btn-white2.-tel small{
    font-size: 1.5rem;
  }
  .c-h1{
    font-size: 4.5rem;
  }
  .c-h2{
    font-size: 4rem;
  }
  .c-h1-green{
    font-size: 4rem;
  }
  .c-h1-green{
    margin-bottom: 4rem;
  }
  .c-h1-green.-icon{
    padding-top: 2.2rem;
  }
  .c-h1-green small{
    font-size: 4rem;
  }
  .c-h1-green small{
    font-weight: bold;
  }
  .c-h1-green__icon{
    width: 17.6rem;
  }
  .c-h1-green__outer{
    padding-top: 10.6rem;
  }
  .c-h1-2row{
    font-size: 4rem;
  }
  .c-h1-2row.-short{
    padding-top: 0;
    font-weight: bold;
    font-size: 4rem;
  }
  .c-h1-2row__small{
    font-size: 2.4rem;
  }
  .c-h1-2row__small{
    margin-bottom: 0;
    padding-bottom: 2.4rem;
    background-size: auto 1.7rem;
    font-weight: 500;
  }
  .c-h1-2row em{
    font-size: 4.5rem;
  }
  .c-h1-1row{
    font-size: 4rem;
  }
  .c-h1-1row{
    padding-bottom: 2.4rem;
    background-size: auto 1.7rem;
  }
  .p-hdr__left{
    text-align: center;
  }
  .p-hdr__h1{
    font-size: 3.6rem;
  }
  .p-hdr__btn-list{
    -ms-flex-pack: center;
        justify-content: center;
    gap: 0 1rem;
  }
  .p-hdr__txt{
    font-size: 1.5rem;
  }
  .p-hdr__txt{
    text-align: center;
  }
  .p-gnav-pc__item{
    font-size: 1.6rem;
  }
  .p-ques{
    padding-top: 8rem;
  }
  .p-ques__h1{
    top: 8rem;
  }
  .p-ques__h1__small{
    font-size: 3.2rem;
  }
  .p-ques__h1__small{
    padding: 0.8rem 4rem;
  }
  .p-ques__h1__small:before{
    bottom: -1.3rem;
    border-width: 1.3rem 1.3rem 0 1.3rem;
  }
  .p-ques__h1__large{
    font-size: 4rem;
  }
  .p-ques__list{
    font-size: 1.8rem;
  }
  .p-ques__list{
    top: -4rem;
    padding: 4rem 4rem 4rem 6rem;
  }
  .p-ques__list li{
    padding: 1rem 0;
  }
  .p-ques__list li:before{
    width: 1.8rem;
    height: 1.8rem;
    margin-right: 1.4rem;
    margin-left: 0.5rem;
  }
  .p-ques__hukidashi{
    margin: 0 auto 4rem;
  }
  .p-ques__hukidashi img{
    width: 100%;
  }
  .p-feat{
    padding: 4rem 0;
  }
  .p-feat__list{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    margin: 0;
    gap: 0 4rem;
  }
  .p-feat__item{
    width: min(44%, 36rem);
  }
  .p-feat__item + .p-feat__item{
    margin-top: 0;
  }
  .p-diff{
    padding: 4rem 0 8rem;
  }
  .p-diff__img01{
    top: -13rem;
    width: min(60%, 47.8rem);
  }
  .p-diff__table{
    margin-top: 17rem;
  }
  .p-diff__table th{
    font-size: 2.3rem;
  }
  .p-diff__table th{
    padding-bottom: 2rem;
  }
  .p-diff__table th small{
    font-size: 1.8rem;
  }
  .p-diff__table td{
    font-size: 1.8rem;
  }
  .p-diff__table td{
    height: 7rem;
    padding: 1.1rem 0.8rem;
  }
  .p-diff__table td small{
    font-size: 1.5rem;
  }
  .p-diff__h2{
    font-size: 3.6rem;
  }
  .p-diff__h2{
    width: auto;
    margin: 0 0 4rem;
    padding: 2rem 5rem;
    border-radius: 3rem;
  }
  .p-diff__h2 small{
    font-size: 2rem;
  }
  .p-diff__h2:before{
    top: -1.5rem;
    height: 1.6rem;
  }
  .p-diff__img02{
    width: 30.5rem;
    margin-top: 8.5rem;
  }
  .p-diff__list{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    margin: 0;
    gap: 0 4rem;
  }
  .p-diff__item{
    width: min(41%, 36rem);
    padding: 2rem 2.4rem;
  }
  .p-diff__item + .p-diff__item{
    margin-top: 0;
  }
  .p-diff__item img{
    margin-bottom: 1rem;
  }
  .p-diff__h3{
    font-size: 2.4rem;
  }
  .p-diff__h3{
    margin-bottom: 1rem;
  }
  .p-diff__check-list li{
    font-weight: 500;
  }
  .p-diff__check-list li small{
    font-size: 1.2rem;
  }
  .p-rsn{
    padding: 8rem 0;
    background-image: url("../images/5reason/rsn-bg-pc.jpg");
  }
  .p-rsn__h1{
    font-size: 4rem;
  }
  .p-rsn__h1{
    width: auto;
    padding: 2.6rem 5.7rem 1.8rem;
  }
  .p-rsn__h1 small{
    font-size: 2.4rem;
  }
  .p-rsn__item{
    margin-top: 4rem;
    padding: 3.5rem 4rem 4rem;
    text-align: left;
  }
  .p-rsn__num{
    font-size: 2.4rem;
  }
  .p-rsn__num{
    position: absolute;
    top: 0;
    right: 0;
    margin-bottom: 0;
  }
  .p-rsn__h2{
    font-size: 2.4rem;
  }
  .p-rsn__2col{
    display: -ms-flexbox;
    display: flex;
    gap: 0 2rem;
  }
  .p-rsn__2col img{
    width: 50%;
    margin: 0;
  }
  .p-case{
    padding: 8rem 0;
  }
  .p-case__item{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
        align-items: flex-start;
    margin: 0;
    padding: 4rem;
    gap: 0 4rem;
  }
  .p-case__item:nth-of-type(odd){
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
  }
  .p-case__thumb{
    margin: 0;
  }
  .p-case__num{
    margin: 0 0 0.8rem;
  }
  .p-case__h1{
    font-size: 2.8rem;
  }
  .p-case__h1{
    font-weight: bold;
    text-align: left;
  }
  .p-kinds{
    padding: 4rem 0;
    background-image: url("../images/kinds/kinds-bg-pc.jpg");
  }
  .p-kinds__inner{
    margin: 0 5%;
    padding: 8rem 8rem 7rem;
  }
  .p-kinds__list{
    margin-top: 3rem;
    gap: 4rem 6.5%;
  }
  .p-kinds__h1{
    margin-bottom: 1rem;
  }
  .p-kinds__item{
    width: 28%;
  }
  .p-kinds__item img{
    margin-bottom: 1rem;
  }
  .p-kinds__item p{
    font-size: 1.5rem;
  }
  .p-symp{
    padding: 8rem 0;
  }
  .p-symp__item{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
        align-items: flex-start;
    margin: 4rem 0 0;
    padding: 3.5rem 4rem 4rem;
    gap: 0 2rem;
  }
  .p-symp__thumb{
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 39%;
    margin-bottom: 0;
  }
  .p-symp__fig01, .p-symp__fig02{
    font-size: 2rem;
  }
  .p-symp__table th,
.p-symp__table td{
    padding: 0.8rem 0;
  }
  .p-symp__table th{
    width: 18rem;
    padding-right: 0;
    white-space: nowrap;
  }
  .p-sel{
    padding: 26rem 0 8rem;
    background: url("../images/select/select-bg-pc.jpg") no-repeat center top/100% auto, #EEF6C9;
  }
  .p-sel__inner{
    padding: 6rem 8%;
    border-radius: 1rem;
    box-shadow: 0 4px 20px #D5E1A1;
  }
  .p-sel__bg-sp{
    display: none;
  }
  .p-sel__h1{
    margin-bottom: 3rem;
  }
  .p-sel__item{
    margin: 0;
  }
  .p-sel__item + .p-sel__item{
    margin-top: 6rem;
  }
  .p-sel__img:before{
    width: 14.4rem;
  }
  .p-sel__num{
    font-size: 2.3rem;
  }
  .p-sel__num span{
    font-size: 5.5rem;
  }
  .p-sel__h2{
    font-size: 2.4rem;
  }
  .p-sel__h2{
    font-weight: 500;
    text-align: left;
  }
  .p-flow{
    padding: 8rem 0 10rem;
  }
  .p-flow__list{
    margin: 5rem 0 0;
    padding-bottom: 0;
  }
  .p-flow__list:before{
    bottom: 3rem;
    left: 5.9rem;
  }
  .p-flow__item{
    gap: 0 2rem;
  }
  .p-flow__item:before{
    font-size: 4rem;
  }
  .p-flow__item:before{
    width: 10rem;
    height: 10rem;
    margin: 0 1rem;
    border-width: 1rem;
  }
  .p-flow__item:first-of-type{
    margin-top: 4rem;
  }
  .p-flow__item:first-of-type:before{
    margin-top: -3rem;
  }
  .p-flow__item:not(:first-of-type){
    -ms-flex-align: center;
        align-items: center;
  }
  .p-flow__h1{
    font-size: 2.4rem;
  }
  .p-flow__h1{
    font-weight: 500;
  }
  .p-caution{
    padding: 8rem 0 9rem;
  }
  .p-caution__inner{
    padding: 0 10%;
  }
  .p-caution__note{
    margin: 1rem 0 3rem;
  }
  .p-caution__h2{
    font-size: 2.4rem;
  }
  .p-caution__h2:before{
    width: 2.2rem;
    height: 2.2rem;
  }
  .p-price{
    padding: 8rem 0;
  }
  .p-price__box{
    margin-top: 3.5rem;
  }
  .p-price__box-inner{
    padding: 4rem 8rem;
  }
  .p-price__table th{
    font-size: 2.4rem;
  }
  .p-price__table td{
    font-size: 1.8rem;
  }
  .p-price__table td{
    font-weight: bold;
  }
  .p-price__table td.-em{
    font-size: 2.4rem;
  }
  .p-price__note{
    font-size: 1.5rem;
  }
  .p-price__note{
    margin-top: 2rem;
  }
  .p-pay{
    padding: 3rem 0 4rem;
  }
  .p-pay__h1{
    font-size: 4rem;
  }
  .p-pay__h1{
    gap: 0 2rem;
  }
  .p-pay__h1 img{
    width: 9.5rem;
  }
  .p-pay__list{
    margin: 3.5rem 0 0;
    gap: 0 4rem;
  }
  .p-pay__item{
    width: 19.2rem;
    height: 19.2rem;
  }
  .p-pay__ttl{
    font-size: 3.3rem;
  }
  .p-pay__ttl em{
    font-size: 4rem;
  }
  .p-pay__ttl small{
    font-size: 2.5rem;
  }
  .p-pay__txt{
    font-size: 1.6rem;
  }
  .p-pay__txt{
    margin: 4rem 0 0;
  }
  .p-faq{
    padding: 4rem 0;
    background-image: url("../images/faq/faq-bg-pc.jpg");
  }
  .p-faq__inner{
    padding: 6rem 8% 5rem;
  }
  .p-faq__item:first-of-type{
    margin-top: 4rem;
  }
  .p-faq__q{
    font-size: 1.8rem;
  }
  .p-faq__a{
    font-size: 1.6rem;
  }
  .p-pro{
    padding: 6.5rem 0 8rem;
  }
  .p-pro__box{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
        align-items: flex-start;
    margin-top: 4rem;
    padding: 0 10%;
    gap: 0 3.5rem;
  }
  .p-pro__box img{
    width: 28%;
    margin: 0;
  }
  .p-pro__name01{
    font-size: 1.8rem;
  }
  .p-pro__name01{
    margin-bottom: 0;
  }
  .p-pro__name02{
    font-size: 2.4rem;
  }
  .p-cta{
    padding: 6.5rem 0;
    background-image: url("../images/cta/cta-bg-pc.jpg");
  }
  .p-cta__box{
    padding: 6.7rem 8% 0;
  }
  .p-cta__btn{
    width: 56.7rem;
    height: 10.5rem;
    border-width: 3px;
  }
  .p-cta__btn:before{
    border-width: 0 0 2.9rem 2.9rem;
  }
  .p-cta__btn-tel{
    font-size: 5rem;
  }
  .p-cta__btn-tel{
    padding-left: 4.6rem;
  }
  .p-cta__btn-tel small{
    font-size: 2.4rem;
  }
  .p-cta__btn-tel small{
    margin: 2rem 0.5rem 0 0;
  }
  .p-cta__btn-tel .-icon01{
    width: 12.3rem;
  }
  .p-cta__btn-net{
    font-size: 4.5rem;
  }
  .p-cta__btn-net{
    margin-top: 4.5rem;
  }
  .p-cta__btn-net small{
    font-size: 2.4rem;
  }
  .p-cta__btn-net .-icon01{
    bottom: 1.7rem;
    left: 1.8rem;
    width: 9.6rem;
  }
  .p-cta__btn-net .-icon02{
    right: 2.2rem;
    bottom: 2.2rem;
    width: 10.9rem;
  }
  .p-cta__txt{
    font-size: 3.2rem;
  }
  .p-cta__txt{
    margin: 3rem 0 0;
  }
  .p-ftr__inner{
    text-align: center;
  }
  .p-ftr__h1{
    font-size: 3.6rem;
  }
  .p-ftr__info{
    margin-right: auto;
    margin-left: auto;
  }
  .p-ftr__info em{
    font-size: 2.4rem;
  }
  .p-ftr__table{
    font-size: 2.4rem;
  }
  .p-ftr__table{
    width: auto;
    margin-right: auto;
    margin-left: auto;
  }
  .p-ftr__table td{
    text-align: left;
  }
  .p-ftr__note{
    text-align: center;
  }
  .p-ftr__map{
    height: 56.4rem;
  }
  .u-sp{
    display: none;
  }
  .u-pc{
    display: block;
  }
}
@media only screen and (min-width: 1024px){

  /* pc-size */
  .p-hdr__inner{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    padding: 2rem 0 6.5rem;
  }
  .p-hdr__left{
    gap: 0.9rem 0;
    text-align: left;
  }
  .p-hdr__right{
    margin-top: 0;
  }
  .p-hdr__h1{
    margin-bottom: 1rem;
  }
  .p-hdr__btn-list{
    -ms-flex-pack: justify;
        justify-content: space-between;
    gap: 0 0;
  }
  .p-hdr__txt{
    margin-top: -0.5rem;
    text-align: left;
  }
  .p-gnav-pc{
    display: block;
    position: absolute;
    right: 0;
    bottom: -4.5rem;
    left: 0;
  }
  .p-gnav-sp__btn{
    display: none;
  }
  .p-ftr{
    padding-top: 8rem;
  }
  .p-ftr__info th{
    width: 14rem;
    padding: 1rem 0;
  }
  .p-ftr__info td{
    padding: 1rem 0;
  }
  .p-ftr__table th{
    padding: 0.2rem 1rem;
  }
  .p-ftr__table th:first-of-type{
    padding: 0 3rem;
  }
  .p-ftr__table th:last-of-type{
    padding: 0 3rem 0 1rem;
  }
  .p-ftr__table td{
    padding: 0 1rem;
  }
  .p-ftr__table td:first-of-type{
    padding: 0.5rem 3rem;
  }
  .p-ftr__table td:last-of-type{
    padding: 0.5rem 3rem 0.5rem 1rem;
  }
  .p-ftr__nav{
    padding: 0 4rem 0 2rem;
  }
}
@media only screen and (min-width: 1200px){

  /* ml-size */
  .p-ftr__inner{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
        align-items: flex-start;
    -ms-flex-pack: justify;
        justify-content: space-between;
    margin: 0 auto 8rem;
    gap: 0 4rem;
    text-align: left;
  }
  .p-ftr__table{
    margin-top: 0;
  }
  .p-ftr__note{
    margin: 0.5rem 0 3rem;
    font-size: 1.6rem;
    text-align: right;
  }
}
@media only screen and (min-width: 1280px){

  /* max-size */
  .l-2col{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    -ms-flex-align: start;
        align-items: flex-start;
    -ms-flex-pack: justify;
        justify-content: space-between;
    width: min(100% - 48px, 1280px);
    margin-right: auto;
    margin-left: auto;
    padding: 5.5rem 0 8rem;
    gap: 0 40px;
  }
  .l-side{
    display: block;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 280px;
  }
}
/*# sourceMappingURL=style.css.map */