@charset "UTF-8";


/* hover（ホバーする箇所は下線を出さない）
   電話番号（tel:）は PC でクリックしても動作しないため、あえて付けない
-------------------------------------*/
.l-lpheader__logo a,
.l-lpheader__btn a,
.p-cv__btn a,
.p-fixed__btn,
.p-footer__logo a,
.p-thanks__btn a,
.p-form__submit input[type="submit"] {
  transition: opacity 0.3s ease;
}

.l-lpheader__logo a:hover,
.l-lpheader__btn a:hover,
.p-cv__btn a:hover,
.p-fixed__btn:hover,
.p-footer__logo a:hover,
.p-thanks__btn a:hover,
.p-form__submit input[type="submit"]:hover {
  opacity: 0.7;
  text-decoration: none;
}

/* 確認画面へ切り替えたときのスクロール目印（レイアウトに影響させない） */
#fformtop {
  left: 0;
  position: absolute;
  top: 0;
}

/* 電話番号は下線だけ消す（ホバーでの変化はなし） */
.p-cv__tel-num a:hover,
.p-form__tel a:hover,
.p-fixed__tel:hover,
.p-thanks__tel-num a:hover {
  text-decoration: none;
}


/* ========================================
@media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px), print {


/* 電話番号リンク（PCではクリックできないようにする／タップはSPのみ）
-------------------------------------*/
a[href^="tel:"] {
  cursor: default;
  pointer-events: none;
}


/* レイアウトの基本
   背景は画面幅いっぱい／コンテンツは1920pxで中央
   （common.css の main{width:min(100%,1920px)} をこのページだけ解除）
-------------------------------------*/
#micro main {
  max-width: none;
  width: 100%;
}


/* lpheader
-------------------------------------*/
.l-lpheader {
  background: #ffffff;
  position: relative;
  width: 100%;
  z-index: 1;
}

.l-lpheader__inner {
  align-items: center;
  aspect-ratio: 1920 / 80;
  container-type: inline-size;
  display: flex;
  justify-content: space-between;
  margin-inline: auto;
  width: min(100%, 1920px);
}

.l-lpheader__logo {
  margin-left: 2.083cqw;
}

.l-lpheader__logo a {
  display: block;
}

.l-lpheader__logo img {
  width: 10.104cqw;
}

