@charset "UTF-8";
/* =====================
  リセット
 ======================= */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

ul, ol {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

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

i, address {
  font-style: normal; }

h1, h2, h3, h4, h5, h6 {
  font-weight: normal; }

small {
  font-size: 100%; }

/* =====================
	事業承継通信社
 ======================= */
/** -------------------- 変数定義 -------------------- **/
:root {
  /* カラー定義 */
  --c_text: #1e1e1e;
  --c_wht: #fff;
  --c_navy: #0f345e;
  --c_green: #00a58f;
  --c_red: #de4636;
  --c_yellow: #f7da4a;
  --c_yg: #7ac34b;
  --c_yg: #7ac34b;
  --c_gray: #8095aa;
  --c_blue: #3e86ab;
  /* フォント定義 */
  --font_ja: YakuHanJP,"Noto Sans JP", serif;
  --font_serif: YakuHanMP,"Noto Serif JP", serif;
  --font_eng: "futura-pt", sans-serif;
  /* transition定義 */
  --anim: all 0.4s ease-out;
  /*---------- filter定義
	https://codepen.io/sosuke/pen/Pjoqqp ---------- */
  /* #000 → #FFF */
  --filter_wht: invert(100%) sepia(5%) saturate(22%) hue-rotate(176deg) brightness(104%) contrast(108%);
  /* #000 → #0f345e */
  --filter_navy: invert(12%) sepia(69%) saturate(1883%) hue-rotate(195deg) brightness(97%) contrast(91%);
  /* #000 → #00a58f */
  --filter_green: invert(41%) sepia(37%) saturate(4144%) hue-rotate(147deg) brightness(96%) contrast(101%); }

body {
  font-family: var(--font_ja);
  font-size: 16px;
  line-height: 1.875;
  letter-spacing: 0.05em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  color: var(--c_text); }
  body * {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }

img {
  max-width: 100%;
  display: block; }

.clearfix {
  clear: both; }

a {
  color: var(--c_text);
  -webkit-transition: var(--anim);
  transition: var(--anim);
  text-decoration: none; }
  a:hover {
    opacity: 0.7; }

mark {
  font-style: normal;
  color: currentColor; }

/** -------------------- Common Style -------------------- **/
.inner {
  width: 95%;
  max-width: 1000px;
  margin: 0 auto; }

.inner-narrow {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto; }

.inner-wide {
  width: 95%;
  max-width: 1180px;
  margin: 0 auto; }

/** -------------------- Header -------------------- **/
.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.6);
  z-index: 10; }
  .header .header-container {
    padding: 17px 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .header .header-logo-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 14px;
       -moz-column-gap: 14px;
            column-gap: 14px; }
  .header .header-logo-txt {
    color: var(--c_navy);
    font-size: 12px;
    line-height: 1.33;
    -webkit-font-feature-settings: normal;
            font-feature-settings: normal; }
  .header .header-tel-link {
    color: var(--c_navy);
    text-align: center;
    display: block;
    line-height: 1.0; }
  .header .header-tel-num {
    font-family: var(--font_eng);
    font-size: 30px;
    font-weight: 600;
    letter-spacing: 0.025em;
    -webkit-font-feature-settings: normal;
            font-feature-settings: normal;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 10px;
       -moz-column-gap: 10px;
            column-gap: 10px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .header .header-tel-num:before {
      content: "";
      width: 1em;
      height: 1em;
      background: url(../img/ico_freedial.svg) no-repeat center/contain;
      -webkit-filter: var(--filter_navy);
              filter: var(--filter_navy); }
  .header .header-tel-time {
    font-size: 12px;
    -webkit-font-feature-settings: normal;
            font-feature-settings: normal;
    display: block;
    margin-top: 4px; }

/** -------------------- Aside -------------------- **/
.aside {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.8);
  z-index: 100;
  padding: 10px 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: var(--anim);
  transition: var(--anim); }
  .aside.is-show {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  .aside .aside-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-column-gap: 12px;
       -moz-column-gap: 12px;
            column-gap: 12px; }
  .aside .aside-logo {
    margin-right: auto; }
    .aside .aside-logo-link {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-column-gap: 12px;
         -moz-column-gap: 12px;
              column-gap: 12px;
      color: var(--c_navy); }
    .aside .aside-logo-txt {
      font-size: 12px;
      line-height: 1.3333333333; }
  .aside .aside-tel-link {
    color: var(--c_navy);
    display: block;
    text-align: center; }
  .aside .aside-tel-num {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
    font-family: var(--font_eng);
    font-size: 30px;
    font-weight: 600;
    line-height: 0.9; }
    .aside .aside-tel-num:before {
      content: "";
      width: 1em;
      height: 1em;
      background: url(../img/ico_freedial.svg) no-repeat center/contain;
      -webkit-filter: var(--filter_navy);
              filter: var(--filter_navy); }
  .aside .aside-tel-time {
    display: block;
    font-size: 12px;
    line-height: 1.0; }
  .aside .aside-mail {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 230px;
            flex: 0 1 230px; }
    .aside .aside-mail-link {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      -webkit-column-gap: 10px;
         -moz-column-gap: 10px;
              column-gap: 10px;
      padding: 8px;
      background: var(--c_red);
      color: var(--c_wht);
      border-radius: 100px;
      font-family: var(--font_serif);
      font-weight: 600; }
      .aside .aside-mail-link .free {
        width: 46px;
        height: 46px;
        background: url(../img/cv_icon.svg) no-repeat center/contain;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        font-weight: 700;
        color: var(--c_red); }
      .aside .aside-mail-link:hover {
        opacity: 1.0;
        -webkit-transform: scale(1.05);
                transform: scale(1.05); }

/** -------------------- Footer -------------------- **/
.footer {
  background: #e4e4e4;
  padding: 24px 0; }
  .footer .footer-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    font-size: 12px;
    line-height: 1.0; }

/** -------------------- Top Page -------------------- **/
.mv {
  position: relative; }
  .mv .mv-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1; }
    .mv .mv-bg img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
  .mv .mv-ttl img {
    width: 100%; }

.cv01 {
  background: var(--c_navy);
  padding: 50px 0;
  position: relative; }
  .cv01:after {
    content: "";
    width: 90px;
    height: 62px;
    background: url(../img/arrow.svg) no-repeat center/contain;
    position: absolute;
    bottom: -50px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 5; }
  .cv01 .cv01-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto 8px auto;
    grid-template-columns: auto auto;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 20px 8px; }
  .cv01 .cv01-ttl {
    color: var(--c_yellow);
    font-family: var(--font_serif);
    line-height: 1.0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 12px;
       -moz-column-gap: 12px;
            column-gap: 12px; }
    .cv01 .cv01-ttl-sub {
      width: 90px;
      height: 90px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      background: url(../img/cv_icon.svg) no-repeat center/contain;
      color: var(--c_red);
      font-size: 24px;
      font-weight: 700;
      line-height: 1.083;
      letter-spacing: 0;
      text-align: center; }
    .cv01 .cv01-ttl-main {
      font-size: 54px;
      font-weight: 600; }
  .cv01 .cv01-txt {
    color: var(--c_wht);
    font-family: var(--font_serif);
    font-size: 22px;
    font-weight: 600;
    line-height: 1.7272727273; }
  .cv01 .cv01-tel-link {
    display: block;
    padding-left: 80px;
    color: var(--c_wht); }
  .cv01 .cv01-tel-num {
    font-family: var(--font_eng);
    font-size: 60px;
    font-weight: 600;
    line-height: 0.9;
    -webkit-font-feature-settings: normal;
            font-feature-settings: normal;
    position: relative;
    display: block; }
    .cv01 .cv01-tel-num:before {
      content: "";
      width: 1em;
      height: 1em;
      background: url(../img/ico_freedial.svg) no-repeat center/contain;
      position: absolute;
      left: -72px;
      top: 0;
      -webkit-filter: var(--filter_green);
              filter: var(--filter_green); }
  .cv01 .cv01-tel-time {
    font-size: 14px;
    lette-spacing: 0.1em;
    text-align: center;
    display: block; }
  .cv01 .cv01-mail-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    background: var(--c_red);
    color: var(--c_wht);
    border-radius: 200px;
    text-align: center;
    font-family: var(--font_serif);
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 0.1em;
    padding: 22px 44px; }
    .cv01 .cv01-mail-link:before {
      content: "";
      width: 1.3333333333em;
      height: 1em;
      background: url(../img/ico_mail.svg) no-repeat center/contain;
      -webkit-filter: var(--filter_wht);
              filter: var(--filter_wht); }
    .cv01 .cv01-mail-link i {
      width: 30px;
      height: 2px;
      background: currentColor;
      position: relative; }
      .cv01 .cv01-mail-link i:before {
        content: "";
        width: 12px;
        height: 2px;
        background: currentColor;
        position: absolute;
        right: 0;
        bottom: 0;
        -webkit-transform: rotate(30deg);
                transform: rotate(30deg);
        -webkit-transform-origin: right bottom;
                transform-origin: right bottom; }
    .cv01 .cv01-mail-link:hover {
      opacity: 1.0;
      -webkit-transform: scale(1.05);
              transform: scale(1.05); }

