/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  margin: 0;
}
main {
  display: block;
}
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}
pre {
  font-family: monospace, monospace;
  font-size: inherit;
}
address {
  font-style: inherit;
}
a {
  background-color: rgba(0, 0, 0, 0);
  text-decoration: none;
  color: inherit;
}
abbr[title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: inherit;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: rgba(0, 0, 0, 0);
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  cursor: pointer;
}
button:disabled,
[type="button"]:disabled,
[type="reset"]:disabled,
[type="submit"]:disabled {
  cursor: default;
}
:-moz-focusring {
  outline: auto;
}
select:disabled {
  opacity: inherit;
}
option {
  padding: 0;
}
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}
legend {
  padding: 0;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
[type="number"] {
  -moz-appearance: textfield;
}
label[for] {
  cursor: pointer;
}
details {
  display: block;
}
summary {
  display: list-item;
}
[contenteditable]:focus {
  outline: auto;
}
table {
  border-color: inherit;
  border-collapse: collapse;
}
caption {
  text-align: left;
}
td,
th {
  vertical-align: top;
  padding: 0;
}
th {
  text-align: left;
  font-weight: bold;
}
:root {
  --three-dots: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMzUgNSI+ICA8ZGVmcz4gPHN0eWxlPiAuc3QwIHsgZmlsbDogI2ZmZjsgfSA8L3N0eWxlPiA8L2RlZnM+IDxnIGlkPSJf44Kw44Or44O844OXXzIwIiBkYXRhLW5hbWU9IuOCsOODq+ODvOODl18yMCI+IDxjaXJjbGUgaWQ9Il/mpZXlhoblvaJfMTQiIGRhdGEtbmFtZT0i5qWV5YaG5b2iXzE0IiBjbGFzcz0ic3QwIiBjeD0iMi41IiBjeT0iMi41IiByPSIyLjUiLz4gPGNpcmNsZSBpZD0iX+alleWGhuW9ol8xNSIgZGF0YS1uYW1lPSLmpZXlhoblvaJfMTUiIGNsYXNzPSJzdDAiIGN4PSIxNy41IiBjeT0iMi41IiByPSIyLjUiLz4gPGNpcmNsZSBpZD0iX+alleWGhuW9ol8xNiIgZGF0YS1uYW1lPSLmpZXlhoblvaJfMTYiIGNsYXNzPSJzdDAiIGN4PSIzMi41IiBjeT0iMi41IiByPSIyLjUiLz4gPC9nPjwvc3ZnPg==");
}
*:has(> i.luster) {
  position: relative;
}
*:has(> i.luster) i.luster {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 10;
}
*:has(> i.luster) i.luster:before {
  content: "";
  display: block;
  width: 150%;
  height: 100%;
  background: linear-gradient(
    -45deg,
    rgba(255, 255, 255, 0),
    rgba(255, 255, 255, 0.5),
    rgba(255, 255, 255, 0)
  );
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(-150%);
  pointer-events: none;
}
*:has(> i.luster):hover i:before {
  transform: translateX(150%);
  transition: 0.75s;
}
@keyframes textLeftIn__backmove {
  0% {
    background-position: center right;
  }
  100% {
    background-position: center left;
  }
}
ul.price_planlist {
  --head-color: #e3a28f;
  --dt-color: rgba(217, 171, 158, 0.2);
  max-width: 1366px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 3rem 38px;
}
ul.price_planlist li {
  --padding: 30px;
}
@media screen and (max-width: 767px) {
  ul.price_planlist li {
    --paddding: 1.2rem;
  }
}
ul.price_planlist li {
  width: 430px;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  padding: var(--padding);
}
@media screen and (max-width: 767px) {
  ul.price_planlist li {
    width: 100%;
  }
}
ul.price_planlist li.full-time {
  --head-color: #e3a28f;
  --dt-color: rgba(217, 171, 158, 0.2);
}
ul.price_planlist li.day-time {
  --head-color: #e1a1a1;
  --dt-color: rgba(223, 180, 180, 0.2);
}
ul.price_planlist li.four-month {
  --head-color: #c0afc4;
  --dt-color: rgba(217, 171, 158, 0.2);
}
ul.price_planlist li h3 {
  background-color: var(--head-color);
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  ul.price_planlist li h3 {
    font-size: 4.3vw;
  }
}
ul.price_planlist li h3 {
  color: #fff;
  font-weight: 500;
  text-align: center;
  padding: 0.8em 0;
  margin: calc(0px - var(--padding)) calc(0px - var(--padding)) 0;
}
ul.price_planlist li .price {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  ul.price_planlist li .price {
    font-size: 4.3vw;
  }
}
ul.price_planlist li .price {
  text-align: center;
  letter-spacing: 0.05em;
  margin-right: calc(0em - 0.05em);
  white-space: nowrap;
}
ul.price_planlist li .price b {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  ul.price_planlist li .price b {
    font-size: 8vw;
  }
}
ul.price_planlist li .price b {
  font-family: "Barlow", serif;
  color: var(--head-color);
  font-weight: 500;
}
ul.price_planlist li dl {
  border: solid 1px #ccc;
}
ul.price_planlist li dl > div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
}
ul.price_planlist li dl > div:not(:last-child) {
  border-bottom: solid 1px #ccc;
}
ul.price_planlist li dl > div dt,
ul.price_planlist li dl > div dd {
  font-weight: 500;
  padding: 0.6rem 0;
  text-align: center;
  line-height: 1.2;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  ul.price_planlist li dl > div dt,
  ul.price_planlist li dl > div dd {
    font-size: 3.7vw;
  }
}
ul.price_planlist li dl > div dt {
  width: 32.4%;
  background: var(--dt-color);
  border-right: solid 1px #ccc;
}
@media screen and (max-width: 767px) {
  ul.price_planlist li dl > div dt {
    width: 40.8%;
  }
}
ul.price_planlist li dl > div dd {
  width: 67.6%;
}
@media screen and (max-width: 767px) {
  ul.price_planlist li dl > div dd {
    width: 59.2%;
  }
}
:root {
  --fixed-header-height: 80px;
  --fixed-bottom-area-height: 100px;
  --section-padding: 110px;
  --section-padding-small: 100px;
  font-size: 16px;
  color: #202020;
  font-family: "Noto Serif JP", serif;
  --wp-adminbar-height: 0px;
}
:root:has(#wpadminbar) {
  --wp-adminbar-height: 32px;
}
@media screen and (max-width: 782px) {
  :root:has(#wpadminbar) {
    --wp-adminbar-height: 46px;
  }
}
@media screen and (max-width: 767px) {
  :root {
    --fixed-header-height: 17.3vw;
    --fixed-bottom-area-height: 21.3vw;
    --section-padding: 14.7vw;
    --section-padding-small: 13.3vw;
    font-size: 4.3vw;
  }
}
html {
  scroll-behavior: smooth;
}
body {
  padding-bottom: var(--fixed-bottom-area-height);
}
body:has(input#accordion:checked) {
  overflow: hidden;
}
p {
  line-height: 1.75;
}
b,
strong {
  font-weight: inherit;
  line-height: inherit;
}
input#accordion {
  display: none;
}
@media screen and (max-width: 767px) {
  br.pc {
    display: none;
  }
}
br.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  br.sp {
    display: inline;
  }
}
.scroll-hint {
  background: none !important;
}
.breadcrumb {
  background-color: #fff;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  height: 30px;
}
@media screen and (max-width: 767px) {
  .breadcrumb {
    height: 6.7vw;
  }
}
.breadcrumb ul {
  max-width: 1366px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
  display: block;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .breadcrumb ul {
    font-size: 2.7vw;
  }
}
.breadcrumb ul li {
  display: inline;
}
.breadcrumb ul li:not(:last-child) {
  margin-right: 3em;
  position: relative;
}
.breadcrumb ul li:not(:last-child):after {
  content: "＞";
  position: absolute;
  top: 0.1em;
  left: calc(100% + 1em);
}
body > header .fixed-header {
  width: 100%;
  height: var(--fixed-header-height);
  background-color: hsla(0, 0%, 100%, 0.9);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  box-shadow: 0 0 50px rgba(0, 0, 0, 0.1);
}
body > header .fixed-header .inner {
  max-width: 1840px;
  width: 100%;
  margin-left: auto;
  height: inherit;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
body > header .fixed-header .inner .logo {
  display: block;
  width: 183px;
  height: inherit;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  body > header .fixed-header .inner .logo {
    width: 35.5vw;
  }
}
body > header .fixed-header .inner .logo img {
  width: 100%;
}
@media screen and (min-width: 1111px) {
  body > header .fixed-header .inner {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  body > header .fixed-header .inner .navi-area {
    height: inherit;
  }
  body > header .fixed-header .inner .navi-area nav {
    height: inherit;
  }
  body > header .fixed-header .inner .navi-area nav > ul {
    height: inherit;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }
  body > header .fixed-header .inner .navi-area nav > ul > li {
    height: inherit;
  }
  body > header .fixed-header .inner .navi-area nav > ul > li > a,
  body > header .fixed-header .inner .navi-area nav > ul > li > span {
    height: inherit;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    text-align: center;
    cursor: pointer;
  }
  body
    > header
    .fixed-header
    .inner
    .navi-area
    nav
    > ul
    > li
    > a
    span:nth-child(1),
  body
    > header
    .fixed-header
    .inner
    .navi-area
    nav
    > ul
    > li
    > span
    span:nth-child(1) {
    font-size: 16px;
  }
  body
    > header
    .fixed-header
    .inner
    .navi-area
    nav
    > ul
    > li
    > a
    span:nth-child(2),
  body
    > header
    .fixed-header
    .inner
    .navi-area
    nav
    > ul
    > li
    > span
    span:nth-child(2) {
    font-size: 14px;
    color: #e1a1a1;
  }
}
@media screen and (max-width: 1110px) {
  body > header .fixed-header .inner {
    padding-left: 5.35vw;
    padding-right: 5.35vw;
  }
  body > header .fixed-header .inner .navi-area {
    width: 100%;
    height: 0;
    overflow-y: scroll;
    position: fixed;
    top: var(--fixed-header-height);
    left: 0;
    z-index: 10001;
    transition: height 0.5s;
    background-color: hsla(0, 0%, 100%, 0.95);
  }
  body > header .fixed-header .inner .navi-area nav {
    width: inherit;
  }
  body > header .fixed-header .inner .navi-area nav ul {
    width: inherit;
    padding-top: 2rem;
    padding-bottom: 3rem;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: flex-start;
    row-gap: 1rem;
  }
  body > header .fixed-header .inner .navi-area nav ul li {
    width: 100%;
  }
  body > header .fixed-header .inner .navi-area nav ul li a {
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 0;
    transition: 0.5s;
  }
  body
    > header
    .fixed-header
    .inner
    .navi-area
    nav
    ul
    li
    a
    > span:nth-child(1) {
    text-align: center;
    font-size: 16px;
    transition: color 0.5s;
  }
}
@media screen and (max-width: 1110px) and (max-width: 767px) {
  body
    > header
    .fixed-header
    .inner
    .navi-area
    nav
    ul
    li
    a
    > span:nth-child(1) {
    font-size: 4.3vw;
  }
}
@media screen and (max-width: 1110px) {
  body
    > header
    .fixed-header
    .inner
    .navi-area
    nav
    ul
    li
    a
    > span:nth-child(2) {
    text-align: center;
    color: #e1a1a1;
    font-size: 14px;
    font-family: "Barlow", serif;
    transition: color 0.5s;
  }
}
@media screen and (max-width: 1110px) and (max-width: 767px) {
  body
    > header
    .fixed-header
    .inner
    .navi-area
    nav
    ul
    li
    a
    > span:nth-child(2) {
    font-size: 3.7vw;
  }
}
@media screen and (max-width: 1110px) {
  body > header .fixed-header .inner .navi-area nav ul li a:hover {
    background-color: #e1a1a1;
  }
  body
    > header
    .fixed-header
    .inner
    .navi-area
    nav
    ul
    li
    a:hover
    > span:nth-child(1) {
    color: #fff;
  }
  body
    > header
    .fixed-header
    .inner
    .navi-area
    nav
    ul
    li
    a:hover
    > span:nth-child(2) {
    color: #fff;
  }
}
body label[for="accordion"] {
  --width: 40px;
}
@media screen and (max-width: 767px) {
  body label[for="accordion"] {
    --width: 10.7vw;
    --height: 11.2vw;
  }
}
body label[for="accordion"] {
  display: none;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: var(--width);
  aspect-ratio: 40/42;
}
body label[for="accordion"] > span:nth-child(1) {
  width: var(--width);
  aspect-ratio: 40/20;
  position: relative;
}
body label[for="accordion"] > span:nth-child(1) > span {
  width: 100%;
  height: 1px;
  border-top: solid 1px #202020;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transition: 0.5s;
}
body label[for="accordion"] > span:nth-child(1) > span:nth-child(1) {
  transform: translateY(calc(0px - var(--width) / 4));
}
body label[for="accordion"] > span:nth-child(1) > span:nth-child(3) {
  transform: translateY(calc(var(--width) / 4));
}
body label[for="accordion"] > span:nth-child(2) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  text-align: center;
  color: #202020;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  body label[for="accordion"] > span:nth-child(2) {
    font-size: 3.7vw;
  }
}
body label[for="accordion"] > span:nth-child(2) {
  font-family: "Barlow", serif;
}
@media screen and (max-width: 1110px) {
  body label[for="accordion"] {
    display: flex;
  }
}
body:has(input#accordion:checked)
  label[for="accordion"]
  > span:nth-child(1)
  > span:nth-child(1) {
  transform: scaleX(-1) rotate(45deg);
}
body:has(input#accordion:checked)
  label[for="accordion"]
  > span:nth-child(1)
  > span:nth-child(2) {
  transform: scaleX(0);
}
body:has(input#accordion:checked)
  label[for="accordion"]
  > span:nth-child(1)
  > span:nth-child(3) {
  transform: scaleX(-1) rotate(-45deg);
}
body:has(input#accordion:checked) .fixed-header .navi-area {
  height: calc(100vh - var(--fixed-header-height));
}
footer {
  background-color: #707070;
}
footer .logo-area {
  padding-top: 3rem;
  padding-bottom: 1rem;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
footer .logo-area .logo {
  display: block;
  width: 106px;
  margin-bottom: 3rem;
}
footer .logo-area dl {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  footer .logo-area dl {
    font-size: 4.3vw;
  }
}
footer .logo-area dl {
  font-weight: 500;
  letter-spacing: 0.15em;
  margin-right: calc(0em - 0.15em);
  color: #fff;
  line-height: 2;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  footer .logo-area dl {
    max-width: 89.3vw;
  }
}
footer .logo-area dl div {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  -moz-column-gap: 0.5em;
  column-gap: 0.5em;
}
footer .logo-area dl div dt {
  width: 5em;
}
footer .logo-area dl div dd {
  width: calc(100% - 5.5em);
}
footer .logo-area ul {
  color: #ccc;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  footer .logo-area ul {
    font-size: 4.3vw;
  }
}
footer .logo-area ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 3em;
  column-gap: 3em;
  row-gap: 2em;
}
@media screen and (max-width: 767px) {
  footer .logo-area ul {
    flex-direction: column;
  }
}
footer .copyright {
  padding: 0.2rem 0;
}
footer .copyright p {
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  footer .copyright p {
    font-size: 3.2vw;
  }
}
footer .copyright p {
  text-align: center;
  color: #ccc;
}
.fixed-bottom-area {
  width: 100%;
  height: var(--fixed-bottom-area-height);
  background-color: hsla(0, 0%, 100%, 0.7);
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 9999;
}
@media screen and (max-width: 767px) {
  .fixed-bottom-area {
    justify-content: flex-end;
  }
}
.fixed-bottom-area > p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .fixed-bottom-area > p {
    font-size: 3.7vw;
  }
}
.fixed-bottom-area > p {
  font-weight: 500;
  line-height: 1;
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  .fixed-bottom-area > p {
    margin-bottom: 0.25rem;
  }
}
.fixed-bottom-area > p:before {
  content: "＼";
}
.fixed-bottom-area > p:after {
  content: "／";
}
.fixed-bottom-area > p > span {
  color: #202020;
}
.fixed-bottom-area > p > span > span {
  color: #ffffb4;
  background-color: #e3afaf;
  padding: 0 0.5em;
  line-height: 1;
}
.fixed-bottom-area ul {
  --button-max-width: 490px;
  --subtext-area-width: 350px;
  --maintext-size: 20px;
  --subtext-size: 14px;
}
@media screen and (max-width: 767px) {
  .fixed-bottom-area ul {
    --button-max-width: 50%;
    --subtext-area-width: 40vw;
    --maintext-size: 3.7vw;
    --subtext-size: 2.7vw;
  }
  .fixed-bottom-area ul:not(:has(li:nth-child(2))) {
    --button-max-width: 100%;
    --subtext-area-width: 66.7vw;
    --maintext-size: 4.5vw;
    --subtext-size: 3vw;
  }
}
.fixed-bottom-area ul {
  width: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  -moz-column-gap: 20px;
  column-gap: 20px;
}
@media screen and (max-width: 767px) {
  .fixed-bottom-area ul {
    -moz-column-gap: 0;
    column-gap: 0;
    height: 14.7vw;
  }
}
.fixed-bottom-area ul li {
  max-width: var(--button-max-width);
  width: 100%;
  height: inherit;
}
.fixed-bottom-area ul li a {
  --button-back: linear-gradient(to right, #ffb6a1, #feabab);
  --subtext-font-color: #efa191;
  --text-shadow: 0 0 5px rgba(0, 0, 0, 0);
}
.fixed-bottom-area ul li a.line {
  --button-back: linear-gradient(to right, #67e8bd, #7dec96);
  --subtext-font-color: #82ce99;
  --text-shadow: 0 0 5px rgba(0, 0, 0, 0);
}
.fixed-bottom-area ul li a.Advance-membership-reservation {
  --button-back: linear-gradient(to right, #ffae97, #ffa4a4);
  --subtext-font-color: #eb836d;
  --text-shadow: 0 0 5px #e48b7f;
}
.fixed-bottom-area ul li a {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  border-radius: 1000px;
  padding-top: 10px;
  background: var(--button-back);
  width: 100%;
  height: 50px;
  position: relative;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
  transition: filter 0.5s;
}
.fixed-bottom-area ul li a:after {
  content: "";
  display: block;
  font-size: 8px;
  width: 0.8em;
  height: 1em;
  background-color: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 3em;
  margin: auto 0;
  transition: 0.5s;
  filter: drop-shadow(var(--text-shadow));
}
@media screen and (max-width: 767px) {
  .fixed-bottom-area ul li a:after {
    font-size: 1.6vw;
    top: 4.5vw;
    right: 1em;
  }
}
@media screen and (max-width: 767px) {
  .fixed-bottom-area ul li a {
    height: 100%;
    padding-top: 4.5vw;
    border-radius: 0;
    box-shadow: none;
  }
}
.fixed-bottom-area ul li a:hover {
  filter: brightness(1.2);
}
.fixed-bottom-area ul li a:hover:after {
  translate: 1em 0;
}
.fixed-bottom-area ul li a > span {
  font-weight: 600;
}
.fixed-bottom-area ul li a > span.pc {
  display: flex;
}
@media screen and (max-width: 767px) {
  .fixed-bottom-area ul li a > span.pc {
    display: none;
  }
}
.fixed-bottom-area ul li a > span.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .fixed-bottom-area ul li a > span.sp {
    display: flex;
  }
}
.fixed-bottom-area ul li a > span.subtext {
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: var(--subtext-area-width);
  height: 20px;
  color: var(--subtext-font-color);
  background-color: #fff;
  border-radius: 1000px;
  font-size: var(--subtext-size);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  translate: 0 -50%;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 767px) {
  .fixed-bottom-area ul li a > span.subtext {
    height: 4.5vw;
    border-radius: 0 0 5px 5px;
    translate: 0 0;
  }
}
.fixed-bottom-area ul li a > span.maintext {
  text-align: center;
  color: #fff;
  font-size: var(--maintext-size);
  text-shadow: var(--text-shadow);
}
.headline01 {
  --wave-height: 30px;
}
@media screen and (max-width: 767px) {
  .headline01 {
    --wave-height: 7.5vw;
  }
}
.headline01 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-bottom: 70px;
}
@media screen and (max-width: 767px) {
  .headline01 {
    margin-bottom: 13.3vw;
  }
}
.headline01 > span {
  text-align: center;
}
.headline01 > span:nth-child(1) {
  font-family: "Barlow", serif;
  font-size: 60px;
}
@media screen and (max-width: 767px) {
  .headline01 > span:nth-child(1) {
    font-size: 8vw;
  }
}
.headline01 > span:nth-child(1) {
  margin-bottom: var(--wave-height);
  letter-spacing: 0.15em;
  margin-right: calc(0em - 0.15em);
  position: relative;
}
.headline01 > span:nth-child(1):after {
  content: "";
  display: block;
  width: 105px;
  height: var(--wave-height);
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .headline01 > span:nth-child(1):after {
    width: 13.3vw;
  }
}
.headline01 > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  .headline01 > span:nth-child(2) {
    font-size: 4.3vw;
  }
}
.headline01 > span:nth-child(2) {
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.15em;
  margin-right: calc(0em - 0.15em);
}
.headline02 {
  text-align: center;
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  .headline02 {
    font-size: 5.3vw;
  }
}
.headline02 {
  font-weight: bold;
  margin-bottom: 2em;
}
.headline02:after {
  content: "";
  display: block;
  width: 105px;
  aspect-ratio: 105/18;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-inline: auto;
  margin-top: 0.3rem;
}
body main .sec_campaign {
  max-width: 1920px;
  margin-left: auto;
  margin-right: auto;
}
body main .sec_campaign picture {
  display: content;
}
body main .sec_campaign picture img {
  display: block;
  width: 100%;
}
body main .sec_cta01 {
  --line-back: linear-gradient(to right, #67e8bd, #7dec96);
  --line-color: #82ce99;
  --instagram-back: linear-gradient(to right, #ffd08a, #fe97a6, #d291e1);
  --instagram-color: #e69393;
  padding: 80px 0;
}
@media screen and (max-width: 767px) {
  body main .sec_cta01 {
    padding: 13.3vw 0;
  }
}
body main .sec_cta01 ul {
  max-width: 1000px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 20px;
  column-gap: 20px;
  row-gap: 4rem;
}
@media screen and (max-width: 767px) {
  body main .sec_cta01 ul {
    row-gap: 2rem;
  }
}
body main .sec_cta01 ul li {
  width: 490px;
}
@media screen and (max-width: 767px) {
  body main .sec_cta01 ul li {
    width: 100%;
  }
}
body main .sec_cta01 ul li a {
  --back-color: linear-gradient(to right, #ffb6a1, #feabab);
  --color: #efa191;
}
body main .sec_cta01 ul li a.line {
  --back-color: var(--line-back);
  --color: var(--line-color);
}
body main .sec_cta01 ul li a.instagram {
  --back-color: var(--instagram-back);
  --color: var(--instagram-color);
}
body main .sec_cta01 ul li a.Advance-membership-reservation {
  --back-color: linear-gradient(to right, #ffae97, #ffa4a4);
  --color: #eb836d;
}
body main .sec_cta01 ul li a {
  width: 100%;
  height: 100px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: relative;
  background: var(--back-color);
  border-radius: 1000px;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
  transition: filter 0.5s;
}
@media screen and (max-width: 767px) {
  body main .sec_cta01 ul li a {
    height: 16vw;
  }
}
body main .sec_cta01 ul li a:after {
  content: "";
  display: block;
  font-size: 13px;
}
@media screen and (max-width: 767px) {
  body main .sec_cta01 ul li a:after {
    font-size: 2.1vw;
  }
}
body main .sec_cta01 ul li a:after {
  width: 0.8em;
  height: 1em;
  background-color: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 2.5em;
  margin: auto 0;
  transition: 0.5s;
}
body main .sec_cta01 ul li a:hover {
  filter: brightness(1.2);
}
body main .sec_cta01 ul li a:hover:after {
  translate: 1em 0;
}
body main .sec_cta01 ul li a > span:nth-child(1) {
  color: var(--color);
  text-align: center;
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: -moz-max-content;
  width: max-content;
  height: 30px;
  padding: 0 1.25em;
  background-color: #fff;
  border-radius: 1000px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body main .sec_cta01 ul li a > span:nth-child(1) {
    font-size: 3.2vw;
  }
}
body main .sec_cta01 ul li a > span:nth-child(1) {
  font-weight: 600;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  translate: 0 -50%;
}
@media screen and (max-width: 767px) {
  body main .sec_cta01 ul li a > span:nth-child(1) {
    height: 6.7vw;
  }
}
body main .sec_cta01 ul li a > span:nth-child(2) {
  color: #fff;
  text-align: center;
  font-size: 28px;
}
@media screen and (max-width: 767px) {
  body main .sec_cta01 ul li a > span:nth-child(2) {
    font-size: 4.8vw;
  }
}
body main .sec_cta01 ul li a > span:nth-child(2) {
  font-weight: 600;
}
body main > #map {
  width: 100%;
  height: 400px;
}
@media screen and (max-width: 767px) {
  body main > #map {
    height: 66.7vw;
  }
}
body main > #map iframe {
  width: 100%;
  height: 100%;
}
.link-button01 {
  max-width: 350px;
  height: 50px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-family: "Barlow", serif;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  .link-button01 {
    font-size: 4.8vw;
  }
}
.link-button01 {
  color: #fff;
  letter-spacing: 0.15em;
  margin-right: calc(0em - 0.15em);
  background-color: #e1a1a1;
  border-radius: 1000px;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
  margin-left: auto;
  margin-right: auto;
  position: relative;
  transition: filter 0.5s;
}
.link-button01:after {
  content: "";
  display: block;
  font-size: 8px;
}
@media screen and (max-width: 767px) {
  .link-button01:after {
    font-size: 2.1vw;
  }
}
.link-button01:after {
  width: 0.8em;
  height: 1em;
  background-color: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 3em;
  margin: auto 0;
  transition: 0.5s;
}
@media screen and (max-width: 767px) {
  .link-button01:after {
    right: 2em;
  }
}
.link-button01:hover {
  filter: brightness(1.2);
}
.link-button01:hover:after {
  translate: 1em 0;
}
.link-button01.bottom:after {
  height: 0.8em;
  width: 1em;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
.link-button01.bottom:hover:after {
  translate: 0 1em;
}
.link-button01.reverce:after {
  inset: 0 auto 0 3em;
  clip-path: polygon(100% 100%, 0 50%, 100% 0);
}
.link-button01.reverce:hover:after {
  translate: -1em 0;
}
.link-button02 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 600px;
  width: 89.3vw;
  height: 100px;
  margin-inline: auto;
  padding: 1rem;
  background-image: linear-gradient(to right, #ffae97, #ffa4a4);
  border-radius: 1000px;
  font-size: 28px;
}
@media screen and (max-width: 767px) {
  .link-button02 {
    font-size: 5.3vw;
  }
}
.link-button02 {
  font-weight: 600;
  color: #fff;
  text-align: center;
  position: relative;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
  transition:
    filter 0.5s,
    box-shadow 0.5s,
    translate 0.5s;
}
@media screen and (max-width: 767px) {
  .link-button02 {
    height: 4rem;
  }
}
.link-button02:after {
  content: "";
  display: block;
  font-size: 13px;
}
@media screen and (max-width: 767px) {
  .link-button02:after {
    font-size: 2.1vw;
  }
}
.link-button02:after {
  width: 0.8em;
  height: 1em;
  background-color: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  inset: 0 4em 0 auto;
  margin: auto 0;
  transition: 0.5s;
}
.link-button02:hover {
  translate: 0 3px;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0.1);
  filter: brightness(1.2);
}
.link-button02:hover:after {
  translate: 1em 0;
}
.custombox-overlay {
  z-index: 20000;
}
.custombox-content {
  z-index: 20001;
}
#splash-banner {
  position: relative;
}
#splash-banner .close {
  display: block;
  width: 40px;
  aspect-ratio: 1/1;
  border-radius: 5px;
  border: solid 1px #707070;
  background-color: hsla(0, 0%, 100%, 0.5);
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  z-index: 10;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  #splash-banner .close {
    width: 8vw;
  }
}
#splash-banner .close:before,
#splash-banner .close:after {
  content: "";
  display: block;
  width: 1rem;
  height: 1px;
  border-top: solid 1px #707070;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