.l-lpheader__btn a {
  align-items: center;
  background: linear-gradient(180deg, #ffee00 0%, #ffce00 100%);
  color: #1a1311;
  display: flex;
  font-size: max(12px, 1.25cqw);
  font-weight: 600;
  gap: 0.521cqw;
  height: 4.167cqw;
  justify-content: center;
  letter-spacing: 0.052cqw;
  line-height: max(15px, 1.563cqw);
  width: 18.75cqw;
}

.l-lpheader__btn a .icon {
  display: block;
  width: 1.771cqw;
}

.l-lpheader__btn a .icon img {
  display: block;
  width: 100%;
}


/* fv
-------------------------------------*/
.p-fv {
  background: url(../images/micro/fv_bg.jpg) no-repeat center center/cover;
  position: relative;
  width: 100%;
}

.p-fv__inner {
  aspect-ratio: 1920 / 820;
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

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

/* 左：スマホ */
.p-fv__phone {
  left: 0;
  position: absolute;
  top: 3.385cqw;
  width: 26.771cqw;
  z-index: 7;
}

/* 吹き出し */
.p-fv__balloon {
  left: 12.5cqw;
  position: absolute;
  top: 1.25cqw;
  width: 18.248cqw;
  z-index: 11;
}

.p-fv__balloon-txt,
.p-fv__balloon-mark {
  -webkit-text-stroke: 0.521cqw #ffffff;
  color: #1a1311;
  font-weight: 700;
  paint-order: stroke fill;
  position: absolute;
  white-space: nowrap;
}

.p-fv__balloon-txt {
  font-size: 2.396cqw;
  left: 45.878%;
  letter-spacing: -0.2cqw;
  line-height: 2.636cqw;
  top: 48.547%;
  transform: translate(-50%, -50%) rotate(-5deg) skewX(-15deg) scaleY(0.97);
}

.p-fv__balloon-txt .red {
  color: #d30808;
}

.p-fv__balloon-txt .nostroke {
  -webkit-text-stroke-width: 0;
}

.p-fv__balloon-mark {
  font-size: 2.825cqw;
  left: 73.36%;
  letter-spacing: -0.235cqw;
  line-height: 3.108cqw;
  top: 54.3%;
  transform: translate(-50%, -50%) rotate(8.18deg) skewX(-15deg) scaleY(0.97);
}

/* 右：人物 */
.p-fv__man {
  position: absolute;
  right: 0;
  top: 1.25cqw;
  width: 36.354cqw;
  z-index: 3;
}

/* リード */
.p-fv__lead {
  color: #ffffff;
  font-size: 2.083cqw;
  font-weight: 700;
  left: 41.354cqw;
  letter-spacing: 0.104cqw;
  line-height: 1.562cqw;
  position: absolute;
  text-align: center;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  top: 2.969cqw;
  white-space: nowrap;
  width: 17.344cqw;
  z-index: 5;
}

/* タイトル */
.p-fv__ttl-dots {
  background: #fdee04;
  border-radius: 50%;
  box-shadow:
    4.531cqw 0 0 #fdee04,
    9.062cqw 0 0 #fdee04,
    13.594cqw 0 0 #fdee04,
    18.125cqw 0 0 #fdee04,
    22.656cqw 0 0 #fdee04,
    27.188cqw 0 0 #fdee04;
  display: block;
  height: 0.781cqw;
  left: 35.625cqw;
  position: absolute;
  top: 6.146cqw;
  width: 0.781cqw;
  z-index: 6;
}

.p-fv__ttl-01,
.p-fv__ttl-02 {
  color: #1a1311;
  display: block;
  font-weight: 700;
  position: absolute;
  white-space: nowrap;
}

.p-fv__ttl-01 {
  font-size: 4.63cqw;
  left: 33.646cqw;
  line-height: 4.63cqw;
  top: 7.135cqw;
  width: 32.755cqw;
  z-index: 6;
}

.p-fv__ttl-02 {
  font-size: 5.546cqw;
  left: 27.812cqw;
  line-height: 3.697cqw;
  text-align: center;
  top: 13.646cqw;
  width: 44.375cqw;
  z-index: 4;
}

/* 黄色帯 */
.p-fv__band {
  align-items: center;
  background: #fdee04;
  border-radius: 10.417cqw;
  color: #1a1311;
  display: flex;
  font-size: 2.083cqw;
  font-weight: 700;
  height: 4.167cqw;
  justify-content: center;
  left: 50%;
  letter-spacing: 0.104cqw;
  position: absolute;
  top: 19.531cqw;
  transform: translateX(-50%);
  width: 57.604cqw;
  z-index: 2;
}

/* 価格 */
.p-fv__price-unit,
.p-fv__price-num,
.p-fv__price-yen,
.p-fv__price-wave {
  color: #1a1311;
  display: block;
  font-weight: 700;
  paint-order: stroke fill;
  position: absolute;
  white-space: nowrap;
  z-index: 10;
}

.p-fv__price-unit,
.p-fv__price-yen,
.p-fv__price-wave {
  -webkit-text-stroke: 1.094cqw #ffffff;
  transform: skewX(-10deg) scaleY(0.98);
}

.p-fv__price-unit {
  font-size: 6.694cqw;
  left: 23.146cqw;
  line-height: 6.694cqw;
  top: 28.854cqw;
}

.p-fv__price-num {
  -webkit-text-stroke: 1.146cqw #ffffff;
  color: #d30808;
  font-family: "Oswald", sans-serif;
  font-size: 12.552cqw;
  font-weight: 500;
  left: 36.302cqw;
  letter-spacing: -0.302cqw;
  line-height: 12.552cqw;
  top: 23.698cqw;
  transform: skewX(-10deg) scaleY(0.98);
}

.p-fv__price-yen {
  font-size: 6.694cqw;
  left: 69.344cqw;
  line-height: 6.694cqw;
  top: 28.698cqw;
}

.p-fv__price-wave {
  -webkit-text-stroke: 0.313cqw #ffffff;
  font-size: 6.161cqw;
  left: 76.709cqw;
  line-height: 1.995cqw;
  top: 29.896cqw;
}

/* ピル */
.p-fv__pills {
  display: flex;
  gap: 0 0.581cqw;
  left: 30.938cqw;
  position: absolute;
  top: 37.917cqw;
  z-index: 9;
}

.p-fv__pill {
  align-items: center;
  background: #288dc4;
  border-radius: 7.258cqw;
  color: #ffffff;
  display: flex;
  font-size: 1.562cqw;
  font-weight: 800;
  height: 2.758cqw;
  justify-content: center;
  letter-spacing: 0.073cqw;
  line-height: 1.814cqw;
  width: 12.339cqw;
}

.p-fv__pill:first-child {
  font-size: 1.453cqw;
}

/* メダル */
.p-fv__medal {
  height: 11.535cqw;
  position: absolute;
  top: 33.177cqw;
  width: 11.535cqw;
  z-index: 8;
}

.p-fv__medal--01 {
  left: 74.74cqw;
}

.p-fv__medal--02 {
  left: 86.899cqw;
}

.p-fv__medal .ttl,
.p-fv__medal .num {
  color: #1a1311;
  font-size: 1.442cqw;
  font-weight: 600;
  left: 50%;
  letter-spacing: 0.096cqw;
  line-height: 2.403cqw;
  position: absolute;
  transform: translateX(-50%);
  white-space: nowrap;
}

.p-fv__medal .ttl {
  top: 21.667%;
}

.p-fv__medal .num {
  align-items: baseline;
  display: flex;
  top: 46.667%;
}

/* 数字のうしろの単位（社・社超・円）— デザインは少し上に置かれている */
.p-fv__medal .num i,
.p-cv__medal .num i {
  font-style: normal;
  position: relative;
}

.p-cv__medal .num i {
  top: -0.208cqw;
}

.p-fv__medal .num em {
  color: #d30808;
  font-family: "Oswald", sans-serif;
  font-size: 3.364cqw;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.096cqw;
}


/* nayami
-------------------------------------*/
.p-nayami {
  background: url(../images/micro/sec02_bg.jpg) no-repeat center top/100% auto;
  position: relative;
  width: 100%;
}

.p-nayami__inner {
  aspect-ratio: 1920 / 1167;
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

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

/* 見出し */
.p-nayami__ttl {
  left: 0;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%;
  z-index: 2;
}

.p-nayami__ttl .sub {
  color: #ffffff;
  display: block;
  font-size: 1.562cqw;
  font-weight: 600;
  left: 0;
  letter-spacing: 0.052cqw;
  line-height: 2.604cqw;
  position: absolute;
  top: 4.219cqw;
  width: 100%;
}

.p-nayami__ttl .main {
  color: #ffffff;
  display: block;
  font-size: 2.604cqw;
  font-weight: 700;
  left: 0;
  letter-spacing: 0.104cqw;
  line-height: 3.646cqw;
  position: absolute;
  top: 7.604cqw;
  white-space: nowrap;
  width: 100%;
}

.p-nayami__ttl .main em {
  color: #fdee04;
  font-size: 3.646cqw;
  font-style: normal;
  font-weight: 700;
}

.p-nayami__ttl::after {
  background: #093754;
  content: "";
  height: 1.406cqw;
  left: 29.219cqw;
  position: absolute;
  top: 10.365cqw;
  width: 41.302cqw;
  z-index: -1;
}

/* リード */
.p-nayami__lead,
.p-nayami__lead02 {
  color: #ffffff;
  font-size: 1.25cqw;
  font-weight: 600;
  letter-spacing: 0.052cqw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  z-index: 2;
}

.p-nayami__lead {
  left: 35.755cqw;
  line-height: 2.604cqw;
  top: 14.375cqw;
  width: 28.489cqw;
}

.p-nayami__lead02 {
  left: 37.031cqw;
  line-height: 3.125cqw;
  top: 25.885cqw;
  width: 25.937cqw;
}

/* 黒帯（帯はCSS・文字は画像） */
.p-nayami__tape {
  background: #1a1311;
  height: 2.595cqw;
  position: absolute;
  transform: rotate(-6.37deg);
  width: 15.609cqw;
  z-index: 2;
}

.p-nayami__tape img {
  left: 50%;
  position: absolute;
  top: calc(50% + 0.208cqw);
  transform: translate(-50%, -50%) rotate(6.37deg);
}

.p-nayami__tape--01 {
  left: 24.367cqw;
  top: 20.823cqw;
}

.p-nayami__tape--01 img {
  width: 13.802cqw;
}

.p-nayami__tape--02 {
  left: 34.6cqw;
  top: 22.281cqw;
}

.p-nayami__tape--02 img {
  width: 13.906cqw;
}

.p-nayami__tape--03 {
  left: 49.808cqw;
  top: 19.417cqw;
}

.p-nayami__tape--03 img {
  width: 14.427cqw;
}

.p-nayami__tape--04 {
  left: 60.042cqw;
  top: 20.771cqw;
}

.p-nayami__tape--04 img {
  width: 12.708cqw;
}

/* 円形写真 */
.p-nayami__circle {
  left: 35.417cqw;
  position: absolute;
  top: 37.344cqw;
  width: 29.167cqw;
  z-index: 1;
}

/* 吹き出し */
.p-nayami__balloon {
  align-items: center;
  background: url(../images/micro/sec02_balloon.svg) no-repeat center center/100% 100%;
  color: #ffffff;
  display: flex;
  font-size: max(12px, 1.25cqw);
  font-weight: 600;
  height: 10.885cqw;
  justify-content: center;
  letter-spacing: 0.052cqw;
  line-height: max(20px, 2.083cqw);
  position: absolute;
  text-align: center;
  width: 18.177cqw;
  z-index: 3;
}

.p-nayami__balloon--01 {
  left: 23.75cqw;
  top: 36.927cqw;
}

.p-nayami__balloon--02 {
  left: 40.885cqw;
  top: 30.99cqw;
}

.p-nayami__balloon--03 {
  left: 58.073cqw;
  top: 36.927cqw;
}


/* fuan
-------------------------------------*/
.p-fuan {
  position: relative;
  width: 100%;
  z-index: 2;
}

.p-fuan__bg {
  background: #093754;
  clip-path: polygon(
    0 0,
    calc(50% - min(1.198vw, 23px)) 0,
    50% min(2.083vw, 40px),
    calc(50% + min(1.198vw, 23px)) 0,
    100% 0,
    100% 100%,
    0 100%
  );
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.p-fuan__inner {
  aspect-ratio: 1920 / 370;
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

.p-fuan__lead,
.p-fuan__ttl {
  color: #ffffff;
  left: 31.823cqw;
  letter-spacing: 0.208cqw;
  line-height: 3.646cqw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 36.406cqw;
}

.p-fuan__lead {
  font-size: 2.083cqw;
  font-weight: 600;
  top: 5.208cqw;
}

.p-fuan__ttl {
  font-size: 3.125cqw;
  font-weight: 700;
  top: 9.375cqw;
}

.p-fuan__mark {
  display: block;
  left: 67.76cqw;
  position: absolute;
  top: 6.25cqw;
  width: 5.521cqw;
}

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


/* support
-------------------------------------*/
.p-support {
  background: url(../images/micro/sec03_bg.jpg) no-repeat center top/100% auto;
  position: relative;
  width: 100%;
}

.p-support__inner {
  aspect-ratio: 1920 / 925;
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

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

/* オレンジのバナー */
.p-support__banner {
  align-items: flex-start;
  background: url(../images/micro/sec03_banner.svg) no-repeat center top/100% 100%;
  color: #ffffff;
  display: flex;
  font-size: 2.083cqw;
  font-weight: 700;
  height: 9.635cqw;
  justify-content: center;
  left: 29.167cqw;
  line-height: 2.604cqw;
  padding-top: 1.823cqw;
  position: absolute;
  top: -2.083cqw;
  white-space: nowrap;
  width: 41.667cqw;
  z-index: 2;
}

/* 見出し */
.p-support__lead {
  color: #1a1311;
  font-size: 2.083cqw;
  font-weight: 600;
  left: 37.396cqw;
  letter-spacing: 0.052cqw;
  line-height: 3.646cqw;
  position: absolute;
  text-align: center;
  top: 7.292cqw;
  white-space: nowrap;
  width: 26.25cqw;
}

.p-support__ttl {
  left: 22.917cqw;
  position: absolute;
  top: 11.615cqw;
  width: 53.125cqw;
  z-index: 1;
}

.p-support__ttl .main {
  color: #1a1311;
  display: block;
  font-size: 3.125cqw;
  font-weight: 700;
  letter-spacing: normal;
  line-height: 3.646cqw;
  position: relative;
  text-align: center;
  white-space: nowrap;
}

.p-support__ttl::after {
  background: #ffffff;
  content: "";
  height: 1.51cqw;
  left: 2.917cqw;
  position: absolute;
  top: 2.135cqw;
  width: 47.396cqw;
  z-index: -1;
}

.p-support__ttl-sub {
  position: static;
}

.p-support__ttl-sub .wo,
.p-support__ttl-sub .youi {
  color: #1a1311;
  font-size: 2.083cqw;
  font-weight: 600;
  letter-spacing: 0.052cqw;
  line-height: 3.646cqw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
}

.p-support__ttl-sub .wo {
  left: 75cqw;
  top: 12.083cqw;
  width: 2.083cqw;
}

.p-support__ttl-sub .youi {
  left: 42.031cqw;
  top: 16.406cqw;
  width: 17.031cqw;
}

/* 写真 */
.p-support__photo {
  height: 14.583cqw;
  position: absolute;
  top: 22.135cqw;
  width: 22.917cqw;
}

.p-support__photo--01 {
  left: 13.542cqw;
}

.p-support__photo--02 {
  left: 38.542cqw;
}

.p-support__photo--03 {
  left: 63.542cqw;
}

/* 説明文 */
.p-support__txt {
  color: #1a1311;
  font-size: 1.25cqw;
  font-weight: 600;
  left: 29.323cqw;
  letter-spacing: 0.052cqw;
  line-height: 2.083cqw;
  position: absolute;
  text-align: center;
  top: 38.802cqw;
  white-space: nowrap;
  width: 41.458cqw;
}

/* 右下の人物 */
.p-support__man {
  left: 71.719cqw;
  position: absolute;
  top: 31.719cqw;
  width: 9.531cqw;
  z-index: 2;
}


/* cv
-------------------------------------*/
.p-cv {
  background: url(../images/micro/cv_bg.jpg) no-repeat center top/100% auto;
  position: relative;
  width: 100%;
}

.p-cv__inner {
  aspect-ratio: 1920 / 895;
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

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

/* 青枠 */
.p-cv__frame {
  display: block;
  left: 18.75cqw;
  position: absolute;
  top: 9.427cqw;
  width: 62.5cqw;
}

/* 今すぐ無料相談 */
.p-cv__ttl {
  left: 42.031cqw;
  position: absolute;
  top: 5.781cqw;
  z-index: 2;
}

.p-cv__ttl::before {
  background: #ffffff;
  content: "";
  height: 2.708cqw;
  left: -4.583cqw;
  position: absolute;
  top: 1.823cqw;
  width: 36.406cqw;
  z-index: -1;
}

.p-cv__ttl .now,
.p-cv__ttl .free {
  color: #1a1311;
  font-size: 4.167cqw;
  font-weight: 700;
  letter-spacing: -0.104cqw;
  line-height: 3.646cqw;
  position: absolute;
  top: 0;
  white-space: nowrap;
}

.p-cv__ttl .now {
  left: 0;
}

.p-cv__ttl .free {
  color: #ef7e00;
  left: 12.031cqw;
}

.p-cv__ttl .free::before {
  background: #fdee04;
  content: "";
  height: 1.562cqw;
  left: 0;
  position: absolute;
  top: 2.865cqw;
  width: 16.354cqw;
  z-index: -1;
}

.p-cv__ttl .free::after {
  background:
    radial-gradient(circle, #1a1311 50%, transparent 51%) 0 0/0.729cqw 0.729cqw no-repeat,
    radial-gradient(circle, #1a1311 50%, transparent 51%) 3.854cqw 0/0.729cqw 0.729cqw no-repeat,
    radial-gradient(circle, #1a1311 50%, transparent 51%) 7.708cqw 0/0.729cqw 0.729cqw no-repeat,
    radial-gradient(circle, #1a1311 50%, transparent 51%) 11.562cqw 0/0.729cqw 0.729cqw no-repeat;
  content: "";
  height: 0.729cqw;
  left: 2.083cqw;
  position: absolute;
  top: -1.302cqw;
  width: 13.021cqw;
}

/* 代表者 */
.p-cv__person {
  left: 26.823cqw;
  position: absolute;
  top: 3.125cqw;
  width: 13.125cqw;
  z-index: 2;
}

.p-cv__person .name01,
.p-cv__person .name02 {
  background: #1a1311;
  color: #ffffff;
  font-size: 0.833cqw;
  font-weight: 500;
  left: 0;
  letter-spacing: 0.052cqw;
  line-height: 1.042cqw;
  padding: 0.208cqw 0.417cqw;
  position: absolute;
  white-space: nowrap;
}

.p-cv__person .name01 {
  top: 11.042cqw;
}

.p-cv__person .name02 {
  top: 12.5cqw;
}

/* リード */
.p-cv__lead {
  color: #1a1311;
  font-size: max(12px, 1.25cqw);
  font-weight: 600;
  left: 42.031cqw;
  letter-spacing: 0.052cqw;
  line-height: max(23px, 2.396cqw);
  position: absolute;
  top: 11.302cqw;
  white-space: nowrap;
  z-index: 2;
}

/* キャッチ */
.p-cv__catch {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}

.p-cv__catch::before {
  background: #ffffff;
  content: "";
  height: 6.302cqw;
  left: 16.667cqw;
  position: absolute;
  top: 17.656cqw;
  width: 66.667cqw;
  z-index: -1;
}

.p-cv__catch span {
  color: #1a1311;
  font-weight: 700;
  position: absolute;
  white-space: nowrap;
}

.p-cv__catch .s1 {
  font-size: 3.125cqw;
  left: 19.323cqw;
  line-height: 3.646cqw;
  top: 19.375cqw;
}

.p-cv__catch .s2 {
  color: #288dc4;
  font-size: 6.25cqw;
  left: 34.948cqw;
  line-height: 7.292cqw;
  top: 16.667cqw;
}

.p-cv__catch .s3 {
  font-size: 2.292cqw;
  left: 61.615cqw;
  line-height: 2.083cqw;
  top: 20.938cqw;
}

/* メダル */
.p-cv__medal {
  height: 7.727cqw;
  position: absolute;
  top: 4.167cqw;
  width: 7.727cqw;
  z-index: 2;
}

.p-cv__medal--01 {
  left: 71.927cqw;
}

.p-cv__medal--02 {
  left: 80cqw;
}

.p-cv__medal .ttl,
.p-cv__medal .num {
  color: #1a1311;
  font-size: 0.966cqw;
  font-weight: 600;
  letter-spacing: 0.064cqw;
  line-height: 1.61cqw;
  position: absolute;
  transform: translateX(-50%);
  white-space: nowrap;
}

.p-cv__medal .ttl {
  left: 36.02%;
  top: 43.5%;
}

.p-cv__medal .num {
  align-items: baseline;
  display: flex;
  left: 70.43%;
  top: 38.42%;
}

.p-cv__medal .num em {
  color: #d30808;
  font-family: "Oswald", sans-serif;
  font-size: 2.253cqw;
  font-style: normal;
  font-weight: 500;
}

.p-cv__medal--02 .ttl {
  left: 36.02%;
}

.p-cv__medal--02 .num {
  left: 71.7%;
  top: 41.12%;
}

/* 電話 */
.p-cv__tel {
  align-items: center;
  display: flex;
  gap: 0 2.083cqw;
  justify-content: center;
  left: 0.26cqw;
  position: absolute;
  top: 30.469cqw;
  width: 100%;
}

.p-cv__tel-label {
  align-items: center;
  border: 2px solid #288dc4;
  color: #288dc4;
  display: flex;
  font-size: 1.25cqw;
  font-weight: 600;
  height: 3.542cqw;
  justify-content: center;
  letter-spacing: 0.052cqw;
  line-height: 2.083cqw;
  width: 14.792cqw;
}

.p-cv__tel-num a {
  align-items: center;
  color: #1a1311;
  display: flex;
  gap: 0 1.042cqw;
}

.p-cv__tel-num .icon {
  display: block;
  width: 2.604cqw;
}

.p-cv__tel-num .num {
  font-family: "Oswald", sans-serif;
  font-size: 4.688cqw;
  font-weight: 600;
  letter-spacing: 0.104cqw;
  line-height: 3.646cqw;
}

.p-cv__tel-time {
  align-self: flex-end;
  color: #1a1311;
  font-size: max(12px, 0.937cqw);
  font-weight: 600;
  line-height: max(20px, 1.562cqw);
  margin-left: -1.562cqw;
  white-space: nowrap;
}

/* メールボタン */
.p-cv__btn {
  /* ホバーで背景写真が透けないよう、ボタンと同じ形の白い下地を敷く */
  background: #ffffff;
  border-radius: 10.417cqw;
  left: 18.75cqw;
  position: absolute;
  top: 36.198cqw;
  width: 62.5cqw;
}

.p-cv__btn a {
  align-items: center;
  background: linear-gradient(180deg, #ffee00 0%, #ffce00 100%);
  border-radius: 10.417cqw;
  box-shadow: 0 1.042cqw 1.042cqw rgba(0, 0, 0, 0.18);
  color: #1a1311;
  display: flex;
  gap: 0 1.042cqw;
  height: 6.25cqw;
  justify-content: center;
  width: 100%;
}

.p-cv__btn .icon {
  display: block;
  width: 3.229cqw;
}

.p-cv__btn .txt {
  font-size: 2.083cqw;
  font-weight: 600;
  letter-spacing: 0.052cqw;
  line-height: 2.083cqw;
}


/* osusume
-------------------------------------*/
.p-osusume {
  background: #ffffff;
  position: relative;
  width: 100%;
}

.p-osusume__inner {
  aspect-ratio: 1920 / 640;
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

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

/* 青いラベル */
.p-osusume__label {
  align-items: center;
  background: #288dc4;
  border-radius: 2.604cqw;
  color: #ffffff;
  display: flex;
  font-size: 1.562cqw;
  font-weight: 600;
  height: 5.208cqw;
  justify-content: center;
  left: 34.375cqw;
  letter-spacing: 0.104cqw;
  line-height: 2.604cqw;
  position: absolute;
  top: 5.208cqw;
  width: 31.25cqw;
  z-index: 2;
}

.p-osusume__label::after {
  background: #288dc4;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  content: "";
  height: calc(1.771cqw + 1px);
  left: 24.74cqw;
  position: absolute;
  top: calc(100% - 1px);
  width: 1.094cqw;
}

/* 写真4枚 */
.p-osusume__items {
  display: flex;
  gap: 0 1.25cqw;
  left: 6.458cqw;
  position: absolute;
  top: 9.115cqw;
}

.p-osusume__item {
  width: 20.833cqw;
}

.p-osusume__item .img {
  height: 13.542cqw;
  overflow: hidden;
}

.p-osusume__item .img img {
  height: 100%;
  object-fit: cover;
}

.p-osusume__item .txt {
  color: #1a1311;
  font-size: max(12px, 1.25cqw);
  font-weight: 600;
  letter-spacing: 0.052cqw;
  line-height: max(20px, 2.083cqw);
  margin-top: 0.833cqw;
  text-align: center;
}


/* flow
-------------------------------------*/
.p-flow {
  background: #fcee04;
  position: relative;
  width: 100%;
}

.p-flow__inner {
  aspect-ratio: 1920 / 1423;
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

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

/* 上部の人物 */
.p-flow__man {
  left: 15.052cqw;
  position: absolute;
  top: -2.708cqw;
  width: 17.448cqw;
  z-index: 2;
}

/* 見出し */
.p-flow__lead span,
.p-flow__ttl span {
  color: #1a1311;
  font-weight: 700;
  position: absolute;
  transform: translateX(-50%);
  white-space: nowrap;
}

.p-flow__lead .s1,
.p-flow__lead .s3 {
  font-size: 2.083cqw;
  line-height: 2.083cqw;
  top: 4.219cqw;
}

.p-flow__lead .s1 {
  left: 40.313cqw;
}

.p-flow__lead .s2 {
  font-size: 3.125cqw;
  left: 52.5cqw;
  line-height: 3.646cqw;
  top: 3.125cqw;
}

.p-flow__lead .s3 {
  left: 61.563cqw;
}

.p-flow__ttl {
  position: static;
}

.p-flow__ttl::before {
  background: #ffffff;
  content: "";
  height: 2.344cqw;
  left: 36.823cqw;
  position: absolute;
  top: 10.885cqw;
  width: 38.542cqw;
}

.p-flow__ttl .m1,
.p-flow__ttl .m1b,
.p-flow__ttl .m2 {
  font-size: 4.167cqw;
  line-height: 3.646cqw;
  top: 8.333cqw;
}

.p-flow__ttl .m1 {
  left: 42.656cqw;
}

.p-flow__ttl .m1b {
  left: 61.406cqw;
}

.p-flow__ttl .m2 {
  left: 73.542cqw;
}

.p-flow__ttl .m3 {
  font-size: 3.125cqw;
  left: 81.458cqw;
  line-height: 3.646cqw;
  top: 8.802cqw;
}

/* BEFORE / AFTER の箱 */
.p-flow__box {
  position: absolute;
  top: 16.146cqw;
  width: 35.417cqw;
}

.p-flow__box--before {
  left: 12.5cqw;
}

.p-flow__box--after {
  left: 52.083cqw;
}

.p-flow__box .head {
  align-items: center;
  color: #ffffff;
  display: flex;
  font-family: "Oswald", sans-serif;
  font-size: 2.604cqw;
  font-weight: 600;
  height: 5.208cqw;
  justify-content: center;
  letter-spacing: 0.104cqw;
  line-height: 2.604cqw;
}

.p-flow__box--before .head {
  background: #093754;
}

.p-flow__box--after .head {
  background: #ef7e00;
}

.p-flow__box .body {
  background: #ffffff;
  min-height: 32.292cqw;
  position: relative;
}

.p-flow__box .foot {
  align-items: center;
  bottom: 0;
  color: #ffffff;
  display: flex;
  font-size: 1.563cqw;
  font-weight: 600;
  height: 7.292cqw;
  justify-content: center;
  left: 0;
  letter-spacing: 0.052cqw;
  line-height: 2.083cqw;
  position: absolute;
  text-align: center;
  width: 100%;
}

.p-flow__box--before .foot {
  background: #093754;
}

.p-flow__box--after .foot {
  background: #ef7e00;
}

.p-flow__box .person {
  bottom: 0;
  position: absolute;
  z-index: 2;
}

.p-flow__box--before .person {
  right: 1.563cqw;
  width: 6.719cqw;
}

.p-flow__box--after .person {
  right: 1.563cqw;
  width: 6.406cqw;
}

/* ステップ */
.steps {
  position: absolute;
  top: 2.083cqw;
}

.steps--left {
  left: 4.167cqw;
  width: 13.021cqw;
}

.steps--right {
  left: 18.229cqw;
  width: 13.021cqw;
}

.steps--after {
  left: 4.167cqw;
  width: 27.083cqw;
}

.steps li {
  align-items: center;
  background: #ede9d6;
  color: #1a1311;
  display: flex;
  font-size: 1.25cqw;
  font-weight: 600;
  justify-content: center;
  letter-spacing: 0.052cqw;
  line-height: 2.083cqw;
  margin-bottom: 2.083cqw;
  min-height: 3.125cqw;
  position: relative;
  text-align: center;
}

.steps li.tall {
  min-height: 5.208cqw;
}

.steps li::after {
  background: #1a1311;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  height: 0.781cqw;
  left: 50%;
  position: absolute;
  top: calc(100% + 0.781cqw);
  transform: translateX(-50%);
  width: 1.804cqw;
}

.steps--right li:last-child,
.steps--after li:last-child {
  margin-bottom: 0;
}

.steps--right li:last-child::after,
.steps--after li:last-child::after {
  content: none;
}

/* 楽のはんこ */
.p-flow__box .raku {
  display: block;
  left: 0.989cqw;
  position: absolute;
  top: 0.573cqw;
  width: 6.972cqw;
  z-index: 2;
}

/* 月5時間の経理が、30分に。 */
.p-flow__result {
  position: static;
}

.p-flow__result::before {
  background: #ffffff;
  content: "";
  height: 1.406cqw;
  left: 33.437cqw;
  position: absolute;
  top: 59.167cqw;
  width: 32.083cqw;
}

.p-flow__result span {
  color: #1a1311;
  font-weight: 700;
  letter-spacing: 0.104cqw;
  position: absolute;
  white-space: nowrap;
}

.p-flow__result .r1,
.p-flow__result .r3 {
  font-size: 2.083cqw;
  line-height: 2.604cqw;
  top: 57.396cqw;
}

.p-flow__result .r1 {
  left: 34.635cqw;
}

.p-flow__result .r2 {
  font-size: 4.167cqw;
  left: 52.552cqw;
  line-height: 4.167cqw;
  top: 55.729cqw;
}

.p-flow__result .r3 {
  left: 62.344cqw;
}

/* 下部テキスト */
.p-flow__txt01,
.p-flow__txt02 {
  color: #1a1311;
  left: 25.208cqw;
  letter-spacing: 0.052cqw;
  position: absolute;
  text-align: center;
  width: 49.635cqw;
}

.p-flow__txt01 {
  font-size: max(12px, 1.25cqw);
  font-weight: 600;
  line-height: max(20px, 2.083cqw);
  top: 62.135cqw;
}

.p-flow__txt02 {
  font-size: 1.667cqw;
  font-weight: 800;
  line-height: 2.604cqw;
  top: 64.583cqw;
}

/* 右下の人物 */
.p-flow__man02 {
  left: 75cqw;
  position: absolute;
  top: 57.813cqw;
  width: 12.5cqw;
  z-index: 2;
}


/* service
-------------------------------------*/
.p-service {
  background: #efead4;
  position: relative;
  width: 100%;
  z-index: 2;
}

.p-service__inner {
  aspect-ratio: 1920 / 1374;
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

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

/* オレンジの見出し */
.p-service__head {
  align-items: center;
  background: #ef7e00;
  color: #ffffff;
  display: flex;
  font-size: 2.083cqw;
  letter-spacing: 0.052cqw;
  font-weight: 600;
  height: 6.25cqw;
  justify-content: center;
  left: 18.75cqw;
  line-height: 2.083cqw;
  position: absolute;
  top: 6.25cqw;
  width: 62.5cqw;
}

/* 白い箱 */
.p-service__box {
  background: #ffffff;
  height: 63.021cqw;
  left: 18.75cqw;
  position: absolute;
  top: 12.5cqw;
  width: 62.5cqw;
}

/* 見出し */
.p-service__ttl {
  color: #1a1311;
  font-size: 2.083cqw;
  font-weight: 700;
  left: 4.167cqw;
  letter-spacing: 0.052cqw;
  line-height: 3.125cqw;
  position: absolute;
  top: 3.125cqw;
  white-space: nowrap;
  z-index: 2;
}

.p-service__photo {
  left: 33.333cqw;
  position: absolute;
  top: 3.125cqw;
  width: 25cqw;
}

.p-service__txt {
  color: #1a1311;
  font-size: max(9px, 1.042cqw);
  font-weight: 500;
  left: 4.167cqw;
  letter-spacing: 0.052cqw;
  line-height: max(16px, 1.875cqw);
  position: absolute;
  top: 10.781cqw;
  white-space: nowrap;
}

/* 料金の箱 */
.p-service__price {
  background: #ef7e00;
  height: 19.167cqw;
  left: 4.167cqw;
  padding: 1.042cqw 1.562cqw 1.562cqw;
  position: absolute;
  top: 21.875cqw;
  width: 54.167cqw;
}

.p-service__price-ttl {
  align-items: flex-end;
  display: flex;
  gap: 0 0.104cqw;
  justify-content: center;
}

.p-service__price-ttl .u1,
.p-service__price-ttl .u3 {
  color: #ffffff;
  display: block;
  font-size: 2.083cqw;
  font-weight: 700;
  letter-spacing: 0.104cqw;
  line-height: 2.604cqw;
}

.p-service__price-ttl .u2 {
  color: #fdee04;
  font-family: "Oswald", sans-serif;
  font-size: 4.688cqw;
  font-weight: 600;
  letter-spacing: 0.104cqw;
  line-height: 3.646cqw;
}

.p-service__price-ttl .u3 {
  margin-left: 0.417cqw;
}

.p-service__price-ttl .u4 {
  color: #ffffff;
  display: block;
  font-size: 0.729cqw;
  font-weight: 700;
  line-height: 0.729cqw;
}

.p-service__price-body {
  background: #ffffff;
  height: 11.667cqw;
  margin-top: 1.25cqw;
  padding: 2.083cqw;
  position: relative;
}

.p-service__price-label {
  color: #1a1311;
  font-size: 1.562cqw;
  font-weight: 600;
  line-height: 1.562cqw;
  position: relative;
  text-align: center;
}

.p-service__price-label::before,
.p-service__price-label::after {
  background: #1a1311;
  content: "";
  height: 1px;
  position: absolute;
  top: 0.885cqw;
  width: 17.083cqw;
}

.p-service__price-label::before {
  left: 0;
}

.p-service__price-label::after {
  right: 0;
}

.p-service__list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.521cqw 2.083cqw;
  justify-content: center;
  margin-top: 1.25cqw;
}

.p-service__list li {
  align-items: center;
  color: #1a1311;
  display: flex;
  font-size: 1.25cqw;
  font-weight: 500;
  letter-spacing: 0.052cqw;
  line-height: 2.083cqw;
  order: 1;
  white-space: nowrap;
  width: 13.125cqw;
}

.p-service__list li:nth-child(2) { order: 4; }
.p-service__list li:nth-child(3) { order: 2; }
.p-service__list li:nth-child(4) { order: 5; }
.p-service__list li:nth-child(5) { order: 3; width: 14.427cqw; }
.p-service__list li:nth-child(6) { order: 6; width: 14.427cqw; }

.p-service__list li::before {
  background: #ef7e00;
  content: "";
  flex-shrink: 0;
  height: 1.042cqw;
  margin-right: 0.417cqw;
  width: 1.042cqw;
}

/* 青いラベル */
.p-service__label {
  align-items: center;
  background: #288dc4;
  color: #ffffff;
  display: flex;
  font-size: 2.083cqw;
  font-weight: 700;
  height: 5.208cqw;
  justify-content: center;
  left: 17.187cqw;
  letter-spacing: 0.052cqw;
  line-height: 2.083cqw;
  position: absolute;
  top: 44.167cqw;
  width: 28.125cqw;
}

.p-service__label::after {
  background: #288dc4;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  height: 1.953cqw;
  left: 50%;
  position: absolute;
  top: calc(100% - 0.443cqw);
  transform: translateX(-50%);
  width: 3.568cqw;
}

/* その理由は〜 */
.p-service__reason {
  color: #1a1311;
  font-size: 2.604cqw;
  font-weight: 700;
  left: 0;
  letter-spacing: 0.052cqw;
  line-height: 3.125cqw;
  position: absolute;
  text-align: center;
  top: 52.5cqw;
  width: 100%;
  z-index: 2;
}

.p-service__reason::before {
  background: #fdee04;
  content: "";
  height: 1.198cqw;
  left: 23.385cqw;
  position: absolute;
  top: 1.927cqw;
  width: 24.115cqw;
  z-index: -1;
}

.p-service__note {
  color: #1a1311;
  font-size: max(9px, 1.042cqw);
  font-weight: 500;
  left: 4.167cqw;
  letter-spacing: 0.052cqw;
  line-height: max(16px, 1.875cqw);
  position: absolute;
  text-align: center;
  top: 57.187cqw;
  width: 54.167cqw;
}


/* tsumari
-------------------------------------*/
.p-tsumari {
  background: url(../images/micro/sec08_sky.jpg) no-repeat center top/100% auto;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.p-tsumari__inner {
  aspect-ratio: 1920 / 1099;
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

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

/* 白い三角（上の白箱から続く） */
.p-tsumari__tri {
  background: #ffffff;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  display: block;
  height: 8.333cqw;
  left: 18.75cqw;
  position: absolute;
  top: calc(3.958cqw - 1px);
  width: 62.5cqw;
}

/* つまり */
.p-tsumari__balloon {
  left: 42.396cqw;
  position: absolute;
  top: 5cqw;
  width: 13.991cqw;
  z-index: 2;
}

.p-tsumari__balloon .txt {
  -webkit-text-stroke: 0.625cqw #ffffff;
  color: #1a1311;
  paint-order: stroke fill;
  font-size: 3.125cqw;
  font-weight: 700;
  left: 49%;
  letter-spacing: -0.26cqw;
  line-height: 3.125cqw;
  position: absolute;
  top: 47.09%;
  transform: translate(-50%, -50%) rotate(-5deg) skewX(-15deg) scaleY(0.97);
  white-space: nowrap;
}

/* 見出し */
.p-tsumari__ttl span,
.p-tsumari__ttl02 span {
  color: #ffffff;
  font-weight: 800;
  letter-spacing: 0.052cqw;
  position: absolute;
  text-align: center;
  transform: translateX(-50%);
  white-space: nowrap;
}

.p-tsumari__ttl .t1 {
  color: #fdee04;
  font-size: 4.167cqw;
  left: 41.719cqw;
  line-height: 4.167cqw;
  top: 16.302cqw;
}

.p-tsumari__ttl .t2 {
  color: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  position: static;
  transform: none;
}

.p-tsumari__ttl .t3 {
  font-size: 2.604cqw;
  left: 72.24cqw;
  line-height: 2.604cqw;
  top: 17.604cqw;
}

.p-tsumari__ttl02 .t4 {
  font-size: 3.125cqw;
  left: 50.495cqw;
  line-height: 4.167cqw;
  top: 22.031cqw;
}

/* .t5 の中の部分字間用（共通指定を打ち消してインラインのまま） */
.p-tsumari__ttl02 .t5 .m1 {
  color: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  position: static;
  transform: none;
  white-space: inherit;
}

.p-tsumari__ttl02 .t5 {
  color: #fdee04;
  font-size: 4.167cqw;
  left: 37.995cqw;
  line-height: 4.167cqw;
  text-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
  top: 27.24cqw;
}

.p-tsumari__ttl02 .t6 {
  font-size: 2.604cqw;
  left: 67.135cqw;
  line-height: 2.604cqw;
  top: 28.698cqw;
}

/* 安心感×低価格 */
.p-tsumari__big {
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background: linear-gradient(180deg, #9cf2f8 0%, #a8f5f8 22%, #ffffff 66%);
  background-clip: text;
  color: transparent;
  font-family: "Shippori Mincho B1", serif;
  font-size: 12.873cqw;
  font-weight: 800;
  left: calc(50% - 0.677cqw);
  letter-spacing: -1.248cqw;
  line-height: 17.163cqw;
  opacity: 0.7;
  position: absolute;
  text-align: center;
  transform: translateX(-50%) skewX(-10deg) scaleY(0.98);
  top: 30cqw;
  white-space: nowrap;
  width: 84.443cqw;
}

/* 街の写真（文字の手前に重ねる／1920pxを超えても画面幅いっぱいに伸ばす） */
.p-tsumari__city {
  background: url(../images/micro/sec08_city.png) no-repeat center top / cover;
  height: 15.625cqw;
  left: 50%;
  margin-left: -50vw;
  position: absolute;
  top: 41.615cqw;
  width: 100vw;
  z-index: 1;
}

/* 集合写真 */
.p-tsumari__group {
  left: 28.698cqw;
  position: absolute;
  top: 38.073cqw;
  width: 42.604cqw;
  z-index: 2;
}


/* price
-------------------------------------*/
.p-price {
  background: #f0ebd5;
  position: relative;
  width: 100%;
}

.p-price__inner {
  aspect-ratio: 1920 / 1244;
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

.p-price__ttl {
  color: #1a1311;
  font-size: 3.125cqw;
  font-weight: 700;
  left: 0;
  letter-spacing: 0.052cqw;
  line-height: 3.125cqw;
  position: absolute;
  text-align: center;
  top: 6.25cqw;
  width: 100%;
}

.p-price__wrap {
  left: 12.5cqw;
  position: absolute;
  top: 11.979cqw;
  width: 75cqw;
}

.p-price__table {
  border-collapse: separate;
  border-spacing: 0 0.521cqw;
  width: 100%;
}

.p-price__table th,
.p-price__table td {
  color: #1a1311;
  font-size: max(12px, 1.25cqw);
  font-weight: 600;
  height: 5.208cqw;
  letter-spacing: 0.052cqw;
  line-height: max(20px, 2.083cqw);
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  width: 15cqw;
}

.p-price__table thead th {
  background: #093754;
  border-right: 1px solid #ffffff;
  color: #ffffff;
}

.p-price__table thead th:last-child {
  border-right: 0;
}

.p-price__table tbody th {
  background: #f1f2ea;
  padding-left: 1.562cqw;
  text-align: left;
}

.p-price__table tbody td {
  background: #ffffff;
}

.p-price__table tbody th,
.p-price__table tbody td {
  border-right: 1px solid #093754;
}

.p-price__table tbody td:last-child {
  border-right: 0;
}

.p-price__note {
  color: #1a1311;
  font-size: max(12px, 0.833cqw);
  font-weight: 500;
  left: 12.5cqw;
  letter-spacing: 0.052cqw;
  line-height: max(21px, 1.458cqw);
  position: absolute;
  top: 54.167cqw;
  width: 75cqw;
}


/* flow2 / faq
-------------------------------------*/
.p-flow2 {
  background: #f1f2ea;
  position: relative;
  width: 100%;
}

.p-flow2__inner {
  /* aspect-ratio ではなく中身で高さを作る（文字が伸びたらセクションも伸びる）
     12.5 + 23.75 + 5.208 + 68.385 + 6.25 = 116.09cqw = カンプの 2229px */
  container-type: inline-size;
  margin-inline: auto;
  position: relative;
  width: min(100%, 1920px);
}

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

.p-flow2__ttl,
.p-faq__ttl {
  color: #1a1311;
  font-size: 3.125cqw;
  font-weight: 700;
  letter-spacing: 0.052cqw;
  line-height: 3.125cqw;
  position: absolute;
  text-align: center;
}

.p-flow2__ttl {
  left: 0;
  top: 6.25cqw;
  width: 100%;
}

/* ご利用の流れ */
.p-flow2__items {
  display: flex;
  gap: 0 1.042cqw;
  margin: 12.5cqw auto 0;
  width: 75cqw;
}

.p-flow2__item {
  display: flex;
  flex-direction: column;
  width: 17.969cqw;
}

.p-flow2__item .body {
  flex: 1;
}

.p-flow2__item .num {
  align-items: center;
  background: #288dc4;
  color: #1a1311;
  display: flex;
  font-family: "Oswald", sans-serif;
  font-size: 2.604cqw;
  font-weight: 500;
  height: 4.167cqw;
  justify-content: center;
  letter-spacing: 0.104cqw;
  line-height: 2.604cqw;
}

.p-flow2__item .body {
  background: #ffffff;
  min-height: 19.583cqw;
  padding: 2.083cqw 1.302cqw;
}

.p-flow2__item .ttl {
  color: #1a1311;
  font-size: max(12px, 1.25cqw);
  font-weight: 600;
  letter-spacing: 0.052cqw;
  line-height: max(20px, 2.083cqw);
  text-align: center;
}

.p-flow2__item--03 .ttl {
  font-size: max(12px, 1.146cqw);
  letter-spacing: -0.052cqw;
}

.p-flow2__item .img {
  height: 8.333cqw;
  margin-top: 1.042cqw;
  overflow: hidden;
}

.p-flow2__item .img img {
  height: 100%;
  object-fit: cover;
}

.p-flow2__item .txt {
  color: #1a1311;
  font-size: 0.833cqw;
  font-weight: 500;
  letter-spacing: 0.052cqw;
  line-height: 1.458cqw;
  margin-top: 1.042cqw;
  text-align: center;
}

/* よくあるご質問 */
.p-faq {
  background: #ffffff;
  border: 2.083cqw solid #dad7c2;
  border-radius: 1.042cqw;
  margin: 5.208cqw auto 6.25cqw;
  min-height: 68.385cqw;
  position: relative;
  width: 62.5cqw;
}

.p-faq__clip {
  display: block;
  left: 17.135cqw;
  position: absolute;
  top: -1.042cqw;
  width: 24.115cqw;
}

.p-faq__ttl {
  left: 2.083cqw;
  top: 4.844cqw;
  width: 54.167cqw;
}

.p-faq__list {
  margin: 10.052cqw auto 3.125cqw;
  width: 54.167cqw;
}

.p-faq__item {
  background: #f2f2f2;
  line-break: strict;
  margin-bottom: 1.042cqw;
  padding: 1.042cqw 2.083cqw;
}

.p-faq__item:last-child {
  margin-bottom: 0;
}

.p-faq__item dt,
.p-faq__item dd {
  display: flex;
  gap: 0 1.042cqw;
}

.p-faq__item dt {
  align-items: center;
}

.p-faq__item dd {
  align-items: flex-start;
  margin-top: 1.042cqw;
}

/* 1行だけの回答はマークと天地中央 */
.p-faq__item:nth-child(4) dd {
  align-items: center;
}

.p-faq__item .mark {
  align-items: center;
  color: #ffffff;
  display: flex;
  flex-shrink: 0;
  font-family: "Oswald", sans-serif;
  font-size: 2.083cqw;
  font-weight: 500;
  height: 3.125cqw;
  justify-content: center;
  letter-spacing: 0.104cqw;
  line-height: 2.083cqw;
  padding-left: 0.104cqw;
  width: 3.125cqw;
}

.p-faq__item dt .mark {
  background: #093754;
}

.p-faq__item dd .mark {
  background: #ef7e00;
}

.p-faq__item dt .txt {
  color: #1a1311;
  font-size: max(12px, 1.25cqw);
  font-weight: 600;
  letter-spacing: 0.052cqw;
  line-height: max(20px, 2.083cqw);
}

.p-faq__item dd .txt {
  color: #1a1311;
  font-size: max(12px, 0.833cqw);
  font-weight: 500;
  letter-spacing: 0.052cqw;
  line-height: max(21px, 1.458cqw);
}


/* form
-------------------------------------*/
.p-form {
  position: relative;
  width: 100%;
}

/* 方眼の背景（1920pxを超えても横に敷き詰める） */
.p-form__bg {
  background: url(../images/micro/sec12_bg.jpg) repeat-x center top / auto 100%;
  height: 94.813%;
  left: 0;
  position: absolute;
  top: 5.187%;
  width: 100%;
}

/* 入力項目が増減しても崩れないよう、白い箱を通常フローに置いて高さを可変にする
   （padding-top で箱の位置を保ちつつ、絶対配置の装飾は従来どおりの座標のまま）
   ※自分自身の cqw は自分を基準にできず画面幅基準になるため、%（親幅基準）で1920px上限をかける */
.p-form__inner {
  container-type: inline-size;
  margin-inline: auto;
  padding: min(37.448%, 719px) 0 min(6.25%, 120px);
  position: relative;
  width: min(100%, 1920px);
}

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

/* 白い吹き出し */
.p-form__bubble {
  background: #ffffff;
  border-radius: 5.208cqw;
  height: 10.417cqw;
  left: 23.958cqw;
  position: absolute;
  top: 0;
  width: 52.083cqw;
}

.p-form__bubble::after {
  background: #ffffff;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  content: "";
  height: calc(2.969cqw + 1px);
  left: 45.260cqw;
  position: absolute;
  top: calc(100% - 1px);
  width: 1.146cqw;
}

/* 今すぐ無料相談 */
.p-form__ttl {
  left: 0;
  position: absolute;
  text-align: center;
  top: 2.813cqw;
  width: 100%;
  z-index: 1;
}

.p-form__ttl::before {
  background: #fdee04;
  content: "";
  height: 2.552cqw;
  left: 47.552cqw;
  position: absolute;
  top: 3.437cqw;
  width: 20.781cqw;
  z-index: -1;
}

.p-form__ttl span {
  display: block;
  font-size: 5.208cqw;
  font-weight: 800;
  letter-spacing: -0.104cqw;
  line-height: 5.208cqw;
  position: absolute;
  top: 0;
}

.p-form__ttl .now {
  color: #1a1311;
  left: 31.615cqw;
  width: 15.417cqw;
}

.p-form__ttl .free {
  color: #ef7e00;
  left: 47.552cqw;
  width: 20.521cqw;
}

.p-form__dots {
  display: flex;
  gap: 4.167cqw;
  left: 49.844cqw;
  position: absolute;
  top: 1.615cqw;
  z-index: 1;
}

.p-form__dots i {
  background: #1a1311;
  border-radius: 50%;
  display: block;
  height: 0.729cqw;
  width: 0.729cqw;
}

/* どんなことでもご相談ください */
.p-form__catch {
  color: #1a1311;
  font-size: 3.125cqw;
  font-weight: 700;
  left: 0;
  letter-spacing: 0.052cqw;
  line-height: 3.125cqw;
  position: absolute;
  text-align: center;
  top: 13.385cqw;
  width: 100%;
}

/* 見出し両脇の斜線（画像ではなくCSSで引く） */
.p-form__line {
  background: #1a1311;
  height: 0.156cqw;
  position: absolute;
  top: 14.981cqw;
  width: 3.667cqw;
}

.p-form__line--l {
  left: 23.968cqw;
  transform: rotate(65.88deg);
}

.p-form__line--r {
  left: 72.342cqw;
  transform: rotate(-65.88deg);
}

/* 初回相談無料のバッジ */
.p-form__free {
  height: 8.333cqw;
  left: 25.052cqw;
  position: absolute;
  top: 18.816cqw;
  width: 8.333cqw;
}

.p-form__free .s1,
.p-form__free .s2 {
  color: #1a1311;
  font-weight: 600;
  left: 0;
  position: absolute;
  text-align: center;
  width: 100%;
}

.p-form__free .s1 {
  font-size: 1.042cqw;
  letter-spacing: normal;
  line-height: 1.042cqw;
  top: 2.240cqw;
}

.p-form__free .s2 {
  font-size: 2.083cqw;
  letter-spacing: 0.104cqw;
  line-height: 2.604cqw;
  top: 3.437cqw;
}

/* 電話番号 */
.p-form__tel {
  left: 34.948cqw;
  position: absolute;
  top: 20.378cqw;
}

.p-form__tel a {
  align-items: center;
  display: flex;
  gap: 1.042cqw;
}

.p-form__tel .icon {
  width: 2.604cqw;
}

.p-form__tel .num {
  color: #1a1311;
  font-family: "Oswald", sans-serif;
  font-size: 4.688cqw;
  font-weight: 600;
  letter-spacing: 0.104cqw;
  line-height: 3.646cqw;
}

.p-form__time {
  color: #1a1311;
  font-size: max(12px, 0.938cqw);
  font-weight: 600;
  letter-spacing: normal;
  left: 34.948cqw;
  line-height: max(20px, 1.563cqw);
  position: absolute;
  text-align: center;
  top: 25.586cqw;
  width: 32.292cqw;
}

/* 黒帯 */
.p-form__band {
  align-items: center;
  background: #1a1311;
  color: #ffffff;
  display: flex;
  font-size: 1.563cqw;
  font-weight: 600;
  height: 4.427cqw;
  justify-content: center;
  left: 25.145cqw;
  letter-spacing: 0.052cqw;
  line-height: 2.083cqw;
  position: absolute;
  top: 28.712cqw;
  width: 49.688cqw;
}

/* 代表の写真（PCは肩書きも含んだ画像なのでテキストは出さない） */
.p-form__person {
  left: 66.979cqw;
  position: absolute;
  top: 18.177cqw;
  width: 15.313cqw;
  z-index: 1;
}

.p-form__person .name01,
.p-form__person .name02 {
  display: none;
}

/* 白い箱 */
.p-form__box {
  background: #ffffff;
  box-shadow: 0 1.042cqw 3.125cqw rgba(0, 0, 0, 0.18);
  margin-inline: auto;
  padding-bottom: 10.313cqw;
  position: relative;
  width: 75cqw;
}

.p-form__head {
  align-items: flex-end;
  background: #ef7e00;
  color: #ffffff;
  display: flex;
  font-size: 2.083cqw;
  font-weight: 700;
  gap: 0.521cqw;
  height: 6.25cqw;
  justify-content: center;
  letter-spacing: 0.052cqw;
  line-height: 2.083cqw;
  padding-bottom: 2.083cqw;
}

.p-form__head .icon {
  width: 2.760cqw;
}

.p-form__head .txt {
  text-align: center;
  white-space: nowrap;
  width: 17.917cqw;
}

/* 入力欄 */
.p-form__body {
  margin-inline: auto;
  padding-top: 4.167cqw;
  width: 62.5cqw;
}

.p-form__body .form-row {
  display: flex;
  margin-bottom: 0.208cqw;
  position: relative;
}

.p-form__body .form-row:last-of-type {
  margin-bottom: 0;
}

.p-form__body .form-row__ttl {
  align-items: flex-start;
  background: #f2f2f2;
  color: #1a1311;
  display: flex;
  font-size: 0.938cqw;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 1.563cqw;
  padding: 2.083cqw 0 2.083cqw 2.083cqw;
  width: 12.708cqw;
}

.p-form__body .form-row__body {
  background: #f2f2f2;
  padding: 1.302cqw 1.042cqw 1.302cqw 2.917cqw;
  width: 49.792cqw;
}

.p-form__body .req {
  background: #ef7e00;
  border-radius: 0.156cqw;
  color: #ffffff;
  font-size: 0.729cqw;
  font-weight: 500;
  left: 12.708cqw;
  letter-spacing: normal;
  line-height: 0.938cqw;
  padding: 0.104cqw 0.208cqw;
  position: absolute;
  top: 2.292cqw;
}

.p-form__body .wpcf7-form-control-wrap {
  display: block;
}

.p-form__body input[type="text"],
.p-form__body input[type="tel"],
.p-form__body input[type="email"],
.p-form__body textarea {
  background: #ffffff;
  border: 1px solid #cfcfcf;
  border-radius: 0;
  box-sizing: border-box;
  display: block;
  font-family: inherit;
  font-size: max(12px, 0.938cqw);
  height: 3.125cqw;
  padding: 0 0.833cqw;
  width: 100%;
}

.p-form__body textarea {
  height: 10.417cqw;
  padding: 0.833cqw;
  resize: none;
}

/* iPhone横向き・iPadなどタッチ端末は16px未満だと入力時に画面が拡大されるため */
@media (pointer: coarse) {
  .p-form__body input[type="text"],
  .p-form__body input[type="tel"],
  .p-form__body input[type="email"],
  .p-form__body textarea {
    font-size: max(16px, 0.938cqw);
  }
}

.p-form__body .error-message {
  font-size: max(12px, 0.729cqw);
  margin-top: 0.208cqw;
}

/* 確認画面（入力内容の表示） */
#form .p-form__body .form-row__body > .confirm_area {
  color: #1a1311;
  font-size: max(12px, 0.938cqw);
  font-weight: 500;
  line-height: 1.563cqw;
  min-height: 3.125cqw;
  padding: 0.781cqw 0;
  word-break: break-all;
}

/* CF7 が自動で挿入する <p> の余白を打ち消す */
#form .p-form__body .form-row__body > .confirm_area p {
  margin: 0;
}

/* ご相談内容だけ改行を活かす */
#form .p-form__body .confirm_your-remarks {
  display: block;
  white-space: pre-wrap;
}

/* プライバシーポリシー */
.p-form__priv {
  margin-top: 2.083cqw;
}

#form .p-form__priv .priv-text {
  background: #ffffff;
  border: 1px solid #cfcfcf;
  color: #1a1311;
  height: 13.021cqw;
  margin-bottom: 1.563cqw;
  overflow-y: auto;
  padding: 1.042cqw;
}

#form .p-form__priv .priv-text .priv-ttl,
#form .p-form__priv .priv-text .tt {
  color: #1a1311;
  font-size: max(12px, 0.938cqw);
  font-weight: 700;
  margin-bottom: 0.521cqw;
}

#form .p-form__priv .priv-text p {
  border-bottom: 1px solid #e6e6e6;
  font-size: max(12px, 0.833cqw);
  line-height: 1.6;
  margin-bottom: 0.833cqw;
  padding-bottom: 0.833cqw;
}

#form .p-form__priv .privtext {
  margin-bottom: 0;
  text-align: center;
}

#form .p-form__priv .privtext .wpcf7-list-item {
  margin: 0;
}

#form .p-form__priv .privtext label {
  align-items: center;
  color: #1a1311;
  cursor: pointer;
  display: inline-flex;
  font-size: max(12px, 0.938cqw);
  font-weight: 500;
  gap: 0.417cqw;
  letter-spacing: normal;
  line-height: 1.563cqw;
}

#form .p-form__priv .privtext input[type="checkbox"] {
  accent-color: #ef7e00;
  cursor: pointer;
  height: 1.042cqw;
  margin: 0;
  width: 1.042cqw;
}

/* 送信ボタン */
.p-form__submit {
  margin-top: 3.125cqw;
}

#form .p-form__submit input[type="submit"],
#form .p-form__submit .confirm_button {
  background: linear-gradient(180deg, #ffb300 0%, #ff6500 100%);
  border: 0.260cqw solid #f99202;
  border-radius: 10.417cqw;
  box-shadow: 0 1.042cqw 1.042cqw rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
  color: #ffffff;
  cursor: pointer;
  display: block;
  font-family: inherit;
  font-size: 2.083cqw;
  font-weight: 600;
  height: auto;
  letter-spacing: 0.052cqw;
  line-height: 2.083cqw;
  margin: 0;
  padding: 1.875cqw 0;
  width: 100%;
}

/* CF7 が自動で挿入する <p> がボタン幅を縮めてしまうのを打ち消す */
#form .p-form__submit #send_area p,
#form .p-form__submit #back_area p {
  display: block;
  margin: 0;
  position: static;
}

#form .p-form__submit #send_area p::after,
#form .p-form__submit #back_area p::after {
  content: none;
}

/* 未入力・不備があるあいだは押せないことを見た目でも伝える */
#form .p-form__submit .confirm_button[disabled] {
  background: #cfcfcf;
  border-color: #cfcfcf;
  box-shadow: none;
  cursor: not-allowed;
}

#form .p-form__submit #back_button {
  background: #ffffff;
  border: 1px solid #1a1311;
  border-radius: 10.417cqw;
  box-sizing: border-box;
  color: #1a1311;
  cursor: pointer;
  display: block;
  font-family: inherit;
  font-size: max(12px, 1.250cqw);
  font-weight: 600;
  height: auto;
  letter-spacing: 0.052cqw;
  line-height: 1.563cqw;
  margin: 1.042cqw auto 0;
  padding: 0.833cqw 0;
  width: 100%;
}

/* ボタンに重なる女性 */
.p-form__woman {
  bottom: 0;
  left: 17.448cqw;
  position: absolute;
  width: 6.771cqw;
  z-index: 2;
}


/* 固定バー（SPのみ）
-------------------------------------*/
.p-fixed {
  display: none;
}


/* thanks（サンクスページ・デザインなしのためpx指定）
-------------------------------------*/
.p-thanks {
  background: #ffffff;
  padding: 100px 0 120px;
  width: 100%;
}

.p-thanks__inner {
  margin-inline: auto;
  width: min(100% - 80px, 1000px);
}

.p-thanks__ttl,
.p-thanks__ttl02 {
  color: #1a1311;
  font-weight: 700;
  letter-spacing: 1px;
  text-align: center;
}

.p-thanks__ttl {
  font-size: 40px;
  line-height: 60px;
  position: relative;
  padding-bottom: 24px;
}

.p-thanks__ttl::after {
  background: #ef7e00;
  bottom: 0;
  content: "";
  height: 4px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 80px;
}

.p-thanks__ttl02 {
  font-size: 24px;
  line-height: 40px;
  margin-top: 72px;
}

.p-thanks__txt {
  color: #1a1311;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 32px;
  margin-top: 32px;
  text-align: center;
}

.p-thanks__tel {
  border: 2px solid #288dc4;
  margin: 64px auto 0;
  padding: 32px 20px;
  width: min(100%, 560px);
}

.p-thanks__tel-label {
  color: #288dc4;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 1px;
  line-height: 18px;
  text-align: center;
}

.p-thanks__tel-num {
  margin-top: 20px;
}

.p-thanks__tel-num a {
  align-items: center;
  color: #1a1311;
  display: flex;
  gap: 0 12px;
  justify-content: center;
}

.p-thanks__tel-num .icon {
  display: block;
  width: 40px;
}

.p-thanks__tel-num .icon img {
  display: block;
  width: 100%;
}

.p-thanks__tel-num .num {
  font-family: "Oswald", sans-serif;
  font-size: 56px;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 56px;
}

.p-thanks__tel-time {
  color: #1a1311;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 28px;
  margin-top: 8px;
  text-align: center;
}

.p-thanks__btn {
  margin-top: 64px;
  text-align: center;
}

.p-thanks__btn a {
  align-items: center;
  background: linear-gradient(180deg, #ffb300 0%, #ff6500 100%);
  border: 3px solid #f99202;
  border-radius: 200px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
  color: #ffffff;
  display: flex;
  font-size: 20px;
  font-weight: 600;
  height: 72px;
  justify-content: center;
  letter-spacing: 1px;
  margin-inline: auto;
  width: min(100%, 400px);
}


/* footer
-------------------------------------*/
.p-footer {
  background: #ffffff;
  padding: 40px 0 20px;
  position: relative;
  width: 100%;
}

.p-footer__inner {
  margin-inline: auto;
  padding-top: 7px;
  width: min(100%, 1100px);
}

.p-footer__logo {
  margin-inline: auto;
  width: 364px;
}

.p-footer__logo a {
  display: block;
}

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

.p-footer__info {
  color: #1a1311;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: normal;
  line-height: 28px;
  margin-top: 21px;
  text-align: center;
}

.p-footer__info a {
  color: inherit;
  text-decoration: none;
}

.p-footer__copy {
  color: #1a1311;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 25.6px;
  margin-top: 40px;
  text-align: center;
}


/* lastmsg
-------------------------------------*/
.p-lastmsg {
  background: #ffffff;
  position: relative;
  width: 100%;
}

.p-lastmsg__inner {
  aspect-ratio: 1920 / 1160;
  container-type: inline-size;
  margin-inline: auto;
  overflow: hidden;
  position: relative;
  width: min(100%, 1920px);
}

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

/* 経理のために */
.p-lastmsg__lead {
  left: 0;
  position: absolute;
  text-align: center;
  top: 6.25cqw;
  width: 100%;
}

.p-lastmsg__lead .c1,
.p-lastmsg__lead .c2 {
  color: #1a1311;
  font-weight: 700;
  letter-spacing: 0.052cqw;
  line-height: 3.125cqw;
}

.p-lastmsg__lead .c1 {
  color: #288dc4;
  font-size: 4.167cqw;
}

.p-lastmsg__lead .c2 {
  font-size: 3.125cqw;
}

/* オレンジの帯 */
.p-lastmsg__band {
  align-items: center;
  background: #ef7e00;
  box-shadow: 0 0.417cqw 0.833cqw rgba(0, 0, 0, 0.25);
  color: #ffffff;
  display: flex;
  font-size: 4.167cqw;
  font-weight: 700;
  height: 5.312cqw;
  justify-content: center;
  left: 27.604cqw;
  letter-spacing: 0.052cqw;
  line-height: 4.167cqw;
  position: absolute;
  top: 10.937cqw;
  white-space: nowrap;
  width: 44.792cqw;
  z-index: 1;
}

/* 写真4枚（両端は画面外にはみ出す分をトリミング済みの画像を使う） */
.p-lastmsg__photos {
  display: flex;
  left: 0;
  position: absolute;
  top: 14.687cqw;
  width: 100%;
}

.p-lastmsg__photos li {
  height: 19.792cqw;
  width: 29.167cqw;
}

.p-lastmsg__photos li:first-child,
.p-lastmsg__photos li:last-child {
  width: 20.833cqw;
}

.p-lastmsg__photos img {
  height: 100%;
  object-fit: cover;
}

/* 下部のメッセージ */
.p-lastmsg__ttl,
.p-lastmsg__txt,
.p-lastmsg__ttl02,
.p-lastmsg__ttl03 {
  color: #1a1311;
  left: 0;
  letter-spacing: 0.052cqw;
  position: absolute;
  text-align: center;
  width: 100%;
}

.p-lastmsg__ttl {
  font-size: 2.083cqw;
  font-weight: 800;
  line-height: 2.604cqw;
  top: 37.604cqw;
}

.p-lastmsg__txt {
  font-size: max(12px, 1.25cqw);
  font-weight: 600;
  line-height: max(20px, 2.083cqw);
  top: 41.458cqw;
}

.p-lastmsg__ttl02 {
  font-size: 3.125cqw;
  font-weight: 700;
  line-height: 3.125cqw;
  top: 48.75cqw;
}

.p-lastmsg__ttl03 {
  font-size: 3.125cqw;
  font-weight: 700;
  line-height: 3.125cqw;
  top: 53.125cqw;
}

.p-lastmsg__ttl03 .o1 {
  color: #ef7e00;
}













}


/* ========================================
@media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {


/* lpheader
-------------------------------------*/
.l-lpheader {
  background: #ffffff;
  position: relative;
  width: 100%;
  z-index: 1;
}

.l-lpheader__inner {
  align-items: center;
  display: flex;
  height: 18.357vw;
  justify-content: center;
}

.l-lpheader__logo a {
  display: block;
}

.l-lpheader__logo img {
  width: 46.86vw;
}

.l-lpheader__btn {
  display: none;
}


/* fv
-------------------------------------*/
.p-fv {
  background: url(../images/micro/fv_bg_sp.jpg) no-repeat center top/100% 173.913vw;
  position: relative;
  width: 100%;
}

.p-fv__inner {
  height: 173.913vw;
  position: relative;
  width: 100%;
}

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

/* 左：スマホ */
.p-fv__phone {
  left: 0;
  position: absolute;
  top: -3.382vw;
  width: 24.396vw;
  z-index: 4;
}

/* 吹き出し */
.p-fv__balloon {
  left: 9.674vw;
  position: absolute;
  top: 5.072vw;
  width: 35.113vw;
  z-index: 5;
}

.p-fv__balloon-txt,
.p-fv__balloon-mark {
  -webkit-text-stroke: 0.922vw #ffffff;
  color: #1a1311;
  font-weight: 700;
  paint-order: stroke fill;
  position: absolute;
  white-space: nowrap;
}

.p-fv__balloon-txt {
  font-size: 4.611vw;
  left: 46.3%;
  letter-spacing: -0.384vw;
  line-height: 5.072vw;
  top: 48.7%;
  transform: translate(-50%, -50%) rotate(-5deg) skewX(-15deg) scaleY(0.97);
}

.p-fv__balloon-txt .red {
  color: #d30808;
}

.p-fv__balloon-txt .nostroke {
  -webkit-text-stroke-width: 0;
}

.p-fv__balloon-mark {
  font-size: 5.436vw;
  left: 71.23%;
  letter-spacing: -0.453vw;
  line-height: 5.98vw;
  top: 54.4%;
  transform: translate(-50%, -50%) rotate(8.18deg) skewX(-15deg) scaleY(0.97);
}

/* 右：人物 */
.p-fv__man {
  position: absolute;
  right: 0;
  top: -3.382vw;
  width: 40.097vw;
  z-index: 9;
}

/* リード */
.p-fv__lead {
  color: #ffffff;
  font-size: 7.166vw;
  font-weight: 700;
  left: 21.498vw;
  line-height: 10.749vw;
  position: absolute;
  text-align: center;
  top: 32.126vw;
  white-space: nowrap;
  width: 57.246vw;
  z-index: 10;
}

/* タイトル */
.p-fv__ttl-dots {
  background: #fdee04;
  border-radius: 50%;
  box-shadow:
    12.296vw 0 0 #fdee04,
    24.592vw 0 0 #fdee04,
    36.888vw 0 0 #fdee04,
    49.184vw 0 0 #fdee04,
    61.48vw 0 0 #fdee04,
    73.776vw 0 0 #fdee04;
  display: block;
  height: 2.12vw;
  left: 12.198vw;
  position: absolute;
  top: 49.275vw;
  width: 2.12vw;
  z-index: 3;
}

.p-fv__ttl-01,
.p-fv__ttl-02 {
  color: #1a1311;
  display: block;
  font-weight: 700;
  position: absolute;
  white-space: nowrap;
}

.p-fv__ttl-01 {
  font-size: 12.564vw;
  left: 6.828vw;
  line-height: 12.564vw;
  top: 51.961vw;
  width: 88.886vw;
  z-index: 3;
}

.p-fv__ttl-02 {
  font-size: 12.152vw;
  left: 3.623vw;
  letter-spacing: normal;
  line-height: 10.033vw;
  top: 69.565vw;
  z-index: 3;
}

.p-fv__ttl-02 .s1 {
  letter-spacing: -0.966vw;
}

.p-fv__ttl-02 .s2 {
  letter-spacing: -2.899vw;
}

/* 黄色帯 */
.p-fv__band {
  align-items: center;
  background: #fdee04;
  border-radius: 48.309vw;
  color: #1a1311;
  display: flex;
  font-size: 4.831vw;
  font-weight: 700;
  height: 14.493vw;
  justify-content: center;
  left: 50%;
  position: absolute;
  top: 87.198vw;
  transform: translateX(-50%);
  width: 82.126vw;
  z-index: 2;
}

/* 価格 */
.p-fv__price-unit,
.p-fv__price-num,
.p-fv__price-yen,
.p-fv__price-wave {
  color: #1a1311;
  display: block;
  font-weight: 700;
  paint-order: stroke fill;
  position: absolute;
  white-space: nowrap;
  z-index: 8;
}

.p-fv__price-unit,
.p-fv__price-yen,
.p-fv__price-wave {
  -webkit-text-stroke: 1.691vw #ffffff;
  transform: skewX(-10deg) scaleY(0.98);
}

.p-fv__price-unit {
  font-size: 7.83vw;
  left: 4.106vw;
  line-height: 7.83vw;
  top: 114.01vw;
  white-space: normal;
  width: 1em;
}

.p-fv__price-num {
  -webkit-text-stroke: 2.657vw #ffffff;
  color: #d30808;
  font-family: "Oswald", sans-serif;
  font-size: 28.425vw;
  font-weight: 500;
  left: 10.87vw;
  letter-spacing: -0.683vw;
  line-height: 28.425vw;
  top: 101.691vw;
  transform: skewX(-10deg) scaleY(0.98);
}

.p-fv__price-yen {
  font-size: 9.851vw;
  left: 87.44vw;
  line-height: 9.851vw;
  top: 118.599vw;
}

.p-fv__price-wave {
  font-size: 12.957vw;
  left: 80.676vw;
  line-height: 3.527vw;
  top: 122.222vw;
}

/* ピル */
.p-fv__pills {
  display: flex;
  gap: 0 1.346vw;
  left: 5.797vw;
  position: absolute;
  top: 136.039vw;
  z-index: 6;
}

.p-fv__pill {
  align-items: center;
  background: #288dc4;
  border-radius: 16.807vw;
  color: #ffffff;
  display: flex;
  font-size: max(12px, 3.618vw);
  font-weight: 800;
  height: 6.387vw;
  justify-content: center;
  letter-spacing: 0.168vw;
  line-height: max(14px, 4.202vw);
  width: 28.572vw;
}

.p-fv__pill:first-child {
  font-size: max(12px, 3.365vw);
}

/* メダル */
.p-fv__medal {
  height: 38.333vw;
  position: absolute;
  top: 145.894vw;
  width: 38.333vw;
  z-index: 7;
}

.p-fv__medal--01 {
  left: 10.628vw;
}

.p-fv__medal--02 {
  left: 51.039vw;
}

.p-fv__medal .ttl,
.p-fv__medal .num {
  color: #1a1311;
  font-size: 4.792vw;
  font-weight: 600;
  left: 50%;
  letter-spacing: 0.319vw;
  line-height: 7.986vw;
  position: absolute;
  transform: translateX(-50%);
  white-space: nowrap;
}

.p-fv__medal .ttl {
  top: 21.667%;
}

.p-fv__medal .num {
  align-items: baseline;
  display: flex;
  top: 46.667%;
}

.p-fv__medal .num i,
.p-cv__medal .num i {
  font-style: normal;
  position: relative;
  top: -0.725vw;
}

.p-fv__medal .num i {
  left: 0.362vw;
}

.p-fv__medal .num em {
  color: #d30808;
  font-family: "Oswald", sans-serif;
  font-size: 11.181vw;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.319vw;
}


/* nayami
-------------------------------------*/
.p-nayami {
  background: url(../images/micro/sec02_bg_sp.jpg) no-repeat center top/100% auto;
  position: relative;
  width: 100%;
}

.p-nayami__inner {
  height: 234.783vw;
  position: relative;
  width: 100%;
}

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

/* 見出し */
.p-nayami__ttl {
  left: 0;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%;
  z-index: 2;
}

.p-nayami__ttl .sub {
  color: #ffffff;
  display: block;
  font-size: 4.831vw;
  font-weight: 600;
  left: 0;
  letter-spacing: 0.242vw;
  line-height: 4.831vw;
  position: absolute;
  top: 23.671vw;
  width: 100%;
}

.p-nayami__ttl .main {
  color: #ffffff;
  display: block;
  font-size: 9.662vw;
  font-weight: 700;
  left: 0;
  letter-spacing: 0.483vw;
  line-height: 13.285vw;
  position: absolute;
  top: 32.126vw;
  white-space: normal;
  width: 100%;
}

.p-nayami__ttl .main em {
  color: #fdee04;
  font-size: 11.111vw;
  font-style: normal;
  font-weight: 700;
}

.p-nayami__ttl::before,
.p-nayami__ttl::after {
  background: #093754;
  content: "";
  height: 4.589vw;
  position: absolute;
  z-index: -1;
}

.p-nayami__ttl::after {
  left: 3.14vw;
  top: 41.063vw;
  width: 92.754vw;
}

.p-nayami__ttl::before {
  left: 24.879vw;
  top: 53.14vw;
  width: 50.242vw;
}

/* リード */
.p-nayami__lead,
.p-nayami__lead02 {
  color: #ffffff;
  font-size: 3.865vw;
  font-weight: 600;
  letter-spacing: 0.242vw;
  line-height: 7.246vw;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  z-index: 2;
}

.p-nayami__lead {
  left: 5.072vw;
  top: 64.976vw;
  width: 89.855vw;
}

.p-nayami__lead02 {
  left: 9.179vw;
  top: 139.614vw;
  width: 81.643vw;
}

/* 黒帯（帯はCSS・文字は画像） */
.p-nayami__tape {
  background: #1a1311;
  height: 12.035vw;
  position: absolute;
  transform: rotate(-6.37deg);
  width: 72.39vw;
  z-index: 2;
}

.p-nayami__tape img {
  left: 50%;
  position: absolute;
  top: calc(50% + 0.966vw);
  transform: translate(-50%, -50%) rotate(6.37deg);
}

.p-nayami__tape--01 {
  left: 4.309vw;
  top: 86.667vw;
}

.p-nayami__tape--01 img {
  width: 64.01vw;
}

.p-nayami__tape--02 {
  left: 22.183vw;
  top: 96.596vw;
}

.p-nayami__tape--02 img {
  top: calc(50% + 1.691vw);
  width: 64.493vw;
}

.p-nayami__tape--03 {
  left: 5.516vw;
  top: 110.29vw;
}

.p-nayami__tape--03 img {
  width: 66.908vw;
}

.p-nayami__tape--04 {
  left: 23.391vw;
  top: 120.206vw;
}

.p-nayami__tape--04 img {
  width: 58.937vw;
}

/* 円形写真 */
.p-nayami__circle {
  left: 22.705vw;
  position: absolute;
  top: 166.667vw;
  width: 77.295vw;
  z-index: 1;
}

/* 吹き出し */
.p-nayami__balloon {
  align-items: center;
  background: url(../images/micro/sec02_balloon.svg) no-repeat center center/100% 100%;
  color: #ffffff;
  display: flex;
  font-size: 4.831vw;
  font-weight: 600;
  height: 29.469vw;
  justify-content: center;
  letter-spacing: -0.242vw;
  line-height: 7.246vw;
  position: absolute;
  text-align: center;
  width: 49.034vw;
  z-index: 3;
}

.p-nayami__balloon--01 {
  left: 15.459vw;
  top: 154.106vw;
}

.p-nayami__balloon--02 {
  left: 2.174vw;
  top: 176.087vw;
}

.p-nayami__balloon--03 {
  left: 7.246vw;
  top: 200.483vw;
}


/* fuan
-------------------------------------*/
.p-fuan {
  position: relative;
  width: 100%;
  z-index: 2;
}

.p-fuan__bg {
  background: #093754;
  clip-path: polygon(
    0 0,
    calc(50% - 4.71vw) 0,
    50% 5.314vw,
    calc(50% + 4.71vw) 0,
    100% 0,
    100% 100%,
    0 100%
  );
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.p-fuan__inner {
  height: 54.348vw;
  position: relative;
  width: 100%;
}

.p-fuan__lead,
.p-fuan__ttl {
  color: #ffffff;
  left: 6.522vw;
  letter-spacing: normal;
  position: absolute;
  text-align: center;
  white-space: nowrap;
  width: 86.957vw;
}

.p-fuan__lead {
  font-size: 4.831vw;
  font-weight: 600;
  line-height: 4.831vw;
  top: 12.077vw;
}

.p-fuan__ttl {
  font-size: 9.662vw;
  font-weight: 700;
  line-height: 9.662vw;
  top: 22.705vw;
}

.p-fuan__mark {
  display: block;
  left: 82.536vw;
  position: absolute;
  right: auto;
  top: -9.662vw;
  width: 15.7vw;
}

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


/* support
-------------------------------------*/
.p-support {
  background: url(../images/micro/sec03_bg_sp.jpg) no-repeat center top/100% auto;
  position: relative;
  width: 100%;
}

.p-support__inner {
  height: 171.498vw;
  position: relative;
  width: 100%;
}

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

/* オレンジのバナー */
.p-support__banner {
  align-items: flex-start;
  background: url(../images/micro/sec03_banner_sp.svg) no-repeat center top/100% 100%;
  color: #ffffff;
  display: flex;
  font-size: 4.831vw;
  font-weight: 700;
  height: 23.913vw;
  justify-content: center;
  left: 3.865vw;
  line-height: 4.831vw;
  padding-top: 5.556vw;
  position: absolute;
  top: -9.903vw;
  white-space: nowrap;
  width: 92.271vw;
  z-index: 2;
}

/* 見出し */
.p-support__lead {
  color: #1a1311;
  font-size: 4.831vw;
  font-weight: 600;
  left: 3.382vw;
  letter-spacing: 0.242vw;
  line-height: 4.831vw;
  position: absolute;
  text-align: center;
  top: 15.942vw;
  white-space: nowrap;
  width: 93.237vw;
}

.p-support__ttl {
  left: 3.382vw;
  position: absolute;
  top: 25.604vw;
  width: 72.464vw;
  z-index: 1;
}

.p-support__ttl .main {
  color: #1a1311;
  display: block;
  font-size: 7.246vw;
  font-weight: 700;
  line-height: 9.662vw;
  position: relative;
  text-align: left;
  white-space: normal;
}

.p-support__ttl::after {
  background: #ffffff;
  content: "";
  height: 3.865vw;
  left: 7.729vw;
  position: absolute;
  top: 5.797vw;
  width: 62.077vw;
  z-index: -1;
}

.p-support__ttl::before {
  background: #ffffff;
  content: "";
  height: 3.865vw;
  left: 0;
  position: absolute;
  top: 15.217vw;
  width: 43.961vw;
  z-index: -1;
}

.p-support__ttl-sub {
  left: 51.208vw;
  position: absolute;
  top: 37.198vw;
}

.p-support__ttl-sub .wo,
.p-support__ttl-sub .youi {
  color: #1a1311;
  font-size: 4.831vw;
  font-weight: 600;
  letter-spacing: 0.242vw;
  line-height: 7.246vw;
  position: static;
  white-space: nowrap;
}

/* 写真 */
.p-support__photo {
  position: absolute;
}

.p-support__photo--01 {
  height: 26.57vw;
  left: 5.797vw;
  top: 101.449vw;
  width: 42.512vw;
}

.p-support__photo--02 {
  height: 48.309vw;
  left: 5.797vw;
  top: 49.758vw;
  width: 88.406vw;
}

.p-support__photo--03 {
  height: 26.57vw;
  left: 51.691vw;
  top: 101.449vw;
  width: 42.512vw;
}

/* 説明文 */
.p-support__txt {
  color: #1a1311;
  font-size: 4.348vw;
  font-weight: 600;
  left: 3.382vw;
  letter-spacing: 0.242vw;
  line-height: 7.729vw;
  position: absolute;
  text-align: left;
  top: 133.816vw;
  white-space: normal;
  width: 88.406vw;
}

/* 右下の人物 */
.p-support__man {
  left: 79.227vw;
  position: absolute;
  top: 120.531vw;
  width: 20.773vw;
  z-index: 2;
}


/* cv
-------------------------------------*/
.p-cv {
  background: url(../images/micro/cv_bg_sp.jpg) no-repeat center top/100% auto;
  position: relative;
  width: 100%;
}

.p-cv__inner {
  height: 215.459vw;
  position: relative;
  width: 100%;
}

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

/* 青枠 */
.p-cv__frame {
  display: block;
  left: 0;
  position: absolute;
  top: 28.502vw;
  width: 100vw;
}

/* 今すぐ無料相談 */
.p-cv__ttl {
  left: 6.039vw;
  position: absolute;
  top: 16.184vw;
  z-index: 2;
}

.p-cv__ttl::before {
  background: #ffffff;
  content: "";
  height: 12.56vw;
  left: -2.174vw;
  position: absolute;
  top: 8.454vw;
  width: 92.271vw;
  z-index: -1;
}

.p-cv__ttl .now,
.p-cv__ttl .free {
  color: #1a1311;
  font-size: 13.043vw;
  font-weight: 700;
  letter-spacing: -0.483vw;
  line-height: 16.908vw;
  position: absolute;
  top: 0;
  white-space: nowrap;
}

.p-cv__ttl .now {
  left: 0;
}

.p-cv__ttl .free {
  color: #ef7e00;
  left: 37.44vw;
}

.p-cv__ttl .free::before {
  background: #fdee04;
  content: "";
  height: 4.589vw;
  left: 0;
  position: absolute;
  top: 12.319vw;
  width: 50.725vw;
  z-index: -1;
}

.p-cv__ttl .free::after {
  background:
    radial-gradient(circle, #1a1311 50%, transparent 51%) 0 0/2.415vw 2.415vw no-repeat,
    radial-gradient(circle, #1a1311 50%, transparent 51%) 12.077vw 0/2.415vw 2.415vw no-repeat,
    radial-gradient(circle, #1a1311 50%, transparent 51%) 24.155vw 0/2.415vw 2.415vw no-repeat,
    radial-gradient(circle, #1a1311 50%, transparent 51%) 36.232vw 0/2.415vw 2.415vw no-repeat;
  content: "";
  height: 2.415vw;
  left: 5.556vw;
  position: absolute;
  top: -1.691vw;
  width: 38.647vw;
}

/* 代表者 */
.p-cv__person {
  left: 58.937vw;
  position: absolute;
  top: 31.884vw;
  width: 31.643vw;
  z-index: 2;
}

.p-cv__person .name01,
.p-cv__person .name02 {
  background: #1a1311;
  color: #ffffff;
  font-size: 2.415vw;
  font-weight: 500;
  left: 2.657vw;
  letter-spacing: 0.242vw;
  line-height: 2.415vw;
  padding: 0.966vw 1.932vw;
  position: absolute;
  white-space: nowrap;
}

.p-cv__person .name01 {
  top: 25.121vw;
}

.p-cv__person .name02 {
  top: 29.469vw;
}

/* リード */
.p-cv__lead {
  color: #1a1311;
  font-size: 3.865vw;
  font-weight: 600;
  left: 9.662vw;
  letter-spacing: normal;
  line-height: 6.763vw;
  position: absolute;
  top: 36.957vw;
  white-space: nowrap;
  z-index: 2;
}

/* キャッチ */
.p-cv__catch {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}

.p-cv__catch::before {
  content: none;
}

.p-cv__catch span {
  color: #1a1311;
  font-weight: 700;
  letter-spacing: normal;
  position: absolute;
  white-space: nowrap;
}

.p-cv__catch .s1 {
  font-size: 7.246vw;
  left: 31.884vw;
  line-height: 7.246vw;
  top: 67.633vw;
}

.p-cv__catch .s2 {
  color: #288dc4;
  font-size: 14.493vw;
  left: 18.599vw;
  line-height: 14.493vw;
  top: 76.329vw;
}

.p-cv__catch .s3 {
  font-size: 7.246vw;
  left: 17.391vw;
  line-height: 7.246vw;
  top: 93.237vw;
}

/* メダル */
.p-cv__medal {
  height: 24.811vw;
  position: absolute;
  top: 103.865vw;
  width: 24.811vw;
  z-index: 2;
}

.p-cv__medal--01 {
  left: 24.638vw;
}

.p-cv__medal--02 {
  left: 50.792vw;
}

.p-cv__medal .ttl,
.p-cv__medal .num {
  color: #1a1311;
  font-size: 3.101vw;
  font-weight: 600;
  letter-spacing: 0.207vw;
  line-height: 5.169vw;
  position: absolute;
  transform: translateX(-50%);
  white-space: nowrap;
}

.p-cv__medal .ttl {
  left: 33.6%;
  top: 40.9%;
}

.p-cv__medal .num {
  align-items: baseline;
  display: flex;
  left: 68.5%;
  top: 38%;
}

.p-cv__medal .num em {
  color: #d30808;
  font-family: "Oswald", sans-serif;
  font-size: 7.236vw;
  font-style: normal;
  font-weight: 500;
}

.p-cv__medal--02 .ttl {
  left: 33.3%;
}

.p-cv__medal--02 .num {
  left: 70.7%;
}

/* 電話 */
.p-cv__tel {
  display: block;
  left: 3.865vw;
  position: absolute;
  top: 130.193vw;
  width: 92.271vw;
}

.p-cv__tel-label {
  align-items: center;
  border: 2px solid #288dc4;
  color: #288dc4;
  display: flex;
  font-size: 4.348vw;
  font-weight: 600;
  height: 12.077vw;
  justify-content: center;
  letter-spacing: 0.242vw;
  line-height: 4.348vw;
  margin-inline: auto;
  width: 68.599vw;
}

.p-cv__tel-num {
  background: #ffffff;
  border-radius: 48.309vw;
  margin-top: 3.865vw;
  width: 100%;
}

.p-cv__tel-num a {
  align-items: center;
  color: #1a1311;
  display: flex;
  gap: 0 1.691vw;
  height: 21.739vw;
  justify-content: flex-start;
  padding-left: 7.971vw;
}

.p-cv__tel-num .icon {
  display: block;
  width: 6.897vw;
}

.p-cv__tel-num .num {
  font-family: "Oswald", sans-serif;
  font-size: 12.077vw;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 12.077vw;
}

.p-cv__tel-time {
  color: #1a1311;
  font-size: max(12px, 4.348vw);
  font-weight: 600;
  line-height: max(20px, 7.246vw);
  margin-left: 0;
  margin-top: 1.932vw;
  text-align: center;
  white-space: nowrap;
}

/* メールボタン */
.p-cv__btn {
  background: #ffffff;
  border-radius: 48.309vw;
  left: 3.865vw;
  position: absolute;
  top: 181.884vw;
  width: 92.271vw;
}

.p-cv__btn a {
  align-items: center;
  background: linear-gradient(180deg, #ffec00 5%, #ffcf00 100%);
  border-radius: 48.309vw;
  box-shadow: 0 2.415vw 4.831vw rgba(0, 0, 0, 0.18);
  color: #1a1311;
  display: flex;
  flex-direction: column;
  gap: 2.415vw 0;
  height: 24.155vw;
  justify-content: center;
  padding-bottom: 0.966vw;
  width: 100%;
}

.p-cv__btn .icon {
  display: block;
  width: 7.488vw;
}

.p-cv__btn .txt {
  font-size: 4.831vw;
  font-weight: 600;
  letter-spacing: 0.242vw;
  line-height: 4.831vw;
}


/* osusume
-------------------------------------*/
.p-osusume {
  background: #ffffff;
  position: relative;
  width: 100%;
}

.p-osusume__inner {
  height: 154.831vw;
  position: relative;
  width: 100%;
}

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

/* 青いラベル */
.p-osusume__label {
  align-items: center;
  background: #288dc4;
  border-radius: 7.971vw;
  color: #ffffff;
  display: flex;
  font-size: 4.831vw;
  font-weight: 700;
  height: 15.942vw;
  justify-content: center;
  left: 3.865vw;
  letter-spacing: normal;
  line-height: 4.831vw;
  position: absolute;
  top: 14.493vw;
  width: 92.271vw;
  z-index: 2;
}

.p-osusume__label::after {
  background: #288dc4;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  content: "";
  height: calc(7.971vw + 1px);
  left: 76.152vw;
  position: absolute;
  top: calc(100% - 1px);
  width: 3.865vw;
}

/* 写真4枚 */
.p-osusume__items {
  display: flex;
  flex-wrap: wrap;
  gap: 4.831vw 0;
  justify-content: space-between;
  left: 3.865vw;
  position: absolute;
  top: 40.821vw;
  width: 92.271vw;
}

.p-osusume__item {
  width: 45.411vw;
}

.p-osusume__item .img {
  height: 29.469vw;
  overflow: hidden;
}

.p-osusume__item .img img {
  height: 100%;
  object-fit: cover;
}

.p-osusume__item .txt {
  color: #1a1311;
  font-size: 3.865vw;
  font-weight: 600;
  letter-spacing: 0.242vw;
  line-height: 6.763vw;
  margin-top: 1.932vw;
  text-align: center;
}


/* flow
-------------------------------------*/
.p-flow {
  background: #fcee04;
  position: relative;
  width: 100%;
}

.p-flow__inner {
  height: 446.618vw;
  position: relative;
  width: 100%;
}

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

/* 上部の人物 */
.p-flow__man {
  left: 61.111vw;
  position: absolute;
  top: 7.729vw;
  width: 38.889vw;
  z-index: 2;
}

/* 見出し */
.p-flow__lead span,
.p-flow__ttl span {
  color: #1a1311;
  font-weight: 700;
  position: absolute;
  transform: none;
  white-space: nowrap;
  z-index: 2;
}

.p-flow__lead .s1 {
  font-size: 7.246vw;
  left: 5.797vw;
  line-height: 7.246vw;
  top: 10.386vw;
}

.p-flow__lead .s2 {
  font-size: 12.077vw;
  left: 5.797vw;
  line-height: 12.077vw;
  top: 20.048vw;
}

.p-flow__lead .s3 {
  font-size: 7.246vw;
  left: 57.246vw;
  line-height: 9.662vw;
  top: 22.464vw;
}

.p-flow__ttl {
  position: static;
}

.p-flow__ttl::before {
  background: #ffffff;
  content: "";
  height: 5.556vw;
  left: 10.628vw;
  position: absolute;
  top: 44.444vw;
  width: 45.411vw;
}

.p-flow__ttl::after {
  background: #ffffff;
  content: "";
  height: 5.556vw;
  left: 10.628vw;
  position: absolute;
  top: 58.937vw;
  width: 61.111vw;
}

.p-flow__ttl .m1,
.p-flow__ttl .m1b,
.p-flow__ttl .m2 {
  font-size: 12.077vw;
  line-height: 14.493vw;
}

.p-flow__ttl .m1 {
  left: -1.932vw;
  top: 35.507vw;
}

.p-flow__ttl .m1b {
  left: 8.696vw;
  top: 50vw;
}

.p-flow__ttl .m2 {
  left: 49.275vw;
  top: 50vw;
}

.p-flow__ttl .m3 {
  font-size: 7.246vw;
  left: 79.71vw;
  line-height: 7.246vw;
  top: 55.556vw;
}

/* BEFORE / AFTER の箱 */
.p-flow__box {
  left: 3.865vw;
  position: absolute;
  width: 92.271vw;
}

.p-flow__box--before {
  top: 71.739vw;
}

.p-flow__box--after {
  top: 198.792vw;
}

.p-flow__box .head {
  align-items: center;
  color: #ffffff;
  display: flex;
  font-family: "Oswald", sans-serif;
  font-size: 9.662vw;
  font-weight: 600;
  height: 16.908vw;
  justify-content: center;
  letter-spacing: 0.483vw;
  line-height: 12.077vw;
}

.p-flow__box--before .head {
  background: #093754;
}

.p-flow__box--after .head {
  background: #ef7e00;
}

.p-flow__box .body {
  background: #ffffff;
  position: relative;
}

.p-flow__box--before .body {
  height: 105.314vw;
}

.p-flow__box--after .body {
  height: 104.348vw;
}

.p-flow__box .foot {
  align-items: center;
  bottom: 0;
  color: #ffffff;
  display: flex;
  font-size: 4.831vw;
  font-weight: 600;
  height: 24.155vw;
  justify-content: center;
  left: 0;
  letter-spacing: 0.242vw;
  line-height: 7.246vw;
  position: absolute;
  text-align: center;
  width: 100%;
}

.p-flow__box--before .foot {
  background: #093754;
}

.p-flow__box--after .foot {
  background: #ef7e00;
}

.p-flow__box .person {
  bottom: 0;
  position: absolute;
  z-index: 2;
}

.p-flow__box--before .person {
  right: 1.932vw;
  width: 16.908vw;
}

.p-flow__box--after .person {
  right: 1.932vw;
  width: 15.942vw;
}

/* ステップ */
.steps {
  position: absolute;
  top: 4.831vw;
}

.steps--left {
  left: 1.932vw;
  width: 43.478vw;
}

.steps--right {
  left: 46.86vw;
  width: 43.478vw;
}

.steps--after {
  left: 9.903vw;
  width: 72.464vw;
}

.steps li {
  align-items: center;
  background: #ede9d6;
  color: #1a1311;
  display: flex;
  font-size: 3.865vw;
  font-weight: 600;
  height: 9.662vw;
  justify-content: center;
  letter-spacing: 0.242vw;
  line-height: 4.831vw;
  margin-bottom: 8.213vw;
  position: relative;
  text-align: center;
}

.steps li.tall {
  height: 14.493vw;
}

.steps li::after {
  background: #1a1311;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  height: 3.623vw;
  left: 50%;
  position: absolute;
  top: calc(100% + 1.860vw);
  transform: translateX(-50%);
  width: 8.367vw;
}

.steps--right li:last-child,
.steps--after li:last-child {
  margin-bottom: 0;
}

.steps--right li:last-child::after,
.steps--after li:last-child::after {
  content: none;
}

/* 楽のはんこ */
.p-flow__box .raku {
  display: block;
  left: 1.932vw;
  position: absolute;
  top: -4.589vw;
  width: 18.636vw;
  z-index: 2;
}

/* 月5時間の経理が、30分に。 */
.p-flow__result {
  position: static;
}

.p-flow__result::before {
  background: #ffffff;
  content: "";
  height: 6.522vw;
  left: 20.531vw;
  position: absolute;
  top: 354.106vw;
  width: 42.512vw;
}

.p-flow__result span {
  color: #1a1311;
  font-weight: 700;
  letter-spacing: 0.483vw;
  position: absolute;
  white-space: nowrap;
}

.p-flow__result .r1 {
  font-size: 7.246vw;
  left: 3.865vw;
  line-height: 12.077vw;
  text-align: center;
  top: 327.295vw;
  width: 92.271vw;
}

.p-flow__result .r2 {
  font-size: 19.324vw;
  left: 21.377vw;
  line-height: 19.324vw;
  top: 339.372vw;
}

.p-flow__result .r3 {
  font-size: 7.246vw;
  left: 64.614vw;
  line-height: 12.077vw;
  top: 348.551vw;
}

/* 下部テキスト */
.p-flow__txt01,
.p-flow__txt02 {
  color: #1a1311;
  left: 3.865vw;
  letter-spacing: 0.242vw;
  position: absolute;
  text-align: left;
  width: 92.271vw;
}

.p-flow__txt01 {
  font-size: 4.831vw;
  font-weight: 600;
  line-height: 7.246vw;
  text-align: center;
  top: 367.874vw;
}

.p-flow__txt02 {
  font-size: 7.246vw;
  font-weight: 800;
  line-height: 12.077vw;
  top: 378.986vw;
}

/* 右下の人物 */
.p-flow__man02 {
  left: 75.121vw;
  position: absolute;
  top: 414.251vw;
  width: 24.879vw;
  z-index: 2;
}


/* service
-------------------------------------*/
.p-service {
  background: #efead4;
  position: relative;
  width: 100%;
}

.p-service__inner {
  height: 364.01vw;
  position: relative;
  width: 100%;
}

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

/* オレンジの見出し */
.p-service__head {
  align-items: center;
  background: #ef7e00;
  color: #ffffff;
  display: flex;
  font-size: 7.246vw;
  font-weight: 600;
  height: 19.324vw;
  justify-content: center;
  left: 3.865vw;
  letter-spacing: 0.242vw;
  line-height: 7.246vw;
  position: absolute;
  top: 14.493vw;
  width: 92.271vw;
}

/* 白い箱 */
.p-service__box {
  background: #ffffff;
  height: 330.193vw;
  left: 3.865vw;
  position: absolute;
  top: 33.816vw;
  width: 92.271vw;
}

/* 見出し */
/* 箱の左右余白（24px）でそろえる */
.p-service__ttl,
.p-service__photo,
.p-service__txt,
.p-service__note {
  left: 5.797vw;
  width: 80.676vw;
}

.p-service__ttl {
  color: #1a1311;
  font-size: 4.831vw;
  font-weight: 700;
  letter-spacing: 0.242vw;
  line-height: 7.246vw;
  position: absolute;
  top: 5.797vw;
  white-space: nowrap;
  z-index: 2;
}

.p-service__photo {
  position: absolute;
  top: 25.121vw;
}

.p-service__txt {
  color: #1a1311;
  font-size: 3.865vw;
  font-weight: 500;
  letter-spacing: 0.242vw;
  line-height: 6.763vw;
  position: absolute;
  top: 78.261vw;
  white-space: normal;
}

/* 料金の箱 */
.p-service__price {
  background: #ef7e00;
  height: 91.546vw;
  left: 1.932vw;
  padding: 4.831vw 0 0;
  position: absolute;
  top: 117.874vw;
  width: 88.406vw;
}

.p-service__price-ttl {
  align-items: flex-end;
  display: flex;
  gap: 0 0.483vw;
  justify-content: center;
}

.p-service__price-ttl .u1,
.p-service__price-ttl .u3 {
  color: #ffffff;
  display: block;
  font-size: 7.246vw;
  font-weight: 700;
  letter-spacing: -0.483vw;
  line-height: 12.077vw;
}

.p-service__price-ttl .u2 {
  color: #fdee04;
  font-family: "Oswald", sans-serif;
  font-size: 14.493vw;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 16.908vw;
}

.p-service__price-ttl .u3 {
  letter-spacing: 0.483vw;
  margin-left: 1.208vw;
}

.p-service__price-ttl .u4 {
  color: #ffffff;
  display: block;
  font-size: 2.415vw;
  font-weight: 700;
  line-height: 3.382vw;
}

.p-service__price-body {
  background: #ffffff;
  height: 62.56vw;
  margin-left: 2.415vw;
  margin-top: 2.415vw;
  padding: 7.246vw 4.831vw;
  position: relative;
  width: 83.575vw;
}

.p-service__price-label {
  color: #1a1311;
  font-size: 4.831vw;
  font-weight: 600;
  line-height: 4.831vw;
  position: relative;
  text-align: center;
}

.p-service__price-label::before,
.p-service__price-label::after {
  background: #1a1311;
  content: "";
  height: 1px;
  position: absolute;
  top: 2.415vw;
  width: 19.324vw;
}

.p-service__price-label::before {
  left: 0;
}

.p-service__price-label::after {
  right: 0;
}

.p-service__list {
  display: flex;
  flex-wrap: wrap;
  gap: 3.865vw;
  justify-content: flex-start;
  margin-top: 4.831vw;
}

.p-service__list li {
  align-items: center;
  color: #1a1311;
  display: flex;
  font-size: 3.865vw;
  font-weight: 500;
  height: 4.589vw;
  letter-spacing: 0.242vw;
  line-height: 3.865vw;
  order: 1;
  white-space: nowrap;
  width: auto;
}

.p-service__list li:nth-child(2) { order: 4; }
.p-service__list li:nth-child(3) { order: 2; }
.p-service__list li:nth-child(4) { order: 5; }
.p-service__list li:nth-child(5) { order: 3; width: auto; }
.p-service__list li:nth-child(6) { order: 6; width: auto; }

.p-service__list li::before {
  background: #ef7e00;
  content: "";
  flex-shrink: 0;
  height: 4.106vw;
  margin-right: 1.932vw;
  width: 4.106vw;
}

/* 青いラベル */
.p-service__label {
  align-items: center;
  background: #288dc4;
  color: #ffffff;
  display: flex;
  font-size: 4.831vw;
  font-weight: 700;
  height: 14.493vw;
  justify-content: center;
  left: 9.903vw;
  letter-spacing: 0.242vw;
  line-height: 4.831vw;
  position: absolute;
  top: 215.217vw;
  width: 72.464vw;
}

.p-service__label::after {
  background: #288dc4;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  height: 9.058vw;
  left: 50%;
  position: absolute;
  top: calc(100% - 4.227vw);
  transform: translateX(-50%);
  width: 16.739vw;
}

/* その理由は〜 */
.p-service__reason {
  color: #1a1311;
  font-size: 7.246vw;
  font-weight: 700;
  left: 9.903vw;
  letter-spacing: 0.242vw;
  line-height: 12.077vw;
  position: absolute;
  text-align: center;
  top: 236.957vw;
  width: 72.464vw;
  z-index: 2;
}

.p-service__reason::before {
  background: #fdee04;
  content: "";
  height: 3.623vw;
  left: 1.449vw;
  position: absolute;
  top: 18.599vw;
  width: 68.357vw;
  z-index: -1;
}

.p-service__note {
  color: #1a1311;
  font-size: 3.865vw;
  font-weight: 500;
  letter-spacing: 0.242vw;
  line-height: 6.763vw;
  position: absolute;
  text-align: left;
  top: 275.604vw;
}


/* tsumari
-------------------------------------*/
.p-service {
  z-index: 2;
}

.p-service__inner {
  height: 339.13vw;
}

.p-tsumari {
  background: url(../images/micro/sec08_bg_sp.jpg) no-repeat center top/100% auto;
  position: relative;
  width: 100%;
}

/* 高さは背景画像 sec08_bg_sp.jpg（1242×2340）の比率に合わせる */
.p-tsumari__inner {
  height: 188.406vw;
  position: relative;
  width: 100%;
}

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

/* 白い三角（上の白箱から続く） */
.p-tsumari__tri {
  background: #ffffff;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  display: block;
  height: 19.324vw;
  left: 3.865vw;
  position: absolute;
  top: calc(24.879vw - 1px);
  width: 92.271vw;
}

/* つまり */
.p-tsumari__balloon {
  left: 25.362vw;
  position: absolute;
  top: 17.633vw;
  width: 48.415vw;
  z-index: 2;
}

.p-tsumari__balloon .txt {
  -webkit-text-stroke: 1.932vw #ffffff;
  color: #1a1311;
  paint-order: stroke fill;
  font-size: 10.814vw;
  font-weight: 700;
  left: 49%;
  letter-spacing: -0.901vw;
  line-height: 10.814vw;
  position: absolute;
  top: 48.1%;
  transform: translate(-50%, -50%) rotate(-5deg) skewX(-15deg) scaleY(0.97);
  white-space: nowrap;
}

/* 見出し */
.p-tsumari__ttl span,
.p-tsumari__ttl02 span {
  color: #ffffff;
  font-weight: 800;
  letter-spacing: 0.242vw;
  position: absolute;
  text-align: left;
  transform: none;
  white-space: nowrap;
}

.p-tsumari__ttl .t1 {
  color: #fdee04;
  font-size: 12.077vw;
  left: -1.932vw;
  line-height: 12.077vw;
  top: 63.768vw;
}

.p-tsumari__ttl .t2 {
  color: #fdee04;
  font-size: 12.077vw;
  left: 11.353vw;
  line-height: 12.077vw;
  position: absolute;
  top: 15.459vw;
  transform: none;
}

.p-tsumari__ttl .t3 {
  font-size: 4.831vw;
  left: 52.899vw;
  line-height: 4.831vw;
  top: 86.473vw;
}

.p-tsumari__ttl02 .t4 {
  font-size: 7.246vw;
  left: 3.865vw;
  line-height: 7.246vw;
  text-align: center;
  top: 98.551vw;
  width: 92.512vw;
}

.p-tsumari__ttl02 .t5 .m1 {
  color: inherit;
  font-size: inherit;
  letter-spacing: -1.208vw;
  line-height: inherit;
  position: static;
  transform: none;
  white-space: inherit;
}

.p-tsumari__ttl02 .t5 {
  color: #fdee04;
  font-size: 12.077vw;
  left: 3.865vw;
  line-height: 12.077vw;
  text-align: center;
  text-shadow: none;
  top: 109.662vw;
  width: 92.512vw;
}

.p-tsumari__ttl02 .t6 {
  font-size: 4.831vw;
  left: 3.865vw;
  line-height: 4.831vw;
  text-align: center;
  top: 126.57vw;
  width: 92.512vw;
}

/* 安心感×低価格 */
.p-tsumari__big {
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background: linear-gradient(180deg, #ffffff 38%, #a8f5f8 55%, #9cf2f8 72%);
  background-clip: text;
  color: transparent;
  font-family: "Shippori Mincho B1", serif;
  font-size: 14.713vw;
  font-weight: 800;
  left: 0.966vw;
  letter-spacing: -1.427vw;
  line-height: 19.618vw;
  opacity: 0.7;
  position: absolute;
  text-align: center;
  transform: skewX(-10deg) scaleY(0.98);
  top: 139.13vw;
  white-space: nowrap;
  width: 96.676vw;
}

.p-tsumari__city {
  display: none;
}

/* 集合写真（下端に揃えて、画面幅によって下へはみ出さないようにする） */
.p-tsumari__group {
  bottom: 0;
  left: 8.454vw;
  position: absolute;
  width: 83.222vw;
  z-index: 2;
}


/* price
-------------------------------------*/
.p-price {
  background: #f0ebd5;
  position: relative;
  width: 100%;
}

.p-price__inner {
  height: 272.464vw;
  position: relative;
  width: 100%;
}

.p-price__ttl {
  color: #1a1311;
  font-size: 9.662vw;
  font-weight: 700;
  left: 0;
  letter-spacing: 0.242vw;
  line-height: 9.662vw;
  position: absolute;
  text-align: center;
  top: 14.493vw;
  width: 100%;
}

.p-price__wrap {
  left: 3.865vw;
  overflow-x: auto;
  position: absolute;
  top: 31.884vw;
  width: 92.271vw;
}

/* スクロールヒント（デザインのサイズ・色に合わせる） */
.p-price__wrap .scroll-hint-icon {
  background: rgba(26, 19, 17, 0.5);
  border-radius: 2.415vw;
  height: 49.034vw;
  left: calc(50% - 24.155vw);
  padding: 8.696vw 7.729vw 4.831vw;
  top: calc(50% - 24.517vw);
  width: 48.309vw;
}

.p-price__wrap .scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: 1;
}

.p-price__wrap .scroll-hint-icon::before {
  height: 21.739vw;
  width: 21.739vw;
}

.p-price__wrap .scroll-hint-icon::after {
  background-position: center center;
  background-size: contain;
  height: 7.246vw;
  margin-left: -8.696vw;
  opacity: 1;
  top: 8.696vw;
  width: 17.391vw;
}

.p-price__wrap .scroll-hint-text {
  font-size: max(12px, 2.899vw);
  /* 下限で文字が大きくなると2行になり表の見出しに重なるため1行で固定 */
  white-space: nowrap;
}

.p-price__wrap::-webkit-scrollbar {
  height: 0.966vw;
}

.p-price__wrap::-webkit-scrollbar-track {
  background: #d9d9d9;
}

.p-price__wrap::-webkit-scrollbar-thumb {
  background: #acacac;
}

.p-price__table {
  border-collapse: separate;
  border-spacing: 0 2.415vw;
  width: 320.29vw;
}

.p-price__table th,
.p-price__table td {
  color: #1a1311;
  font-size: 5.314vw;
  font-weight: 600;
  height: 21.981vw;
  letter-spacing: 0.242vw;
  line-height: 9.662vw;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  width: 64.01vw;
}

.p-price__table thead th {
  background: #093754;
  border-right: 1px solid #ffffff;
  color: #ffffff;
}

.p-price__table thead th:last-child {
  border-right: 0;
}

.p-price__table tbody th {
  background: #f1f2ea;
  padding-left: 6.763vw;
  text-align: left;
}

.p-price__table tbody td {
  background: #ffffff;
}

.p-price__table tbody th,
.p-price__table tbody td {
  border-right: 1px solid #093754;
}

.p-price__table tbody td:last-child {
  border-right: 0;
}

.p-price__note {
  color: #1a1311;
  font-size: max(12px, 3.865vw);
  font-weight: 500;
  left: 3.865vw;
  letter-spacing: 0.242vw;
  line-height: max(21px, 6.763vw);
  position: absolute;
  top: 217.391vw;
  width: 92.271vw;
}


/* flow2 / faq
-------------------------------------*/
.p-flow2 {
  background: #f1f2ea;
  position: relative;
  width: 100%;
}

.p-flow2__inner {
  display: flow-root;
  min-height: 706.28vw;
  position: relative;
  width: 100%;
}

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

.p-flow2__ttl,
.p-faq__ttl {
  color: #1a1311;
  font-size: 9.662vw;
  font-weight: 700;
  letter-spacing: 0.242vw;
  line-height: 9.662vw;
  position: absolute;
  text-align: center;
}

.p-flow2__ttl {
  left: 0;
  top: 14.493vw;
  width: 100%;
}

/* ご利用の流れ */
.p-flow2__items {
  display: block;
  left: 8.333vw;
  position: absolute;
  top: 33.816vw;
  width: 83.333vw;
}

.p-flow2__item {
  margin-bottom: 2.415vw;
  width: 100%;
}

.p-flow2__item:last-child {
  margin-bottom: 0;
}

.p-flow2__item .num {
  align-items: center;
  background: #288dc4;
  color: #1a1311;
  display: flex;
  font-family: "Oswald", sans-serif;
  font-size: 9.662vw;
  font-weight: 500;
  height: 13.043vw;
  justify-content: center;
  letter-spacing: 0.483vw;
  line-height: 12.077vw;
}

.p-flow2__item .body {
  background: #ffffff;
  height: auto;
  padding: 5.797vw 6.039vw;
}

.p-flow2__item .ttl {
  color: #1a1311;
  font-size: 5.797vw;
  font-weight: 600;
  letter-spacing: 0.242vw;
  line-height: 9.662vw;
  text-align: center;
}

.p-flow2__item--03 .ttl {
  font-size: 5.797vw;
  letter-spacing: -0.483vw;
}

.p-flow2__item .img {
  height: 38.647vw;
  margin-top: 1.932vw;
  overflow: hidden;
}

.p-flow2__item .img img {
  height: 100%;
  object-fit: cover;
}

.p-flow2__item .txt {
  color: #1a1311;
  font-size: 3.865vw;
  font-weight: 500;
  letter-spacing: 0.242vw;
  line-height: 6.763vw;
  margin-top: 3.865vw;
  text-align: center;
}

/* よくあるご質問 */
.p-faq {
  background: #ffffff;
  border: 3.382vw solid #dad7c2;
  border-radius: 4.831vw;
  margin: 419.807vw auto 15.459vw;
  min-height: 271.014vw;
  position: relative;
  width: 100%;
}

.p-faq__clip {
  display: block;
  left: 18.116vw;
  position: absolute;
  top: -0.966vw;
  width: 57.005vw;
}

.p-faq__ttl {
  left: 2.415vw;
  top: 15.459vw;
  width: 88.406vw;
}

.p-faq__list {
  margin: 29.952vw auto 14.493vw;
  width: 88.406vw;
}

.p-faq__item {
  background: #f2f2f2;
  line-break: strict;
  margin-bottom: 2.415vw;
  padding: 4.831vw 3.865vw;
}

.p-faq__item:last-child {
  margin-bottom: 0;
}

.p-faq__item dt,
.p-faq__item dd {
  display: flex;
  gap: 0 1.932vw;
}

.p-faq__item dt {
  align-items: center;
}

/* 質問が2行になる項目だけ上ぞろえ */
.p-faq__item:nth-child(2) dt {
  align-items: flex-start;
}

.p-faq__item dd {
  align-items: flex-start;
  margin-top: 4.831vw;
}

.p-faq__item .mark {
  align-items: center;
  color: #ffffff;
  display: flex;
  flex-shrink: 0;
  font-family: "Oswald", sans-serif;
  font-size: 4.831vw;
  font-weight: 500;
  height: 7.246vw;
  justify-content: center;
  letter-spacing: 0.483vw;
  line-height: 4.831vw;
  padding-left: 0.483vw;
  width: 7.246vw;
}

.p-faq__item dt .mark {
  background: #093754;
}

.p-faq__item dd .mark {
  background: #ef7e00;
}

.p-faq__item dt .txt {
  color: #1a1311;
  font-size: 3.865vw;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 6.763vw;
}

.p-faq__item dd .txt {
  color: #1a1311;
  font-size: max(12px, 3.382vw);
  font-weight: 500;
  letter-spacing: normal;
  line-height: max(21px, 5.797vw);
  width: 69.565vw;
}


/* lastmsg
-------------------------------------*/
.p-lastmsg {
  background: #ffffff;
  position: relative;
  width: 100%;
}

.p-lastmsg__inner {
  container-type: inline-size;
  height: 204.831vw;
  margin-inline: auto;
  overflow: hidden;
  position: relative;
  width: 100%;
}

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

/* 経理のために */
.p-lastmsg__lead {
  left: 0;
  position: absolute;
  text-align: center;
  top: 14.493vw;
  width: 100%;
}

.p-lastmsg__lead .c1,
.p-lastmsg__lead .c2 {
  color: #1a1311;
  font-weight: 700;
  letter-spacing: 0.242vw;
  line-height: 14.493vw;
}

.p-lastmsg__lead .c1 {
  color: #288dc4;
  font-size: 14.493vw;
}

.p-lastmsg__lead .c2 {
  font-size: 9.662vw;
}

/* オレンジの帯（SPは2段に分かれる） */
.p-lastmsg__band {
  align-items: center;
  background: none;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  gap: 0.966vw;
  height: auto;
  left: 3.986vw;
  position: absolute;
  top: 32.850vw;
  width: 92.029vw;
  z-index: 1;
}

.p-lastmsg__band span {
  align-items: center;
  background: #ef7e00;
  box-shadow: 0 1.932vw 1.932vw rgba(0, 0, 0, 0.25);
  color: #ffffff;
  display: flex;
  font-size: 14.493vw;
  font-weight: 700;
  height: 21.739vw;
  justify-content: center;
  letter-spacing: 0.242vw;
  line-height: 16.908vw;
  white-space: nowrap;
}

.p-lastmsg__band span:first-child {
  width: 100%;
}

.p-lastmsg__band span:last-child {
  padding: 0 1.932vw;
}

/* 写真（SPは中央の2枚だけが画面内に入る） */
.p-lastmsg__photos {
  display: flex;
  left: 0;
  position: absolute;
  top: 73.671vw;
  width: 100%;
}

.p-lastmsg__photos li {
  height: 39.855vw;
  width: 50%;
}

.p-lastmsg__photos li:first-child,
.p-lastmsg__photos li:last-child {
  display: none;
}

.p-lastmsg__photos img {
  height: 100%;
  object-fit: cover;
}

/* 下部のメッセージ */
.p-lastmsg__ttl,
.p-lastmsg__txt,
.p-lastmsg__ttl02,
.p-lastmsg__ttl03 {
  color: #1a1311;
  left: 0;
  letter-spacing: 0.242vw;
  position: absolute;
  text-align: center;
  width: 100%;
}

.p-lastmsg__ttl {
  font-size: 7.246vw;
  font-weight: 800;
  line-height: 12.077vw;
  top: 120.773vw;
}

.p-lastmsg__txt {
  font-size: 3.865vw;
  font-weight: 600;
  line-height: 6.763vw;
  top: 146.860vw;
}

.p-lastmsg__ttl02 {
  font-size: 7.246vw;
  font-weight: 700;
  line-height: 7.246vw;
  top: 170.048vw;
}

.p-lastmsg__ttl03 {
  font-size: 7.246vw;
  font-weight: 700;
  line-height: 9.662vw;
  top: 180.676vw;
}

.p-lastmsg__ttl03 .o1 {
  color: #ef7e00;
}



/* form
-------------------------------------*/
.p-form {
  position: relative;
  width: 100%;
}

.p-form__bg {
  background: url(../images/micro/sec12_bg_sp.jpg) repeat-x center top / auto 100%;
  height: 97.822%;
  left: 0;
  position: absolute;
  top: 2.178%;
  width: 100%;
}

/* 入力項目が増減しても崩れないよう、白い箱を通常フローに置いて高さを可変にする */
.p-form__inner {
  container-type: inline-size;
  margin-inline: auto;
  padding: 127.295vw 0 19.324vw;
  position: relative;
  width: 100%;
}

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

/* 白い吹き出し */
.p-form__bubble {
  background: #ffffff;
  border-radius: 14.493vw;
  height: 28.986vw;
  left: 1.932vw;
  position: absolute;
  top: 0;
  width: 96.135vw;
}

.p-form__bubble::after {
  background: #ffffff;
  clip-path: polygon(0 0, 100% 0, 0 100%);
  content: "";
  height: calc(5.556vw + 1px);
  left: 73.430vw;
  position: absolute;
  top: calc(100% - 1px);
  width: 5.314vw;
}

/* 今すぐ無料相談 */
.p-form__ttl {
  left: 0;
  position: absolute;
  text-align: center;
  top: 6.763vw;
  width: 100%;
  z-index: 1;
}

.p-form__ttl::before {
  background: #fdee04;
  content: "";
  height: 4.589vw;
  left: 43.237vw;
  position: absolute;
  top: 12.319vw;
  width: 50.725vw;
  z-index: -1;
}

.p-form__ttl span {
  display: block;
  font-size: 13.043vw;
  font-weight: 700;
  letter-spacing: -0.483vw;
  line-height: 16.908vw;
  position: absolute;
  top: 0;
}

.p-form__ttl .now {
  color: #1a1311;
  left: 5.797vw;
  width: 38.164vw;
}

.p-form__ttl .free {
  color: #ef7e00;
  left: 43.237vw;
  width: 50.725vw;
}

.p-form__dots {
  display: flex;
  gap: 9.662vw;
  left: 48.792vw;
  position: absolute;
  top: 5.072vw;
  z-index: 1;
}

.p-form__dots i {
  background: #1a1311;
  border-radius: 50%;
  display: block;
  height: 2.415vw;
  width: 2.415vw;
}

/* どんなことでもご相談ください */
.p-form__catch {
  color: #1a1311;
  font-size: 7.246vw;
  font-weight: 700;
  left: 0;
  letter-spacing: 0.242vw;
  line-height: 9.662vw;
  position: absolute;
  text-align: center;
  top: 36.957vw;
  width: 100%;
}

.p-form__line {
  background: #1a1311;
  height: 0.725vw;
  position: absolute;
  top: 46.287vw;
  width: 17.007vw;
}

.p-form__line--l {
  left: 7.291vw;
  transform: rotate(65.88deg);
}

.p-form__line--r {
  left: 75.648vw;
  transform: rotate(-65.88deg);
}

/* 初回相談無料のバッジ */
.p-form__free {
  height: 19.026vw;
  left: 3.865vw;
  position: absolute;
  top: 46.618vw;
  width: 19.026vw;
  z-index: 1;
}

.p-form__free .s1,
.p-form__free .s2 {
  color: #1a1311;
  font-weight: 600;
  left: 0;
  position: absolute;
  text-align: center;
  width: 100%;
}

.p-form__free .s1 {
  font-size: 2.415vw;
  letter-spacing: normal;
  line-height: 2.415vw;
  top: 5.114vw;
}

.p-form__free .s2 {
  font-size: 4.831vw;
  letter-spacing: 0.242vw;
  line-height: 6.039vw;
  top: 7.848vw;
}

/* 電話番号（SPは白いピルの中） */
.p-form__tel {
  background: #ffffff;
  border-radius: 10.870vw;
  height: 21.739vw;
  left: 3.865vw;
  position: absolute;
  top: 61.111vw;
  width: 92.271vw;
}

.p-form__tel a {
  align-items: center;
  display: flex;
  gap: 1.691vw;
  height: 100%;
  justify-content: center;
}

.p-form__tel .icon {
  width: 6.897vw;
}

.p-form__tel .num {
  color: #1a1311;
  font-family: "Oswald", sans-serif;
  font-size: 12.077vw;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 12.077vw;
}

.p-form__time {
  color: #1a1311;
  font-size: max(12px, 4.348vw);
  font-weight: 600;
  left: 3.865vw;
  letter-spacing: normal;
  line-height: max(20px, 7.246vw);
  position: absolute;
  text-align: center;
  top: 84.783vw;
  width: 92.271vw;
}

/* 黒帯 */
.p-form__band {
  align-items: flex-start;
  background: #1a1311;
  color: #ffffff;
  display: flex;
  font-size: 4.831vw;
  font-weight: 600;
  height: 20.773vw;
  justify-content: flex-start;
  left: 3.865vw;
  letter-spacing: 0.242vw;
  line-height: 7.246vw;
  padding: 3.140vw 0 0 9.700vw;
  position: absolute;
  text-align: left;
  top: 96.860vw;
  width: 92.271vw;
}

/* 代表の写真（SPは写真だけの画像なので肩書きはテキストで置く） */
.p-form__person {
  left: 68.599vw;
  position: absolute;
  top: 92.029vw;
  width: 25.362vw;
  z-index: 1;
}

.p-form__person .name01,
.p-form__person .name02 {
  background: #1a1311;
  color: #ffffff;
  display: inline-block;
  font-size: 2.415vw;
  font-weight: 500;
  left: -1.449vw;
  letter-spacing: 0.242vw;
  line-height: 2.415vw;
  padding: 0.966vw 1.932vw;
  position: absolute;
  white-space: nowrap;
}

.p-form__person .name01 {
  top: 23.188vw;
}

.p-form__person .name02 {
  top: 27.536vw;
}

/* 白い箱 */
.p-form__box {
  background: #ffffff;
  box-shadow: 0 2.415vw 9.662vw rgba(0, 0, 0, 0.18);
  margin-inline: auto;
  padding-bottom: 9.662vw;
  position: relative;
  width: 92.271vw;
}

.p-form__head {
  align-items: center;
  background: #ef7e00;
  color: #ffffff;
  display: flex;
  font-size: 4.831vw;
  font-weight: 700;
  gap: 2.174vw;
  height: 14.493vw;
  justify-content: center;
  letter-spacing: 0.242vw;
  line-height: 4.831vw;
  padding-bottom: 0;
}

.p-form__head .icon {
  width: 6.280vw;
}

.p-form__head .txt {
  text-align: center;
  white-space: nowrap;
  width: 40.338vw;
}

/* 入力欄 */
.p-form__body {
  margin-inline: auto;
  padding-top: 4.831vw;
  width: 88.406vw;
}

.p-form__body .form-row {
  display: block;
  margin-bottom: 2.415vw;
  position: relative;
}

.p-form__body .form-row__ttl {
  align-items: center;
  background: #f2f2f2;
  color: #1a1311;
  display: flex;
  font-size: 4.348vw;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 7.246vw;
  margin-bottom: 0.966vw;
  padding: 3.865vw 0 3.865vw 4.831vw;
  width: 100%;
}

.p-form__body .form-row__body {
  background: #f2f2f2;
  padding: 3.865vw 3.140vw;
  width: 100%;
}

.p-form__body .req {
  align-items: center;
  background: #ef7e00;
  border-radius: 0.725vw;
  color: #ffffff;
  display: inline-flex;
  font-size: max(12px, 3.382vw);
  font-weight: 500;
  height: 5.314vw;
  vertical-align: middle;
  justify-content: center;
  left: auto;
  letter-spacing: normal;
  line-height: max(15px, 4.348vw);
  margin-left: 2.415vw;
  padding: 0 0.966vw;
  position: relative;
  top: -0.725vw;
}

.p-form__body .wpcf7-form-control-wrap {
  display: block;
}

.p-form__body input[type="text"],
.p-form__body input[type="tel"],
.p-form__body input[type="email"],
.p-form__body textarea {
  background: #ffffff;
  border: 1px solid #cfcfcf;
  border-radius: 0;
  box-sizing: border-box;
  display: block;
  font-family: inherit;
  font-size: max(16px, 3.865vw); /* iPhoneは16px未満だと入力時に画面が拡大されるため */
  height: 14.493vw;
  padding: 0 2.899vw;
  width: 100%;
}

.p-form__body textarea {
  height: 48.309vw;
  padding: 2.899vw;
  resize: none;
}

.p-form__body .error-message {
  font-size: max(12px, 3.382vw);
  margin-top: 0.966vw;
}

/* 確認画面（入力内容の表示） */
#form .p-form__body .form-row__body > .confirm_area {
  color: #1a1311;
  font-size: 4.348vw;
  font-weight: 500;
  line-height: 7.246vw;
  word-break: break-all;
}

/* CF7 が自動で挿入する <p> の余白を打ち消す */
#form .p-form__body .form-row__body > .confirm_area p {
  margin: 0;
}

/* ご相談内容だけ改行を活かす */
#form .p-form__body .confirm_your-remarks {
  display: block;
  white-space: pre-wrap;
}

/* プライバシーポリシー */
.p-form__priv {
  margin-top: 7.246vw;
}

#form .p-form__priv .priv-text {
  background: #ffffff;
  border: 1px solid #cfcfcf;
  color: #1a1311;
  height: 60.386vw;
  margin-bottom: 4.831vw;
  overflow-y: auto;
  padding: 3.865vw;
}

#form .p-form__priv .priv-text .priv-ttl,
#form .p-form__priv .priv-text .tt {
  color: #1a1311;
  font-size: 4.106vw;
  font-weight: 700;
  margin-bottom: 1.932vw;
}

#form .p-form__priv .priv-text p {
  border-bottom: 1px solid #e6e6e6;
  font-size: 3.623vw;
  line-height: 1.6;
  margin-bottom: 3.140vw;
  padding-bottom: 3.140vw;
}

#form .p-form__priv .privtext {
  margin-bottom: 0;
  text-align: center;
}

#form .p-form__priv .privtext .wpcf7-list-item {
  margin: 0;
}

#form .p-form__priv .privtext label {
  align-items: center;
  color: #1a1311;
  cursor: pointer;
  display: inline-flex;
  font-size: 3.623vw;
  font-weight: 500;
  gap: 1.449vw;
  letter-spacing: normal;
  line-height: 6.280vw;
  text-align: left;
}

#form .p-form__priv .privtext input[type="checkbox"] {
  accent-color: #ef7e00;
  cursor: pointer;
  flex-shrink: 0;
  height: 4.831vw;
  margin: 0;
  width: 4.831vw;
}

