@charset "UTF-8";
body.hifu {
  font-family: "yu-mincho-pr6n", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
  font-weight: 500;
  line-height: 1.8;
  color: #333;
}

@media print, screen and (min-width: 813px) {
  .p-hifu-inner {
    width: calc(80% - 4vw);
    max-width: 840px;
  }
}
.p-hifu-cta {
  text-align: center;
  margin-top: 4rem;
}

.p-hifu-outline {
  background-color: #fff;
  padding-bottom: 0;
}
.p-hifu-outline__body {
  display: block;
}
@media print, screen and (min-width: 813px) {
  .p-hifu-outline__body {
    display: flex;
    gap: 4vw;
    align-items: flex-start;
  }
}
.p-hifu-outline__main {
  flex: 1;
}
.p-hifu-outline__anchors a:hover, .p-hifu-outline__anchors a.active {
  color: #746541;
  border-bottom-color: #746541;
}
.p-hifu-outline__machine {
  margin: 3.5rem 0;
}
.p-hifu-outline__machine img {
  width: 100%;
  height: auto;
  display: block;
}
.p-hifu-outline__text {
  font-size: 1.5rem;
  line-height: 1.8;
  margin-bottom: 3rem;
}
.p-hifu-outline__features {
  list-style: none;
  padding: 0;
  margin: 4rem 0 0;
}
.p-hifu-outline__feature {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 1.2rem 1.8rem;
  margin-bottom: 2rem;
  border-top: 2px solid #C9A961;
  background-color: #F7F4EE;
}
.p-hifu-outline__feature:last-child {
  border-bottom: 1px solid #E6DFCF;
}
.p-hifu-outline__feature-icon {
  flex-shrink: 0;
  width: 46px;
}
.p-hifu-outline__feature-icon img {
  width: 100%;
  height: auto;
  display: block;
}
.p-hifu-outline__feature-body {
  flex: 1;
}
.p-hifu-outline__feature-title {
  font-size: 1.6rem;
  font-weight: normal;
  margin-bottom: 0.4rem;
}
.p-hifu-outline__feature-desc {
  font-size: 1.3rem;
  color: #666;
  line-height: 1.6;
}

.p-hifu-features {
  background-color: #fff;
  padding-bottom: 0;
}
.p-hifu-features .c-lined-heading {
  font-size: 1.5rem;
  margin-bottom: 3.5rem;
}
.p-hifu-features__lead {
  font-size: 1.5rem;
  line-height: 1.8;
  margin-top: 3rem;
  margin-bottom: 4rem;
}
.p-hifu-features__modes {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  margin-top: 3rem;
}
@media print, screen and (min-width: 813px) {
  .p-hifu-features__modes {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.2rem;
  }
}
.p-hifu-features__mode {
  border: 1px solid #E6DFCF;
  padding: 1.6rem 1.8rem;
}
.p-hifu-features__mode-label {
  font-size: 1.1rem;
  letter-spacing: 0.1em;
  color: #a89d83;
  margin-bottom: 0;
}
.p-hifu-features__mode-label span {
  font-size: 1.4rem;
}
.p-hifu-features__mode-name {
  font-size: 1.4rem;
  padding-bottom: 0.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid #E8E4DC;
}
.p-hifu-features__mode-img {
  margin-bottom: 1.5rem;
}
.p-hifu-features__mode-img img {
  width: 100%;
  max-width: 231px;
  height: auto;
  display: block;
}
@media screen and (max-width: 812px) {
  .p-hifu-features__mode-img img {
    max-width: 100%;
  }
}
.p-hifu-features__mode-desc {
  font-size: 1.3rem;
  line-height: 1.8;
  color: #555;
}
.p-hifu-features__note {
  font-size: 1.5rem;
  line-height: 1.8;
  margin-top: 4rem;
}

