@charset "UTF-8";
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

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

h1,
h2,
h3,
h4,
h5,
h6,
a,
p,
span,
em,
small,
strong,
sub,
sup,
mark,
del,
ins,
strike,
abbr,
dfn,
blockquote,
q,
cite,
code,
pre,
ol,
ul,
li,
dl,
dt,
dd,
div,
section,
article,
main,
aside,
nav,
header,
hgroup,
footer,
img,
figure,
figcaption,
address,
time,
audio,
video,
canvas,
iframe,
details,
summary,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  border: 0;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

article,
aside,
footer,
header,
nav,
section,
main,
figure,
figcaption {
  display: block;
}

ul,
ol {
  list-style: none;
  list-style-type: none;
}

code,
kbd,
pre,
samp {
  font-family: monospace, sans-serif;
  font-size: inherit;
}

blockquote,
q {
  quotes: none;
}

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

address {
  font-style: normal;
}

/**カラー*********/
body {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  color: #000;
  line-height: 1;
  font-size: clamp(14px, 1.6666666667vw, 18px);
  letter-spacing: 0;
}

a {
  text-decoration: none;
  color: #000;
  display: inline-block;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

img {
  width: 100%;
  height: auto;
}

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

.c-page-top {
  font-weight: 600;
  padding: 50px 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url(../img/price/fv.jpg);
}

.c-page-top::before {
  content: "";
  height: 100%;
  width: 100%;
  background: rgba(255, 255, 255, 0.2);
  position: absolute;
  top: 0;
  left: 0;
}

.c-page-top__inner {
  max-width: 1300px;
  width: 92%;
  margin: 0 auto;
}

.c-page-top__breadcrumbs {
  font-size: clamp(14px, 2.0833333333vw, 16px);
  margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
}

.c-page-top__breadcrumb-link {
  padding-right: 9px;
  margin-right: 8px;
}

.c-page-top__breadcrumb-link::before {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #000;
  position: absolute;
  right: 0;
  top: 0;
}

.c-page-top__ttl {
  font-size: clamp(25.6px, 3.3333333333vw, 48px);
  color: #222;
}

.c-reserve {
  padding-bottom: clamp(48px, 6.25vw, 90px);
}

.c-reserve::before {
  content: "";
  width: 100%;
  height: calc(100% - clamp(42.6666666667px, 5.5555555556vw, 80px));
  background: #F9F9F9;
  position: absolute;
  left: 0;
  bottom: 0;
}

.c-reserve__inner {
  max-width: 1130px;
}

.c-reserve__ttl {
  font-weight: 600;
  margin-bottom: clamp(34.1333333333px, 4.4444444444vw, 64px);
}

.c-reserve__ja {
  font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  letter-spacing: 0.074em;
}

.c-reserve__en {
  color: #FAF1DE;
  font-size: clamp(33.0666666667px, 4.3055555556vw, 62px);
  line-height: 1.54;
  letter-spacing: 0.07em;
}

.c-reserve__cards {
  gap: clamp(27.2px, 3.5416666667vw, 51px) clamp(30.9333333333px, 4.0277777778vw, 58px);
}

.c-reserve__card {
  width: calc((100% - clamp(30.9333333333px, 4.0277777778vw, 58px) * 2) / 3);
  padding: clamp(20.8px, 2.7083333333vw, 39px) clamp(11.7333333333px, 1.5277777778vw, 22px) clamp(24px, 3.125vw, 45px);
  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-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.c-reserve__card::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  -webkit-filter: blur(1px);
  filter: blur(1px);
  position: absolute;
  top: 0;
  left: 0;
}

.c-reserve__card > * {
  position: relative;
}

.c-reserve__card h3 {
  font-size: clamp(18px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0.03em;
  margin-bottom: 19px;
}

.c-reserve__card p {
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(14px, 1.1111111111vw, 16px);
  font-weight: 500;
  line-height: 1.81;
  letter-spacing: 0.03em;
  margin-bottom: clamp(11.7333333333px, 1.5277777778vw, 22px);
}

.c-reserve__btn > a {
  border-radius: 90px;
  background: #484B95;
  color: #FFF;
  text-align: center;
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(16px, 1.3888888889vw, 20px);
  font-weight: 500;
  line-height: 1.65;
  letter-spacing: 0.03em;
  width: 97%;
  padding: 3px;
  border: 1px solid #484B95;
}

.c-clinic {
  padding: clamp(59.7333333333px, 7.7777777778vw, 112px) 0 clamp(56.5333333333px, 7.3611111111vw, 106px);
}

.c-clinic__inner {
  max-width: 1226px;
  width: 88% !important;
}

.c-clinic__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.c-clinic__matsuki {
  margin-bottom: clamp(54.4px, 7.0833333333vw, 102px);
}

.c-clinic__matsuki-nm {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: clamp(26.7px, 3.4722222222vw, 50px);
  margin-bottom: clamp(28.8px, 3.75vw, 54px);
}

.c-clinic__matsuki-nm h3 {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
}

.c-clinic__matsuki-nm p {
  font-size: clamp(12px, 1.4583333333vw, 21px);
  font-weight: 300;
  line-height: 1.57;
  letter-spacing: 0.06em;
  margin-top: clamp(3.2px, 0.4166666667vw, 6px);
}

.c-clinic .c-schedule {
  width: 58%;
}

.c-clinic .c-schedule__table {
  font-size: clamp(12.5px, 1.5972222222vw, 23px);
  font-weight: 300;
  letter-spacing: 0.1em;
}

.c-clinic .c-schedule__table table {
  margin-bottom: 19px;
}

.c-clinic .c-schedule__table table tr th,
.c-clinic .c-schedule__table table tr td {
  border-bottom: 1px solid #707070;
  font-weight: 300;
}

.c-clinic .c-schedule__table table tr th:nth-child(1),
.c-clinic .c-schedule__table table tr td:nth-child(1) {
  padding-left: clamp(5.3333333333px, 0.6944444444vw, 10px);
  width: 31%;
}

.c-clinic .c-schedule__table table tr th:nth-child(n+2),
.c-clinic .c-schedule__table table tr td:nth-child(n+2) {
  width: 9.8571428571%;
}

.c-clinic .c-schedule__table table tr th {
  padding: clamp(3.7333333333px, 0.4861111111vw, 7px) 0 clamp(16px, 2.0833333333vw, 30px);
}

.c-clinic .c-schedule__table table tr td {
  padding: clamp(10.6666666667px, 1.3888888889vw, 20px) 0 clamp(16px, 2.0833333333vw, 30px);
}

.c-clinic .c-schedule__table p {
  margin-left: clamp(3.2px, 0.4166666667vw, 6px);
  gap: 0;
}

.c-clinic .c-schedule__table p span:nth-child(1) {
  margin-right: clamp(29.8px, 3.8888888889vw, 56px);
}

.c-clinic .c-schedule__table p span:nth-child(2) {
  margin-right: clamp(41.6px, 5.4166666667vw, 78px);
}

.c-clinic__contact {
  width: 35.5%;
}

.c-clinic__partner-content {
  width: 60%;
}

.c-clinic__partner-content > p {
  font-size: clamp(14px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 1.81;
  /* 181.25% */
  letter-spacing: 0.03em;
  margin-bottom: clamp(17.6px, 2.2916666667vw, 33px);
}

.c-clinic__partnerTtl {
  font-weight: 600;
  letter-spacing: 0.16em;
  margin-bottom: clamp(17.0666666667px, 2.2222222222vw, 32px);
}

.c-clinic__partnerTtl p {
  font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  margin-bottom: clamp(16px, 2.0833333333vw, 30px);
}

.c-clinic__partnerTtl h3 {
  font-size: clamp(19.2px, 2.5vw, 36px);
}

.c-clinic__btn a {
  background: #F5F5F5;
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(16px, 1.3888888889vw, 20px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.03em;
  padding: clamp(8px, 1.0416666667vw, 15px) clamp(10.6666666667px, 1.3888888889vw, 20px) clamp(8px, 1.0416666667vw, 15px) clamp(22.9333333333px, 2.9861111111vw, 43px);
}

.c-clinic__btn a:hover {
  opacity: 0.8;
}

.c-clinic__btn a img {
  width: 18px;
  margin-bottom: clamp(2.1333333333px, 0.2777777778vw, 4px);
}

.c-clinic__img {
  width: 35.6%;
  margin-top: clamp(9.6px, 1.25vw, 18px);
}

.c-contactBlock {
  min-height: clamp(390px, 42.1527777778vw, 607px);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(../img/bg_contact.jpg);
}

.c-contactBlock--cta {
  padding-top: clamp(65.6px, 8.5416666667vw, 123px);
}

.c-contactBlock--intro {
  color: #FFF;
  font-weight: 600;
  padding-top: clamp(133.3333333333px, 17.3611111111vw, 250px);
}

.c-contactBlock--intro h2 {
  font-size: clamp(33.0666666667px, 4.3055555556vw, 62px);
  letter-spacing: 0.07em;
  margin-bottom: clamp(9.0666666667px, 1.1805555556vw, 17px);
}

.c-contactBlock--intro p {
  font-size: clamp(19.2px, 2.5vw, 36px);
  letter-spacing: 0.1em;
}

.c-contactBlock__inner {
  max-width: 1250px;
  width: 92% !important;
}

.c-contactBlock__ttl {
  color: #FFF;
  text-shadow: 0px 4px 14px rgba(0, 0, 0, 0.25);
  font-size: clamp(18.6666666667px, 2.4305555556vw, 35px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(13.8666666667px, 1.8055555556vw, 26px);
}

.c-contactBlock__txt {
  color: #FFF;
  text-shadow: 0px 4px 14px rgba(0, 0, 0, 0.25);
  font-size: clamp(16px, 1.3888888889vw, 20px);
  font-weight: 600;
  line-height: 1.65;
  letter-spacing: 0.07em;
  margin-bottom: clamp(18.6666666667px, 2.4305555556vw, 35px);
}

.c-contactBlock__btn {
  margin-left: clamp(8.5333333333px, 1.1111111111vw, 16px);
}

.c-contact {
  text-align: center;
  max-width: 437px;
}

.c-contact__tel {
  background: #F5F5F5;
  letter-spacing: 0.03em;
  padding: clamp(11.7333333333px, 1.5277777778vw, 22px) clamp(5.3333333333px, 0.6944444444vw, 10px) clamp(7.4666666667px, 0.9722222222vw, 14px);
  margin-bottom: clamp(9.0666666667px, 1.1805555556vw, 17px);
}

.c-contact__tel p:nth-child(1) {
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 500;
  line-height: 1.65;
  /* 165% */
  margin-bottom: clamp(5.3333333333px, 0.6944444444vw, 10px);
}

.c-contact__tel p:nth-child(2) {
  color: #484B95;
  font-family: Avenir;
  font-size: clamp(14.4px, 1.875vw, 27px);
  font-weight: 900;
  line-height: 1.22;
  /* 122.222% */
}

.c-contact__tel p:nth-child(2) a {
  color: #484B95;
  display: inline;
}

.c-contact__web {
  background: #484B95;
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 500;
  letter-spacing: 0.03em;
  padding: clamp(6.9333333333px, 0.9027777778vw, 13px) clamp(13.8666666667px, 1.8055555556vw, 26px) clamp(10.6666666667px, 1.3888888889vw, 20px);
}

.c-contact__web p {
  color: #FFF;
  line-height: 1.65;
  /* 165% */
  margin-bottom: 4px;
}

.c-contact__web a {
  line-height: 1.3;
  background: #FFF;
  padding: clamp(3.7333333333px, 0.4861111111vw, 7px) 0 clamp(4.8px, 0.625vw, 9px);
  width: 100%;
}

.c-contact__web a:hover {
  opacity: 0.8;
}

.c-ttl-en {
  color: #FAF1DE;
  font-size: clamp(33.0666666667px, 4.3055555556vw, 62px);
  font-weight: 600;
  letter-spacing: 0.07em;
}

.price,
.about,
.implant,
.access {
  background-color: #fff;
}

.p-price {
  padding: clamp(40px, 5.2083333333vw, 75px) 0 clamp(64px, 8.3333333333vw, 120px);
}

.p-price__inner {
  width: 92.2% !important;
  max-width: 1300px;
}

.p-price__area:not(:last-child) {
  margin-bottom: clamp(38.4px, 5vw, 72px);
}

.p-price h2 {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(24.5333333333px, 3.1944444444vw, 46px);
}

.p-price table {
  border-collapse: collapse;
  width: 100%;
}

.p-price table th,
.p-price table td {
  border: 3px solid #fff;
  text-align: center;
  padding: clamp(8px, 1.0416666667vw, 15px) clamp(2.6666666667px, 0.3472222222vw, 5px);
}

.p-price table th {
  background: #D9D9D9;
}

.p-price table td {
  background: #F8F8F8;
}

.p-price__fi {
  width: 36.7%;
}

.p-price__se {
  width: 19.3%;
}

.p-price__th {
  width: 45.2%;
}

.p-price h3 {
  font-size: clamp(14px, 1.1111111111vw, 16px);
  font-weight: 600;
  padding-left: clamp(15.4666666667px, 2.0138888889vw, 29px);
  margin: clamp(9.6px, 1.25vw, 18px) 0 clamp(5.8666666667px, 0.7638888889vw, 11px);
  position: relative;
}

.p-price h3::before {
  content: "";
  width: 1px;
  height: 100%;
  background: #000;
  position: absolute;
  top: 0;
  left: clamp(11.2px, 1.4583333333vw, 21px);
}

.p-concept {
  padding: clamp(60.2666666667px, 7.8472222222vw, 113px) 0 clamp(101.3333333333px, 13.1944444444vw, 190px);
}

.p-concept__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-concept__flex {
  gap: 2.4%;
}

.p-concept__ttl {
  width: 39%;
  margin-left: clamp(28.8px, 3.75vw, 54px);
  margin-top: clamp(49.0666666667px, 6.3888888889vw, 92px);
}

.p-concept__ttl p {
  top: -39%;
  left: -7%;
}

.p-concept__ttl h2 {
  font-size: clamp(33.0666666667px, 4.3055555556vw, 62px);
  font-weight: 600;
  line-height: 1.54;
  letter-spacing: 0.07em;
}

.p-concept__txt {
  font-size: clamp(11.7333333333px, 1.5277777778vw, 22px);
  font-weight: 300;
  line-height: 2.4;
  /* 240.909% */
  letter-spacing: 0.1em;
  width: 55.6%;
  gap: clamp(28.8px, 3.75vw, 54px);
}

.p-concept__txt span {
  font-weight: 600;
}

.p-message {
  padding-bottom: clamp(50.1333333333px, 6.5277777778vw, 94px);
}

.p-message__inner {
  max-width: 1330px;
  width: 92% !important;
}

.p-message__flex {
  gap: 5%;
}

.p-message__content {
  width: 39.8%;
}

.p-message__ttl {
  margin-bottom: clamp(12.8px, 1.6666666667vw, 24px);
}

.p-message__ttl p {
  top: -154%;
  left: 6%;
}

.p-message__ttl h2 {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-left: clamp(141.8666666667px, 18.4722222222vw, 266px);
}

.p-message__img {
  margin-bottom: clamp(16px, 2.0833333333vw, 30px);
}

.p-message__nm {
  text-align: center;
  font-size: clamp(13.3333333333px, 1.7361111111vw, 25px);
  font-weight: 300;
  letter-spacing: 0.03em;
}

.p-message__nm span {
  font-size: clamp(20.2666666667px, 2.6388888889vw, 38px);
  font-weight: 600;
}

.p-message__txt {
  font-size: clamp(11.7333333333px, 1.5277777778vw, 22px);
  font-weight: 300;
  line-height: 2.4;
  /* 240.909% */
  letter-spacing: 0.1em;
  width: 55.2%;
  white-space: nowrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(28.8px, 3.75vw, 54px);
}

.p-strength {
  padding-bottom: clamp(61.3333333333px, 7.9861111111vw, 115px);
}

.p-strength::before {
  content: "";
  width: 100%;
  height: calc(100% - clamp(42.6666666667px, 5.5555555556vw, 80px));
  background: #F9F9F9;
  position: absolute;
  left: 0;
  bottom: 0;
}

.p-strength__inner {
  max-width: 1240px;
  width: 88% !important;
}

.p-strength__ttl {
  text-align: center;
  margin-bottom: clamp(53.3333333333px, 6.9444444444vw, 100px);
}

.p-strength__ttl h2 {
  font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(4.2666666667px, 0.5555555556vw, 8px);
}

.p-strength__cards {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
}

.p-strength__card {
  border-radius: clamp(12.8px, 1.6666666667vw, 24px);
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  padding: 24px clamp(12.8px, 1.6666666667vw, 24px);
  gap: 2.2%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-strength__img {
  width: 29%;
}

.p-strength__content {
  width: 67.8%;
}

.p-strength__content h3 {
  font-size: clamp(15px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.16;
  /* 116.667% */
  letter-spacing: 0.03em;
  margin-bottom: clamp(20.2666666667px, 2.6388888889vw, 38px);
}

.p-strength__content p {
  font-size: clamp(14px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 1.81;
  letter-spacing: 0.1em;
}

.p-strength__content p a {
  color: #484B95;
  line-height: 29px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  display: inline;
}

.p-implant {
  padding: clamp(32.5333333333px, 4.2361111111vw, 61px) 0;
}

.p-implant__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-implant__ttl {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.07em;
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-implant__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-implant__img {
  width: 34.4%;
}

.p-implant__txt {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  width: 59.9%;
  white-space: nowrap;
  gap: clamp(24px, 3.125vw, 45px);
}

.p-policy__inner {
  width: 92% !important;
  max-width: 1300px;
}

.p-policy__ttl {
  margin-bottom: clamp(24px, 3.125vw, 45px);
}

.p-policy__ttl h2 {
  font-size: clamp(24px, 2.2222222222vw, 32px);
  font-weight: 600;
  letter-spacing: 0.07em;
}

.p-policy__txt {
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: clamp(31.4666666667px, 4.0972222222vw, 59px);
  margin-bottom: clamp(17.0666666667px, 2.2222222222vw, 32px);
}

.p-policy__txt p {
  font-size: clamp(14px, 1.3888888889vw, 20px);
}

.p-policy__txt span {
  font-size: clamp(12px, 1.1428571429vw, 16px);
  line-height: 2.87;
}

.p-policy__flow {
  background: #2A2A2A;
  color: #fff;
  padding: 23px 0;
}

.p-policy__flow > * {
  width: 92% !important;
  max-width: 1300px;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.p-policy__flow ol {
  list-style-type: decimal;
  margin-left: 3em;
  width: 52%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(6.4px, 0.8333333333vw, 12px);
}

.p-policy__flow ol li {
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 600;
  line-height: 2.3;
  letter-spacing: 0.1em;
}

.p-policy__img {
  width: 32%;
}

.p-policy__img::before {
  content: "";
  height: 100%;
  width: clamp(120.5333333333px, 15.6944444444vw, 226px);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
/*  background-image: url(../img/implant/bg_policy.png); */
  position: absolute;
  top: 0;
  right: -53%;
}

.p-flow {
  padding: clamp(76.8px, 10vw, 144px) 0 clamp(53.3333333333px, 6.9444444444vw, 100px);
}

.p-flow::before {
  content: "";
  width: 84.58%;
  height: 68.9%;
  background: #F9F9F9;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.p-flow__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-flow__ttl {
  margin-bottom: clamp(56px, 7.2916666667vw, 105px);
}

.p-flow__ttl h2 {
  font-size: clamp(24px, 2.2222222222vw, 32px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(5.3333333333px, 0.6944444444vw, 10px);
}

.p-flow__cards {
  gap: clamp(29.8666666667px, 3.8888888889vw, 56px) clamp(51.2px, 6.6666666667vw, 96px);
  margin-bottom: clamp(34.6666666667px, 4.5138888889vw, 65px);
}

.p-flow__card {
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  width: calc((100% - clamp(51.2px, 6.6666666667vw, 96px) * 2) / 3);
  padding: clamp(17.0666666667px, 2.2222222222vw, 32px) clamp(8px, 1.0416666667vw, 15px);
}

.p-flow__card:nth-child(n+1) h3 {
  margin-bottom: clamp(14.4px, 1.875vw, 27px);
}

.p-flow__card:nth-child(n+4) h3 {
  margin-bottom: clamp(6.4px, 0.8333333333vw, 12px);
  height: clamp(41.67px, 3.8659722222vw, 55.67px);
}

.p-flow__no {
  width: clamp(22.4px, 2.9166666667vw, 42px);
  height: clamp(22.4px, 2.9166666667vw, 42px);
  background: #484B95;
  color: #fff;
  font-family: Avenir;
  font-size: clamp(16px, 2.0833333333vw, 30px);
  font-weight: 500;
  letter-spacing: 0.03em;
  top: -3.6%;
  left: -6%;
}

.p-flow__img {
  margin-bottom: clamp(16px, 2.0833333333vw, 30px);
}

.p-flow h3 {
  font-size: clamp(16px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0.03em;
  white-space: nowrap;
}

.p-flow h3 span {
  font-size: clamp(13px, 1.25vw, 18px);
}

.p-flow__content p {
  font-size: clamp(13px, 0.9722222222vw, 14px);
  font-weight: 300;
  line-height: 2.07;
  letter-spacing: 0.05em;
  margin: 0 clamp(4.8px, 0.625vw, 9px);
}

.p-flow__txt {
  font-size: clamp(15px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  letter-spacing: 0.1em;
  margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
}

.p-flow__btn a {
  max-width: 582px;
  width: 90%;
  background: #484B95;
  text-align: center;
  color: #FFF;
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(16px, 1.3888888889vw, 20px);
  font-weight: 500;
  line-height: 1.45;
  /* 145% */
  letter-spacing: 0.03em;
  padding: 11px;
}

.p-flow__btn a:hover {
  opacity: 0.8;
}

.p-flow__btn a img {
  width: clamp(18px, 1.6666666667vw, 24px);
  position: absolute;
  top: 50%;
  right: 23%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.p-aboutUs {
  padding: clamp(84.2666666667px, 10.9722222222vw, 158px) 0 clamp(48px, 6.25vw, 90px);
}

.p-aboutUs__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-aboutUs__ttl {
  margin-bottom: clamp(35.2px, 4.5833333333vw, 66px);
}

.p-aboutUs__ttl p {
  left: 0.8%;
  top: -179%;
}

.p-aboutUs__ttl h2 {
  font-size: clamp(24px, 2.2222222222vw, 32px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-left: clamp(77.3333333333px, 10.0694444444vw, 145px);
}

.p-aboutUs__msg {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-left: clamp(55.4666666667px, 7.2222222222vw, 104px);
  margin-bottom: clamp(14.9333333333px, 1.9444444444vw, 28px);
}

.p-aboutUs__desc {
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  margin-left: clamp(53.8666666667px, 7.0138888889vw, 101px);
  margin-bottom: clamp(26.1333333333px, 3.4027777778vw, 49px);
}

.p-aboutUs__cards {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(44.8px, 5.8333333333vw, 84px);
}

.p-aboutUs__card-ttl {
  margin-bottom: clamp(24.5333333333px, 3.1944444444vw, 46px);
}

.p-aboutUs__card-ttl::before {
  content: "";
  height: 100%;
  background: #2A2A2A;
  margin: 0 calc(50% - 50vw);
  width: 71.8vw;
  position: absolute;
  top: 0;
}

.p-aboutUs__card-ttl h3 {
  color: #FFF;
  font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  font-weight: 600;
  letter-spacing: 0.07em;
  padding: clamp(9.6px, 1.25vw, 18px) 0 clamp(12.2666666667px, 1.5972222222vw, 23px);
}

.p-aboutUs__flex {
  margin: 0 auto;
  max-width: 1154px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-aboutUs__txt {
  font-size: clamp(13px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 2.37;
  /* 237.5% */
  letter-spacing: 0.1em;
  width: 54%;
}

.p-aboutUs__img {
  margin-top: clamp(5.3333333333px, 0.6944444444vw, 10px);
  width: 38.5%;
}

.p-aboutUs__card:nth-child(1) .p-aboutUs__flex,
.p-aboutUs__card:nth-child(3) .p-aboutUs__flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.p-aboutUs__card:nth-child(1) .p-aboutUs__card-ttl::before,
.p-aboutUs__card:nth-child(3) .p-aboutUs__card-ttl::before {
  left: 0;
}

.p-aboutUs__card:nth-child(1) .p-aboutUs__txt,
.p-aboutUs__card:nth-child(3) .p-aboutUs__txt {
  margin-left: clamp(17.6px, 2.2916666667vw, 33px);
}

.p-aboutUs__card:nth-child(2) .p-aboutUs__card-ttl {
  text-align: right;
}

.p-aboutUs__card:nth-child(2) .p-aboutUs__card-ttl::before {
  right: 0;
}

.p-aboutUs__card:nth-child(2) .p-aboutUs__txt {
  width: 58%;
  white-space: nowrap;
}

.p-root {
  padding: clamp(39.4666666667px, 5.1388888889vw, 74px) 0 clamp(53.3333333333px, 6.9444444444vw, 100px);
}

.p-root__inner {
  max-width: 1320px;
  width: 92% !important;
}

.p-root__area h2 {
  font-size: clamp(22px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-left: clamp(6.4px, 0.8333333333vw, 12px);
}

.p-root__area:not(:last-child) {
  margin-bottom: clamp(40.5333333333px, 5.2777777778vw, 76px);
}

.p-root__area--loc {
  margin-bottom: clamp(53.3333333333px, 6.9444444444vw, 100px);
}

.p-root__flex {
  margin-top: clamp(32px, 4.1666666667vw, 60px);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-root__contnet {
  width: 49.6%;
}

.p-root__contnet > h3 {
  color: #FFF;
  font-size: clamp(18px, 1.6666666667vw, 24px);
  font-weight: 600;
  letter-spacing: 0.07em;
  max-width: clamp(100.2666666667px, 13.0555555556vw, 188px);
  background: #2A2A2A;
  padding: clamp(5.3333333333px, 0.6944444444vw, 10px);
  margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
}

.p-root__add {
  font-size: clamp(18px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.75;
  /* 175% */
  letter-spacing: 0.07em;
  margin-bottom: clamp(14.4px, 1.875vw, 27px);
}

.p-root__block {
  margin-left: clamp(39.4666666667px, 5.1388888889vw, 74px);
}

.p-root__block ul {
  gap: clamp(7.4666666667px, 0.9722222222vw, 14px);
  margin-bottom: clamp(14.9333333333px, 1.9444444444vw, 28px);
}

.p-root__block ul li {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
}

.p-root__block ul li:nth-child(1) .p-root__label {
  background: #007429;
}

.p-root__block ul li:nth-child(2) .p-root__label {
  background: #8F0000;
}

.p-root__block ul li p {
  font-size: clamp(13px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 1.7;
  letter-spacing: 0.07em;
}

.p-root__block ul li p > * {
  font-size: clamp(15px, 1.25vw, 18px);
  font-weight: 600;
}

.p-root__block ul li p > * > * {
  font-size: clamp(18px, 1.6666666667vw, 24px);
}

.p-root__label {
  color: #FFF;
  font-size: clamp(15px, 1.25vw, 18px);
  font-weight: 600;
  letter-spacing: 0.07em;
  min-width: clamp(100px, 10.3472222222vw, 149px);
  text-align: center;
  padding: clamp(3.7333333333px, 0.4861111111vw, 7px);
}

.p-root__car {
  border: clamp(3px, 0.4166666667vw, 6px) solid #2A2A2A;
  padding: clamp(21.8666666667px, 2.8472222222vw, 41px) clamp(18px, 2.3611111111vw, 34px) clamp(23.4666666667px, 3.0555555556vw, 44px) 5px;
}

.p-root__car::before {
  content: "";
  width: clamp(4px, 0.5555555556vw, 8px);
  height: 57.8%;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: -1.2%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.p-root__car h3 {
  font-size: clamp(15px, 1.25vw, 18px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(5.3333333333px, 0.6944444444vw, 10px);
}

.p-root__car p {
  font-size: clamp(12px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.07em;
}

.p-root__map {
  width: 46%;
}

.p-root__map iframe {
  height: clamp(282.1333333333px, 36.7361111111vw, 529px);
  width: 100%;
}

.p-root__cards {
  gap: clamp(29.8666666667px, 3.8888888889vw, 56px) clamp(51.2px, 6.6666666667vw, 96px);
  margin-top: clamp(48px, 6.25vw, 90px);
  margin-left: clamp(14.9333333333px, 1.9444444444vw, 28px);
}

.p-root__card {
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  width: calc((100% - clamp(51.2px, 6.6666666667vw, 96px) * 2) / 3);
  padding: clamp(17.0666666667px, 2.2222222222vw, 32px) clamp(8px, 1.0416666667vw, 15px);
}

.p-root__no {
  width: clamp(22.4px, 2.9166666667vw, 42px);
  height: clamp(22.4px, 2.9166666667vw, 42px);
  background: #484B95;
  color: #fff;
  font-family: Avenir;
  font-size: clamp(16px, 2.0833333333vw, 30px);
  font-weight: 500;
  letter-spacing: 0.03em;
  top: -3.6%;
  left: -6%;
}

.p-root__img {
  margin-bottom: clamp(13.3333333333px, 1.7361111111vw, 25px);
}

.p-root__content {
  margin: 0 3px;
}

.p-root__content p {
  font-size: clamp(13px, 0.9722222222vw, 14px);
  font-weight: 300;
  line-height: 2.07;
  letter-spacing: 0.05em;
}

.p-root__list {
  max-width: 1142px;
  margin: clamp(44.2666666667px, 5.7638888889vw, 83px) auto 0;
  gap: clamp(26.6666666667px, 3.4722222222vw, 50px);
}

.p-root__unit h3 {
  font-size: clamp(18px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.07em;
}

.p-root__unit:nth-child(1) .p-root__icon {
  width: clamp(36px, 2.9166666667vw, 42px);
}

.p-root__unit:nth-child(2) .p-root__icon {
  width: clamp(39px, 3.1642361111vw, 45.565px);
}

.p-root__unit-ttl {
  margin-left: clamp(18.1333333333px, 2.3611111111vw, 34px);
  gap: clamp(25.6px, 3.3333333333vw, 48px);
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-facility {
  padding: 0 0 clamp(58.6666666667px, 7.6388888889vw, 110px);
}

.p-facility__inner {
  max-width: 1050px;
}

.p-facility__ttl {
  margin-bottom: clamp(48.5333333333px, 6.3194444444vw, 91px);
}

.p-facility__ttl h2 {
  font-size: clamp(22px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(21.3333333333px, 2.7777777778vw, 40px);
}

.p-facility__cards {
  gap: clamp(17.6px, 2.2916666667vw, 33px) clamp(37.2266666667px, 4.8472222222vw, 69.8px);
}

.p-facility__card {
  width: calc((100% - clamp(37.2266666667px, 4.8472222222vw, 69.8px)) / 2);
}

.p-facility__card h3 {
  font-size: clamp(18px, 1.8055555556vw, 26px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(8.5333333333px, 1.1111111111vw, 16px);
  margin-left: clamp(12.8px, 1.6666666667vw, 24px);
}

.p-opp {
  padding-bottom: clamp(61.3333333333px, 7.9861111111vw, 115px);
}

.p-opp__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-opp__ttl {
  font-size: clamp(22px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(37.8666666667px, 4.9305555556vw, 71px);
}

.p-opp__cards {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
  margin: 0 auto;
  max-width: 1240px;
}

.p-opp__card {
  border-radius: clamp(12.8px, 1.6666666667vw, 24px);
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  padding: 24px clamp(12.8px, 1.6666666667vw, 24px);
  gap: 2.2%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-opp__img {
  width: 29%;
  border-right: clamp(1.3px, 0.1597222222vw, 2.3px) solid #484B95;
}

.p-opp__content {
  width: 67.8%;
}

.p-opp__content h3 {
  font-size: clamp(15px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.16;
  /* 116.667% */
  letter-spacing: 0.03em;
  margin-bottom: clamp(20.2666666667px, 2.6388888889vw, 38px);
}

.p-opp__txt {
  font-size: clamp(14px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 1.81;
  letter-spacing: 0.1em;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(13.8666666667px, 1.8055555556vw, 26px);
}

/**カラー*********/
.c-page-top {
  font-weight: 600;
  padding: 50px 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-image: url(../img/price/fv.jpg);
}

.c-page-top::before {
  content: "";
  height: 100%;
  width: 100%;
  background: rgba(255, 255, 255, 0.2);
  position: absolute;
  top: 0;
  left: 0;
}

.c-page-top__inner {
  max-width: 1300px;
  width: 92%;
  margin: 0 auto;
}

.c-page-top__breadcrumbs {
  font-size: clamp(14px, 2.0833333333vw, 16px);
  margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
}

.c-page-top__breadcrumb-link {
  padding-right: 9px;
  margin-right: 8px;
}

.c-page-top__breadcrumb-link::before {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #000;
  position: absolute;
  right: 0;
  top: 0;
}

.c-page-top__ttl {
  font-size: clamp(25.6px, 3.3333333333vw, 48px);
  color: #222;
}

.c-reserve {
  padding-bottom: clamp(48px, 6.25vw, 90px);
}

.c-reserve::before {
  content: "";
  width: 100%;
  height: calc(100% - clamp(42.6666666667px, 5.5555555556vw, 80px));
  background: #F9F9F9;
  position: absolute;
  left: 0;
  bottom: 0;
}

.c-reserve__inner {
  max-width: 1130px;
}

.c-reserve__ttl {
  font-weight: 600;
  margin-bottom: clamp(34.1333333333px, 4.4444444444vw, 64px);
}

.c-reserve__ja {
  font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  letter-spacing: 0.074em;
}

.c-reserve__en {
  color: #FAF1DE;
  font-size: clamp(33.0666666667px, 4.3055555556vw, 62px);
  line-height: 1.54;
  letter-spacing: 0.07em;
}

.c-reserve__cards {
  gap: clamp(27.2px, 3.5416666667vw, 51px) clamp(30.9333333333px, 4.0277777778vw, 58px);
}

.c-reserve__card {
  width: calc((100% - clamp(30.9333333333px, 4.0277777778vw, 58px) * 2) / 3);
  padding: clamp(20.8px, 2.7083333333vw, 39px) clamp(11.7333333333px, 1.5277777778vw, 22px) clamp(24px, 3.125vw, 45px);
  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-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.c-reserve__card::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  -webkit-filter: blur(1px);
  filter: blur(1px);
  position: absolute;
  top: 0;
  left: 0;
}

.c-reserve__card > * {
  position: relative;
}

.c-reserve__card h3 {
  font-size: clamp(18px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0.03em;
  margin-bottom: 19px;
}

.c-reserve__card p {
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(14px, 1.1111111111vw, 16px);
  font-weight: 500;
  line-height: 1.81;
  letter-spacing: 0.03em;
  margin-bottom: clamp(11.7333333333px, 1.5277777778vw, 22px);
}

.c-reserve__btn > a {
  border-radius: 90px;
  background: #484B95;
  color: #FFF;
  text-align: center;
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(16px, 1.3888888889vw, 20px);
  font-weight: 500;
  line-height: 1.65;
  letter-spacing: 0.03em;
  width: 97%;
  padding: 3px;
  border: 1px solid #484B95;
}

.c-clinic {
  padding: clamp(59.7333333333px, 7.7777777778vw, 112px) 0 clamp(56.5333333333px, 7.3611111111vw, 106px);
}

.c-clinic__inner {
  max-width: 1226px;
  width: 88% !important;
}

.c-clinic__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.c-clinic__matsuki {
  margin-bottom: clamp(54.4px, 7.0833333333vw, 102px);
}

.c-clinic__matsuki-nm {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: clamp(26.7px, 3.4722222222vw, 50px);
  margin-bottom: clamp(28.8px, 3.75vw, 54px);
}

.c-clinic__matsuki-nm h3 {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
}

.c-clinic__matsuki-nm p {
  font-size: clamp(12px, 1.4583333333vw, 21px);
  font-weight: 300;
  line-height: 1.57;
  letter-spacing: 0.06em;
  margin-top: clamp(3.2px, 0.4166666667vw, 6px);
}

.c-clinic .c-schedule {
  width: 58%;
}

.c-clinic .c-schedule__table {
  font-size: clamp(12.5px, 1.5972222222vw, 23px);
  font-weight: 300;
  letter-spacing: 0.1em;
}

.c-clinic .c-schedule__table table {
  margin-bottom: 19px;
}

.c-clinic .c-schedule__table table tr th,
.c-clinic .c-schedule__table table tr td {
  border-bottom: 1px solid #707070;
  font-weight: 300;
}

.c-clinic .c-schedule__table table tr th:nth-child(1),
.c-clinic .c-schedule__table table tr td:nth-child(1) {
  padding-left: clamp(5.3333333333px, 0.6944444444vw, 10px);
  width: 31%;
}

.c-clinic .c-schedule__table table tr th:nth-child(n+2),
.c-clinic .c-schedule__table table tr td:nth-child(n+2) {
  width: 9.8571428571%;
}

.c-clinic .c-schedule__table table tr th {
  padding: clamp(3.7333333333px, 0.4861111111vw, 7px) 0 clamp(16px, 2.0833333333vw, 30px);
}

.c-clinic .c-schedule__table table tr td {
  padding: clamp(10.6666666667px, 1.3888888889vw, 20px) 0 clamp(16px, 2.0833333333vw, 30px);
}

.c-clinic .c-schedule__table p {
  margin-left: clamp(3.2px, 0.4166666667vw, 6px);
  gap: 0;
}

.c-clinic .c-schedule__table p span:nth-child(1) {
  margin-right: clamp(29.8px, 3.8888888889vw, 56px);
}

.c-clinic .c-schedule__table p span:nth-child(2) {
  margin-right: clamp(41.6px, 5.4166666667vw, 78px);
}

.c-clinic__contact {
  width: 35.5%;
}

.c-clinic__partner-content {
  width: 60%;
}

.c-clinic__partner-content > p {
  font-size: clamp(14px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 1.81;
  /* 181.25% */
  letter-spacing: 0.03em;
  margin-bottom: clamp(17.6px, 2.2916666667vw, 33px);
}

.c-clinic__partnerTtl {
  font-weight: 600;
  letter-spacing: 0.16em;
  margin-bottom: clamp(17.0666666667px, 2.2222222222vw, 32px);
}

.c-clinic__partnerTtl p {
  font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  margin-bottom: clamp(16px, 2.0833333333vw, 30px);
}

.c-clinic__partnerTtl h3 {
  font-size: clamp(19.2px, 2.5vw, 36px);
}

.c-clinic__btn a {
  background: #F5F5F5;
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(16px, 1.3888888889vw, 20px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.03em;
  padding: clamp(8px, 1.0416666667vw, 15px) clamp(10.6666666667px, 1.3888888889vw, 20px) clamp(8px, 1.0416666667vw, 15px) clamp(22.9333333333px, 2.9861111111vw, 43px);
}

.c-clinic__btn a:hover {
  opacity: 0.8;
}

.c-clinic__btn a img {
  width: 18px;
  margin-bottom: clamp(2.1333333333px, 0.2777777778vw, 4px);
}

.c-clinic__img {
  width: 35.6%;
  margin-top: clamp(9.6px, 1.25vw, 18px);
}

.c-contactBlock {
  min-height: clamp(390px, 42.1527777778vw, 607px);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(../img/bg_contact.jpg);
}

.c-contactBlock--cta {
  padding-top: clamp(65.6px, 8.5416666667vw, 123px);
}

.c-contactBlock--intro {
  color: #FFF;
  font-weight: 600;
  padding-top: clamp(133.3333333333px, 17.3611111111vw, 250px);
}

.c-contactBlock--intro h2 {
  font-size: clamp(33.0666666667px, 4.3055555556vw, 62px);
  letter-spacing: 0.07em;
  margin-bottom: clamp(9.0666666667px, 1.1805555556vw, 17px);
}

.c-contactBlock--intro p {
  font-size: clamp(19.2px, 2.5vw, 36px);
  letter-spacing: 0.1em;
}

.c-contactBlock__inner {
  max-width: 1250px;
  width: 92% !important;
}

.c-contactBlock__ttl {
  color: #FFF;
  text-shadow: 0px 4px 14px rgba(0, 0, 0, 0.25);
  font-size: clamp(18.6666666667px, 2.4305555556vw, 35px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(13.8666666667px, 1.8055555556vw, 26px);
}

.c-contactBlock__txt {
  color: #FFF;
  text-shadow: 0px 4px 14px rgba(0, 0, 0, 0.25);
  font-size: clamp(16px, 1.3888888889vw, 20px);
  font-weight: 600;
  line-height: 1.65;
  letter-spacing: 0.07em;
  margin-bottom: clamp(18.6666666667px, 2.4305555556vw, 35px);
}

.c-contactBlock__btn {
  margin-left: clamp(8.5333333333px, 1.1111111111vw, 16px);
}

.c-contact {
  text-align: center;
  max-width: 437px;
}

.c-contact__tel {
  background: #F5F5F5;
  letter-spacing: 0.03em;
  padding: clamp(11.7333333333px, 1.5277777778vw, 22px) clamp(5.3333333333px, 0.6944444444vw, 10px) clamp(7.4666666667px, 0.9722222222vw, 14px);
  margin-bottom: clamp(9.0666666667px, 1.1805555556vw, 17px);
}

.c-contact__tel p:nth-child(1) {
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 500;
  line-height: 1.65;
  /* 165% */
  margin-bottom: clamp(5.3333333333px, 0.6944444444vw, 10px);
}

.c-contact__tel p:nth-child(2) {
  color: #484B95;
  font-family: Avenir;
  font-size: clamp(14.4px, 1.875vw, 27px);
  font-weight: 900;
  line-height: 1.22;
  /* 122.222% */
}

.c-contact__tel p:nth-child(2) a {
  color: #484B95;
  display: inline;
}

.c-contact__web {
  background: #484B95;
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 500;
  letter-spacing: 0.03em;
  padding: clamp(6.9333333333px, 0.9027777778vw, 13px) clamp(13.8666666667px, 1.8055555556vw, 26px) clamp(10.6666666667px, 1.3888888889vw, 20px);
}

.c-contact__web p {
  color: #FFF;
  line-height: 1.65;
  /* 165% */
  margin-bottom: 4px;
}

.c-contact__web a {
  line-height: 1.3;
  background: #FFF;
  padding: clamp(3.7333333333px, 0.4861111111vw, 7px) 0 clamp(4.8px, 0.625vw, 9px);
  width: 100%;
}

.c-contact__web a:hover {
  opacity: 0.8;
}

.c-ttl-en {
  color: #FAF1DE;
  font-size: clamp(33.0666666667px, 4.3055555556vw, 62px);
  font-weight: 600;
  letter-spacing: 0.07em;
}

.price,
.about,
.caries,
.occlusion,
.denture,
.implant,
.orthodonic,
.perio,
.cosmetic,
.child,
.access {
  background-color: #fff;
}

.p-price {
  padding: clamp(40px, 5.2083333333vw, 75px) 0 clamp(64px, 8.3333333333vw, 120px);
}

.p-price__inner {
  width: 92.2% !important;
  max-width: 1300px;
}

.p-price__area:not(:last-child) {
  margin-bottom: clamp(38.4px, 5vw, 72px);
}

.p-price h2 {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(24.5333333333px, 3.1944444444vw, 46px);
}

.p-price table {
  border-collapse: collapse;
  width: 100%;
}

.p-price table th,
.p-price table td {
  border: 3px solid #fff;
  text-align: center;
  padding: clamp(8px, 1.0416666667vw, 15px) clamp(2.6666666667px, 0.3472222222vw, 5px);
}

.p-price table th {
  background: #D9D9D9;
}

.p-price table td {
  background: #F8F8F8;
}

.p-price__fi {
  width: 36.7%;
}

.p-price__se {
  width: 19.3%;
}

.p-price__th {
  width: 45.2%;
}

.p-price h3 {
  font-size: clamp(14px, 1.1111111111vw, 16px);
  font-weight: 600;
  padding-left: clamp(15.4666666667px, 2.0138888889vw, 29px);
  margin: clamp(9.6px, 1.25vw, 18px) 0 clamp(5.8666666667px, 0.7638888889vw, 11px);
  position: relative;
}

.p-price h3::before {
  content: "";
  width: 1px;
  height: 100%;
  background: #000;
  position: absolute;
  top: 0;
  left: clamp(11.2px, 1.4583333333vw, 21px);
}

.p-concept {
  padding: clamp(60.2666666667px, 7.8472222222vw, 113px) 0 clamp(101.3333333333px, 13.1944444444vw, 190px);
}

.p-concept__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-concept__flex {
  gap: 2.4%;
}

.p-concept__ttl {
  width: 39%;
  margin-left: clamp(28.8px, 3.75vw, 54px);
  margin-top: clamp(49.0666666667px, 6.3888888889vw, 92px);
}

.p-concept__ttl p {
  top: -39%;
  left: -7%;
}

.p-concept__ttl h2 {
  font-size: clamp(33.0666666667px, 4.3055555556vw, 62px);
  font-weight: 600;
  line-height: 1.54;
  letter-spacing: 0.07em;
}

.p-concept__txt {
  font-size: clamp(11.7333333333px, 1.5277777778vw, 22px);
  font-weight: 300;
  line-height: 2.4;
  /* 240.909% */
  letter-spacing: 0.1em;
  width: 55.6%;
  gap: clamp(28.8px, 3.75vw, 54px);
}

.p-concept__txt span {
  font-weight: 600;
}

.p-message {
  padding-bottom: clamp(50.1333333333px, 6.5277777778vw, 94px);
}

.p-message__inner {
  max-width: 1330px;
  width: 92% !important;
}

.p-message__flex {
  gap: 5%;
}

.p-message__content {
  width: 39.8%;
}

.p-message__ttl {
  margin-bottom: clamp(12.8px, 1.6666666667vw, 24px);
}

.p-message__ttl p {
  top: -154%;
  left: 6%;
}

.p-message__ttl h2 {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-left: clamp(141.8666666667px, 18.4722222222vw, 266px);
}

.p-message__img {
  margin-bottom: clamp(16px, 2.0833333333vw, 30px);
}

.p-message__nm {
  text-align: center;
  font-size: clamp(13.3333333333px, 1.7361111111vw, 25px);
  font-weight: 300;
  letter-spacing: 0.03em;
}

.p-message__nm span {
  font-size: clamp(20.2666666667px, 2.6388888889vw, 38px);
  font-weight: 600;
}

.p-message__txt {
  font-size: clamp(11.7333333333px, 1.5277777778vw, 22px);
  font-weight: 300;
  line-height: 2.4;
  /* 240.909% */
  letter-spacing: 0.1em;
  width: 55.2%;
  white-space: nowrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(28.8px, 3.75vw, 54px);
}

.p-strength {
  padding-bottom: clamp(61.3333333333px, 7.9861111111vw, 115px);
}

.p-strength::before {
  content: "";
  width: 100%;
  height: calc(100% - clamp(42.6666666667px, 5.5555555556vw, 80px));
  background: #F9F9F9;
  position: absolute;
  left: 0;
  bottom: 0;
}

.p-strength__inner {
  max-width: 1240px;
  width: 88% !important;
}

.p-strength__ttl {
  text-align: center;
  margin-bottom: clamp(53.3333333333px, 6.9444444444vw, 100px);
}

.p-strength__ttl h2 {
  font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(4.2666666667px, 0.5555555556vw, 8px);
}

.p-strength__cards {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
}

.p-strength__card {
  border-radius: clamp(12.8px, 1.6666666667vw, 24px);
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  padding: 24px clamp(12.8px, 1.6666666667vw, 24px);
  gap: 2.2%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-strength__img {
  width: 29%;
}

.p-strength__content {
  width: 67.8%;
}

.p-strength__content h3 {
  font-size: clamp(15px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.16;
  /* 116.667% */
  letter-spacing: 0.03em;
  margin-bottom: clamp(20.2666666667px, 2.6388888889vw, 38px);
}

.p-strength__content p {
  font-size: clamp(14px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 1.81;
  letter-spacing: 0.1em;
}

.p-strength__content p a {
  color: #484B95;
  line-height: 29px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  display: inline;
}

.p-caries {
  padding: clamp(32.5333333333px, 4.2361111111vw, 61px) 0;
}

.p-caries__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-caries__ttl {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.07em;
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-caries__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-caries__img {
  width: 34.4%;
}

.p-caries__txt {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  width: 59.9%;
  white-space: nowrap;
  gap: clamp(24px, 3.125vw, 45px);
}

.p-occlusion {
  padding: clamp(32.5333333333px, 4.2361111111vw, 61px) 0;
}

.p-occlusion__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-occlusion__ttl {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.07em;
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-occlusion__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-occlusion__img {
  width: 34.4%;
}

.p-occlusion__txt {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  width: 59.9%;
  white-space: nowrap;
  gap: clamp(24px, 3.125vw, 45px);
}

.p-denture {
  padding: clamp(32.5333333333px, 4.2361111111vw, 61px) 0;
}

.p-denture__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-denture__ttl {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.07em;
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-denture__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-denture__img {
  width: 34.4%;
}

.p-denture__txt {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  width: 59.9%;
  white-space: nowrap;
  gap: clamp(24px, 3.125vw, 45px);
}

.p-implant {
  padding: clamp(32.5333333333px, 4.2361111111vw, 61px) 0;
}

.p-implant__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-implant__ttl {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.07em;
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-implant__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-implant__img {
  width: 34.4%;
}

.p-implant__txt {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  width: 59.9%;
  white-space: nowrap;
  gap: clamp(24px, 3.125vw, 45px);
}

.p-orthodonic {
  padding: clamp(32.5333333333px, 4.2361111111vw, 61px) 0;
}

.p-orthodonic__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-orthodonic__ttl {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.07em;
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-orthodonic__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-orthodonic__img {
  width: 34.4%;
}

.p-orthodonic__txt {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  width: 59.9%;
  white-space: nowrap;
  gap: clamp(24px, 3.125vw, 45px);
}

.p-perio {
  padding: clamp(32.5333333333px, 4.2361111111vw, 61px) 0;
}

.p-perio__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-perio__ttl {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.07em;
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-perio__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-perio__img {
  width: 34.4%;
}

.p-perio__txt {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  width: 59.9%;
  white-space: nowrap;
  gap: clamp(24px, 3.125vw, 45px);
}

.p-cosmetic {
  padding: clamp(32.5333333333px, 4.2361111111vw, 61px) 0;
}

.p-cosmetic__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-cosmetic__ttl {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.07em;
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-cosmetic__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-cosmetic__img {
  width: 34.4%;
}

.p-cosmetic__txt {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  width: 59.9%;
  white-space: nowrap;
  gap: clamp(24px, 3.125vw, 45px);
}

.p-child {
  padding: clamp(32.5333333333px, 4.2361111111vw, 61px) 0;
}

.p-child__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-child__ttl {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  line-height: 1.7;
  letter-spacing: 0.07em;
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-child__flex {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-child__img {
  width: 34.4%;
}

.p-child__txt {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  width: 59.9%;
  white-space: nowrap;
  gap: clamp(24px, 3.125vw, 45px);
}

.p-policy__inner {
  width: 92% !important;
  max-width: 1300px;
}

.p-policy__ttl {
  margin-bottom: clamp(24px, 3.125vw, 45px);
}

.p-policy__ttl h2 {
  font-size: clamp(24px, 2.2222222222vw, 32px);
  font-weight: 600;
  letter-spacing: 0.07em;
}

.p-policy__txt {
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: clamp(31.4666666667px, 4.0972222222vw, 59px);
  margin-bottom: clamp(17.0666666667px, 2.2222222222vw, 32px);
}

.p-policy__txt p {
  font-size: clamp(14px, 1.3888888889vw, 20px);
}

.p-policy__txt span {
  font-size: clamp(12px, 1.1428571429vw, 16px);
  line-height: 2.87;
}

.p-policy__flow {
  background: #2A2A2A;
  color: #fff;
  padding: 23px 0;
}

.p-policy__flow > * {
  width: 92% !important;
  max-width: 1300px;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.p-policy__flow ol {
  list-style-type: decimal;
  margin-left: 3em;
  width: 52%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(6.4px, 0.8333333333vw, 12px);
}

.p-policy__flow ol li {
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 600;
  line-height: 2.3;
  letter-spacing: 0.1em;
}

.p-policy__img {
  width: 32%;
}

.p-policy__img::before {
  content: "";
  height: 100%;
  width: clamp(120.5333333333px, 15.6944444444vw, 226px);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  /*  background-image: url(../img/common/bg_policy.png); */
  position: absolute;
  top: 0;
  right: -53%;
}

.p-policy__caries {
  width: 60%;
  margin-right: 3.5rem;
}

.p-policy__perio {
  width: 80% !important;
  padding-left: 3rem;
}

.p-policy__perio-sub {
  width: 60% !important;
  padding-left: 3rem;
}

.p-policy__cosmetic {
  width: 80% !important;
}

.p-policy__child {
  width: 80% !important;
}

.p-flow {
  padding: clamp(76.8px, 10vw, 144px) 0 clamp(53.3333333333px, 6.9444444444vw, 100px);
}

.p-flow::before {
  content: "";
  width: 84.58%;
  height: 68.9%;
  background: #F9F9F9;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.p-flow__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-flow__ttl {
  margin-bottom: clamp(56px, 7.2916666667vw, 105px);
}

.p-flow__ttl h2 {
  font-size: clamp(24px, 2.2222222222vw, 32px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(5.3333333333px, 0.6944444444vw, 10px);
}

.p-flow__cards {
  gap: clamp(29.8666666667px, 3.8888888889vw, 56px) clamp(51.2px, 6.6666666667vw, 96px);
  margin-bottom: clamp(34.6666666667px, 4.5138888889vw, 65px);
}

.p-flow__card {
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  width: calc((100% - clamp(51.2px, 6.6666666667vw, 96px) * 2) / 3);
  padding: clamp(17.0666666667px, 2.2222222222vw, 32px) clamp(8px, 1.0416666667vw, 15px);
}

.p-flow__card:nth-child(n+1) h3 {
  margin-bottom: clamp(14.4px, 1.875vw, 27px);
}

.p-flow__card:nth-child(n+4) h3 {
  margin-bottom: clamp(6.4px, 0.8333333333vw, 12px);
  height: clamp(41.67px, 3.8659722222vw, 55.67px);
}

.p-flow__no {
  width: clamp(22.4px, 2.9166666667vw, 42px);
  height: clamp(22.4px, 2.9166666667vw, 42px);
  background: #484B95;
  color: #fff;
  font-family: Avenir;
  font-size: clamp(16px, 2.0833333333vw, 30px);
  font-weight: 500;
  letter-spacing: 0.03em;
  top: -3.6%;
  left: -6%;
}

.p-flow__img {
  margin-bottom: clamp(16px, 2.0833333333vw, 30px);
}

.p-flow h3 {
  font-size: clamp(16px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.16;
  letter-spacing: 0.03em;
  white-space: nowrap;
}

.p-flow h3 span {
  font-size: clamp(13px, 1.25vw, 18px);
}

.p-flow__content p {
  font-size: clamp(13px, 0.9722222222vw, 14px);
  font-weight: 300;
  line-height: 2.07;
  letter-spacing: 0.05em;
  margin: 0 clamp(4.8px, 0.625vw, 9px);
}

.p-flow__txt {
  font-size: clamp(15px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  letter-spacing: 0.1em;
  margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
}

.p-flow__btn a {
  max-width: 582px;
  width: 90%;
  background: #484B95;
  text-align: center;
  color: #FFF;
  font-family: "Zen Kaku Gothic Antique", serif;
  font-size: clamp(16px, 1.3888888889vw, 20px);
  font-weight: 500;
  line-height: 1.45;
  /* 145% */
  letter-spacing: 0.03em;
  padding: 11px;
}

.p-flow__btn a:hover {
  opacity: 0.8;
}

.p-flow__btn a img {
  width: clamp(18px, 1.6666666667vw, 24px);
  position: absolute;
  top: 50%;
  right: 23%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.p-flow__block__flex {
  margin: 0 auto 100px;
  max-width: 1154px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: flex-start;
  -webkit-box-align: center;
}

.p-flow__block__txt {
  font-size: clamp(13px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 2.37;
  /* 237.5% */
  letter-spacing: 0.1em;
  width: 54%;
  margin: auto;
}

.p-flow__block__txt h3 {
  margin-bottom: 10px;
}

.p-flow__block__img {
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  width: calc((100% - clamp(51.2px, 6.6666666667vw, 96px) * 2) / 3);
  padding: clamp(17.0666666667px, 2.2222222222vw, 32px) clamp(8px, 1.0416666667vw, 15px);
  margin-right: 1.25rem;
  margin-top: clamp(5.3333333333px, 0.6944444444vw, 10px);
}

.p-aboutUs {
  padding: clamp(84.2666666667px, 10.9722222222vw, 158px) 0 clamp(48px, 6.25vw, 90px);
}

.p-aboutUs__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-aboutUs__ttl {
  margin-bottom: clamp(35.2px, 4.5833333333vw, 66px);
}

.p-aboutUs__ttl p {
  left: 0.8%;
  top: -179%;
}

.p-aboutUs__ttl h2 {
  font-size: clamp(24px, 2.2222222222vw, 32px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-left: clamp(77.3333333333px, 10.0694444444vw, 145px);
}

.p-aboutUs__msg {
  font-size: clamp(19.2px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-left: clamp(55.4666666667px, 7.2222222222vw, 104px);
  margin-bottom: clamp(14.9333333333px, 1.9444444444vw, 28px);
}

.p-aboutUs__desc {
  font-size: clamp(14px, 1.3888888889vw, 20px);
  font-weight: 300;
  line-height: 2.3;
  /* 230% */
  letter-spacing: 0.1em;
  margin-left: clamp(53.8666666667px, 7.0138888889vw, 101px);
  margin-bottom: clamp(26.1333333333px, 3.4027777778vw, 49px);
}

.p-aboutUs__cards {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(44.8px, 5.8333333333vw, 84px);
}

.p-aboutUs__card-ttl {
  margin-bottom: clamp(24.5333333333px, 3.1944444444vw, 46px);
}

.p-aboutUs__card-ttl::before {
  content: "";
  height: 100%;
  background: #2A2A2A;
  margin: 0 calc(50% - 50vw);
  width: 71.8vw;
  position: absolute;
  top: 0;
}

.p-aboutUs__card-ttl h3 {
  color: #FFF;
  font-size: clamp(17.0666666667px, 2.2222222222vw, 32px);
  font-weight: 600;
  letter-spacing: 0.07em;
  padding: clamp(9.6px, 1.25vw, 18px) 0 clamp(12.2666666667px, 1.5972222222vw, 23px);
}

.p-aboutUs__flex {
  margin: 0 auto;
  max-width: 1154px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-aboutUs__txt {
  font-size: clamp(13px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 2.37;
  /* 237.5% */
  letter-spacing: 0.1em;
  width: 54%;
}

.p-aboutUs__img {
  margin-top: clamp(5.3333333333px, 0.6944444444vw, 10px);
  width: 38.5%;
}

.p-aboutUs__card:nth-child(1) .p-aboutUs__flex,
.p-aboutUs__card:nth-child(3) .p-aboutUs__flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.p-aboutUs__card:nth-child(1) .p-aboutUs__card-ttl::before,
.p-aboutUs__card:nth-child(3) .p-aboutUs__card-ttl::before {
  left: 0;
}

.p-aboutUs__card:nth-child(1) .p-aboutUs__txt,
.p-aboutUs__card:nth-child(3) .p-aboutUs__txt {
  margin-left: clamp(17.6px, 2.2916666667vw, 33px);
}

.p-aboutUs__card:nth-child(2) .p-aboutUs__card-ttl {
  text-align: right;
}

.p-aboutUs__card:nth-child(2) .p-aboutUs__card-ttl::before {
  right: 0;
}

.p-aboutUs__card:nth-child(2) .p-aboutUs__txt {
  width: 58%;
  white-space: nowrap;
}

.p-root {
  padding: clamp(39.4666666667px, 5.1388888889vw, 74px) 0 clamp(53.3333333333px, 6.9444444444vw, 100px);
}

.p-root__inner {
  max-width: 1320px;
  width: 92% !important;
}

.p-root__area h2 {
  font-size: clamp(22px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-left: clamp(6.4px, 0.8333333333vw, 12px);
}

.p-root__area:not(:last-child) {
  margin-bottom: clamp(40.5333333333px, 5.2777777778vw, 76px);
}

.p-root__area--loc {
  margin-bottom: clamp(53.3333333333px, 6.9444444444vw, 100px);
}

.p-root__flex {
  margin-top: clamp(32px, 4.1666666667vw, 60px);
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-root__contnet {
  width: 49.6%;
}

.p-root__contnet > h3 {
  color: #FFF;
  font-size: clamp(18px, 1.6666666667vw, 24px);
  font-weight: 600;
  letter-spacing: 0.07em;
  max-width: clamp(100.2666666667px, 13.0555555556vw, 188px);
  background: #2A2A2A;
  padding: clamp(5.3333333333px, 0.6944444444vw, 10px);
  margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 20px);
}

.p-root__add {
  font-size: clamp(18px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.75;
  /* 175% */
  letter-spacing: 0.07em;
  margin-bottom: clamp(14.4px, 1.875vw, 27px);
}

.p-root__block {
  margin-left: clamp(39.4666666667px, 5.1388888889vw, 74px);
}

.p-root__block ul {
  gap: clamp(7.4666666667px, 0.9722222222vw, 14px);
  margin-bottom: clamp(14.9333333333px, 1.9444444444vw, 28px);
}

.p-root__block ul li {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: clamp(5.3333333333px, 0.6944444444vw, 10px);
}

.p-root__block ul li:nth-child(1) .p-root__label {
  background: #007429;
}

.p-root__block ul li:nth-child(2) .p-root__label {
  background: #8F0000;
}

.p-root__block ul li p {
  font-size: clamp(13px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 1.7;
  letter-spacing: 0.07em;
}

.p-root__block ul li p > * {
  font-size: clamp(15px, 1.25vw, 18px);
  font-weight: 600;
}

.p-root__block ul li p > * > * {
  font-size: clamp(18px, 1.6666666667vw, 24px);
}

.p-root__label {
  color: #FFF;
  font-size: clamp(15px, 1.25vw, 18px);
  font-weight: 600;
  letter-spacing: 0.07em;
  min-width: clamp(100px, 10.3472222222vw, 149px);
  text-align: center;
  padding: clamp(3.7333333333px, 0.4861111111vw, 7px);
}

.p-root__car {
  border: clamp(3px, 0.4166666667vw, 6px) solid #2A2A2A;
  padding: clamp(21.8666666667px, 2.8472222222vw, 41px) clamp(18px, 2.3611111111vw, 34px) clamp(23.4666666667px, 3.0555555556vw, 44px) 5px;
}

.p-root__car::before {
  content: "";
  width: clamp(4px, 0.5555555556vw, 8px);
  height: 57.8%;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: -1.2%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.p-root__car h3 {
  font-size: clamp(15px, 1.25vw, 18px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(5.3333333333px, 0.6944444444vw, 10px);
}

.p-root__car p {
  font-size: clamp(12px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.07em;
}

.p-root__map {
  width: 46%;
}

.p-root__map iframe {
  height: clamp(282.1333333333px, 36.7361111111vw, 529px);
  width: 100%;
}

.p-root__cards {
  gap: clamp(29.8666666667px, 3.8888888889vw, 56px) clamp(51.2px, 6.6666666667vw, 96px);
  margin-top: clamp(48px, 6.25vw, 90px);
  margin-left: clamp(14.9333333333px, 1.9444444444vw, 28px);
}

.p-root__card {
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  width: calc((100% - clamp(51.2px, 6.6666666667vw, 96px) * 2) / 3);
  padding: clamp(17.0666666667px, 2.2222222222vw, 32px) clamp(8px, 1.0416666667vw, 15px);
}

.p-root__no {
  width: clamp(22.4px, 2.9166666667vw, 42px);
  height: clamp(22.4px, 2.9166666667vw, 42px);
  background: #484B95;
  color: #fff;
  font-family: Avenir;
  font-size: clamp(16px, 2.0833333333vw, 30px);
  font-weight: 500;
  letter-spacing: 0.03em;
  top: -3.6%;
  left: -6%;
}

.p-root__img {
  margin-bottom: clamp(13.3333333333px, 1.7361111111vw, 25px);
}

.p-root__content {
  margin: 0 3px;
}

.p-root__content p {
  font-size: clamp(13px, 0.9722222222vw, 14px);
  font-weight: 300;
  line-height: 2.07;
  letter-spacing: 0.05em;
}

.p-root__list {
  max-width: 1142px;
  margin: clamp(44.2666666667px, 5.7638888889vw, 83px) auto 0;
  gap: clamp(26.6666666667px, 3.4722222222vw, 50px);
}

.p-root__unit h3 {
  font-size: clamp(18px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.75;
  letter-spacing: 0.07em;
}

.p-root__unit:nth-child(1) .p-root__icon {
  width: clamp(36px, 2.9166666667vw, 42px);
}

.p-root__unit:nth-child(2) .p-root__icon {
  width: clamp(39px, 3.1642361111vw, 45.565px);
}

.p-root__unit-ttl {
  margin-left: clamp(18.1333333333px, 2.3611111111vw, 34px);
  gap: clamp(25.6px, 3.3333333333vw, 48px);
  margin-bottom: clamp(33.6px, 4.375vw, 63px);
}

.p-facility {
  padding: 0 0 clamp(58.6666666667px, 7.6388888889vw, 110px);
}

.p-facility__inner {
  max-width: 1050px;
}

.p-facility__ttl {
  margin-bottom: clamp(48.5333333333px, 6.3194444444vw, 91px);
}

.p-facility__ttl h2 {
  font-size: clamp(22px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(21.3333333333px, 2.7777777778vw, 40px);
}

.p-facility__cards {
  gap: clamp(17.6px, 2.2916666667vw, 33px) clamp(37.2266666667px, 4.8472222222vw, 69.8px);
}

.p-facility__card {
  width: calc((100% - clamp(37.2266666667px, 4.8472222222vw, 69.8px)) / 2);
}

.p-facility__card h3 {
  font-size: clamp(18px, 1.8055555556vw, 26px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(8.5333333333px, 1.1111111111vw, 16px);
  margin-left: clamp(12.8px, 1.6666666667vw, 24px);
}

.p-opp {
  padding-bottom: clamp(61.3333333333px, 7.9861111111vw, 115px);
}

.p-opp__inner {
  max-width: 1300px;
  width: 92% !important;
}

.p-opp__ttl {
  font-size: clamp(22px, 2.5vw, 36px);
  font-weight: 600;
  letter-spacing: 0.07em;
  margin-bottom: clamp(37.8666666667px, 4.9305555556vw, 71px);
}

.p-opp__cards {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(21.3333333333px, 2.7777777778vw, 40px);
  margin: 0 auto;
  max-width: 1240px;
}

.p-opp__card {
  border-radius: clamp(12.8px, 1.6666666667vw, 24px);
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 0px 10px 8px rgba(0, 0, 0, 0.03);
  padding: 24px clamp(12.8px, 1.6666666667vw, 24px);
  gap: 2.2%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.p-opp__img {
  width: 29%;
  border-right: clamp(1.3px, 0.1597222222vw, 2.3px) solid #484B95;
}

.p-opp__content {
  width: 67.8%;
}

.p-opp__content h3 {
  font-size: clamp(15px, 1.6666666667vw, 24px);
  font-weight: 600;
  line-height: 1.16;
  /* 116.667% */
  letter-spacing: 0.03em;
  margin-bottom: clamp(20.2666666667px, 2.6388888889vw, 38px);
}

.p-opp__txt {
  font-size: clamp(14px, 1.1111111111vw, 16px);
  font-weight: 300;
  line-height: 1.81;
  letter-spacing: 0.1em;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: clamp(13.8666666667px, 1.8055555556vw, 26px);
}

.c-section {
  position: relative;
}

.c-section__inner {
  margin: 0 auto;
  position: relative;
  width: 83.2%;
}

.c-ttl-bg {
  position: absolute;
  color: rgba(0, 0, 0, 0.05);
  letter-spacing: 0.2em;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-orientation: sideways;
}

.c-tag {
  position: relative;
  display: inline-block;
}

.c-tag::before {
  content: "";
  width: 104%;
  height: 100%;
  border-radius: 2.375rem;
  background-color: #000;
  position: absolute;
  bottom: -0.625rem;
  right: -1.3125rem;
}

.c-tag > * {
  border-radius: 2.1875rem;
  border: 1px solid #000;
  letter-spacing: 0.3em;
  padding: 0.8125rem 1.75rem 0.875rem 1.875rem;
  background-color: #ffffff;
  position: relative;
  font-size: clamp(12px, 1.2962962963vw, 14px);
}

.c-btn__icon {
  width: clamp(12px, 1.2962962963vw, 14px);
}

.c-btn__icon > * {
  width: 100%;
  height: 100%;
}

.c-btn__icon img {
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.c-btn__icon .hover {
  opacity: 0;
}

.c-btn__link {
  border-radius: 2.6875rem;
  color: #ffffff;
  background-color: #484B95;
  /*  background-color: #252939; */
  position: relative;
  padding: 0.9375rem 1.25rem 1.3125rem 0.9375rem;
  font-weight: 700;
  border: 1px solid #484B95;
  /*  border: 1px solid #252939; */
}

.c-btn__link > * {
  gap: 0.5625rem;
}

.c-btn__link svg {
  top: 0.875rem;
  right: 0.625rem;
  position: absolute;
  width: 0.79875rem;
}

.c-schedule {
  position: relative;
  z-index: 10;
}

.c-schedule table {
  width: 100%;
  margin-bottom: 1.25rem;
  border-collapse: collapse;
}

.c-schedule table tr {
  border-bottom: 1px solid #707070;
}

.c-schedule table th,
.c-schedule table td {
  text-align: center;
}

.c-schedule table th:nth-child(1),
.c-schedule table td:nth-child(1) {
  text-align: left;
}

.c-schedule table .sat {
  color: #1920CE;
}

.c-schedule table .sun {
  color: #B52F2F;
}

.c-schedule p {
  gap: 3.125rem;
  padding-left: 0.25rem;
}

.p-fv {
  /*  height: 73.0625rem; */
  /*  padding-bottom: 7.5rem; */
}

.p-fv__inner {
  height: 53.25rem;
  padding-bottom: 2.5rem;
  background-image: url(../img/bg_fv1.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin-bottom: 4.375rem;
}

.p-fv__inner > * {
  max-width: 102.5rem;
  margin: 0 auto;
  height: 100%;
}

.p-fv__content {
  color: #ffffff;
}

.p-fv__catch {
  background-color: rgba(37, 41, 57, 0.8);
  display: inline-block;
  padding: 0.5rem 0.625rem 0.75rem 0.875rem;
  color: #ffffff;
}

.p-fv__ttl {
  margin-bottom: 6.625rem;
  margin-bottom: 1.5rem;
  line-height: 1.46;
  white-space: nowrap;
  text-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.3);
  font-size: clamp(32px, 2.6041666667vw, 50px);
}

.p-fv__txt {
  width: 84%;
  line-height: 2;
  padding: 0.375rem 0.375rem 0.5rem 0.875rem;
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: 1.375rem;
}

.p-fv__hour-inner {
  height: 100%;
  max-width: 102.5rem;
  margin: 0 auto;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-fv__hour-content {
  margin-left: 1.125rem;
  z-index: 10;
}

.p-fv__hour-ttl {
  /*  margin-left: 1.125rem; */
  margin-bottom: 3.5rem;
  font-size: clamp(30px, 3.90625vw, 50px);
}

.p-fv__hour-txt {
  /*  margin-left: 1.125rem; */
  margin-bottom: 3rem;
  width: 82%;
  font-size: clamp(14px, 1.4814814815vw, 16px);
}

.p-fv__hour-add {
  line-height: 1.7;
  margin-bottom: 0.9375rem;
}

.p-fv__hour-root {
  /*  margin-bottom: 4.0625rem; */
  margin-bottom: 3.75rem;
}

.p-fv__schedule {
  /*  bottom: -38.75rem; */
  /*  padding: 4.375rem 3.9375rem 4.875rem 4.875rem; */
  padding: 4.375rem 4.5rem 3.5rem 4.5rem;
  background: #ffffff;
  /*  border: 1px solid #707070; */
  border-radius: 10px;
  margin-right: -100px;
  z-index: 0;
}

.p-fv__schedule .c-schedule__table {
  margin-bottom: 3rem;
}

.p-fv__schedule .c-schedule__table table th,
.p-fv__schedule .c-schedule__table table td {
  /*  padding: 0 1.5375rem; */
  padding: 0 1.7375rem;
}

.p-fv__schedule .c-schedule__table table th:nth-child(1),
.p-fv__schedule .c-schedule__table table td:nth-child(1) {
  padding-left: 0.625rem;
}

.p-fv__schedule .c-schedule__table table th {
  padding-bottom: 2.40625rem;
  /*  padding-bottom: 2.125rem; */
}

.p-fv__schedule .c-schedule__table table td {
  /*  padding-top: 1.53125rem; */
  padding-top: 1.9rem;
  padding-bottom: 2.28125rem;
  /*  padding-bottom: 2rem; */
}

.p-fv__tel-list {
  /*  gap: 5.1875rem; */
  gap: 3.9375rem;
  /*  margin-bottom: 2rem; */
  margin-bottom: 2.375rem;
}

.p-fv__tel-btn {
  gap: 1rem;
}

.p-fv__tel-link {
  border-bottom: 0.125rem solid #000080;
  /*  font-size: clamp(18px, 2.037037037vw, 22px); */
  font-size: 24px;
  color: #000080;
}

.p-fv__tel-link:hover {
  opacity: 0.8;
}

.p-fv__cta {
  gap: 5.8125rem;
}

.p-fv__cta-btn {
  font-size: clamp(13px, 1.4814814815vw, 15px);
}

.p-fv__link {
  padding: 1.4375rem 1.875rem 1.875rem 2rem;
  /*  padding: 0.9375rem 1.25rem 1.3125rem 0.9375rem; */
}

.p-fv__link > * {
  gap: 1.125rem;
}

.p-fv__line {
  gap: 0.9375rem;
}

.p-fv__line:hover {
  opacity: 0.8;
}

.p-fv__line:hover img.hover {
  opacity: 1;
}

.p-fv__icon {
  width: 5.1875rem;
  /*  width: 3.75rem; */
  width: clamp(33px, 4.0740740741vw, 60px);
}

.p-fv__mark {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.p-about {
  /*  padding: 30.375rem 0 31.875rem; */
  /*  padding: 59.8125rem 0 31.875rem; */
  padding: 7.5rem 0 10.5rem;
}

.p-about__ttl-bg {
  /*  font-size: 13.1875rem; */
  font-size: 9.8rem;
  right: -2.125rem;
  /*  top: 17rem;
    top: 46.375rem; */
  top: 40.5rem;
}

.p-about__inner {
  max-width: 1640px;
}

.p-about__desc {
  gap: 8.3%;
}

.p-about__image {
  /*  width: 47.375rem; */
  width: 38.75rem;
}

.p-about__content {
  width: 48.9%;
}

.p-about__tag {
  margin-bottom: 4.5rem;
}

.p-about__top {
  margin-bottom: 1.375rem;
  font-size: clamp(18px, 1.8518518519vw, 20px);
}

.p-about__ttl {
  margin-bottom: 4.75rem;
  /*  margin-bottom: 4.375rem; */
  font-size: clamp(30px, 3.8888888889vw, 42px);
}

.p-about__txt {
  line-height: 1.93;
  gap: 3.5rem;
  margin-bottom: 4.5625rem;
}

.p-about__add {
  line-height: 1.85;
  gap: 0.1875rem;
  margin-bottom: 4.1875rem;
}

.p-about__add p:nth-child(1) {
  font-size: clamp(14px, 1.3888888889vw, 15px);
}

.p-about__add p:nth-child(2) {
  font-size: clamp(11px, 1.2962962963vw, 14px);
}

.p-info {
  /*  padding-bottom: 16.5625rem; */
  padding-bottom: 10.5rem;
}

.p-info__ttl-bg {
  /*  font-size: 14.375rem; */
  font-size: 9.8rem;
  /*  top: -12.0625rem; */
  top: 8.125rem;
  left: -0.5625rem;
}

.p-info__inner {
  max-width: 104.75rem;
}

.p-info__desc {
  gap: 1.3%;
  /*  margin-bottom: 16.75rem; */
  margin-bottom: 10.5rem;
}

.p-info__image {
  /*  width: 58.4375rem; */
  width: 50.75rem;
}

.p-info__content {
  margin-top: 1.25rem;
  width: 40%;
}

.p-info__content > *:nth-child(2) {
  margin-left: 1.125rem;
}

.p-info__tag {
  margin-bottom: 3.1875rem;
}

.p-info__ttl {
  margin-bottom: 3.3125rem;
  font-size: clamp(30px, 3.90625vw, 50px);
}

.p-info__lead {
  line-height: 1.825;
  margin-bottom: 5.6875rem;
  font-size: clamp(16px, 1.6091954023vw, 28px);
}

.p-info__txt {
  width: 82%;
  font-size: clamp(14px, 1.4814814815vw, 16px);
}

.p-info__list {
  margin: 0 auto;
  max-width: 99.6875rem;
  width: 100%;
  /*  gap: 9.375rem 6.25rem; */
  gap: 5.5rem 6.25rem;
}

.p-info__unit {
  width: calc((100% - 12.5rem) / 3);
  /*  gap: 2.5rem; */
  gap: 1.75rem;
}

.p-info__unit p {
  line-height: 1.8;
  font-size: clamp(14px, 1.2903225806vw, 16px);
}

.p-info__unitmark {
  /*  background: linear-gradient(-225deg, #b7ebf2 0%, #a5cef2 56%, #90aef2 100%); */
  background: linear-gradient(-225deg, #eeffe3 0%, #e9ffdb 56%, #c8faa8 100%);
}

.p-info__unit-ttl {
  /*  gap: 1.5rem; */
  gap: 0.7rem;
  margin-bottom: 0.875rem;
  /*  font-size: clamp(16px, 1.8518518519vw, 20px); */
  font-size: clamp(20px, 1.8518518519vw, 24px);
}

.p-info__unit-link {
  padding: 5px;
  position: relative;
  display: inline-block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #000000;
  text-decoration: none;
}

.p-info__icon {
  width: clamp(33px, 3.9814814815vw, 43px);
  height: clamp(33px, 3.9814814815vw, 43px);
  border-radius: 50%;
  border: clamp(1px, 0.1851851852vw, 2px) solid #000;
}

.p-info__icon > * {
  width: clamp(16.9px, 2.1759259259vw, 23.5px);
}

.p-info__unit-tag {
  border: 1px solid #000;
  border-radius: 1.8125rem;
  display: inline-block;
  padding: 0.6875rem 1rem 0.75rem;
  font-size: clamp(10px, 1.1290322581vw, 14px);
  background-color: #ffffff;
}

/*
.p-img {
  width:auto;
  height: 56.25rem;
}
*/
.p-doctor {
  /*  padding: 22.5rem 0 18.4375rem; */
  padding: 10.5rem 0 5.25rem;
}

.p-doctor__ttl-bg {
  /*  font-size: 14.625rem; */
  font-size: 9.8rem;
  /*  top: 9.375rem; */
  top: 20.375rem;
  right: -3.125rem;
}

.p-doctor__inner {
  max-width: 94.5rem;
  margin-bottom: 6.25rem;
}

.p-doctor__desc {
  gap: 5.2%;
  margin-bottom: 3rem;
}

.p-doctor__image {
  /*  width: 42.125rem; */
  width: 35.5rem;
}

.p-doctor__content {
  width: 43.7%;
}

.p-doctor__tag {
  margin-bottom: 4rem;
}

.p-doctor__ttl {
  line-height: 1.43;
  margin-bottom: 2.5625rem;
  font-size: clamp(28px, 3.125vw, 50px);
}

.p-doctor__txt {
  gap: 3.75rem;
  font-size: clamp(14px, 1.6666666667vw, 18px);
}

.p-doctor__info-list {
  /*  font-size: 14px; */
  font-size: 16px;
}

.p-doctor__info-ttl {
  margin-bottom: 5.0625rem;
}

.p-doctor__info-ttl p {
  margin-bottom: 1.5rem;
  font-size: 18px;
}

.p-doctor__info-ttl h3 {
  font-size: clamp(26px, 2.7777777778vw, 30px);
}

.p-doctor__info-unit {
  width: 50%;
}

.p-doctor__info-unit h4 {
  margin-bottom: 1.875rem;
}

.p-doctor__info-unit ul {
  gap: 1.875rem;
}

.p-doctor__btn {
  max-width: clamp(420px, 41.6666666667vw, 600px);
  margin: clamp(42px, 4.1666666667vw, 60px) auto clamp(60px, 5vw, 72px);
}

.p-facilities {
  /*  padding-bottom: 23.375rem; */
  padding-bottom: 0rem;
}

.p-facilities__inner {
  max-width: 104.75rem;
}

.p-facilities__tag {
  margin-bottom: 3.5625rem;
}

.p-facilities__ttl {
  margin-left: 1.125rem;
  margin-bottom: 1.625rem;
  font-size: clamp(30px, 3.90625vw, 50px);
}

.p-facilities__txt {
  margin-left: 1.125rem;
  /*  margin-bottom: 6.6875rem; */
  margin-bottom: 3.75rem;
}

.p-facilities__img {
  width: 48.3125rem;
  height: auto;
  display: block;
  overflow: hidden;
  margin: 0.9375rem;
}

.p-facilities__img--02 {
  height: 24.75rem;
}

.p-facilities__img--03 {
  height: 31.3125rem;
}

.p-facilities__img--04 {
  width: 25.3125rem;
  height: 42.5625rem;
}

.p-facilities__img--05 {
  width: 25.3125rem;
  height: 13.8125rem;
}

.p-facilities__img--06 {
  width: 44.1875rem;
  height: 21.3125rem;
}

.p-facilities__img--07 {
  width: 44.1875rem;
  height: 35.0625rem;
}

.p-facilities__img--08 {
  width: 36.25rem;
  height: 36.25rem;
}

.p-facilities__img--09 {
  width: 36.25rem;
  height: 20.25rem;
}

.p-facilities__img--10 {
  width: 30.5625rem;
}

.p-facilities__img--11 {
  height: 24.75rem;
}

.p-facilities__img--12 {
  height: 31.625rem;
}

.p-facilities__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.p-facilities .swiper {
  margin: 0 calc(50% - 50vw);
  height: 34.95rem;
}

.p-facilities .swiper-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}

.p-facilities .swiper-slide {
  width: auto;
  padding: 0 0.9375rem;
  height: 34.95rem;
}

.p-facilities .swiper-slide img {
  width: 175.5rem;
}

.p-msg {
  background-color: #EBEBEB;
  /*  padding: 9.375rem 0 10rem; */
  padding: 7.75rem 0 8.125rem;
}

.p-msg__inner {
  max-width: 102.5rem;
}

.p-msg__desc {
  gap: 7%;
}

.p-msg__image {
  width: 54.8125rem;
}

.p-msg__content {
  width: 36%;
  margin-top: -0.375rem;
}

.p-msg__ttl {
  line-height: 1.46;
  margin-bottom: 3.125rem;
  font-size: clamp(22px, 2.962962963vw, 32px);
}

.p-msg__txt {
  margin-bottom: 3.125rem;
  font-size: clamp(14px, 1.6666666667vw, 18px);
}

.p-msg__txt > *:nth-child(1) {
  /*  margin-bottom: 2.625rem; */
  margin-bottom: 2.375rem;
}

.p-msg__txt > *:nth-child(2) {
  margin-bottom: 1.6875rem;
}

.p-msg__txt li {
  /*  width: 41%; */
  width: 49%;
}

.p-msg__btn {
  margin-left: -1.25rem;
}

.p-msg__btn a {
  width: 100%;
  background-color: #252939;
  border: 1px solid #252939;
}

.p-msg__link {
  padding-left: 2.5rem;
  padding-right: 1.875rem;
  font-size: clamp(13px, 1.6666666667vw, 18px);
}

.p-access {
  /*  padding: 25.625rem 0 25.25rem; */
  padding: 5rem 0 16.5rem;
}

.p-access__ttl-bg {
  /*  font-size: 15.0625rem; */
  font-size: 9.8rem;
  /*  top: 17rem; */
  top: 15rem;
  left: 1.25rem;
}

.p-access__inner {
  max-width: 106.875rem;
  width: 85.6%;
}

.p-access__desc {
  margin-bottom: 4.5rem;
}

.p-access__map {
  width: 47.9%;
  height: 43.25rem;
}

.p-access__map > * {
  width: 100%;
  height: 100%;
}

.p-access__content {
  width: 41.5%;
  margin-left: 4.5rem;
}

.p-access__tag {
  margin-bottom: 2.375rem;
}

.p-access__ttl {
  margin-bottom: 2.5rem;
  font-size: clamp(22px, 2.5925925926vw, 28px);
}

.p-access__sns-list {
  gap: 1rem;
  display: none;
}

.p-access__sns-link:hover {
  opacity: 0.8;
}

.p-access__add {
  line-height: 1.7;
  margin-bottom: 0.9375rem;
}

.p-access__root {
  /*  margin-bottom: 4.0625rem; */
  margin-bottom: 3.75rem;
}

.p-access__schedule {
  font-size: clamp(12px, 1.2vw, 18px);
}

.p-access__schedule .c-schedule__table {
  /*  margin-bottom: 5.5rem; */
  margin-bottom: 3.5rem;
}

.p-access__schedule .c-schedule__table th,
.p-access__schedule .c-schedule__table td {
  padding: 0 1.4375rem;
}

.p-access__schedule .c-schedule__table th:nth-child(1),
.p-access__schedule .c-schedule__table td:nth-child(1) {
  padding-left: 0.3125rem;
}

.p-access__schedule .c-schedule__table th {
  padding-bottom: 1.9375rem;
}

.p-access__schedule .c-schedule__table td {
  padding-top: 1.1875rem;
  padding-bottom: 1.9375rem;
}

.p-access__tel-list {
  gap: 3.9375rem;
  /*  margin-bottom: 4.875rem; */
  margin-bottom: 2.375rem;
}

.p-access__tel-btn {
  gap: 1rem;
}

.p-access__tel-link {
  border-bottom: 0.125rem solid #000;
  /*  font-size: 20px; */
  font-size: 24px;
  color: #000080;
}

.p-access__tel-link:hover {
  opacity: 0.8;
}

.p-access__cta {
  gap: 3.9375rem;
}

.p-access__cta-btn {
  /*  font-size: clamp(13px, 1.4814814815vw, 16px); */
  font-size: clamp(13px, 1.4814814815vw, 15px);
}

.p-access__link {
  padding: 1.4375rem 1.875rem 1.875rem 2rem;
  padding: clamp(10px, 1.1979166667vw, 23px) clamp(12px, 1.5625vw, 30px) clamp(12px, 1.5625vw, 30px) clamp(12px, 1.6666666667vw, 32px);
  border-radius: 3.75rem;
}

.p-access__link > * {
  gap: 1.125rem;
}

.p-access__line {
  gap: 0.9375rem;
}

.p-access__line img {
  width: clamp(33px, 4.0740740741vw, 60px);
}

.p-access__line:hover {
  opacity: 0.8;
}

.p-access__btn {
  margin-left: 4.5rem;
}

.p-access__btn a {
  width: 41.5%;
  background-color: #252939;
  border: 1px solid #252939;
}

.p-access__btn--page {
  margin-bottom: 32px;
}

.p-access__btn--page a {
  background-color: #484B95;
  border: 1px solid #484B95;
}

.l-header__top-bar {
  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;
  padding: 20px;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  padding: 4rem 5.1875rem 2.375rem 4.0625rem;
  -webkit-transition: 0.4s all;
  transition: 0.4s all;
}

.l-header__top-bar.scroll {
  /*  padding-top: 1.875rem; */
  /*  padding-bottom: 1.875rem; */
  padding-top: 1.625rem;
  padding-bottom: 1.625rem;
  -webkit-box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
  box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
}

.l-header__logo {
  width: 19.69rem;
  /*  width: clamp(112px, 19.3333333333vw, 232px); */
  width: clamp(140px, 19.3333333333vw, 280px);
}

.l-header__contacts {
  gap: 2rem;
}

.l-header__tel-list--bar {
  gap: 2.875rem;
}

.l-header__tel-list--menu {
  padding-left: 0.4375rem;
  gap: 1.5375rem;
  margin-bottom: 1.75rem;
}

.l-header__tel-list--menu .l-header__tel-btn {
  gap: 0.625rem;
}

.l-header__tel-btn {
  gap: 0.75rem;
}

.l-header__tel-btn span {
  /*  font-size: clamp(12px, 1.09375vw, 14px); */
  font-size: 1.3125rem;
}

.l-header__tel-link {
  border-bottom: 0.125rem solid #000080;
  font-size: clamp(17px, 1.7142857143vw, 24px);
  color: #000080;
}

.l-header__btns {
  gap: 1.4375rem;
  font-size: clamp(12px, 1.25vw, 16px);
}

.l-header__mail {
  padding: 1.125rem 1.5rem 1.3125rem 1.375rem;
}

.l-header__line {
  padding: 0.625rem 1rem 0.6875rem 1.25rem;
  background-color: #3ABE68;
  border: 1px solid #3ABE68;
}

.l-header__line > * > * {
  gap: 0.75rem;
}

.l-header__line:hover {
  background-color: #3ABE68 !important;
  color: #ffffff !important;
  opacity: 0.8;
}

.l-header__line:hover > * svg > * {
  stroke: #ffffff;
}

.l-header__line-icon {
  width: clamp(27px, 3.4259259259vw, 37px);
}

.l-header__space {
  height: 11.25rem;
}

.l-header__menu {
  background-color: #fff;
  z-index: 999;
  padding: 0 2.25rem;
  border-bottom: 0.5px solid #707070;
  -webkit-transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}

.l-header__menu-list {
  -webkit-transition: 0.4s all;
  transition: 0.4s all;
}

.l-header__menu-list li {
  width: 20%;
}

.l-header__menu-list li a {
  width: 100%;
  gap: 0.75rem;
  padding: 2rem 0;
}

.l-header__menu-list li a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.1875rem;
  background: #000;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: left top;
  transform-origin: left top;
}

.l-header__menu-list li a:hover::after {
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}

.l-header__menu--fixed-bottom {
  position: fixed;
  bottom: -100%;
  left: 0;
  right: 0;
  border-bottom: none;
  -webkit-box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
  box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
  opacity: 0;
  -webkit-transition: 1.2s ease-in-out;
  transition: 1.2s ease-in-out;
}

.l-header__menu--slide-up {
  bottom: 0;
  /* 下からスライドアップ */
  opacity: 1;
}

.l-header__menu--slide-up .l-header__menu-list a {
  font-size: clamp(14px, 1.4814814815vw, 16px);
}

.l-header__menu--slide-up .l-header__menu-list a:after {
  bottom: auto;
  top: 0;
}

.l-header__openbtn {
  width: 1.875rem;
  height: 1.875rem;
  cursor: pointer;
  position: fixed;
  top: 1rem;
  right: 1.1875rem;
  z-index: 99999;
}

.l-header__openbtn span {
  width: 100%;
  height: 0.0625rem;
  background-color: #707070;
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  left: 0;
}

.l-header__openbtn span:nth-child(1) {
  top: 0;
}

.l-header__openbtn span:nth-child(2) {
  top: 0.4375rem;
}

.l-header__openbtn span:nth-child(3) {
  top: 0.875rem;
}

.l-header__openbtn span:nth-child(3)::after {
  content: "MENU";
  position: absolute;
  letter-spacing: 0.12em;
  top: 0.4375rem;
  left: 0.0625rem;
  font-size: 0.5rem;
  text-transform: uppercase;
}

.l-header__openbtn.active {
  width: 2.25rem;
  height: 2.25rem;
}

.l-header__openbtn.active span:nth-child(1) {
  top: 0.6875rem;
  -webkit-transform: translateY(0.375rem) rotate(-45deg);
  transform: translateY(0.375rem) rotate(-45deg);
}

.l-header__openbtn.active span:nth-child(2) {
  opacity: 0;
}

.l-header__openbtn.active span:nth-child(3) {
  top: 1.4375rem;
  -webkit-transform: translateY(-0.375rem) rotate(45deg);
  transform: translateY(-0.375rem) rotate(45deg);
}

.l-header__openbtn.active span:nth-child(3)::after {
  content: none;
}

.l-header__sp-menu {
  position: fixed;
  z-index: 9999;
  /*ナビのスタート位置と形状*/
  top: -120%;
  left: 0;
  width: 100%;
  height: 100vh;
  /*ナビの高さ*/
  background: #DEDEDE;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  padding: 5.4375rem 0 1.25rem;
}

.l-header__sp-menu.panelactive {
  top: 0;
}

.l-header__sp-bg {
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.l-header__sp-logo {
  width: 6.989375rem;
  top: 2.025rem;
  left: 1.875rem;
}

.l-header__sp-logo a {
  width: 100%;
}

.l-header__sp-acc {
  width: 90%;
  top: 3.325rem;
  left: 1.875rem;
}

.l-header__sp-menu-list {
  margin-bottom: 2.25rem;
}

.l-header__sp-menu-list li {
  width: 50%;
  border-bottom: 0.03125rem solid #7E7E7E;
}

.l-header__sp-menu-list li.l-header__sp-has-submenu {
  width: 100%;
}

.l-header__sp-menu-list li.l-header__sp-has-submenu > a {
  position: relative;
}

.l-header__sp-menu-list li.l-header__sp-has-submenu > a::before,
.l-header__sp-menu-list li.l-header__sp-has-submenu > a::after {
  content: "";
  width: 1rem;
  height: 0.125rem;
  background-color: #7E7E7E;
  position: absolute;
  top: 2.125rem;
  right: 2.75rem;
  -webkit-transition: 0.4s all;
  transition: 0.4s all;
}

.l-header__sp-menu-list li.l-header__sp-has-submenu > a:after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.l-header__sp-menu-list li.l-header__sp-has-submenu > a.open::after {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

.l-header__sp-menu-list li:nth-child(1),
.l-header__sp-menu-list li:nth-child(2) {
  border-top: 0.03125rem solid #7E7E7E;
}

.l-header__sp-menu-list li:nth-child(1),
.l-header__sp-menu-list li:nth-child(even) {
  border-right: 0.03125rem solid #7E7E7E;
}

.l-header__sp-menu-list li:nth-child(2),
.l-header__sp-menu-list li.l-header__sp-has-submenu {
  border-right: none;
}

.l-header__sp-menu-list li a {
  width: 100%;
  padding: 1.625rem 0 1.6875rem 2.75rem;
}

.l-header__sp-submenu {
  width: 100%;
  display: none;
}

.l-header__sp-submenu > * {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}

.l-header__sp-submenu li:nth-child(1) {
  border-right: none;
}

.l-header__sp-submenu li:nth-child(even) {
  border-right: none;
  border-left: 0.03125rem solid #7E7E7E;
}

.l-header__sp-submenu li:last-child {
  border-bottom: none;
}

.l-header__sp-area {
  margin: 0 auto;
  width: 86%;
  padding-bottom: 2.125rem;
}

.l-header__cta {
  gap: 1.375rem;
}

.l-header__cta-btn {
  width: 100%;
}

.l-header__cta-btn a {
  color: #ffffff;
}

.l-header__cta-btn a.l-header__line {
  background-color: #3ACE00;
  border: 1px solid #3ACE00;
}

.l-header__cta-btn a.l-header__line:hover {
  color: #3ACE00;
  background-color: #ffffff;
}

.l-header__cta-btn a.l-header__line:hover svg > * {
  stroke: #3ACE00;
}

.l-header__cta-btn a.l-header__link {
  background-color: #484B95;
  border: 1px solid #484B95;
}

.l-header__cta-btn a.l-header__link:hover {
  color: #484B95;
  background-color: #ffffff;
}

.l-header__cta-btn a.l-header__link:hover svg > * {
  stroke: #484B95;
}

.l-header__schedule {
  padding: 2.4375rem 0 2.9375rem;
  border-top: 0.03125rem solid #7E7E7E;
  border-bottom: 0.03125rem solid #7E7E7E;
  margin-bottom: 1.375rem;
}

.l-header__schedule > * {
  width: 86%;
  margin: 0 auto;
}

.l-header__schedule table tr {
  border-bottom: 0.5px solid #707070;
}

.l-header__schedule table th,
.l-header__schedule table td {
  padding: 0 0.5rem;
}

.l-header__schedule table th:nth-child(1),
.l-header__schedule table td:nth-child(1) {
  padding-left: 0.3125rem;
}

.l-header__schedule table th {
  padding-bottom: 1.0625rem;
}

.l-header__schedule table td {
  padding-top: 0.625rem;
  padding-bottom: 1.0625rem;
}

.l-header__add {
  width: 88%;
  margin: 0 auto 1.25rem;
}

.l-header__add p {
  line-height: 1.82;
}

.l-header__add p:nth-child(1) {
  margin-bottom: 0.125rem;
}

.l-header__add p:nth-child(2) {
  margin-bottom: 1.6875rem;
}

.l-header__add a {
  width: 94%;
  margin: 0 auto;
}

.l-header__submenu {
  height: 0;
  /* 初期状態で非表示 */
  overflow: hidden;
  -webkit-transition: 0.4s all;
  transition: 0.4s all;
  width: 100%;
  /* 必要に応じて調整 */
  left: 0;
  top: 100%;
  -webkit-box-shadow: 0 0.25rem 0.375rem rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.375rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  z-index: 10;
  background-color: #ffffff;
}

.l-header__submenu li {
  width: 100%;
}

.l-header__submenu li a {
  width: 100%;
  height: 100%;
  position: relative;
  padding: 1.5rem;
}

.l-header__has-submenu:hover .l-header__submenu {
  height: auto;
  opacity: 1;
  visibility: visible;
}

.l-header__menu--fixed-bottom .l-header__submenu {
  top: auto;
  bottom: 100%;
}

.l-header__menu--fixed-bottom .l-header__submenu li a::after {
  top: auto;
  bottom: 0;
}

.l-fnav {
  border-top: 0.5px solid #707070;
  padding: 5.125rem 0 7.5625rem;
}

.l-fnav__inner {
  max-width: 102.5rem;
}

.l-fnav__logo {
  margin-right: 6rem;
  margin-top: 1.0625rem;
}

.l-fnav__logo a {
  width: 25.2725rem;
  width: clamp(162px, 16.8229166667vw, 323px);
}

.l-fnav__area {
  width: 55%;
}

.l-fnav__area > a {
  margin-bottom: 1.5625rem;
  font-size: clamp(14px, 1.6666666667vw, 18px);
}

.l-fnav__list {
  gap: 0.9375rem;
  width: 41%;
}

.l-fnav__link {
  padding-left: 1em;
  font-size: clamp(12px, 1.4814814815vw, 16px);
}

.l-fnav__link::before {
  content: "・";
  position: absolute;
  left: 0;
}

.l-fnav__link-bar {
  position: relative;
  display: inline-block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #000000;
  text-decoration: none;
}

.l-fnav__link-bar::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 0;
  height: 1px;
  background-color: #000000;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.l-fnav__link-bar:hover::after {
  width: 100%;
}

.l-fnav__sns-list {
  gap: 1.6875rem;
  margin-top: 2.1875rem;
}

.l-fnav__sns-link {
  gap: 0.5rem;
  font-size: clamp(12px, 1.4814814815vw, 16px);
}

.l-fnav__sns-link span {
  padding: 5px;
  position: relative;
  display: inline-block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #000000;
  text-decoration: none;
}

.l-fnav__sns-link span::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 0;
  height: 1px;
  background-color: #000000;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.l-fnav__sns-link span:hover::after {
  width: 100%;
}

.l-fnav__sns-link img {
  width: clamp(20px, 3.1481481481vw, 34px);
}

.l-fnav a:hover {
  opacity: 0.8;
}

.l-footer {
  padding: 2.5rem 0 calc(2.5rem + clamp(56px, 6.4583333333vw, 124px));
  background-color: #919191;
  color: #ffffff;
}

.l-container {
  overflow-x: hidden;
}

.u-tab {
  display: none;
}

.u-sp {
  display: none;
}

.u-df {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.u-jc-c {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.u-jc-sb {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.u-ai-c {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.u-ai-fe {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.u-fd-c {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.u-fd-rr {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.u-fw-w {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.u-fw-regular {
  font-weight: 400;
}

.u-fw-medium {
  font-weight: 500;
}

.u-fw-bold {
  font-weight: 700;
}

.u-ta-c {
  text-align: center;
}

.u-lh18 {
  line-height: 1.8;
}

.u-lh2 {
  line-height: 2;
}

.u-lh23 {
  line-height: 2.3;
}

.u-lh33 {
  line-height: 3.3;
}

.u-ls35 {
  letter-spacing: 0.035em;
}

.u-ls50 {
  letter-spacing: 0.05em;
}

.u-ls100 {
  letter-spacing: 0.1em;
}

.u-ls300 {
  letter-spacing: 0.3em;
}

.u-fs10 {
  font-size: 10px;
}

.u-fs11 {
  font-size: 11px;
}

.u-fs12 {
  font-size: 12px;
}

.u-fs13 {
  font-size: 13px;
}

.u-fs14 {
  font-size: 14px;
}

.u-fs15 {
  font-size: 15px;
}

.u-fs16 {
  font-size: 16px;
}

.u-fs17 {
  font-size: 1.0625rem;
}

.u-fs18 {
  font-size: 1.125rem;
}

.u-fs19 {
  font-size: 1.1875rem;
}

.u-fs20 {
  font-size: 1.25rem;
}

.u-fs21 {
  font-size: 1.3125rem;
}

.u-fs22 {
  font-size: 12.1379310345px;
}

.u-fs23 {
  font-size: 12.6896551724px;
}

.u-fs24 {
  font-size: 1.5rem;
}

.u-fs25 {
  font-size: 1.5625rem;
}

.u-fs26 {
  font-size: 1.625rem;
}

.u-fs28 {
  font-size: 1.75rem;
}

.u-fs29 {
  font-size: 1.8125rem;
}

.u-fs30 {
  font-size: 1.875rem;
}

.u-fs32 {
  font-size: 2rem;
}

.u-fs34 {
  font-size: 2.125rem;
}

.u-fs35 {
  font-size: 19.3103448276px;
}

.u-fs40 {
  font-size: 2.5rem;
}

.u-fs41 {
  font-size: 2.5625rem;
}

.u-fs43 {
  font-size: 2.6875rem;
}

.u-fs50 {
  font-size: 3.125rem;
}

.u-fs70 {
  font-size: 4.375rem;
}

.u-fs76 {
  font-size: 4.75rem;
}

.mt5 {
  margin-top: 5px;
}

.mt10 {
  margin-top: 10px;
}

.mt20 {
  margin-top: 20px;
}

.mt30 {
  margin-top: 30px;
}

.mt40 {
  margin-top: 40px;
}

.mt50 {
  margin-top: 50px;
}

.mt60 {
  margin-top: 60px;
}

.mt70 {
  margin-top: 70px;
}

.mt80 {
  margin-top: 80px;
}

.mt90 {
  margin-top: 90px;
}

.mt100 {
  margin-top: 100px;
}

.mb5 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb100 {
  margin-bottom: 100px;
}

.mtb-c {
  margin: auto 2rem auto 2rem;
}

.u-po-rel {
  position: relative;
}

.u-po-abs {
  position: absolute;
}

.js-fade {
  opacity: 0;
  -webkit-transition: 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: 2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.is-shown .js-fade,
.js-fade.is-shown {
  opacity: 1;
}

.js-fadeup {
  opacity: 0;
  -webkit-transform: translate3d(0, 2rem, 0);
  transform: translate3d(0, 2rem, 0);
  -webkit-transition: 0.9s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: 0.9s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-property: opacity, -webkit-transform;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
}

.is-shown .js-fadeup,
.js-fadeup.is-shown {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.js-fadeups > * {
  opacity: 0;
  -webkit-transform: translate3d(0, 2rem, 0);
  transform: translate3d(0, 2rem, 0);
  -webkit-transition: 0.9s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: 0.9s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-property: opacity, -webkit-transform;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
}

.js-fadeups > *:nth-child(1) {
  -webkit-transition-delay: 80ms;
  transition-delay: 80ms;
}

.js-fadeups > *:nth-child(2) {
  -webkit-transition-delay: 160ms;
  transition-delay: 160ms;
}

.js-fadeups > *:nth-child(3) {
  -webkit-transition-delay: 240ms;
  transition-delay: 240ms;
}

.js-fadeups > *:nth-child(4) {
  -webkit-transition-delay: 320ms;
  transition-delay: 320ms;
}

.js-fadeups > *:nth-child(5) {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
}

.js-fadeups > *:nth-child(6) {
  -webkit-transition-delay: 0.48s;
  transition-delay: 0.48s;
}

.js-fadeups > *:nth-child(7) {
  -webkit-transition-delay: 0.56s;
  transition-delay: 0.56s;
}

.js-fadeups > *:nth-child(8) {
  -webkit-transition-delay: 0.64s;
  transition-delay: 0.64s;
}

.js-fadeups > *:nth-child(9) {
  -webkit-transition-delay: 0.72s;
  transition-delay: 0.72s;
}

.is-shown .js-fadeups > *,
.js-fadeups.is-shown > * {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.js-fadeups > *.is-shown {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

@media screen and (min-width: 769px) {
  html {
    font-size: 0.8333333333vw;
  }
  html {
    font-size: 0.8333333333vw;
  }
}
@media (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
  a[href^="tel:"] {
    pointer-events: none;
  }
}
@media screen and (max-width: 1400px) {
  .p-fv__schedule {
    padding: 4.375rem 3.5rem 3.5rem 3.5rem;
  }
  .p-fv__tel-list {
    gap: 2.9375rem;
  }
}
@media screen and (max-width: 1240px) {
  .p-fv__hour-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .p-fv__hour-content .u-pc {
    display: none;
  }
  .p-fv__schedule {
    margin: auto;
  }
  .p-fv__schedule .u-sp {
    display: block;
  }
}
@media screen and (max-width: 1200px) {
  .p-access__content {
    width: 43.5%;
  }
}
@media screen and (max-width: 1080px) {
  .p-implant__txt {
    white-space: wrap;
    gap: 1.5rem;
    width: 61.9%;
  }
  .p-implant__txt .u-pc {
    display: none;
  }
  .p-policy__txt {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 1rem;
  }
  .p-policy__txt span {
    text-align: right;
    width: 100%;
  }
  .p-flow__cards {
    gap: 4.5rem 3.75rem;
  }
  .p-flow__card {
    width: calc((100% - 7.5rem) / 3);
  }
  .p-flow h3 .u-pc {
    display: none;
  }
  .p-aboutUs__txt {
    width: 58%;
  }
  .p-aboutUs__txt .u-pc {
    display: none;
  }
  .p-aboutUs__card:nth-child(1) .p-aboutUs__txt,
  .p-aboutUs__card:nth-child(3) .p-aboutUs__txt {
    margin-left: 0;
  }
  .p-aboutUs__card:nth-child(2) .p-aboutUs__txt {
    white-space: wrap;
  }
  .p-root__cards {
    gap: 4.5rem 3.75rem;
  }
  .p-root__card {
    width: calc((100% - 7.5rem) / 3);
  }
  .p-caries__txt {
    white-space: wrap;
    gap: 1.5rem;
    width: 61.9%;
  }
  .p-caries__txt .u-pc {
    display: none;
  }
  .p-occlusion__txt {
    white-space: wrap;
    gap: 1.5rem;
    width: 61.9%;
  }
  .p-occlusion__txt .u-pc {
    display: none;
  }
  .p-denture__txt {
    white-space: wrap;
    gap: 1.5rem;
    width: 61.9%;
  }
  .p-denture__txt .u-pc {
    display: none;
  }
  .p-implant__txt {
    white-space: wrap;
    gap: 1.5rem;
    width: 61.9%;
  }
  .p-implant__txt .u-pc {
    display: none;
  }
  .p-orthodonic__txt {
    white-space: wrap;
    gap: 1.5rem;
    width: 61.9%;
  }
  .p-orthodonic__txt .u-pc {
    display: none;
  }
  .p-perio__txt {
    white-space: wrap;
    gap: 1.5rem;
    width: 61.9%;
  }
  .p-perio__txt .u-pc {
    display: none;
  }
  .p-cosmetic__txt {
    white-space: wrap;
    gap: 1.5rem;
    width: 61.9%;
  }
  .p-cosmetic__txt .u-pc {
    display: none;
  }
  .p-child__txt {
    white-space: wrap;
    gap: 1.5rem;
    width: 61.9%;
  }
  .p-child__txt .u-pc {
    display: none;
  }
  .p-policy__txt {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 1rem;
  }
  .p-policy__txt span {
    text-align: right;
    width: 100%;
  }
  .p-flow__cards {
    gap: 4.5rem 3.75rem;
  }
  .p-flow__card {
    width: calc((100% - 7.5rem) / 3);
  }
  .p-flow h3 .u-pc {
    display: none;
  }
  .p-aboutUs__txt {
    width: 58%;
  }
  .p-aboutUs__txt .u-pc {
    display: none;
  }
  .p-aboutUs__card:nth-child(1) .p-aboutUs__txt,
  .p-aboutUs__card:nth-child(3) .p-aboutUs__txt {
    margin-left: 0;
  }
  .p-aboutUs__card:nth-child(2) .p-aboutUs__txt {
    white-space: wrap;
  }
  .p-root__cards {
    gap: 4.5rem 3.75rem;
  }
  .p-root__card {
    width: calc((100% - 7.5rem) / 3);
  }
  .p-access__btn--page {
    margin-bottom: 1.5rem;
  }
  .p-about__desc {
    gap: 4.3%;
  }
  .p-info__image {
    width: 48.9%;
  }
  .p-info__content {
    width: 46%;
  }
  .p-info__txt {
    width: 100%;
  }
  .p-info__list {
    gap: 4.6875rem 3.125rem;
  }
  .p-info__unit {
    width: calc((100% - 6.25rem) / 3);
    gap: 2.5rem;
  }
  .p-doctor__content {
    width: calc(100% - 42.125rem - 5.2%);
  }
  .p-doctor__info-list {
    gap: 2.4375rem;
  }
  .p-doctor__info-unit {
    width: 100%;
  }
  .p-msg__desc {
    gap: 3.5%;
  }
  .p-msg__content {
    width: calc(100% - 54.8125rem - 3.5%);
  }
  .p-msg__txt li {
    width: 50%;
  }
  .p-access__map {
    width: 45%;
  }
  .p-access__content {
    width: 53%;
    margin-left: 0;
  }
  .p-access__cta {
    gap: 1.9375rem;
  }
  .u-tab {
    display: block;
  }
  .u-fd-c-lg-max {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .u-fd-r-lg-max {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}
@media (max-width: 768px) {
  html {
    font-size: 3.7209302326vw;
  }
  html {
    font-size: 3.7209302326vw;
  }
}
@media screen and (max-width: 768px) {
  .c-page-top {
    padding: 3.125rem 0;
  }
  .c-page-top::before {
    background: rgba(255, 255, 255, 0.4);
  }
  .c-page-top__breadcrumbs {
    font-size: 0.875rem;
  }
  .c-page-top__breadcrumb-link {
    padding-right: 0.5625rem;
    margin-right: 0.5rem;
  }
  .c-page-top__ttl {
    font-size: 2rem;
  }
  .c-reserve {
    padding-bottom: 3.125rem;
  }
  .c-reserve::before {
    height: calc(100% - 3.125rem);
  }
  .c-reserve__ttl {
    margin-bottom: 1.5rem;
  }
  .c-reserve__ja {
    font-size: 1.5rem;
  }
  .c-reserve__en {
    font-size: 2.375rem;
    line-height: 1.3;
  }
  .c-reserve__cards {
    gap: 1.25rem 1rem;
  }
  .c-reserve__card {
    width: calc((100% - 1rem) / 2);
    padding: 1rem 0.625rem;
  }
  .c-reserve__card h3 {
    font-size: 1.0625rem;
    margin-bottom: 0.75rem;
  }
  .c-reserve__card p {
    font-size: 0.8125rem;
    margin-bottom: 1rem;
  }
  .c-reserve__btn > a {
    font-size: 0.875rem;
    width: 100%;
  }
  .c-clinic {
    padding: 4rem 0;
  }
  .c-clinic__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
  }
  .c-clinic__matsuki {
    margin-bottom: 3.1875rem;
  }
  .c-clinic__matsuki-nm {
    gap: 0.375rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: 1.6875rem;
  }
  .c-clinic__matsuki-nm > * {
    width: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .c-clinic__matsuki-nm h3 {
    font-size: 1.375rem;
  }
  .c-clinic__matsuki-nm p {
    font-size: 0.8125rem;
    margin: 0;
  }
  .c-clinic .c-schedule {
    width: 100%;
  }
  .c-clinic .c-schedule__table {
    font-size: 0.8125rem;
  }
  .c-clinic .c-schedule__table p {
    margin: 0;
  }
  .c-clinic .c-schedule__table p span:nth-child(1) {
    margin-right: 1rem;
  }
  .c-clinic .c-schedule__table p span:nth-child(2) {
    margin-right: 1.5rem;
  }
  .c-clinic__contact {
    width: 100%;
  }
  .c-clinic__partner-content {
    width: 100%;
  }
  .c-clinic__partner-content > p {
    font-size: 0.875rem;
    margin-bottom: 1rem;
  }
  .c-clinic__partnerTtl {
    margin-bottom: 1rem;
  }
  .c-clinic__partnerTtl p {
    font-size: 1.125rem;
    margin-bottom: 0.9375rem;
  }
  .c-clinic__partnerTtl h3 {
    font-size: 1.375rem;
  }
  .c-clinic__btn a {
    font-size: 1rem;
    padding: 0.75rem 0.75rem 0.75rem 1.5rem;
  }
  .c-clinic__btn a img {
    width: 1.125rem;
    margin-bottom: 0.25rem;
  }
  .c-clinic__img {
    width: 100%;
  }
  .c-contactBlock--cta {
    padding: 2rem 0;
  }
  .c-contactBlock--intro {
    padding: 7.8125rem 0 0;
  }
  .c-contactBlock--intro h2 {
    font-size: 2.25rem;
    margin-bottom: 0.75rem;
  }
  .c-contactBlock--intro p {
    font-size: 1.25rem;
  }
  .c-contactBlock__ttl {
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }
  .c-contactBlock__txt {
    font-size: 1rem;
    margin-bottom: 1.0625rem;
  }
  .c-contactBlock__btn {
    margin: 0;
  }
  .c-contact__tel {
    padding: 0.75rem 0.625rem 0.5rem;
    margin-bottom: 0.625rem;
  }
  .c-contact__tel p:nth-child(1) {
    font-size: 1rem;
    margin-bottom: 0.375rem;
  }
  .c-contact__tel p:nth-child(2) {
    font-size: 1.375rem;
  }
  .c-contact__web {
    padding: 0.75rem 0.75rem 1rem;
    font-size: 1rem;
  }
  .c-contact__web a {
    padding: 0.4375rem 0 0.5625rem;
  }
  .c-ttl-en {
    font-size: 2rem;
  }
  .p-price {
    padding: 4rem 0 5rem;
  }
  .p-price__area:not(:last-child) {
    margin-bottom: 2.625rem;
  }
  .p-price h2 {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .p-price table th,
  .p-price table td {
    line-height: 1.4;
    font-size: 0.8125rem;
  }
  .p-price h3 {
    font-size: 1rem;
    padding-left: 1.5rem;
    margin: 0.75rem 0;
  }
  .p-price h3::before {
    left: 1rem;
  }
  .p-concept {
    padding: 3.75rem 0 5.9375rem;
  }
  .p-concept__flex {
    gap: 1.5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .p-concept__ttl {
    width: 100%;
    margin: 0;
  }
  .p-concept__ttl p {
    left: 0;
  }
  .p-concept__ttl h2 {
    font-size: 1.5rem;
  }
  .p-concept__txt {
    width: 100%;
    font-size: 0.875rem;
  }
  .p-message {
    padding-bottom: 2.9375rem;
  }
  .p-message__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
  }
  .p-message__content {
    width: 100%;
  }
  .p-message__ttl h2 {
    margin: 0;
    text-align: center;
    font-size: 1.5rem;
  }
  .p-message__img {
    width: 92%;
    margin: 0 auto 1.25rem;
  }
  .p-message__nm {
    font-size: 0.875rem;
  }
  .p-message__nm span {
    font-size: 1.25rem;
  }
  .p-message__txt {
    width: 100%;
    font-size: 0.9375rem;
    white-space: wrap;
    line-height: 1.8;
    gap: 1.6875rem;
  }
  .p-strength {
    padding-bottom: 3.5rem;
  }
  .p-strength::before {
    height: calc(100% - 3.125rem);
  }
  .p-strength__ttl {
    margin-bottom: 3.125rem;
  }
  .p-strength__ttl h2 {
    font-size: 1.5rem;
  }
  .p-strength__ttl p {
    font-size: 2.375rem;
  }
  .p-strength__cards {
    gap: 1.25rem;
  }
  .p-strength__card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 1.5rem;
    gap: 1.5rem;
  }
  .p-strength__img {
    width: 100%;
  }
  .p-strength__content {
    width: 100%;
  }
  .p-strength__content h3 {
    font-size: 1.125rem;
    line-height: 1.4;
    margin-bottom: 1rem;
  }
  .p-strength__content p {
    font-size: 0.875rem;
  }
  .p-implant__ttl {
    font-size: 1.125rem;
  }
  .p-implant__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-implant__img {
    width: 92%;
  }
  .p-implant__txt {
    width: 100%;
    font-size: 0.875rem;
    gap: 1rem;
  }
  .p-policy__ttl {
    margin-bottom: 1.25rem;
  }
  .p-policy__ttl h2 {
    font-size: 1.375rem;
  }
  .p-policy__txt {
    gap: 0;
    margin-bottom: 1.5rem;
  }
  .p-policy__txt p {
    font-size: 0.875rem;
  }
  .p-policy__txt span {
    font-size: 0.75rem;
    line-height: 1;
  }
  .p-policy__flow > * {
    -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;
    gap: 1.5rem;
  }
  .p-policy__flow ol {
    width: 100%;
    margin-left: 3.6em;
  }
  .p-policy__flow ol li {
    font-size: 0.8125rem;
  }
  .p-policy__img {
    width: 90%;
  }
  .p-policy__img::before {
    content: none;
  }
  .p-flow {
    padding: 3.125rem 0 2.5rem;
  }
  .p-flow__ttl {
    margin-bottom: 3.125rem;
  }
  .p-flow__ttl h2 {
    font-size: 1.375rem;
  }
  .p-flow__cards {
    gap: 2.625rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .p-flow__card {
    width: 92%;
    padding: 1.5rem 1.25rem;
  }
  .p-flow__card:nth-child(n+1) h3 {
    margin-bottom: 0.75rem;
  }
  .p-flow__card:nth-child(n+4) h3 {
    height: auto;
    margin-bottom: 0.75rem;
  }
  .p-flow__no {
    width: 2rem;
    height: 2rem;
    font-size: 1.125rem;
  }
  .p-flow__img {
    margin-bottom: 1rem;
  }
  .p-flow h3 {
    font-size: 1rem;
    line-height: 1.4;
  }
  .p-flow h3 span {
    font-size: 0.875rem;
  }
  .p-flow__content p {
    font-size: 0.875rem;
  }
  .p-flow__txt {
    font-size: 0.875rem;
  }
  .p-flow__btn a {
    font-size: 1rem;
  }
  .p-flow__btn a img {
    width: 1.125rem;
  }
  .p-aboutUs {
    padding: 4.375rem 0 3.125rem;
  }
  .p-aboutUs__ttl {
    margin-bottom: 2rem;
  }
  .p-aboutUs__ttl h2 {
    font-size: 1.375rem;
    margin-left: 0;
  }
  .p-aboutUs__msg {
    font-size: 1.125rem;
    margin-left: 0;
    margin-bottom: 0.875rem;
  }
  .p-aboutUs__desc {
    font-size: 0.875rem;
    margin-left: 0;
    margin-bottom: 2rem;
  }
  .p-aboutUs__cards {
    gap: 2rem;
  }
  .p-aboutUs__card-ttl {
    margin-bottom: 1.5rem;
  }
  .p-aboutUs__card-ttl::before {
    width: 100%;
    margin: auto;
  }
  .p-aboutUs__card-ttl h3 {
    font-size: 1.125rem;
    line-height: 1.2;
    padding: 0.5rem 0.75rem;
  }
  .p-aboutUs__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1rem;
  }
  .p-aboutUs__txt {
    width: 100%;
    font-size: 0.875rem;
  }
  .p-aboutUs__img {
    width: 100%;
    margin-top: 0;
  }
  .p-aboutUs__card:nth-child(1) .p-aboutUs__flex,
  .p-aboutUs__card:nth-child(3) .p-aboutUs__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .p-aboutUs__card:nth-child(2) .p-aboutUs__card-ttl {
    text-align: left;
  }
  .p-aboutUs__card:nth-child(2) .p-aboutUs__txt {
    width: 100%;
  }
  .p-root {
    padding: 3.125rem 0 2.5rem;
  }
  .p-root__area h2 {
    font-size: 1.5rem;
    margin-left: 0.375rem;
  }
  .p-root__area:not(:last-child) {
    margin-bottom: 2.125rem;
  }
  .p-root__area--loc {
    margin-bottom: 3.125rem;
  }
  .p-root__flex {
    margin-top: 1.875rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
  }
  .p-root__contnet {
    width: 100%;
  }
  .p-root__add {
    font-size: 1rem;
    margin-bottom: 0.8125rem;
  }
  .p-root__block {
    margin-left: 1rem;
  }
  .p-root__block ul {
    gap: 0.4375rem;
    margin-bottom: 1rem;
  }
  .p-root__block ul li {
    gap: 0.3125rem;
  }
  .p-root__block ul li p {
    font-size: 0.8125rem;
  }
  .p-root__block ul li p > * {
    font-size: 0.9375rem;
  }
  .p-root__block ul li p > * > * {
    font-size: 1.125rem;
  }
  .p-root__label {
    font-size: 0.9375rem;
    min-width: 6.25rem;
    padding: 0.25rem;
  }
  .p-root__car {
    padding: 2rem 0.3125rem;
    border-width: 0.1875rem;
  }
  .p-root__car::before {
    left: -1.1%;
    width: 0.25rem;
  }
  .p-root__car h3 {
    font-size: 1rem;
    margin-bottom: 0.375rem;
  }
  .p-root__car p {
    font-size: 0.8125rem;
  }
  .p-root__map {
    width: 100%;
  }
  .p-root__map iframe {
    height: 18.75rem;
  }
  .p-root__cards {
    gap: 2.625rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 2.8125rem;
    margin-left: 0.875rem;
  }
  .p-root__card {
    width: 92%;
    padding: 1.5rem 1.25rem;
  }
  .p-root__no {
    width: 2rem;
    height: 2rem;
    font-size: 1.125rem;
  }
  .p-root__img {
    margin-bottom: 1rem;
  }
  .p-root__content {
    margin: 0;
  }
  .p-root__content p {
    font-size: 0.875rem;
  }
  .p-root__list {
    margin-top: 2.625rem;
    gap: 2rem;
  }
  .p-root__unit h3 {
    font-size: 1rem;
  }
  .p-root__unit:nth-child(1) .p-root__icon {
    width: 1.8125rem;
  }
  .p-root__unit:nth-child(2) .p-root__icon {
    width: 2rem;
  }
  .p-root__unit-ttl {
    margin-left: 0.75rem;
    gap: 1.5rem;
    margin-bottom: 2rem;
  }
  .p-facility {
    padding-bottom: 3.4375rem;
  }
  .p-facility__ttl {
    margin-bottom: 2.8125rem;
  }
  .p-facility__ttl h2 {
    font-size: 1.5rem;
    margin-bottom: 0.625rem;
  }
  .p-facility__cards {
    gap: 1.5rem;
  }
  .p-facility__card {
    width: 100%;
  }
  .p-facility__card h3 {
    font-size: 1.125rem;
    margin-bottom: 0.5rem;
    margin-left: 0.75rem;
  }
  .p-opp {
    padding-bottom: 3.5rem;
  }
  .p-opp__ttl {
    font-size: 1.5rem;
    margin-bottom: 2.1875rem;
  }
  .p-opp__cards {
    gap: 1.25rem;
  }
  .p-opp__card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 1.5rem;
    gap: 1.5rem;
  }
  .p-opp__img {
    width: 100%;
    border: none;
  }
  .p-opp__content {
    width: 100%;
  }
  .p-opp__content h3 {
    font-size: 1.125rem;
    line-height: 1.4;
    margin-bottom: 1rem;
    text-align: center;
  }
  .p-opp__txt {
    font-size: 0.875rem;
  }
  .c-page-top {
    padding: 3.125rem 0;
  }
  .c-page-top::before {
    background: rgba(255, 255, 255, 0.4);
  }
  .c-page-top__breadcrumbs {
    font-size: 0.875rem;
  }
  .c-page-top__breadcrumb-link {
    padding-right: 0.5625rem;
    margin-right: 0.5rem;
  }
  .c-page-top__ttl {
    font-size: 2rem;
  }
  .c-reserve {
    padding-bottom: 3.125rem;
  }
  .c-reserve::before {
    height: calc(100% - 3.125rem);
  }
  .c-reserve__ttl {
    margin-bottom: 1.5rem;
  }
  .c-reserve__ja {
    font-size: 1.5rem;
  }
  .c-reserve__en {
    font-size: 2.375rem;
    line-height: 1.3;
  }
  .c-reserve__cards {
    gap: 1.25rem 1rem;
  }
  .c-reserve__card {
    width: calc((100% - 1rem) / 2);
    padding: 1rem 0.625rem;
  }
  .c-reserve__card h3 {
    font-size: 1.0625rem;
    margin-bottom: 0.75rem;
  }
  .c-reserve__card p {
    font-size: 0.8125rem;
    margin-bottom: 1rem;
  }
  .c-reserve__btn > a {
    font-size: 0.875rem;
    width: 100%;
  }
  .c-clinic {
    padding: 4rem 0;
  }
  .c-clinic__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
  }
  .c-clinic__matsuki {
    margin-bottom: 3.1875rem;
  }
  .c-clinic__matsuki-nm {
    gap: 0.375rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: 1.6875rem;
  }
  .c-clinic__matsuki-nm h3 {
    font-size: 1.375rem;
  }
  .c-clinic__matsuki-nm p {
    font-size: 0.8125rem;
    margin: 0;
  }
  .c-clinic .c-schedule {
    width: 100%;
  }
  .c-clinic .c-schedule__table {
    font-size: 0.8125rem;
  }
  .c-clinic .c-schedule__table p {
    margin: 0;
  }
  .c-clinic .c-schedule__table p span:nth-child(1) {
    margin-right: 1rem;
  }
  .c-clinic .c-schedule__table p span:nth-child(2) {
    margin-right: 1.5rem;
  }
  .c-clinic__contact {
    width: 100%;
  }
  .c-clinic__partner-content {
    width: 100%;
  }
  .c-clinic__partner-content > p {
    font-size: 0.875rem;
    margin-bottom: 1rem;
  }
  .c-clinic__partnerTtl {
    margin-bottom: 1rem;
  }
  .c-clinic__partnerTtl p {
    font-size: 1.125rem;
    margin-bottom: 0.9375rem;
  }
  .c-clinic__partnerTtl h3 {
    font-size: 1.375rem;
  }
  .c-clinic__btn a {
    font-size: 1rem;
    padding: 0.75rem 0.75rem 0.75rem 1.5rem;
  }
  .c-clinic__btn a img {
    width: 1.125rem;
    margin-bottom: 0.25rem;
  }
  .c-clinic__img {
    width: 100%;
  }
  .c-contactBlock--cta {
    padding: 2rem 0;
  }
  .c-contactBlock--intro {
    padding: 7.8125rem 0 0;
  }
  .c-contactBlock--intro h2 {
    font-size: 2.25rem;
    margin-bottom: 0.75rem;
  }
  .c-contactBlock--intro p {
    font-size: 1.25rem;
  }
  .c-contactBlock__ttl {
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }
  .c-contactBlock__txt {
    font-size: 1rem;
    margin-bottom: 1.0625rem;
  }
  .c-contactBlock__btn {
    margin: 0;
  }
  .c-contact__tel {
    padding: 0.75rem 0.625rem 0.5rem;
    margin-bottom: 0.625rem;
  }
  .c-contact__tel p:nth-child(1) {
    font-size: 1rem;
    margin-bottom: 0.375rem;
  }
  .c-contact__tel p:nth-child(2) {
    font-size: 1.375rem;
  }
  .c-contact__web {
    padding: 0.75rem 0.75rem 1rem;
    font-size: 1rem;
  }
  .c-contact__web a {
    padding: 0.4375rem 0 0.5625rem;
  }
  .c-ttl-en {
    font-size: 2rem;
  }
  .p-price {
    padding: 4rem 0 5rem;
  }
  .p-price__area:not(:last-child) {
    margin-bottom: 2.625rem;
  }
  .p-price h2 {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .p-price table th,
  .p-price table td {
    line-height: 1.4;
    font-size: 0.8125rem;
  }
  .p-price h3 {
    font-size: 1rem;
    padding-left: 1.5rem;
    margin: 0.75rem 0;
  }
  .p-price h3::before {
    left: 1rem;
  }
  .p-concept {
    padding: 3.75rem 0 5.9375rem;
  }
  .p-concept__flex {
    gap: 1.5rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .p-concept__ttl {
    width: 100%;
    margin: 0;
  }
  .p-concept__ttl p {
    left: 0;
  }
  .p-concept__ttl h2 {
    font-size: 1.5rem;
  }
  .p-concept__txt {
    width: 100%;
    font-size: 0.875rem;
  }
  .p-message {
    padding-bottom: 2.9375rem;
  }
  .p-message__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
  }
  .p-message__content {
    width: 100%;
  }
  .p-message__ttl h2 {
    margin: 0;
    text-align: center;
    font-size: 1.5rem;
  }
  .p-message__img {
    width: 92%;
    margin: 0 auto 1.25rem;
  }
  .p-message__nm {
    font-size: 0.875rem;
  }
  .p-message__nm span {
    font-size: 1.25rem;
  }
  .p-message__txt {
    width: 100%;
    font-size: 0.9375rem;
    white-space: wrap;
    line-height: 1.8;
    gap: 1.6875rem;
  }
  .p-strength {
    padding-bottom: 3.5rem;
  }
  .p-strength::before {
    height: calc(100% - 3.125rem);
  }
  .p-strength__ttl {
    margin-bottom: 3.125rem;
  }
  .p-strength__ttl h2 {
    font-size: 1.5rem;
  }
  .p-strength__ttl p {
    font-size: 2.375rem;
  }
  .p-strength__cards {
    gap: 1.25rem;
  }
  .p-strength__card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 1.5rem;
    gap: 1.5rem;
  }
  .p-strength__img {
    width: 100%;
  }
  .p-strength__content {
    width: 100%;
  }
  .p-strength__content h3 {
    font-size: 1.125rem;
    line-height: 1.4;
    margin-bottom: 1rem;
  }
  .p-strength__content p {
    font-size: 0.875rem;
  }
  .p-caries__ttl {
    font-size: 1.125rem;
  }
  .p-caries__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-caries__img {
    width: 92%;
  }
  .p-caries__txt {
    width: 100%;
    font-size: 0.875rem;
    gap: 1rem;
  }
  .p-occlusion__ttl {
    font-size: 1.125rem;
  }
  .p-occlusion__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-occlusion__img {
    width: 92%;
  }
  .p-occlusion__txt {
    width: 100%;
    font-size: 0.875rem;
    gap: 1rem;
  }
  .p-denture__ttl {
    font-size: 1.125rem;
  }
  .p-denture__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-denture__img {
    width: 92%;
  }
  .p-denture__txt {
    width: 100%;
    font-size: 0.875rem;
    gap: 1rem;
  }
  .p-implant__ttl {
    font-size: 1.125rem;
  }
  .p-implant__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-implant__img {
    width: 92%;
  }
  .p-implant__txt {
    width: 100%;
    font-size: 0.875rem;
    gap: 1rem;
  }
  .p-orthodonic__ttl {
    font-size: 1.125rem;
  }
  .p-orthodonic__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-orthodonic__img {
    width: 92%;
  }
  .p-orthodonic__txt {
    width: 100%;
    font-size: 0.875rem;
    gap: 1rem;
  }
  .p-perio__ttl {
    font-size: 1.125rem;
  }
  .p-perio__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-perio__img {
    width: 92%;
  }
  .p-perio__txt {
    width: 100%;
    font-size: 0.875rem;
    gap: 1rem;
  }
  .p-cosmetic__ttl {
    font-size: 1.125rem;
  }
  .p-cosmetic__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-cosmetic__img {
    width: 92%;
  }
  .p-cosmetic__txt {
    width: 100%;
    font-size: 0.875rem;
    gap: 1rem;
  }
  .p-child__ttl {
    font-size: 1.125rem;
  }
  .p-child__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .p-child__img {
    width: 92%;
  }
  .p-child__txt {
    width: 100%;
    font-size: 0.875rem;
    gap: 1rem;
  }
  .p-policy__ttl {
    margin-bottom: 1.25rem;
  }
  .p-policy__ttl h2 {
    font-size: 1.375rem;
  }
  .p-policy__txt {
    gap: 0;
    margin-bottom: 1.5rem;
  }
  .p-policy__txt p {
    font-size: 0.875rem;
  }
  .p-policy__txt span {
    font-size: 0.75rem;
    line-height: 1;
  }
  .p-policy__flow > * {
    -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;
    gap: 1.5rem;
  }
  .p-policy__flow ol {
    width: 100%;
    margin-left: 3.6em;
  }
  .p-policy__flow ol li {
    font-size: 0.8125rem;
  }
  .p-policy__img {
    width: 90%;
  }
  .p-policy__img::before {
    content: none;
  }
  .p-policy__caries {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  .p-policy__perio {
    width: 90% !important;
    padding-left: 0;
    margin-bottom: 20px !important;
  }
  .p-policy__perio-sub {
    width: 90% !important;
    padding-left: 0;
    margin-bottom: 20px !important;
  }
  .p-policy__cosmetic {
    width: 90% !important;
    margin-bottom: 20px !important;
  }
  .p-policy__child {
    width: 90% !important;
    margin-bottom: 20px !important;
  }
  .p-flow {
    padding: 3.125rem 0 2.5rem;
  }
  .p-flow__ttl {
    margin-bottom: 3.125rem;
  }
  .p-flow__ttl h2 {
    font-size: 1.375rem;
  }
  .p-flow__cards {
    gap: 2.625rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .p-flow__card {
    width: 92%;
    padding: 1.5rem 1.25rem;
  }
  .p-flow__card:nth-child(n+1) h3 {
    margin-bottom: 0.75rem;
  }
  .p-flow__card:nth-child(n+4) h3 {
    height: auto;
    margin-bottom: 0.75rem;
  }
  .p-flow__no {
    width: 2rem;
    height: 2rem;
    font-size: 1.125rem;
  }
  .p-flow__img {
    margin-bottom: 1rem;
  }
  .p-flow h3 {
    font-size: 1rem;
    line-height: 1.4;
  }
  .p-flow h3 span {
    font-size: 0.875rem;
  }
  .p-flow__content p {
    font-size: 0.875rem;
  }
  .p-flow__txt {
    font-size: 0.875rem;
  }
  .p-flow__btn a {
    font-size: 1rem;
  }
  .p-flow__btn a img {
    width: 1.125rem;
  }
  .p-flow__block {
    gap: 2.625rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .p-flow__block__flex {
    margin: 0 auto 40px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1rem;
  }
  .p-flow__block__txt {
    width: 90%;
    font-size: 0.875rem;
    margin: auto 1.25rem;
  }
  .p-flow__block__txt h3 {
    margin-bottom: 5px;
    font-size: 1rem;
  }
  .p-flow__block__img {
    width: 100%;
    margin-right: 0;
    margin-top: clamp(5.3333333333px, 0.6944444444vw, 10px);
  }
  .p-aboutUs {
    padding: 4.375rem 0 3.125rem;
  }
  .p-aboutUs__ttl {
    margin-bottom: 2rem;
  }
  .p-aboutUs__ttl h2 {
    font-size: 1.375rem;
    margin-left: 0;
  }
  .p-aboutUs__msg {
    font-size: 1.125rem;
    margin-left: 0;
    margin-bottom: 0.875rem;
  }
  .p-aboutUs__desc {
    font-size: 0.875rem;
    margin-left: 0;
    margin-bottom: 2rem;
  }
  .p-aboutUs__cards {
    gap: 2rem;
  }
  .p-aboutUs__card-ttl {
    margin-bottom: 1.5rem;
  }
  .p-aboutUs__card-ttl::before {
    width: 100%;
    margin: auto;
  }
  .p-aboutUs__card-ttl h3 {
    font-size: 1.125rem;
    line-height: 1.2;
    padding: 0.5rem 0.75rem;
  }
  .p-aboutUs__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1rem;
  }
  .p-aboutUs__txt {
    width: 100%;
    font-size: 0.875rem;
  }
  .p-aboutUs__img {
    width: 100%;
    margin-top: 0;
  }
  .p-aboutUs__card:nth-child(1) .p-aboutUs__flex,
  .p-aboutUs__card:nth-child(3) .p-aboutUs__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .p-aboutUs__card:nth-child(2) .p-aboutUs__card-ttl {
    text-align: left;
  }
  .p-aboutUs__card:nth-child(2) .p-aboutUs__txt {
    width: 100%;
  }
  .p-root {
    padding: 3.125rem 0 2.5rem;
  }
  .p-root__area h2 {
    font-size: 1.5rem;
    margin-left: 0.375rem;
  }
  .p-root__area:not(:last-child) {
    margin-bottom: 2.125rem;
  }
  .p-root__area--loc {
    margin-bottom: 3.125rem;
  }
  .p-root__flex {
    margin-top: 1.875rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
  }
  .p-root__contnet {
    width: 100%;
  }
  .p-root__add {
    font-size: 1rem;
    margin-bottom: 0.8125rem;
  }
  .p-root__block {
    margin-left: 1rem;
  }
  .p-root__block ul {
    gap: 0.4375rem;
    margin-bottom: 1rem;
  }
  .p-root__block ul li {
    gap: 0.3125rem;
  }
  .p-root__block ul li p {
    font-size: 0.8125rem;
  }
  .p-root__block ul li p > * {
    font-size: 0.9375rem;
  }
  .p-root__block ul li p > * > * {
    font-size: 1.125rem;
  }
  .p-root__label {
    font-size: 0.9375rem;
    min-width: 6.25rem;
    padding: 0.25rem;
  }
  .p-root__car {
    padding: 2rem 0.3125rem;
    border-width: 0.1875rem;
  }
  .p-root__car::before {
    left: -1.1%;
    width: 0.25rem;
  }
  .p-root__car h3 {
    font-size: 1rem;
    margin-bottom: 0.375rem;
  }
  .p-root__car p {
    font-size: 0.8125rem;
  }
  .p-root__map {
    width: 100%;
  }
  .p-root__map iframe {
    height: 18.75rem;
  }
  .p-root__cards {
    gap: 2.625rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 2.8125rem;
    margin-left: 0.875rem;
  }
  .p-root__card {
    width: 92%;
    padding: 1.5rem 1.25rem;
  }
  .p-root__no {
    width: 2rem;
    height: 2rem;
    font-size: 1.125rem;
  }
  .p-root__img {
    margin-bottom: 1rem;
  }
  .p-root__content {
    margin: 0;
  }
  .p-root__content p {
    font-size: 0.875rem;
  }
  .p-root__list {
    margin-top: 2.625rem;
    gap: 2rem;
  }
  .p-root__unit h3 {
    font-size: 1rem;
  }
  .p-root__unit:nth-child(1) .p-root__icon {
    width: 1.8125rem;
  }
  .p-root__unit:nth-child(2) .p-root__icon {
    width: 2rem;
  }
  .p-root__unit-ttl {
    margin-left: 0.75rem;
    gap: 1.5rem;
    margin-bottom: 2rem;
  }
  .p-facility {
    padding-bottom: 3.4375rem;
  }
  .p-facility__ttl {
    margin-bottom: 2.8125rem;
  }
  .p-facility__ttl h2 {
    font-size: 1.5rem;
    margin-bottom: 0.625rem;
  }
  .p-facility__cards {
    gap: 1.5rem;
  }
  .p-facility__card {
    width: 100%;
  }
  .p-facility__card h3 {
    font-size: 1.125rem;
    margin-bottom: 0.5rem;
    margin-left: 0.75rem;
  }
  .p-opp {
    padding-bottom: 3.5rem;
  }
  .p-opp__ttl {
    font-size: 1.5rem;
    margin-bottom: 2.1875rem;
  }
  .p-opp__cards {
    gap: 1.25rem;
  }
  .p-opp__card {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 1.5rem;
    gap: 1.5rem;
  }
  .p-opp__img {
    width: 100%;
    border: none;
  }
  .p-opp__content {
    width: 100%;
  }
  .p-opp__content h3 {
    font-size: 1.125rem;
    line-height: 1.4;
    margin-bottom: 1rem;
    text-align: center;
  }
  .p-opp__txt {
    font-size: 0.875rem;
  }
  .p-doctor__btn {
    margin-top: 2rem;
    margin-bottom: 6.625rem;
  }
  .p-access__btn--page {
    margin-bottom: 1rem;
  }
  .c-tag::before {
    width: 97%;
    bottom: -0.3125rem;
    right: -0.0625rem;
  }
  .c-tag > * {
    padding: 0.25rem 0.625rem 0.4375rem;
  }
  .c-btn__icon {
    top: 0.875rem;
    right: 0.625rem;
    position: absolute;
    width: 0.79875rem;
  }
  .c-btn__icon img {
    top: 0;
    transform: translateY(0%);
    -webkit-transform: translateY(0%);
    -ms-transform: translateY(0%);
  }
  .c-btn__link {
    border-radius: 0;
    width: 100%;
    padding: 0.6875rem 0 0.8125rem;
  }
  .c-schedule table {
    margin-bottom: 0.625rem;
  }
  .c-schedule table tr {
    border-bottom: 0.0625rem solid #707070;
  }
  .c-schedule p {
    padding-right: 0.875rem;
    gap: 1.875rem;
  }
  .p-fv {
    height: auto;
    background-image: none;
    padding: 0 0 2.875rem;
  }
  .p-fv__img {
    margin-bottom: 2rem;
  }
  .p-fv__content {
    color: #000;
    margin-top: 0;
    /*    padding: 19.375rem 0 0; */
  }
  .p-fv__catch {
    padding: 0.25rem 0.3125rem 0.375rem 0.5rem;
    margin-bottom: 0.125rem;
  }
  .p-fv__ttl {
    margin-bottom: 1.75rem;
    line-height: 1.6;
    text-shadow: none;
  }
  .p-fv__txt {
    width: 100%;
    line-height: 2.15;
    background-color: transparent;
    padding: 0;
  }
  .p-fv__schedule {
    border-width: 0.01875rem;
    /*    padding: 1.0625rem 0 1.25rem 0.625rem; */
    padding: 1.0625rem 0.625rem 1.25rem 0.625rem;
    /*    top: 13.75rem; */
    /*    margin-right: 10px; */
    border: 1px solid #707070;
    margin: 0 auto 2rem;
  }
  .p-fv__schedule .c-schedule__table {
    margin-bottom: 1.5rem;
  }
  .p-fv__schedule .c-schedule__table table th,
  .p-fv__schedule .c-schedule__table table td {
    /*  padding: 0 0.5625rem; */
    padding: 0 0.4375rem;
  }
  .p-fv__schedule .c-schedule__table table th:nth-child(1),
  .p-fv__schedule .c-schedule__table table td:nth-child(1) {
    padding-left: 0.1875rem;
  }
  .p-fv__schedule .c-schedule__table table th {
    /*  padding-bottom: 0.875rem; */
    padding-bottom: 0.625rem;
  }
  .p-fv__schedule .c-schedule__table table td {
    padding-top: 0.4375rem;
    /*  padding-bottom: 0.8125rem; */
    padding-bottom: 0.65rem;
  }
  .p-fv__tel-list {
    gap: 0;
    /*  margin: 0 auto 1.25rem; */
    margin: 0 auto 0.75rem;
    width: 87%;
  }
  .p-fv__tel-btn {
    gap: 0.5rem;
  }
  .p-fv__cta {
    gap: 0.75rem;
    width: 87%;
    margin: 0 auto;
  }
  .p-fv__cta-btn {
    width: 100%;
  }
  .p-fv__line {
    background-color: #3ACE00;
    color: #ffffff;
    padding: 0.6875rem 0 0.8125rem;
    border: 1px solid #3ACE00;
  }
  .p-about {
    padding: 0 0 5.75rem;
  }
  .p-about__ttl-bg {
    font-size: 3.4375rem;
    right: -0.75rem;
    top: 12.75rem;
  }
  .p-about__desc {
    gap: 2.125rem;
  }
  .p-about__image {
    width: auto;
    margin: 0 calc(50% - 50vw);
  }
  .p-about__content {
    width: 100%;
  }
  .p-about__tag {
    margin-bottom: 1.625rem;
  }
  .p-about__top {
    margin-bottom: 0.625rem;
  }
  .p-about__ttl {
    margin-bottom: 1.875rem;
  }
  .p-about__txt {
    gap: 1.5rem;
    margin-bottom: 2.125rem;
  }
  .p-about__add {
    margin-bottom: 2.75rem;
    gap: 0;
  }
  .p-about__add p:nth-child(1) {
    font-size: 0.75rem;
  }
  .p-about__add p:nth-child(2) {
    font-size: 0.625rem;
  }
  .p-info {
    padding-bottom: 4.0625rem;
  }
  .p-info__ttl-bg {
    font-size: 3.4375rem;
    /*  top: 12.3125rem; */
    top: 21.25rem;
  }
  .p-info__desc {
    gap: 2.625rem;
    margin-bottom: 3.9375rem;
  }
  .p-info__image {
    width: 98.9%;
  }
  .p-info__content {
    margin-top: 0;
    width: 100%;
  }
  .p-info__content > *:nth-child(2) {
    margin-left: 0;
  }
  .p-info__tag {
    margin-bottom: 1.4375rem;
  }
  .p-info__ttl {
    margin-bottom: 1.0625rem;
  }
  .p-info__lead {
    margin-bottom: 1.3125rem;
  }
  .p-info__list {
    gap: 2.0625rem 1.875rem;
  }
  .p-info__unit {
    width: calc((100% - 1.875rem) / 2);
    gap: 0.5625rem;
  }
  .p-info__unit p {
    line-height: 1.9;
    font-size: 0.6875rem;
  }
  .p-info__unit-ttl {
    /*    gap: 0.75rem; */
    gap: 0.35rem;
    margin-bottom: 0.5rem;
  }
  .p-info__icon {
    width: 2.0625rem;
    height: 2.0625rem;
    border: 0.0625rem solid #000;
  }
  .p-info__icon > * {
    width: 1.125rem;
  }
  .p-info__unit-tag {
    padding: 0.25rem 0.5rem 0.25rem 0.25rem;
    line-height: 1.2;
  }
  .p-doctor {
    /*    padding: 3.375rem 0 5.125rem; */
    padding: 3.375rem 0 3.125rem;
  }
  .p-doctor__ttl-bg {
    font-size: 3.4375rem;
    /*  top: 37.9375rem; */
    top: 42.5rem;
    right: -0.3125rem;
  }
  .p-doctor__inner {
    margin-bottom: 3.75rem;
  }
  .p-doctor__image {
    width: 16.25rem;
  }
  .p-doctor__content {
    width: 100%;
    margin-bottom: 3.5rem;
  }
  .p-doctor__tag {
    margin-bottom: 2.25rem;
  }
  .p-doctor__ttl {
    margin-bottom: 2.0625rem;
  }
  .p-doctor__txt {
    gap: 1.6875rem;
  }
  .p-doctor__info-ttl {
    margin-bottom: 2.3125rem;
  }
  .p-doctor__info-ttl p {
    margin-bottom: 0.5625rem;
  }
  .p-doctor__info-unit h4 {
    margin-bottom: 0.8125rem;
  }
  .p-doctor__info-unit ul {
    gap: 1.125rem;
  }
  .p-doctor__info-unit:nth-child(1) ul {
    gap: 0.8125rem 0.1875rem;
  }
  .p-facilities {
    padding-bottom: 3.1875rem;
  }
  .p-facilities__tag {
    margin-bottom: 1.375rem;
    margin-left: -1.3125rem;
  }
  .p-facilities__ttl {
    margin-left: 0;
    margin-bottom: 0.75rem;
  }
  .p-facilities__txt {
    margin-left: -0.5625rem;
    margin-bottom: 2rem;
  }
  .p-facilities .swiper {
    height: 22.8125rem;
  }
  .p-facilities .swiper-slide {
    height: 22.8125rem;
    padding: 0 0.375rem;
  }
  .p-facilities .swiper-slide img {
    width: 114.1875rem;
  }
  .p-msg {
    padding: 0 0 3.1875rem;
  }
  .p-msg__desc {
    gap: 2.125rem;
  }
  .p-msg__image {
    width: auto;
    margin: 0 calc(50% - 50vw);
  }
  .p-msg__content {
    width: 100%;
    margin-top: 0;
  }
  .p-msg__ttl {
    margin-bottom: 1.1875rem;
  }
  .p-msg__txt {
    margin-bottom: 2.0625rem;
  }
  .p-msg__txt > *:nth-child(1) {
    margin-bottom: 1.6875rem;
  }
  .p-msg__txt > *:nth-child(2) {
    gap: 0.375rem;
  }
  .p-msg__btn {
    margin-left: 0;
  }
  .p-access {
    padding: 4.5rem 0 3.5rem;
  }
  .p-access__ttl-bg {
    font-size: 3.4375rem;
    top: 30.625rem;
    left: -0.1875rem;
  }
  .p-access__desc {
    gap: 2.9375rem;
    margin-bottom: 2.5rem;
  }
  .p-access__map {
    width: 100%;
    height: 18.875rem;
  }
  .p-access__content {
    width: 97%;
    margin-left: 0;
  }
  .p-access__tag {
    margin-bottom: 1.375rem;
  }
  .p-access__ttl {
    margin-bottom: 1.0625rem;
  }
  .p-access__sns-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .p-access__add {
    margin-bottom: 0.625rem;
    line-height: 1.82;
  }
  .p-access__root {
    margin-bottom: 2.25rem;
    letter-spacing: -0.01em;
  }
  .p-access__schedule .c-schedule__table {
    margin-bottom: 0;
  }
  .p-access__schedule .c-schedule__table tr {
    border-width: 0.0625rem;
  }
  .p-access__schedule .c-schedule__table th,
  .p-access__schedule .c-schedule__table td {
    padding: 0 0.6875rem;
  }
  .p-access__schedule .c-schedule__table th:nth-child(1),
  .p-access__schedule .c-schedule__table td:nth-child(1) {
    padding-left: 0.25rem;
  }
  .p-access__schedule .c-schedule__table th {
    padding-bottom: 1.0625rem;
  }
  .p-access__schedule .c-schedule__table td {
    padding-top: 0.625rem;
    padding-bottom: 1rem;
  }
  .p-access__tel-list {
    gap: 0;
    margin-bottom: 2.375rem;
  }
  .p-access__tel-btn {
    gap: 0.5rem;
  }
  .p-access__cta {
    margin-bottom: 2.9375rem;
    gap: 1.3125rem;
  }
  .p-access__cta {
    margin-bottom: 2.9375rem;
    gap: 1.3125rem;
  }
  .p-access__cta-btn {
    width: 100%;
  }
  .p-access__cta-btn svg {
    top: 0.875rem;
    right: 0.625rem;
  }
  .p-access__line {
    background-color: #3ACE00;
    color: #ffffff;
    padding: 0.6875rem 0 0.8125rem;
    border: 1px solid #3ACE00;
  }
  .p-access__line img {
    width: 100%;
  }
  .p-access__btn {
    margin-left: 0;
  }
  .p-access__btn a {
    width: 97%;
    margin: 0 auto;
  }
  .l-header {
    padding-bottom: 0;
  }
  .l-header__top-bar {
    padding: 1rem 4.3125rem 0.875rem 1.0625rem;
  }
  .l-header__top-bar.scroll {
    padding-top: 1rem;
    padding-bottom: 0.875rem;
  }
  .l-header__logo {
    /*  width: 7.4375rem; */
    width: 8rem;
  }
  .l-header__tel-list--bar {
    gap: 1.125rem;
  }
  .l-header__tel-list--bar .l-header__tel-link {
    border-bottom: none;
  }
  .l-header__tel-btn {
    gap: 0.125rem;
  }
  .l-header__tel-btn span {
    /*  font-size: 0.75rem; */
    font-size: 0.6875rem;
  }
  .l-header__space {
    height: 3.75rem;
  }
  .l-footer {
    padding: 1.25rem 0 6.875rem;
    background-color: transparent;
    color: #000;
  }
  .l-footer__call-cta {
    position: fixed;
    bottom: 1rem;
    z-index: 1100;
    margin: 0 2.1875rem;
  }
  .u-pc {
    display: none;
  }
  .u-sp {
    display: block;
  }
  .u-jc-c-md-max {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .u-jc-sb-md-max {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .u-ai-c-md-max {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .u-fd-c-md-max {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .u-fd-cr-md-max {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .u-fd-r-md-max {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .u-ta-c-md-max {
    text-align: center;
  }
  .u-ls-15-md-max {
    letter-spacing: -0.015em;
  }
  .u-ls100-md-max {
    letter-spacing: 0.1em;
  }
  .u-ls200-md-max {
    letter-spacing: 0.2em;
  }
  .u-fs8-md-max {
    font-size: 0.5rem;
  }
  .u-fs10-md-max {
    font-size: 0.625rem;
  }
  .u-fs105-md-max {
    font-size: 0.65625rem;
  }
  .u-fs1075-md-max {
    font-size: 0.671875rem;
  }
  .u-fs11-md-max {
    font-size: 0.6875rem;
  }
  .u-fs12-md-max {
    font-size: 0.75rem;
  }
  .u-fs13-md-max {
    font-size: 0.8125rem;
  }
  .u-fs15-md-max {
    font-size: 0.9375rem;
  }
  .u-fs16-md-max {
    font-size: 1rem;
  }
  .u-fs17-md-max {
    font-size: 1.0625rem;
  }
  .u-fs20-md-max {
    font-size: 1.25rem;
  }
  .u-fs21-md-max {
    font-size: 1.3125rem;
  }
  .u-fs22-md-max {
    font-size: 1.375rem;
  }
  .u-fs23-md-max {
    font-size: 1.4375rem;
  }
  .u-fs25-md-max {
    font-size: 1.5625rem;
  }
  .u-fs28-md-max {
    font-size: 1.75rem;
  }
  .u-fs30-md-max {
    font-size: 1.875rem;
  }
  .u-po-sta-md-max {
    position: static;
  }
}
@media screen and (max-width: 768px) and (hover: hover) {
  .p-fv__line:hover {
    opacity: 1;
    color: #3ACE00;
    background-color: #ffffff;
  }
  .p-access__line:hover {
    opacity: 1;
    color: #3ACE00;
    background-color: #ffffff;
  }
  .p-access__line:hover svg > * {
    stroke: #3ACE00;
  }
}
@media screen and (max-width: 768px) and (hover: none) {
  .p-fv__line:active {
    opacity: 1;
    color: #3ACE00;
    background-color: #ffffff;
  }
  .p-access__line:active {
    opacity: 1;
    color: #3ACE00;
    background-color: #ffffff;
  }
  .p-access__line:active svg > * {
    stroke: #3ACE00;
  }
}
@media screen and (max-width: 430px) {
  body {
    font-size: 0.875rem;
  }
  body {
    font-size: 0.875rem;
  }
}
@media (hover: hover) {
  .c-reserve__btn > a:hover {
    background-color: #ffffff;
    color: #484B95;
  }
  .c-reserve__btn > a:hover {
    background-color: #ffffff;
    color: #484B95;
  }
  .c-btn__link:hover {
    background-color: #ffffff;
    color: #484B95;
    /*  color: #252939; */
  }
  .c-btn__link:hover img.no-hover {
    opacity: 0;
  }
  .c-btn__link:hover img.hover {
    opacity: 1;
  }
  .p-msg__btn a:hover {
    color: #252939;
  }
  .p-access__btn a:hover {
    color: #252939;
  }
  .p-access__btn a:hover svg > * {
    stroke: #252939;
  }
  .p-access__btn--page a:hover {
    color: #484B95;
  }
  .p-access__btn--page a:hover svg > * {
    stroke: #484B95;
  }
}
@media (hover: none) {
  .c-reserve__btn > a:active {
    background-color: #ffffff;
    color: #484B95;
  }
  .c-reserve__btn > a:active {
    background-color: #ffffff;
    color: #484B95;
  }
  .c-btn__link:active {
    background-color: #ffffff;
    color: #484B95;
    /*  color: #252939; */
  }
  .c-btn__link:active img.no-hover {
    opacity: 0;
  }
  .c-btn__link:active img.hover {
    opacity: 1;
  }
  .p-info__unit-link:active::after {
    width: 100%;
  }
  .p-msg__btn a:active {
    color: #252939;
  }
  .p-access__btn a:active {
    color: #252939;
  }
  .p-access__btn a:active svg > * {
    stroke: #252939;
  }
  .p-access__btn--page a:active {
    color: #484B95;
  }
  .p-access__btn--page a:active svg > * {
    stroke: #484B95;
  }
}

.l-header__menu-list li {
  width: auto;
  flex: 1;
}

@media screen and (max-width: 768px) {
  .p-info__list {
    gap: 2.0625rem 1.2rem;
  }
}

@media screen and (max-width: 1080px) {
  .p-info__unit {
    width: calc((100% - 6.25rem) / 2);
  }
}
@media screen and (max-width: 768px) {
  .p-info__unit {
    width: calc((100% - 1.2rem) / 2);
  }
}

.p-info__unit-ttl {
  width: 100%;
}
.p-info__unit-ttl h3 {
  width: calc(100% - 0.7rem - clamp(33px, 3.9814814815vw, 43px));
}

.p-info__unit-link {
  position: relative;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .p-info__unit-link {
    padding: 0;
  }
}
.p-info__unit-link span {
  position: absolute;
  width: 20px;
  height: 20px;
  display: block;
  background-color: #000000;
  border-radius: 50%;
  right: 5px;
  top: 16%;
  transition: 0.4s all;
}
@media screen and (max-width: 768px) {
  .p-info__unit-link span {
    width: 12px;
    height: 12px;
    right: 0;
  }
}
.p-info__unit-link span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  content: "";
  width: 14px;
  height: 10px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../img/icon_arrow-right.svg);
}
@media screen and (max-width: 768px) {
  .p-info__unit-link span::after {
    width: 8px;
    height: 4px;
  }
}
.p-info__unit-link:hover span {
  right: 14px;
}

.p-about__inner {
  gap: 2rem;
}

.p-about__ttl {
  line-height: 1.43;
  margin: 0;
}

.p-news {
  padding-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .p-news {
    padding-top: 0;
    padding-bottom: 3rem;
  }
}
.p-news__list {
  margin: 0 auto;
  width: 94%;
}
@media screen and (max-width: 768px) {
  .p-news__list {
    width: 100%;
  }
}
.p-news__unit {
  padding: 0 12px clamp(12px, 3.4146341463vw, 28px);
  margin-bottom: clamp(12px, 3.4146341463vw, 28px);
  border-bottom: 1px solid #000;
  line-height: 1.5;
}

.p-news__ttl {
  font-size: clamp(30px, 3.8888888889vw, 42px);
  margin-bottom: 4.375rem;
}
@media screen and (max-width: 768px) {
  .p-news__ttl {
    margin-bottom: 1.875rem;
  }
}

.p-flow__block__flex .p-flow__block__txt {
  margin: 0;
}
@media screen and (max-width: 768px) {
  .p-flow__block__flex .p-flow__block__txt {
    margin: auto;
  }
}

.p-flow__block__flex .p-flow__block__img {
  margin-right: 3.25rem;
}

.p-implant__ttl {
  margin-bottom: clamp(33.6px, 3.4285714286vw, 48px);
}

.p-perio__img {
  width: 47.4%;
}
@media screen and (max-width: 768px) {
  .p-perio__img {
    width: 92%;
  }
}

.p-perio__txt {
  gap: clamp(12px, 1.7142857143vw, 24px);
  width: 48.9%;
}
@media screen and (max-width: 768px) {
  .p-perio__txt {
    width: 100%;
  }
}

.p-perio__ttl {
  margin: 0;
}
@media screen and (max-width: 768px) {
  .p-perio__ttl {
    margin-bottom: 32px;
  }
}

.p-child__ttl {
  margin-bottom: 12px;
}
@media screen and (max-width: 768px) {
  .p-child__ttl {
    margin-bottom: 32px;
  }
}

.p-child__img {
  width: 42.4%;
}
@media screen and (max-width: 768px) {
  .p-child__img {
    width: 92%;
  }
}

.p-child__txt {
  width: 54.9%;
  gap: clamp(12px, 1.7142857143vw, 24px);
}
@media screen and (max-width: 768px) {
  .p-child__txt {
    width: 100%;
  }
}

.child .p-flow__card:nth-child(n+1) h3 {
  margin-bottom: 0;
}

.p-cosmetic__txt {
  width: 61.9%;
}
@media screen and (max-width: 768px) {
  .p-cosmetic__txt {
    width: 100%;
  }
}

.p-orthodonic__txt {
  width: 59.9%;
}
@media screen and (max-width: 1080px) {
  .p-orthodonic__txt .u-pc {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .p-orthodonic__txt {
    width: 100%;
  }
}

.orthodonic .p-flow__cards {
  gap: clamp(29.8666666667px, 3.8888888889vw, 56px);
}
@media screen and (max-width: 768px) {
  .orthodonic .p-flow__cards {
    gap: 2rem;
  }
}
.orthodonic .p-flow__card {
  width: calc((100% - clamp(29.8666666667px, 3.8888888889vw, 56px) * 2) / 3);
}
@media screen and (max-width: 768px) {
  .orthodonic .p-flow__card {
    width: 92%;
  }
}

.p-denture__ttl {
  margin-bottom: clamp(28px, 3vw, 42px);
}

.p-denture__img {
  width: 44.4%;
}
@media screen and (max-width: 768px) {
  .p-denture__img {
    width: 92%;
  }
}

.p-denture__txt {
  width: 50.9%;
  gap: clamp(12px, 1.7142857143vw, 24px);
}
@media screen and (max-width: 768px) {
  .p-denture__txt {
    width: 100%;
  }
}

.p-occlusion__txt {
  gap: clamp(12px, 1.7142857143vw, 24px);
}

.p-caries__ttl {
  margin-bottom: clamp(28px, 3vw, 42px);
}

.p-caries__img {
  width: 44.4%;
}
@media screen and (max-width: 768px) {
  .p-caries__img {
    width: 92%;
  }
}

.p-caries__txt {
  gap: clamp(12px, 1.7142857143vw, 24px);
  width: 52.9%;
}
@media screen and (max-width: 768px) {
  .p-caries__txt {
    width: 100%;
  }
}

.p-caries__md .p-flow__block__flex {
  justify-content: center;
}

.p-policy__flow--root {
  margin-bottom: clamp(28px, 3vw, 42px);
}/*# sourceMappingURL=style.css.map */