/* 送信ボタン */
.p-form__submit {
  margin-top: 9.662vw;
  position: relative;
}

.p-form__submit::before {
  background: url(../images/micro/mail.svg) no-repeat center / contain;
  content: "";
  height: 4.831vw;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 5.314vw;
  transform: translateX(-50%);
  width: 7.174vw;
  z-index: 1;
}

#form .p-form__submit input[type="submit"],
#form .p-form__submit .confirm_button {
  background: linear-gradient(180deg, #ffad00 5%, #ff6a01 100%);
  border: 0.966vw solid #f99202;
  border-radius: 48.309vw;
  box-shadow: 0 2.415vw 4.831vw rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
  color: #ffffff;
  cursor: pointer;
  display: block;
  font-family: inherit;
  font-size: 4.831vw;
  font-weight: 600;
  height: auto;
  letter-spacing: 0.242vw;
  line-height: 4.831vw;
  margin: 0;
  padding: 12.077vw 0 5.797vw;
  width: 100%;
}

/* CF7 が自動で挿入する <p> がボタン幅を縮めてしまうのを打ち消す */
#form .p-form__submit #send_area p,
#form .p-form__submit #back_area p {
  display: block;
  margin: 0;
  position: static;
}

#form .p-form__submit #send_area p::after,
#form .p-form__submit #back_area p::after {
  content: none;
}

