@charset "UTF-8";
/* CSS Document */
/* line 4, style.scss */
:root {
  --teal: #0f8a8d;
  --teal-d: #0a6e70;
  --teal-l: #e6f4f4;
  --navy: #16384f;
  --ink: #2b3a42;
  --grey: #f4f7f8;
  --line: #d9e3e6;
  --accent: #e08a4b;
  --cta: #ff7a45;
  --cta-d: #e9692f;
  --max: 1000px; }

/* line 17, style.scss */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0; }

/* line 22, style.scss */
html {
  scroll-behavior: smooth; }

/* line 25, style.scss */
body {
  font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;
  color: var(--ink);
  line-height: 1.8;
  background: #fff;
  -webkit-text-size-adjust: 100%;
  padding-bottom: 64px; }

/* line 33, style.scss */
img {
  max-width: 100%;
  height: auto;
  width: auto; }

/* line 39, style.scss */
a {
  color: inherit; }

/* マルチデバイス表示　リセット
----------------------------------------------*/
/* line 46, style.scss */
.xxs-media {
  display: none; }

/* line 50, style.scss */
.xs-media {
  display: none; }

/* line 54, style.scss */
.s-media {
  display: none; }

/* line 58, style.scss */
.ls-media {
  display: none; }

/* line 62, style.scss */
.m-media {
  display: none; }

/* line 66, style.scss */
.l-media {
  display: block; }

/* line 70, style.scss */
img.l-media {
  display: inline; }

/* line 74, style.scss */
span.l-media {
  display: inline; }

/* line 78, style.scss */
br.l-media {
  display: inline-block; }

/* line 82, style.scss */
* {
  box-sizing: border-box; }

@media screen and (min-width: 930.01px) and (max-width: 1200px) {
  /* line 88, style.scss */
  .l-media {
    display: none; }

  /* line 92, style.scss */
  img.l-media {
    display: none; }

  /* line 96, style.scss */
  span.l-media {
    display: none; }

  /* line 100, style.scss */
  br.l-media {
    display: none; }

  /* line 104, style.scss */
  .m-media {
    display: block; }

  /* line 108, style.scss */
  img.m-media {
    display: inline; }

  /* line 112, style.scss */
  span.m-media {
    display: inline; }

  /* line 116, style.scss */
  br.m-media {
    display: inline-block; }

  /* line 120, style.scss */
  img {
    max-width: 100%;
    height: auto;
    width: auto; }

  /* line 127, style.scss */
  * {
    box-sizing: border-box; } }
@media screen and (min-width: 768.01px) and (max-width: 930px) {
  /* line 135, style.scss */
  .l-media {
    display: none; }

  /* line 139, style.scss */
  img.l-media {
    display: none; }

  /* line 143, style.scss */
  span.l-media {
    display: none; }

  /* line 147, style.scss */
  br.l-media {
    display: none; }

  /* line 151, style.scss */
  .ls-media {
    display: block; }

  /* line 155, style.scss */
  img.ls-media {
    display: inline; }

  /* line 159, style.scss */
  span.ls-media {
    display: inline; }

  /* line 163, style.scss */
  br.ls-media {
    display: inline-block; }

  /* line 167, style.scss */
  img {
    max-width: 100%;
    height: auto;
    width: auto; }

  /* line 173, style.scss */
  * {
    box-sizing: border-box; } }
@media screen and (min-width: 600.01px) and (max-width: 768px) {
  /* line 180, style.scss */
  .l-media {
    display: none; }

  /* line 184, style.scss */
  img.l-media {
    display: none; }

  /* line 188, style.scss */
  span.l-media {
    display: none; }

  /* line 192, style.scss */
  br.l-media {
    display: none; }

  /* line 196, style.scss */
  .s-media {
    display: block; }

  /* line 200, style.scss */
  img.s-media {
    display: inline; }

  /* line 204, style.scss */
  span.s-media {
    display: inline; }

  /* line 208, style.scss */
  br.s-media {
    display: inline-block; }

  /* line 212, style.scss */
  img {
    max-width: 100%;
    height: auto;
    width: auto; }

  /* line 218, style.scss */
  * {
    box-sizing: border-box; } }
@media screen and (min-width: 350.1px) and (max-width: 600px) {
  /* line 226, style.scss */
  .l-media {
    display: none; }

  /* line 230, style.scss */
  img.l-media {
    display: none; }

  /* line 234, style.scss */
  span.l-media {
    display: none; }

  /* line 238, style.scss */
  br.l-media {
    display: none; }

  /* line 242, style.scss */
  .xs-media {
    display: block; }

  /* line 246, style.scss */
  img.xs-media {
    display: inline; }

  /* line 250, style.scss */
  span.xs-media {
    display: inline; }

  /* line 254, style.scss */
  br.xs-media {
    display: inline-block; }

  /* line 258, style.scss */
  img {
    max-width: 100%;
    height: auto;
    width: auto; }

  /* line 264, style.scss */
  * {
    box-sizing: border-box; } }