#splash-banner .close:before {
  rotate: -45deg;
}
#splash-banner .close:after {
  rotate: 45deg;
}
@media screen and (max-width: 680px) {
  #splash-banner {
    width: 89.3vw;
  }
}
#splash-banner picture img {
  max-width: 100%;
}
#splash-banner .line-link {
  display: block;
  width: 120px;
  height: 111px;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  #splash-banner .line-link {
    width: 20vw;
    height: 20vw;
  }
}
body:not(#index):has(> header .main-visual) {
  padding-top: 0;
}
body:not(#index):has(> header .main-visual) .main-visual {
  padding-top: var(--fixed-header-height);
  max-width: 1920px;
  width: 100%;
  margin-inline: auto;
  height: 350px;
  background-color: #fff;
  position: relative;
  z-index: 10;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  body:not(#index):has(> header .main-visual) .main-visual {
    aspect-ratio: 375/200;
    height: auto;
  }
}
body:not(#index):has(> header .main-visual) .main-visual picture {
  display: contents;
}
body:not(#index):has(> header .main-visual) .main-visual img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
body:not(#index):has(> header .main-visual) .main-visual h1 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 0.75rem;
}
body:not(#index):has(> header .main-visual) .main-visual h1:before {
  content: "";
  display: block;
  width: 105px;
  aspect-ratio: 105/18;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  order: 1;
}
@media screen and (max-width: 767px) {
  body:not(#index):has(> header .main-visual) .main-visual h1:before {
    width: 13.3vw;
  }
}
body:not(#index):has(> header .main-visual) .main-visual h1 > span {
  text-align: center;
}
body:not(#index):has(> header .main-visual)
  .main-visual
  h1
  > span:nth-child(1) {
  font-size: 45px;
}
@media screen and (max-width: 767px) {
  body:not(#index):has(> header .main-visual)
    .main-visual
    h1
    > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
body:not(#index):has(> header .main-visual)
  .main-visual
  h1
  > span:nth-child(1) {
  font-weight: 500;
}
body:not(#index):has(> header .main-visual)
  .main-visual
  h1
  > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body:not(#index):has(> header .main-visual)
    .main-visual
    h1
    > span:nth-child(2) {
    font-size: 3.7vw;
  }
}
body:not(#index):has(> header .main-visual)
  .main-visual
  h1
  > span:nth-child(2) {
  order: 2;
}
.cta-button {
  max-width: 600px;
  width: 89.3vw;
  margin-inline: auto;
  height: 100px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: filter 0.5s;
}
@media screen and (max-width: 767px) {
  .cta-button {
    height: 16vw;
  }
}
.cta-button:after {
  content: "";
  display: block;
  font-size: 13px;
}
@media screen and (max-width: 767px) {
  .cta-button:after {
    font-size: 2.1vw;
  }
}
.cta-button:after {
  width: 0.8em;
  height: 1em;
  background-color: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  inset: 0 5em 0 auto;
  margin: auto 0;
  transition: 0.5s;
}
.cta-button > span {
  text-align: center;
  font-weight: 600;
}
.cta-button > span:nth-child(1) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  height: 35px;
  background-color: #fff;
  border-radius: 1000px;
  width: -moz-max-content;
  width: max-content;
  padding-inline: 1.5em;
  color: #eb836d;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .cta-button > span:nth-child(1) {
    font-size: 3.2vw;
  }
}
.cta-button > span:nth-child(1) {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  position: absolute;
  inset: 0 0 auto 0;
  margin-inline: auto;
  translate: 0 -50%;
}
@media screen and (max-width: 767px) {
  .cta-button > span:nth-child(1) {
    height: 6.7vw;
    padding-inline: 0;
    width: 74.7vw;
  }
}
.cta-button > span:nth-child(2) {
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  font-size: 28px;
}
@media screen and (max-width: 767px) {
  .cta-button > span:nth-child(2) {
    font-size: 4.8vw;
  }
}
.cta-button > span:nth-child(2) {
  color: #fff;
  background-image: linear-gradient(to right, #ffae97, #ffa4a4);
  border-radius: 1000px;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1);
  text-shadow: 0 0 5px #e48b7f;
}
.cta-button:hover {
  filter: brightness(1.1);
}
.cta-button:hover:after {
  translate: 1em 0;
}
body#index .main-visual {
  padding-top: var(--fixed-header-height);
  width: 100%;
  min-height: 800px;
  height: auto;
  padding-block: 2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  body#index .main-visual {
    height: auto;
    aspect-ratio: 375/700;
  }
}
body#index .main-visual picture {
  display: content;
}
body#index .main-visual picture img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center right;
  object-position: center right;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 900px) {
  body#index .main-visual picture img {
    -o-object-position: top 50% right 30%;
    object-position: top 50% right 30%;
  }
}
@media screen and (max-width: 767px) {
  body#index .main-visual picture img {
    -o-object-position: center;
    object-position: center;
  }
}
body#index .main-visual .inner {
  max-width: 1000px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
  height: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  padding-top: 1rem;
}
@media screen and (max-width: 767px) {
  body#index .main-visual .inner {
    padding-top: 2rem;
  }
}
body#index .main-visual .inner .ribon {
  display: block;
  max-width: 545px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  body#index .main-visual .inner .ribon {
    margin-bottom: 1rem;
  }
}
body#index .main-visual .inner h1 {
  color: #fff;
  font-weight: 500;
  font-size: 70px;
}
@media screen and (max-width: 767px) {
  body#index .main-visual .inner h1 {
    font-size: 10.7vw;
  }
}
body#index .main-visual .inner h1 {
  margin-bottom: 4rem;
  line-height: 1.3;
}
body#index .main-visual .inner ul {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  gap: 1rem;
}
@media screen and (max-width: 720px) {
  body#index .main-visual .inner ul {
    width: 89.3vw;
    justify-content: space-between;
    gap: 0;
  }
}
body#index .main-visual .inner ul li {
  --border-color: #e3a28f;
}
body#index .main-visual .inner ul li:nth-child(2) {
  --border-color: #e1a1a1;
}
body#index .main-visual .inner ul li:nth-child(3) {
  --border-color: #bd99c5;
}
body#index .main-visual .inner ul li {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 0.25rem;
  position: relative;
  width: 200px;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 720px) {
  body#index .main-visual .inner ul li {
    width: 29.3vw;
  }
  body#index .main-visual .inner ul li:nth-child(2) {
    translate: 0 -1rem;
  }
}
body#index .main-visual .inner ul li:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 100%;
  background-color: #fff;
  border: solid 1px var(--border-color);
  opacity: 0.8;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
body#index .main-visual .inner ul li .number {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 60px;
  aspect-ratio: 1/1;
  border-radius: 100%;
  background-color: var(--border-color);
  position: absolute;
  top: -0.5rem;
  left: 0;
  z-index: 1;
  padding-bottom: 0.25rem;
}
@media screen and (max-width: 720px) {
  body#index .main-visual .inner ul li .number {
    width: 10.7vw;
  }
}
body#index .main-visual .inner ul li .number span {
  color: #fff;
  text-align: center;
  line-height: 1;
}
body#index .main-visual .inner ul li .number span:nth-child(1) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index .main-visual .inner ul li .number span:nth-child(1) {
    font-size: 4.3vw;
  }
}
body#index .main-visual .inner ul li .number span:nth-child(2) {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  body#index .main-visual .inner ul li .number span:nth-child(2) {
    font-size: 2.7vw;
  }
}
body#index .main-visual .inner ul li img {
  display: block;
  width: 71px;
  aspect-ratio: 71/65;
  -o-object-fit: contain;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  body#index .main-visual .inner ul li img {
    width: 12vw;
  }
}
body#index .main-visual .inner ul li p {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index .main-visual .inner ul li p {
    font-size: 2.7vw;
  }
}
body#index .main-visual .inner ul li p {
  line-height: 1.25;
  letter-spacing: 0.005em;
  font-weight: 500;
}
body#index .main-visual .inner ul li p b {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#index .main-visual .inner ul li p b {
    font-size: 3.2vw;
  }
}
body#index .main-visual .inner ul li:nth-child(1) p {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index .main-visual .inner ul li:nth-child(1) p {
    font-size: 3.2vw;
  }
}
body#index .main-visual .inner ul li:nth-child(1) p b {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#index .main-visual .inner ul li:nth-child(1) p b {
    font-size: 4.3vw;
  }
}
body#index main .sec_campaign {
  padding-top: 2rem;
  padding-bottom: 0;
}
body#index main .campaign_image:has(+ .campaign_image) {
  margin-bottom: 50px;
}
body#index main #point {
  padding: var(--section-padding) 0;
}
body#index main #point .headline01 span b {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#index main #point .headline01 span b {
    font-size: 5.3vw;
  }
}
body#index main #point .headline01 span b {
  color: #e1a1a1;
}
body#index main #point .point__contents {
  --number-color: #e3a28f;
}
body#index main #point .point__contents.point2 {
  --number-color: #e1a1a1;
}
body#index main #point .point__contents.point3 {
  --number-color: #bd99c5;
}
body#index main #point .point__contents.point4 {
  --number-color: #e3a28f;
}
body#index main #point .point__contents {
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 75px 0 25px;
  margin-top: 110px;
  position: relative;
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents {
    margin-top: 16vw;
    background-size: 100% 80%;
    background-image: none;
    padding: 0;
  }
  body#index main #point .point__contents:before {
    content: "";
    display: block;
    width: 100%;
    height: calc(100% - 5rem);
    background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: absolute;
    bottom: 0;
    left: 0;
  }
}
body#index main #point .point__contents > span {
  width: 100px;
  aspect-ratio: 1/1;
  border-radius: 100%;
  background-color: var(--number-color);
  font-family: "Barlow", serif;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 3;
  translate: 0 -50%;
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents > span {
    width: 16vw;
  }
}
body#index main #point .point__contents > span > span {
  color: #fff;
  line-height: 1;
}
body#index main #point .point__contents > span > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents > span > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
body#index main #point .point__contents > span > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents > span > span:nth-child(2) {
    font-size: 3.7vw;
  }
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents.point4 > div picture img {
    -o-object-position: top left;
    object-position: top left;
  }
}
body#index main #point .point__contents > div {
  max-width: 1000px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
  min-height: 300px;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  body#index main #point .point__contents > div:before,
  body#index main #point .point__contents > div:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
  }
  body#index main #point .point__contents > div:before {
    width: 75%;
    height: 100%;
    background-color: #fff;
    z-index: -2;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  }
  body#index main #point .point__contents > div:after {
    width: 5px;
    height: 100%;
    background: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
    z-index: -1;
  }
}
body#index main #point .point__contents > div > picture {
  width: 50%;
  aspect-ratio: 500/330;
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents > div > picture {
    width: 100%;
    aspect-ratio: 335/200;
  }
}
body#index main #point .point__contents > div > picture img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (min-width: 768px) {
  body#index main #point .point__contents > div > picture img {
    margin-bottom: -30px;
    translate: 0 30px;
  }
}
body#index main #point .point__contents > div > div {
  width: 50%;
  padding: 2rem;
  position: relative;
}
body#index main #point .point__contents > div > div:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents > div > div:after {
    width: 9.3vw;
  }
}
body#index main #point .point__contents > div > div:after {
  position: absolute;
  bottom: 1rem;
  left: 0;
  right: 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents > div > div {
    width: 100%;
    padding: 1.5rem;
    padding-bottom: 3rem;
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  }
  body#index main #point .point__contents > div > div:before {
    content: "";
    display: block;
    width: 3px;
    height: 100%;
    background: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
    position: absolute;
    top: 0;
    left: 0;
  }
}
body#index main #point .point__contents > div > div h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents > div > div h3 {
    font-size: 4.8vw;
  }
}
body#index main #point .point__contents > div > div h3 {
  font-weight: 500;
  margin: 0.8em 0;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents > div > div h3 {
    margin-top: 0;
    text-align: center;
  }
}
body#index main #point .point__contents > div > div p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#index main #point .point__contents > div > div p {
    font-size: 3.7vw;
  }
}
body#index main #point .point__contents > div > div p {
  letter-spacing: 0.15em;
  margin-right: calc(0em - 0.15em);
  line-height: 2;
}
@media screen and (min-width: 768px) {
  body#index main #point .point__contents.point1 > div:before,
  body#index main #point .point__contents.point1 > div:after,
  body#index main #point .point__contents.point3 > div:before,
  body#index main #point .point__contents.point3 > div:after {
    right: auto;
    left: 0;
  }
  body#index main #point .point__contents.point1 > div > picture,
  body#index main #point .point__contents.point3 > div > picture {
    order: 2;
  }
  body#index main #point .point__contents.point1 > div > div,
  body#index main #point .point__contents.point3 > div > div {
    order: 1;
  }
}
body#index main #point .curriculum-table {
  margin-top: 100px;
  max-width: 1000px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  body#index main #point .curriculum-table {
    margin-top: 3rem;
    overflow-x: scroll;
  }
}
body#index main #point .curriculum-table h3 {
  width: 100%;
  background-color: #e1a1a1;
  color: #fff;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index main #point .curriculum-table h3 {
    font-size: 4.3vw;
  }
}
body#index main #point .curriculum-table h3 {
  padding: 0.8rem 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  body#index main #point .curriculum-table table {
    width: 246.1vw;
  }
}
body#index main #point .curriculum-table table tr th,
body#index main #point .curriculum-table table tr td {
  background-color: #fff;
  padding: 0.9rem 0.75rem;
  border: solid 1px #e1a1a1;
  font-weight: 500;
}
body#index main #point .curriculum-table table thead tr {
  position: relative;
}
body#index main #point .curriculum-table table thead tr th,
body#index main #point .curriculum-table table thead tr td {
  text-align: center;
  vertical-align: middle;
}
body#index main #point .curriculum-table table thead tr th {
  color: #e1a1a1;
  background-color: #f8eeec;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#index main #point .curriculum-table table thead tr th {
    font-size: 4.3vw;
  }
}
body#index main #point .curriculum-table table thead tr th small {
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  body#index main #point .curriculum-table table thead tr th small {
    font-size: 3.2vw;
  }
}
body#index main #point .curriculum-table table thead tr th:nth-child(1) {
  width: 14.8%;
}
@media screen and (max-width: 767px) {
  body#index main #point .curriculum-table table thead tr th:nth-child(1) {
    width: 7.6%;
    position: sticky;
    top: 0;
    left: 0;
    z-index: 10;
  }
  body#index
    main
    #point
    .curriculum-table
    table
    thead
    tr
    th:nth-child(1):before {
    content: "";
    display: block;
    width: calc(100% + 2px);
    border-left: solid 1px #e1a1a1;
    border-right: solid 1px #e1a1a1;
    height: 100%;
    position: absolute;
    top: 0;
    left: -1px;
  }
}
body#index main #point .curriculum-table table thead tr th:nth-child(n + 2) {
  width: 21.4%;
}
@media screen and (max-width: 767px) {
  body#index main #point .curriculum-table table thead tr th:nth-child(n + 2) {
    width: 23.2%;
  }
}
body#index main #point .curriculum-table table tbody tr {
  position: relative;
}
body#index main #point .curriculum-table table tbody tr th,
body#index main #point .curriculum-table table tbody tr td {
  vertical-align: middle;
  text-align: center;
}
@media screen and (max-width: 767px) {
  body#index main #point .curriculum-table table tbody tr th {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 10;
  }
  body#index main #point .curriculum-table table tbody tr th:before {
    content: "";
    display: block;
    width: calc(100% + 2px);
    border-left: solid 1px #e1a1a1;
    border-right: solid 1px #e1a1a1;
    height: 100%;
    position: absolute;
    top: 0;
    left: -1px;
  }
}
body#index main #point .curriculum-table table tbody tr:nth-child(1) td {
  color: #e1a1a1;
  letter-spacing: 0.5em;
}
body#index main #point .curriculum-table table tbody tr:nth-child(n + 2) td {
  text-align: left;
  vertical-align: top;
  line-height: 2;
  font-weight: normal;
}
body#index main #point #point__slider {
  margin-top: var(--section-padding);
  max-width: 1920px;
  width: 100%;
  aspect-ratio: 1920/300;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  body#index main #point #point__slider {
    aspect-ratio: 375/150;
  }
}
body#index main #point #point__slider .swiper-wrapper {
  transition-timing-function: linear;
}
body#index main #point #point__slider .swiper-wrapper .swiper-slide img {
  display: block;
  max-width: 400px;
  width: 100%;
  aspect-ratio: 400/300;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  body#index main #point #point__slider .swiper-wrapper .swiper-slide img {
    max-width: 53.3vw;
    aspect-ratio: 200/150;
  }
}
body#index main #Comparison {
  padding: var(--section-padding) 0;
  background-color: #f5edeb;
}
body#index main #Comparison .table-scrolled {
  max-width: 1000px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 4rem;
}
body#index main #Comparison .table-scrolled table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 2px;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .table-scrolled table {
    width: 214.7vw;
  }
}
body#index main #Comparison .table-scrolled table tr th,
body#index main #Comparison .table-scrolled table tr td {
  text-align: center;
  vertical-align: middle;
  font-weight: 500;
  line-height: 1.5;
}
body#index main #Comparison .table-scrolled table thead tr th {
  --top-padding: 10px;
  height: 50px;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .table-scrolled table thead tr th {
    font-size: 4.3vw;
  }
}
body#index main #Comparison .table-scrolled table thead tr th {
  color: #fff;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .table-scrolled table thead tr th {
    --top-padding: 2.7vw;
    height: 13.3vw;
  }
}
body#index main #Comparison .table-scrolled table thead tr th:nth-child(1) {
  width: 17.8%;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .table-scrolled table thead tr th:nth-child(1) {
    width: 12.4%;
  }
}
body#index main #Comparison .table-scrolled table thead tr th:nth-child(n + 2) {
  width: 27.2%;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  body#index
    main
    #Comparison
    .table-scrolled
    table
    thead
    tr
    th:nth-child(n + 2) {
    width: 28.9%;
  }
}
body#index
  main
  #Comparison
  .table-scrolled
  table
  thead
  tr
  th:nth-child(n + 2):before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
body#index main #Comparison .table-scrolled table thead tr th:nth-child(2) {
  width: 31%;
  height: 60px;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .table-scrolled table thead tr th:nth-child(2) {
    width: 35%;
  }
}
body#index
  main
  #Comparison
  .table-scrolled
  table
  thead
  tr
  th:nth-child(2):before {
  background-color: #e3a28f;
}
body#index main #Comparison .table-scrolled table thead tr th:nth-child(n + 3) {
  padding-top: var(--top-padding);
}
body#index
  main
  #Comparison
  .table-scrolled
  table
  thead
  tr
  th:nth-child(n + 3):before {
  height: calc(100% - var(--top-padding));
}
body#index
  main
  #Comparison
  .table-scrolled
  table
  thead
  tr
  th:nth-child(3):before {
  background-color: #e1a1a1;
}
body#index
  main
  #Comparison
  .table-scrolled
  table
  thead
  tr
  th:nth-child(4):before {
  background-color: #bd99c5;
}
body#index main #Comparison .table-scrolled table tbody tr {
  position: relative;
}
body#index main #Comparison .table-scrolled table tbody tr th,
body#index main #Comparison .table-scrolled table tbody tr td {
  height: 60px;
  padding: 1rem 0;
}
body#index main #Comparison .table-scrolled table tbody tr th small,
body#index main #Comparison .table-scrolled table tbody tr td small {
  font-size: 0.6em;
}
body#index main #Comparison .table-scrolled table tbody tr th {
  background-color: #aeabab;
  color: #fff;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .table-scrolled table tbody tr th {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 10;
  }
}
body#index main #Comparison .table-scrolled table tbody tr td {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .table-scrolled table tbody tr td {
    font-size: 4.3vw;
  }
}
body#index main #Comparison .table-scrolled table tbody tr td {
  background-color: #fff;
}
body#index main #Comparison .table-scrolled table tbody tr td b {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .table-scrolled table tbody tr td b {
    font-size: 5.3vw;
  }
}
body#index main #Comparison .table-scrolled table tbody tr:nth-child(2) td {
  line-height: 1.2;
}
body#index main #Comparison .table-scrolled table tbody td:nth-child(2) {
  border: solid 1px #e3a28f;
  background-color: #ffffc4;
  color: #eb9379;
}
body#index main #Comparison .table-scrolled table tbody td:nth-child(2) b {
  font-size: 22px;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .table-scrolled table tbody td:nth-child(2) b {
    font-size: 5.9vw;
  }
}
body#index main #Comparison .last-message {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  -moz-column-gap: 3em;
  column-gap: 3em;
  width: 100%;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .last-message {
    font-size: 4.8vw;
  }
}
body#index main #Comparison .last-message {
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison .last-message {
    -moz-column-gap: 0.2em;
    column-gap: 0.2em;
  }
}
body#index main #Comparison .last-message:before,
body#index main #Comparison .last-message:after {
  content: "";
  display: block;
  flex: 1 0 auto;
  height: 1px;
  border-top: solid 1px #ccc;
}
body#index main #Comparison {
  position: relative;
}
body#index main #Comparison:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison:after {
    width: 9.3vw;
  }
}
body#index main #Comparison:after {
  position: absolute;
  bottom: 6rem;
  left: 0;
  right: 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  body#index main #Comparison:after {
    bottom: 3rem;
  }
}
body#index main #Please-try-it {
  padding-bottom: var(--section-padding);
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it {
    padding-bottom: 2rem;
  }
}
body#index main #Please-try-it h2 {
  width: 100%;
  height: 100px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  font-weight: 500;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it h2 {
    font-size: 5.3vw;
  }
}
body#index main #Please-try-it h2 {
  line-height: 1.5;
  background: linear-gradient(to right, #bd99c5, #e1a1a1, #e3a28f);
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it h2 {
    height: 26.7vw;
  }
}
body#index main #Please-try-it > div:nth-child(2) {
  max-width: 1366px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  padding: 3rem 0 2rem;
  position: relative;
}
body#index main #Please-try-it > div:nth-child(2):after {
  content: "";
  display: block;
  width: 100%;
  height: 51px;
  background-color: #fff;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  position: absolute;
  top: calc(100% - 1px);
  left: 0;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it > div:nth-child(2):after {
    height: calc(9.9vw + 1px);
  }
}
body#index main #Please-try-it > div:nth-child(2) p:nth-child(1) {
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it > div:nth-child(2) p:nth-child(1) {
    font-size: 4.3vw;
  }
}
body#index main #Please-try-it > div:nth-child(2) p:nth-child(1) {
  position: relative;
  margin-bottom: 1.5em;
}
body#index main #Please-try-it > div:nth-child(2) p:nth-child(1):after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it > div:nth-child(2) p:nth-child(1):after {
    width: 9.3vw;
  }
}
body#index main #Please-try-it > div:nth-child(2) p:nth-child(1):after {
  position: absolute;
  top: calc(100% + 0.75em);
  left: 0;
  right: 0;
  margin: 0 auto;
  translate: 0 -50%;
}
body#index main #Please-try-it > div:nth-child(2) p:nth-child(2) {
  display: block;
  width: -moz-max-content;
  width: max-content;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it > div:nth-child(2) p:nth-child(2) {
    font-size: 4.3vw;
  }
}
body#index main #Please-try-it > div:nth-child(2) p:nth-child(2) {
  position: relative;
}
@media screen and (max-width: 720px) {
  body#index main #Please-try-it > div:nth-child(2) p:nth-child(2) br.sp {
    display: inline;
  }
}
body#index main #Please-try-it > div:nth-child(2) p:nth-child(2) b {
  margin: 0 0.2em;
  padding: 0 1em;
  border-radius: 1000px;
  background-color: #707070;
  color: #fff;
}
body#index main #Please-try-it > div:nth-child(2) p:nth-child(2):before,
body#index main #Please-try-it > div:nth-child(2) p:nth-child(2):after {
  content: "";
  display: block;
  width: 50px;
  height: 100px;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/diagonal-line.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center bottom;
  position: absolute;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it > div:nth-child(2) p:nth-child(2):before,
  body#index main #Please-try-it > div:nth-child(2) p:nth-child(2):after {
    width: 5.3vw;
    height: 13.3vw;
    bottom: 0.5rem;
  }
}
body#index main #Please-try-it > div:nth-child(2) p:nth-child(2):before {
  right: calc(100% + 1rem);
}
body#index main #Please-try-it > div:nth-child(2) p:nth-child(2):after {
  left: calc(100% + 1rem);
  scale: -1 1;
}
body#index main #Please-try-it > div:nth-child(3) {
  max-width: 1366px;
  width: 100%;
  height: 400px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it > div:nth-child(3) {
    height: 66.7vw;
    padding-top: 9.9vw;
  }
}
body#index main #Please-try-it > div:nth-child(3) picture {
  display: contents;
  background-color: #fff;
}
body#index main #Please-try-it > div:nth-child(3) picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
body#index main #Please-try-it > div:nth-child(3) p {
  max-width: 1000px;
  width: 100%;
  background-color: rgba(225, 161, 161, 0.8);
  text-align: center;
  color: #fff;
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it > div:nth-child(3) p {
    font-size: 5.3vw;
  }
}
body#index main #Please-try-it > div:nth-child(3) p {
  padding: 0.8em;
  line-height: 1.5;
  position: relative;
}
body#index main #Please-try-it > div:nth-child(3) p b {
  font-size: 35px;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it > div:nth-child(3) p b {
    font-size: 5.3vw;
  }
}
body#index main #Please-try-it > div:nth-child(3) p b {
  color: #ffffb4;
}
body#index main #Please-try-it > div:nth-child(3) p:before,
body#index main #Please-try-it > div:nth-child(3) p:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it > div:nth-child(3) p:before,
  body#index main #Please-try-it > div:nth-child(3) p:after {
    width: 9.3vw;
  }
}
body#index main #Please-try-it > div:nth-child(3) p:before,
body#index main #Please-try-it > div:nth-child(3) p:after {
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots_white.svg);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  body#index main #Please-try-it > div:nth-child(3) p:before,
  body#index main #Please-try-it > div:nth-child(3) p:after {
    display: none;
  }
}
body#index main #Please-try-it > div:nth-child(3) p:before {
  left: 3rem;
}
body#index main #Please-try-it > div:nth-child(3) p:after {
  right: 3rem;
}
body#index main #voice {
  padding: var(--section-padding) 0;
}
body#index main #voice ul {
  max-width: 1366px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  -moz-column-gap: 66px;
  column-gap: 66px;
  row-gap: 3rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul {
    margin-bottom: 3rem;
  }
}
body#index main #voice ul li {
  width: 650px;
  background-color: #f9f9f9;
  padding: 1.5rem 3rem;
  position: relative;
}
@media screen and (max-width: 670px) {
  body#index main #voice ul li {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li {
    padding: 1.5rem 1rem 2.5rem;
  }
}
body#index main #voice ul li:before {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li:before {
    width: 0.8vw;
  }
}
body#index main #voice ul li label {
  --border-length: 30px;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li label {
    --border-length: 5.3vw;
  }
}
body#index main #voice ul li label {
  display: block;
  width: 70px;
  aspect-ratio: 1/1;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li label {
    width: 10.7vw;
  }
}
body#index main #voice ul li label:before,
body#index main #voice ul li label:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
body#index main #voice ul li label:before {
  width: var(--border-length);
  height: 1px;
  border-top: solid 1px #202020;
}
body#index main #voice ul li label:after {
  height: var(--border-length);
  width: 1px;
  border-left: solid 1px #202020;
  transition: 0.5s;
}
body#index main #voice ul li label:has(input:checked):after {
  scale: 1 0;
}
body#index main #voice ul li label input {
  display: none;
}
body#index main #voice ul li .profile-area {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: relative;
}
body#index main #voice ul li .profile-area:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .profile-area:after {
    width: 9.3vw;
  }
}
body#index main #voice ul li .profile-area:after {
  position: absolute;
  bottom: -0.5rem;
  left: 0;
  right: 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .profile-area:after {
    bottom: -1rem;
  }
}
body#index main #voice ul li .profile-area picture {
  display: block;
  width: 45.5%;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .profile-area picture {
    width: 50%;
  }
}
body#index main #voice ul li .profile-area picture img {
  width: 200px;
  margin-right: auto;
  display: block;
  border-radius: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .profile-area picture img {
    width: 34.7vw;
    margin-right: auto;
  }
}
body#index main #voice ul li .profile-area > div {
  width: 54.5%;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .profile-area > div {
    width: 50%;
  }
}
body#index main #voice ul li .profile-area > div time {
  display: inline-block;
  width: 100%;
  font-family: "Barlow", serif;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .profile-area > div time {
    font-size: 3.7vw;
  }
}
body#index main #voice ul li .profile-area > div time {
  color: #909090;
  font-weight: 500;
  padding-bottom: 0.5em;
  border-bottom: solid 1px #909090;
  margin-bottom: 0.6em;
}
body#index main #voice ul li .profile-area > div p:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .profile-area > div p:nth-child(2) {
    font-size: 3.7vw;
  }
}
body#index main #voice ul li .profile-area > div p:nth-child(2) {
  font-weight: 500;
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .profile-area > div p:nth-child(2) {
    margin-bottom: 0.5em;
  }
}
body#index main #voice ul li .profile-area > div p:nth-child(3) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .profile-area > div p:nth-child(3) {
    font-size: 3.7vw;
  }
}
body#index main #voice ul li .profile-area > div p:nth-child(3) {
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .profile-area > div p:nth-child(3) br {
    display: none;
  }
}
body#index main #voice ul li .message-area {
  overflow: hidden;
  padding-top: 0;
  height: 0;
  opacity: 0;
  transition:
    height 0.5s,
    opacity 0.5s,
    padding-top 0.5s;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#index main #voice ul li .message-area {
    font-size: 3.7vw;
  }
}
body#index main #voice ul li .message-area {
  line-height: 2;
}
body#index main #voice ul li:has(input:checked) .message-area {
  padding-top: 2rem;
  height: auto;
  height: calc-size(auto, size);
  opacity: 1;
}
body#index main #price {
  padding: var(--section-padding) 0;
  background-color: #f5edeb;
}
body#index main #flow {
  padding: var(--section-padding) 0;
}
body#index main #flow h2 {
  margin-bottom: 7rem;
}
body#index main #flow ul {
  max-width: 1000px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
}
body#index main #flow ul li {
  --number-width: 100px;
  --number-color: #e3a28f;
}
body#index main #flow ul li:nth-child(2) {
  --number-color: #e1a1a1;
}
body#index main #flow ul li:nth-child(3) {
  --number-color: #bd99c5;
}
body#index main #flow ul li:nth-child(4) {
  --number-color: #e1a1a1;
}
body#index main #flow ul li:nth-child(5) {
  --number-color: #e3a28f;
}
body#index main #flow ul li {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-end;
  position: relative;
  background-color: #fff;
}
body#index main #flow ul li:not(:last-child) {
  margin-bottom: 5rem;
}
@media screen and (max-width: 985px) {
  body#index main #flow ul li:not(:last-child) {
    margin-bottom: calc(5rem + var(--number-width) / 2);
  }
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li:not(:last-child) {
    margin-bottom: calc(4rem + var(--number-width) / 2);
  }
}
body#index main #flow ul li:before {
  content: "";
  width: 3px;
  height: calc(100% - var(--number-width) / 2 - 1rem);
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/vertical-line_dotted.svg);
  background-repeat: repeat-y;
  background-position: top center;
  background-size: 100%;
  position: absolute;
  bottom: 0;
  left: calc(var(--number-width) / 2);
}
@media screen and (max-width: 985px) {
  body#index main #flow ul li:before {
    width: 0.5vw;
    height: calc(1rem + var(--number-width) / 2);
    top: calc(100% + 0.5rem);
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
@media screen and (max-width: 985px) {
  body#index main #flow ul li:last-child:before {
    display: none;
  }
}
body#index main #flow ul li .number {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: var(--number-width);
  color: #fff;
  background-color: var(--number-color);
  border-radius: 100%;
  aspect-ratio: 1/1;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  translate: 0 -50%;
}
@media screen and (max-width: 985px) {
  body#index main #flow ul li .number {
    --number-width: 85px;
    right: 0;
    margin: 0 auto;
    translate: 0 -75%;
  }
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li .number {
    --number-width: 16vw;
    translate: 0 -50%;
  }
}
body#index main #flow ul li .number > span {
  font-family: "Barlow", serif;
  line-height: 1;
}
body#index main #flow ul li .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
body#index main #flow ul li .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li .number > span:nth-child(2) {
    font-size: 3.7vw;
  }
}
body#index main #flow ul li > div {
  max-width: 880px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  position: relative;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li > div {
    display: block;
  }
}
body#index main #flow ul li > div picture {
  display: block;
  width: 43.2%;
  height: auto;
  aspect-ratio: 380/250;
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li > div picture {
    width: 100%;
    aspect-ratio: 335/150;
  }
}
body#index main #flow ul li > div picture img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
body#index main #flow ul li > div > div {
  width: 56.8%;
  padding: 2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li > div > div {
    width: 100%;
  }
}
body#index main #flow ul li > div > div:before {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li > div > div:before {
    width: 9.3vw;
  }
}
body#index main #flow ul li > div > div:before {
  position: absolute;
  bottom: 1rem;
  left: 0;
  right: 0;
  margin: 0 auto;
}
body#index main #flow ul li > div > div:after {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li > div > div:after {
    width: 0.8vw;
  }
}
body#index main #flow ul li > div > div h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li > div > div h3 {
    font-size: 4.8vw;
  }
}
body#index main #flow ul li > div > div h3 {
  margin-bottom: 0.8em;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li > div > div h3 {
    text-align: center;
  }
}
body#index main #flow ul li > div > div p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#index main #flow ul li > div > div p {
    font-size: 3.7vw;
  }
}
body#index main #flow ul li > div > div p {
  letter-spacing: 0.15em;
  margin-right: calc(0em - 0.15em);
}
body#index main #flow ul li > div > div p a {
  text-decoration: underline;
}
body#index main #flow ul li > div > div p a:hover {
  text-decoration: none;
}
body#index main #faq {
  padding: var(--section-padding) 0;
  background-color: #f5edeb;
}
body#index main #faq dl {
  max-width: 1366px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
}
body#index main #faq dl > div {
  --qa-width: 50px;
}
@media screen and (max-width: 767px) {
  body#index main #faq dl > div {
    --qa-width: 10.7vw;
  }
}
body#index main #faq dl > div {
  background-color: #fff;
}
body#index main #faq dl > div:not(:last-child) {
  margin-bottom: 2rem;
}
body#index main #faq dl > div dt,
body#index main #faq dl > div dd {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#index main #faq dl > div dt,
  body#index main #faq dl > div dd {
    font-size: 3.7vw;
  }
}
body#index main #faq dl > div dt,
body#index main #faq dl > div dd {
  font-weight: 500;
  position: relative;
}
body#index main #faq dl > div dt:before,
body#index main #faq dl > div dd:before {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: var(--qa-width);
  font-family: "Barlow", serif;
  text-align: center;
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#index main #faq dl > div dt:before,
  body#index main #faq dl > div dd:before {
    font-size: 5.3vw;
  }
}
body#index main #faq dl > div dt:before,
body#index main #faq dl > div dd:before {
  font-style: italic;
  font-weight: 500;
  position: absolute;
  top: 0;
  left: 0;
}
body#index main #faq dl > div dt > label,
body#index main #faq dl > div dt > span,
body#index main #faq dl > div dd > label,
body#index main #faq dl > div dd > span {
  display: block;
  padding: 0.7rem calc(var(--qa-width) + 1rem);
}
body#index main #faq dl > div dt {
  min-height: 50px;
}
body#index main #faq dl > div dt:before {
  content: "Q";
  background-color: #e1a1a1;
  color: #fff;
  height: 100%;
}
body#index main #faq dl > div dt > label {
  cursor: pointer;
  position: relative;
}
body#index main #faq dl > div dt > label:after {
  content: "";
  display: block;
  width: var(--qa-width);
  height: var(--qa-width);
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/icon_plus.svg);
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: center;
  position: absolute;
  top: 0;
  right: 0;
  transition: 0.5s;
}
body#index main #faq dl > div dt > label input {
  display: none;
}
body#index main #faq dl > div dd {
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition:
    height 0.5s,
    opacity 0.5s;
}
body#index main #faq dl > div dd:before {
  content: "A";
  color: #ccc;
  aspect-ratio: 1/1;
}
body#index main #faq dl > div:has(input:checked) dt label:after {
  rotate: 180deg;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/icon_minus.svg);
}
body#index main #faq dl > div:has(input:checked) dd {
  height: auto;
  height: calc-size(auto, size);
  opacity: 1;
}
body#index main #column {
  padding: var(--section-padding) 0 0;
}
body#index main #column h2 {
  margin-bottom: 0;
}
body#law,
body#privacy-policy,
body#terms {
  padding-top: var(--fixed-header-height);
}
body#law main,
body#privacy-policy main,
body#terms main {
  padding-bottom: 100px;
  background-color: #f5edeb;
}
@media screen and (max-width: 767px) {
  body#law main,
  body#privacy-policy main,
  body#terms main {
    padding-bottom: 13.3vw;
  }
}
body#law main .main-title,
body#privacy-policy main .main-title,
body#terms main .main-title {
  width: 100%;
  height: 240px;
  display: flex;
  flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  body#law main .main-title,
  body#privacy-policy main .main-title,
  body#terms main .main-title {
    height: 38.7vw;
  }
}
body#law main .main-title h1,
body#privacy-policy main .main-title h1,
body#terms main .main-title h1 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 35px;
  position: relative;
}
@media screen and (max-width: 767px) {
  body#law main .main-title h1,
  body#privacy-policy main .main-title h1,
  body#terms main .main-title h1 {
    row-gap: 5.3vw;
  }
}
body#law main .main-title h1:before,
body#privacy-policy main .main-title h1:before,
body#terms main .main-title h1:before {
  content: "";
  display: block;
  width: 105px;
  aspect-ratio: 105/18;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 2rem;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  body#law main .main-title h1:before,
  body#privacy-policy main .main-title h1:before,
  body#terms main .main-title h1:before {
    width: 13.3vw;
    top: 2.7vw;
  }
}
body#law main .main-title h1 > span:nth-child(1),
body#privacy-policy main .main-title h1 > span:nth-child(1),
body#terms main .main-title h1 > span:nth-child(1) {
  font-size: 45px;
}
@media screen and (max-width: 767px) {
  body#law main .main-title h1 > span:nth-child(1),
  body#privacy-policy main .main-title h1 > span:nth-child(1),
  body#terms main .main-title h1 > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
body#law main .main-title h1 > span:nth-child(1),
body#privacy-policy main .main-title h1 > span:nth-child(1),
body#terms main .main-title h1 > span:nth-child(1) {
  font-weight: 500;
}
body#law main .main-title h1 > span:nth-child(2),
body#privacy-policy main .main-title h1 > span:nth-child(2),
body#terms main .main-title h1 > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#law main .main-title h1 > span:nth-child(2),
  body#privacy-policy main .main-title h1 > span:nth-child(2),
  body#terms main .main-title h1 > span:nth-child(2) {
    font-size: 3.7vw;
  }
}
body#law main .main-title h1 > span:nth-child(2),
body#privacy-policy main .main-title h1 > span:nth-child(2),
body#terms main .main-title h1 > span:nth-child(2) {
  font-family: "Barlow", serif;
}
body#law .contents,
body#privacy-policy .contents,
body#terms .contents {
  max-width: 1366px;
  width: 89.3vw;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  padding: var(--section-padding) 0;
}
body#law .contents .inner,
body#privacy-policy .contents .inner,
body#terms .contents .inner {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 20px;
}
@media screen and (max-width: 767px) {
  body#law .contents .inner,
  body#privacy-policy .contents .inner,
  body#terms .contents .inner {
    padding: 0 2.7vw 0 5.3vw;
  }
}
body#law .contents .inner h2,
body#privacy-policy .contents .inner h2,
body#terms .contents .inner h2 {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#law .contents .inner h2,
  body#privacy-policy .contents .inner h2,
  body#terms .contents .inner h2 {
    font-size: 3.7vw;
  }
}
body#law .contents .inner h2,
body#privacy-policy .contents .inner h2,
body#terms .contents .inner h2 {
  margin-bottom: 1em;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  body#law .contents .inner h2,
  body#privacy-policy .contents .inner h2,
  body#terms .contents .inner h2 {
    margin-bottom: 0.6em;
  }
}
body#law .contents .inner h3,
body#privacy-policy .contents .inner h3,
body#terms .contents .inner h3 {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#law .contents .inner h3,
  body#privacy-policy .contents .inner h3,
  body#terms .contents .inner h3 {
    font-size: 3.7vw;
  }
}
body#law .contents .inner h3,
body#privacy-policy .contents .inner h3,
body#terms .contents .inner h3 {
  margin-bottom: 1em;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  body#law .contents .inner h3,
  body#privacy-policy .contents .inner h3,
  body#terms .contents .inner h3 {
    margin-bottom: 0.6em;
  }
}
body#law .contents .inner p,
body#privacy-policy .contents .inner p,
body#terms .contents .inner p {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#law .contents .inner p,
  body#privacy-policy .contents .inner p,
  body#terms .contents .inner p {
    font-size: 3.7vw;
  }
}
body#law .contents .inner p,
body#privacy-policy .contents .inner p,
body#terms .contents .inner p {
  line-height: 2;
}
body#law .contents .inner p:not(:last-child),
body#privacy-policy .contents .inner p:not(:last-child),
body#terms .contents .inner p:not(:last-child) {
  margin-bottom: 2em;
}
body#law .contents .inner ul,
body#privacy-policy .contents .inner ul,
body#terms .contents .inner ul {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#law .contents .inner ul,
  body#privacy-policy .contents .inner ul,
  body#terms .contents .inner ul {
    font-size: 3.7vw;
  }
}
body#law .contents .inner ul,
body#privacy-policy .contents .inner ul,
body#terms .contents .inner ul {
  line-height: 2;
}
body#law .contents .inner ul:not(:last-child),
body#privacy-policy .contents .inner ul:not(:last-child),
body#terms .contents .inner ul:not(:last-child) {
  margin-bottom: 2em;
}
body#law .contents .inner ul li,
body#privacy-policy .contents .inner ul li,
body#terms .contents .inner ul li {
  padding-left: 1.5em;
  position: relative;
}
@media screen and (max-width: 767px) {
  body#law .contents .inner ul li,
  body#privacy-policy .contents .inner ul li,
  body#terms .contents .inner ul li {
    padding-left: 1em;
  }
}
body#law .contents .inner ul li:before,
body#privacy-policy .contents .inner ul li:before,
body#terms .contents .inner ul li:before {
  content: "・";
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0;
  left: 0;
}
body#law .contents .inner ul.marker01 > li:before,
body#privacy-policy .contents .inner ul.marker01 > li:before,
body#terms .contents .inner ul.marker01 > li:before {
  content: " └";
}
body#law .contents .inner ol,
body#privacy-policy .contents .inner ol,
body#terms .contents .inner ol {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#law .contents .inner ol,
  body#privacy-policy .contents .inner ol,
  body#terms .contents .inner ol {
    font-size: 3.7vw;
  }
}
body#law .contents .inner ol,
body#privacy-policy .contents .inner ol,
body#terms .contents .inner ol {
  list-style-type: decimal;
  padding-left: 1.5em;
  line-height: 2;
}
body#law .contents .inner ol:not(:last-child),
body#privacy-policy .contents .inner ol:not(:last-child),
body#terms .contents .inner ol:not(:last-child) {
  margin-bottom: 2em;
}
body#terms .contents .inner h2 {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#terms .contents .inner h2 {
    font-size: 4.5vw;
  }
}
body#first main #point,
body#concept main #point,
body#price main #point {
  padding-block: var(--section-padding);
}
body#first main #point h2,
body#concept main #point h2,
body#price main #point h2 {
  margin-bottom: 6rem;
}
body#first main #point > ul,
body#concept main #point > ul,
body#price main #point > ul {
  width: 100%;
}
body#first main #point > ul > li,
body#concept main #point > ul > li,
body#price main #point > ul > li {
  width: 100%;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  padding-top: 65px;
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 720px) {
  body#first main #point > ul > li,
  body#concept main #point > ul > li,
  body#price main #point > ul > li {
    background-image: none;
    padding-top: 0;
  }
  body#first main #point > ul > li:before,
  body#concept main #point > ul > li:before,
  body#price main #point > ul > li:before {
    content: "";
    display: block;
    width: 100%;
    height: calc(100% - 16vw);
    background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
    position: absolute;
    inset: 0;
    margin: auto;
    z-index: -1;
  }
}
body#first main #point > ul > li:not(:last-child),
body#concept main #point > ul > li:not(:last-child),
body#price main #point > ul > li:not(:last-child) {
  margin-bottom: 150px;
}
@media screen and (max-width: 767px) {
  body#first main #point > ul > li:not(:last-child),
  body#concept main #point > ul > li:not(:last-child),
  body#price main #point > ul > li:not(:last-child) {
    margin-bottom: 18.7vw;
  }
}
body#first main #point > ul > li .number,
body#concept main #point > ul > li .number,
body#price main #point > ul > li .number {
  --width: 100px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  width: var(--width);
  aspect-ratio: 1/1;
  position: absolute;
  top: calc(0px - var(--width) / 2);
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 20;
}
body#first main #point > ul > li .number > span,
body#concept main #point > ul > li .number > span,
body#price main #point > ul > li .number > span {
  text-align: center;
  color: #fff;
  line-height: 1;
  font-family: "Barlow", serif;
}
body#first main #point > ul > li .number > span:nth-child(1),
body#concept main #point > ul > li .number > span:nth-child(1),
body#price main #point > ul > li .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#first main #point > ul > li .number > span:nth-child(1),
  body#concept main #point > ul > li .number > span:nth-child(1),
  body#price main #point > ul > li .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