/* 未入力・不備があるあいだは押せないことを見た目でも伝える */
#form .p-form__submit .confirm_button[disabled] {
  background: #cfcfcf;
  border-color: #cfcfcf;
  box-shadow: none;
  cursor: not-allowed;
}

#form .p-form__submit #back_button {
  background: #ffffff;
  border: 1px solid #1a1311;
  border-radius: 48.309vw;
  box-sizing: border-box;
  color: #1a1311;
  cursor: pointer;
  display: block;
  font-family: inherit;
  font-size: 3.865vw;
  font-weight: 600;
  height: auto;
  letter-spacing: 0.242vw;
  line-height: 6.280vw;
  margin: 3.865vw auto 0;
  padding: 2.415vw 0;
  width: 100%;
}

/* ボタンに重なる女性 */
.p-form__woman {
  bottom: -19.324vw;
  left: 0.483vw;
  position: absolute;
  width: 22.222vw;
  z-index: 2;
}


/* 固定バー
-------------------------------------*/
.p-fixed {
  align-items: center;
  bottom: 3.865vw;
  display: flex;
  gap: 0.966vw;
  left: 0;
  padding: 0 3.865vw;
  position: fixed;
  width: 100%;
  z-index: 100;
}

.p-fixed__tel {
  align-items: center;
  background: #1a1311;
  border-radius: 50%;
  display: flex;
  flex-shrink: 0;
  height: 13.768vw;
  justify-content: center;
  width: 13.768vw;
}