@media screen and (max-width: 350px) {
  /* line 272, style.scss */
  .l-media {
    display: none; }

  /* line 276, style.scss */
  img.l-media {
    display: none; }

  /* line 280, style.scss */
  span.l-media {
    display: none; }

  /* line 284, style.scss */
  br.l-media {
    display: none; }

  /* line 288, style.scss */
  .xxs-media {
    display: block; }

  /* line 292, style.scss */
  img.xxs-media {
    display: inline; }

  /* line 296, style.scss */
  span.xxs-media {
    display: inline; }

  /* line 300, style.scss */
  br.xxs-media {
    display: inline-block; }

  /* line 304, style.scss */
  img {
    max-width: 100%;
    height: auto;
    width: auto; }

  /* line 310, style.scss */
  * {
    box-sizing: border-box; } }
/* line 317, style.scss */
.wrapper {
  font-size: 16px;
  font-size: 1.6rem; }
  @media screen and (min-width: 768.01px) and (max-width: 930px) {
    /* line 317, style.scss */
    .wrapper {
      font-size: 14px;
      font-size: 1.4rem; } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 317, style.scss */
    .wrapper {
      font-size: 15px;
      font-size: 1.5rem; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 317, style.scss */
    .wrapper {
      font-size: 15px;
      font-size: 1.5rem; } }
  @media screen and (max-width: 350px) {
    /* line 317, style.scss */
    .wrapper {
      font-size: 14px;
      font-size: 1.4rem; } }
  /* line 344, style.scss */
  .wrapper:before {
    position: fixed;
    bottom: 0;
    right: 0;
    content: "l";
    color: #ddd;
    font-size: 10px;
    font-size: 1.0rem;
    z-index: 100000000; }
    @media screen and (min-width: 930.01px) and (max-width: 1200px) {
      /* line 344, style.scss */
      .wrapper:before {
        content: "m"; } }
    @media screen and (min-width: 768.01px) and (max-width: 930px) {
      /* line 344, style.scss */
      .wrapper:before {
        content: "ls"; } }
    @media screen and (min-width: 600.01px) and (max-width: 768px) {
      /* line 344, style.scss */
      .wrapper:before {
        content: "s"; } }
    @media screen and (min-width: 350.1px) and (max-width: 600px) {
      /* line 344, style.scss */
      .wrapper:before {
        content: "xs"; } }
    @media screen and (max-width: 350px) {
      /* line 344, style.scss */
      .wrapper:before {
        content: "xxs"; } }

/* 
----------------------------------------------*/
/* line 380, style.scss */
.wrap {
  max-width: var(--max);
  margin: 0 auto;
  padding: 0 18px; }

/* line 385, style.scss */
.sec {
  padding: 46px 0; }

/* line 388, style.scss */
.sec--grey {
  background: var(--grey); }

/* line 391, style.scss */
.sec--teal {
  background: var(--teal-l); }

/* headings */
/* line 396, style.scss */
.shead {
  text-align: center;
  margin-bottom: 30px; }

/* line 400, style.scss */
.shead small {
  display: block;
  color: var(--teal);
  font-weight: 700;
  letter-spacing: 0.12em;
  font-size: 13px;
  margin-bottom: 6px; }

/* line 408, style.scss */
.shead h2 {
  font-size: 20px;
  color: var(--navy);
  line-height: 1.5; }

/* line 413, style.scss */
.shead h2 b {
  color: var(--teal); }

@media (min-width: 768px) {
  /* line 417, style.scss */
  .shead h2 {
    font-size: 31px; } }
/* ===== header ===== */
/* line 423, style.scss */
.bar {
  position: sticky;
  top: 0;
  z-index: 40;
  background: #fff;
  border-bottom: 1px solid var(--line); }

/* line 430, style.scss */
.bar .wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 58px; }

/* line 436, style.scss */
.brand {
  font-weight: 700;
  color: var(--navy);
  font-size: 14px;
  line-height: 1.3; }

/* line 442, style.scss */
.brand span {
  display: block;
  font-size: 11px;
  color: var(--teal);
  font-weight: 600; }

/* line 448, style.scss */
.bar-tel {
  display: none; }

@media (min-width: 768px) {
  /* line 452, style.scss */
  .bar .wrap {
    height: 66px; }

  /* line 455, style.scss */
  .bar-tel {
    display: flex;
    gap: 14px;
    align-items: center; }

  /* line 460, style.scss */
  .bar-tel a {
    font-weight: 700;
    text-decoration: none;
    font-size: 14px; }

  /* line 465, style.scss */
  .bar-tel .resv {
    background: var(--cta);
    color: #fff;
    padding: 9px 18px;
    border-radius: 30px; } }