body#first main #point > ul > li .number > span:nth-child(2),
body#concept main #point > ul > li .number > span:nth-child(2),
body#price main #point > ul > li .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#first main #point > ul > li .number > span:nth-child(2),
  body#concept main #point > ul > li .number > span:nth-child(2),
  body#price main #point > ul > li .number > span:nth-child(2) {
    font-size: 3.7vw;
  }
}
body#first main #point > ul > li:nth-child(1) .number,
body#concept main #point > ul > li:nth-child(1) .number,
body#price main #point > ul > li:nth-child(1) .number {
  background-color: #e3a28f;
}
body#first main #point > ul > li:nth-child(2) .number,
body#concept main #point > ul > li:nth-child(2) .number,
body#price main #point > ul > li:nth-child(2) .number {
  background-color: #e1a1a1;
}
body#first main #point > ul > li:nth-child(3) .number,
body#concept main #point > ul > li:nth-child(3) .number,
body#price main #point > ul > li:nth-child(3) .number {
  background-color: #bd99c5;
}
body#first main #point > ul > li > div,
body#concept main #point > ul > li > div,
body#price main #point > ul > li > div {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  z-index: 10;
  translate: 0 40px;
}
@media screen and (max-width: 720px) {
  body#first main #point > ul > li > div,
  body#concept main #point > ul > li > div,
  body#price main #point > ul > li > div {
    flex-direction: column;
    translate: 0 0;
  }
}
@media screen and (min-width: 721px) {
  body#first main #point > ul > li > div:before,
  body#concept main #point > ul > li > div:before,
  body#price main #point > ul > li > div:before {
    content: "";
    display: block;
    width: 75%;
    height: 100%;
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
    position: absolute;
    top: 0;
    right: 0;
    left: auto;
  }
}
body#first main #point > ul > li > div > .image-area,
body#concept main #point > ul > li > div > .image-area,
body#price main #point > ul > li > div > .image-area {
  width: 50%;
  position: relative;
  z-index: 11;
}
@media screen and (max-width: 720px) {
  body#first main #point > ul > li > div > .image-area,
  body#concept main #point > ul > li > div > .image-area,
  body#price main #point > ul > li > div > .image-area {
    width: 100%;
  }
}
body#first main #point > ul > li > div > .image-area img,
body#concept main #point > ul > li > div > .image-area img,
body#price main #point > ul > li > div > .image-area img {
  width: 100%;
  aspect-ratio: 500/310;
  -o-object-fit: cover;
  object-fit: cover;
  translate: 0 30px;
}
@media screen and (max-width: 720px) {
  body#first main #point > ul > li > div > .image-area img,
  body#concept main #point > ul > li > div > .image-area img,
  body#price main #point > ul > li > div > .image-area img {
    aspect-ratio: 335/200;
    translate: 0 0;
  }
}
body#first main #point > ul > li > div > .message-area,
body#concept main #point > ul > li > div > .message-area,
body#price main #point > ul > li > div > .message-area {
  width: 50%;
  padding-block: 30px;
  min-height: 370px;
  position: relative;
  z-index: 10;
  padding-inline: 2rem;
}
@media screen and (max-width: 720px) {
  body#first main #point > ul > li > div > .message-area,
  body#concept main #point > ul > li > div > .message-area,
  body#price main #point > ul > li > div > .message-area {
    width: 100%;
    min-height: auto;
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
    padding-inline: 1.5rem;
  }
}
body#first main #point > ul > li > div > .message-area h3,
body#concept main #point > ul > li > div > .message-area h3,
body#price main #point > ul > li > div > .message-area h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#first main #point > ul > li > div > .message-area h3,
  body#concept main #point > ul > li > div > .message-area h3,
  body#price main #point > ul > li > div > .message-area h3 {
    font-size: 4.8vw;
  }
}
body#first main #point > ul > li > div > .message-area h3,
body#concept main #point > ul > li > div > .message-area h3,
body#price main #point > ul > li > div > .message-area h3 {
  margin-bottom: 0.8em;
}
@media screen and (max-width: 720px) {
  body#first main #point > ul > li > div > .message-area h3,
  body#concept main #point > ul > li > div > .message-area h3,
  body#price main #point > ul > li > div > .message-area h3 {
    text-align: center;
  }
}
body#first main #point > ul > li > div > .message-area p,
body#concept main #point > ul > li > div > .message-area p,
body#price main #point > ul > li > div > .message-area p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#first main #point > ul > li > div > .message-area p,
  body#concept main #point > ul > li > div > .message-area p,
  body#price main #point > ul > li > div > .message-area p {
    font-size: 3.7vw;
  }
}
body#first main #point > ul > li > div > .message-area p,
body#concept main #point > ul > li > div > .message-area p,
body#price main #point > ul > li > div > .message-area p {
  line-height: 1.8;
}
body#first main #point > ul > li > div > .message-area p b,
body#concept main #point > ul > li > div > .message-area p b,
body#price main #point > ul > li > div > .message-area p b {
  text-decoration: underline;
  text-decoration-color: #ffffb4;
  text-decoration-thickness: 0.3em;
  text-underline-offset: 0.2em;
}
body#first main #point > ul > li > div > .message-area:before,
body#concept main #point > ul > li > div > .message-area:before,
body#price main #point > ul > li > div > .message-area:before {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background-image: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 720px) {
  body#first main #point > ul > li > div > .message-area:before,
  body#concept main #point > ul > li > div > .message-area:before,
  body#price main #point > ul > li > div > .message-area:before {
    right: auto;
    left: 0;
  }
}
body#first main #point > ul > li > div > .message-area:after,
body#concept main #point > ul > li > div > .message-area:after,
body#price main #point > ul > li > div > .message-area:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  inset: auto 0 1rem;
  margin: 0 auto;
}
@media screen and (min-width: 721px) {
  body#first main #point > ul > li:nth-child(odd) > div:before,
  body#concept main #point > ul > li:nth-child(odd) > div:before,
  body#price main #point > ul > li:nth-child(odd) > div:before {
    left: 0;
    right: auto;
  }
  body#first main #point > ul > li:nth-child(odd) > div > .image-area,
  body#concept main #point > ul > li:nth-child(odd) > div > .image-area,
  body#price main #point > ul > li:nth-child(odd) > div > .image-area {
    order: 2;
  }
  body#first main #point > ul > li:nth-child(odd) > div > .message-area,
  body#concept main #point > ul > li:nth-child(odd) > div > .message-area,
  body#price main #point > ul > li:nth-child(odd) > div > .message-area {
    order: 1;
  }
  body#first main #point > ul > li:nth-child(odd) > div > .message-area:before,
  body#concept
    main
    #point
    > ul
    > li:nth-child(odd)
    > div
    > .message-area:before,
  body#price main #point > ul > li:nth-child(odd) > div > .message-area:before {
    right: auto;
    left: 0;
  }
}
body#first main .child-page_cta,
body#concept main .child-page_cta,
body#price main .child-page_cta {
  background-color: #fff;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
}
body#first main .child-page_cta .contents01,
body#concept main .child-page_cta .contents01,
body#price main .child-page_cta .contents01 {
  --bottom-cut-height: 45px;
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents01,
  body#concept main .child-page_cta .contents01,
  body#price main .child-page_cta .contents01 {
    --bottom-cut-height: 8vw;
  }
}
body#first main .child-page_cta .contents01,
body#concept main .child-page_cta .contents01,
body#price main .child-page_cta .contents01 {
  max-width: 1920px;
  width: 100%;
  margin-inline: auto;
  height: 250px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/first/cta-message-back.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
  clip-path: polygon(
    100% 0,
    100% calc(100% - var(--bottom-cut-height)),
    50% 100%,
    0 calc(100% - var(--bottom-cut-height)),
    0 0
  );
  position: relative;
}
body#first main .child-page_cta .contents01:after,
body#concept main .child-page_cta .contents01:after,
body#price main .child-page_cta .contents01:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents01:after,
  body#concept main .child-page_cta .contents01:after,
  body#price main .child-page_cta .contents01:after {
    width: 9.3vw;
  }
}
body#first main .child-page_cta .contents01:after,
body#concept main .child-page_cta .contents01:after,
body#price main .child-page_cta .contents01:after {
  position: absolute;
  inset: auto 0 4rem 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents01:after,
  body#concept main .child-page_cta .contents01:after,
  body#price main .child-page_cta .contents01:after {
    bottom: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents01,
  body#concept main .child-page_cta .contents01,
  body#price main .child-page_cta .contents01 {
    height: auto;
    aspect-ratio: 375/180;
    background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/first/cta-message-back_sp.webp);
  }
}
body#first main .child-page_cta .contents01 p,
body#concept main .child-page_cta .contents01 p,
body#price main .child-page_cta .contents01 p {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  -moz-column-gap: 3rem;
  column-gap: 3rem;
  text-align: center;
  color: #fff;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents01 p,
  body#concept main .child-page_cta .contents01 p,
  body#price main .child-page_cta .contents01 p {
    font-size: 4.3vw;
  }
}
body#first main .child-page_cta .contents01 p,
body#concept main .child-page_cta .contents01 p,
body#price main .child-page_cta .contents01 p {
  line-height: 1.8;
}
@media screen and (max-width: 685px) {
  body#first main .child-page_cta .contents01 p,
  body#concept main .child-page_cta .contents01 p,
  body#price main .child-page_cta .contents01 p {
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents01 p,
  body#concept main .child-page_cta .contents01 p,
  body#price main .child-page_cta .contents01 p {
    align-items: flex-end;
  }
}
body#first main .child-page_cta .contents01 p:before,
body#first main .child-page_cta .contents01 p:after,
body#concept main .child-page_cta .contents01 p:before,
body#concept main .child-page_cta .contents01 p:after,
body#price main .child-page_cta .contents01 p:before,
body#price main .child-page_cta .contents01 p:after {
  content: "";
  display: block;
  width: 1px;
  height: 110px;
  border-left: solid 1px #ccc;
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents01 p:before,
  body#first main .child-page_cta .contents01 p:after,
  body#concept main .child-page_cta .contents01 p:before,
  body#concept main .child-page_cta .contents01 p:after,
  body#price main .child-page_cta .contents01 p:before,
  body#price main .child-page_cta .contents01 p:after {
    height: 14.7vw;
  }
}
body#first main .child-page_cta .contents01 p:before,
body#concept main .child-page_cta .contents01 p:before,
body#price main .child-page_cta .contents01 p:before {
  rotate: -20deg;
}
body#first main .child-page_cta .contents01 p:after,
body#concept main .child-page_cta .contents01 p:after,
body#price main .child-page_cta .contents01 p:after {
  rotate: 20deg;
}
body#first main .child-page_cta .contents02,
body#concept main .child-page_cta .contents02,
body#price main .child-page_cta .contents02 {
  padding-block: 70px;
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents02,
  body#concept main .child-page_cta .contents02,
  body#price main .child-page_cta .contents02 {
    padding-block: 13.3vw;
  }
}
body#first main .child-page_cta .contents02 h3,
body#concept main .child-page_cta .contents02 h3,
body#price main .child-page_cta .contents02 h3 {
  text-align: center;
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents02 h3,
  body#concept main .child-page_cta .contents02 h3,
  body#price main .child-page_cta .contents02 h3 {
    font-size: 4.8vw;
  }
}
body#first main .child-page_cta .contents02 h3,
body#concept main .child-page_cta .contents02 h3,
body#price main .child-page_cta .contents02 h3 {
  line-height: 1.4;
  margin-bottom: 3rem;
  position: relative;
}
body#first main .child-page_cta .contents02 h3 b,
body#concept main .child-page_cta .contents02 h3 b,
body#price main .child-page_cta .contents02 h3 b {
  font-size: 45px;
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents02 h3 b,
  body#concept main .child-page_cta .contents02 h3 b,
  body#price main .child-page_cta .contents02 h3 b {
    font-size: 6.7vw;
  }
}
body#first main .child-page_cta .contents02 h3 b,
body#concept main .child-page_cta .contents02 h3 b,
body#price main .child-page_cta .contents02 h3 b {
  color: #eb7373;
}
body#first main .child-page_cta .contents02 h3:after,
body#concept main .child-page_cta .contents02 h3:after,
body#price main .child-page_cta .contents02 h3:after {
  content: "";
  display: block;
  width: 25px;
  aspect-ratio: 25/10;
  background-color: #df8989;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  position: absolute;
  inset: calc(100% + 0.5rem) 0 auto 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  body#first main .child-page_cta .contents02 h3:after,
  body#concept main .child-page_cta .contents02 h3:after,
  body#price main .child-page_cta .contents02 h3:after {
    width: 5.3vw;
  }
}
body#first main #flow,
body#concept main #flow,
body#price main #flow {
  padding: var(--section-padding) 0;
}
body#first main #flow h2,
body#concept main #flow h2,
body#price main #flow h2 {
  margin-bottom: 7rem;
}
body#first main #flow > ul,
body#concept main #flow > ul,
body#price main #flow > ul {
  --number-width: 100px;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul,
  body#concept main #flow > ul,
  body#price main #flow > ul {
    --number-width: 16vw;
  }
}
body#first main #flow > ul,
body#concept main #flow > ul,
body#price main #flow > ul {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
}
body#first main #flow > ul > li,
body#concept main #flow > ul > li,
body#price main #flow > ul > li {
  --number-color: #e3a28f;
}
body#first main #flow > ul > li:nth-child(2),
body#concept main #flow > ul > li:nth-child(2),
body#price main #flow > ul > li:nth-child(2) {
  --number-color: #e1a1a1;
}
body#first main #flow > ul > li:nth-child(3),
body#concept main #flow > ul > li:nth-child(3),
body#price main #flow > ul > li:nth-child(3) {
  --number-color: #bd99c5;
}
body#first main #flow > ul > li:nth-child(4),
body#concept main #flow > ul > li:nth-child(4),
body#price main #flow > ul > li:nth-child(4) {
  --number-color: #e1a1a1;
}
body#first main #flow > ul > li:nth-child(5),
body#concept main #flow > ul > li:nth-child(5),
body#price main #flow > ul > li:nth-child(5) {
  --number-color: #e3a28f;
}
body#first main #flow > ul > li,
body#concept main #flow > ul > li,
body#price main #flow > ul > li {
  position: relative;
}
body#first main #flow > ul > li:before,
body#concept main #flow > ul > li:before,
body#price main #flow > ul > li:before {
  content: "";
  display: block;
  width: 3px;
  height: calc(100% - (var(--number-width) / 2 + 1rem));
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/vertical-line_dotted.svg);
  background-repeat: repeat-y;
  background-position: top center;
  background-size: 100%;
  position: absolute;
  bottom: 0;
  left: calc(var(--number-width) / 2);
}
@media screen and (max-width: 800px) {
  body#first main #flow > ul > li:before,
  body#concept main #flow > ul > li:before,
  body#price main #flow > ul > li:before {
    display: none;
  }
}
body#first main #flow > ul > li:not(:last-child),
body#concept main #flow > ul > li:not(:last-child),
body#price main #flow > ul > li:not(:last-child) {
  margin-bottom: 100px;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li:not(:last-child),
  body#concept main #flow > ul > li:not(:last-child),
  body#price main #flow > ul > li:not(:last-child) {
    margin-bottom: 26.7vw;
  }
}
body#first main #flow > ul > li .number,
body#concept main #flow > ul > li .number,
body#price main #flow > ul > li .number {
  width: var(--number-width);
  height: var(--number-width);
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-color: var(--number-color);
  border-radius: 100%;
  position: absolute;
  top: calc(0px - var(--number-width) / 2);
  left: 0;
}
@media screen and (max-width: 800px) {
  body#first main #flow > ul > li .number,
  body#concept main #flow > ul > li .number,
  body#price main #flow > ul > li .number {
    right: 0;
    margin: 0 auto;
    z-index: 100;
  }
  body#first main #flow > ul > li .number:before,
  body#concept main #flow > ul > li .number:before,
  body#price main #flow > ul > li .number:before {
    content: "";
    display: block;
    width: 2px;
    height: 30px;
    background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/vertical-line_dotted.svg);
    background-repeat: repeat-y;
    background-position: top center;
    background-size: 100%;
    position: absolute;
    bottom: calc(100% + 0.5rem);
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
@media screen and (max-width: 800px) and (max-width: 767px) {
  body#first main #flow > ul > li .number:before,
  body#concept main #flow > ul > li .number:before,
  body#price main #flow > ul > li .number:before {
    height: 14.7vw;
  }
}
body#first main #flow > ul > li .number > span,
body#concept main #flow > ul > li .number > span,
body#price main #flow > ul > li .number > span {
  text-align: center;
  color: #fff;
  font-family: "Barlow", serif;
}
body#first main #flow > ul > li .number > span:nth-child(1),
body#concept main #flow > ul > li .number > span:nth-child(1),
body#price main #flow > ul > li .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li .number > span:nth-child(1),
  body#concept main #flow > ul > li .number > span:nth-child(1),
  body#price main #flow > ul > li .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
body#first main #flow > ul > li .number > span:nth-child(2),
body#concept main #flow > ul > li .number > span:nth-child(2),
body#price main #flow > ul > li .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li .number > span:nth-child(2),
  body#concept main #flow > ul > li .number > span:nth-child(2),
  body#price main #flow > ul > li .number > span:nth-child(2) {
    font-size: 3.7vw;
  }
}
body#first main #flow > ul > li > div,
body#concept main #flow > ul > li > div,
body#price main #flow > ul > li > div {
  --image-area-height: 400px;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li > div,
  body#concept main #flow > ul > li > div,
  body#price main #flow > ul > li > div {
    --image-area-height: 40vw;
  }
}
body#first main #flow > ul > li > div,
body#concept main #flow > ul > li > div,
body#price main #flow > ul > li > div {
  width: calc(100% - 120px);
  margin-left: auto;
  padding-block: 2rem;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 800px) {
  body#first main #flow > ul > li > div,
  body#concept main #flow > ul > li > div,
  body#price main #flow > ul > li > div {
    width: 100%;
    padding-block: 0;
  }
}
body#first main #flow > ul > li > div:after,
body#concept main #flow > ul > li > div:after,
body#price main #flow > ul > li > div:after {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background-image: linear-gradient(
    to bottom,
    rgba(189, 153, 197, 0.8),
    rgba(225, 161, 161, 0.8),
    rgba(227, 162, 143, 0.8)
  );
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 800px) {
  body#first main #flow > ul > li > div:after,
  body#concept main #flow > ul > li > div:after,
  body#price main #flow > ul > li > div:after {
    height: calc(100% - var(--image-area-height));
  }
}
body#first main #flow > ul > li > div .image-area,
body#concept main #flow > ul > li > div .image-area,
body#price main #flow > ul > li > div .image-area {
  width: 43.2%;
}
@media screen and (max-width: 800px) {
  body#first main #flow > ul > li > div .image-area,
  body#concept main #flow > ul > li > div .image-area,
  body#price main #flow > ul > li > div .image-area {
    width: 100%;
  }
}
body#first main #flow > ul > li > div .image-area img,
body#concept main #flow > ul > li > div .image-area img,
body#price main #flow > ul > li > div .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 380/250;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 800px) {
  body#first main #flow > ul > li > div .image-area img,
  body#concept main #flow > ul > li > div .image-area img,
  body#price main #flow > ul > li > div .image-area img {
    aspect-ratio: auto;
    height: var(--image-area-height);
  }
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li > div .image-area img,
  body#concept main #flow > ul > li > div .image-area img,
  body#price main #flow > ul > li > div .image-area img {
    width: 100%;
    height: auto;
    aspect-ratio: 335/150;
  }
}
body#first main #flow > ul > li > div .message-area,
body#concept main #flow > ul > li > div .message-area,
body#price main #flow > ul > li > div .message-area {
  width: 56.8%;
  padding-inline: 3.5rem;
  padding-bottom: 1.5rem;
  position: relative;
}
body#first
  main
  #flow
  > ul
  > li
  > div
  .message-area:not(:has(+ .message-area-bottom)):after,