.p-fixed__tel img {
  display: block;
  width: 7.005vw;
}

.p-fixed__btn {
  align-items: center;
  background: linear-gradient(180deg, #ffec00 5%, #ffcf00 100%);
  border-radius: 48.309vw;
  box-shadow: 0 2.415vw 4.831vw rgba(0, 0, 0, 0.18);
  display: flex;
  flex: 1;
  gap: 0.966vw;
  height: 14.493vw;
  justify-content: center;
}

.p-fixed__btn .icon {
  width: 5.314vw;
}

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

.p-fixed__btn .txt {
  color: #1a1311;
  font-size: 3.865vw;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 6.280vw;
}


/* thanks（サンクスページ）
   px固定だと画面幅414px未満（iPhone SE/mini・Android標準など）で
   見出し・電話番号・本文が折り返して崩れるため、LP本体と同じ414px基準のvwに統一。
   本文は中央揃え＋text-wrap:balanceで「す。」「あれば、」のような孤立行を防ぐ。
-------------------------------------*/
.p-thanks {
  background: #ffffff;
  padding: 14.493vw 0 19.324vw;
  width: 100%;
}

.p-thanks__inner {
  margin-inline: auto;
  width: 92.271vw;
}

.p-thanks__ttl,
.p-thanks__ttl02 {
  color: #1a1311;
  font-weight: 700;
  letter-spacing: 0.242vw;
  text-align: center;
}

.p-thanks__ttl {
  font-size: 6.280vw;
  line-height: 9.662vw;
  padding-bottom: 3.865vw;
  position: relative;
}

.p-thanks__ttl::after {
  background: #ef7e00;
  bottom: 0;
  content: "";
  height: 0.725vw;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 14.493vw;
}

.p-thanks__ttl02 {
  font-size: 4.831vw;
  line-height: 7.729vw;
  margin-top: 11.594vw;
}

.p-thanks__txt {
  color: #1a1311;
  font-size: 3.623vw;
  font-weight: 500;
  letter-spacing: normal;
  line-height: 1.867;
  margin-top: 5.797vw;
  text-align: center;
}

.p-thanks__tel {
  border: 0.483vw solid #288dc4;
  margin: 9.662vw auto 0;
  padding: 5.797vw 2.899vw;
  width: 100%;
}

.p-thanks__tel-label {
  color: #288dc4;
  font-size: 3.865vw;
  font-weight: 600;
  letter-spacing: 0.242vw;
  line-height: 3.865vw;
  text-align: center;
}

.p-thanks__tel-num {
  margin-top: 2.899vw;
}

.p-thanks__tel-num a {
  align-items: center;
  color: #1a1311;
  display: flex;
  gap: 0 1.932vw;
  justify-content: center;
}

.p-thanks__tel-num .icon {
  display: block;
  width: 6.763vw;
}

.p-thanks__tel-num .icon img {
  display: block;
  width: 100%;
}

.p-thanks__tel-num .num {
  font-family: "Oswald", sans-serif;
  font-size: 9.662vw;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 9.662vw;
  white-space: nowrap;
}

.p-thanks__tel-time {
  color: #1a1311;
  font-size: 3.382vw;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 5.797vw;
  margin-top: 1.932vw;
  text-align: center;
  white-space: nowrap;
}

.p-thanks__btn {
  margin-top: 9.662vw;
  text-align: center;
}

.p-thanks__btn a {
  align-items: center;
  background: linear-gradient(180deg, #ffb300 0%, #ff6500 100%);
  border: 0.725vw solid #f99202;
  border-radius: 48.309vw;
  box-shadow: 0 2.415vw 7.246vw rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
  color: #ffffff;
  display: flex;
  font-size: 4.106vw;
  font-weight: 600;
  height: 15.459vw;
  justify-content: center;
  letter-spacing: 0.242vw;
  margin-inline: auto;
  width: 100%;
}


/* footer
-------------------------------------*/
.p-footer {
  background: #ffffff;
  padding: 40px 0 20px;
  position: relative;
  width: 100%;
}

.p-footer__inner {
  margin-inline: auto;
  padding-top: 7px;
  width: 100%;
}

.p-footer__logo {
  margin-inline: auto;
  width: 83.816vw;
}

.p-footer__logo a {
  display: block;
}

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

/* 住所・TELもpx固定だと狭い端末で折り返すため414px基準のvwに */
.p-footer__info {
  color: #1a1311;
  font-size: 3.382vw;
  font-weight: 500;
  letter-spacing: normal;
  line-height: 6.763vw;
  margin-top: 0;
  text-align: center;
  white-space: nowrap;
}

.p-footer__info a {
  color: inherit;
  text-decoration: none;
}

/* コピーライトはどの端末幅でも1行に収める
   デザイン幅414pxで12px／字間1px（＝画面幅の約85%）とギリギリのため、
   画面幅に追従するvw指定にする。小さい端末で読めなくならないようmax()で下限を確保。 */
.p-footer__copy {
  color: #1a1311;
  font-size: max(10px, 2.899vw);
  font-weight: 500;
  letter-spacing: max(0.8px, 0.242vw);
  line-height: 2.133;
  margin-top: 40px;
  text-align: center;
  white-space: nowrap;
}

/* 固定バーがあるページ（/micro/）だけ、コピーライトが隠れないよう下に余白を足す
   固定バーの高さ 14.493vw ＋ 下余白 3.865vw ＝ 18.358vw */
body:has(.p-fixed) .p-footer {
  padding-bottom: calc(20px + 22vw);
}












}