.trouble {
  background: url(../img/trouble_bg.jpg) no-repeat center/cover;
  position: relative;
  z-index: 2;
  padding: 95px 0; }
  .trouble:before {
    content: "";
    width: 100%;
    height: 500px;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(15, 52, 94, 0)), color-stop(50%, #0f345e), to(#0f345e));
    background: linear-gradient(to bottom, rgba(15, 52, 94, 0) 0%, #0f345e 50%, #0f345e 100%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1; }
  .trouble .trouble-ttl {
    text-align: center;
    color: var(--c_wht);
    font-family: var(--font_serif);
    font-size: 48px;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 1.0416666667;
    margin-bottom: 64px; }
    .trouble .trouble-ttl .small {
      font-size: 40px; }
    .trouble .trouble-ttl strong {
      font-weight: 700;
      color: var(--c_green); }
  .trouble .trouble-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0 10.4%;
    margin-bottom: 90px; }
    .trouble .trouble-list-item {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 26.4%;
              flex: 0 1 26.4%;
      background: var(--c_wht);
      font-size: 22px;
      font-weight: 700;
      line-height: 1.3636363636;
      letter-spacing: 0;
      text-align: center;
      border: 4px solid var(--c_navy);
      border-radius: 8px;
      padding: 3.5% 8px;
      margin-bottom: -20px;
      position: relative;
      -webkit-filter: drop-shadow(5px 5px 0px var(--c_gray));
              filter: drop-shadow(5px 5px 0px var(--c_gray)); }
      .trouble .trouble-list-item:before, .trouble .trouble-list-item:after {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 40px 12px 0 12px;
        border-color: var(--c_navy) transparent transparent transparent;
        position: absolute;
        top: calc(100% + 4px);
        left: 0;
        right: 0;
        margin: auto; }
      .trouble .trouble-list-item:after {
        border-color: var(--c_wht) transparent transparent transparent;
        top: calc(100% - 8px); }
      .trouble .trouble-list-item strong {
        color: var(--c_red);
        font-weight: 700; }
  .trouble .trouble-catch {
    font-family: var(--font_serif);
    font-size: 30px;
    font-weight: 600;
    -webkit-font-feature-settings: normal;
            font-feature-settings: normal;
    line-height: 1.0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 1em;
       -moz-column-gap: 1em;
            column-gap: 1em;
    color: var(--c_wht);
    margin-bottom: 20px; }
    .trouble .trouble-catch:before, .trouble .trouble-catch:after {
      content: "";
      width: 3px;
      height: 1.67em;
      background: currentColor;
      -webkit-transform: rotate(-30deg);
              transform: rotate(-30deg); }
    .trouble .trouble-catch:after {
      -webkit-transform: rotate(30deg);
              transform: rotate(30deg); }
    .trouble .trouble-catch strong {
      font-size: 36px;
      font-weight: 600;
      color: var(--c_red);
      background-image: radial-gradient(circle at center, currentColor 18%, transparent 18%);
      background-position: top right;
      background-repeat: repeat-x;
      background-size: 1em 0.3em;
      padding-top: .1em;
      /* 縦方向の位置調整 */ }
  .trouble .trouble-closing {
    text-align: center;
    color: var(--c_wht);
    font-family: var(--font_serif);
    font-size: 36px;
    font-weight: 700;
    line-height: 1.2;
    -webkit-font-feature-settings: normal;
            font-feature-settings: normal; }
    .trouble .trouble-closing strong {
      font-size: 44px;
      font-weight: 700;
      text-decoration: underline;
      text-decoration-color: var(--c_yellow);
      text-decoration-thickness: 6px;
      text-underline-offset: 12px; }
      .trouble .trouble-closing strong .small {
        font-size: 36px; }
    .trouble .trouble-closing .yellow {
      color: var(--c_yellow);
      font-size: 56px; }

.result {
  padding: 80px 0 85px;
  overflow: hidden; }
  .result .result-ttl {
    text-align: center;
    color: var(--c_navy);
    font-family: var(--font_serif);
    font-size: 44px;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 1.0;
    position: relative;
    padding-bottom: 30px;
    margin-bottom: 50px; }
    .result .result-ttl:before, .result .result-ttl:after {
      content: "";
      width: 40px;
      height: 5px;
      background: var(--c_yg);
      position: absolute;
      bottom: 0; }
    .result .result-ttl:before {
      right: 50%; }
    .result .result-ttl:after {
      background: var(--c_green);
      left: 50%; }
  .result .result-lead {
    text-align: center;
    font-family: var(--font_serif);
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 1.25;
    color: var(--c_navy);
    margin-bottom: 30px; }
  .result .result-tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 0.7%;
       -moz-column-gap: 0.7%;
            column-gap: 0.7%;
    margin-bottom: 10px; }
    .result .result-tab-item {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      text-align: center;
      font-size: 18px;
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.0;
      -webkit-font-feature-settings: normal;
              font-feature-settings: normal;
      color: var(--c_wht);
      background: var(--c_navy);
      padding: 24px;
      position: relative;
      cursor: pointer;
      border-radius: 5px;
      -webkit-transition: var(--anim);
      transition: var(--anim); }
      .result .result-tab-item:after {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 8px 4px 0 4px;
        border-color: currentColor transparent transparent transparent;
        position: absolute;
        right: 24px;
        top: 0;
        bottom: 0;
        margin: auto;
        -webkit-transition: var(--anim);
        transition: var(--anim); }
      .result .result-tab-item:hover {
        opacity: 0.7; }
      .result .result-tab-item.is-current {
        background: var(--c_blue);
        pointer-events: none; }
        .result .result-tab-item.is-current:after {
          -webkit-transform: rotate(-180deg);
                  transform: rotate(-180deg); }
  .result .result-content {
    display: none;
    padding: 40px 20px;
    border: 4px solid var(--c_gray);
    background: var(--c_wht); }
    .result .result-content.is-show {
      display: block; }
    .result .result-content-in {
      max-width: 880px;
      margin: auto;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; }
    .result .result-content-ttl {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      font-size: 30px;
      font-weight: 700;
      line-height: 1.0;
      letter-spacing: 0;
      -webkit-font-feature-settings: normal;
              font-feature-settings: normal;
      color: var(--c_navy);
      padding-bottom: 20px;
      border-bottom: 2px solid currentColor;
      margin-bottom: 30px; }
    .result .result-content-dl {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 67.3%;
              flex: 0 1 67.3%;
      display: -ms-grid;
      display: grid;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -ms-grid-columns: 200px 12px 1fr;
      grid-template-columns: 200px 1fr;
      gap: 15px 12px; }
      .result .result-content-dl dt {
        background: #c9edff;
        text-align: center;
        font-weight: 700;
        line-height: 1.0;
        color: var(--c_navy);
        padding: 1em;
        position: relative; }
        .result .result-content-dl dt:before, .result .result-content-dl dt:after {
          content: "";
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 0 18px 24px 0;
          border-color: transparent var(--c_wht) transparent transparent;
          position: absolute;
          right: 0; }
        .result .result-content-dl dt:before {
          top: 0; }
        .result .result-content-dl dt:after {
          bottom: 0;
          -webkit-transform: scale(1, -1);
                  transform: scale(1, -1); }
      .result .result-content-dl dd {
        font-size: 14px;
        line-height: 1.71;
        -webkit-font-feature-settings: normal;
                font-feature-settings: normal;
        letter-spacing: 0; }
    .result .result-content-img {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 27.3%;
              flex: 0 1 27.3%; }
  .result .result-quality {
    padding-top: 85px;
    position: relative; }
    .result .result-quality:before {
      content: "";
      background: #fff6c9;
      width: 500%;
      padding-top: 500%;
      border-radius: 50%;
      position: absolute;
      top: -190px;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      z-index: -1; }
    .result .result-quality-ttl {
      text-align: center;
      margin-bottom: 65px;
      font-family: var(--font_serif);
      font-size: 30px;
      font-weight: 700;
      letter-spacing: 0.15em;
      line-height: 1.5;
      color: var(--c_navy); }
      .result .result-quality-ttl strong {
        font-size: 48px;
        font-weight: 700; }
        .result .result-quality-ttl strong > span {
          color: var(--c_green);
          font-size: 60px; }
    .result .result-quality-txt {
      text-align: center;
      font-size: 22px;
      font-weight: 700;
      line-height: 1.9090909091;
      margin-bottom: 55px; }
    .result .result-quality-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      gap: 35px 4%; }
      .result .result-quality-list > li {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 29%;
                flex: 0 1 29%;
        height: 180px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        text-align: center;
        border-radius: 14px;
        background: linear-gradient(150deg, #ffffff 0%, #ffffff 50%, #e7e7e7 50%, #e7e7e7 100%);
        -webkit-box-shadow: 0px -5px 0px 0px var(--c_yellow) inset;
                box-shadow: 0px -5px 0px 0px var(--c_yellow) inset;
        position: relative;
        font-family: var(--font_serif);
        font-size: 32px;
        font-weight: 700;
        line-height: 1.25;
        padding: 30px 10px 10px; }
        .result .result-quality-list > li:before {
          content: "";
          width: 55px;
          height: 48px;
          background: url(../img/check.svg) no-repeat center/contain;
          position: absolute;
          top: -10px;
          left: 0;
          right: 0;
          margin: auto; }
        .result .result-quality-list > li strong {
          font-size: 40px;
          font-weight: 700;
          letter-spacing: 0;
          color: var(--c_red); }
  .result .result-closing {
    margin-top: 70px;
    text-align: center;
    font-family: var(--font_serif);
    font-size: 30px;
    font-weight: 700;
    line-height: 1.5;
    color: var(--c_navy); }
    .result .result-closing-txt01 {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-column-gap: 1em;
         -moz-column-gap: 1em;
              column-gap: 1em;
      font-size: 24px;
      margin-bottom: 16px; }
      .result .result-closing-txt01:before, .result .result-closing-txt01:after {
        content: "";
        width: 3px;
        height: 1.5em;
        background: currentColor;
        -webkit-transform: rotate(-30deg);
                transform: rotate(-30deg); }
      .result .result-closing-txt01:after {
        -webkit-transform: rotate(30deg);
                transform: rotate(30deg); }
    .result .result-closing .large {
      font-size: 40px; }
    .result .result-closing strong {
      font-weight: 700;
      color: var(--c_red);
      background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(75%, var(--c_yellow)), color-stop(95%, var(--c_yellow)), color-stop(95%, transparent));
      background: linear-gradient(transparent 75%, var(--c_yellow) 75%, var(--c_yellow) 95%, transparent 95%); }