body#concept
  main
  #flow
  > ul
  > li
  > div
  .message-area:not(:has(+ .message-area-bottom)):after,
body#price
  main
  #flow
  > ul
  > li
  > div
  .message-area:not(:has(+ .message-area-bottom)):after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  body#first
    main
    #flow
    > ul
    > li
    > div
    .message-area:not(:has(+ .message-area-bottom)):after,
  body#concept
    main
    #flow
    > ul
    > li
    > div
    .message-area:not(:has(+ .message-area-bottom)):after,
  body#price
    main
    #flow
    > ul
    > li
    > div
    .message-area:not(:has(+ .message-area-bottom)):after {
    width: 9.3vw;
  }
}
body#first
  main
  #flow
  > ul
  > li
  > div
  .message-area:not(:has(+ .message-area-bottom)):after,
body#concept
  main
  #flow
  > ul
  > li
  > div
  .message-area:not(:has(+ .message-area-bottom)):after,
body#price
  main
  #flow
  > ul
  > li
  > div
  .message-area:not(:has(+ .message-area-bottom)):after {
  position: absolute;
  inset: auto 0 0;
  margin: 0 auto;
}
@media screen and (max-width: 800px) {
  body#first
    main
    #flow
    > ul
    > li
    > div
    .message-area:not(:has(+ .message-area-bottom)):after,
  body#concept
    main
    #flow
    > ul
    > li
    > div
    .message-area:not(:has(+ .message-area-bottom)):after,
  body#price
    main
    #flow
    > ul
    > li
    > div
    .message-area:not(:has(+ .message-area-bottom)):after {
    bottom: 1.5rem;
  }
}
@media screen and (max-width: 800px) {
  body#first
    main
    #flow
    > ul
    > li
    > div
    .message-area:has(+ .message-area-bottom),
  body#concept
    main
    #flow
    > ul
    > li
    > div
    .message-area:has(+ .message-area-bottom),
  body#price
    main
    #flow
    > ul
    > li
    > div
    .message-area:has(+ .message-area-bottom) {
    padding-bottom: 1rem;
  }
}
@media screen and (max-width: 800px) {
  body#first main #flow > ul > li > div .message-area,
  body#concept main #flow > ul > li > div .message-area,
  body#price main #flow > ul > li > div .message-area {
    width: 100%;
    padding: 1.5rem;
    padding-bottom: 3rem;
  }
}
body#first main #flow > ul > li > div .message-area h3,
body#concept main #flow > ul > li > div .message-area h3,
body#price main #flow > ul > li > div .message-area h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li > div .message-area h3,
  body#concept main #flow > ul > li > div .message-area h3,
  body#price main #flow > ul > li > div .message-area h3 {
    font-size: 4.8vw;
  }
}
body#first main #flow > ul > li > div .message-area h3,
body#concept main #flow > ul > li > div .message-area h3,
body#price main #flow > ul > li > div .message-area h3 {
  font-weight: 500;
  margin-bottom: 1em;
}
body#first main #flow > ul > li > div .message-area p,
body#concept main #flow > ul > li > div .message-area p,
body#price main #flow > ul > li > div .message-area p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li > div .message-area p,
  body#concept main #flow > ul > li > div .message-area p,
  body#price main #flow > ul > li > div .message-area p {
    font-size: 3.7vw;
  }
}
body#first main #flow > ul > li > div .message-area p:not(:last-child),
body#concept main #flow > ul > li > div .message-area p:not(:last-child),
body#price main #flow > ul > li > div .message-area p:not(:last-child) {
  margin-bottom: 1rem;
}
body#first main #flow > ul > li > div .message-area-bottom,
body#concept main #flow > ul > li > div .message-area-bottom,
body#price main #flow > ul > li > div .message-area-bottom {
  width: 100%;
  padding-inline: 2rem;
  padding-block: 2rem 1rem;
  position: relative;
}
body#first main #flow > ul > li > div .message-area-bottom p,
body#concept main #flow > ul > li > div .message-area-bottom p,
body#price main #flow > ul > li > div .message-area-bottom p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li > div .message-area-bottom p,
  body#concept main #flow > ul > li > div .message-area-bottom p,
  body#price main #flow > ul > li > div .message-area-bottom p {
    font-size: 3.7vw;
  }
}
body#first main #flow > ul > li > div .message-area-bottom p:not(:last-child),
body#concept main #flow > ul > li > div .message-area-bottom p:not(:last-child),
body#price main #flow > ul > li > div .message-area-bottom p:not(:last-child) {
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li > div .message-area-bottom,
  body#concept main #flow > ul > li > div .message-area-bottom,
  body#price main #flow > ul > li > div .message-area-bottom {
    padding: 0 1.5rem 3rem;
  }
}
body#first main #flow > ul > li > div .message-area-bottom:after,
body#concept main #flow > ul > li > div .message-area-bottom:after,
body#price main #flow > ul > li > div .message-area-bottom:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li > div .message-area-bottom:after,
  body#concept main #flow > ul > li > div .message-area-bottom:after,
  body#price main #flow > ul > li > div .message-area-bottom:after {
    width: 9.3vw;
  }
}
body#first main #flow > ul > li > div .message-area-bottom:after,
body#concept main #flow > ul > li > div .message-area-bottom:after,
body#price main #flow > ul > li > div .message-area-bottom:after {
  position: absolute;
  inset: auto 0 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  body#first main #flow > ul > li > div .message-area-bottom:after,
  body#concept main #flow > ul > li > div .message-area-bottom:after,
  body#price main #flow > ul > li > div .message-area-bottom:after {
    bottom: 1.5rem;
  }
}
body#first main #What-is {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  padding-block: 50px 100px;
}
@media screen and (max-width: 767px) {
  body#first main #What-is {
    padding-block: 6.7vw 13.3vw;
  }
}
body#first main #What-is h2 {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#first main #What-is h2 {
    font-size: 4.3vw;
  }
}
body#first main #What-is h2 {
  position: relative;
  margin-bottom: 3rem;
}
body#first main #What-is h2:before,
body#first main #What-is h2:after {
  content: "";
  display: block;
  width: 1px;
  height: 55px;
  border-left: solid 1px #ccc;
}
@media screen and (max-width: 767px) {
  body#first main #What-is h2:before,
  body#first main #What-is h2:after {
    height: 9.3vw;
  }
}
body#first main #What-is h2:before {
  rotate: -20deg;
}
body#first main #What-is h2:after {
  rotate: 20deg;
}
body#first main #What-is h2 > span:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  inset: calc(100% + 0.5rem) 0 auto;
  margin: 0 auto;
}
body#first main #What-is p {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#first main #What-is p {
    font-size: 3.7vw;
  }
}
body#first main #What-is p {
  line-height: 1.8;
}
body#first main #types {
  padding-top: var(--section-padding);
  background-color: #f5edeb;
}
body#first main #types h2.headline01 + p {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#first main #types h2.headline01 + p {
    font-size: 3.7vw;
  }
}
body#first main #types h2.headline01 + p {
  line-height: 1.8;
  margin-bottom: 3rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  body#first main #types h2.headline01 + p {
    text-align: left;
  }
  body#first main #types h2.headline01 + p br {
    display: none;
  }
}
body#first main #types > ul {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  -moz-column-gap: 20px;
  column-gap: 20px;
  row-gap: 3rem;
  margin-bottom: 2rem;
}
body#first main #types > ul li {
  --padding: 2rem;
  --headline-color: #e1a1a1;
  width: 480px;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  padding: var(--padding);
}
@media screen and (max-width: 767px) {
  body#first main #types > ul li {
    width: 100%;
  }
}
body#first main #types > ul li.mat-pilates {
  --headline-color: #bd99c5;
}
body#first main #types > ul li h3 {
  width: calc(100% + var(--padding) * 2);
  height: 60px;
  background-color: var(--headline-color);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#first main #types > ul li h3 {
    font-size: 4.3vw;
  }
}
body#first main #types > ul li h3 {
  margin: calc(0px - var(--padding));
  margin-bottom: var(--padding);
}
@media screen and (max-width: 767px) {
  body#first main #types > ul li h3 {
    height: 10.7vw;
  }
}
body#first main #types > ul li img {
  width: 100%;
  aspect-ratio: 400/200;
  -o-object-fit: cover;
  object-fit: cover;
  margin-bottom: 1rem;
}
body#first main #types > ul li p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#first main #types > ul li p {
    font-size: 3.7vw;
  }
}
body#first main #types .tips {
  width: 100%;
  height: 120px;
  margin-bottom: var(--section-padding-small);
  background-image: linear-gradient(
    to right,
    rgba(255, 255, 255, 0),
    #fff 20%,
    #fff 80%,
    rgba(255, 255, 255, 0)
  );
  position: relative;
}
@media screen and (max-width: 860px) {
  body#first main #types .tips {
    margin-top: 5rem;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  body#first main #types .tips {
    margin-top: 3rem;
    background-image: none;
    background-color: #fff;
  }
}
body#first main #types .tips:after {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background-image: linear-gradient(
    to right,
    rgba(189, 153, 197, 0),
    #bd99c5,
    #e1a1a1,
    #e3a28f,
    rgba(227, 162, 143, 0)
  );
  position: absolute;
  top: 100%;
  left: 0;
}
@media screen and (max-width: 767px) {
  body#first main #types .tips:after {
    background-image: linear-gradient(to right, #bd99c5, #e1a1a1, #e3a28f);
  }
}
body#first main #types .tips .inner {
  max-width: 1000px;
  width: 89.3vw;
  height: 100%;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 860px) {
  body#first main #types .tips .inner {
    padding-top: 4rem;
    padding-bottom: 2rem;
  }
}
@media screen and (max-width: 767px) {
  body#first main #types .tips .inner {
    padding-top: 2rem;
  }
}
body#first main #types .tips .inner > span {
  --width: 100px;
}
@media screen and (max-width: 767px) {
  body#first main #types .tips .inner > span {
    --width: 16vw;
  }
}
body#first main #types .tips .inner > span {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#first main #types .tips .inner > span {
    font-size: 3.2vw;
  }
}
body#first main #types .tips .inner > span {
  width: var(--width);
  height: var(--width);
  aspect-ratio: 1/1;
  border-radius: 100%;
  background-color: #e1a1a1;
  position: absolute;
  inset: 0 auto 0 0;
  margin: auto 0;
}
@media screen and (max-width: 860px) {
  body#first main #types .tips .inner > span {
    inset: calc(0px - var(--width) / 2) 0 auto 0;
    margin: 0 auto;
  }
}
body#first main #types .tips .inner > span:after {
  --offset: 6px;
}
@media screen and (max-width: 767px) {
  body#first main #types .tips .inner > span:after {
    --offset: 1.1vw;
  }
}
body#first main #types .tips .inner > span:after {
  content: "";
  display: block;
  width: calc(100% - var(--offset) * 2);
  height: calc(100% - var(--offset) * 2);
  border: solid 1px #fff;
  border-radius: 100%;
  position: absolute;
  inset: 0;
  margin: auto;
}
body#first main #types .tips .inner p {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#first main #types .tips .inner p {
    font-size: 4.3vw;
  }
}
body#first main #types .tips .inner p {
  font-weight: 500;
}
body#first main #types .tips .inner p b {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#first main #types .tips .inner p b {
    font-size: 4.8vw;
  }
}
body#first main #types .tips .inner p b {
  color: #df8989;
  margin-inline: 0.5em;
}
body#concept main #What-is {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  padding-block: 50px 100px;
}
@media screen and (max-width: 767px) {
  body#concept main #What-is {
    padding-block: 6.7vw 13.3vw;
  }
}
body#concept main #What-is h2 {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#concept main #What-is h2 {
    font-size: 4.3vw;
  }
}
body#concept main #What-is h2 {
  position: relative;
  margin-bottom: 3rem;
}
body#concept main #What-is h2:before,
body#concept main #What-is h2:after {
  content: "";
  display: block;
  width: 1px;
  height: 55px;
  border-left: solid 1px #ccc;
}
@media screen and (max-width: 767px) {
  body#concept main #What-is h2:before,
  body#concept main #What-is h2:after {
    height: 9.3vw;
  }
}
body#concept main #What-is h2:before {
  rotate: -20deg;
}
body#concept main #What-is h2:after {
  rotate: 20deg;
}
body#concept main #What-is h2 > span:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  inset: calc(100% + 0.5rem) 0 auto;
  margin: 0 auto;
}
body#concept main #What-is p:nth-of-type(1) {
  max-width: 100%;
  width: 100%;
  background-color: #fff9f8;
  border: solid 1px #fce8de;
  border-radius: 5px;
  padding: 0.8rem;
  text-align: center;
  color: #eb7373;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#concept main #What-is p:nth-of-type(1) {
    font-size: 3.2vw;
  }
}
body#concept main #What-is p:nth-of-type(1) {
  font-weight: 500;
  line-height: 1.7;
  margin-bottom: 0.5rem;
}
body#concept main #What-is p:nth-of-type(2) {
  text-align: right;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#concept main #What-is p:nth-of-type(2) {
    font-size: 2.7vw;
  }
}
body#concept main #What-is p:nth-of-type(2) {
  margin-bottom: 3rem;
}
body#concept main #What-is p:nth-of-type(3) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#concept main #What-is p:nth-of-type(3) {
    font-size: 3.7vw;
  }
}
body#concept main #What-is p:nth-of-type(3) {
  line-height: 1.8;
}
body#concept main #program {
  padding-block: var(--section-padding);
  background-color: #f5edeb;
}
body#concept main #program .first-message {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .first-message {
    font-size: 3.7vw;
  }
}
body#concept main #program .first-message {
  margin-bottom: 3rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  body#concept main #program .first-message {
    text-align: left;
  }
}
body#concept main #program .first-message small {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .first-message small {
    font-size: 2.7vw;
  }
}
body#concept main #program .table-scrolled {
  --header-height: 50px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .table-scrolled {
    --header-height: 9.3vw;
  }
}
body#concept main #program .table-scrolled {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  margin-bottom: var(--section-padding);
}
@media screen and (max-width: 900px) {
  body#concept main #program .table-scrolled {
    position: relative;
  }
}
body#concept main #program .table-scrolled h3 {
  width: 100%;
  height: var(--header-height);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .table-scrolled h3 {
    font-size: 4.3vw;
  }
}
body#concept main #program .table-scrolled h3 {
  font-weight: 500;
  background-color: #e1a1a1;
}
@media screen and (max-width: 900px) {
  body#concept main #program .table-scrolled h3 {
    position: sticky;
    top: 0;
    left: 0;
  }
}
body#concept main #program .table-scrolled table {
  width: 100%;
}
@media screen and (max-width: 900px) {
  body#concept main #program .table-scrolled table {
    width: 980px;
  }
}
@media screen and (max-width: 767px) {
  body#concept main #program .table-scrolled table {
    width: 213.3vw;
  }
}
body#concept main #program .table-scrolled table tr th,
body#concept main #program .table-scrolled table tr td {
  padding: 0.75rem;
  border: solid 1px #e1a1a1;
  text-align: center;
  vertical-align: middle;
}
body#concept main #program .table-scrolled table thead tr th {
  background-color: #f8eeec;
  color: #e18686;
}
body#concept
  main
  #program
  .table-scrolled
  table
  thead
  tr
  th
  span:nth-of-type(1) {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#concept
    main
    #program
    .table-scrolled
    table
    thead
    tr
    th
    span:nth-of-type(1) {
    font-size: 4.3vw;
  }
}
body#concept
  main
  #program
  .table-scrolled
  table
  thead
  tr
  th
  span:nth-of-type(1) {
  margin-bottom: 0.3em;
}
body#concept
  main
  #program
  .table-scrolled
  table
  thead
  tr
  th
  span:nth-of-type(2) {
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  body#concept
    main
    #program
    .table-scrolled
    table
    thead
    tr
    th
    span:nth-of-type(2) {
    font-size: 3.2vw;
  }
}
body#concept main #program .table-scrolled table thead tr th:nth-child(1) {
  width: 148px;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .table-scrolled table thead tr th:nth-child(1) {
    font-size: 4.3vw;
  }
}
@media screen and (max-width: 900px) {
  body#concept main #program .table-scrolled table thead tr th:nth-child(1) {
    width: 4em;
  }
}
@media screen and (max-width: 900px) {
  body#concept main #program .table-scrolled table thead tr {
    position: relative;
  }
  body#concept main #program .table-scrolled table thead tr th:first-child {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 10;
  }
}
body#concept main #program .table-scrolled table tbody tr th,
body#concept main #program .table-scrolled table tbody tr td {
  background-color: #fff;
}
body#concept main #program .table-scrolled table tbody tr:nth-child(1) td {
  color: #e18686;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .table-scrolled table tbody tr:nth-child(1) td {
    font-size: 5.3vw;
  }
}
body#concept main #program .table-scrolled table tbody tr:nth-child(2) td {
  text-align: left;
  line-height: 1.7;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .table-scrolled table tbody tr:nth-child(2) td {
    font-size: 3.7vw;
  }
}
body#concept main #program .table-scrolled table tbody tr:nth-child(2) td {
  vertical-align: top;
}
@media screen and (max-width: 900px) {
  body#concept main #program .table-scrolled table tbody tr {
    position: relative;
  }
  body#concept main #program .table-scrolled table tbody tr th {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 10;
  }
}
body#concept main #program .program__cta {
  --bottom-cut-height: 45px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta {
    --bottom-cut-height: 8vw;
  }
}
body#concept main #program .program__cta {
  background-color: #fff;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
}
body#concept main #program .program__cta .contents01 {
  max-width: 1920px;
  width: 100%;
  margin-inline: auto;
  height: 250px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/first/cta-message-back.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
  clip-path: polygon(
    100% 0,
    100% calc(100% - var(--bottom-cut-height)),
    50% 100%,
    0 calc(100% - var(--bottom-cut-height)),
    0 0
  );
  position: relative;
}
body#concept main #program .program__cta .contents01:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta .contents01:after {
    width: 9.3vw;
  }
}
body#concept main #program .program__cta .contents01:after {
  position: absolute;
  inset: auto 0 4rem 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta .contents01:after {
    bottom: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta .contents01 {
    height: auto;
    aspect-ratio: 375/180;
    background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/first/cta-message-back_sp.webp);
  }
}
body#concept main #program .program__cta .contents01 p {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  -moz-column-gap: 3rem;
  column-gap: 3rem;
  text-align: center;
  color: #fff;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta .contents01 p {
    font-size: 4.3vw;
  }
}
body#concept main #program .program__cta .contents01 p {
  line-height: 1.8;
}
@media screen and (max-width: 685px) {
  body#concept main #program .program__cta .contents01 p {
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta .contents01 p {
    align-items: flex-end;
  }
}
body#concept main #program .program__cta .contents01 p:before,
body#concept main #program .program__cta .contents01 p:after {
  content: "";
  display: block;
  width: 1px;
  height: 110px;
  border-left: solid 1px #ccc;
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta .contents01 p:before,
  body#concept main #program .program__cta .contents01 p:after {
    height: 14.7vw;
  }
}
body#concept main #program .program__cta .contents01 p:before {
  rotate: -20deg;
}
body#concept main #program .program__cta .contents01 p:after {
  rotate: 20deg;
}
body#concept main #program .program__cta .contents02 {
  padding-block: 70px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta .contents02 {
    padding-block: 13.3vw;
  }
}
body#concept main #program .program__cta .contents02 h3 {
  text-align: center;
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta .contents02 h3 {
    font-size: 4.8vw;
  }
}
body#concept main #program .program__cta .contents02 h3 {
  line-height: 1.4;
  margin-bottom: 3rem;
  position: relative;
}
body#concept main #program .program__cta .contents02 h3 b {
  font-size: 45px;
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta .contents02 h3 b {
    font-size: 6.7vw;
  }
}
body#concept main #program .program__cta .contents02 h3 b {
  color: #eb7373;
}
body#concept main #program .program__cta .contents02 h3:after {
  content: "";
  display: block;
  width: 25px;
  aspect-ratio: 25/10;
  background-color: #df8989;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  position: absolute;
  inset: calc(100% + 0.5rem) 0 auto 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  body#concept main #program .program__cta .contents02 h3:after {
    width: 5.3vw;
  }
}
body#price main #Feel-free-to {
  max-width: 1000px;
  width: 89.3vw;
  margin: 3rem auto 0;
  border: solid 3px;
  -o-border-image: linear-gradient(to right bottom, #bd99c5, #e1a1a1, #e3a28f) 1;
  border-image: linear-gradient(to right bottom, #bd99c5, #e1a1a1, #e3a28f) 1;
  padding: 1rem 0 2rem;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to {
    -o-border-image: linear-gradient(to left bottom, #bd99c5, #e1a1a1, #e3a28f)
      1;
    border-image: linear-gradient(to left bottom, #bd99c5, #e1a1a1, #e3a28f) 1;
  }
}
body#price main #Feel-free-to h2 {
  width: 100%;
  height: 70px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-image: linear-gradient(to right, #bd99c5, #e1a1a1, #e3a28f);
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to h2 {
    font-size: 5.3vw;
  }
}
body#price main #Feel-free-to h2 {
  font-weight: 600;
  color: #fff;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to h2 {
    height: 10.7vw;
  }
}
body#price main #Feel-free-to > p:nth-of-type(1) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to > p:nth-of-type(1) {
    font-size: 3.7vw;
  }
}
body#price main #Feel-free-to > p:nth-of-type(1) {
  text-align: center;
  line-height: 1.4;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to > p:nth-of-type(1) span.pc {
    display: none;
  }
}
body#price main #Feel-free-to > p:nth-of-type(2) {
  width: -moz-max-content;
  width: max-content;
  display: block;
  margin: 0 auto 2.5rem;
  font-size: 35px;
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to > p:nth-of-type(2) {
    font-size: 5.3vw;
  }
}
body#price main #Feel-free-to > p:nth-of-type(2) {
  font-weight: bold;
  color: #eb7373;
  line-height: 1;
  position: relative;
}
body#price main #Feel-free-to > p:nth-of-type(2) b {
  font-size: 80px;
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to > p:nth-of-type(2) b {
    font-size: 13.9vw;
  }
}
body#price main #Feel-free-to > p:nth-of-type(2) b {
  line-height: 1;
}
body#price main #Feel-free-to > p:nth-of-type(2):before,
body#price main #Feel-free-to > p:nth-of-type(2):after {
  display: block;
  font-size: 35px;
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to > p:nth-of-type(2):before,
  body#price main #Feel-free-to > p:nth-of-type(2):after {
    font-size: 5.3vw;
  }
}
body#price main #Feel-free-to > p:nth-of-type(2):before,
body#price main #Feel-free-to > p:nth-of-type(2):after {
  width: 1em;
  height: 1em;
  line-height: 1;
  position: absolute;
  bottom: 0;
}
body#price main #Feel-free-to > p:nth-of-type(2):before {
  content: "＼";
  right: calc(100% + 0.2rem);
}
body#price main #Feel-free-to > p:nth-of-type(2):after {
  content: "／";
  left: calc(100% + 0.2rem);
}
body#price main #Feel-free-to a {
  --button-back: linear-gradient(to right, #ffb6a1, #feabab);
  --subtext-font-color: #efa191;
  --text-shadow: 0 0 5px rgba(0, 0, 0, 0);
}
body#price main #Feel-free-to a.line {
  --button-back: linear-gradient(to right, #67e8bd, #7dec96);
  --subtext-font-color: #82ce99;
  --text-shadow: 0 0 5px rgba(0, 0, 0, 0);
}
body#price main #Feel-free-to a.Advance-membership-reservation {
  --button-back: linear-gradient(to right, #ffae97, #ffa4a4);
  --subtext-font-color: #eb836d;
  --text-shadow: 0 0 5px #e48b7f;
}
body#price main #Feel-free-to a {
  max-width: 600px;
  width: 100%;
  height: 100px;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  border-radius: 1000px;
  padding-top: 10px;
  background: var(--button-back);
  position: relative;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
  transition: filter 0.5s;
}
body#price main #Feel-free-to a:after {
  content: "";
  display: block;
  font-size: 8px;
  width: 0.8em;
  height: 1em;
  background-color: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 3em;
  margin: auto 0;
  transition: 0.5s;
  filter: drop-shadow(var(--text-shadow));
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to a:after {
    font-size: 1.6vw;
    top: 4.5vw;
    right: 1em;
  }
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to a {
    max-width: 78.9vw;
    height: 16vw;
  }
}
body#price main #Feel-free-to a:hover {
  filter: brightness(1.2);
}
body#price main #Feel-free-to a:hover:after {
  translate: 1em 0;
}
body#price main #Feel-free-to a > span {
  font-weight: 600;
}
body#price main #Feel-free-to a > span.subtext {
  width: -moz-max-content;
  width: max-content;
  padding-inline: 2em;
  height: 35px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--subtext-font-color);
  background-color: #fff;
  border-radius: 1000px;
  border: solid 0.5px #e5e5e5;
  font-size: var(--subtext-size);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  translate: 0 -50%;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to a > span.subtext {
    font-size: 3.2vw;
  }
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to a > span.subtext {
    padding-inline: 1em;
    height: 6.7vw;
  }
}
body#price main #Feel-free-to a > span.maintext {
  text-align: center;
  color: #fff;
  font-size: var(--maintext-size);
  text-shadow: var(--text-shadow);
  font-size: 28px;
}
@media screen and (max-width: 767px) {
  body#price main #Feel-free-to a > span.maintext {
    font-size: 4.8vw;
  }
}
body#price main #Monthly-Plan {
  padding-block: var(--section-padding);
}
body#price main #Member-Plan {
  padding-block: var(--section-padding-small);
  background-color: #f5edeb;
}
body#price main #Member-Plan .inner {
  padding-block: var(--section-padding-small);
  padding-inline: 1rem;
  background-color: #fff;
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  body#price main #Member-Plan .inner {
    width: 100%;
    padding-inline: 5.35vw;
  }
}
body#price main #Member-Plan .inner h2 {
  margin-bottom: 3rem;
}
body#price main #Member-Plan .inner h2 + p {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#price main #Member-Plan .inner h2 + p {
    font-size: 3.2vw;
  }
}
body#price main #Member-Plan .inner h2 + p {
  margin-bottom: 2rem;
}
body#price main #Member-Plan .inner table {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
  margin-bottom: 2rem;
}
body#price main #Member-Plan .inner table tr th,
body#price main #Member-Plan .inner table tr td {
  vertical-align: middle;
  text-align: center;
  font-weight: 500;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#price main #Member-Plan .inner table tr th,
  body#price main #Member-Plan .inner table tr td {
    font-size: 3.7vw;
  }
}
body#price main #Member-Plan .inner table thead tr th {
  height: 50px;
  background-color: #e1a1a1;
  border: solid 1px #fff;
  color: #fff;
}
@media screen and (max-width: 767px) {
  body#price main #Member-Plan .inner table thead tr th {
    height: 10.7vw;
  }
}
body#price main #Member-Plan .inner table thead tr th:nth-child(1) {
  width: 350px;
}
@media screen and (max-width: 767px) {
  body#price main #Member-Plan .inner table thead tr th:nth-child(1) {
    width: 31.7vw;
  }
}
body#price main #Member-Plan .inner table tbody tr th,
body#price main #Member-Plan .inner table tbody tr td {
  border: solid 1px #e1a1a1;
  height: 80px;
}
@media screen and (max-width: 767px) {
  body#price main #Member-Plan .inner table tbody tr th,
  body#price main #Member-Plan .inner table tbody tr td {
    height: 22.7vw;
  }
}
body#price main #Member-Plan .inner table tbody tr th {
  color: #df8989;
  background-color: #fffaf9;
}
body#price main #Member-Plan .inner table tbody tr td b {
  font-family: "Barlow", serif;
  font-weight: 500;
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  body#price main #Member-Plan .inner table tbody tr td b {
    font-size: 8vw;
  }
}
body#price main #Member-Plan .inner table tbody tr td b {
  line-height: 1;
  color: #e1a1a1;
}
body#price main #Member-Plan .inner p:last-child {
  max-width: -moz-max-content;
  max-width: max-content;
  width: 100%;
  margin-inline: auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#price main #Member-Plan .inner p:last-child {
    font-size: 3.2vw;
  }
}
body#price main #Member-Plan .inner p:last-child {
  font-weight: 600;
  padding-inline: 60px;
  position: relative;
}
@media screen and (max-width: 767px) {
  body#price main #Member-Plan .inner p:last-child {
    padding-inline: 9.3vw;
  }
}
body#price main #Member-Plan .inner p:last-child b {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#price main #Member-Plan .inner p:last-child b {
    font-size: 5.3vw;
  }
}
body#price main #Member-Plan .inner p:last-child b {
  font-weight: bold;
  color: #eb7373;
}
body#price main #Member-Plan .inner p:last-child:before,
body#price main #Member-Plan .inner p:last-child:after {
  content: "";
  display: block;
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/laurel_left.webp);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
}
body#price main #Member-Plan .inner p:last-child:after {
  scale: -1 1;
}
body#index #column_list,
body#column #column_list {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: #fff;
  padding-block: var(--section-padding-small);
  padding-inline: 2rem;
}
body#index #column_list ul,
body#column #column_list ul {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  row-gap: 2rem;
  margin-bottom: var(--section-padding-small);
}
body#index #column_list ul li,
body#column #column_list ul li {
  width: calc(25% - 1.5rem);
}
@media screen and (max-width: 900px) {
  body#index #column_list ul li,
  body#column #column_list ul li {
    width: calc(33.3333333333% - 1.3333333333rem);
  }
}
@media screen and (max-width: 700px) {
  body#index #column_list ul li,
  body#column #column_list ul li {
    width: calc(50% - 1rem);
  }
}
@media screen and (max-width: 767px) {
  body#index #column_list ul li,
  body#column #column_list ul li {
    width: 100%;
  }
}
body#index #column_list ul li a,
body#column #column_list ul li a {
  display: block;
  position: relative;
  overflow: hidden;
}
body#index #column_list ul li a picture,
body#column #column_list ul li a picture {
  display: block;
  aspect-ratio: 3/2;
  overflow: hidden;
}
body#index #column_list ul li a picture img,
body#column #column_list ul li a picture img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  transition: 0.5s;
}
body#index #column_list ul li a time,
body#column #column_list ul li a time {
  display: inline-block;
  width: 100%;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  body#index #column_list ul li a time,
  body#column #column_list ul li a time {
    font-size: 3.2vw;
  }
}
body#index #column_list ul li a time,
body#column #column_list ul li a time {
  color: #a5a5a5;
  border-bottom: solid 1px #a5a5a5;
}
body#index #column_list ul li a h3,
body#column #column_list ul li a h3 {
  font-weight: bold;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#index #column_list ul li a h3,
  body#column #column_list ul li a h3 {
    font-size: 4.3vw;
  }
}
body#index #column_list ul li a h3,
body#column #column_list ul li a h3 {
  margin-block: 0.5rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-bottom: 0.25em;
  line-height: 1.5;
}
body#index #column_list ul li a p,
body#column #column_list ul li a p {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  body#index #column_list ul li a p,
  body#column #column_list ul li a p {
    font-size: 3.7vw;
  }
}
body#index #column_list ul li a p,
body#column #column_list ul li a p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-bottom: 0.25em;
}
body#index #column_list ul li a:before,
body#column #column_list ul li a:before {
  content: "";
  display: block;
  width: 200%;
  height: 100%;
  backdrop-filter: brightness(110%);
  clip-path: polygon(0 0, 100% 0, 75% 100%, 0 100%);
  position: absolute;
  top: 0;
  right: 100%;
  transition: 0.5s;
  z-index: 10;
}
body#index #column_list ul li a:hover:before,
body#column #column_list ul li a:hover:before {
  translate: 100% 0;
}
body#index #column_list ul li a:hover picture img,
body#column #column_list ul li a:hover picture img {
  scale: 1.1;
}
@media screen and (max-width: 900px) and (min-width: 701px) {
  body#index #column_list ul > li:nth-child(4) {
    display: none;
  }
}
body#column {
  padding-top: var(--fixed-header-height);
}
body#column main {
  padding-bottom: 100px;
  background-color: #f5edeb;
}
@media screen and (max-width: 767px) {
  body#column main {
    padding-bottom: 13.3vw;
  }
}
body#column main .main-title {
  width: 100%;
  height: 240px;
  display: flex;
  flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  body#column main .main-title {
    height: 38.7vw;
  }
}
body#column main .main-title h1 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 35px;
  position: relative;
}
@media screen and (max-width: 767px) {
  body#column main .main-title h1 {
    row-gap: 5.3vw;
  }
}
body#column main .main-title h1:before {
  content: "";
  display: block;
  width: 105px;
  aspect-ratio: 105/18;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 2rem;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  body#column main .main-title h1:before {
    width: 13.3vw;
    top: 2.7vw;
  }
}
body#column main .main-title h1 > span:nth-child(1) {
  font-size: 45px;
}
@media screen and (max-width: 767px) {
  body#column main .main-title h1 > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
body#column main .main-title h1 > span:nth-child(1) {
  font-weight: 500;
}
body#column main .main-title h1 > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#column main .main-title h1 > span:nth-child(2) {
    font-size: 3.7vw;
  }
}
body#column main .main-title h1 > span:nth-child(2) {
  font-family: "Barlow", serif;
}
body#column #column_detail {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: #fff;
  padding-block: var(--section-padding-small);
  padding-inline: 2rem;
}
body#column #column_detail h2 {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#column #column_detail h2 {
    font-size: 5.3vw;
  }
}
body#column #column_detail h2 {
  font-weight: bold;
}
body#column #column_detail time {
  display: block;
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
  margin-block: 0.5rem;
  padding-top: 0.2rem;
  width: 100%;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#column #column_detail time {
    font-size: 3.7vw;
  }
}
body#column #column_detail time {
  color: #a5a5a5;
  border-top: solid 1px #a5a5a5;
}
body#column #column_detail .eyecatch {
  display: block;
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
  margin-bottom: 1rem;
}
body#column #column_detail #post-content {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
  margin-bottom: var(--section-padding-small);
}
body#column #column_detail #post-content h2 {
  font-size: 26px;
}
@media screen and (max-width: 767px) {
  body#column #column_detail #post-content h2 {
    font-size: 6vw;
  }
}
body#column #column_detail #post-content h2 {
  font-weight: bold;
  border-bottom: solid 3px #787878;
  padding-bottom: 0.75em;
  margin-bottom: 1.5em;
}
body#column #column_detail #post-content h2:not(:first-of-type) {
  margin-top: 4rem;
}
body#column #column_detail #post-content h3 {
  font-size: 1.25rem;
  font-weight: bold;
  background-color: #f5f7f8;
  padding: 1em;
  margin-bottom: 2rem;
}
body#column #column_detail #post-content > p:not(:last-child) {
  margin-bottom: 1em;
}
body#column #column_detail #post-content b {
  font-weight: bold;
}
body#column #column_detail #post-content strong {
  font-weight: 900;
}
body#column #column_detail #post-content ul,
body#column #column_detail #post-content ol {
  margin-bottom: 2em;
  padding-left: 1.5em;
  line-height: 1.4;
}
body#column #column_detail #post-content ul li,
body#column #column_detail #post-content ol li {
  position: relative;
}
body#column #column_detail #post-content ul {
  list-style: disc;
}
body#column #column_detail #post-content ol {
  list-style: decimal;
}
body#column #column_detail #post-content > table {
  width: 100%;
  margin-bottom: 2rem;
}
body#column #column_detail #post-content > table tr th,
body#column #column_detail #post-content > table tr td {
  border: solid 1px #a1a1a1;
  padding: 0.5rem 1rem;
}
body#column #column_detail #post-content > table tr th {
  background-color: #e0e0e0;
}
body#column #column_detail #post-content > table tr td {
  background-color: #fff;
}
body#age20-30women main #amazing,
body#age40-50women main #amazing,
body#age60-women main #amazing,
body#age20-30men main #amazing,
body#age40-50men main #amazing,
body#age60-men main #amazing {
  padding-top: var(--section-padding);
}
body#age20-30women main #amazing h2,
body#age40-50women main #amazing h2,
body#age60-women main #amazing h2,
body#age20-30men main #amazing h2,
body#age40-50men main #amazing h2,
body#age60-men main #amazing h2 {
  max-width: 848px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 1rem;
}
body#age20-30women main #amazing h2:before,
body#age20-30women main #amazing h2:after,
body#age40-50women main #amazing h2:before,
body#age40-50women main #amazing h2:after,
body#age60-women main #amazing h2:before,
body#age60-women main #amazing h2:after,
body#age20-30men main #amazing h2:before,
body#age20-30men main #amazing h2:after,
body#age40-50men main #amazing h2:before,
body#age40-50men main #amazing h2:after,
body#age60-men main #amazing h2:before,
body#age60-men main #amazing h2:after {
  content: "";
  display: block;
  width: 1px;
  height: 120px;
}
body#age20-30women main #amazing h2:before,
body#age40-50women main #amazing h2:before,
body#age60-women main #amazing h2:before,
body#age20-30men main #amazing h2:before,
body#age40-50men main #amazing h2:before,
body#age60-men main #amazing h2:before {
  border-right: solid 2px #ccc;
  transform-origin: top left;
  rotate: -20deg;
}
body#age20-30women main #amazing h2:after,
body#age40-50women main #amazing h2:after,
body#age60-women main #amazing h2:after,
body#age20-30men main #amazing h2:after,
body#age40-50men main #amazing h2:after,
body#age60-men main #amazing h2:after {
  border-left: solid 2px #ccc;
  transform-origin: top right;
  rotate: 20deg;
}
body#age20-30women main #amazing h2 > span,
body#age40-50women main #amazing h2 > span,
body#age60-women main #amazing h2 > span,
body#age20-30men main #amazing h2 > span,
body#age40-50men main #amazing h2 > span,
body#age60-men main #amazing h2 > span {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing h2 > span,
  body#age40-50women main #amazing h2 > span,
  body#age60-women main #amazing h2 > span,
  body#age20-30men main #amazing h2 > span,
  body#age40-50men main #amazing h2 > span,
  body#age60-men main #amazing h2 > span {
    font-size: 4.3vw;
  }
}
body#age20-30women main #amazing h2 > span,
body#age40-50women main #amazing h2 > span,
body#age60-women main #amazing h2 > span,
body#age20-30men main #amazing h2 > span,
body#age40-50men main #amazing h2 > span,
body#age60-men main #amazing h2 > span {
  font-weight: 500;
  text-align: center;
}
body#age20-30women main #amazing h2 > span b,
body#age40-50women main #amazing h2 > span b,
body#age60-women main #amazing h2 > span b,
body#age20-30men main #amazing h2 > span b,
body#age40-50men main #amazing h2 > span b,
body#age60-men main #amazing h2 > span b {
  color: #e1a1a1;
  font-size: 1.2em;
  font-weight: 600;
}
body#age20-30women main #amazing ul,
body#age40-50women main #amazing ul,
body#age60-women main #amazing ul,
body#age20-30men main #amazing ul,
body#age40-50men main #amazing ul,
body#age60-men main #amazing ul {
  --clip-height: 97px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul,
  body#age40-50women main #amazing ul,
  body#age60-women main #amazing ul,
  body#age20-30men main #amazing ul,
  body#age40-50men main #amazing ul,
  body#age60-men main #amazing ul {
    --clip-height: 3rem;
  }
}
body#age20-30women main #amazing ul,
body#age40-50women main #amazing ul,
body#age60-women main #amazing ul,
body#age20-30men main #amazing ul,
body#age40-50men main #amazing ul,
body#age60-men main #amazing ul {
  padding-block: var(--section-padding-small)
    calc(var(--section-padding-small) + var(--clip-height));
  background-color: #f4edeb;
  clip-path: polygon(
    100% 0,
    0 0,
    0 calc(100% - var(--clip-height)),
    50% 100%,
    100% calc(100% - var(--clip-height))
  );
}
body#age20-30women main #amazing ul li,
body#age40-50women main #amazing ul li,
body#age60-women main #amazing ul li,
body#age20-30men main #amazing ul li,
body#age40-50men main #amazing ul li,
body#age60-men main #amazing ul li {
  --number-size: 100px;
  --number-color: #e3a28f;
}
body#age20-30women main #amazing ul li:nth-child(even),
body#age40-50women main #amazing ul li:nth-child(even),
body#age60-women main #amazing ul li:nth-child(even),
body#age20-30men main #amazing ul li:nth-child(even),
body#age40-50men main #amazing ul li:nth-child(even),
body#age60-men main #amazing ul li:nth-child(even) {
  --number-color: #bd99c5;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul li,
  body#age40-50women main #amazing ul li,
  body#age60-women main #amazing ul li,
  body#age20-30men main #amazing ul li,
  body#age40-50men main #amazing ul li,
  body#age60-men main #amazing ul li {
    --number-size: 4.5rem;
  }
}
body#age20-30women main #amazing ul li,
body#age40-50women main #amazing ul li,
body#age60-women main #amazing ul li,
body#age20-30men main #amazing ul li,
body#age40-50men main #amazing ul li,
body#age60-men main #amazing ul li {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  min-height: 406px;
  background-color: #fff;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  position: relative;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul li,
  body#age40-50women main #amazing ul li,
  body#age60-women main #amazing ul li,
  body#age20-30men main #amazing ul li,
  body#age40-50men main #amazing ul li,
  body#age60-men main #amazing ul li {
    flex-direction: column;
    min-height: auto;
  }
}
body#age20-30women main #amazing ul li:not(:last-child),
body#age40-50women main #amazing ul li:not(:last-child),
body#age60-women main #amazing ul li:not(:last-child),
body#age20-30men main #amazing ul li:not(:last-child),
body#age40-50men main #amazing ul li:not(:last-child),
body#age60-men main #amazing ul li:not(:last-child) {
  margin-bottom: 6rem;
}
body#age20-30women main #amazing ul li > .number,
body#age40-50women main #amazing ul li > .number,
body#age60-women main #amazing ul li > .number,
body#age20-30men main #amazing ul li > .number,
body#age40-50men main #amazing ul li > .number,
body#age60-men main #amazing ul li > .number {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-color: var(--number-color);
  width: var(--number-size);
  height: var(--number-size);
  aspect-ratio: 1/1;
  border-radius: 100%;
  position: absolute;
  top: calc(0px - var(--number-size) / 2);
  left: calc(0px - var(--number-size) / 2);
  z-index: 10;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul li > .number,
  body#age40-50women main #amazing ul li > .number,
  body#age60-women main #amazing ul li > .number,
  body#age20-30men main #amazing ul li > .number,
  body#age40-50men main #amazing ul li > .number,
  body#age60-men main #amazing ul li > .number {
    left: calc(0px - 5.35vw);
  }
}
body#age20-30women main #amazing ul li > .number > span,
body#age40-50women main #amazing ul li > .number > span,
body#age60-women main #amazing ul li > .number > span,
body#age20-30men main #amazing ul li > .number > span,
body#age40-50men main #amazing ul li > .number > span,
body#age60-men main #amazing ul li > .number > span {
  font-family: "Barlow", serif;
  text-align: center;
  color: #fff;
  line-height: 1;
}
body#age20-30women main #amazing ul li > .number > span:nth-child(1),
body#age40-50women main #amazing ul li > .number > span:nth-child(1),
body#age60-women main #amazing ul li > .number > span:nth-child(1),
body#age20-30men main #amazing ul li > .number > span:nth-child(1),
body#age40-50men main #amazing ul li > .number > span:nth-child(1),
body#age60-men main #amazing ul li > .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul li > .number > span:nth-child(1),
  body#age40-50women main #amazing ul li > .number > span:nth-child(1),
  body#age60-women main #amazing ul li > .number > span:nth-child(1),
  body#age20-30men main #amazing ul li > .number > span:nth-child(1),
  body#age40-50men main #amazing ul li > .number > span:nth-child(1),
  body#age60-men main #amazing ul li > .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