/* ===== hero ===== */
/* line 474, style.scss */
.hero {
  position: relative;
  background: url("../images/fvimg.png") 0 0 no-repeat, url("../images/incho.png") calc(50% + 550px) 100% no-repeat, url("../images/fv_bg.jpg") 50% 0 no-repeat;
  background-size: auto 100% , auto 95% , cover;
  color: #fff;
  overflow: hidden;
  text-shadow: 0px 0px 9px rgba(0, 0, 0, 0.6); }
  @media all and (min-width: 0px) and (max-width: 1500px) {
    /* line 474, style.scss */
    .hero {
      background-position: -100px 0, calc(100% + 50px) 100%, 50% 0;
      background-size: auto 100% , auto 88% , cover; } }
  @media all and (min-width: 0px) and (max-width: 1400px) {
    /* line 474, style.scss */
    .hero {
      background-position: -200px 0, calc(100% + 70px) 100%, 50% 0;
      background-size: auto 100% , auto 88% , cover; } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 474, style.scss */
    .hero {
      background: url("../images/fv_bg.jpg") 50% 0 no-repeat;
      background-size: 200% 100%; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 474, style.scss */
    .hero {
      background: url("../images/fv_bg.jpg") 50% 0 no-repeat;
      background-size: 200% 100%; } }
  @media screen and (max-width: 350px) {
    /* line 474, style.scss */
    .hero {
      background: url("../images/fv_bg.jpg") 50% 0 no-repeat;
      background-size: 200% 100%; } }

/*.hero::after {
  content: "";
  position: absolute;
  right: -80px;
  top: -80px;
  width: 280px;
  height: 280px;
  background: rgba(255, 255, 255, 0.07);
  border-radius: 50%;
}*/
/* line 522, style.scss */
.hero .wrap {
  position: relative;
  z-index: 2;
  padding-top: 38px;
  padding-bottom: 40px;
  text-align: center; }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 522, style.scss */
    .hero .wrap {
      padding: 20px 15px 20px; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 522, style.scss */
    .hero .wrap {
      padding: 20px 15px 20px; } }
  @media screen and (max-width: 350px) {
    /* line 522, style.scss */
    .hero .wrap {
      padding: 20px 15px 20px; } }

/* line 538, style.scss */
.hero .group {
  display: inline-block;
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.45);
  color: #fff;
  font-weight: 700;
  font-size: 12px;
  padding: 6px 16px;
  border-radius: 30px;
  margin-bottom: 14px; }