.cv02 {
  padding: 62px 0;
  position: relative;
  text-align: center; }
  .cv02 .cv02-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1; }
    .cv02 .cv02-bg img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
  .cv02 .cv02-ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
    margin-bottom: 12px;
    font-family: var(--font_serif); }
    .cv02 .cv02-ttl-sub {
      width: 90px;
      height: 90px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      text-align: center;
      background: url(../img/cv_icon.svg) no-repeat center/contain;
      font-size: 24px;
      font-weight: 700;
      line-height: 1.0833333333;
      letter-spacing: 0;
      color: var(--c_red); }
    .cv02 .cv02-ttl-main {
      font-size: 54px;
      font-weight: 600;
      letter-spacing: 0.1em;
      color: var(--c_yellow); }
  .cv02 .cv02-txt {
    font-family: var(--font_serif);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.5833333333;
    letter-spacing: 0.15em;
    color: var(--c_wht);
    margin-bottom: 30px; }
  .cv02 .cv02-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .cv02 .cv02-tel {
    -webkit-font-feature-settings: normal;
            font-feature-settings: normal;
    line-height: 1.0; }
    .cv02 .cv02-tel-link {
      color: var(--c_wht);
      display: block;
      text-align: center;
      padding-left: 62px; }
    .cv02 .cv02-tel-num {
      font-family: var(--font_eng);
      font-size: 48px;
      font-weight: 600;
      letter-spacing: 0.025em;
      line-height: 0.9;
      display: block;
      position: relative; }
      .cv02 .cv02-tel-num:before {
        content: "";
        width: 50px;
        height: 1em;
        background: url(../img/ico_freedial.svg) no-repeat center/contain;
        position: absolute;
        left: -62px;
        top: 0;
        -webkit-filter: var(--filter_green);
                filter: var(--filter_green); }
    .cv02 .cv02-tel-time {
      font-size: 12px;
      letter-spacing: 0.1em;
      display: block;
      margin-top: 12px; }
  .cv02 .cv02-mail {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 48.5%;
            flex: 0 0 48.5%;
    padding-left: 3.5%;
    margin-left: 3.5%;
    border-left: 1px solid var(--c_wht); }
    .cv02 .cv02-mail-link {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      font-family: var(--font_serif);
      font-size: 24px;
      font-weight: 700;
      letter-spacing: 0.1em;
      background: var(--c_red);
      color: var(--c_wht);
      border-radius: 200px;
      padding: 21px 40px;
      border: 2px solid var(--c_red); }
      .cv02 .cv02-mail-link:before {
        content: "";
        width: 40px;
        height: 30px;
        background: url(../img/ico_mail.svg) no-repeat center/contain;
        -webkit-filter: var(--filter_wht);
                filter: var(--filter_wht); }
      .cv02 .cv02-mail-link i {
        width: 30px;
        height: 2px;
        background: currentColor;
        position: relative; }
        .cv02 .cv02-mail-link i:before {
          content: "";
          width: 12px;
          height: 2px;
          background: currentColor;
          position: absolute;
          right: 0;
          bottom: 0;
          -webkit-transform: rotate(30deg);
                  transform: rotate(30deg);
          -webkit-transform-origin: right bottom;
                  transform-origin: right bottom; }
      .cv02 .cv02-mail-link:hover {
        opacity: 1.0;
        -webkit-transform: scale(1.05);
                transform: scale(1.05); }

.reason {
  padding: 90px 0 85px; }
  .reason .reason-ttl {
    text-align: center;
    color: var(--c_navy);
    font-family: var(--font_serif);
    font-size: 44px;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 1.0;
    position: relative;
    padding-bottom: 30px;
    margin-bottom: 70px; }
    .reason .reason-ttl:before, .reason .reason-ttl:after {
      content: "";
      width: 40px;
      height: 5px;
      background: var(--c_yg);
      position: absolute;
      bottom: 0; }
    .reason .reason-ttl:before {
      right: 50%; }
    .reason .reason-ttl:after {
      background: var(--c_green);
      left: 50%; }
    .reason .reason-ttl > span {
      font-size: 72px;
      color: var(--c_green);
      margin: 0 -0.1em; }
  .reason .reason-list-item {
    margin-bottom: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-column-gap: 5.08%;
       -moz-column-gap: 5.08%;
            column-gap: 5.08%; }
    .reason .reason-list-item:nth-child(even) {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
    .reason .reason-list-item:last-child {
      margin-bottom: 0; }
    .reason .reason-list-item-img {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 47.5%;
              flex: 0 1 47.5%; }
    .reason .reason-list-item-txtbox {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 42%;
              flex: 0 1 42%; }
    .reason .reason-list-item-num {
      color: var(--c_green);
      font-family: var(--font_eng);
      font-size: 18px;
      font-weight: 600;
      line-height: 1.0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-column-gap: 14px;
         -moz-column-gap: 14px;
              column-gap: 14px;
      margin-bottom: 24px; }
      .reason .reason-list-item-num > span {
        font-size: 36px; }
    .reason .reason-list-item-ttl {
      font-family: var(--font_serif);
      font-size: 44px;
      font-weight: 600;
      line-height: 1.3636363636;
      color: var(--c_navy);
      margin-bottom: 50px; }
      .reason .reason-list-item-ttl > span {
        font-size: 18px;
        vertical-align: middle; }
      .reason .reason-list-item-ttl > mark {
        font-weight: 600;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(75%, var(--c_yellow)), color-stop(95%, var(--c_yellow)), color-stop(95%, transparent));
        background: linear-gradient(transparent 75%, var(--c_yellow) 75%, var(--c_yellow) 95%, transparent 95%); }
    .reason .reason-list-item-txt {
      line-height: 1.875; }