body#age20-30women main #amazing ul li > .number > span:nth-child(2),
body#age40-50women main #amazing ul li > .number > span:nth-child(2),
body#age60-women main #amazing ul li > .number > span:nth-child(2),
body#age20-30men main #amazing ul li > .number > span:nth-child(2),
body#age40-50men main #amazing ul li > .number > span:nth-child(2),
body#age60-men main #amazing ul li > .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul li > .number > span:nth-child(2),
  body#age40-50women main #amazing ul li > .number > span:nth-child(2),
  body#age60-women main #amazing ul li > .number > span:nth-child(2),
  body#age20-30men main #amazing ul li > .number > span:nth-child(2),
  body#age40-50men main #amazing ul li > .number > span:nth-child(2),
  body#age60-men main #amazing ul li > .number > span:nth-child(2) {
    font-size: 4.8vw;
  }
}
body#age20-30women main #amazing ul li .message-area,
body#age40-50women main #amazing ul li .message-area,
body#age60-women main #amazing ul li .message-area,
body#age20-30men main #amazing ul li .message-area,
body#age40-50men main #amazing ul li .message-area,
body#age60-men main #amazing ul li .message-area {
  width: 50%;
  padding: 2rem 3rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul li .message-area,
  body#age40-50women main #amazing ul li .message-area,
  body#age60-women main #amazing ul li .message-area,
  body#age20-30men main #amazing ul li .message-area,
  body#age40-50men main #amazing ul li .message-area,
  body#age60-men main #amazing ul li .message-area {
    order: 2;
    width: 100%;
    padding: 1rem 1.5rem 2rem;
  }
}
body#age20-30women main #amazing ul li .message-area h3,
body#age40-50women main #amazing ul li .message-area h3,
body#age60-women main #amazing ul li .message-area h3,
body#age20-30men main #amazing ul li .message-area h3,
body#age40-50men main #amazing ul li .message-area h3,
body#age60-men main #amazing ul li .message-area h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul li .message-area h3,
  body#age40-50women main #amazing ul li .message-area h3,
  body#age60-women main #amazing ul li .message-area h3,
  body#age20-30men main #amazing ul li .message-area h3,
  body#age40-50men main #amazing ul li .message-area h3,
  body#age60-men main #amazing ul li .message-area h3 {
    font-size: 5.3vw;
  }
}
body#age20-30women main #amazing ul li .message-area h3,
body#age40-50women main #amazing ul li .message-area h3,
body#age60-women main #amazing ul li .message-area h3,
body#age20-30men main #amazing ul li .message-area h3,
body#age40-50men main #amazing ul li .message-area h3,
body#age60-men main #amazing ul li .message-area h3 {
  line-height: 1.7;
  font-weight: 500;
  margin-bottom: 1em;
}
body#age20-30women main #amazing ul li .message-area p,
body#age40-50women main #amazing ul li .message-area p,
body#age60-women main #amazing ul li .message-area p,
body#age20-30men main #amazing ul li .message-area p,
body#age40-50men main #amazing ul li .message-area p,
body#age60-men main #amazing ul li .message-area p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul li .message-area p,
  body#age40-50women main #amazing ul li .message-area p,
  body#age60-women main #amazing ul li .message-area p,
  body#age20-30men main #amazing ul li .message-area p,
  body#age40-50men main #amazing ul li .message-area p,
  body#age60-men main #amazing ul li .message-area p {
    font-size: 3.7vw;
  }
}
body#age20-30women main #amazing ul li .message-area:after,
body#age40-50women main #amazing ul li .message-area:after,
body#age60-women main #amazing ul li .message-area:after,
body#age20-30men main #amazing ul li .message-area:after,
body#age40-50men main #amazing ul li .message-area:after,
body#age60-men main #amazing ul li .message-area:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/three_dots.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  inset: auto 0 1rem;
  margin: 0 auto;
}
body#age20-30women main #amazing ul li .image-area,
body#age40-50women main #amazing ul li .image-area,
body#age60-women main #amazing ul li .image-area,
body#age20-30men main #amazing ul li .image-area,
body#age40-50men main #amazing ul li .image-area,
body#age60-men main #amazing ul li .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul li .image-area,
  body#age40-50women main #amazing ul li .image-area,
  body#age60-women main #amazing ul li .image-area,
  body#age20-30men main #amazing ul li .image-area,
  body#age40-50men main #amazing ul li .image-area,
  body#age60-men main #amazing ul li .image-area {
    order: 1;
    width: 100%;
    height: auto;
  }
}
body#age20-30women main #amazing ul li .image-area img,
body#age40-50women main #amazing ul li .image-area img,
body#age60-women main #amazing ul li .image-area img,
body#age20-30men main #amazing ul li .image-area img,
body#age40-50men main #amazing ul li .image-area img,
body#age60-men main #amazing ul li .image-area img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing ul li .image-area img,
  body#age40-50women main #amazing ul li .image-area img,
  body#age60-women main #amazing ul li .image-area img,
  body#age20-30men main #amazing ul li .image-area img,
  body#age40-50men main #amazing ul li .image-area img,
  body#age60-men main #amazing ul li .image-area img {
    height: auto;
    aspect-ratio: 320/200;
  }
}
body#age20-30women main #amazing .cta-area,
body#age40-50women main #amazing .cta-area,
body#age60-women main #amazing .cta-area,
body#age20-30men main #amazing .cta-area,
body#age40-50men main #amazing .cta-area,
body#age60-men main #amazing .cta-area {
  padding-block: var(--section-padding-small);
}
body#age20-30women main #amazing .cta-area h3,
body#age40-50women main #amazing .cta-area h3,
body#age60-women main #amazing .cta-area h3,
body#age20-30men main #amazing .cta-area h3,
body#age40-50men main #amazing .cta-area h3,
body#age60-men main #amazing .cta-area h3 {
  text-align: center;
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing .cta-area h3,
  body#age40-50women main #amazing .cta-area h3,
  body#age60-women main #amazing .cta-area h3,
  body#age20-30men main #amazing .cta-area h3,
  body#age40-50men main #amazing .cta-area h3,
  body#age60-men main #amazing .cta-area h3 {
    font-size: 5.3vw;
  }
}
body#age20-30women main #amazing .cta-area h3,
body#age40-50women main #amazing .cta-area h3,
body#age60-women main #amazing .cta-area h3,
body#age20-30men main #amazing .cta-area h3,
body#age40-50men main #amazing .cta-area h3,
body#age60-men main #amazing .cta-area h3 {
  color: #e1a1a1;
  font-weight: 600;
  margin-bottom: 1.25em;
}
body#age20-30women main #amazing .cta-area a,
body#age40-50women main #amazing .cta-area a,
body#age60-women main #amazing .cta-area a,
body#age20-30men main #amazing .cta-area a,
body#age40-50men main #amazing .cta-area a,
body#age60-men main #amazing .cta-area a {
  --button-back: linear-gradient(to right, #ffb6a1, #feabab);
  --subtext-font-color: #efa191;
  --text-shadow: 0 0 5px rgba(0, 0, 0, 0);
}
body#age20-30women main #amazing .cta-area a.line,
body#age40-50women main #amazing .cta-area a.line,
body#age60-women main #amazing .cta-area a.line,
body#age20-30men main #amazing .cta-area a.line,
body#age40-50men main #amazing .cta-area a.line,
body#age60-men main #amazing .cta-area a.line {
  --button-back: linear-gradient(to right, #67e8bd, #7dec96);
  --subtext-font-color: #82ce99;
  --text-shadow: 0 0 5px rgba(0, 0, 0, 0);
}
body#age20-30women main #amazing .cta-area a.Advance-membership-reservation,
body#age40-50women main #amazing .cta-area a.Advance-membership-reservation,
body#age60-women main #amazing .cta-area a.Advance-membership-reservation,
body#age20-30men main #amazing .cta-area a.Advance-membership-reservation,
body#age40-50men main #amazing .cta-area a.Advance-membership-reservation,
body#age60-men main #amazing .cta-area a.Advance-membership-reservation {
  --button-back: linear-gradient(to right, #ffae97, #ffa4a4);
  --subtext-font-color: #eb836d;
  --text-shadow: 0 0 5px #e48b7f;
}
body#age20-30women main #amazing .cta-area a,
body#age40-50women main #amazing .cta-area a,
body#age60-women main #amazing .cta-area a,
body#age20-30men main #amazing .cta-area a,
body#age40-50men main #amazing .cta-area a,
body#age60-men main #amazing .cta-area a {
  max-width: 600px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  border-radius: 1000px;
  padding-top: 10px;
  background: var(--button-back);
  height: 100px;
  position: relative;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
  transition: filter 0.5s;
}
body#age20-30women main #amazing .cta-area a:after,
body#age40-50women main #amazing .cta-area a:after,
body#age60-women main #amazing .cta-area a:after,
body#age20-30men main #amazing .cta-area a:after,
body#age40-50men main #amazing .cta-area a:after,
body#age60-men main #amazing .cta-area a:after {
  content: "";
  display: block;
  font-size: 8px;
  width: 0.8em;
  height: 1em;
  background-color: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 3em;
  margin: auto 0;
  transition: 0.5s;
  filter: drop-shadow(var(--text-shadow));
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing .cta-area a:after,
  body#age40-50women main #amazing .cta-area a:after,
  body#age60-women main #amazing .cta-area a:after,
  body#age20-30men main #amazing .cta-area a:after,
  body#age40-50men main #amazing .cta-area a:after,
  body#age60-men main #amazing .cta-area a:after {
    font-size: 1.6vw;
    top: 4.5vw;
    right: 1em;
  }
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing .cta-area a,
  body#age40-50women main #amazing .cta-area a,
  body#age60-women main #amazing .cta-area a,
  body#age20-30men main #amazing .cta-area a,
  body#age40-50men main #amazing .cta-area a,
  body#age60-men main #amazing .cta-area a {
    height: 3rem;
  }
}
body#age20-30women main #amazing .cta-area a:hover,
body#age40-50women main #amazing .cta-area a:hover,
body#age60-women main #amazing .cta-area a:hover,
body#age20-30men main #amazing .cta-area a:hover,
body#age40-50men main #amazing .cta-area a:hover,
body#age60-men main #amazing .cta-area a:hover {
  filter: brightness(1.2);
}
body#age20-30women main #amazing .cta-area a:hover:after,
body#age40-50women main #amazing .cta-area a:hover:after,
body#age60-women main #amazing .cta-area a:hover:after,
body#age20-30men main #amazing .cta-area a:hover:after,
body#age40-50men main #amazing .cta-area a:hover:after,
body#age60-men main #amazing .cta-area a:hover:after {
  translate: 1em 0;
}
body#age20-30women main #amazing .cta-area a > span,
body#age40-50women main #amazing .cta-area a > span,
body#age60-women main #amazing .cta-area a > span,
body#age20-30men main #amazing .cta-area a > span,
body#age40-50men main #amazing .cta-area a > span,
body#age60-men main #amazing .cta-area a > span {
  font-weight: 600;
}
body#age20-30women main #amazing .cta-area a > span.pc,
body#age40-50women main #amazing .cta-area a > span.pc,
body#age60-women main #amazing .cta-area a > span.pc,
body#age20-30men main #amazing .cta-area a > span.pc,
body#age40-50men main #amazing .cta-area a > span.pc,
body#age60-men main #amazing .cta-area a > span.pc {
  display: flex;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing .cta-area a > span.pc,
  body#age40-50women main #amazing .cta-area a > span.pc,
  body#age60-women main #amazing .cta-area a > span.pc,
  body#age20-30men main #amazing .cta-area a > span.pc,
  body#age40-50men main #amazing .cta-area a > span.pc,
  body#age60-men main #amazing .cta-area a > span.pc {
    display: none;
  }
}
body#age20-30women main #amazing .cta-area a > span.sp,
body#age40-50women main #amazing .cta-area a > span.sp,
body#age60-women main #amazing .cta-area a > span.sp,
body#age20-30men main #amazing .cta-area a > span.sp,
body#age40-50men main #amazing .cta-area a > span.sp,
body#age60-men main #amazing .cta-area a > span.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing .cta-area a > span.sp,
  body#age40-50women main #amazing .cta-area a > span.sp,
  body#age60-women main #amazing .cta-area a > span.sp,
  body#age20-30men main #amazing .cta-area a > span.sp,
  body#age40-50men main #amazing .cta-area a > span.sp,
  body#age60-men main #amazing .cta-area a > span.sp {
    display: flex;
  }
}
body#age20-30women main #amazing .cta-area a > span.subtext,
body#age40-50women main #amazing .cta-area a > span.subtext,
body#age60-women main #amazing .cta-area a > span.subtext,
body#age20-30men main #amazing .cta-area a > span.subtext,
body#age40-50men main #amazing .cta-area a > span.subtext,
body#age60-men main #amazing .cta-area a > span.subtext {
  max-width: 400px;
  width: calc(100% - 2rem);
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #eb836d;
  padding-block: 0.5rem;
  background-color: #fff;
  border-radius: 1000px;
  border: solid 1px #e5e5e5;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing .cta-area a > span.subtext,
  body#age40-50women main #amazing .cta-area a > span.subtext,
  body#age60-women main #amazing .cta-area a > span.subtext,
  body#age20-30men main #amazing .cta-area a > span.subtext,
  body#age40-50men main #amazing .cta-area a > span.subtext,
  body#age60-men main #amazing .cta-area a > span.subtext {
    font-size: 3.7vw;
  }
}
body#age20-30women main #amazing .cta-area a > span.subtext,
body#age40-50women main #amazing .cta-area a > span.subtext,
body#age60-women main #amazing .cta-area a > span.subtext,
body#age20-30men main #amazing .cta-area a > span.subtext,
body#age40-50men main #amazing .cta-area a > span.subtext,
body#age60-men main #amazing .cta-area a > span.subtext {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  translate: 0 -50%;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing .cta-area a > span.subtext,
  body#age40-50women main #amazing .cta-area a > span.subtext,
  body#age60-women main #amazing .cta-area a > span.subtext,
  body#age20-30men main #amazing .cta-area a > span.subtext,
  body#age40-50men main #amazing .cta-area a > span.subtext,
  body#age60-men main #amazing .cta-area a > span.subtext {
    max-width: none;
    width: -moz-max-content;
    width: max-content;
    padding: 0.2rem 1em;
  }
}
body#age20-30women main #amazing .cta-area a > span.maintext,
body#age40-50women main #amazing .cta-area a > span.maintext,
body#age60-women main #amazing .cta-area a > span.maintext,
body#age20-30men main #amazing .cta-area a > span.maintext,
body#age40-50men main #amazing .cta-area a > span.maintext,
body#age60-men main #amazing .cta-area a > span.maintext {
  text-align: center;
  color: #fff;
  font-size: 28px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #amazing .cta-area a > span.maintext,
  body#age40-50women main #amazing .cta-area a > span.maintext,
  body#age60-women main #amazing .cta-area a > span.maintext,
  body#age20-30men main #amazing .cta-area a > span.maintext,
  body#age40-50men main #amazing .cta-area a > span.maintext,
  body#age60-men main #amazing .cta-area a > span.maintext {
    font-size: 4.3vw;
  }
}
body#age20-30women main #amazing .cta-area a > span.maintext,
body#age40-50women main #amazing .cta-area a > span.maintext,
body#age60-women main #amazing .cta-area a > span.maintext,
body#age20-30men main #amazing .cta-area a > span.maintext,
body#age40-50men main #amazing .cta-area a > span.maintext,
body#age60-men main #amazing .cta-area a > span.maintext {
  text-shadow: var(--text-shadow);
}
body#age20-30women main #flow,
body#age40-50women main #flow,
body#age60-women main #flow,
body#age20-30men main #flow,
body#age40-50men main #flow,
body#age60-men main #flow {
  padding-bottom: var(--section-padding);
}
body#age20-30women main #flow > ul,
body#age40-50women main #flow > ul,
body#age60-women main #flow > ul,
body#age20-30men main #flow > ul,
body#age40-50men main #flow > ul,
body#age60-men main #flow > ul {
  margin-inline: auto;
}
body#age20-30women main #flow > ul > li,
body#age40-50women main #flow > ul > li,
body#age60-women main #flow > ul > li,
body#age20-30men main #flow > ul > li,
body#age40-50men main #flow > ul > li,
body#age60-men main #flow > ul > li {
  --number-size: 100px;
  --number-color: #e3a28f;
}
body#age20-30women main #flow > ul > li:nth-child(2),
body#age20-30women main #flow > ul > li:nth-child(4),
body#age40-50women main #flow > ul > li:nth-child(2),
body#age40-50women main #flow > ul > li:nth-child(4),
body#age60-women main #flow > ul > li:nth-child(2),
body#age60-women main #flow > ul > li:nth-child(4),
body#age20-30men main #flow > ul > li:nth-child(2),
body#age20-30men main #flow > ul > li:nth-child(4),
body#age40-50men main #flow > ul > li:nth-child(2),
body#age40-50men main #flow > ul > li:nth-child(4),
body#age60-men main #flow > ul > li:nth-child(2),
body#age60-men main #flow > ul > li:nth-child(4) {
  --number-color: #e1a1a1;
}
body#age20-30women main #flow > ul > li:nth-child(3),
body#age40-50women main #flow > ul > li:nth-child(3),
body#age60-women main #flow > ul > li:nth-child(3),
body#age20-30men main #flow > ul > li:nth-child(3),
body#age40-50men main #flow > ul > li:nth-child(3),
body#age60-men main #flow > ul > li:nth-child(3) {
  --number-color: #bd99c5;
}
body#age20-30women main #flow > ul > li,
body#age40-50women main #flow > ul > li,
body#age60-women main #flow > ul > li,
body#age20-30men main #flow > ul > li,
body#age40-50men main #flow > ul > li,
body#age60-men main #flow > ul > li {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  margin-top: calc(var(--number-size) / 2);
  position: relative;
}
body#age20-30women main #flow > ul > li:after,
body#age40-50women main #flow > ul > li:after,
body#age60-women main #flow > ul > li:after,
body#age20-30men main #flow > ul > li:after,
body#age40-50men main #flow > ul > li:after,
body#age60-men main #flow > ul > li:after {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background-image: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
}
body#age20-30women main #flow > ul > li > .number,
body#age40-50women main #flow > ul > li > .number,
body#age60-women main #flow > ul > li > .number,
body#age20-30men main #flow > ul > li > .number,
body#age40-50men main #flow > ul > li > .number,
body#age60-men main #flow > ul > li > .number {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--number-color);
  width: var(--number-size);
  height: var(--number-size);
  aspect-ratio: 1/1;
  border-radius: 100%;
  position: absolute;
  top: calc(0px - var(--number-size) / 2);
  left: 0;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li > .number,
  body#age40-50women main #flow > ul > li > .number,
  body#age60-women main #flow > ul > li > .number,
  body#age20-30men main #flow > ul > li > .number,
  body#age40-50men main #flow > ul > li > .number,
  body#age60-men main #flow > ul > li > .number {
    left: calc(0px - 5.35vw);
  }
}
body#age20-30women main #flow > ul > li > .number > span,
body#age40-50women main #flow > ul > li > .number > span,
body#age60-women main #flow > ul > li > .number > span,
body#age20-30men main #flow > ul > li > .number > span,
body#age40-50men main #flow > ul > li > .number > span,
body#age60-men main #flow > ul > li > .number > span {
  font-family: "Barlow", serif;
  text-align: center;
  color: #fff;
  line-height: 1;
}
body#age20-30women main #flow > ul > li > .number > span:nth-child(1),
body#age40-50women main #flow > ul > li > .number > span:nth-child(1),
body#age60-women main #flow > ul > li > .number > span:nth-child(1),
body#age20-30men main #flow > ul > li > .number > span:nth-child(1),
body#age40-50men main #flow > ul > li > .number > span:nth-child(1),
body#age60-men main #flow > ul > li > .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li > .number > span:nth-child(1),
  body#age40-50women main #flow > ul > li > .number > span:nth-child(1),
  body#age60-women main #flow > ul > li > .number > span:nth-child(1),
  body#age20-30men main #flow > ul > li > .number > span:nth-child(1),
  body#age40-50men main #flow > ul > li > .number > span:nth-child(1),
  body#age60-men main #flow > ul > li > .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