/* line 549, style.scss */
.hero .badge {
  display: block;
  color: #ffe27a;
  font-weight: 700;
  font-size: 13px;
  margin-bottom: 12px; }
  @media screen and (min-width: 930.01px) and (max-width: 1200px) {
    /* line 549, style.scss */
    .hero .badge {
      margin-bottom: 4px; } }
  @media screen and (min-width: 768.01px) and (max-width: 930px) {
    /* line 549, style.scss */
    .hero .badge {
      margin-bottom: 4px; } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 549, style.scss */
    .hero .badge {
      margin-bottom: 4px; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 549, style.scss */
    .hero .badge {
      margin-bottom: 4px; } }
  @media screen and (max-width: 350px) {
    /* line 549, style.scss */
    .hero .badge {
      margin-bottom: 4px; } }

@media screen and (min-width: 600.01px) and (max-width: 768px) {
  /* line 571, style.scss */
  .fvimg_sp {
    margin: 10px -15px -32vw; } }
@media screen and (min-width: 350.1px) and (max-width: 600px) {
  /* line 571, style.scss */
  .fvimg_sp {
    margin: 10px -15px -32vw; } }
@media screen and (max-width: 350px) {
  /* line 571, style.scss */
  .fvimg_sp {
    margin: 10px -15px -32vw; } }
@media screen and (min-width: 600.01px) and (max-width: 768px) {
  /* line 582, style.scss */
  .fvimg_sp img {
    margin-bottom: -20px; } }
@media screen and (min-width: 350.1px) and (max-width: 600px) {
  /* line 582, style.scss */
  .fvimg_sp img {
    margin-bottom: -20px; } }
@media screen and (max-width: 350px) {
  /* line 582, style.scss */
  .fvimg_sp img {
    margin-bottom: -20px; } }

/* line 596, style.scss */
.hero h1 {
  font-size: 42px;
  line-height: 1.45;
  font-weight: 800; }
  @media screen and (min-width: 930.01px) and (max-width: 1200px) {
    /* line 596, style.scss */
    .hero h1 {
      font-size: 36px;
      line-height: 1.3; } }
  @media screen and (min-width: 768.01px) and (max-width: 930px) {
    /* line 596, style.scss */
    .hero h1 {
      font-size: 32px;
      line-height: 1.3; } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 596, style.scss */
    .hero h1 {
      font-size: 27px;
      line-height: 1.3; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 596, style.scss */
    .hero h1 {
      font-size: 24px;
      line-height: 1.3; } }
  @media screen and (max-width: 350px) {
    /* line 596, style.scss */
    .hero h1 {
      font-size: 22px;
      line-height: 1.3; } }

/* line 624, style.scss */
.hero h1 .yl {
  color: #ffe27a; }

/* line 627, style.scss */
.hero .lead {
  margin-top: 14px;
  font-size: 18px;
  opacity: 0.95; }
  @media screen and (min-width: 930.01px) and (max-width: 1200px) {
    /* line 627, style.scss */
    .hero .lead {
      font-size: 16px;
      line-height: 1.3;
      margin-top: 8px; } }
  @media screen and (min-width: 768.01px) and (max-width: 930px) {
    /* line 627, style.scss */
    .hero .lead {
      font-size: 16px;
      line-height: 1.3;
      margin-top: 8px; } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 627, style.scss */
    .hero .lead {
      font-size: 15px;
      margin-top: 8px;
      line-height: 1.3; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 627, style.scss */
    .hero .lead {
      font-size: 15px;
      margin-top: 8px;
      line-height: 1.3; } }
  @media screen and (max-width: 350px) {
    /* line 627, style.scss */
    .hero .lead {
      font-size: 15px;
      margin-top: 8px;
      line-height: 1.3; } }

/* line 660, style.scss */
.hero .pts {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 22px; }
  @media screen and (min-width: 930.01px) and (max-width: 1200px) {
    /* line 660, style.scss */
    .hero .pts {
      margin-top: 12px; } }
  @media screen and (min-width: 768.01px) and (max-width: 930px) {
    /* line 660, style.scss */
    .hero .pts {
      margin-top: 12px; } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 660, style.scss */
    .hero .pts {
      gap: 5px;
      margin-top: 12px; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 660, style.scss */
    .hero .pts {
      gap: 5px;
      margin-top: 12px; } }
  @media screen and (max-width: 350px) {
    /* line 660, style.scss */
    .hero .pts {
      gap: 5px;
      margin-top: 12px; } }

/* line 685, style.scss */
.hero .pts span {
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.4);
  padding: 7px 14px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 700; }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 685, style.scss */
    .hero .pts span {
      padding: 3px 5px; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 685, style.scss */
    .hero .pts span {
      padding: 3px 5px; } }
  @media screen and (max-width: 350px) {
    /* line 685, style.scss */
    .hero .pts span {
      padding: 3px 5px; } }

/* line 703, style.scss */
.hero .cta-row {
  flex-direction: row;
  justify-content: center;
  margin-top: 26px;
  display: flex;
  gap: 10px;
  align-items: center;
  text-shadow: 0px 0px; }
  @media screen and (min-width: 930.01px) and (max-width: 1200px) {
    /* line 703, style.scss */
    .hero .cta-row {
      margin-top: 12px; } }
  @media screen and (min-width: 768.01px) and (max-width: 930px) {
    /* line 703, style.scss */
    .hero .cta-row {
      margin-top: 12px; } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 703, style.scss */
    .hero .cta-row {
      flex-direction: column;
      margin-top: 12px;
      max-width: 320px;
      margin-left: auto;
      margin-right: auto; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 703, style.scss */
    .hero .cta-row {
      flex-direction: column;
      margin-top: 12px;
      max-width: 320px;
      margin-left: auto;
      margin-right: auto; } }
  @media screen and (max-width: 350px) {
    /* line 703, style.scss */
    .hero .cta-row {
      flex-direction: column;
      margin-top: 12px;
      max-width: 320px;
      margin-left: auto;
      margin-right: auto; } }

/* line 740, style.scss */
.btn {
  display: inline-block;
  text-decoration: none;
  font-weight: 800;
  text-align: center;
  border-radius: 40px;
  transition: 0.2s;
  cursor: pointer;
  border: 0; }

/* line 750, style.scss */
.btn--cta {
  background: var(--cta);
  color: #fff;
  padding: 15px 38px;
  font-size: 17px;
  box-shadow: 0 6px 16px rgba(255, 122, 69, 0.4); }
  @media screen and (min-width: 930.01px) and (max-width: 1200px) {
    /* line 750, style.scss */
    .btn--cta {
      padding: 5px 38px; } }
  @media screen and (min-width: 768.01px) and (max-width: 930px) {
    /* line 750, style.scss */
    .btn--cta {
      padding: 5px 38px;
      box-shadow: 0 6px 16px rgba(255, 122, 69, 0.7); } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 750, style.scss */
    .btn--cta {
      padding: 5px 20px;
      width: 100%;
      max-height: 400px;
      box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.4); } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 750, style.scss */
    .btn--cta {
      padding: 5px 20px;
      width: 100%;
      max-height: 400px;
      box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.4); } }
  @media screen and (max-width: 350px) {
    /* line 750, style.scss */
    .btn--cta {
      padding: 5px 20px;
      width: 100%;
      max-height: 400px;
      box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.4); } }

/* line 782, style.scss */
.btn--cta:hover {
  background: var(--cta-d);
  transform: translateY(-2px); }

/* line 786, style.scss */
.btn--line {
  background: #06c755;
  color: #fff;
  padding: 14px 26px;
  font-size: 15px; }

/* line 792, style.scss */
.btn--ghost {
  background: #fff;
  color: var(--teal-d);
  padding: 15px 30px;
  font-size: 16px; }
  @media screen and (min-width: 930.01px) and (max-width: 1200px) {
    /* line 792, style.scss */
    .btn--ghost {
      padding: 5px 38px; } }
  @media screen and (min-width: 768.01px) and (max-width: 930px) {
    /* line 792, style.scss */
    .btn--ghost {
      padding: 5px 38px; } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 792, style.scss */
    .btn--ghost {
      padding: 5px 38px;
      width: 100%;
      max-height: 400px;
      box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.4); } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 792, style.scss */
    .btn--ghost {
      padding: 5px 38px;
      width: 100%;
      max-height: 400px;
      box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.4); } }
  @media screen and (max-width: 350px) {
    /* line 792, style.scss */
    .btn--ghost {
      padding: 5px 38px;
      width: 100%;
      max-height: 400px;
      box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.4); } }