.price {
  padding: 200px 0 70px;
  overflow: hidden;
  position: relative; }
  .price:before {
    content: "";
    width: 500%;
    padding-top: 500%;
    background: var(--c_green);
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: -1; }
  .price:after {
    content: "";
    width: 100%;
    height: 1220px;
    background: url(../img/price_bg.jpg) repeat center/14px;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1; }
  .price .price-ttl {
    text-align: center;
    color: var(--c_wht);
    font-family: var(--font_serif);
    font-size: 44px;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 1.0;
    position: relative;
    padding-bottom: 30px;
    margin-bottom: 60px; }
    .price .price-ttl:before, .price .price-ttl:after {
      content: "";
      width: 40px;
      height: 5px;
      background: var(--c_yg);
      position: absolute;
      bottom: 0; }
    .price .price-ttl:before {
      right: 50%; }
    .price .price-ttl:after {
      background: var(--c_yellow);
      left: 50%; }
  .price .price-lead {
    text-align: center;
    color: var(--c_wht);
    font-family: var(--font_serif);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.1em;
    margin-bottom: 40px; }
    .price .price-lead .num {
      font-size: 30px;
      font-weight: 700;
      letter-spacing: 0.05em;
      color: var(--c_yellow); }
      .price .price-lead .num > span {
        font-size: 48px; }
    .price .price-lead .dot {
      background-image: radial-gradient(circle at center, var(--c_yellow) 20%, transparent 20%);
      background-position: top right;
      background-repeat: repeat-x;
      background-size: 1em 0.3em;
      padding-top: .2em; }
  .price .price-detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 12px;
    margin-bottom: 90px; }
    .price .price-detail > li {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 190px;
              flex: 0 1 190px;
      background: var(--c_yellow);
      text-align: center;
      border-radius: 100px;
      color: var(--c_navy);
      font-size: 24px;
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.0;
      padding: 16px; }
  .price .price-free {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 1em;
       -moz-column-gap: 1em;
            column-gap: 1em;
    text-align: center;
    font-family: var(--font_serif);
    font-size: 54px;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 1.2962962963;
    margin-bottom: 30px;
    color: var(--c_wht); }
    .price .price-free:before, .price .price-free:after {
      content: "";
      width: 3px;
      height: 1.5em;
      background: currentColor;
      -webkit-transform: rotate(-30deg);
              transform: rotate(-30deg); }
    .price .price-free:after {
      -webkit-transform: rotate(30deg);
              transform: rotate(30deg); }
    .price .price-free strong {
      background: var(--c_wht);
      color: var(--c_red);
      padding: 0 12px; }
  .price .price-table img {
    margin: 0 auto; }
  .price .price-compare {
    margin-top: 60px;
    background: var(--c_wht);
    padding: 80px 20px 60px;
    -webkit-box-shadow: 0px 15px 30px 0px rgba(0, 0, 0, 0.15);
            box-shadow: 0px 15px 30px 0px rgba(0, 0, 0, 0.15); }
    .price .price-compare-ttl {
      text-align: center;
      font-family: var(--font_serif);
      font-size: 40px;
      font-weight: 700;
      line-height: 1.0;
      letter-spacing: 0.15em;
      color: var(--c_navy);
      margin-bottom: 40px; }
      .price .price-compare-ttl > span {
        display: inline-block;
        padding: 0 45px 15px;
        border-bottom: 5px solid var(--c_yellow); }
    .price .price-compare-subttl {
      font-size: 20px;
      font-weight: 500;
      letter-spacing: 0.15em;
      line-height: 1.5;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      padding: 0 2em;
      margin: 0 auto 50px;
      position: relative;
      text-align: center; }
      .price .price-compare-subttl:before, .price .price-compare-subttl:after {
        content: "";
        width: 6px;
        height: 100%;
        border: 1.5px solid currentColor;
        border-right: 0;
        position: absolute;
        top: 0; }
      .price .price-compare-subttl:before {
        left: 0; }
      .price .price-compare-subttl:after {
        right: 0;
        -webkit-transform: scale(-1, 1);
                transform: scale(-1, 1); }
    .price .price-compare-table img {
      margin: 0 auto; }
  .price .price-closing {
    margin-top: 70px;
    text-align: center;
    font-family: var(--font_serif);
    font-size: 40px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.4;
    color: var(--c_navy); }
    .price .price-closing .small {
      font-size: 30px; }
    .price .price-closing mark {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(75%, var(--c_yellow)), color-stop(95%, var(--c_yellow)), color-stop(95%, transparent));
      background: linear-gradient(transparent 75%, var(--c_yellow) 75%, var(--c_yellow) 95%, transparent 95%);
      font-weight: 700; }
    .price .price-closing strong {
      font-weight: 700;
      color: var(--c_red); }

.advisor {
  padding: 90px 0 85px; }
  .advisor .advisor-ttl {
    text-align: center;
    color: var(--c_navy);
    font-family: var(--font_serif);
    font-size: 44px;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 1.0;
    position: relative;
    padding-bottom: 30px;
    margin-bottom: 80px; }
    .advisor .advisor-ttl:before, .advisor .advisor-ttl:after {
      content: "";
      width: 40px;
      height: 5px;
      background: var(--c_yg);
      position: absolute;
      bottom: 0; }
    .advisor .advisor-ttl:before {
      right: 50%; }
    .advisor .advisor-ttl:after {
      background: var(--c_green);
      left: 50%; }
  .advisor .advisor-list-item {
    margin-bottom: 70px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    gap: 40px 0; }
    .advisor .advisor-list-item:last-child {
      margin-bottom: 0; }
    .advisor .advisor-list-item-img {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 44.5%;
              flex: 0 1 44.5%; }
      .advisor .advisor-list-item-img img {
        margin: 0 auto; }
    .advisor .advisor-list-item-txtbox {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 50%;
              flex: 0 1 50%;
      color: var(--c_navy);
      padding-bottom: 10px; }
    .advisor .advisor-list-item-company {
      font-family: var(--font_serif);
      font-size: 20px;
      font-weight: 600;
      letter-spacing: 0.1em;
      line-height: 1.0;
      margin-bottom: 15px; }
    .advisor .advisor-list-item-name {
      position: relative;
      z-index: 2;
      padding-bottom: 30px;
      margin-bottom: 30px;
      font-family: var(--font_serif);
      font-size: 30px;
      font-weight: 600;
      letter-spacing: 0.1em;
      line-height: 1.0; }
      .advisor .advisor-list-item-name:before {
        content: attr(data-eng);
        font-family: var(--font_eng);
        font-size: 56px;
        font-weight: 100;
        letter-spacing: -0.025em;
        line-height: 0.9;
        color: #3e86ab;
        opacity: 0.2;
        position: absolute;
        right: 0;
        bottom: 0;
        z-index: -1; }
      .advisor .advisor-list-item-name .position {
        font-size: 16px;
        display: inline-block;
        padding: 10px 20px;
        margin-right: 20px;
        border: 1px solid currentColor;
        background: var(--c_wht);
        border-radius: 50px; }
    .advisor .advisor-list-item-profile {
      font-size: 14px;
      line-height: 2.1428571429;
      margin-bottom: 12px; }
    .advisor .advisor-list-item-history {
      font-size: 14px;
      line-height: 2.1428571429;
      text-indent: -1em;
      padding-left: 1em; }
    .advisor .advisor-list-item-message {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      border: 1px solid #c7c7c7;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      -webkit-column-gap: 4%;
         -moz-column-gap: 4%;
              column-gap: 4%;
      padding: 42px 4% 42px 5%; }
      .advisor .advisor-list-item-message-ttl {
        font-family: var(--font_eng);
        font-size: 18px;
        font-weight: 600;
        color: var(--c_blue);
        -ms-flex-negative: 0;
            flex-shrink: 0; }
      .advisor .advisor-list-item-message-txt {
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1;
        color: var(--c_navy);
        line-height: 1.875;
        letter-spacing: 0.1em; }