body#age20-30women main #flow > ul > li > .number > span:nth-child(2),
body#age40-50women main #flow > ul > li > .number > span:nth-child(2),
body#age60-women main #flow > ul > li > .number > span:nth-child(2),
body#age20-30men main #flow > ul > li > .number > span:nth-child(2),
body#age40-50men main #flow > ul > li > .number > span:nth-child(2),
body#age60-men main #flow > ul > li > .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li > .number > span:nth-child(2),
  body#age40-50women main #flow > ul > li > .number > span:nth-child(2),
  body#age60-women main #flow > ul > li > .number > span:nth-child(2),
  body#age20-30men main #flow > ul > li > .number > span:nth-child(2),
  body#age40-50men main #flow > ul > li > .number > span:nth-child(2),
  body#age60-men main #flow > ul > li > .number > span:nth-child(2) {
    font-size: 4.8vw;
  }
}
body#age20-30women main #flow > ul > li > .number:after,
body#age40-50women main #flow > ul > li > .number:after,
body#age60-women main #flow > ul > li > .number:after,
body#age20-30men main #flow > ul > li > .number:after,
body#age40-50men main #flow > ul > li > .number:after,
body#age60-men main #flow > ul > li > .number:after {
  content: "";
  display: block;
  width: 3px;
  height: 180px;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/vertical-line_dotted.svg);
  background-size: 100%;
  background-position: top center;
  position: absolute;
  inset: calc(100% + 1rem) 0 auto;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li > .number:after,
  body#age40-50women main #flow > ul > li > .number:after,
  body#age60-women main #flow > ul > li > .number:after,
  body#age20-30men main #flow > ul > li > .number:after,
  body#age40-50men main #flow > ul > li > .number:after,
  body#age60-men main #flow > ul > li > .number:after {
    display: none;
  }
}
body#age20-30women main #flow > ul > li .image-area,
body#age40-50women main #flow > ul > li .image-area,
body#age60-women main #flow > ul > li .image-area,
body#age20-30men main #flow > ul > li .image-area,
body#age40-50men main #flow > ul > li .image-area,
body#age60-men main #flow > ul > li .image-area {
  width: 50%;
  padding-left: calc(var(--number-size) + 1rem);
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li .image-area,
  body#age40-50women main #flow > ul > li .image-area,
  body#age60-women main #flow > ul > li .image-area,
  body#age20-30men main #flow > ul > li .image-area,
  body#age40-50men main #flow > ul > li .image-area,
  body#age60-men main #flow > ul > li .image-area {
    width: 100%;
    padding-left: 0;
  }
}
body#age20-30women main #flow > ul > li .image-area img,
body#age40-50women main #flow > ul > li .image-area img,
body#age60-women main #flow > ul > li .image-area img,
body#age20-30men main #flow > ul > li .image-area img,
body#age40-50men main #flow > ul > li .image-area img,
body#age60-men main #flow > ul > li .image-area img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li .image-area img,
  body#age40-50women main #flow > ul > li .image-area img,
  body#age60-women main #flow > ul > li .image-area img,
  body#age20-30men main #flow > ul > li .image-area img,
  body#age40-50men main #flow > ul > li .image-area img,
  body#age60-men main #flow > ul > li .image-area img {
    height: auto;
    aspect-ratio: 320/200;
  }
}
body#age20-30women main #flow > ul > li .message-area,
body#age40-50women main #flow > ul > li .message-area,
body#age60-women main #flow > ul > li .message-area,
body#age20-30men main #flow > ul > li .message-area,
body#age40-50men main #flow > ul > li .message-area,
body#age60-men main #flow > ul > li .message-area {
  width: 50%;
  padding: 2rem;
  background-color: #fff;
}
body#age20-30women main #flow > ul > li .message-area h3,
body#age40-50women main #flow > ul > li .message-area h3,
body#age60-women main #flow > ul > li .message-area h3,
body#age20-30men main #flow > ul > li .message-area h3,
body#age40-50men main #flow > ul > li .message-area h3,
body#age60-men main #flow > ul > li .message-area h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li .message-area h3,
  body#age40-50women main #flow > ul > li .message-area h3,
  body#age60-women main #flow > ul > li .message-area h3,
  body#age20-30men main #flow > ul > li .message-area h3,
  body#age40-50men main #flow > ul > li .message-area h3,
  body#age60-men main #flow > ul > li .message-area h3 {
    font-size: 5.3vw;
  }
}
body#age20-30women main #flow > ul > li .message-area h3,
body#age40-50women main #flow > ul > li .message-area h3,
body#age60-women main #flow > ul > li .message-area h3,
body#age20-30men main #flow > ul > li .message-area h3,
body#age40-50men main #flow > ul > li .message-area h3,
body#age60-men main #flow > ul > li .message-area h3 {
  font-weight: 500;
  margin-bottom: 1em;
}
body#age20-30women main #flow > ul > li .message-area p,
body#age40-50women main #flow > ul > li .message-area p,
body#age60-women main #flow > ul > li .message-area p,
body#age20-30men main #flow > ul > li .message-area p,
body#age40-50men main #flow > ul > li .message-area p,
body#age60-men main #flow > ul > li .message-area p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li .message-area p,
  body#age40-50women main #flow > ul > li .message-area p,
  body#age60-women main #flow > ul > li .message-area p,
  body#age20-30men main #flow > ul > li .message-area p,
  body#age40-50men main #flow > ul > li .message-area p,
  body#age60-men main #flow > ul > li .message-area p {
    font-size: 3.7vw;
  }
}
body#age20-30women main #flow > ul > li .message-area ul,
body#age40-50women main #flow > ul > li .message-area ul,
body#age60-women main #flow > ul > li .message-area ul,
body#age20-30men main #flow > ul > li .message-area ul,
body#age40-50men main #flow > ul > li .message-area ul,
body#age60-men main #flow > ul > li .message-area ul {
  border: solid 2px #ffc48e;
  border-radius: 4px;
  padding: 0.75rem 1.5rem;
  padding-left: 3rem;
  margin-top: 0.5rem;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li .message-area ul,
  body#age40-50women main #flow > ul > li .message-area ul,
  body#age60-women main #flow > ul > li .message-area ul,
  body#age20-30men main #flow > ul > li .message-area ul,
  body#age40-50men main #flow > ul > li .message-area ul,
  body#age60-men main #flow > ul > li .message-area ul {
    font-size: 3.7vw;
  }
}
body#age20-30women main #flow > ul > li .message-area ul,
body#age40-50women main #flow > ul > li .message-area ul,
body#age60-women main #flow > ul > li .message-area ul,
body#age20-30men main #flow > ul > li .message-area ul,
body#age40-50men main #flow > ul > li .message-area ul,
body#age60-men main #flow > ul > li .message-area ul {
  line-height: 1.8;
}
body#age20-30women main #flow > ul > li .message-area ul li,
body#age40-50women main #flow > ul > li .message-area ul li,
body#age60-women main #flow > ul > li .message-area ul li,
body#age20-30men main #flow > ul > li .message-area ul li,
body#age40-50men main #flow > ul > li .message-area ul li,
body#age60-men main #flow > ul > li .message-area ul li {
  list-style: disc;
}
body#age20-30women main #flow > ul > li .message-area .line-link,
body#age40-50women main #flow > ul > li .message-area .line-link,
body#age60-women main #flow > ul > li .message-area .line-link,
body#age20-30men main #flow > ul > li .message-area .line-link,
body#age40-50men main #flow > ul > li .message-area .line-link,
body#age60-men main #flow > ul > li .message-area .line-link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 336px;
  width: 100%;
  margin-inline: auto;
  height: 70px;
  background-image: linear-gradient(to right, #44e1ac, #75e58e);
  border-radius: 1000px;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li .message-area .line-link,
  body#age40-50women main #flow > ul > li .message-area .line-link,
  body#age60-women main #flow > ul > li .message-area .line-link,
  body#age20-30men main #flow > ul > li .message-area .line-link,
  body#age40-50men main #flow > ul > li .message-area .line-link,
  body#age60-men main #flow > ul > li .message-area .line-link {
    font-size: 4.3vw;
  }
}
body#age20-30women main #flow > ul > li .message-area .line-link,
body#age40-50women main #flow > ul > li .message-area .line-link,
body#age60-women main #flow > ul > li .message-area .line-link,
body#age20-30men main #flow > ul > li .message-area .line-link,
body#age40-50men main #flow > ul > li .message-area .line-link,
body#age60-men main #flow > ul > li .message-area .line-link {
  text-align: center;
  font-weight: 600;
  color: #fff;
  position: relative;
  transition: filter 0.5s;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li .message-area .line-link,
  body#age40-50women main #flow > ul > li .message-area .line-link,
  body#age60-women main #flow > ul > li .message-area .line-link,
  body#age20-30men main #flow > ul > li .message-area .line-link,
  body#age40-50men main #flow > ul > li .message-area .line-link,
  body#age60-men main #flow > ul > li .message-area .line-link {
    max-width: 100%;
  }
}
body#age20-30women main #flow > ul > li .message-area .line-link:after,
body#age40-50women main #flow > ul > li .message-area .line-link:after,
body#age60-women main #flow > ul > li .message-area .line-link:after,
body#age20-30men main #flow > ul > li .message-area .line-link:after,
body#age40-50men main #flow > ul > li .message-area .line-link:after,
body#age60-men main #flow > ul > li .message-area .line-link:after {
  content: "";
  display: block;
  font-size: 8px;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li .message-area .line-link:after,
  body#age40-50women main #flow > ul > li .message-area .line-link:after,
  body#age60-women main #flow > ul > li .message-area .line-link:after,
  body#age20-30men main #flow > ul > li .message-area .line-link:after,
  body#age40-50men main #flow > ul > li .message-area .line-link:after,
  body#age60-men main #flow > ul > li .message-area .line-link:after {
    font-size: 2.1vw;
  }
}
body#age20-30women main #flow > ul > li .message-area .line-link:after,
body#age40-50women main #flow > ul > li .message-area .line-link:after,
body#age60-women main #flow > ul > li .message-area .line-link:after,
body#age20-30men main #flow > ul > li .message-area .line-link:after,
body#age40-50men main #flow > ul > li .message-area .line-link:after,
body#age60-men main #flow > ul > li .message-area .line-link:after {
  width: 0.8em;
  height: 1em;
  background-color: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  position: absolute;
  inset: 0 2em 0 auto;
  margin: auto 0;
  transition: 0.5s;
}
body#age20-30women main #flow > ul > li .message-area .line-link:hover,
body#age40-50women main #flow > ul > li .message-area .line-link:hover,
body#age60-women main #flow > ul > li .message-area .line-link:hover,
body#age20-30men main #flow > ul > li .message-area .line-link:hover,
body#age40-50men main #flow > ul > li .message-area .line-link:hover,
body#age60-men main #flow > ul > li .message-area .line-link:hover {
  filter: brightness(1.2);
}
body#age20-30women main #flow > ul > li .message-area .line-link:hover:after,
body#age40-50women main #flow > ul > li .message-area .line-link:hover:after,
body#age60-women main #flow > ul > li .message-area .line-link:hover:after,
body#age20-30men main #flow > ul > li .message-area .line-link:hover:after,
body#age40-50men main #flow > ul > li .message-area .line-link:hover:after,
body#age60-men main #flow > ul > li .message-area .line-link:hover:after {
  translate: 1em 0;
}
@media screen and (max-width: 767px) {
  body#age20-30women main #flow > ul > li .message-area,
  body#age40-50women main #flow > ul > li .message-area,
  body#age60-women main #flow > ul > li .message-area,
  body#age20-30men main #flow > ul > li .message-area,
  body#age40-50men main #flow > ul > li .message-area,
  body#age60-men main #flow > ul > li .message-area {
    width: 100%;
    padding: 1rem;
  }
}
body#age40-50women main #The-Science-Behind-Pilates,
body#age60-women main #The-Science-Behind-Pilates,
body#age20-30men main #The-Science-Behind-Pilates,
body#age40-50men main #The-Science-Behind-Pilates,
body#age60-men main #The-Science-Behind-Pilates {
  margin-top: var(--section-padding);
  padding-block: 3rem var(--section-padding);
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-size: auto;
  background-position: center;
  width: 100%;
  margin-inline: auto;
}
body#age40-50women main #The-Science-Behind-Pilates > h2,
body#age60-women main #The-Science-Behind-Pilates > h2,
body#age20-30men main #The-Science-Behind-Pilates > h2,
body#age40-50men main #The-Science-Behind-Pilates > h2,
body#age60-men main #The-Science-Behind-Pilates > h2 {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  body#age40-50women main #The-Science-Behind-Pilates > h2,
  body#age60-women main #The-Science-Behind-Pilates > h2,
  body#age20-30men main #The-Science-Behind-Pilates > h2,
  body#age40-50men main #The-Science-Behind-Pilates > h2,
  body#age60-men main #The-Science-Behind-Pilates > h2 {
    font-size: 5.3vw;
  }
}
body#age40-50women main #The-Science-Behind-Pilates > h2,
body#age60-women main #The-Science-Behind-Pilates > h2,
body#age20-30men main #The-Science-Behind-Pilates > h2,
body#age40-50men main #The-Science-Behind-Pilates > h2,
body#age60-men main #The-Science-Behind-Pilates > h2 {
  text-align: center;
  font-weight: bold;
  translate: 0 -200%;
  margin-bottom: -1em;
}
body#age40-50women main #The-Science-Behind-Pilates > section,
body#age60-women main #The-Science-Behind-Pilates > section,
body#age20-30men main #The-Science-Behind-Pilates > section,
body#age40-50men main #The-Science-Behind-Pilates > section,
body#age60-men main #The-Science-Behind-Pilates > section {
  background-color: #fff;
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  padding: 2rem 1rem;
}
body#age40-50women main #The-Science-Behind-Pilates > section h3,
body#age60-women main #The-Science-Behind-Pilates > section h3,
body#age20-30men main #The-Science-Behind-Pilates > section h3,
body#age40-50men main #The-Science-Behind-Pilates > section h3,
body#age60-men main #The-Science-Behind-Pilates > section h3 {
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  body#age40-50women main #The-Science-Behind-Pilates > section h3,
  body#age60-women main #The-Science-Behind-Pilates > section h3,
  body#age20-30men main #The-Science-Behind-Pilates > section h3,
  body#age40-50men main #The-Science-Behind-Pilates > section h3,
  body#age60-men main #The-Science-Behind-Pilates > section h3 {
    font-size: 4.8vw;
  }
}
body#age40-50women main #The-Science-Behind-Pilates > section h3,
body#age60-women main #The-Science-Behind-Pilates > section h3,
body#age20-30men main #The-Science-Behind-Pilates > section h3,
body#age40-50men main #The-Science-Behind-Pilates > section h3,
body#age60-men main #The-Science-Behind-Pilates > section h3 {
  font-weight: 500;
}
body#age40-50women main #The-Science-Behind-Pilates > section img,
body#age60-women main #The-Science-Behind-Pilates > section img,
body#age20-30men main #The-Science-Behind-Pilates > section img,
body#age40-50men main #The-Science-Behind-Pilates > section img,
body#age60-men main #The-Science-Behind-Pilates > section img {
  display: block;
  max-width: 802px;
  width: 100%;
  margin-inline: auto;
  margin-block: 2rem;
}
body#age40-50women main #The-Science-Behind-Pilates > section p,
body#age60-women main #The-Science-Behind-Pilates > section p,
body#age20-30men main #The-Science-Behind-Pilates > section p,
body#age40-50men main #The-Science-Behind-Pilates > section p,
body#age60-men main #The-Science-Behind-Pilates > section p {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  body#age40-50women main #The-Science-Behind-Pilates > section p,
  body#age60-women main #The-Science-Behind-Pilates > section p,
  body#age20-30men main #The-Science-Behind-Pilates > section p,
  body#age40-50men main #The-Science-Behind-Pilates > section p,
  body#age60-men main #The-Science-Behind-Pilates > section p {
    font-size: 3.7vw;
  }
}
body#age40-50women main #The-Science-Behind-Pilates > section p,
body#age60-women main #The-Science-Behind-Pilates > section p,
body#age20-30men main #The-Science-Behind-Pilates > section p,
body#age40-50men main #The-Science-Behind-Pilates > section p,
body#age60-men main #The-Science-Behind-Pilates > section p {
  line-height: 1.8;
}
#age20-30women {
  padding-top: var(--fixed-header-height);
}
#age20-30women main .first-section {
  width: 100%;
  height: 500px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  #age20-30women main .first-section {
    height: auto;
    padding-block: 3rem;
  }
}
#age20-30women main .first-section h1 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 0.3rem;
  margin-bottom: 3rem;
}
#age20-30women main .first-section h1 span {
  text-align: center;
}
#age20-30women main .first-section h1 span:nth-child(1) {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age20-30women main .first-section h1 span:nth-child(1) {
    font-size: 6.4vw;
  }
}
#age20-30women main .first-section h1 span:nth-child(1) {
  font-weight: bold;
}
#age20-30women main .first-section h1 span:nth-child(1):after {
  content: "";
  display: block;
  width: 105px;
  aspect-ratio: 105/18;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-inline: auto;
  margin-top: 0.3rem;
}
#age20-30women main .first-section h1 span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age20-30women main .first-section h1 span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age20-30women main .first-section h1 span:nth-child(2) b {
  font-size: 1.3em;
  color: #e1a1a1;
}
#age20-30women main .first-section p:nth-child(2) {
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30women main .first-section p:nth-child(2) {
    font-size: 5.3vw;
  }
}
#age20-30women main .first-section p:nth-child(2) {
  margin-bottom: 1.5em;
}
#age20-30women main .first-section p:nth-child(3) {
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age20-30women main .first-section p:nth-child(3) {
    font-size: 3.7vw;
  }
}
#age20-30women main .cta {
  background-color: #e6d4cb;
  padding-block: 2rem;
}
#age20-30women main .cta h2 {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age20-30women main .cta h2 {
    font-size: 4.8vw;
  }
}
#age20-30women main .cta h2 {
  font-weight: 500;
  margin-bottom: 1rem;
}
#age20-30women main #worries {
  padding-bottom: var(--section-padding);
}
#age20-30women main #worries .back_marble {
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  padding-block: var(--section-padding-small);
  margin-bottom: 3rem;
}
#age20-30women main #worries .back_marble .worries-list {
  background-color: #fff;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  padding-block: 2rem 4rem;
}
#age20-30women main #worries .back_marble .worries-list h2 {
  text-align: center;
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .worries-list h2 {
    font-size: 5.3vw;
  }
}
#age20-30women main #worries .back_marble .worries-list h2 {
  font-weight: bold;
  margin-bottom: 2rem;
}
#age20-30women main #worries .back_marble .worries-list ul {
  max-width: -moz-max-content;
  max-width: max-content;
  width: calc(100% - 2rem);
  margin-inline: auto;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .worries-list ul {
    font-size: 4.3vw;
  }
}
#age20-30women main #worries .back_marble .worries-list ul {
  line-height: 1.4;
  font-weight: 500;
}
#age20-30women main #worries .back_marble .worries-list ul li {
  padding-left: 1.8em;
  position: relative;
}
#age20-30women main #worries .back_marble .worries-list ul li:not(:last-child) {
  margin-bottom: 1em;
}
#age20-30women main #worries .back_marble .worries-list ul li:before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/icon_circle-check.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0.2em;
  left: 0;
}
#age20-30women main #worries .back_marble .messages01 {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  text-align: center;
  line-height: 1.8;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages01 {
    font-size: 3.7vw;
  }
}
#age20-30women main #worries .back_marble .messages01 {
  position: relative;
  margin-top: 3rem;
  margin-bottom: var(--section-padding-small);
}
#age20-30women main #worries .back_marble .messages01 img {
  max-width: 236px;
  width: 100%;
  position: absolute;
  bottom: -2rem;
  left: calc(100% - 7rem);
}
@media screen and (max-width: 1255px) {
  #age20-30women main #worries .back_marble .messages01 img {
    display: block;
    max-width: 200px;
    margin-inline: auto;
    position: static;
  }
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages01 img {
    max-width: 26.7vw;
  }
}
#age20-30women main #worries .back_marble .messages02 {
  background-image: linear-gradient(to right top, #bd99c5, #e1a1a1, #e3a28f);
  padding-block: 2rem;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages02 {
    font-size: 4.3vw;
  }
}
#age20-30women main #worries .back_marble .messages02 {
  color: #fff;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages02 {
    padding-block: 1rem;
  }
}
#age20-30women main #worries .back_marble .messages03 {
  text-align: center;
  padding-block: 2rem;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages03 {
    font-size: 4.3vw;
  }
}
#age20-30women main #worries .back_marble .messages03 {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages03 {
    padding-block: 1rem;
  }
}
#age20-30women main #worries .back_marble .messages04 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1366px;
  width: 100%;
  aspect-ratio: 1352/536;
  margin-inline: auto;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/age20-30women/worries_messages04_back.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages04 {
    justify-content: flex-end;
    aspect-ratio: auto;
    height: 66.7vw;
    padding-bottom: 2rem;
  }
}
#age20-30women main #worries .back_marble .messages04 p {
  display: block;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: rgba(225, 161, 161, 0.8);
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages04 p {
    font-size: 4.3vw;
  }
}
#age20-30women main #worries .back_marble .messages04 p {
  line-height: 1.5;
  font-weight: 500;
  padding-block: 0.5rem;
  text-align: center;
  color: #fff;
  margin-top: 12rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages04 p {
    margin-top: 0;
  }
}
#age20-30women main #worries .back_marble .messages04 p b {
  font-size: 1.3em;
  color: #ffffb4;
}
#age20-30women main #worries .back_marble .messages04 p:before,
#age20-30women main #worries .back_marble .messages04 p:after {
  --side-position: 3rem;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages04 p:before,
  #age20-30women main #worries .back_marble .messages04 p:after {
    --side-position: 0.5rem;
  }
}
#age20-30women main #worries .back_marble .messages04 p:before,
#age20-30women main #worries .back_marble .messages04 p:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: var(--three-dots);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .back_marble .messages04 p:before,
  #age20-30women main #worries .back_marble .messages04 p:after {
    width: 1rem;
  }
}
#age20-30women main #worries .back_marble .messages04 p:before {
  left: var(--side-position);
}
#age20-30women main #worries .back_marble .messages04 p:after {
  right: var(--side-position);
}
#age20-30women main #worries .messages05 {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .messages05 {
    flex-direction: column;
  }
}
#age20-30women main #worries .messages05 .message-area {
  width: calc(50% - 1rem);
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .messages05 .message-area {
    width: 100%;
  }
}
#age20-30women main #worries .messages05 .message-area p {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .messages05 .message-area p {
    font-size: 3.7vw;
  }
}
#age20-30women main #worries .messages05 .message-area p {
  line-height: 2;
}
#age20-30women main #worries .messages05 .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age20-30women main #worries .messages05 .image-area {
    width: 100%;
  }
}
#age20-30women main #worries .messages05 .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 670/406;
  -o-object-fit: cover;
  object-fit: cover;
}
#age20-30women main #recommendation {
  padding-bottom: var(--section-padding);
}
#age20-30women main #recommendation ul {
  --number-size: 100px;
  --number-color: #e3a28f;
}
@media screen and (max-width: 767px) {
  #age20-30women main #recommendation ul {
    --number-size: 4.5rem;
  }
}
#age20-30women main #recommendation ul {
  width: 100%;
  overflow: hidden;
  padding-top: calc(var(--number-size) / 2);
}
#age20-30women main #recommendation ul li {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding-top: calc(var(--number-size) + 1.5rem);
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  #age20-30women main #recommendation ul li {
    flex-direction: column;
  }
}
#age20-30women main #recommendation ul li:not(:last-child) {
  margin-bottom: 1rem;
}
#age20-30women main #recommendation ul li:nth-child(even) {
  --number-color: #bd99c5;
}
#age20-30women main #recommendation ul li:before {
  content: "";
  display: block;
  width: 100vw;
  height: 80%;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  top: calc(var(--number-size) / 2);
  left: 50%;
  translate: -50% 0;
  z-index: -5;
}
#age20-30women main #recommendation ul li > .number {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--number-color);
  width: var(--number-size);
  aspect-ratio: 1/1;
  border-radius: 100%;
  position: absolute;
  inset: 0 0 auto;
  margin: 0 auto;
}
#age20-30women main #recommendation ul li > .number > span {
  font-family: "Barlow", serif;
  text-align: center;
  color: #fff;
  line-height: 1;
}
#age20-30women main #recommendation ul li > .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #recommendation ul li > .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
#age20-30women main #recommendation ul li > .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #recommendation ul li > .number > span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age20-30women main #recommendation ul li .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age20-30women main #recommendation ul li .image-area {
    width: 100%;
  }
}
#age20-30women main #recommendation ul li .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 500/330;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  #age20-30women main #recommendation ul li .image-area img {
    aspect-ratio: 500/280;
  }
}
#age20-30women main #recommendation ul li .message-area {
  width: 50%;
  padding: 3rem 2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age20-30women main #recommendation ul li .message-area {
    width: 100%;
    padding: 1rem;
  }
}
#age20-30women main #recommendation ul li .message-area:before {
  content: "";
  display: block;
  width: 150%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -2;
}
@media screen and (max-width: 767px) {
  #age20-30women main #recommendation ul li .message-area:before {
    width: 100%;
  }
}
#age20-30women main #recommendation ul li .message-area:after {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background-image: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
#age20-30women main #recommendation ul li .message-area h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #recommendation ul li .message-area h3 {
    font-size: 4.8vw;
  }
}
#age20-30women main #recommendation ul li .message-area h3 {
  line-height: 1.7;
  font-weight: 500;
  margin-bottom: 1em;
}
#age20-30women main #recommendation ul li .message-area p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #recommendation ul li .message-area p {
    font-size: 3.7vw;
  }
}
#age20-30women main #recommendation ul li .message-area p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  #age20-30women main #recommendation ul li:nth-child(odd) .image-area {
    order: 2;
  }
  #age20-30women
    main
    #recommendation
    ul
    li:nth-child(odd)
    .message-area:before {
    right: auto;
    left: 0;
  }
  #age20-30women main #recommendation ul li:nth-child(odd) .message-area:after {
    right: auto;
    left: 0;
  }
}
#age20-30women main #mechanism {
  padding-block: calc(var(--section-padding) + 2rem);
  position: relative;
  z-index: 1;
}
#age20-30women main #mechanism:before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - (var(--section-padding) + 2rem));
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#age20-30women main #mechanism #The-Science-Behind-Pilates,
#age20-30women main #mechanism #PMS-improvement {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: #fff;
  padding-bottom: 3rem;
}
#age20-30women main #mechanism #The-Science-Behind-Pilates h2,
#age20-30women main #mechanism #PMS-improvement h2 {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #mechanism #The-Science-Behind-Pilates h2,
  #age20-30women main #mechanism #PMS-improvement h2 {
    font-size: 5.3vw;
  }
}
#age20-30women main #mechanism #The-Science-Behind-Pilates h2,
#age20-30women main #mechanism #PMS-improvement h2 {
  text-align: center;
  font-weight: bold;
}
#age20-30women main #mechanism #The-Science-Behind-Pilates h2:first-child,
#age20-30women main #mechanism #PMS-improvement h2:first-child {
  translate: 0 -100%;
  margin-bottom: -0.5rem;
}
#age20-30women main #mechanism #The-Science-Behind-Pilates h2:not(:first-child),
#age20-30women main #mechanism #PMS-improvement h2:not(:first-child) {
  margin-top: 3rem;
}
#age20-30women main #mechanism #The-Science-Behind-Pilates h2 + p,
#age20-30women main #mechanism #PMS-improvement h2 + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #mechanism #The-Science-Behind-Pilates h2 + p,
  #age20-30women main #mechanism #PMS-improvement h2 + p {
    font-size: 4.8vw;
  }
}
#age20-30women main #mechanism #The-Science-Behind-Pilates img,
#age20-30women main #mechanism #PMS-improvement img {
  display: block;
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  margin-block: 2rem;
}
#age20-30women main #mechanism #The-Science-Behind-Pilates img + p,
#age20-30women main #mechanism #PMS-improvement img + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age20-30women main #mechanism #The-Science-Behind-Pilates img + p,
  #age20-30women main #mechanism #PMS-improvement img + p {
    font-size: 3.7vw;
  }
}
#age20-30women main #mechanism #The-Science-Behind-Pilates img + p,
#age20-30women main #mechanism #PMS-improvement img + p {
  text-align: center;
}
#age20-30women main #mechanism #The-Science-Behind-Pilates {
  margin-bottom: var(--section-padding);
}
#age40-50women {
  padding-top: var(--fixed-header-height);
}
#age40-50women main .first-section {
  width: 100%;
  height: 500px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  #age40-50women main .first-section {
    height: auto;
    padding-block: 3rem;
  }
}
#age40-50women main .first-section h1 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 0.3rem;
  margin-bottom: 3rem;
}
#age40-50women main .first-section h1 span {
  text-align: center;
}
#age40-50women main .first-section h1 span:nth-child(1) {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age40-50women main .first-section h1 span:nth-child(1) {
    font-size: 6.4vw;
  }
}
#age40-50women main .first-section h1 span:nth-child(1) {
  font-weight: bold;
}
#age40-50women main .first-section h1 span:nth-child(1):after {
  content: "";
  display: block;
  width: 105px;
  aspect-ratio: 105/18;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-inline: auto;
  margin-top: 0.3rem;
}
#age40-50women main .first-section h1 span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age40-50women main .first-section h1 span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age40-50women main .first-section h1 span:nth-child(2) b {
  font-size: 1.3em;
  color: #e1a1a1;
}
#age40-50women main .first-section p:nth-child(2) {
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50women main .first-section p:nth-child(2) {
    font-size: 5.3vw;
  }
}
#age40-50women main .first-section p:nth-child(2) {
  margin-bottom: 1.5em;
}
#age40-50women main .first-section p:nth-child(3) {
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age40-50women main .first-section p:nth-child(3) {
    font-size: 3.7vw;
  }
}
#age40-50women main .cta {
  background-color: #e6d4cb;
  padding-block: 2rem;
}
#age40-50women main .cta h2 {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age40-50women main .cta h2 {
    font-size: 4.8vw;
  }
}
#age40-50women main .cta h2 {
  font-weight: 500;
  margin-bottom: 1rem;
}
#age40-50women main #worries {
  padding-bottom: var(--section-padding);
}
#age40-50women main #worries .back_marble {
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  padding-block: var(--section-padding-small);
  margin-bottom: 3rem;
}
#age40-50women main #worries .back_marble .worries-list {
  background-color: #fff;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  padding-block: 2rem 4rem;
}
#age40-50women main #worries .back_marble .worries-list h2 {
  text-align: center;
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .worries-list h2 {
    font-size: 5.3vw;
  }
}
#age40-50women main #worries .back_marble .worries-list h2 {
  font-weight: bold;
  margin-bottom: 2rem;
}
#age40-50women main #worries .back_marble .worries-list ul {
  max-width: -moz-max-content;
  max-width: max-content;
  width: calc(100% - 2rem);
  margin-inline: auto;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .worries-list ul {
    font-size: 4.3vw;
  }
}
#age40-50women main #worries .back_marble .worries-list ul {
  line-height: 1.4;
  font-weight: 500;
}
#age40-50women main #worries .back_marble .worries-list ul li {
  padding-left: 1.8em;
  position: relative;
}
#age40-50women main #worries .back_marble .worries-list ul li:not(:last-child) {
  margin-bottom: 1em;
}
#age40-50women main #worries .back_marble .worries-list ul li:before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/icon_circle-check.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0.2em;
  left: 0;
}
#age40-50women main #worries .back_marble .messages01 {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  text-align: center;
  line-height: 1.8;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages01 {
    font-size: 3.7vw;
  }
}
#age40-50women main #worries .back_marble .messages01 {
  position: relative;
  margin-top: 3rem;
  margin-bottom: var(--section-padding-small);
}
#age40-50women main #worries .back_marble .messages01 img {
  max-width: 236px;
  width: 100%;
  position: absolute;
  bottom: -2rem;
  left: calc(100% - 7rem);
}
@media screen and (max-width: 1255px) {
  #age40-50women main #worries .back_marble .messages01 img {
    display: block;
    max-width: 200px;
    margin-inline: auto;
    position: static;
  }
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages01 img {
    max-width: 26.7vw;
  }
}
#age40-50women main #worries .back_marble .messages02 {
  background-image: linear-gradient(to right top, #bd99c5, #e1a1a1, #e3a28f);
  padding-block: 2rem;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages02 {
    font-size: 4.3vw;
  }
}
#age40-50women main #worries .back_marble .messages02 {
  color: #fff;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages02 {
    padding-block: 1rem;
  }
}
#age40-50women main #worries .back_marble .messages03 {
  text-align: center;
  padding-block: 2rem;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages03 {
    font-size: 4.3vw;
  }
}
#age40-50women main #worries .back_marble .messages03 {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages03 {
    padding-block: 1rem;
  }
}
#age40-50women main #worries .back_marble .messages04 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1366px;
  width: 100%;
  aspect-ratio: 1352/536;
  margin-inline: auto;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/age20-30women/worries_messages04_back.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages04 {
    justify-content: flex-end;
    aspect-ratio: auto;
    height: 66.7vw;
    padding-bottom: 2rem;
  }
}
#age40-50women main #worries .back_marble .messages04 p {
  display: block;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: rgba(225, 161, 161, 0.8);
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages04 p {
    font-size: 4.3vw;
  }
}
#age40-50women main #worries .back_marble .messages04 p {
  line-height: 1.5;
  font-weight: 500;
  padding-block: 0.5rem;
  text-align: center;
  color: #fff;
  margin-top: 12rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages04 p {
    margin-top: 0;
  }
}
#age40-50women main #worries .back_marble .messages04 p b {
  font-size: 1.3em;
  color: #ffffb4;
}
#age40-50women main #worries .back_marble .messages04 p:before,
#age40-50women main #worries .back_marble .messages04 p:after {
  --side-position: 3rem;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages04 p:before,
  #age40-50women main #worries .back_marble .messages04 p:after {
    --side-position: 0.5rem;
  }
}
#age40-50women main #worries .back_marble .messages04 p:before,
#age40-50women main #worries .back_marble .messages04 p:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: var(--three-dots);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .back_marble .messages04 p:before,
  #age40-50women main #worries .back_marble .messages04 p:after {
    width: 1rem;
  }
}
#age40-50women main #worries .back_marble .messages04 p:before {
  left: var(--side-position);
}
#age40-50women main #worries .back_marble .messages04 p:after {
  right: var(--side-position);
}
#age40-50women main #worries .messages05 {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .messages05 {
    flex-direction: column;
  }
}
#age40-50women main #worries .messages05 .message-area {
  width: calc(50% - 1rem);
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .messages05 .message-area {
    width: 100%;
  }
}
#age40-50women main #worries .messages05 .message-area p {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .messages05 .message-area p {
    font-size: 3.7vw;
  }
}
#age40-50women main #worries .messages05 .message-area p {
  line-height: 2;
}
#age40-50women main #worries .messages05 .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age40-50women main #worries .messages05 .image-area {
    width: 100%;
  }
}
#age40-50women main #worries .messages05 .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 670/406;
  -o-object-fit: cover;
  object-fit: cover;
}
#age40-50women main #recommendation {
  padding-bottom: var(--section-padding);
}
#age40-50women main #recommendation ul {
  --number-size: 100px;
  --number-color: #e3a28f;
}
@media screen and (max-width: 767px) {
  #age40-50women main #recommendation ul {
    --number-size: 4.5rem;
  }
}
#age40-50women main #recommendation ul {
  width: 100%;
  overflow: hidden;
  padding-top: calc(var(--number-size) / 2);
}
#age40-50women main #recommendation ul li {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding-top: calc(var(--number-size) + 1.5rem);
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  #age40-50women main #recommendation ul li {
    flex-direction: column;
  }
}
#age40-50women main #recommendation ul li:not(:last-child) {
  margin-bottom: 1rem;
}
#age40-50women main #recommendation ul li:nth-child(even) {
  --number-color: #bd99c5;
}
#age40-50women main #recommendation ul li:before {
  content: "";
  display: block;
  width: 100vw;
  height: 80%;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  top: calc(var(--number-size) / 2);
  left: 50%;
  translate: -50% 0;
  z-index: -5;
}
#age40-50women main #recommendation ul li > .number {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--number-color);
  width: var(--number-size);
  aspect-ratio: 1/1;
  border-radius: 100%;
  position: absolute;
  inset: 0 0 auto;
  margin: 0 auto;
}
#age40-50women main #recommendation ul li > .number > span {
  font-family: "Barlow", serif;
  text-align: center;
  color: #fff;
  line-height: 1;
}
#age40-50women main #recommendation ul li > .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #recommendation ul li > .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
#age40-50women main #recommendation ul li > .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #recommendation ul li > .number > span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age40-50women main #recommendation ul li .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age40-50women main #recommendation ul li .image-area {
    width: 100%;
  }
}
#age40-50women main #recommendation ul li .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 500/330;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  #age40-50women main #recommendation ul li .image-area img {
    aspect-ratio: 500/280;
  }
}
#age40-50women main #recommendation ul li .message-area {
  width: 50%;
  padding: 3rem 2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age40-50women main #recommendation ul li .message-area {
    width: 100%;
    padding: 1rem;
  }
}
#age40-50women main #recommendation ul li .message-area:before {
  content: "";
  display: block;
  width: 150%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -2;
}
@media screen and (max-width: 767px) {
  #age40-50women main #recommendation ul li .message-area:before {
    width: 100%;
  }
}
#age40-50women main #recommendation ul li .message-area:after {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background-image: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
#age40-50women main #recommendation ul li .message-area h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #recommendation ul li .message-area h3 {
    font-size: 4.8vw;
  }
}
#age40-50women main #recommendation ul li .message-area h3 {
  line-height: 1.7;
  font-weight: 500;
  margin-bottom: 1em;
}
#age40-50women main #recommendation ul li .message-area p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #recommendation ul li .message-area p {
    font-size: 3.7vw;
  }
}
#age40-50women main #recommendation ul li .message-area p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  #age40-50women main #recommendation ul li:nth-child(odd) .image-area {
    order: 2;
  }
  #age40-50women
    main
    #recommendation
    ul
    li:nth-child(odd)
    .message-area:before {
    right: auto;
    left: 0;
  }
  #age40-50women main #recommendation ul li:nth-child(odd) .message-area:after {
    right: auto;
    left: 0;
  }
}
#age40-50women main #mechanism {
  padding-block: calc(var(--section-padding) + 2rem);
  position: relative;
  z-index: 1;
}
#age40-50women main #mechanism:before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - (var(--section-padding) + 2rem));
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#age40-50women main #mechanism #The-Science-Behind-Pilates,
#age40-50women main #mechanism #PMS-improvement {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: #fff;
  padding-bottom: 3rem;
}
#age40-50women main #mechanism #The-Science-Behind-Pilates h2,
#age40-50women main #mechanism #PMS-improvement h2 {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #mechanism #The-Science-Behind-Pilates h2,
  #age40-50women main #mechanism #PMS-improvement h2 {
    font-size: 5.3vw;
  }
}
#age40-50women main #mechanism #The-Science-Behind-Pilates h2,
#age40-50women main #mechanism #PMS-improvement h2 {
  text-align: center;
  font-weight: bold;
}
#age40-50women main #mechanism #The-Science-Behind-Pilates h2:first-child,
#age40-50women main #mechanism #PMS-improvement h2:first-child {
  translate: 0 -100%;
  margin-bottom: -0.5rem;
}
#age40-50women main #mechanism #The-Science-Behind-Pilates h2:not(:first-child),
#age40-50women main #mechanism #PMS-improvement h2:not(:first-child) {
  margin-top: 3rem;
}
#age40-50women main #mechanism #The-Science-Behind-Pilates h2 + p,
#age40-50women main #mechanism #PMS-improvement h2 + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #mechanism #The-Science-Behind-Pilates h2 + p,
  #age40-50women main #mechanism #PMS-improvement h2 + p {
    font-size: 4.8vw;
  }
}
#age40-50women main #mechanism #The-Science-Behind-Pilates img,
#age40-50women main #mechanism #PMS-improvement img {
  display: block;
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  margin-block: 2rem;
}
#age40-50women main #mechanism #The-Science-Behind-Pilates img + p,
#age40-50women main #mechanism #PMS-improvement img + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age40-50women main #mechanism #The-Science-Behind-Pilates img + p,
  #age40-50women main #mechanism #PMS-improvement img + p {
    font-size: 3.7vw;
  }
}
#age40-50women main #mechanism #The-Science-Behind-Pilates img + p,
#age40-50women main #mechanism #PMS-improvement img + p {
  text-align: center;
}
#age40-50women main #mechanism #The-Science-Behind-Pilates {
  margin-bottom: var(--section-padding);
}
#age60-women {
  padding-top: var(--fixed-header-height);
}
#age60-women main .first-section {
  width: 100%;
  height: 500px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  #age60-women main .first-section {
    height: auto;
    padding-block: 3rem;
  }
}
#age60-women main .first-section h1 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 0.3rem;
  margin-bottom: 3rem;
}
#age60-women main .first-section h1 span {
  text-align: center;
}
#age60-women main .first-section h1 span:nth-child(1) {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age60-women main .first-section h1 span:nth-child(1) {
    font-size: 6.4vw;
  }
}
#age60-women main .first-section h1 span:nth-child(1) {
  font-weight: bold;
}
#age60-women main .first-section h1 span:nth-child(1):after {
  content: "";
  display: block;
  width: 105px;
  aspect-ratio: 105/18;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-inline: auto;
  margin-top: 0.3rem;
}
#age60-women main .first-section h1 span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age60-women main .first-section h1 span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age60-women main .first-section h1 span:nth-child(2) b {
  font-size: 1.3em;
  color: #e1a1a1;
}
#age60-women main .first-section p:nth-child(2) {
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-women main .first-section p:nth-child(2) {
    font-size: 5.3vw;
  }
}
#age60-women main .first-section p:nth-child(2) {
  margin-bottom: 1.5em;
}
#age60-women main .first-section p:nth-child(3) {
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age60-women main .first-section p:nth-child(3) {
    font-size: 3.7vw;
  }
}
#age60-women main .cta {
  background-color: #e6d4cb;
  padding-block: 2rem;
}
#age60-women main .cta h2 {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age60-women main .cta h2 {
    font-size: 4.8vw;
  }
}
#age60-women main .cta h2 {
  font-weight: 500;
  margin-bottom: 1rem;
}
#age60-women main #worries {
  padding-bottom: var(--section-padding);
}
#age60-women main #worries .back_marble {
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  padding-block: var(--section-padding-small);
  margin-bottom: 3rem;
}
#age60-women main #worries .back_marble .worries-list {
  background-color: #fff;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  padding-block: 2rem 4rem;
}
#age60-women main #worries .back_marble .worries-list h2 {
  text-align: center;
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .worries-list h2 {
    font-size: 5.3vw;
  }
}
#age60-women main #worries .back_marble .worries-list h2 {
  font-weight: bold;
  margin-bottom: 2rem;
}
#age60-women main #worries .back_marble .worries-list ul {
  max-width: -moz-max-content;
  max-width: max-content;
  width: calc(100% - 2rem);
  margin-inline: auto;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .worries-list ul {
    font-size: 4.3vw;
  }
}
#age60-women main #worries .back_marble .worries-list ul {
  line-height: 1.4;
  font-weight: 500;
}
#age60-women main #worries .back_marble .worries-list ul li {
  padding-left: 1.8em;
  position: relative;
}
#age60-women main #worries .back_marble .worries-list ul li:not(:last-child) {
  margin-bottom: 1em;
}
#age60-women main #worries .back_marble .worries-list ul li:before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/icon_circle-check.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0.2em;
  left: 0;
}
#age60-women main #worries .back_marble .messages01 {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  text-align: center;
  line-height: 1.8;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages01 {
    font-size: 3.7vw;
  }
}
#age60-women main #worries .back_marble .messages01 {
  position: relative;
  margin-top: 3rem;
  margin-bottom: var(--section-padding-small);
}
#age60-women main #worries .back_marble .messages01 img {
  max-width: 236px;
  width: 100%;
  position: absolute;
  bottom: -2rem;
  left: calc(100% - 7rem);
}
@media screen and (max-width: 1255px) {
  #age60-women main #worries .back_marble .messages01 img {
    display: block;
    max-width: 200px;
    margin-inline: auto;
    position: static;
  }
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages01 img {
    max-width: 26.7vw;
  }
}
#age60-women main #worries .back_marble .messages02 {
  background-image: linear-gradient(to right top, #bd99c5, #e1a1a1, #e3a28f);
  padding-block: 2rem;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages02 {
    font-size: 4.3vw;
  }
}
#age60-women main #worries .back_marble .messages02 {
  color: #fff;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages02 {
    padding-block: 1rem;
  }
}
#age60-women main #worries .back_marble .messages03 {
  text-align: center;
  padding-block: 2rem;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages03 {
    font-size: 4.3vw;
  }
}
#age60-women main #worries .back_marble .messages03 {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages03 {
    padding-block: 1rem;
  }
}
#age60-women main #worries .back_marble .messages04 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1366px;
  width: 100%;
  aspect-ratio: 1352/536;
  margin-inline: auto;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/age20-30women/worries_messages04_back.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages04 {
    justify-content: flex-end;
    aspect-ratio: auto;
    height: 66.7vw;
    padding-bottom: 2rem;
  }
}
#age60-women main #worries .back_marble .messages04 p {
  display: block;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: rgba(225, 161, 161, 0.8);
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages04 p {
    font-size: 4.3vw;
  }
}
#age60-women main #worries .back_marble .messages04 p {
  line-height: 1.5;
  font-weight: 500;
  padding-block: 0.5rem;
  text-align: center;
  color: #fff;
  margin-top: 12rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages04 p {
    margin-top: 0;
  }
}
#age60-women main #worries .back_marble .messages04 p b {
  font-size: 1.3em;
  color: #ffffb4;
}
#age60-women main #worries .back_marble .messages04 p:before,
#age60-women main #worries .back_marble .messages04 p:after {
  --side-position: 3rem;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages04 p:before,
  #age60-women main #worries .back_marble .messages04 p:after {
    --side-position: 0.5rem;
  }
}
#age60-women main #worries .back_marble .messages04 p:before,
#age60-women main #worries .back_marble .messages04 p:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: var(--three-dots);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .back_marble .messages04 p:before,
  #age60-women main #worries .back_marble .messages04 p:after {
    width: 1rem;
  }
}
#age60-women main #worries .back_marble .messages04 p:before {
  left: var(--side-position);
}
#age60-women main #worries .back_marble .messages04 p:after {
  right: var(--side-position);
}
#age60-women main #worries .messages05 {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .messages05 {
    flex-direction: column;
  }
}
#age60-women main #worries .messages05 .message-area {
  width: calc(50% - 1rem);
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .messages05 .message-area {
    width: 100%;
  }
}
#age60-women main #worries .messages05 .message-area p {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .messages05 .message-area p {
    font-size: 3.7vw;
  }
}
#age60-women main #worries .messages05 .message-area p {
  line-height: 2;
}
#age60-women main #worries .messages05 .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age60-women main #worries .messages05 .image-area {
    width: 100%;
  }
}
#age60-women main #worries .messages05 .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 670/406;
  -o-object-fit: cover;
  object-fit: cover;
}
#age60-women main #recommendation {
  padding-bottom: var(--section-padding);
}
#age60-women main #recommendation ul {
  --number-size: 100px;
  --number-color: #e3a28f;
}
@media screen and (max-width: 767px) {
  #age60-women main #recommendation ul {
    --number-size: 4.5rem;
  }
}
#age60-women main #recommendation ul {
  width: 100%;
  overflow: hidden;
  padding-top: calc(var(--number-size) / 2);
}
#age60-women main #recommendation ul li {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding-top: calc(var(--number-size) + 1.5rem);
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  #age60-women main #recommendation ul li {
    flex-direction: column;
  }
}
#age60-women main #recommendation ul li:not(:last-child) {
  margin-bottom: 1rem;
}
#age60-women main #recommendation ul li:nth-child(even) {
  --number-color: #bd99c5;
}
#age60-women main #recommendation ul li:before {
  content: "";
  display: block;
  width: 100vw;
  height: 80%;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  top: calc(var(--number-size) / 2);
  left: 50%;
  translate: -50% 0;
  z-index: -5;
}
#age60-women main #recommendation ul li > .number {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--number-color);
  width: var(--number-size);
  aspect-ratio: 1/1;
  border-radius: 100%;
  position: absolute;
  inset: 0 0 auto;
  margin: 0 auto;
}
#age60-women main #recommendation ul li > .number > span {
  font-family: "Barlow", serif;
  text-align: center;
  color: #fff;
  line-height: 1;
}
#age60-women main #recommendation ul li > .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age60-women main #recommendation ul li > .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
#age60-women main #recommendation ul li > .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age60-women main #recommendation ul li > .number > span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age60-women main #recommendation ul li .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age60-women main #recommendation ul li .image-area {
    width: 100%;
  }
}
#age60-women main #recommendation ul li .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 500/330;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  #age60-women main #recommendation ul li .image-area img {
    aspect-ratio: 500/280;
  }
}
#age60-women main #recommendation ul li .message-area {
  width: 50%;
  padding: 3rem 2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age60-women main #recommendation ul li .message-area {
    width: 100%;
    padding: 1rem;
  }
}
#age60-women main #recommendation ul li .message-area:before {
  content: "";
  display: block;
  width: 150%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -2;
}
@media screen and (max-width: 767px) {
  #age60-women main #recommendation ul li .message-area:before {
    width: 100%;
  }
}
#age60-women main #recommendation ul li .message-area:after {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background-image: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
#age60-women main #recommendation ul li .message-area h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-women main #recommendation ul li .message-area h3 {
    font-size: 4.8vw;
  }
}
#age60-women main #recommendation ul li .message-area h3 {
  line-height: 1.7;
  font-weight: 500;
  margin-bottom: 1em;
}
#age60-women main #recommendation ul li .message-area p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age60-women main #recommendation ul li .message-area p {
    font-size: 3.7vw;
  }
}
#age60-women main #recommendation ul li .message-area p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  #age60-women main #recommendation ul li:nth-child(odd) .image-area {
    order: 2;
  }
  #age60-women main #recommendation ul li:nth-child(odd) .message-area:before {
    right: auto;
    left: 0;
  }
  #age60-women main #recommendation ul li:nth-child(odd) .message-area:after {
    right: auto;
    left: 0;
  }
}
#age60-women main #mechanism {
  padding-block: calc(var(--section-padding) + 2rem);
  position: relative;
  z-index: 1;
}
#age60-women main #mechanism:before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - (var(--section-padding) + 2rem));
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#age60-women main #mechanism #The-Science-Behind-Pilates,
#age60-women main #mechanism #PMS-improvement {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: #fff;
  padding-bottom: 3rem;
}
#age60-women main #mechanism #The-Science-Behind-Pilates h2,
#age60-women main #mechanism #PMS-improvement h2 {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age60-women main #mechanism #The-Science-Behind-Pilates h2,
  #age60-women main #mechanism #PMS-improvement h2 {
    font-size: 5.3vw;
  }
}
#age60-women main #mechanism #The-Science-Behind-Pilates h2,
#age60-women main #mechanism #PMS-improvement h2 {
  text-align: center;
  font-weight: bold;
}
#age60-women main #mechanism #The-Science-Behind-Pilates h2:first-child,
#age60-women main #mechanism #PMS-improvement h2:first-child {
  translate: 0 -100%;
  margin-bottom: -0.5rem;
}
#age60-women main #mechanism #The-Science-Behind-Pilates h2:not(:first-child),
#age60-women main #mechanism #PMS-improvement h2:not(:first-child) {
  margin-top: 3rem;
}
#age60-women main #mechanism #The-Science-Behind-Pilates h2 + p,
#age60-women main #mechanism #PMS-improvement h2 + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-women main #mechanism #The-Science-Behind-Pilates h2 + p,
  #age60-women main #mechanism #PMS-improvement h2 + p {
    font-size: 4.8vw;
  }
}
#age60-women main #mechanism #The-Science-Behind-Pilates img,
#age60-women main #mechanism #PMS-improvement img {
  display: block;
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  margin-block: 2rem;
}
#age60-women main #mechanism #The-Science-Behind-Pilates img + p,
#age60-women main #mechanism #PMS-improvement img + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age60-women main #mechanism #The-Science-Behind-Pilates img + p,
  #age60-women main #mechanism #PMS-improvement img + p {
    font-size: 3.7vw;
  }
}
#age60-women main #mechanism #The-Science-Behind-Pilates img + p,
#age60-women main #mechanism #PMS-improvement img + p {
  text-align: center;
}
#age60-women main #mechanism #The-Science-Behind-Pilates {
  margin-bottom: var(--section-padding);
}
#age20-30men {
  padding-top: var(--fixed-header-height);
}
#age20-30men main .first-section {
  width: 100%;
  height: 500px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  #age20-30men main .first-section {
    height: auto;
    padding-block: 3rem;
  }
}
#age20-30men main .first-section h1 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 0.3rem;
  margin-bottom: 3rem;
}
#age20-30men main .first-section h1 span {
  text-align: center;
}
#age20-30men main .first-section h1 span:nth-child(1) {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age20-30men main .first-section h1 span:nth-child(1) {
    font-size: 6.4vw;
  }
}
#age20-30men main .first-section h1 span:nth-child(1) {
  font-weight: bold;
}
#age20-30men main .first-section h1 span:nth-child(1):after {
  content: "";
  display: block;
  width: 105px;
  aspect-ratio: 105/18;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-inline: auto;
  margin-top: 0.3rem;
}
#age20-30men main .first-section h1 span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age20-30men main .first-section h1 span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age20-30men main .first-section h1 span:nth-child(2) b {
  font-size: 1.3em;
  color: #e1a1a1;
}
#age20-30men main .first-section p:nth-child(2) {
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30men main .first-section p:nth-child(2) {
    font-size: 5.3vw;
  }
}
#age20-30men main .first-section p:nth-child(2) {
  margin-bottom: 1.5em;
}
#age20-30men main .first-section p:nth-child(3) {
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age20-30men main .first-section p:nth-child(3) {
    font-size: 3.7vw;
  }
}
#age20-30men main .cta {
  background-color: #e6d4cb;
  padding-block: 2rem;
}
#age20-30men main .cta h2 {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age20-30men main .cta h2 {
    font-size: 4.8vw;
  }
}
#age20-30men main .cta h2 {
  font-weight: 500;
  margin-bottom: 1rem;
}
#age20-30men main #worries {
  padding-bottom: var(--section-padding);
}
#age20-30men main #worries .back_marble {
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  padding-block: var(--section-padding-small);
  margin-bottom: 3rem;
}
#age20-30men main #worries .back_marble .worries-list {
  background-color: #fff;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  padding-block: 2rem 4rem;
}
#age20-30men main #worries .back_marble .worries-list h2 {
  text-align: center;
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .worries-list h2 {
    font-size: 5.3vw;
  }
}
#age20-30men main #worries .back_marble .worries-list h2 {
  font-weight: bold;
  margin-bottom: 2rem;
}
#age20-30men main #worries .back_marble .worries-list ul {
  max-width: -moz-max-content;
  max-width: max-content;
  width: calc(100% - 2rem);
  margin-inline: auto;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .worries-list ul {
    font-size: 4.3vw;
  }
}
#age20-30men main #worries .back_marble .worries-list ul {
  line-height: 1.4;
  font-weight: 500;
}
#age20-30men main #worries .back_marble .worries-list ul li {
  padding-left: 1.8em;
  position: relative;
}
#age20-30men main #worries .back_marble .worries-list ul li:not(:last-child) {
  margin-bottom: 1em;
}
#age20-30men main #worries .back_marble .worries-list ul li:before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/icon_circle-check.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0.2em;
  left: 0;
}
#age20-30men main #worries .back_marble .messages01 {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  text-align: center;
  line-height: 1.8;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages01 {
    font-size: 3.7vw;
  }
}
#age20-30men main #worries .back_marble .messages01 {
  position: relative;
  margin-top: 3rem;
  margin-bottom: var(--section-padding-small);
}
#age20-30men main #worries .back_marble .messages01 img {
  max-width: 236px;
  width: 100%;
  position: absolute;
  bottom: -2rem;
  left: calc(100% - 7rem);
}
@media screen and (max-width: 1255px) {
  #age20-30men main #worries .back_marble .messages01 img {
    display: block;
    max-width: 200px;
    margin-inline: auto;
    position: static;
  }
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages01 img {
    max-width: 26.7vw;
  }
}
#age20-30men main #worries .back_marble .messages02 {
  background-image: linear-gradient(to right top, #bd99c5, #e1a1a1, #e3a28f);
  padding-block: 2rem;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages02 {
    font-size: 4.3vw;
  }
}
#age20-30men main #worries .back_marble .messages02 {
  color: #fff;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages02 {
    padding-block: 1rem;
  }
}
#age20-30men main #worries .back_marble .messages03 {
  text-align: center;
  padding-block: 2rem;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages03 {
    font-size: 4.3vw;
  }
}
#age20-30men main #worries .back_marble .messages03 {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages03 {
    padding-block: 1rem;
  }
}
#age20-30men main #worries .back_marble .messages04 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1366px;
  width: 100%;
  aspect-ratio: 1352/536;
  margin-inline: auto;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/age20-30men/worries_messages04_back.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages04 {
    justify-content: flex-end;
    aspect-ratio: auto;
    height: 66.7vw;
    padding-bottom: 2rem;
  }
}
#age20-30men main #worries .back_marble .messages04 p {
  display: block;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: rgba(225, 161, 161, 0.8);
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages04 p {
    font-size: 4.3vw;
  }
}
#age20-30men main #worries .back_marble .messages04 p {
  line-height: 1.5;
  font-weight: 500;
  padding-block: 0.5rem;
  text-align: center;
  color: #fff;
  margin-top: 12rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages04 p {
    margin-top: 0;
  }
}
#age20-30men main #worries .back_marble .messages04 p b {
  font-size: 1.3em;
  color: #ffffb4;
}
#age20-30men main #worries .back_marble .messages04 p:before,
#age20-30men main #worries .back_marble .messages04 p:after {
  --side-position: 3rem;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages04 p:before,
  #age20-30men main #worries .back_marble .messages04 p:after {
    --side-position: 0.5rem;
  }
}
#age20-30men main #worries .back_marble .messages04 p:before,
#age20-30men main #worries .back_marble .messages04 p:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: var(--three-dots);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .back_marble .messages04 p:before,
  #age20-30men main #worries .back_marble .messages04 p:after {
    width: 1rem;
  }
}
#age20-30men main #worries .back_marble .messages04 p:before {
  left: var(--side-position);
}
#age20-30men main #worries .back_marble .messages04 p:after {
  right: var(--side-position);
}
#age20-30men main #worries .messages05 {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .messages05 {
    flex-direction: column;
  }
}
#age20-30men main #worries .messages05 .message-area {
  width: calc(50% - 1rem);
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .messages05 .message-area {
    width: 100%;
  }
}
#age20-30men main #worries .messages05 .message-area p {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .messages05 .message-area p {
    font-size: 3.7vw;
  }
}
#age20-30men main #worries .messages05 .message-area p {
  line-height: 2;
}
#age20-30men main #worries .messages05 .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age20-30men main #worries .messages05 .image-area {
    width: 100%;
  }
}
#age20-30men main #worries .messages05 .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 670/406;
  -o-object-fit: cover;
  object-fit: cover;
}
#age20-30men main #recommendation {
  padding-bottom: var(--section-padding);
}
#age20-30men main #recommendation ul {
  --number-size: 100px;
  --number-color: #e3a28f;
}
@media screen and (max-width: 767px) {
  #age20-30men main #recommendation ul {
    --number-size: 4.5rem;
  }
}
#age20-30men main #recommendation ul {
  width: 100%;
  overflow: hidden;
  padding-top: calc(var(--number-size) / 2);
}
#age20-30men main #recommendation ul li {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding-top: calc(var(--number-size) + 1.5rem);
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  #age20-30men main #recommendation ul li {
    flex-direction: column;
  }
}
#age20-30men main #recommendation ul li:not(:last-child) {
  margin-bottom: 1rem;
}
#age20-30men main #recommendation ul li:nth-child(even) {
  --number-color: #bd99c5;
}
#age20-30men main #recommendation ul li:before {
  content: "";
  display: block;
  width: 100vw;
  height: 80%;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  top: calc(var(--number-size) / 2);
  left: 50%;
  translate: -50% 0;
  z-index: -5;
}
#age20-30men main #recommendation ul li > .number {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--number-color);
  width: var(--number-size);
  aspect-ratio: 1/1;
  border-radius: 100%;
  position: absolute;
  inset: 0 0 auto;
  margin: 0 auto;
}
#age20-30men main #recommendation ul li > .number > span {
  font-family: "Barlow", serif;
  text-align: center;
  color: #fff;
  line-height: 1;
}
#age20-30men main #recommendation ul li > .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #recommendation ul li > .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
#age20-30men main #recommendation ul li > .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #recommendation ul li > .number > span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age20-30men main #recommendation ul li .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age20-30men main #recommendation ul li .image-area {
    width: 100%;
  }
}
#age20-30men main #recommendation ul li .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 500/330;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  #age20-30men main #recommendation ul li .image-area img {
    aspect-ratio: 500/280;
  }
}
#age20-30men main #recommendation ul li .message-area {
  width: 50%;
  padding: 3rem 2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age20-30men main #recommendation ul li .message-area {
    width: 100%;
    padding: 1rem;
  }
}
#age20-30men main #recommendation ul li .message-area:before {
  content: "";
  display: block;
  width: 150%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -2;
}
@media screen and (max-width: 767px) {
  #age20-30men main #recommendation ul li .message-area:before {
    width: 100%;
  }
}
#age20-30men main #recommendation ul li .message-area:after {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background-image: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
#age20-30men main #recommendation ul li .message-area h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #recommendation ul li .message-area h3 {
    font-size: 4.8vw;
  }
}
#age20-30men main #recommendation ul li .message-area h3 {
  line-height: 1.7;
  font-weight: 500;
  margin-bottom: 1em;
}
#age20-30men main #recommendation ul li .message-area p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #recommendation ul li .message-area p {
    font-size: 3.7vw;
  }
}
#age20-30men main #recommendation ul li .message-area p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  #age20-30men main #recommendation ul li:nth-child(odd) .image-area {
    order: 2;
  }
  #age20-30men main #recommendation ul li:nth-child(odd) .message-area:before {
    right: auto;
    left: 0;
  }
  #age20-30men main #recommendation ul li:nth-child(odd) .message-area:after {
    right: auto;
    left: 0;
  }
}
#age20-30men main #mechanism {
  padding-block: calc(var(--section-padding) + 2rem);
  position: relative;
  z-index: 1;
}
#age20-30men main #mechanism:before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - (var(--section-padding) + 2rem));
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#age20-30men main #mechanism #The-Science-Behind-Pilates,
#age20-30men main #mechanism #PMS-improvement {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: #fff;
  padding-bottom: 3rem;
}
#age20-30men main #mechanism #The-Science-Behind-Pilates h2,
#age20-30men main #mechanism #PMS-improvement h2 {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #mechanism #The-Science-Behind-Pilates h2,
  #age20-30men main #mechanism #PMS-improvement h2 {
    font-size: 5.3vw;
  }
}
#age20-30men main #mechanism #The-Science-Behind-Pilates h2,
#age20-30men main #mechanism #PMS-improvement h2 {
  text-align: center;
  font-weight: bold;
}
#age20-30men main #mechanism #The-Science-Behind-Pilates h2:first-child,
#age20-30men main #mechanism #PMS-improvement h2:first-child {
  translate: 0 -100%;
  margin-bottom: -0.5rem;
}
#age20-30men main #mechanism #The-Science-Behind-Pilates h2:not(:first-child),
#age20-30men main #mechanism #PMS-improvement h2:not(:first-child) {
  margin-top: 3rem;
}
#age20-30men main #mechanism #The-Science-Behind-Pilates h2 + p,
#age20-30men main #mechanism #PMS-improvement h2 + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #mechanism #The-Science-Behind-Pilates h2 + p,
  #age20-30men main #mechanism #PMS-improvement h2 + p {
    font-size: 4.8vw;
  }
}
#age20-30men main #mechanism #The-Science-Behind-Pilates img,
#age20-30men main #mechanism #PMS-improvement img {
  display: block;
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  margin-block: 2rem;
}
#age20-30men main #mechanism #The-Science-Behind-Pilates img + p,
#age20-30men main #mechanism #PMS-improvement img + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age20-30men main #mechanism #The-Science-Behind-Pilates img + p,
  #age20-30men main #mechanism #PMS-improvement img + p {
    font-size: 3.7vw;
  }
}
#age20-30men main #mechanism #The-Science-Behind-Pilates img + p,
#age20-30men main #mechanism #PMS-improvement img + p {
  text-align: center;
}
#age20-30men main #mechanism #The-Science-Behind-Pilates {
  margin-bottom: var(--section-padding);
}
#age40-50men {
  padding-top: var(--fixed-header-height);
}
#age40-50men main .first-section {
  width: 100%;
  height: 500px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  #age40-50men main .first-section {
    height: auto;
    padding-block: 3rem;
  }
}
#age40-50men main .first-section h1 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 0.3rem;
  margin-bottom: 3rem;
}
#age40-50men main .first-section h1 span {
  text-align: center;
}
#age40-50men main .first-section h1 span:nth-child(1) {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age40-50men main .first-section h1 span:nth-child(1) {
    font-size: 6.4vw;
  }
}
#age40-50men main .first-section h1 span:nth-child(1) {
  font-weight: bold;
}
#age40-50men main .first-section h1 span:nth-child(1):after {
  content: "";
  display: block;
  width: 105px;
  aspect-ratio: 105/18;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-inline: auto;
  margin-top: 0.3rem;
}
#age40-50men main .first-section h1 span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age40-50men main .first-section h1 span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age40-50men main .first-section h1 span:nth-child(2) b {
  font-size: 1.3em;
  color: #e1a1a1;
}
#age40-50men main .first-section p:nth-child(2) {
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50men main .first-section p:nth-child(2) {
    font-size: 5.3vw;
  }
}
#age40-50men main .first-section p:nth-child(2) {
  margin-bottom: 1.5em;
}
#age40-50men main .first-section p:nth-child(3) {
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age40-50men main .first-section p:nth-child(3) {
    font-size: 3.7vw;
  }
}
#age40-50men main .cta {
  background-color: #e6d4cb;
  padding-block: 2rem;
}
#age40-50men main .cta h2 {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age40-50men main .cta h2 {
    font-size: 4.8vw;
  }
}
#age40-50men main .cta h2 {
  font-weight: 500;
  margin-bottom: 1rem;
}
#age40-50men main #worries {
  padding-bottom: var(--section-padding);
}
#age40-50men main #worries .back_marble {
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  padding-block: var(--section-padding-small);
  margin-bottom: 3rem;
}
#age40-50men main #worries .back_marble .worries-list {
  background-color: #fff;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  padding-block: 2rem 4rem;
}
#age40-50men main #worries .back_marble .worries-list h2 {
  text-align: center;
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .worries-list h2 {
    font-size: 5.3vw;
  }
}
#age40-50men main #worries .back_marble .worries-list h2 {
  font-weight: bold;
  margin-bottom: 2rem;
}
#age40-50men main #worries .back_marble .worries-list ul {
  max-width: -moz-max-content;
  max-width: max-content;
  width: calc(100% - 2rem);
  margin-inline: auto;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .worries-list ul {
    font-size: 4.3vw;
  }
}
#age40-50men main #worries .back_marble .worries-list ul {
  line-height: 1.4;
  font-weight: 500;
}
#age40-50men main #worries .back_marble .worries-list ul li {
  padding-left: 1.8em;
  position: relative;
}
#age40-50men main #worries .back_marble .worries-list ul li:not(:last-child) {
  margin-bottom: 1em;
}
#age40-50men main #worries .back_marble .worries-list ul li:before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/icon_circle-check.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0.2em;
  left: 0;
}
#age40-50men main #worries .back_marble .messages01 {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  text-align: center;
  line-height: 1.8;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages01 {
    font-size: 3.7vw;
  }
}
#age40-50men main #worries .back_marble .messages01 {
  position: relative;
  margin-top: 3rem;
  margin-bottom: var(--section-padding-small);
}
#age40-50men main #worries .back_marble .messages01 img {
  max-width: 236px;
  width: 100%;
  position: absolute;
  bottom: -2rem;
  left: calc(100% - 7rem);
}
@media screen and (max-width: 1255px) {
  #age40-50men main #worries .back_marble .messages01 img {
    display: block;
    max-width: 200px;
    margin-inline: auto;
    position: static;
  }
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages01 img {
    max-width: 26.7vw;
  }
}
#age40-50men main #worries .back_marble .messages02 {
  background-image: linear-gradient(to right top, #bd99c5, #e1a1a1, #e3a28f);
  padding-block: 2rem;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages02 {
    font-size: 4.3vw;
  }
}
#age40-50men main #worries .back_marble .messages02 {
  color: #fff;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages02 {
    padding-block: 1rem;
  }
}
#age40-50men main #worries .back_marble .messages03 {
  text-align: center;
  padding-block: 2rem;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages03 {
    font-size: 4.3vw;
  }
}
#age40-50men main #worries .back_marble .messages03 {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages03 {
    padding-block: 1rem;
  }
}
#age40-50men main #worries .back_marble .messages04 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1366px;
  width: 100%;
  aspect-ratio: 1352/536;
  margin-inline: auto;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/age20-30women/worries_messages04_back.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages04 {
    justify-content: flex-end;
    aspect-ratio: auto;
    height: 66.7vw;
    padding-bottom: 2rem;
  }
}
#age40-50men main #worries .back_marble .messages04 p {
  display: block;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: rgba(225, 161, 161, 0.8);
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages04 p {
    font-size: 4.3vw;
  }
}
#age40-50men main #worries .back_marble .messages04 p {
  line-height: 1.5;
  font-weight: 500;
  padding-block: 0.5rem;
  text-align: center;
  color: #fff;
  margin-top: 12rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages04 p {
    margin-top: 0;
  }
}
#age40-50men main #worries .back_marble .messages04 p b {
  font-size: 1.3em;
  color: #ffffb4;
}
#age40-50men main #worries .back_marble .messages04 p:before,
#age40-50men main #worries .back_marble .messages04 p:after {
  --side-position: 3rem;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages04 p:before,
  #age40-50men main #worries .back_marble .messages04 p:after {
    --side-position: 0.5rem;
  }
}
#age40-50men main #worries .back_marble .messages04 p:before,
#age40-50men main #worries .back_marble .messages04 p:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: var(--three-dots);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .back_marble .messages04 p:before,
  #age40-50men main #worries .back_marble .messages04 p:after {
    width: 1rem;
  }
}
#age40-50men main #worries .back_marble .messages04 p:before {
  left: var(--side-position);
}
#age40-50men main #worries .back_marble .messages04 p:after {
  right: var(--side-position);
}
#age40-50men main #worries .messages05 {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .messages05 {
    flex-direction: column;
  }
}
#age40-50men main #worries .messages05 .message-area {
  width: calc(50% - 1rem);
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .messages05 .message-area {
    width: 100%;
  }
}
#age40-50men main #worries .messages05 .message-area p {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .messages05 .message-area p {
    font-size: 3.7vw;
  }
}
#age40-50men main #worries .messages05 .message-area p {
  line-height: 2;
}
#age40-50men main #worries .messages05 .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age40-50men main #worries .messages05 .image-area {
    width: 100%;
  }
}
#age40-50men main #worries .messages05 .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 670/406;
  -o-object-fit: cover;
  object-fit: cover;
}
#age40-50men main #recommendation {
  padding-bottom: var(--section-padding);
}
#age40-50men main #recommendation ul {
  --number-size: 100px;
  --number-color: #e3a28f;
}
@media screen and (max-width: 767px) {
  #age40-50men main #recommendation ul {
    --number-size: 4.5rem;
  }
}
#age40-50men main #recommendation ul {
  width: 100%;
  overflow: hidden;
  padding-top: calc(var(--number-size) / 2);
}
#age40-50men main #recommendation ul li {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding-top: calc(var(--number-size) + 1.5rem);
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  #age40-50men main #recommendation ul li {
    flex-direction: column;
  }
}
#age40-50men main #recommendation ul li:not(:last-child) {
  margin-bottom: 1rem;
}
#age40-50men main #recommendation ul li:nth-child(even) {
  --number-color: #bd99c5;
}
#age40-50men main #recommendation ul li:before {
  content: "";
  display: block;
  width: 100vw;
  height: 80%;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  top: calc(var(--number-size) / 2);
  left: 50%;
  translate: -50% 0;
  z-index: -5;
}
#age40-50men main #recommendation ul li > .number {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--number-color);
  width: var(--number-size);
  aspect-ratio: 1/1;
  border-radius: 100%;
  position: absolute;
  inset: 0 0 auto;
  margin: 0 auto;
}
#age40-50men main #recommendation ul li > .number > span {
  font-family: "Barlow", serif;
  text-align: center;
  color: #fff;
  line-height: 1;
}
#age40-50men main #recommendation ul li > .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #recommendation ul li > .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
#age40-50men main #recommendation ul li > .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #recommendation ul li > .number > span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age40-50men main #recommendation ul li .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age40-50men main #recommendation ul li .image-area {
    width: 100%;
  }
}
#age40-50men main #recommendation ul li .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 500/330;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  #age40-50men main #recommendation ul li .image-area img {
    aspect-ratio: 500/280;
  }
}
#age40-50men main #recommendation ul li .message-area {
  width: 50%;
  padding: 3rem 2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age40-50men main #recommendation ul li .message-area {
    width: 100%;
    padding: 1rem;
  }
}
#age40-50men main #recommendation ul li .message-area:before {
  content: "";
  display: block;
  width: 150%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -2;
}
@media screen and (max-width: 767px) {
  #age40-50men main #recommendation ul li .message-area:before {
    width: 100%;
  }
}
#age40-50men main #recommendation ul li .message-area:after {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background-image: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
#age40-50men main #recommendation ul li .message-area h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #recommendation ul li .message-area h3 {
    font-size: 4.8vw;
  }
}
#age40-50men main #recommendation ul li .message-area h3 {
  line-height: 1.7;
  font-weight: 500;
  margin-bottom: 1em;
}
#age40-50men main #recommendation ul li .message-area p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #recommendation ul li .message-area p {
    font-size: 3.7vw;
  }
}
#age40-50men main #recommendation ul li .message-area p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  #age40-50men main #recommendation ul li:nth-child(odd) .image-area {
    order: 2;
  }
  #age40-50men main #recommendation ul li:nth-child(odd) .message-area:before {
    right: auto;
    left: 0;
  }
  #age40-50men main #recommendation ul li:nth-child(odd) .message-area:after {
    right: auto;
    left: 0;
  }
}
#age40-50men main #mechanism {
  padding-block: calc(var(--section-padding) + 2rem);
  position: relative;
  z-index: 1;
}
#age40-50men main #mechanism:before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - (var(--section-padding) + 2rem));
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#age40-50men main #mechanism #The-Science-Behind-Pilates,
#age40-50men main #mechanism #PMS-improvement {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: #fff;
  padding-bottom: 3rem;
}
#age40-50men main #mechanism #The-Science-Behind-Pilates h2,
#age40-50men main #mechanism #PMS-improvement h2 {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #mechanism #The-Science-Behind-Pilates h2,
  #age40-50men main #mechanism #PMS-improvement h2 {
    font-size: 5.3vw;
  }
}
#age40-50men main #mechanism #The-Science-Behind-Pilates h2,
#age40-50men main #mechanism #PMS-improvement h2 {
  text-align: center;
  font-weight: bold;
}
#age40-50men main #mechanism #The-Science-Behind-Pilates h2:first-child,
#age40-50men main #mechanism #PMS-improvement h2:first-child {
  translate: 0 -100%;
  margin-bottom: -0.5rem;
}
#age40-50men main #mechanism #The-Science-Behind-Pilates h2:not(:first-child),
#age40-50men main #mechanism #PMS-improvement h2:not(:first-child) {
  margin-top: 3rem;
}
#age40-50men main #mechanism #The-Science-Behind-Pilates h2 + p,
#age40-50men main #mechanism #PMS-improvement h2 + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #mechanism #The-Science-Behind-Pilates h2 + p,
  #age40-50men main #mechanism #PMS-improvement h2 + p {
    font-size: 4.8vw;
  }
}
#age40-50men main #mechanism #The-Science-Behind-Pilates img,
#age40-50men main #mechanism #PMS-improvement img {
  display: block;
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  margin-block: 2rem;
}
#age40-50men main #mechanism #The-Science-Behind-Pilates img + p,
#age40-50men main #mechanism #PMS-improvement img + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age40-50men main #mechanism #The-Science-Behind-Pilates img + p,
  #age40-50men main #mechanism #PMS-improvement img + p {
    font-size: 3.7vw;
  }
}
#age40-50men main #mechanism #The-Science-Behind-Pilates img + p,
#age40-50men main #mechanism #PMS-improvement img + p {
  text-align: center;
}
#age40-50men main #mechanism #The-Science-Behind-Pilates {
  margin-bottom: var(--section-padding);
}
#age60-men {
  padding-top: var(--fixed-header-height);
}
#age60-men main .first-section {
  width: 100%;
  height: 500px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  #age60-men main .first-section {
    height: auto;
    padding-block: 3rem;
  }
}
#age60-men main .first-section h1 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 0.3rem;
  margin-bottom: 3rem;
}
#age60-men main .first-section h1 span {
  text-align: center;
}
#age60-men main .first-section h1 span:nth-child(1) {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age60-men main .first-section h1 span:nth-child(1) {
    font-size: 6.4vw;
  }
}
#age60-men main .first-section h1 span:nth-child(1) {
  font-weight: bold;
}
#age60-men main .first-section h1 span:nth-child(1):after {
  content: "";
  display: block;
  width: 105px;
  aspect-ratio: 105/18;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/headline01_wave.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-inline: auto;
  margin-top: 0.3rem;
}
#age60-men main .first-section h1 span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age60-men main .first-section h1 span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age60-men main .first-section h1 span:nth-child(2) b {
  font-size: 1.3em;
  color: #e1a1a1;
}
#age60-men main .first-section p:nth-child(2) {
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-men main .first-section p:nth-child(2) {
    font-size: 5.3vw;
  }
}
#age60-men main .first-section p:nth-child(2) {
  margin-bottom: 1.5em;
}
#age60-men main .first-section p:nth-child(3) {
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age60-men main .first-section p:nth-child(3) {
    font-size: 3.7vw;
  }
}
#age60-men main .cta {
  background-color: #e6d4cb;
  padding-block: 2rem;
}
#age60-men main .cta h2 {
  text-align: center;
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age60-men main .cta h2 {
    font-size: 4.8vw;
  }
}
#age60-men main .cta h2 {
  font-weight: 500;
  margin-bottom: 1rem;
}
#age60-men main #worries {
  padding-bottom: var(--section-padding);
}
#age60-men main #worries .back_marble {
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  padding-block: var(--section-padding-small);
  margin-bottom: 3rem;
}
#age60-men main #worries .back_marble .worries-list {
  background-color: #fff;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  padding-block: 2rem 4rem;
}
#age60-men main #worries .back_marble .worries-list h2 {
  text-align: center;
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .worries-list h2 {
    font-size: 5.3vw;
  }
}
#age60-men main #worries .back_marble .worries-list h2 {
  font-weight: bold;
  margin-bottom: 2rem;
}
#age60-men main #worries .back_marble .worries-list ul {
  max-width: -moz-max-content;
  max-width: max-content;
  width: calc(100% - 2rem);
  margin-inline: auto;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .worries-list ul {
    font-size: 4.3vw;
  }
}
#age60-men main #worries .back_marble .worries-list ul {
  line-height: 1.4;
  font-weight: 500;
}
#age60-men main #worries .back_marble .worries-list ul li {
  padding-left: 1.8em;
  position: relative;
}
#age60-men main #worries .back_marble .worries-list ul li:not(:last-child) {
  margin-bottom: 1em;
}
#age60-men main #worries .back_marble .worries-list ul li:before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/icon_circle-check.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0.2em;
  left: 0;
}
#age60-men main #worries .back_marble .messages01 {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  text-align: center;
  line-height: 1.8;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages01 {
    font-size: 3.7vw;
  }
}
#age60-men main #worries .back_marble .messages01 {
  position: relative;
  margin-top: 3rem;
  margin-bottom: var(--section-padding-small);
}
#age60-men main #worries .back_marble .messages01 img {
  max-width: 236px;
  width: 100%;
  position: absolute;
  bottom: -2rem;
  left: calc(100% - 7rem);
}
@media screen and (max-width: 1255px) {
  #age60-men main #worries .back_marble .messages01 img {
    display: block;
    max-width: 200px;
    margin-inline: auto;
    position: static;
  }
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages01 img {
    max-width: 26.7vw;
  }
}
#age60-men main #worries .back_marble .messages02 {
  background-image: linear-gradient(to right top, #bd99c5, #e1a1a1, #e3a28f);
  padding-block: 2rem;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages02 {
    font-size: 4.3vw;
  }
}
#age60-men main #worries .back_marble .messages02 {
  color: #fff;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages02 {
    padding-block: 1rem;
  }
}
#age60-men main #worries .back_marble .messages03 {
  text-align: center;
  padding-block: 2rem;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages03 {
    font-size: 4.3vw;
  }
}
#age60-men main #worries .back_marble .messages03 {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages03 {
    padding-block: 1rem;
  }
}
#age60-men main #worries .back_marble .messages04 {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  max-width: 1366px;
  width: 100%;
  aspect-ratio: 1352/536;
  margin-inline: auto;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/age20-30women/worries_messages04_back.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages04 {
    justify-content: flex-end;
    aspect-ratio: auto;
    height: 66.7vw;
    padding-bottom: 2rem;
  }
}
#age60-men main #worries .back_marble .messages04 p {
  display: block;
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: rgba(225, 161, 161, 0.8);
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages04 p {
    font-size: 4.3vw;
  }
}
#age60-men main #worries .back_marble .messages04 p {
  line-height: 1.5;
  font-weight: 500;
  padding-block: 0.5rem;
  text-align: center;
  color: #fff;
  margin-top: 12rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages04 p {
    margin-top: 0;
  }
}
#age60-men main #worries .back_marble .messages04 p b {
  font-size: 1.3em;
  color: #ffffb4;
}
#age60-men main #worries .back_marble .messages04 p:before,
#age60-men main #worries .back_marble .messages04 p:after {
  --side-position: 3rem;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages04 p:before,
  #age60-men main #worries .back_marble .messages04 p:after {
    --side-position: 0.5rem;
  }
}
#age60-men main #worries .back_marble .messages04 p:before,
#age60-men main #worries .back_marble .messages04 p:after {
  content: "";
  display: block;
  width: 35px;
  aspect-ratio: 35/5;
  background-image: var(--three-dots);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .back_marble .messages04 p:before,
  #age60-men main #worries .back_marble .messages04 p:after {
    width: 1rem;
  }
}
#age60-men main #worries .back_marble .messages04 p:before {
  left: var(--side-position);
}
#age60-men main #worries .back_marble .messages04 p:after {
  right: var(--side-position);
}
#age60-men main #worries .messages05 {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .messages05 {
    flex-direction: column;
  }
}
#age60-men main #worries .messages05 .message-area {
  width: calc(50% - 1rem);
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .messages05 .message-area {
    width: 100%;
  }
}
#age60-men main #worries .messages05 .message-area p {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .messages05 .message-area p {
    font-size: 3.7vw;
  }
}
#age60-men main #worries .messages05 .message-area p {
  line-height: 2;
}
#age60-men main #worries .messages05 .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age60-men main #worries .messages05 .image-area {
    width: 100%;
  }
}
#age60-men main #worries .messages05 .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 670/406;
  -o-object-fit: cover;
  object-fit: cover;
}
#age60-men main #recommendation {
  padding-bottom: var(--section-padding);
}
#age60-men main #recommendation ul {
  --number-size: 100px;
  --number-color: #e3a28f;
}
@media screen and (max-width: 767px) {
  #age60-men main #recommendation ul {
    --number-size: 4.5rem;
  }
}
#age60-men main #recommendation ul {
  width: 100%;
  overflow: hidden;
  padding-top: calc(var(--number-size) / 2);
}
#age60-men main #recommendation ul li {
  max-width: 1000px;
  width: 89.3vw;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding-top: calc(var(--number-size) + 1.5rem);
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  #age60-men main #recommendation ul li {
    flex-direction: column;
  }
}
#age60-men main #recommendation ul li:not(:last-child) {
  margin-bottom: 1rem;
}
#age60-men main #recommendation ul li:nth-child(even) {
  --number-color: #bd99c5;
}
#age60-men main #recommendation ul li:before {
  content: "";
  display: block;
  width: 100vw;
  height: 80%;
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  top: calc(var(--number-size) / 2);
  left: 50%;
  translate: -50% 0;
  z-index: -5;
}
#age60-men main #recommendation ul li > .number {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--number-color);
  width: var(--number-size);
  aspect-ratio: 1/1;
  border-radius: 100%;
  position: absolute;
  inset: 0 0 auto;
  margin: 0 auto;
}
#age60-men main #recommendation ul li > .number > span {
  font-family: "Barlow", serif;
  text-align: center;
  color: #fff;
  line-height: 1;
}
#age60-men main #recommendation ul li > .number > span:nth-child(1) {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  #age60-men main #recommendation ul li > .number > span:nth-child(1) {
    font-size: 5.3vw;
  }
}
#age60-men main #recommendation ul li > .number > span:nth-child(2) {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  #age60-men main #recommendation ul li > .number > span:nth-child(2) {
    font-size: 4.8vw;
  }
}
#age60-men main #recommendation ul li .image-area {
  width: 50%;
}
@media screen and (max-width: 767px) {
  #age60-men main #recommendation ul li .image-area {
    width: 100%;
  }
}
#age60-men main #recommendation ul li .image-area img {
  display: block;
  width: 100%;
  aspect-ratio: 500/330;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  #age60-men main #recommendation ul li .image-area img {
    aspect-ratio: 500/280;
  }
}
#age60-men main #recommendation ul li .message-area {
  width: 50%;
  padding: 3rem 2rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  #age60-men main #recommendation ul li .message-area {
    width: 100%;
    padding: 1rem;
  }
}
#age60-men main #recommendation ul li .message-area:before {
  content: "";
  display: block;
  width: 150%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -2;
}
@media screen and (max-width: 767px) {
  #age60-men main #recommendation ul li .message-area:before {
    width: 100%;
  }
}
#age60-men main #recommendation ul li .message-area:after {
  content: "";
  display: block;
  width: 5px;
  height: 100%;
  background-image: linear-gradient(to bottom, #bd99c5, #e1a1a1, #e3a28f);
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
#age60-men main #recommendation ul li .message-area h3 {
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-men main #recommendation ul li .message-area h3 {
    font-size: 4.8vw;
  }
}
#age60-men main #recommendation ul li .message-area h3 {
  line-height: 1.7;
  font-weight: 500;
  margin-bottom: 1em;
}
#age60-men main #recommendation ul li .message-area p {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age60-men main #recommendation ul li .message-area p {
    font-size: 3.7vw;
  }
}
#age60-men main #recommendation ul li .message-area p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  #age60-men main #recommendation ul li:nth-child(odd) .image-area {
    order: 2;
  }
  #age60-men main #recommendation ul li:nth-child(odd) .message-area:before {
    right: auto;
    left: 0;
  }
  #age60-men main #recommendation ul li:nth-child(odd) .message-area:after {
    right: auto;
    left: 0;
  }
}
#age60-men main #mechanism {
  padding-block: calc(var(--section-padding) + 2rem);
  position: relative;
  z-index: 1;
}
#age60-men main #mechanism:before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - (var(--section-padding) + 2rem));
  background-image: url(/p2025/wp-content/themes/pilache2025/assets/images/common/back_marble.webp);
  background-position: center;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#age60-men main #mechanism #The-Science-Behind-Pilates,