/* line 822, style.scss */
.btn--navy {
  background: var(--navy);
  color: #fff;
  padding: 14px 26px;
  font-size: 15px; }

/* line 828, style.scss */
.btn--block {
  display: block;
  width: 100%;
  max-width: 340px; }

/* clinic chips in hero */
/* line 835, style.scss */
.clinics-mini {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 18px; }
  @media screen and (min-width: 930.01px) and (max-width: 1200px) {
    /* line 835, style.scss */
    .clinics-mini {
      margin-top: 12px; } }
  @media screen and (min-width: 768.01px) and (max-width: 930px) {
    /* line 835, style.scss */
    .clinics-mini {
      margin-top: 12px; } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 835, style.scss */
    .clinics-mini {
      margin-top: 12px; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 835, style.scss */
    .clinics-mini {
      margin-top: 12px; } }
  @media screen and (max-width: 350px) {
    /* line 835, style.scss */
    .clinics-mini {
      margin-top: 12px; } }

/* line 857, style.scss */
.clinics-mini span {
  font-size: 12px;
  background: rgba(0, 0, 0, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.3);
  padding: 5px 12px;
  border-radius: 20px; }

/* trust strip */
/* line 866, style.scss */
.trust {
  background: #fff;
  border-bottom: 1px solid var(--line); }

/* line 870, style.scss */
.trust .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 26px;
  padding: 16px 18px;
  text-align: center; }

/* line 878, style.scss */
.trust div {
  font-size: 13px;
  color: var(--ink); }

/* line 882, style.scss */
.trust b {
  color: var(--teal);
  font-weight: 800; }

/* counter */
/* line 888, style.scss */
.counter {
  text-align: center; }

/* line 891, style.scss */
.counter .num {
  font-size: 64px;
  font-weight: 800;
  color: var(--teal);
  line-height: 1; }

/* line 897, style.scss */
.counter .num small {
  font-size: 22px; }

/* line 901, style.scss */
.counter .cap {
  color: var(--navy);
  font-weight: 700;
  margin-top: 6px; }

/* line 906, style.scss */
.counter .period {
  font-size: 12px;
  color: #7a8a90;
  margin-top: 4px; }

/* line 912, style.scss */
.counter_img {
  max-width: 510px;
  margin: 0 auto; }

/* worries */
/* line 918, style.scss */
.worry-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  max-width: 680px;
  margin: 0 auto; }

@media (min-width: 600px) {
  /* line 926, style.scss */
  .worry-grid {
    grid-template-columns: 1fr 1fr; } }
/* line 930, style.scss */
.worry {
  background: #fff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  padding: 14px 16px;
  font-size: 15px;
  display: flex;
  gap: 10px;
  align-items: flex-start; }

/* line 941, style.scss */
.worry::before {
  content: "✓";
  color: var(--teal);
  font-weight: 800;
  flex: none; }

/* line 947, style.scss */
.worry-note {
  text-align: center;
  margin-top: 22px;
  font-size: 15px;
  color: var(--navy); }