.flow {
  padding: 80px 0 60px;
  background: #fff6c9; }
  .flow .flow-ttl {
    text-align: center;
    color: var(--c_navy);
    font-family: var(--font_serif);
    font-size: 44px;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 1.0;
    position: relative;
    padding-bottom: 30px;
    margin-bottom: 70px; }
    .flow .flow-ttl:before, .flow .flow-ttl:after {
      content: "";
      width: 40px;
      height: 5px;
      background: var(--c_yg);
      position: absolute;
      bottom: 0; }
    .flow .flow-ttl:before {
      right: 50%; }
    .flow .flow-ttl:after {
      background: var(--c_green);
      left: 50%; }
  .flow .flow-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 5%;
       -moz-column-gap: 5%;
            column-gap: 5%; }
    .flow .flow-list-item {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      background: var(--c_wht);
      padding: 35px 3.5%;
      position: relative;
      counter-increment: cnt; }
      .flow .flow-list-item:before {
        content: counter(cnt, decimal-leading-zero);
        font-family: var(--font_eng);
        font-size: 56px;
        font-weight: 500;
        line-height: 1.0;
        letter-spacing: 0;
        color: var(--c_green);
        position: absolute;
        top: 0;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
      .flow .flow-list-item:after {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 32px 0 32px 30px;
        border-color: transparent transparent transparent var(--c_yellow);
        position: absolute;
        right: -14%;
        top: 0;
        bottom: 0;
        margin: auto; }
      .flow .flow-list-item:last-child:after {
        display: none; }
      .flow .flow-list-item-ttl {
        text-align: center;
        font-family: var(--font_serif);
        font-size: 30px;
        font-weight: 600;
        line-height: 1.0;
        color: var(--c_green);
        margin-bottom: 20px; }
      .flow .flow-list-item-img {
        width: 150px;
        margin: 20px auto; }
      .flow .flow-list-item-txt {
        line-height: 1.875; }
  .flow .flow-closing {
    margin-top: 60px;
    text-align: center;
    font-family: var(--font_serif);
    font-size: 30px;
    font-weight: 700;
    line-height: 1.6;
    color: var(--c_navy);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 1.5em;
       -moz-column-gap: 1.5em;
            column-gap: 1.5em; }
    .flow .flow-closing:before, .flow .flow-closing:after {
      content: "";
      width: 3px;
      height: 3.5em;
      background: currentColor;
      -webkit-transform: rotate(-30deg);
              transform: rotate(-30deg); }
    .flow .flow-closing:after {
      -webkit-transform: rotate(30deg);
              transform: rotate(30deg); }
    .flow .flow-closing strong {
      color: var(--c_red); }

.faq {
  padding: 84px 0;
  background: #eeeeee; }
  .faq .faq-ttl {
    text-align: center;
    color: var(--c_navy);
    font-family: var(--font_serif);
    font-size: 44px;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 1.0;
    position: relative;
    padding-bottom: 30px;
    margin-bottom: 60px; }
    .faq .faq-ttl:before, .faq .faq-ttl:after {
      content: "";
      width: 40px;
      height: 5px;
      background: var(--c_yg);
      position: absolute;
      bottom: 0; }
    .faq .faq-ttl:before {
      right: 50%; }
    .faq .faq-ttl:after {
      background: var(--c_green);
      left: 50%; }
  .faq .faq-list-item {
    margin-bottom: 20px;
    background: var(--c_wht);
    padding: 35px 50px; }
    .faq .faq-list-item:last-child {
      margin-bottom: 0; }
    .faq .faq-list-item dt {
      font-family: var(--font_serif);
      font-size: 22px;
      font-weight: 600;
      letter-spacing: 0.1em;
      line-height: 1.5;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-column-gap: 15px;
         -moz-column-gap: 15px;
              column-gap: 15px;
      margin-bottom: 30px; }
      .faq .faq-list-item dt:before {
        content: "Q";
        -ms-flex-negative: 0;
            flex-shrink: 0;
        width: 45px;
        height: 45px;
        background: var(--c_green);
        color: var(--c_wht);
        border-radius: 50%;
        font-family: var(--font_eng);
        font-size: 24px;
        font-weight: 600;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
      .faq .faq-list-item dt > div {
        margin: auto 0; }
    .faq .faq-list-item dd {
      font-size: 15px;
      line-height: 2.0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-column-gap: 15px;
         -moz-column-gap: 15px;
              column-gap: 15px; }
      .faq .faq-list-item dd:before {
        content: "A";
        -ms-flex-negative: 0;
            flex-shrink: 0;
        width: 45px;
        height: 45px;
        background: var(--c_navy);
        color: var(--c_wht);
        border-radius: 50%;
        font-family: var(--font_eng);
        font-size: 24px;
        font-weight: 600;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
      .faq .faq-list-item dd > div {
        margin: auto 0; }
      .faq .faq-list-item dd strong {
        font-size: 18px;
        font-weight: 500;
        margin-bottom: 12px;
        display: inline-block; }

.ending {
  padding: 90px 0 154px;
  background: url(../img/ending_mask.png) no-repeat center bottom/100%, url(../img/ending_bg.jpg) no-repeat center/cover; }
  .ending .ending-ttl {
    text-align: center;
    font-family: var(--font_serif);
    font-size: 32px;
    font-weight: 600;
    color: var(--c_wht);
    margin-bottom: 44px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 22px;
       -moz-column-gap: 22px;
            column-gap: 22px;
    text-decoration: underline;
    text-decoration-color: var(--c_green);
    text-underline-offset: 7px;
    text-decoration-thickness: 3px; }
    .ending .ending-ttl:before, .ending .ending-ttl:after {
      content: "";
      width: 20px;
      height: 75px;
      border: 2px solid var(--c_wht);
      border-right: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
    .ending .ending-ttl:after {
      -webkit-transform: scale(-1, 1);
              transform: scale(-1, 1); }
  .ending .ending-txt {
    text-align: center;
    color: var(--c_wht);
    font-family: var(--font_serif);
    font-weight: 500;
    line-height: 2.25;
    letter-spacing: 0.1em; }
    .ending .ending-txt p + p {
      margin-top: 2.25em; }

.form {
  background: var(--c_navy);
  padding: 50px 0 64px; }
  .form .form-ttl {
    text-align: center;
    font-family: var(--font_serif);
    font-size: 40px;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.2;
    margin-bottom: 60px;
    color: var(--c_wht); }
    .form .form-ttl strong {
      color: var(--c_yellow); }
  .form .form-box {
    background: var(--c_wht);
    max-width: 860px;
    margin: 0 auto;
    padding: 65px 80px 60px; }
  .form .form-lead {
    text-align: center;
    font-family: var(--font_serif);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.1em;
    margin-bottom: 40px; }
  .form .form-tel {
    padding: 40px 0 60px;
    border-top: 1px solid #dfdfdf;
    text-align: center; }
    .form .form-tel-main {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-column-gap: 25px;
         -moz-column-gap: 25px;
              column-gap: 25px;
      margin-bottom: 20px; }
      .form .form-tel-main dt {
        font-family: var(--font_serif);
        font-size: 18px;
        font-weight: 600;
        letter-spacing: 0;
        line-height: 1.0;
        -webkit-font-feature-settings: normal;
                font-feature-settings: normal; }
      .form .form-tel-main dd a {
        font-family: var(--font_eng);
        font-size: 30px;
        font-weight: 500;
        letter-spacing: 0;
        line-height: 1.0;
        -webkit-font-feature-settings: normal;
                font-feature-settings: normal;
        text-decoration: underline;
        text-underline-offset: 4px;
        text-decoration-thickness: 2px; }
      .form .form-tel-main dd span {
        font-size: 14px;
        letter-spacing: 0;
        -webkit-font-feature-settings: normal;
                font-feature-settings: normal;
        margin-left: 8px;
        vertical-align: middle; }
    .form .form-tel-sub {
      font-size: 12px; }
  .form .form-dl dt {
    font-weight: 700;
    margin-bottom: 15px; }
    .form .form-dl dt .req {
      display: inline-block;
      margin-left: 20px;
      font-size: 12px;
      background: var(--c_green);
      color: var(--c_wht);
      padding: 0 8px; }
  .form .form-dl dd + dt {
    margin-top: 25px; }
  .form .form-privacy {
    text-align: center;
    font-size: 14px;
    margin: 25px 0; }
    .form .form-privacy a {
      color: var(--c_green);
      text-decoration: underline;
      text-underline-offset: 4px; }
  .form input[type=text], .form input[type=tel], .form input[type=mail] {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 100%;
    font-family: var(--font_ja);
    font-size: 16px;
    border: 1px solid #c7c7c7;
    padding: 12px 20px;
    color: var(--c_text); }
    .form input[type=text]::-webkit-input-placeholder, .form input[type=tel]::-webkit-input-placeholder, .form input[type=mail]::-webkit-input-placeholder {
      color: #9c9c9c; }
  .form select {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 350px;
    max-width: 100%;
    height: 50px;
    font-family: var(--font_ja);
    font-size: 16px;
    border: 1px solid #c7c7c7;
    background: url(../img/select.png) no-repeat right 28px center/11px, var(--c_wht);
    border-radius: 0;
    padding: 12px 20px;
    color: var(--c_text); }
  .form textarea {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 100%;
    height: 140px;
    font-family: var(--font_ja);
    font-size: 16px;
    border: 1px solid #c7c7c7;
    padding: 12px 20px;
    color: var(--c_text); }
    .form textarea::-webkit-input-placeholder {
      color: #9c9c9c; }
  .form button {
    apprearance: none;
    width: 400px;
    max-width: 100%;
    height: 80px;
    background: var(--c_red);
    border: 2px solid var(--c_red);
    border-radius: 100px;
    text-align: center;
    margin: 0 auto;
    display: block;
    color: var(--c_wht);
    font-family: var(--font_serif);
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.1em;
    cursor: pointer;
    -webkit-transition: var(--anim);
    transition: var(--anim); }
    .form button:hover {
      -webkit-transform: scale(1.05);
              transform: scale(1.05); }

.company {
  padding: 75px 0; }
  .company .company-ttl {
    text-align: center;
    font-family: var(--font_serif);
    font-size: 36px;
    font-weight: 600;
    line-height: 1.0;
    color: var(--c_navy);
    margin-bottom: 60px; }
  .company .company-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 900px;
    margin: 0 auto; }
  .company .company-txtbox {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 47.8%;
            flex: 0 1 47.8%; }
  .company .company-detail {
    font-size: 14px;
    line-height: 1.7142857143;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto 0 1fr;
    grid-template-columns: auto 1fr;
    gap: 0; }
    .company .company-detail dt {
      padding: 20px 55px 20px 0;
      border-bottom: 1px solid #c7c7c7; }
    .company .company-detail dd {
      padding: 20px 0;
      border-bottom: 1px solid #c7c7c7; }
  .company .company-img {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 44%;
            flex: 0 1 44%; }
    .company .company-img img {
      width: 100%; }

/** -------------------- Confirm Page -------------------- **/
.form.confirm {
  padding: 200px 0 100px;
  min-height: calc(100dvh - 60px); }

/** -------------------- Thanks Page -------------------- **/
.thanks {
  padding: 200px 0 100px;
  background: var(--c_navy);
  color: var(--c_wht);
  min-height: calc(100dvh - 60px); }
  .thanks .thanks-ttl {
    text-align: center;
    font-family: var(--font_serif);
    font-size: 40px;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.2;
    margin-bottom: 60px;
    color: var(--c_wht); }
    .thanks .thanks-ttl strong {
      color: var(--c_yellow); }
  .thanks .thanks-txt {
    text-align: center;
    font-size: 18px;
    line-height: 2.2; }
  .thanks .thanks-btn {
    margin-top: 40px; }
    .thanks .thanks-btn a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 400px;
      max-width: 100%;
      height: 50px;
      background: var(--c_red);
      color: var(--c_wht);
      border-radius: 100px;
      margin: 0 auto;
      font-family: var(--font_serif);
      font-size: 18px;
      font-weight: 600; }

/* PCのみ
  ------------------------ */
@media (min-width: 1001px) {
  .forSP {
    display: none !important; }
  .header-tel-link,
  .cv01-tel-link,
  .cv02-tel-link,
  .form .form-tel-main dd a {
    pointer-events: none; } }

/* タブレット
  ------------------------ */
/* スマホ
  ------------------------ */
@media (max-width: 1000px) {
  body {
    font-size: 14px; }
  .forPC {
    display: none !important; }
  /** -------------------- Common Style -------------------- **/
  /** -------------------- Header -------------------- **/
  .header .header-container {
    padding: 15px; }
  .header .header-logo-img {
    width: 169px; }
  .header .header-logo-txt {
    font-size: 8px;
    letter-spacing: 0; }
  /** -------------------- Aside -------------------- **/
  .aside {
    top: auto;
    bottom: 0;
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    padding: 5px 0; }
    .aside + .footer {
      margin-bottom: 60px; }
    .aside .aside-cta {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-column-gap: 5px;
         -moz-column-gap: 5px;
              column-gap: 5px; }
      .aside .aside-cta-item {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; }
        .aside .aside-cta-item-link {
          border-radius: 100px; }
          .aside .aside-cta-item-link--tel {
            display: block;
            text-align: center;
            background: var(--c_navy);
            color: var(--c_wht);
            line-height: 1.0;
            height: 100%;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
            row-gap: 4px; }
            .aside .aside-cta-item-link--tel .num {
              font-family: var(--font_eng);
              font-size: 19px;
              font-weight: 500;
              line-height: 0.9;
              display: -webkit-box;
              display: -ms-flexbox;
              display: flex;
              -webkit-box-align: center;
                  -ms-flex-align: center;
                      align-items: center;
              -webkit-box-pack: center;
                  -ms-flex-pack: center;
                      justify-content: center;
              -webkit-column-gap: 6px;
                 -moz-column-gap: 6px;
                      column-gap: 6px; }
              .aside .aside-cta-item-link--tel .num:before {
                content: "";
                width: 20px;
                height: 1em;
                background: url(../img/ico_freedial.svg) no-repeat center/contain;
                -webkit-filter: var(--filter_wht);
                        filter: var(--filter_wht); }
            .aside .aside-cta-item-link--tel .time {
              font-size: 8px; }
          .aside .aside-cta-item-link--mail {
            background: var(--c_red);
            color: var(--c_wht);
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
            -webkit-column-gap: 6px;
               -moz-column-gap: 6px;
                    column-gap: 6px;
            padding: 8px;
            font-family: var(--font_serif);
            font-size: 13px;
            font-weight: 600; }
            .aside .aside-cta-item-link--mail .free {
              width: 35px;
              height: 35px;
              background: url(../img/cv_icon.svg) no-repeat center/contain;
              display: -webkit-box;
              display: -ms-flexbox;
              display: flex;
              -webkit-box-align: center;
                  -ms-flex-align: center;
                      align-items: center;
              -webkit-box-pack: center;
                  -ms-flex-pack: center;
                      justify-content: center;
              color: var(--c_red);
              font-size: 12px;
              font-weight: 700; }
  /** -------------------- Footer -------------------- **/
  .footer {
    padding: 12px 0; }
    .footer .footer-container {
      display: block;
      font-size: 8px;
      text-align: center; }
    .footer .footer-privacy {
      margin-top: 4px; }
  /** -------------------- Top Page -------------------- **/
  .cv01 {
    padding: 24px 0; }
    .cv01:after {
      width: 45px;
      height: 31px;
      bottom: -25px; }
    .cv01 .cv01-container {
      display: block; }
    .cv01 .cv01-ttl {
      -webkit-column-gap: 8px;
         -moz-column-gap: 8px;
              column-gap: 8px;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .cv01 .cv01-ttl-sub {
        width: 70px;
        height: 70px;
        font-size: 18px; }
      .cv01 .cv01-ttl-main {
        font-size: 28px; }
    .cv01 .cv01-txt {
      text-align: center;
      font-size: 16px;
      margin: 8px 0; }
    .cv01 .cv01-tel {
      margin: 16px 0; }
      .cv01 .cv01-tel-link {
        padding-left: 0; }
      .cv01 .cv01-tel-num {
        font-size: 40px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-column-gap: 8px;
           -moz-column-gap: 8px;
                column-gap: 8px; }
        .cv01 .cv01-tel-num:before {
          position: relative;
          left: auto;
          top: auto; }
      .cv01 .cv01-tel-time {
        font-size: 12px; }
    .cv01 .cv01-mail-link {
      font-size: 18px;
      padding: 12px 36px; }
  .trouble {
    padding: 40px 0; }
    .trouble:before {
      height: 250px; }
    .trouble .trouble-ttl {
      font-size: 24px;
      line-height: 1.3;
      margin-bottom: 32px; }
      .trouble .trouble-ttl .small {
        font-size: 18px; }
    .trouble .trouble-list {
      margin-bottom: 40px;
      gap: 0 3%; }
      .trouble .trouble-list-item {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 47%;
                flex: 0 1 47%;
        font-size: 15px;
        border-width: 2px;
        margin-bottom: 4px; }
        .trouble .trouble-list-item:before, .trouble .trouble-list-item:after {
          border-width: 20px 6px 0 6px;
          top: calc(100% + 2px); }
        .trouble .trouble-list-item:after {
          top: calc(100% - 4px); }
    .trouble .trouble-catch {
      font-size: 16px;
      line-height: 1.5;
      margin-bottom: 20px;
      text-align: center; }
      .trouble .trouble-catch:before, .trouble .trouble-catch:after {
        margin-bottom: 12px;
        width: 2px;
        height: 4em; }
      .trouble .trouble-catch strong {
        font-size: 20px; }
    .trouble .trouble-closing {
      font-size: 20px;
      line-height: 1.5; }
      .trouble .trouble-closing strong {
        font-size: 24px;
        text-decoration-thickness: 3px;
        text-underline-offset: 6px; }
        .trouble .trouble-closing strong .small {
          font-size: 20px; }
      .trouble .trouble-closing .yellow {
        font-size: 28px; }
  .result {
    padding: 40px 0; }
    .result .result-ttl {
      font-size: 22px;
      padding-bottom: 16px;
      margin-bottom: 30px; }
      .result .result-ttl:before, .result .result-ttl:after {
        width: 20px;
        height: 2px; }
    .result .result-lead {
      font-size: 16px;
      line-height: 1.5; }
    .result .result-tab {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      gap: 4px; }
      .result .result-tab-item {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 calc((100% - 4px) / 2);
                flex: 0 1 calc((100% - 4px) / 2);
        font-size: 14px;
        padding: 12px; }
        .result .result-tab-item:after {
          right: 12px; }
    .result .result-content {
      padding: 20px 15px;
      border-width: 2px; }
      .result .result-content-in {
        row-gap: 16px; }
      .result .result-content-ttl {
        font-size: 18px;
        padding-bottom: 12px;
        border-width: 1px;
        margin-bottom: 0; }
      .result .result-content-dl {
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
        -webkit-box-flex: 0;
            -ms-flex: 0 1 100%;
                flex: 0 1 100%;
        display: block; }
        .result .result-content-dl dt {
          padding: 8px 24px 8px 12px;
          max-width: 180px; }
        .result .result-content-dl dd {
          margin: 4px 0 8px; }
      .result .result-content-img {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 50%;
                flex: 0 1 50%;
        margin: 0 auto; }
    .result .result-quality {
      padding-top: 40px; }
      .result .result-quality-ttl {
        margin-bottom: 32px;
        font-size: 16px; }
        .result .result-quality-ttl strong {
          font-size: 28px; }
          .result .result-quality-ttl strong > span {
            font-size: 32px; }
      .result .result-quality-txt {
        font-size: 16px;
        line-height: 1.7;
        margin-bottom: 30px; }
      .result .result-quality-list {
        gap: 20px 2%; }
        .result .result-quality-list > li {
          -webkit-box-flex: 0;
              -ms-flex: 0 1 46%;
                  flex: 0 1 46%;
          height: 90px;
          border-radius: 8px;
          font-size: 18px;
          line-height: 1.5;
          padding: 24px 5px 16px; }
          .result .result-quality-list > li:before {
            width: 28px;
            height: 24px;
            top: -10px; }
          .result .result-quality-list > li strong {
            font-size: 22px; }
    .result .result-closing {
      margin-top: 40px;
      font-size: 20px; }
      .result .result-closing-txt01 {
        font-size: 16px;
        margin-bottom: 12px; }
        .result .result-closing-txt01:before, .result .result-closing-txt01:after {
          width: 2px; }
      .result .result-closing .large {
        font-size: 22px; }
  .cv02 {
    padding: 30px 0 45px; }
    .cv02 .cv02-ttl {
      -webkit-column-gap: 8px;
         -moz-column-gap: 8px;
              column-gap: 8px; }
      .cv02 .cv02-ttl-sub {
        width: 70px;
        height: 70px;
        font-size: 18px; }
      .cv02 .cv02-ttl-main {
        font-size: 25px; }
    .cv02 .cv02-txt {
      font-size: 16px; }
    .cv02 .cv02-flex {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      row-gap: 16px; }
    .cv02 .cv02-tel-link {
      padding-left: 0; }
    .cv02 .cv02-tel-num {
      font-size: 40px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-column-gap: 8px;
         -moz-column-gap: 8px;
              column-gap: 8px; }
      .cv02 .cv02-tel-num:before {
        position: relative;
        left: auto;
        top: auto;
        width: 1em;
        height: 1em; }
    .cv02 .cv02-tel-time {
      font-size: 12px;
      margin-top: 6px; }
    .cv02 .cv02-mail {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      padding: 0;
      margin: 0;
      border: 0; }
      .cv02 .cv02-mail-link {
        font-size: 18px;
        padding: 12px 36px; }
  .reason {
    padding: 40px 0; }
    .reason .reason-ttl {
      font-size: 22px;
      padding-bottom: 16px;
      margin-bottom: 30px; }
      .reason .reason-ttl:before, .reason .reason-ttl:after {
        width: 20px;
        height: 2px; }
      .reason .reason-ttl > span {
        font-size: 36px;
        margin: 0; }
    .reason .reason-list-item {
      margin-bottom: 30px;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      row-gap: 15px;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .reason .reason-list-item-img {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 100%;
                flex: 0 1 100%; }
      .reason .reason-list-item-txtbox {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 90%;
                flex: 0 1 90%; }
      .reason .reason-list-item-num {
        font-size: 14px;
        -webkit-column-gap: 8px;
           -moz-column-gap: 8px;
                column-gap: 8px;
        margin-bottom: 4px; }
        .reason .reason-list-item-num > span {
          font-size: 20px; }
      .reason .reason-list-item-ttl {
        font-size: 28px;
        margin-bottom: 12px; }
        .reason .reason-list-item-ttl > span {
          font-size: 12px; }
      .reason .reason-list-item-txt {
        line-height: 1.6; }
  .price {
    padding: 100px 0 30px; }
    .price .price-ttl {
      font-size: 22px;
      padding-bottom: 16px;
      margin-bottom: 30px; }
      .price .price-ttl:before, .price .price-ttl:after {
        width: 20px;
        height: 2px; }
    .price .price-lead {
      font-size: 16px;
      line-height: 1.7;
      margin-bottom: 24px; }
      .price .price-lead .num {
        font-size: 20px; }
        .price .price-lead .num > span {
          font-size: 32px;
          line-height: 1.0; }
    .price .price-detail {
      gap: 10px 5px;
      margin-bottom: 22px; }
      .price .price-detail > li {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto;
        min-width: 100px;
        font-size: 15px;
        padding: 9px 16px; }
    .price .price-free {
      font-size: 22px;
      line-height: 1.5;
      margin-bottom: 20px;
      -webkit-column-gap: 40px;
         -moz-column-gap: 40px;
              column-gap: 40px; }
      .price .price-free:before, .price .price-free:after {
        height: 80px; }
      .price .price-free strong {
        display: block;
        font-size: 34px;
        line-height: 1.1764705882;
        padding: 0 0 2px; }
    .price .price-compare {
      margin-top: 30px;
      padding: 40px 10px; }
      .price .price-compare-ttl {
        font-size: 24px;
        margin-bottom: 24px; }
        .price .price-compare-ttl > span {
          padding: 0 12px 7px; }
      .price .price-compare-subttl {
        font-size: 14px;
        line-height: 1.5714285714;
        letter-spacing: 0.025em;
        margin-bottom: 35px; }
        .price .price-compare-subttl:before, .price .price-compare-subttl:after {
          width: 10px; }
    .price .price-closing {
      margin-top: 30px;
      font-size: 20px;
      line-height: 1.5; }
      .price .price-closing .small {
        font-size: 16px; }
  .advisor {
    padding: 40px 0; }
    .advisor .advisor-ttl {
      font-size: 22px;
      padding-bottom: 16px;
      margin-bottom: 30px; }
      .advisor .advisor-ttl:before, .advisor .advisor-ttl:after {
        width: 20px;
        height: 2px; }
    .advisor .advisor-list-item {
      margin-bottom: 40px;
      gap: 16px 0;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .advisor .advisor-list-item-img {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 100%;
                flex: 0 1 100%; }
      .advisor .advisor-list-item-txtbox {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 90%;
                flex: 0 1 90%; }
      .advisor .advisor-list-item-company {
        font-size: 14px;
        margin-bottom: 12px; }
      .advisor .advisor-list-item-name {
        padding-bottom: 20px;
        margin-bottom: 12px;
        font-size: 24px; }
        .advisor .advisor-list-item-name:before {
          font-size: 32px; }
        .advisor .advisor-list-item-name .position {
          font-size: 13px;
          padding: 3px 12px;
          margin-right: 8px; }
      .advisor .advisor-list-item-profile {
        font-size: 13px;
        line-height: 1.8;
        margin-bottom: 4px; }
      .advisor .advisor-list-item-history {
        font-size: 12px;
        line-height: 1.8; }
      .advisor .advisor-list-item-message {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        padding: 12px; }
        .advisor .advisor-list-item-message-txt {
          line-height: 1.6; }
  .flow {
    padding: 40px 0 30px; }
    .flow .flow-ttl {
      font-size: 22px;
      padding-bottom: 16px;
      margin-bottom: 50px; }
      .flow .flow-ttl:before, .flow .flow-ttl:after {
        width: 20px;
        height: 2px; }
    .flow .flow-list {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      row-gap: 60px; }
      .flow .flow-list-item {
        padding: 24px 20px 16px;
        width: 90%;
        margin: 0 auto; }
        .flow .flow-list-item:before {
          font-size: 32px; }
        .flow .flow-list-item:after {
          border-width: 12px 18px 0 18px;
          border-color: var(--c_yellow) transparent transparent transparent;
          right: 0;
          left: 0;
          top: auto;
          bottom: -30px; }
        .flow .flow-list-item-ttl {
          font-size: 24px; }
        .flow .flow-list-item-img {
          width: 80px;
          margin: 8px auto; }
        .flow .flow-list-item-txt {
          line-height: 1.5; }
    .flow .flow-closing {
      margin-top: 30px;
      font-size: 18px;
      -webkit-column-gap: 1em;
         -moz-column-gap: 1em;
              column-gap: 1em; }
      .flow .flow-closing:before, .flow .flow-closing:after {
        width: 2px;
        height: 7em;
        -webkit-transform: rotate(-20deg);
                transform: rotate(-20deg); }
      .flow .flow-closing:after {
        -webkit-transform: rotate(20deg);
                transform: rotate(20deg); }
  .faq {
    padding: 40px 0; }
    .faq .faq-ttl {
      font-size: 22px;
      padding-bottom: 16px;
      margin-bottom: 30px; }
      .faq .faq-ttl:before, .faq .faq-ttl:after {
        width: 20px;
        height: 2px; }
    .faq .faq-list-item {
      margin-bottom: 20px;
      padding: 16px 12px; }
      .faq .faq-list-item dt {
        font-size: 18px;
        margin-bottom: 20px; }
        .faq .faq-list-item dt:before {
          width: 32px;
          height: 32px;
          font-size: 20px; }
      .faq .faq-list-item dd {
        font-size: 14px; }
        .faq .faq-list-item dd:before {
          width: 32px;
          height: 32px;
          font-size: 20px; }
        .faq .faq-list-item dd strong {
          font-size: 16px;
          margin-bottom: 8px; }
  .ending {
    padding: 40px 0 80px; }
    .ending .ending-ttl {
      font-size: 20px; }
    .ending .ending-txt {
      letter-spacing: 0.05em;
      line-height: 1.9;
      text-align: left; }
  .form {
    padding: 24px 0 30px; }
    .form .form-ttl {
      font-size: 24px;
      margin-bottom: 30px; }
    .form .form-box {
      padding: 20px 12px; }
    .form .form-lead {
      font-size: 16px;
      margin-bottom: 20px; }
    .form .form-tel {
      padding: 20px 0 30px; }
      .form .form-tel-main {
        display: block;
        text-align: center;
        margin-bottom: 12px; }
        .form .form-tel-main dt {
          font-size: 16px;
          margin-bottom: 12px; }
        .form .form-tel-main dd a {
          font-size: 28px; }
        .form .form-tel-main dd span {
          font-size: 12px; }
      .form .form-tel-sub {
        line-height: 1.5; }
    .form .form-dl dt {
      margin-bottom: 8px; }
      .form .form-dl dt .req {
        margin-left: 12px;
        font-size: 10px; }
    .form .form-dl dd + dt {
      margin-top: 20px; }
    .form .form-privacy {
      margin: 16px 0 24px;
      font-size: 13px; }
      .form .form-privacy a {
        text-underline-offset: 2px; }
    .form input[type=text], .form input[type=tel], .form input[type=mail] {
      padding: 8px 12px; }
    .form select {
      padding: 8px 12px; }
    .form textarea {
      height: 100px;
      padding: 8px 12px; }
    .form button {
      height: 60px;
      font-size: 18px; }
  .company {
    padding: 40px 0; }
    .company .company-ttl {
      font-size: 22px;
      margin-bottom: 30px; }
    .company .company-container {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      row-gap: 12px; }
    .company .company-txtbox {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%;
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2; }
    .company .company-detail {
      font-size: 13px;
      line-height: 1.5; }
      .company .company-detail dt {
        padding: 8px 16px 8px 0; }
      .company .company-detail dd {
        padding: 8px 0; }
    .company .company-img {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 100%;
              flex: 0 1 100%; }
  /** -------------------- Confirm Page -------------------- **/
  .form.confirm {
    padding: 100px 0 60px;
    min-height: calc(100dvh - 44px); }
  /** -------------------- Thanks Page -------------------- **/
  .thanks {
    padding: 100px 0 60px;
    min-height: calc(100dvh - 44px); }
    .thanks .thanks-ttl {
      font-size: 24px;
      margin-bottom: 30px; }
    .thanks .thanks-txt {
      font-size: 16px;
      line-height: 1.8; }
    .thanks .thanks-btn {
      margin-top: 32px; }
      .thanks .thanks-btn a {
        height: 44px;
        font-size: 16px; } }