#age60-men main #mechanism #PMS-improvement {
  max-width: 1366px;
  width: 89.3vw;
  margin-inline: auto;
  background-color: #fff;
  padding-bottom: 3rem;
}
#age60-men main #mechanism #The-Science-Behind-Pilates h2,
#age60-men main #mechanism #PMS-improvement h2 {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  #age60-men main #mechanism #The-Science-Behind-Pilates h2,
  #age60-men main #mechanism #PMS-improvement h2 {
    font-size: 5.3vw;
  }
}
#age60-men main #mechanism #The-Science-Behind-Pilates h2,
#age60-men main #mechanism #PMS-improvement h2 {
  text-align: center;
  font-weight: bold;
}
#age60-men main #mechanism #The-Science-Behind-Pilates h2:first-child,
#age60-men main #mechanism #PMS-improvement h2:first-child {
  translate: 0 -100%;
  margin-bottom: -0.5rem;
}
#age60-men main #mechanism #The-Science-Behind-Pilates h2:not(:first-child),
#age60-men main #mechanism #PMS-improvement h2:not(:first-child) {
  margin-top: 3rem;
}
#age60-men main #mechanism #The-Science-Behind-Pilates h2 + p,
#age60-men main #mechanism #PMS-improvement h2 + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  text-align: center;
  font-size: 25px;
}
@media screen and (max-width: 767px) {
  #age60-men main #mechanism #The-Science-Behind-Pilates h2 + p,
  #age60-men main #mechanism #PMS-improvement h2 + p {
    font-size: 4.8vw;
  }
}
#age60-men main #mechanism #The-Science-Behind-Pilates img,
#age60-men main #mechanism #PMS-improvement img {
  display: block;
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  margin-block: 2rem;
}
#age60-men main #mechanism #The-Science-Behind-Pilates img + p,
#age60-men main #mechanism #PMS-improvement img + p {
  max-width: 1000px;
  width: calc(100% - 1.5rem);
  margin-inline: auto;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #age60-men main #mechanism #The-Science-Behind-Pilates img + p,
  #age60-men main #mechanism #PMS-improvement img + p {
    font-size: 3.7vw;
  }
}
#age60-men main #mechanism #The-Science-Behind-Pilates img + p,
#age60-men main #mechanism #PMS-improvement img + p {
  text-align: center;
}
#age60-men main #mechanism #The-Science-Behind-Pilates {
  margin-bottom: var(--section-padding);
} /*# sourceMappingURL=style.css.map */