/* cards / points */
/* line 955, style.scss */
.cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px; }

@media (min-width: 768px) {
  /* line 961, style.scss */
  .cards {
    grid-template-columns: 1fr 1fr; } }
/* line 965, style.scss */
.card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 22px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03); }

/* line 972, style.scss */
.card .no {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--teal);
  color: #fff;
  font-weight: 800;
  margin-bottom: 10px; }

/* line 984, style.scss */
.card h3 {
  color: var(--navy);
  font-size: 17px;
  margin-bottom: 8px;
  line-height: 1.5; }

/* line 990, style.scss */
.card p {
  font-size: 14px;
  color: #48585f; }

/* about / mechanism */
/* line 996, style.scss */
.lead-box {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 22px;
  max-width: 760px;
  margin: 0 auto; }

/* line 1004, style.scss */
.lead-box p {
  font-size: 15px; }

/* line 1007, style.scss */
.hl {
  background: linear-gradient(transparent 60%, #ffe9a8 60%);
  font-weight: 700; }

/* line 1011, style.scss */
.figure-ph {
  /*background: repeating-linear-gradient(
    45deg,
    #eef3f4,
    #eef3f4 12px,
    #e7eef0 12px,
    #e7eef0 24px
  );*/
  color: #7a8a90;
  font-size: 13px;
  text-align: center;
  margin: 14px 0; }

/* result highlight */
/* line 1029, style.scss */
.result {
  background: var(--navy);
  color: #fff;
  border-radius: 12px;
  padding: 24px;
  text-align: center;
  max-width: 620px;
  margin: 22px auto 0; }

/* line 1038, style.scss */
.result .big {
  font-size: 32px;
  font-weight: 800;
  color: #ffe27a;
  line-height: 1.1; }
  @media screen and (min-width: 930.01px) and (max-width: 1200px) {
    /* line 1038, style.scss */
    .result .big {
      font-size: 30px; } }
  @media screen and (min-width: 768.01px) and (max-width: 930px) {
    /* line 1038, style.scss */
    .result .big {
      font-size: 26px; } }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 1038, style.scss */
    .result .big {
      font-size: 20px; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 1038, style.scss */
    .result .big {
      font-size: 20px; } }
  @media screen and (max-width: 350px) {
    /* line 1038, style.scss */
    .result .big {
      font-size: 20px; } }

/* line 1059, style.scss */
.result small {
  display: block;
  font-size: 13px;
  opacity: 0.85;
  margin-top: 8px; }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 1059, style.scss */
    .result small {
      text-align: left; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 1059, style.scss */
    .result small {
      text-align: left; } }
  @media screen and (max-width: 350px) {
    /* line 1059, style.scss */
    .result small {
      text-align: left; } }

/* comparison table */
/* line 1076, style.scss */
.tbl-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }

/* line 1080, style.scss */
table.cmp {
  border-collapse: collapse;
  width: 100%;
  min-width: 560px;
  background: #fff;
  font-size: 14px; }

/* line 1087, style.scss */
table.cmp th,
table.cmp td {
  border: 1px solid var(--line);
  padding: 12px 10px;
  text-align: center;
  vertical-align: middle; }

/* line 1094, style.scss */
table.cmp thead th {
  background: var(--navy);
  color: #fff;
  font-size: 14px; }

/* line 1099, style.scss */
table.cmp thead th.best {
  background: var(--teal); }

/* line 1102, style.scss */
table.cmp tbody th {
  background: var(--grey);
  color: var(--navy);
  text-align: left;
  white-space: nowrap; }

/* line 1108, style.scss */
table.cmp td.best {
  background: var(--teal-l);
  font-weight: 700;
  color: var(--teal-d); }

/* line 1113, style.scss */
.cmp .x {
  color: #c0504d;
  font-weight: 800; }

/* cases */
/* line 1119, style.scss */
.case {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 18px; }

/* line 1126, style.scss */
.case .ba {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: var(--line); }

/* line 1132, style.scss */
.case .ba figure {
  background: #fff; }

/* line 1135, style.scss */
.case .ba .ph {
  aspect-ratio: 4/3;
  background: #eef3f4;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #9aa; }

/* line 1143, style.scss */
.case .ba figcaption {
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  padding: 6px;
  color: #7a8a90; }

/* line 1150, style.scss */
.case .body {
  padding: 16px 18px; }

/* line 1153, style.scss */
.case .tag {
  display: inline-block;
  background: var(--teal-l);
  color: var(--teal-d);
  font-size: 12px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 20px;
  margin-bottom: 8px; }

/* line 1163, style.scss */
.case .cmt {
  font-size: 14px;
  color: #48585f; }

/* line 1167, style.scss */
.disclaimer {
  font-size: 11px;
  color: #8a9aa0;
  margin-top: 6px;
  line-height: 1.7; }

/* flow */
/* line 1175, style.scss */
.flow {
  max-width: 720px;
  margin: 0 auto;
  list-style: none; }

/* line 1180, style.scss */
.flow li {
  position: relative;
  padding: 0 0 26px 56px;
  border-left: 2px solid var(--teal);
  margin-left: 18px; }

/* line 1186, style.scss */
.flow li:last-child {
  border-left-color: transparent;
  padding-bottom: 0; }

/* line 1190, style.scss */
.flow li .n {
  position: absolute;
  left: -19px;
  top: -2px;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--teal);
  color: #fff;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center; }

/* line 1204, style.scss */
.flow li h3 {
  color: var(--navy);
  font-size: 16px;
  margin-bottom: 4px; }

/* line 1209, style.scss */
.flow li p {
  font-size: 14px;
  color: #48585f; }

/* price */
/* line 1215, style.scss */
.price-card {
  background: #fff;
  border: 2px solid var(--teal);
  border-radius: 14px;
  max-width: 560px;
  margin: 0 auto;
  overflow: hidden; }

/* line 1223, style.scss */
.price-card .top {
  background: var(--teal);
  color: #fff;
  text-align: center;
  padding: 12px;
  font-weight: 700; }

/* line 1230, style.scss */
.price-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 16px 20px;
  border-bottom: 1px solid var(--line);
  flex-wrap: wrap;
  gap: 4px; }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 1230, style.scss */
    .price-row {
      display: block; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 1230, style.scss */
    .price-row {
      display: block; } }
  @media screen and (max-width: 350px) {
    /* line 1230, style.scss */
    .price-row {
      display: block; } }

/* line 1248, style.scss */
.price-row:last-child {
  border-bottom: 0; }

/* line 1251, style.scss */
.price-row .label {
  font-weight: 700;
  color: var(--navy); }

/* line 1255, style.scss */
.price-row .label small {
  display: block;
  font-size: 12px;
  color: #7a8a90;
  font-weight: 400; }

/* line 1261, style.scss */
.price-row .yen {
  font-size: 26px;
  font-weight: 800;
  color: var(--teal-d); }

/* line 1267, style.scss */
.price-row .yen small {
  font-size: 13px;
  color: #7a8a90;
  font-weight: 400; }

/* line 1272, style.scss */
.price-note {
  font-size: 12px;
  color: #7a8a90;
  max-width: 560px;
  margin: 12px auto 0;
  line-height: 1.7; }

/* faq */
/* line 1281, style.scss */
.faq {
  max-width: 760px;
  margin: 0 auto; }

/* line 1285, style.scss */
.faq details {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 10px;
  margin-bottom: 10px;
  overflow: hidden; }

/* line 1292, style.scss */
.faq summary {
  cursor: pointer;
  list-style: none;
  padding: 16px 48px 16px 50px;
  position: relative;
  font-weight: 700;
  color: var(--navy);
  font-size: 15px; }

/* line 1301, style.scss */
.faq summary::-webkit-details-marker {
  display: none; }

/* line 1304, style.scss */
.faq summary::before {
  content: "Q";
  position: absolute;
  left: 16px;
  top: 14px;
  width: 24px;
  height: 24px;
  background: var(--teal);
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px; }

/* line 1319, style.scss */
.faq summary::after {
  content: "+";
  position: absolute;
  right: 18px;
  top: 13px;
  font-size: 22px;
  color: var(--teal);
  transition: 0.2s; }

/* line 1328, style.scss */
.faq details[open] summary::after {
  transform: rotate(45deg); }

/* line 1331, style.scss */
.faq .a {
  padding: 0 18px 18px 50px;
  font-size: 14px;
  color: #48585f; }

/* === two clinics access === */
/* line 1338, style.scss */
.clinics {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  max-width: 920px;
  margin: 0 auto; }

@media (min-width: 768px) {
  /* line 1346, style.scss */
  .clinics {
    grid-template-columns: 1fr 1fr; } }
/* line 1350, style.scss */
.clinic {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03); }

/* line 1357, style.scss */
.clinic .ttl {
  background: var(--navy);
  color: #fff;
  padding: 14px 18px; }

/* line 1362, style.scss */
.clinic .ttl h3 {
  font-size: 18px; }

/* line 1365, style.scss */
.clinic .ttl .access {
  font-size: 12px;
  color: #bcd;
  margin-top: 2px; }

/* line 1370, style.scss */
.clinic .map-ph {
  background: #eef3f4;
  border-bottom: 1px solid var(--line);
  min-height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #7a8a90;
  font-size: 13px; }
  /* line 1380, style.scss */
  .clinic .map-ph iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9; }

/* line 1386, style.scss */
.clinic .info {
  padding: 14px 18px; }

/* line 1389, style.scss */
.info-tbl {
  width: 100%;
  border-collapse: collapse;
  font-size: 13.5px; }

/* line 1394, style.scss */
.info-tbl th,
.info-tbl td {
  border-bottom: 1px solid var(--line);
  padding: 9px 4px;
  text-align: left;
  vertical-align: top; }

/* line 1401, style.scss */
.info-tbl tr:last-child th,
.info-tbl tr:last-child td {
  border-bottom: 0; }

/* line 1405, style.scss */
.info-tbl th {
  white-space: nowrap;
  color: var(--navy);
  width: 78px;
  font-weight: 700; }

/* line 1411, style.scss */
.clinic .acts {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0 18px 18px; }

/* line 1417, style.scss */
.clinic .acts a {
  flex: 1;
  text-decoration: none;
  text-align: center;
  font-weight: 800;
  border-radius: 30px;
  padding: 11px 6px;
  font-size: 14px; }

/* line 1426, style.scss */
.clinic .acts .rsv {
  background: var(--cta);
  color: #fff; }

/* line 1430, style.scss */
.clinic .acts .telpc {
  text-align: center; }

/* line 1433, style.scss */
.clinic .acts .tel {
  background: #fff;
  color: var(--navy);
  border: 1.5px solid var(--navy); }

/* final cta */
/* line 1440, style.scss */
.final {
  background: linear-gradient(135deg, #0f8a8d, #0a6e70);
  color: #fff;
  text-align: center; }

/* line 1445, style.scss */
.final h2 {
  font-size: 24px;
  line-height: 1.5; }

@media (min-width: 768px) {
  /* line 1450, style.scss */
  .final h2 {
    font-size: 32px; } }
/* line 1454, style.scss */
.final p {
  opacity: 0.95;
  width: fit-content;
  margin: 10px auto 0;
  text-align: left; }

/* line 1460, style.scss */
.final .pick {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  max-width: 760px;
  margin: 24px auto 0; }

@media (min-width: 600px) {
  /* line 1468, style.scss */
  .final .pick {
    grid-template-columns: 1fr 1fr; } }
/* line 1472, style.scss */
.final .pick .box {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 14px;
  padding: 18px; }

/* line 1478, style.scss */
.final .pick .box h3 {
  font-size: 18px;
  margin-bottom: 4px; }

/* line 1482, style.scss */
.final .pick .box .ac {
  font-size: 12px;
  opacity: 0.85;
  margin-bottom: 12px; }

/* line 1487, style.scss */
.final .pick .box .row {
  display: flex;
  flex-direction: column;
  gap: 8px; }

/* line 1492, style.scss */
.final .small {
  font-size: 13px;
  margin-top: 18px;
  opacity: 0.85; }

/* footer */
/* line 1499, style.scss */
.foot {
  background: var(--navy);
  color: #cdd9de;
  font-size: 12px;
  text-align: center;
  padding: 24px 18px; }
  @media screen and (min-width: 600.01px) and (max-width: 768px) {
    /* line 1499, style.scss */
    .foot {
      text-align: left; } }
  @media screen and (min-width: 350.1px) and (max-width: 600px) {
    /* line 1499, style.scss */
    .foot {
      text-align: left; } }
  @media screen and (max-width: 350px) {
    /* line 1499, style.scss */
    .foot {
      text-align: left; } }

/* line 1515, style.scss */
.foot b {
  color: #fff;
  display: block;
  margin-bottom: 6px; }

/* sticky bottom cta (mobile) */
/* line 1522, style.scss */
.sticky {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 50;
  background: #fff;
  border-top: 1px solid var(--line);
  display: flex;
  gap: 8px;
  padding: 8px 10px;
  box-shadow: 0 -4px 14px rgba(0, 0, 0, 0.08); }

/* line 1535, style.scss */
.sticky a {
  flex: 1;
  text-decoration: none;
  text-align: center;
  font-weight: 800;
  border-radius: 30px;
  padding: 6px 6px;
  font-size: 14px;
  display: flex;
  justify-content: center;
  align-items: center; }

/* line 1547, style.scss */
.sticky .tel {
  background: var(--navy);
  color: #fff;
  line-height: 1.3; }

/* line 1552, style.scss */
.sticky .rsv {
  background: var(--cta);
  color: #fff;
  line-height: 1.3; }

@media (min-width: 768px) {
  /* line 1558, style.scss */
  .sticky {
    display: none; }

  /* line 1561, style.scss */
  body {
    padding-bottom: 0; } }
/* line 1566, style.scss */
.telpc {
  font-size: 22px;
  line-height: 1.4;
  margin-top: 5px; }
  /* line 1571, style.scss */
  .telpc span {
    display: block;
    font-size: 16px; }

/*# sourceMappingURL=style.css.map */