.p-hifu-cartridge {
  background-color: #fff;
}
.p-hifu-cartridge__img {
  margin: 2rem 0 0;
}
.p-hifu-cartridge__img img {
  width: 100%;
  height: auto;
  display: block;
}
.p-hifu-cartridge__table-wrap {
  background-color: #F7F4EE;
  padding: 1.5rem;
  margin-bottom: 5rem;
}
.p-hifu-cartridge__table {
  width: 100%;
  border-collapse: collapse;
}
.p-hifu-cartridge__table tr:not(:last-child) {
  border-bottom: 1px dashed #D9D1C0;
}
.p-hifu-cartridge__table th,
.p-hifu-cartridge__table td {
  padding: 1rem 0;
  line-height: 1.6;
  font-size: 1.5rem;
  text-align: left;
  vertical-align: middle;
  letter-spacing: 0;
}
.p-hifu-cartridge__table th {
  font-size: 1.3rem;
  font-weight: normal;
  color: #a89d83;
  width: 80px;
  white-space: nowrap;
}
.p-hifu-cartridge__text {
  font-size: 1.5rem;
  line-height: 1.8;
  margin-bottom: 2rem;
}
.p-hifu-cartridge__text:last-child {
  margin-bottom: 0;
}

.p-hifu-candidate {
  background-color: #fff;
}
.p-hifu-candidate__check {
  background-color: #FAF8F3;
  padding: 0.6rem 1.2rem 1rem;
  margin-bottom: 5rem;
  text-align: center;
}
.p-hifu-candidate__check-label {
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  color: #C9A961;
  text-align: center;
  text-decoration: underline;
  font-weight: 700;
  margin-bottom: 0.5rem;
}
.p-hifu-candidate__check-text {
  font-size: 1.4rem;
  line-height: 1.8;
}
.p-hifu-candidate__item {
  margin-bottom: 4rem;
}
@media print, screen and (min-width: 813px) {
  .p-hifu-candidate__item {
    margin-bottom: 8rem;
  }
}
.p-hifu-candidate__item-heading {
  margin-bottom: 2rem;
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
@media screen and (max-width: 812px) {
  .p-hifu-candidate__item-heading {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 813px) {
  .p-hifu-candidate__item-heading {
    margin-bottom: 4rem;
  }
}
.p-hifu-candidate__item-num {
  font-size: 1.8rem;
  color: #C9A961;
  letter-spacing: 0.05em;
}
.p-hifu-candidate__item-body {
  display: flex;
  gap: 2rem;
  align-items: center;
}
.p-hifu-candidate__item-img {
  flex-shrink: 0;
  width: 140px;
}
.p-hifu-candidate__item-img img {
  width: 100%;
  height: auto;
  display: block;
}
.p-hifu-candidate__item-desc {
  flex: 1;
  font-size: 1.5rem;
  line-height: 1.8;
}

.p-hifu-pain {
  background-color: #fff;
  padding-bottom: 0;
}
.p-hifu-pain__text {
  font-size: 1.5rem;
  line-height: 1.8;
  margin-bottom: 2rem;
}
.p-hifu-pain__text:last-child {
  margin-bottom: 0;
}

.p-hifu-price {
  background-color: #fff;
  padding-bottom: 0;
}
.p-hifu-price__table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.5rem;
  margin-bottom: 1rem;
}
.p-hifu-price__table th,
.p-hifu-price__table td {
  height: 60px;
  padding: 0.5rem 1rem;
  text-align: center;
  vertical-align: middle;
  border: 1px solid #E8E3D7;
  line-height: 1.2;
}
@media screen and (max-width: 812px) {
  .p-hifu-price__table th,
  .p-hifu-price__table td {
    padding: 0.5rem 1rem;
    font-size: 1.3rem;
  }
}
.p-hifu-price__table th {
  font-weight: normal;
  background-color: #F7F6F4;
}
.p-hifu-price__table th:first-child {
  background-color: transparent;
  border: none;
  text-align: left;
  width: 27%;
}
@media screen and (max-width: 812px) {
  .p-hifu-price__table th:first-child {
    width: 33.3%;
  }
}
.p-hifu-price__table tbody td:first-child {
  background-color: #F7F6F4;
  text-align: left;
  font-size: 1.4rem;
}
.p-hifu-price__note {
  font-size: 1.1rem;
  margin-top: 1rem;
}
.p-hifu-price__link {
  margin-top: 1.5rem;
  font-size: 1.1rem;
  color: #8A8580;
}
@media screen and (max-width: 812px) {
  .p-hifu-price__link {
    text-align: right;
  }
}
.p-hifu-price__link a {
  color: #9b8a6f;
  text-decoration: underline;
}

.p-hifu-combination {
  background-color: #fff;
}
.p-hifu-combination__img {
  margin: 4rem 0;
}
.p-hifu-combination__img img {
  width: 100%;
  height: auto;
  display: block;
}
.p-hifu-combination__text {
  font-size: 1.5rem;
  line-height: 1.8;
  margin-bottom: 3.5rem;
}
.p-hifu-combination__text:last-of-type {
  margin-bottom: 6rem;
}
.p-hifu-combination__link {
  text-align: center;
}
@media screen and (max-width: 812px) {
  .p-hifu-combination__link {
    font-size: 1.2rem;
  }
}

.p-hifu-reason {
  background-color: #FBFAF6;
}
.p-hifu-reason .c-lined-heading {
  color: #746541;
  font-size: 1.8rem;
}
.p-hifu-reason__lead {
  font-size: 1.5rem;
  line-height: 1.8;
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.p-hifu-reason__item {
  margin-bottom: 4rem;
}
.p-hifu-reason__item:last-of-type {
  margin-bottom: 0;
}
.p-hifu-reason__img {
  margin: 3rem 0;
}
.p-hifu-reason__img img {
  width: 100%;
  height: auto;
  display: block;
}
.p-hifu-reason__desc {
  font-size: 1.5rem;
  line-height: 1.8;
  margin-bottom: 1.5rem;
}
.p-hifu-reason__desc:last-child {
  margin-bottom: 0;
}

.p-hifu-flow {
  background-color: #fff;
  padding-bottom: 0;
}
.p-hifu-flow__text {
  margin-top: 3rem;
  margin-bottom: 4rem;
  font-size: 1.5rem;
}
.p-hifu-flow .c-flow-list__title {
  margin-bottom: 0;
}
.p-hifu-flow .c-flow-list__desc {
  margin-bottom: 1.5rem;
}
.p-hifu-flow .c-flow-list__desc a {
  text-decoration: underline;
}

.p-hifu-cautions {
  background-color: #fff;
  padding-bottom: 0;
}
.p-hifu-cautions__section {
  margin-bottom: 5rem;
}
@media print, screen and (min-width: 813px) {
  .p-hifu-cautions__section {
    margin-bottom: 5rem;
  }
}
.p-hifu-cautions__section:last-child {
  margin-bottom: 0;
}
.p-hifu-cautions__section--approval {
  background-color: #FAF8F3;
  padding: 2rem;
}
@media print, screen and (min-width: 813px) {
  .p-hifu-cautions__section--approval {
    padding: 2rem;
  }
}
.p-hifu-cautions__lead {
  font-size: 1.5rem;
  line-height: 1.8;
  margin-bottom: 2rem;
}
.p-hifu-cautions__box {
  padding: 2rem 2.5rem;
}
.p-hifu-cautions__box--danger {
  border-left: 4px solid #C04040;
  background-color: #FDF6F6;
}
.p-hifu-cautions__box--info {
  border-left: 4px solid #D4A24A;
  background-color: #FDFAF2;
}
.p-hifu-cautions__box-label {
  font-size: 1.4rem;
  font-weight: normal;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  gap: 0.6rem;
}
.p-hifu-cautions__box-icon {
  font-size: 1.6rem;
}
.p-hifu-cautions__box--danger .p-hifu-cautions__box-icon {
  color: #C04040;
}
.p-hifu-cautions__box--info .p-hifu-cautions__box-icon {
  color: #D4A24A;
}
.p-hifu-cautions__list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5rem;
}
.p-hifu-cautions__list li {
  font-size: 1.4rem;
  line-height: 1.4;
  padding-left: 1.5rem;
  margin-bottom: 0.6rem;
  position: relative;
}
.p-hifu-cautions__list li::before {
  content: "・";
  position: absolute;
  left: 0;
}
.p-hifu-cautions__list li:last-child {
  margin-bottom: 0;
}
.p-hifu-cautions__note {
  font-size: 1.2rem;
  line-height: 1.8;
  border-top: 1px dashed #E0D8C8;
  padding-top: 1.5rem;
  color: #6B6359;
}
.p-hifu-cautions__approval-heading {
  font-size: 1.3rem;
  font-weight: normal;
  margin-bottom: 0.8rem;
  margin-top: 2.5rem;
  color: #3a3530;
}
.p-hifu-cautions__approval-heading:first-child {
  margin-top: 0;
}
.p-hifu-cautions__approval-text {
  font-size: 1.3rem;
  line-height: 1.8;
  color: #6B6359;
}

.p-hifu-overview {
  background-color: #fff;
  padding-bottom: 0;
}
.p-hifu-overview__list {
  border-top: 1px solid #e6dfcf;
  margin-top: 4rem;
}
.p-hifu-overview__item {
  padding: 1rem 1.5rem 1.5rem;
  border-bottom: 1px solid #e6dfcf;
}
.p-hifu-overview__label {
  font-size: 1.3rem;
  color: #a89d83;
  margin-bottom: 0.5rem;
}
.p-hifu-overview__value {
  font-size: 1.4rem;
}
.p-hifu-overview__value p {
  margin-bottom: 0.3rem;
}
.p-hifu-overview__value p:last-child {
  margin-bottom: 0;
}

.p-hifu-faq {
  background-color: #fff;
  padding-bottom: 0;
}
.p-hifu-faq .faq_cnt > div > dt {
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
}
.p-hifu-faq .faq_cnt > div > dt::before {
  font-size: 1.4rem;
  line-height: 2;
}
@media screen and (max-width: 812px) {
  .p-hifu-faq .faq_cnt > div > dt::before {
    font-size: 1.2rem;
  }
}
.p-hifu-faq .faq_cnt > div > dt.toggle svg {
  max-width: 18px;
  max-height: 18px;
}
@media screen and (max-width: 812px) {
  .p-hifu-faq .faq_cnt > div > dt.toggle svg {
    max-width: 14px;
    max-height: 14px;
  }
}
@media print, screen and (min-width: 813px) {
  .p-hifu-faq .faq_cnt > div > dt:hover {
    background-color: var(--lightBeigeColor);
    color: inherit;
  }
  .p-hifu-faq .faq_cnt > div > dt:hover::before {
    color: inherit;
  }
  .p-hifu-faq .faq_cnt > div > dt:hover.toggle svg {
    fill: var(--mainColor);
  }
}
.p-hifu-faq .faq_cnt > div > dd::before {
  font-size: 1.4rem;
  line-height: 2;
}
@media screen and (max-width: 812px) {
  .p-hifu-faq .faq_cnt > div > dd::before {
    font-size: 1.2rem;
  }
}

.p-hifu-price-table {
  background-color: #fff;
}
.p-hifu-price-table .c-deco-heading {
  margin-bottom: 2.5rem;
}
.p-hifu-price-table__table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.5rem;
  margin-bottom: 1rem;
}
.p-hifu-price-table__table th,
.p-hifu-price-table__table td {
  height: 60px;
  padding: 0 2.5rem;
  text-align: center;
  vertical-align: middle;
  border: 1px solid #E8E3D7;
  line-height: 1.2;
}
@media screen and (max-width: 812px) {
  .p-hifu-price-table__table th,
  .p-hifu-price-table__table td {
    padding: 0.5rem 1rem;
    font-size: 1.3rem;
  }
}
.p-hifu-price-table__table th {
  font-weight: normal;
  background-color: #F7F6F4;
}
.p-hifu-price-table__table th:first-child {
  background-color: transparent;
  border: none;
  text-align: left;
  width: 27%;
}
.p-hifu-price-table__table tbody td:first-child {
  background-color: #F7F6F4;
  text-align: left;
  font-size: 1.4rem;
}
.p-hifu-price-table__note {
  font-size: 1.1rem;
  margin-top: 2.5rem;
}
.p-hifu-price-table__desc {
  background-color: #F7F6F4;
  padding: 2rem 2.5rem;
  margin-top: 2rem;
  width: 100%;
}
.p-hifu-price-table__desc p {
  font-size: 1.3rem;
  line-height: 1.8;
  margin-bottom: 0.8rem;
}
.p-hifu-price-table__desc p:last-child {
  margin-bottom: 0;
}
.p-hifu-price-table__term {
  text-shadow: 0 0 0.4px currentColor;
}

body.hifu #menu {
  background-color: #F7F6F4;
}
