@charset "utf-8";
/*ベース_______________________________________*/
body {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  letter-spacing: 0.07em;
  line-height: 1.7;
  font-feature-settings: "palt";
  color: #333;
}
img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
body.menu_open {
  position: fixed;
  width: 100%;
  height: 100svh;
  height: 100vh;
}
.font_Serif {
  font-family: "Noto Serif JP", serif;
}
.font_crimson {
  font-family: "Crimson Text", serif;
}
.font_benne {
  font-family: "Benne", serif;
}
.font_corinthia {
  font-family: "Corinthia", cursive;
}
/*ヘッダー_______________________________________*/

h1.sitelogo {
  width: 23.75vw;
  margin: auto;
}

/*フッター_______________________________________*/
.block_footer {
  overflow: hidden;
  padding-top: 84px;
  background-color: #fff;
}
.block_footer .footer_inner {
}
.block_footer .footer_logo {
  max-width: 686px;
  margin: 0 auto 68px;
}
.block_footer .unit_data {
  display: flex;
  justify-content: space-between;
  margin-bottom: 96px;
}
.block_footer .unit_data .box_img {
  width: 69.375%;
  margin-left: -24.922%;
}
.block_footer .unit_data .box_data {
  width: 50%;
  display: flex;
  flex-flow: column;
  gap: 30px;
}
.block_footer .unit_data .box_data h3 {
  font-family: "Noto Serif JP";
  font-size: 24px;
  font-style: normal;
  font-weight: 300;
  line-height: 100%;
  letter-spacing: 0.08em;
  border-bottom: 1px solid #bb9c50;
  padding-bottom: 0.583em;
  margin-bottom: 1em;
}
.block_footer .reservation {
}
.block_footer .box_reservation {
  display: flex;
  justify-content: space-between;
}
.block_footer .reservation .btn00 {
  position: relative;
  z-index: 0;
  width: 48.75%;
  height: 3.667em;
  color: #fff;
  font-family: "Noto Serif JP";
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: 0.16em;
  display: flex;
  align-items: center;
  justify-content: center;
}
.block_footer .reservation .btn00::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: #666;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.block_footer .reservation .btn00.btn_web::before {
  background-color: #333;
}
.block_footer .reservation .btn00::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: rgba(255, 255, 255, 0.2);
  top: 0;
  right: 0;
  width: 53.9%;
  height: 100%;
  clip-path: polygon(40px 0, 100% 0, 100% 100%, 0% 100%);
}
.block_footer .reservation .btn00 .dec01 {
  display: flex;
  gap: 0.25em;
}
.block_footer .reservation .btn00 .dec01::before {
  content: "";
  display: block;
  background-image: url("../image/icon_phone.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 0.7083em;
  aspect-ratio: 17 / 25;
}
.block_footer .hours {
}
.block_footer .hours .house_inner {
  padding: 8px;
  background: linear-gradient(30deg, #c7b980 0%, #e1d5ad 43%, #f4eacf 100%);
  border-radius: 4px;
}
.block_footer .hours .box_hours {
  padding: 18px 24px;
  background-color: #fff;
  border-radius: 4px;
  font-size: 15px;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0.75px;
  letter-spacing: 0.05em;
}
.block_footer .hours .box_hours > div {
  display: flex;
  justify-content: space-between;
  padding-bottom: 8px;
  border-bottom: 1px solid #ddd;
}
.block_footer .hours .box_hours > div + div {
  margin-top: 17px;
}
.block_footer .hours .box_hours dt {
  width: 164px;
  text-align: center;
  font-weight: 400;
}
.block_footer .hours .box_hours .time dt {
  font-size: 1.2667em;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: 0.95px;
}
.block_footer .hours .box_hours dd {
  width: 3em;
  text-align: center;
}
.block_footer .access .box_images {
  display: flex;
  gap: 1.6em;
  text-align: center;
  font-size: 15px;
  font-weight: normal;
  line-height: 150%;
  letter-spacing: 0.05em;
  margin-top: 1.467em;
}
.block_footer .access .box_images > * {
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  height: 5.867em;
}
.block_footer .access .box_images .eki {
  width: 16.25%;
  background-color: #333333;
  gap: 0.348em;
  clip-path: polygon(0 0, 80% 0, 100% 50%, 80% 100%, 0 100%);
  margin-right: 0.033em;
  color: #fff;
  font-weight: 700;
}
.block_footer .access .box_images .eki img {
  width: 24.03%;
}
.block_footer .access .box_images .deguchi {
  width: 32.5%;
  background-color: #d4bdc7;
}
.block_footer .map {
  position: relative;
  z-index: 1;
  height: 336px;
  margin-bottom: -176px;
}
.block_footer .access .map iframe {
  height: 100%;
}
.block_footer small {
  position: relative;
  z-index: 0;
  display: flex;
  flex-flow: column;
  align-items: center;
  background: #333;
  padding: 209px 0 39px;
  color: #fff;
  text-align: center;
  font-family: "Crimson Text";
  font-size: 16px;
  font-style: italic;
  font-weight: 400;
  line-height: 150%; /* 24px */
  letter-spacing: 0.8px;
}
.block_footer small .dec01 {
  position: relative;
  z-index: 0;
  padding-bottom: 1.375em;
  margin-bottom: 1.1875em;
  letter-spacing: 0;
}
.block_footer small .dec01::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  background-color: #fff;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 1.067em;
  height: 1px;
}
@media screen and (max-width: 1200px) {
  .block_footer {
    padding-top: 82px;
  }
  .block_footer .block_inner {
    max-width: 83.334%;
  }
  .block_footer .footer_logo {
    max-width: 80.31%;
    margin: 0 auto 64px;
  }
  .block_footer .unit_data {
    flex-flow: column;
    gap: 50px;
    margin-bottom: 55px;
  }
  .block_footer .unit_data .box_img {
    width: 100%;
    margin-left: 0;
  }
  .block_footer .unit_data .box_data {
    width: 100%;
    gap: 32px;
  }
  .block_footer .map {
    width: 107.5%;
    margin-left: -3.75%;
  }
}
@media screen and (max-width: 767px) {
  .block_footer .block_inner {
    width: 600px;
    max-width: 87.69%;
  }
  .block_footer .footer_logo {
    max-width: 100%;
    margin: 0 auto min(calc(36 / 390 * 100vw), 36px);
  }
  .block_footer .unit_data {
    gap: min(calc(43 / 390 * 100vw), 43px);
    margin-bottom: min(calc(24 / 390 * 100vw), 24px);
  }
  .block_footer .unit_data .box_data h3 {
    text-align: center;
    font-size: min(calc(19 / 390 * 100vw), 19px);
    padding-bottom: 1em;
    margin-bottom: 1.579em;
  }
  .block_footer .box_reservation {
    flex-flow: column;
    align-items: center;
    gap: min(calc(16 / 390 * 100vw), 16px);
  }
  .block_footer .reservation .btn00 {
    width: 91.22%;
    height: 3.667em;
    font-size: min(calc(24 / 390 * 100vw), 24px);
  }
  .block_footer .hours .house_inner {
    display: contents;
  }
  .block_footer .hours .box_hours {
    padding: 0;
    font-size: min(calc(15 / 390 * 100vw), 15px);
  }
  .block_footer .hours .box_hours > div {
    align-items: center;
    border-bottom: 1px solid #bb9c50;
  }
  .block_footer .hours .box_hours > div + div {
    margin-top: min(calc(5 / 390 * 100vw), 5px);
  }
  .block_footer .hours .box_hours dt {
    width: 5em;
  }
  .block_footer .hours .box_hours .time dt {
    font-size: 1em;
  }
  .block_footer .hours .box_hours dd {
    width: 1.1em;
  }
  .block_footer .hours .box_hours dd:last-of-type {
    width: 3.3em;
  }
  .block_footer .access {
    display: flex;
    flex-flow: column;
  }
  .block_footer .access h3 {
    order: 1;
  }
  .block_footer .access address {
    order: 3;
    font-size: min(calc(15 / 390 * 100vw), 15px);
  }
  .block_footer .access .box_images {
    order: 2;
    font-size: min(calc(14 / 390 * 100vw), 14px);
    justify-content: space-between;
    gap: 0;
    margin-top: 0;
    margin-bottom: 14px;
  }
  .block_footer .access .box_images .eki {
    width: 30.4%;
  }
  .block_footer .access .box_images .eki img {
    width: 1.7857em;
  }
  .block_footer .access .box_images .deguchi {
    width: 30.4%;
  }
  .block_footer .map {
    width: 100%;
    height: min(calc(296 / 390 * 100vw), 296px);
    margin-left: 0;
    margin-bottom: -143px;
  }
  .block_footer small {
    padding: min(calc(181 / 390 * 100vw), 181px) 0 min(calc(38 / 390 * 100vw), 38px);
    font-size: min(calc(16 / 390 * 100vw), 16px);
    letter-spacing: 0.5px;
  }
  .block_footer small .dec01 {
    padding-bottom: min(calc(14 / 390 * 100vw), 14px);
    margin-bottom: min(calc(15 / 390 * 100vw), 15px);
  }
}
/*フッター(ダミー部分 ここまで)
_______________________________________*/
/*TOPへ戻るボタン*/
.to_top {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
  z-index: 99;
}
.to_top .inner {
  overflow: hidden;
  width: 1160px;
  max-width: 95%;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
}
.btn_to_top {
  transform: translateY(100%);
  opacity: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
  color: #fff;
  background-color: #ff0000;
  border-radius: 9999px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  pointer-events: none;
  cursor: pointer;
  transition: 0.3s;
}
.btn_to_top:hover {
  background-color: #fd4747;
}
.on .btn_to_top {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
@media screen and (max-width: 1024px) {
  .btn_to_top {
    width: 67px;
    height: 67px;
    font-size: 11px;
  }
}
/*セクション_______________________________________*/
/*MV*/
/*コンテンツ*/
/*コンテンツ　共用*/
/*各コンテンツ*/
.block_00 {
}
.block_inner {
  width: 1280px;
  max-width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 1280px) {
  .block_inner {
    max-width: 91.92%;
  }
}
@media screen and (max-width: 767px) {
  .block_inner {
    max-width: 87.69%;
  }
}
/*画像*/
/*コンテンツ　パーツ-------------------*/
@media screen and (min-width: 1281px) {
  .tb_on {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .sp_on {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .sp_off {
    display: none;
  }
}
.box_00 {
  background-color: var(--bg_color01);
  padding: var(--size_padding01);
}
/*見出し*/
.ttl00 {
  font-size: 40px;
  font-weight: normal;
  line-height: 1.7;
  letter-spacing: 0.08em;
  margin-bottom: 0.25em;
  padding: 0;
}
.ttl00 .size_l {
  font-size: 1.5em;
}
.fc01 {
  color: #c8b078;
}
.ff_crimson {
  font-family: "Crimson Text", serif;
}
.dec_line01 {
  background: linear-gradient(transparent 60%, #ffed61 60%);
}
.dec_line02 {
  background: linear-gradient(transparent 60%, rgba(200, 176, 120, 0.4) 60%);
  font-weight: 400;
}
.ttl02_1 {
  font-family: "Noto Serif JP";
  font-size: 64px;
  font-style: normal;
  font-weight: 300;
  line-height: 115%;
  letter-spacing: 0.04em;
  text-align: center;
}
.ttl02_1 .size_l {
  font-size: 1.25em;
}
@media screen and (max-width: 1280px) {
  .ttl02_1 {
    font-size: 26px;
  }
  .ttl02_1 .size_l {
    font-size: 1.54em;
  }
}
@media screen and (max-width: 767px) {
  .ttl02_1 {
    font-size: 32px;
    line-height: 1.25;
    letter-spacing: -0.04em;
  }
  .ttl02_1 .size_l {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 390px) {
  .ttl02_1 {
    font-size: calc(32 / 390 * 100vw);
  }
}
.ttl02_2 {
  font-size: 28px;
  font-style: normal;
  text-align: center;
  letter-spacing: 0.08em;
}
.ttl02_2 .dec01 {
  display: block;
  color: #c4b491;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0.06em;
  border-bottom: 1px solid #c4b491;
  padding-bottom: 0.5em;
  margin-bottom: 0.5357em;
}
.ttl02_2 .dec02 {
  font-family: "Noto Serif JP";
  font-size: 1.714em;
  font-style: normal;
  font-weight: 300;
  line-height: 135%; /* 64.8px */
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1280px) {
  .ttl02_2 {
    font-size: 21px;
  }
  .ttl02_2 .dec01 {
    padding-bottom: 0.962em;
    margin-bottom: 0.962em;
  }
}
@media screen and (max-width: 767px) {
  .ttl02_2 {
    font-size: min(calc(19 / 390 * 100vw), 19px);
  }
  .ttl02_2 .dec02 {
    font-size: 1.684em;
  }
  .ttl02_2 .dec01 {
    padding-bottom: 0.962em;
    margin-bottom: 0.962em;
  }
}
.ttl02_3 {
  color: #333;
  text-align: center;
  font-family: "Noto Serif JP";
  font-size: 36px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: 0.08em;
  display: flex;
  flex-flow: column;
  align-items: center;
  gap: 1.25em;
}
.ttl02_3 .dec01 {
  display: block;
  font-size: 1.5556em;
}
.ttl02_3 .dec01 .size_l {
  font-size: 2.429em;
  font-weight: 600;
  display: inline-block;
  transform: translateY(0.051em);
}
@media screen and (max-width: 1280px) {
  .ttl02_3 {
    font-size: 28px;
    gap: 1.1072em;
  }
  .ttl02_3 .dec01 {
    font-size: 1.464em;
  }
  .ttl02_3 .dec01 .size_l {
    font-size: 2.512em;
  }
}
@media screen and (max-width: 767px) {
  .ttl02_3 {
    font-size: min(calc(23 / 390 * 100vw), 23px);
    gap: 1.913em;
  }
  .ttl02_3 .dec01 {
    font-size: 1.5em;
    letter-spacing: 0.04em;
  }
  .ttl02_3 .dec01 .size_l {
    font-size: 2.889em;
    transform: translateY(-0.0384em);
  }
}
.ttl02_4 {
  color: #333;
  text-align: center;
  font-family: "Noto Serif JP";
  font-size: 48px;
  font-style: normal;
  font-weight: 300;
  line-height: 135%; /* 64.8px */
  letter-spacing: 0.08em;
  display: flex;
  flex-flow: column;
  align-items: center;
}
.ttl02_4 .dec01 {
  color: #c4b491;
  text-align: center;
  font-family: Corinthia;
  font-size: 72px;
  font-style: normal;
  font-weight: 400;
  line-height: 135%; /* 97.2px */
  letter-spacing: 0;
  mix-blend-mode: multiply;
}
@media screen and (max-width: 1280px) {
  .ttl02_4 {
    font-size: 40px;
  }
  .ttl02_4 .dec01 {
    font-size: 1.4em;
  }
}
@media screen and (max-width: 767px) {
  .ttl02_4 {
    font-size: min(calc(32 / 390 * 100vw), 32px);
  }
  .ttl02_4 .dec01 {
    font-size: 1.75em;
    margin-top: 0.2143em;
  }
}
.ttl02_5 {
  font-size: 32px;
  font-style: normal;
  text-align: center;
  letter-spacing: 0.08em;
  font-family: "Noto Serif JP";
}
.ttl02_5 .dec01 {
  display: block;
  color: #c4b491;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0.06em;
  border-top: 1px solid #c4b491;
  padding-top: 0.5em;
  margin-top: 0.5357em;
}
.ttl02_5 .dec02 {
  font-size: 1.5em;
  font-style: normal;
  font-weight: 300;
  line-height: 135%; /* 64.8px */
}
.ttl02_5 .dec02 .size_s {
  font-size: 0.667em;
}
@media screen and (max-width: 1280px) {
  .ttl02_5 {
    font-size: 28px;
  }
  .ttl02_5 .dec01 {
    padding-top: 0.607em;
    margin-top: 1.357em;
  }
  .ttl02_5 .dec02 {
    font-size: 1.285em;
  }
  .ttl02_5 .dec02 .size_s {
    font-size: 0.778em;
  }
}
@media screen and (max-width: 767px) {
  .ttl02_5 {
    font-size: min(calc(24 / 390 * 100vw), 24px);
  }
  .ttl02_5 .dec01 {
    padding-top: 0.5833em;
    margin-top: 0.8336em;
  }
  .ttl02_5 .dec02 {
    font-size: 1.334em;
    line-height: 130%;
  }
  .ttl02_5 .dec02 .size_s {
    font-size: 0.75em;
  }
}
.unit_link_01 .link_inner {
  position: relative;
  z-index: 1;
  width: 1524px;
  max-width: 79.37%;
  max-width: 90%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: 2.4285em;
  color: #fff;
  text-align: center;
  font-family: "Noto Serif JP";
  font-size: 28px;
  font-style: normal;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.08em;
}
.unit_link_01 .btn00 {
  position: relative;
  z-index: 0;
  width: 61.26%;
  height: 4.8em;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  gap: 0.42em;
}
.unit_link_01 .btn00.btn_tel {
  background-color: #666;
}
.unit_link_01 .btn00.btn_web {
  background-color: #333;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.unit_link_01 .btn00:before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: #333;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.unit_link_01 .btn00.btn_web:before {
  background-color: #333;
}
.unit_link_01 .btn00:after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: rgba(255, 255, 255, 0.15);
  top: 0;
  right: 0;
  width: 55.49%;
  height: 100%;
  clip-path: polygon(80px 0, 100% 0, 100% 100%, 0% 100%);
}
.unit_link_01 .btn00.btn_tel .dec01 {
  font-size: 1.7142em;
  display: flex;
  align-items: center;
  gap: 0.35em;
}
.unit_link_01 .btn00.btn_tel .dec01::before {
  content: "";
  display: block;
  background-image: url("../image/icon_phone.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 0.6667em;
  aspect-ratio: 17 / 25;
}
.unit_link_01 .btn00.btn_web .dec01 {
  font-size: 1.4285em;
}
.unit_link_01 .btn00 .dec01:after {
  content: "";
  display: block;
  position: absolute;
  z-index: -10;
  background-color: #888888;
  bottom: -12px;
  right: -12px;
  width: 91.2%;
  aspect-ratio: 664 / 128;
  opacity: 0.5;
  transition: 0.3s;
}
.unit_link_01 .btn00:hover .dec01::after {
  bottom: 0 !important;
  right: 0 !important;
}
@media screen and (max-width: 1280px) {
  .unit_link_01 .link_inner {
    font-size: calc(28 / 1280 * 100vw);
  }
  .unit_link_01 .btn00 .dec01:after {
    bottom: calc(-12 / 1280 * 100vw);
    right: calc(-12 / 1280 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  .unit_link_01 .btn00::after {
    width: 57.95%;
    clip-path: polygon(25.5% 0, 100% 0, 100% 100%, 0% 100%);
  }
  .block_float01 .unit_link_01 .link_inner {
    max-width: 93.075%;
    font-size: min(calc(13 / 390 * 100vw), 13px);
    justify-content: space-between;
    gap: 0;
  }
  .block_float01 .unit_link_01 .btn00 {
    position: relative;
    z-index: 0;
    width: 48.5%;
    height: 5.23em;
    border-radius: min(calc(7 / 390 * 100vw), 7px);
    overflow: hidden;
  }
  .block_float01 .unit_link_01 .btn00.btn_tel .dec01,
  .block_float01 .unit_link_01 .btn00.btn_web .dec01 {
    font-size: 1.231em;
    letter-spacing: 0.16em;
  }
  .block_float01 .unit_link_01 .btn00.btn_web .dec01 {
    letter-spacing: -0.08em;
  }
  .block_float01 .unit_link_01 .btn00 .dec01::after {
    display: none;
  }
}
.parts_contact01 {
}
.parts_contact01 .parts_link {
  max-width: 1120px;
  width: calc(100% - 32px);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: min(96px, 7vw);
}
.parts_contact01 .parts_link .btn00 {
    position: relative;
    z-index: 0;
    /* background-color: #666; */
    width: 69.11%;
    aspect-ratio: 842/176;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    gap: 0.35714em;
    color: #fff;
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 28px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 0.08em;
    padding: 32px 8px;
}
.parts_contact01 .parts_link .btn00.btn_web {
  gap: 1.035em;
}
.parts_contact01 .parts_link .btn00::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: #666;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.parts_contact01 .parts_link .btn00.btn_web::before {
  background-color: #333;
}
.parts_contact01 .parts_link .btn00::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -10;
    background-color: #888;
    opacity: 0.5;
    bottom: -10px;
    right: -10px;
    width: 91%;
    aspect-ratio: 744 / 144;
    transition: 0.3s;
}
.parts_contact01 .parts_link .btn00:hover::after {
  bottom: 0;
  right: 0;
}
.parts_contact01 .parts_link .btn00 .dec01 {
  font-size: 1.714em;
  line-height: 100%;
  letter-spacing: 0.16em;
}
.parts_contact01 .parts_link .btn00 .dec01::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: rgba(255, 255, 255, 0.2);
  top: 0;
  right: 0;
  width: 53.9%;
  height: 100%;
  clip-path: polygon(40px 0, 100% 0, 100% 100%, 0% 100%);
}
.parts_contact01 .parts_link .btn00.btn_tel .dec01 {
  display: flex;
  align-items: center;
  gap: 0.35em;
  font-size: 1.65em;
}
.parts_contact01 .parts_link .btn00.btn_tel .dec01::before {
  content: "";
  display: block;
  background-image: url("../image/icon_phone.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 0.6667em;
  aspect-ratio: 17 / 25;
}
.parts_contact01 .parts_link .btn00.btn_web .dec01 {
  font-size: 1.286em;
  letter-spacing: 0;
}
.parts_contact01 .parts_logo {
  width: 580px;
  margin: 112px auto 0;
}
.parts_contact01 .parts_data {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  color: #333;
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.08em;
  max-width: 800px;
  width: 100%;
  margin: auto;
  margin-top: 20px;
}
.parts_contact01 .parts_data dl {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
}
@media (max-width: 767px) {
  .parts_contact01 .parts_data {
    flex-direction: column;
  }
}
.parts_contact01 .parts_data dt {
  width: 6.5em;
  height: 2em;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-weight: normal;
  border: 1px solid #858585;
}

@media screen and (max-width: 1280px) {
  .parts_contact01 .parts_link .btn00 {
    font-size: calc(28 / 1280 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  .parts_contact01 .parts_link .btn00 .dec01::after {
    width: 57.95%;
    clip-path: polygon(25.5% 0, 100% 0, 100% 100%, 0% 100%);
  }
}
.text00 {
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.04em;
}
.text01 {
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1280px) {
  .text01 {
    font-size: 15px;
    letter-spacing: 0em;
  }
}
@media screen and (max-width: 1280px) {
  .text01 {
    font-size: min(calc(15 / 390 * 100vw), 15px);
  }
}
/*コンテンツ*/
/*各コンテンツ毎*/
/*.block_mv --------------------------*/
.block_mv {
  position: relative;
  z-index: 1;
  margin-top: 80px;
  padding: 0 clamp(24px, 3.12vw + 7px, 40px);
}
@media (max-width: 767px) {
  .block_mv {
    margin: 0;
    padding: 0;
  }
}
.block_mv .sitelogo {
  position: absolute;
  top: -80px;
  margin: auto;
  left: 0;
  right: 0;
  
  background-color: white;
  padding: 16px;
}
@media (max-width: 767px) {
  .block_mv .sitelogo {
    position: static;
    top: 0;
    width: 100%;
  }
}
.block_mv picture {
  display: block;
}
.block_mv picture img {
  object-fit: cover;
  height: 100%;
}
.block_mv .unit_link_01 {
  width: 100%;
  max-width: 1320px;
  bottom: -104px;
  margin: auto;
  margin-top: -40px;
}

@media screen and (max-width: 767px) {
  .block_mv picture {
    padding: 0 0;
  }
  .block_mv picture img {
    object-fit: contain;
    object-position: top center;
    width: 100%;
    height: auto;
    aspect-ratio: 585 / 1172;
  }
  .block_mv .unit_link_01 {
    display: block;
    bottom: 0;
    position: static;
    margin: auto;
  }
  .block_mv .unit_link_01 .btn00.btn_tel {
    display: none;
  }
  .block_mv .unit_link_01 .btn00 {
    width: 86.6%;
    height: 6.233em;
    font-size: min(calc(15.4 / 390 * 100vw), 15.4px);
  }
  .block_mv.unit_link_01 .btn00::after {
    clip-path: polygon(2.6em 0, 100% 0, 100% 100%, 0% 100%);
  }
  .block_mv .unit_link_01 .btn00 .dec01::after {
    width: 100%;
    height: 100%;
    bottom: -0.519em;
    right: -0.519em;
  }
}

/*.block_worries --------------------------*/
.block_worries {
  max-width: 1920px;
  margin: clamp(48px, 6.25vw + 7px, 72px) auto 0 auto;
}
.block_worries .block_inner {
  position: relative;
  z-index: 10;
}
.block_worries .unit01 {
  position: relative;
  z-index: 0;
  margin: 0 0;
  padding: 114px 0 0;
  height: 856px;
  background-image: url("../image/bi_worries.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
}
.block_worries .unit01 h2 {
  font-family: "Noto Serif JP";
  font-size: 40px;
  font-style: normal;
  font-weight: 300;
  line-height: 100%; /* 40px */
  letter-spacing: 0.08em;
  text-align: right;
  margin: 0 0 1.775em auto;
  width: 900px;
  padding-right: 1.1em;
}
.block_worries .list_worries01 {
  width: 900px;
  margin: 0 -60px 0 auto;
  display: flex;
  flex-flow: wrap;
}

/*----------------*/
.block_worries .list_worries00 {
  width: 900px;
  margin: 0 -60px 0 auto;
  display: flex;
  flex-flow: wrap;
}
.block_worries .list_worries00 .worries01_1 {
  position: relative;
  z-index: 0;
}
.block_worries .list_worries00 .worries01_1 {
  position: relative;
  z-index: 5;
  width: 25.777%;
  align-self: flex-start;
  aspect-ratio: 232 / 224;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
.block_worries .list_worries00 .worries01_1.parts02 {
  z-index: 3;
  margin-top: 1.86%;
  margin-left: 9.445%;
}
.block_worries .list_worries00 .worries01_1.parts03 {
  z-index: 1;
  margin-top: 1.7%;
  margin-left: 12.445%;
}
.block_worries .list_worries00 .worries01_1.parts04 {
  z-index: 4;
  margin-left: 15.11%;
  margin-top: -6.41%;
}
.block_worries .list_worries00 .worries01_1.parts05 {
  z-index: 2;
  margin-left: 16.22%;
  margin-top: -3.41%;
}
.block_worries .list_worries00 .worries01_1 div {
  position: relative;
  transition: 0.3s;
}
.block_worries .list_worries00 .worries01_1 div::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: #fff;
  top: 0;
  left: 0;
  transform-origin: center;
  width: 100%;
  height: 100%;
  box-shadow: 4px 8px 8px 0px rgba(0, 0, 0, 0.08);
  transition: 0.3s;
}
.block_worries .list_worries00 .worries01_1 .on::before {
  background-color: #f8f0f0;
}
.block_worries .list_worries00 .worries01_1.parts02 div::before {
  transform: rotate(-5deg);
}
.block_worries .list_worries00 .worries01_1.parts02 .off::before {
  transform: rotate(5deg);
}
.block_worries .list_worries00 .worries01_1.parts03 div::before {
  transform: rotate(4deg);
}
.block_worries .list_worries00 .worries01_1.parts03 .off::before {
  transform: rotate(-4deg);
}
.block_worries .list_worries00 .worries01_1.parts04 div::before {
  transform: rotate(10deg);
}
.block_worries .list_worries00 .worries01_1.parts04 .off::before {
  transform: rotate(-10deg);
}
.block_worries .list_worries00 .worries01_1 div {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  gap: 1em;
  color: #6fb5d3;
  text-align: center;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0;
  transition: 0.3s;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.block_worries .list_worries00 .worries01_1 .on {
  color: #e898b0;
  flex-flow: column-reverse;
  transform: rotateY(180deg);
  opacity: 0;
}
.block_worries .list_worries00 .worries01_1 > *::after {
  content: "";
  display: block;
  background-image: url("../image/arrow01.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 2em;
  aspect-ratio: 1;
}
.block_worries .list_worries00 .worries01_1 > .on::after {
  background-image: url("../image/arrow02.svg");
}
.block_worries .list_worries00 .worries01_1:hover .on,
.block_worries .list_worries00 .worries01_1:active .on {
  transform: rotateY(0);
  opacity: 1;
}
.block_worries .list_worries00 .worries01_1:hover .off,
.block_worries .list_worries00 .worries01_1:active .off {
  transform: rotateY(180deg);
  opacity: 0;
}
/*---------------------*/
.block_worries .list_worries01 {
  width: 900px;
  margin: 0 -60px 0 auto;
  display: flex;
  flex-flow: wrap;
  cursor: pointer;
}
.block_worries .list_worries01 .worries01_1 {
  position: relative;
  z-index: 0;
  width: 25.777%;
  align-self: flex-start;
  aspect-ratio: 232 / 224;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
.block_worries .list_worries01 .worries01_1.parts01 {
  z-index: 5;
}
.block_worries .list_worries01 .worries01_1.parts02 {
  z-index: 3;
  margin-top: 1.86%;
  margin-left: 9.445%;
}
.block_worries .list_worries01 .worries01_1.parts03 {
  z-index: 1;
  margin-top: 1.7%;
  margin-left: 12.445%;
}
.block_worries .list_worries01 .worries01_1.parts04 {
  z-index: 4;
  margin-left: 15.11%;
  margin-top: -6.41%;
}
.block_worries .list_worries01 .worries01_1.parts05 {
  z-index: 2;
  margin-left: 16.22%;
  margin-top: -3.41%;
}
.block_worries .list_worries01 .worries01_1 div {
  position: relative;
  transition: 0.3s;
}
.block_worries .list_worries01 .worries01_1 div::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: #fff;
  top: 0;
  left: 0;
  transform-origin: center;
  width: 100%;
  height: 100%;
  box-shadow: 4px 8px 8px 0px rgba(0, 0, 0, 0.08);
  transition: 0.3s;
}
.block_worries .list_worries01 .worries01_1 .on::before {
  background-color: #f8f0f0;
}
.block_worries .list_worries01 .worries01_1.parts02 div::before {
  transform: rotate(5deg);
}
.block_worries .list_worries01 .worries01_1.parts02 .off::before {
  transform: rotate(-5deg);
}
.block_worries .list_worries01 .worries01_1.parts03 div::before {
  transform: rotate(-4deg);
}
.block_worries .list_worries01 .worries01_1.parts03 .off::before {
  transform: rotate(4deg);
}
.block_worries .list_worries01 .worries01_1.parts04 div::before {
  transform: rotate(-10deg);
}
.block_worries .list_worries01 .worries01_1.parts04 .off::before {
  transform: rotate(10deg);
}
.block_worries .list_worries01 .worries01_1 div {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  gap: 1em;
  color: #6fb5d3;
  text-align: center;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0;
  transition: 0.3s;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.block_worries .list_worries01 .worries01_1 .on {
  color: #e898b0;
  flex-flow: column-reverse;
  transform: rotateY(180deg);
  opacity: 0;
}
.block_worries .list_worries01 .worries01_1 > *::after {
  content: "";
  display: block;
  background-image: url("../image/arrow_down.webp");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 42px;
  height: 42px;
  aspect-ratio: 1;
}
.block_worries .list_worries01 .worries01_1 > .on::after {
  background-image: url("../image/arrow_up.webp");
}

.block_worries .list_worries01 .worries01_1.open .on {
  transform: rotateY(0);
  opacity: 1;
}
.block_worries .list_worries01 .worries01_1.open .off {
  transform: rotateY(180deg);
  opacity: 0;
}
.block_worries .unit02 {
  position: relative;
  z-index: 0;
  background-color: #f6f6f6;
  padding-bottom: 105px;
}
.block_worries .unit02 .ttl02_2 {
  margin-bottom: 3.1em;
}
.block_worries .unit02 .list_worries02 {
  position: relative;
  z-index: 2;
  padding: 0 0.9375%;
  display: flex;
  justify-content: space-between;
  margin-bottom: 120px;
}
.block_worries .unit02 .list_worries02 .worries02_2 {
  background-color: #fff;
  width: 31.21%;
  text-align: center;
  font-size: 20px;
  font-style: normal;
  font-weight: 300;
  line-height: 135%; /* 27px */
  letter-spacing: 1.6px;
  padding-bottom: 1.3em;
}
.block_worries .unit02 .list_worries02 .worries02_2 h3 {
  background-color: #ddd4b1;
  font-family: "Noto Serif JP";
  font-size: 1.4em;
  font-weight: 400;
  line-height: 135%; /* 37.8px */
  letter-spacing: 2.24px;
  padding: 30px 0 44px;
  margin-bottom: 0.7142em;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 32px), 50% 100%, 0 calc(100% - 32px));
}
@media screen and (max-width: 1403px) {
  .block_worries .list_worries01 {
    margin: 0 0 0 auto;
  }
}
@media screen and (max-width: 1280px) {
  .block_worries .unit01 {
    position: relative;
    padding: calc(75px + 0.09765625 * (100vw - 768px)) 0 calc(106px + 0.41015625 * (100vw - 768px));
    height: auto;
    background-image: url("../image/bi_worries_tb.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
  }
  .block_worries .unit01 h2 {
    font-family: "Noto Serif JP";
    font-size: 36px;
    line-height: 136%;
    text-align: center;
    margin: 0 auto 1.722em;
    width: 100%;
    padding-right: 0;
  }
  .block_worries .list_worries01 {
    width: 100%;
    margin: 0 0 0 auto;
  }
  .block_worries .list_worries01 .worries01_1 {
    z-index: 5;
    width: 26.5%;
  }
  .block_worries .list_worries01 .worries01_1.parts02 {
    margin-top: 0.46%;
    margin-left: 9.445%;
  }
  .block_worries .list_worries01 .worries01_1.parts03 {
    z-index: 1;
    margin-top: 0.35%;
    margin-left: 9.2567%;
  }
  .block_worries .list_worries01 .worries01_1.parts04 {
    margin-left: 20.61%;
    margin-top: -5.01%;
  }
  .block_worries .list_worries01 .worries01_1.parts05 {
    z-index: 2;
    margin-left: 6.42%;
    margin-top: -3.41%;
  }
  .block_worries .list_worries01 .worries01_1 div {
    font-size: calc(16px + 0.015625 * (100vw - 768px));
  }
}
@media screen and (max-width: 767px) {
  .block_worries .unit01 {
    padding: min(calc(71 / 390 * 100vw), 71px) 0 min(calc(121 / 390 * 100vw), 121px);
    background-image: url("../image/bi_worries_sp.png");
    background-position: bottom center;
  }
  .block_worries .unit01 h2 {
    font-size: min(calc(30 / 390 * 100vw), 30px);
    width: 12em;
    margin: 0 auto 2.434em;
  }
  .block_worries .list_worries01 .worries01_1 {
    width: 55.84%;
  }
  .block_worries .list_worries01 .worries01_1.parts01 {
    order: 1;
    z-index: 5;
    margin-left: 3%;
  }
  .block_worries .list_worries01 .worries01_1.parts04 {
    order: 2;
    margin-top: -10.53%;
    margin-left: auto;
  }
  .block_worries .list_worries01 .worries01_1.parts02 {
    order: 3;
    margin-top: -23.4%;
    margin-left: -2.526%;
  }
  .block_worries .list_worries01 .worries01_1.parts05 {
    order: 4;
    z-index: 2;
    margin-top: -13.9%;
    margin-left: auto;
    margin-right: -2%;
  }
  .block_worries .list_worries01 .worries01_1.parts03 {
    order: 5;
    z-index: 1;
    margin-top: -12%;
    margin-left: 0;
  }
  .block_worries .list_worries01 {
    max-width: 500px;
    margin: 0 auto;
  }
  .block_worries .list_worries01 .worries01_1 div {
    font-size: min(calc(16 / 390 * 100vw), 20px);
    gap: 1.625em;
  }
}
.block_worries .unit02 {
  position: relative;
  z-index: 0;
  background-color: #f6f6f6;
  padding-bottom: 105px;
}
.block_worries .unit02 .ttl02_2 {
  margin-bottom: 3.1em;
}
.block_worries .unit02 .list_worries02 {
  position: relative;
  z-index: 2;
  padding: 0 0.9375%;
  display: flex;
  justify-content: space-between;
  margin-bottom: 120px;
}
.block_worries .unit02 .list_worries02 .worries02_2 {
  background-color: #fff;
  width: 31.21%;
  text-align: center;
  font-size: 20px;
  font-style: normal;
  font-weight: 300;
  line-height: 135%; /* 27px */
  letter-spacing: 1.6px;
  padding-bottom: 1.3em;
}
.block_worries .unit02 .list_worries02 .worries02_2 h3 {
  background-color: #ddd4b1;
  font-family: "Noto Serif JP";
  font-size: 1.4em;
  font-weight: 400;
  line-height: 135%; /* 37.8px */
  letter-spacing: 2.24px;
  padding: 30px 0 44px;
  margin-bottom: 0.7142em;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 32px), 50% 100%, 0 calc(100% - 32px));
}
@media screen and (max-width: 1280px) {
  .block_worries .unit02 {
    padding-bottom: 53px;
  }
  .block_worries .unit02 .ttl02_2 {
    margin-bottom: 2.857em;
  }
  .block_worries .unit02 .list_worries02 {
    flex-flow: wrap;
    justify-content: center;
    gap: 24px 3%;
    margin-bottom: 90px;
    padding: 0;
  }
  .block_worries .unit02 .list_worries02 .worries02_2 {
    width: max(342px, 40%);
    font-size: 17px;
  }
}
.block_worries .unit02 .list_worries02 .worries02_2 h3 {
  font-size: 1.294em;
  padding: 24px 0 34px;
}
.parts_contact01 .parts_link {
  padding: 0 2.62%;
}
@media screen and (max-width: 1024px) {
  .parts_contact01 .parts_logo {
    width: 61.75%;
    margin: 82px auto 0;
  }
  .parts_contact01 .parts_logo .data {
    font-size: 14px;
    /*gap: 0%;
            justify-content: space-between;*/
    margin-top: 0.714em;
  }
  .parts_contact01 .parts_logo .data .cont {
    width: auto;
    gap: 0.71em;
  }
  .parts_contact01 .parts_logo .data .cont:first-of-type {
    margin-left: 0;
  }
  .parts_contact01 .parts_logo .data .cont dt {
    width: 6.42em;
  }
  .parts_contact01 .parts_logo .data .cont:nth-of-type(2) dt {
    width: 4.57em;
  }
  .parts_contact01 .parts_link {
    padding: 0 4.17%;
  }
  .parts_contact01 .parts_link .btn00 {
    position: relative;
    z-index: 0;
    background-color: #666;
    width: 45.45%;
    aspect-ratio: 304/96;
    gap: 0.647em;
    font-size: calc(17 / 768 * 100vw);
  }
  .parts_contact01 .parts_link .btn00.btn_web {
    gap: 0.529em;
  }
  .parts_contact01 .parts_link .btn00::after {
    bottom: -0.588em;
    right: -0.588em;
  }
}
@media screen and (max-width: 767px) {
  .block_worries .unit02 {
    padding-bottom: min(calc(64 / 390 * 100vw), 64px);
  }
  .block_worries .unit02 .list_worries02 {
    gap: 16px 3%;
    margin-bottom: min(calc(80 / 390 * 100vw), 80px);
  }
  .block_worries .unit02 .list_worries02 .worries02_2 {
    width: max(342px, 60%);
    font-size: min(calc(17 / 390 * 100vw), 17px);
  }
  .block_worries .unit02 .list_worries02 .worries02_2 h3 {
    font-size: 1.2941em;
    padding: 1.2em 0 1.454em;
    clip-path: polygon(0 0, 100% 0, 100% 72%, 50% 100%, 0 72%);
  }
  .parts_contact01 .parts_link {
    width: 500px;
    max-width: 100%;
    padding: 0 5.556%;
    flex-flow: column;
    gap: min(calc(40 / 390 * 100vw), 40px);
  }
  .parts_contact01 .parts_link .btn00 {
    position: relative;
    z-index: 0;
    background-color: #666;
    width: 100%;
    gap: 0.647em;
    font-size: min(calc(17 / 390 * 100vw), 20px);
    padding: 0;
  }
  .parts_contact01 .parts_logo {
    width: clamp(100%, 327px, 70%);
    margin: min(calc(54 / 390 * 100vw), 54px) auto 0;
  }
  .parts_contact01 .parts_logo .data {
    font-size: min(calc(14 / 390 * 100vw), 16px);
    gap: 1.5em;
    justify-content: center;
    margin-top: 0.714em;
  }
}
/*.block_teeth --------------------------*/
.block_teeth {
  overflow: hidden;
  position: relative;
  z-index: 0;
  background-color: #e4ebf0;
  margin: 0 0;
  padding: 113px 0 72px;
}
.block_teeth h2 {
  font-family: "Noto Serif JP";
  font-size: 40px;
  font-style: normal;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.08em;
  text-align: center;
  margin-bottom: 105px;
  margin-bottom: 2.55em;
}
.block_teeth .list_teeth {
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
  gap: 32px 0;
}
.block_teeth .list_teeth .teeth00 {
  position: relative;
  z-index: 1;
  width: 23.125%;
  aspect-ratio: 1;
  background-color: #fff;
  border-radius: 9999px;
  cursor: pointer;
}
.block_teeth .list_teeth .teeth00 .box_img {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  gap: 1.455em;
  color: #888;
  text-align: center;
  font-family: "Noto Serif JP";
  font-size: 22px;
  font-style: normal;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: 0;
  transition: 0.3s;
}
/*.block_teeth .list_teeth .teeth00:hover .box_img, .block_teeth .list_teeth .teeth00:active .box_img {
    opacity: 0;
}*/
.block_teeth .list_teeth .teeth00.open .box_img {
  opacity: 0;
}
.block_teeth .list_teeth .teeth00 .box_img img {
  width: 48.64%;
  margin: 0 auto;
  transition: 0.3s;
}
.block_teeth .list_teeth .teeth00:hover .box_img img,
.block_teeth .list_teeth .teeth00:active .box_img img {
  transform: scale(1.1);
}
.block_teeth .list_teeth .teeth00 .box_text {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #c9b378;
  opacity: 0;
  transition: 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 13.43%;
  border-radius: 999px;
  color: #fff;
  text-align: justify;
  font-size: 17px;
  font-style: normal;
  font-weight: 500;
  line-height: 190%;
  letter-spacing: 0;
}
.block_teeth .list_teeth .teeth00 .box_text::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: #fff;
  opacity: 0.2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 999px;
  transform: rotate(45deg);
  clip-path: polygon(50% 0, 100% 0, 100% 100%, 50% 100%);
}
/*.block_teeth .list_teeth .teeth00:hover .box_text, .block_teeth .list_teeth .teeth00:active .box_text {
    z-index: 1;
    opacity: 1;
}*/
.block_teeth .list_teeth .teeth00.open .box_text {
  z-index: 1;
  opacity: 1;
}
@media screen and (max-width: 1280px) {
  .block_teeth {
    padding: 71px 0 13px;
  }
  .block_teeth h2 {
    font-size: 36px;
    line-height: normal;
    margin-bottom: 54px;
  }
  .block_teeth .list_teeth {
    justify-content: center;
    gap: 16px 2.45%;
    padding: 0 3.54%;
  }
  .block_teeth .list_teeth .teeth00 {
    width: 31.7%;
  }
  .block_teeth .list_teeth .teeth00 .box_img {
    font-size: 18px;
    font-size: calc(18 / 768 * 100vw);
  }
  .block_teeth .list_teeth .teeth00 .box_text {
    font-size: 13px;
    font-size: calc(13 / 768 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  .block_teeth {
    padding: min(calc(87 / 390 * 100vw), 87px) px 0 min(calc(64 / 390 * 100vw), 64px);
  }
  .block_teeth .block_inner {
    max-width: 94.35%;
  }
  .block_teeth h2 {
    font-size: min(calc(32 / 390 * 100vw), 32px);
    line-height: normal;
    margin-bottom: min(calc(59 / 390 * 100vw), 59px);
  }
  .block_teeth .list_teeth {
    max-width: 500px;
    margin: 0 auto;
    gap: min(calc(16 / 390 * 100vw), 16px) 4.34%;
    padding: 0;
  }
  .block_teeth .list_teeth .teeth00 {
    width: 47.82%;
  }
  .block_teeth .list_teeth .teeth00 .box_img {
    font-size: min(calc(16 / 390 * 100vw), 18px);
    gap: 1em;
  }
  .block_teeth .list_teeth .teeth00 .box_text {
    font-size: min(calc(11.5 / 390 * 100vw), 15px);
  }
}
/*.block_suggestion --------------------------*/
.block_suggestion {
  overflow: hidden;
  position: relative;
  z-index: 0;
  background: url("../image/bi_suggestion.png") 0% 0% / 8px 8px repeat;
  margin: 0 0;
  padding: 200px 0 135px;
}
.block_suggestion::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  background-color: #e4ebf0;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  top: -1px;
  left: 50%;
  transform: translateX(-50%);
  height: 80px;
  aspect-ratio: 1920 / 80;
}
.block_suggestion h2 {
  margin-bottom: 72px;
}
.block_suggestion .cont_suggestion {
  position: relative;
  z-index: 0;
  display: flex;
  flex-flow: wrap;
  justify-content: center;
  gap: 0 18.75%;
}
.block_suggestion .cont_suggestion .suggestion00 {
  width: 37.5%;
  list-style-type: none;
}
.block_suggestion .cont_suggestion::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  background-image: url("../image/dec_suggestion01.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  top: 175px;
  left: 50%;
  transform: translate(-50%, 0);
  width: 10.467%;
  aspect-ratio: 134 / 136;
}
.block_suggestion .cont_suggestion .suggestion00 figure {
  margin-bottom: 42px;
}
.block_suggestion .cont_suggestion .suggestion00 .list_advantage {
  display: flex;
  flex-flow: column;
  gap: 16px;
  text-align: center;
  font-size: 20px;
  font-style: normal;
  font-weight: 300;
  line-height: 200%;
  letter-spacing: 1.6px;
  letter-spacing: 0.08em;
}
.block_suggestion .cont_suggestion .suggestion00 .list_advantage .advantage00 {
  background-color: #ece4cf;
  border-radius: 99px;
  height: 2.8em;
  display: flex;
  justify-content: center;
  align-items: center;
}
.block_suggestion .cont_suggestion .suggestion00 .list_advantage .advantage00:nth-of-type(2n) {
  background-color: #f6f2e4;
}
.block_suggestion .cont_suggestion .suggestion02 .list_advantage .advantage00 {
  background-color: #a4c1dc;
}
.block_suggestion .cont_suggestion .suggestion02 .list_advantage .advantage00:nth-of-type(2n) {
  background-color: #d5e3ef;
}
@media screen and (max-width: 1280px) {
  .block_suggestion {
    padding: 152px 0 88px;
  }
  .block_suggestion::after {
    width: 100%;
    aspect-ratio: unset;
  }
  .block_suggestion h2 {
    margin-bottom: 30px;
  }
  .block_suggestion h2 .size_m {
    font-size: 0.77em;
  }
  .block_suggestion .cont_suggestion {
    gap: 0 7.1%;
  }
  .block_suggestion .cont_suggestion::after {
    top: calc(70px + 0.078125 * (100vw - 768px));
    width: 13.04%;
  }
  .block_suggestion .cont_suggestion .suggestion00 {
    width: 46.45%;
    list-style-type: none;
  }
  .block_suggestion .cont_suggestion .suggestion00 figure {
    width: 75.69%;
    margin: 0 auto 41px;
  }
  .block_suggestion .cont_suggestion .suggestion00 .list_advantage {
    font-size: min(calc(14 / 768 * 100vw), 20px);
  }
}
@media screen and (max-width: 767px) {
  .block_suggestion {
    padding: min(calc(102 / 390 * 100vw), 102px) 0 min(calc(88 / 390 * 100vw), 88px);
  }
  .block_suggestion .block_inner {
    max-width: 92.3%;
  }
  .block_suggestion::after {
    bottom: min(calc(-39 / 390 * 100vw), -39px);
    height: min(calc(40 / 390 * 100vw), 40px);
  }
  .block_suggestion h2 {
    margin-bottom: min(calc(47 / 390 * 100vw), 47px);
  }
  .block_suggestion h2 .size_m {
    font-size: 0.75em;
  }
  .block_suggestion h2 .dec02 {
    line-height: 1.15;
  }
  .block_suggestion .cont_suggestion {
    max-width: 600px;
    margin: 0 auto;
    justify-content: space-between;
    gap: 0;
  }
  .block_suggestion .cont_suggestion::after {
    top: 431px;
    width: min(calc(90 / 390 * 100vw), 90px);
  }
  .block_suggestion .cont_suggestion .suggestion00 {
    display: contents;
  }
  .block_suggestion .cont_suggestion .suggestion00 .list_advantage {
    width: 48.889%;
    font-size: min(calc(13 / 390 * 100vw), 16px);
    line-height: 1.35;
    gap: min(calc(8 / 390 * 100vw), 8px);
  }
  .block_suggestion .cont_suggestion .suggestion01 .list_advantage {
    order: 3;
  }
  .block_suggestion .cont_suggestion .suggestion02 .list_advantage {
    order: 4;
  }
  .block_suggestion .cont_suggestion .suggestion00 .list_advantage .advantage00 {
    border-radius: min(calc(12 / 390 * 100vw), 12px);
    height: 4.3em;
  }
  .block_suggestion .cont_suggestion .suggestion00 figure {
    width: 69.17%;
    margin: 0 auto min(calc(34 / 390 * 100vw), 34px);
  }
  .block_suggestion .cont_suggestion .suggestion01 figure {
    order: 1;
    margin-bottom: min(calc(130 / 390 * 100vw), 130px);
  }
  .block_suggestion .cont_suggestion .suggestion02 figure {
    order: 2;
  }
}
@media screen and (max-width: 650px) {
  .block_suggestion .cont_suggestion::after {
    top: min(calc(449 / 650 * 100vw), 449px);
  }
}
/*.block_reason --------------------------*/
.block_reason {
  overflow: hidden;
  position: relative;
  z-index: 0;
  margin: 0 0;
  padding: 117px 0 120px;
}
.block_reason .ttl02_3 {
  margin-bottom: 132px;
}
.block_reason .list_reason {
}
.block_reason .list_reason .reason00 {
  display: flex;
}
.block_reason .list_reason .reason00:nth-of-type(n + 2) {
  margin-top: -15px;
}
.block_reason .list_reason .reason00 .box_img {
  width: 63.125%;
  margin: 0 0 0 -13.125%;
}
.block_reason .list_reason .reason00 .box_text {
  width: 50%;
  display: flex;
  flex-flow: column;
  justify-content: center;
  padding: 25px 0 0 6.875%;
  font-weight: 300;
  line-height: 200%;
}
.block_reason .list_reason .reason00 .box_text h3 {
  position: relative;
  z-index: 0;
  font-family: "Noto Serif JP";
  font-size: 2em;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: 0.08em;
  padding-bottom: 0.84375em;
  margin-bottom: 0.6255em;
}
.block_reason .list_reason .reason00 .box_text h3::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  background-color: #cabb9b;
  bottom: 0;
  right: 0;
  width: 116%;
  height: 1px;
}
.block_reason .list_reason .reason00:nth-of-type(even) .box_text h3::after {
  right: auto;
  left: 0;
}
.block_reason .list_reason .reason00 .box_text h3 .dec01 {
  display: block;
  font-family: "Benne", serif;
  font-size: 1.25em;
  margin-bottom: 0.475em;
  margin-top: 0.475em;
}
.block_reason .list_reason .reason00 .box_text h3 .dec01 .no {
  font-size: 1.25em;
}
.block_reason .list_reason .reason00:nth-of-type(even) {
  flex-flow: row-reverse;
}
.block_reason .list_reason .reason00:nth-of-type(even) .box_text {
  padding: 0 6.875% 0 0;
}
.block_reason .list_reason .reason00:nth-of-type(even) .box_img {
  width: 63.125%;
  margin: 0 -13.125% 0 0;
}
.block_reason .list_reason .reason00 .btn_reason {
  background-color: #c8b078;
  color: #fff;
  font-size: 1.125em;
  letter-spacing: 0.08em;
  font-weight: 400;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 432px;
  aspect-ratio: 432 / 64;
  border-radius: 5px;
  margin-top: 1.444em;
}
@media screen and (max-width: 1280px) {
  .block_reason {
    padding: 80px 0 70px;
  }
  .block_reason .ttl02_3 {
    margin-bottom: 109px;
  }
  .block_reason .list_reason .reason00,
  .block_reason .list_reason .reason00:nth-of-type(2n) {
    flex-flow: column;
    margin-top: 0;
  }
  .block_reason .list_reason .reason00:nth-of-type(n + 2) {
    margin-top: 64px;
  }
  .block_reason .list_reason .reason00 .box_img {
    width: 103.11%;
    margin: 0 0 0 -4.4%;
  }
  .block_reason .list_reason .reason00:nth-of-type(2n) .box_img {
    width: 103.11%;
    margin: 0 -4.4% 0 0;
  }
  .block_reason .list_reason .reason00 .box_text h3 .dec01 {
    margin-bottom: 0.125em;
  }
  .block_reason .list_reason .reason00 .box_text {
    width: 89.235%;
    margin: 0 auto;
    padding: 25px 0 0;
  }
  .block_reason .list_reason .reason00 .box_text h3::after {
    width: 100%;
  }
  .block_reason .list_reason .reason00 .box_text .text01 {
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 767px) {
  .block_footer {
    padding-top: min(calc(86 / 390 * 100vw), 86px);
  }
  .block_reason {
    padding: min(calc(74 / 390 * 100vw), 74px) 0 min(calc(87 / 390 * 100vw), 87px);
  }
  .block_reason .ttl02_3 {
    margin-bottom: min(calc(73 / 390 * 100vw), 73px);
  }
  .block_reason .list_reason .reason00:nth-of-type(n + 2) {
    margin-top: min(calc(65 / 390 * 100vw), 65px);
  }
  .block_reason .list_reason .reason00 .box_img {
    width: 107.02%;
    margin: 0 0 0 -6.9%;
  }
  .block_reason .list_reason .reason00:nth-of-type(2n) .box_img {
    width: 107.02%;
    margin: 0;
  }
  .block_reason .list_reason .reason00 .box_text, .block_reason .list_reason .reason00:nth-of-type(even) .box_text {
    width: 100%;
    padding: min(calc(32 / 390 * 100vw), 32px) 0 0;
  }
  .block_reason .list_reason .reason00 .box_text h3 {
    font-size: min(calc(22 / 390 * 100vw), 22px);
    letter-spacing: 0;
    padding-bottom: 1.045em;
    margin-bottom: 0.818em;
  }
  .block_reason .list_reason .reason00 .box_text h3 .dec01 {
    font-size: 1.455em;
    margin-bottom: 0.125em;
    letter-spacing: 0.04em;
  }
  .block_reason .list_reason .reason00 .box_text h3 .dec01 .no {
    font-size: 1.5em;
  }
  .block_reason .list_reason .reason00 .btn_reason {
    font-size: min(calc(16 / 390 * 100vw), 16px);
    aspect-ratio: unset;
    height: 3em;
    border-radius: min(calc(5 / 390 * 100vw), 5px);
    margin-top: 1.444em;
  }
}
/*.block_contact --------------------------*/
.block_contact {
  position: relative;
  z-index: 0;
  margin: 0 0;
  padding: 104px 0 73px;
  background-color: #fff;
}
.block_contact::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background: url("../image/bi_contact01.png") 0% 0% / 14px 14px repeat;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 100%;
  aspect-ratio: 1920 / 600;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 166px);
  mix-blend-mode: multiply;
}
.block_contact::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -2;
  background: linear-gradient(120deg, #e1d7af 22.67%, #f4f0e0 83.66%);
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 100%;
  height: 100%;
  clip-path: polygon(0 calc(100% - 166px), 100% 0, 100% 100%, 0 100%);
}
.block_contact .ttl02_4 {
  margin-bottom: 1.166em;
}
@media screen and (max-width: 1280px) {
  .block_contact {
    padding: 70px 0 76px;
  }
  .block_contact::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background: url("../image/bi_contact01.png") 0% 0% / 14px 14px repeat;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    width: 100%;
    aspect-ratio: 768 / 410;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 166px);
  }
  .block_contact .ttl02_4 {
    margin-bottom: 1.525em;
  }
}
@media screen and (max-width: 767px) {
  .block_contact {
    padding: min(calc(79 / 390 * 100vw), 79px) 0 min(calc(75 / 390 * 100vw), 75px);
  }
  .block_contact::before {
    aspect-ratio: 390 / 592;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 31.08%);
  }
  .block_contact::after {
    background: linear-gradient(120deg, #e1d7af 22.67%, #f4f0e0 83.66%);
  }
}
/*.block_system --------------------------*/
.block_system {
  position: relative;
  z-index: 0;
  margin: 0 0;
  padding: 111px 0 132px;
  background-color: #e9eff3;
}
.block_system .ttl02_2 {
  margin-bottom: 2.429em;
}
.block_system .ttl02_2 + .text01 {
  width: 856px;
  max-width: 100%;
  margin: 0 auto 5em;
  text-align: center;
}
.block_system .box_system {
  display: flex;
  justify-content: space-between;
}
.block_system .box_system .box_img {
  width: 50.625%;
}
.block_system .box_system .box_text {
  width: 43.75%;
}
.block_system .box_system .box_text h3 {
  position: relative;
  z-index: 0;
  color: #fff;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 28px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0;
  background-color: #c8b078;
  height: 2.5357em;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.0714em;
}
.block_system .box_system .box_text h3::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  background-color: #c8b078;
  bottom: -0.5714em;
  left: 50%;
  transform: translate(-50%, 0);
  width: 1.143em;
  aspect-ratio: 32 / 16;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
}
.block_system .box_system .box_text .text01 {
  letter-spacing: 0;
}
.block_system .box_system .box_text .text01:nth-of-type(n + 2) {
  margin-top: 1em;
}
.block_system .box_system .box_text .text_ttl {
  font-weight: bold;
  margin-bottom: 1em;
}
.block_system .box_system .box_text .box_data {
  padding: 4px 6.428%;
  background-color: #fff;
  font-size: 16px;
}
.block_system .box_system .box_text .box_data h4 {
  color: #333;
  font-family: "Noto Sans JP";
  font-size: 1.125em;
  font-style: normal;
  font-weight: 400;
  line-height: 200%; /* 36px */
  letter-spacing: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.333em;
}
.block_system .box_system .box_text .box_data h4::after {
  content: "";
  background-color: #6fb5d3;
  width: calc(100% - 5.56em);
  height: 1px;
}
.block_system .box_system .box_text dl {
  display: flex;
  flex-flow: column;
  margin-bottom: 0.125em;
}
.block_system .box_system .box_text .data00 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1em;
  font-weight: 300 !important;
  line-height: 200%; /* 32px */
}
.block_system .box_system .box_text .data00 dt {
  width: 168px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(111, 181, 211, 0.35);
  border-radius: 5px;
}
.block_system .box_system .box_text .data00:first-of-type dt {
  letter-spacing: 0.5em;
}
.block_system .box_system .box_text .data00 dd {
  width: 300px;
}
.block_system .dec_hand {
  display: flex;
  align-items: center;
  gap: 0.472em;
  padding-left: 4.303%;
}
.block_system .dec_hand::before {
  content: "";
  display: block;
  background-image: url("../image/icon_hand.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 2.875em;
  aspect-ratio: 46 / 45;
}
.block_system .dec_hand .dec_line01 {
  font-weight: 500;
}
@media screen and (max-width: 1280px) {
  .block_system {
    padding: 73px 0 95px;
  }
  .block_system .ttl02_2 {
    margin-bottom: 1.667em;
  }
  .block_system .ttl02_2 + .text01 {
    margin: 0 auto 3.734em;
  }
  .block_system .box_system {
    flex-flow: column;
    padding: 0 1.27%;
  }
  .block_system .box_system .box_text {
    display: contents;
  }
  .block_system .box_system .box_img {
    width: 100%;
  }
  .block_system .box_system .set_order01 {
    order: 4;
    width: 94.18%;
    margin: 0 auto;
  }
  .block_system .box_system .set_order02 {
    order: 1;
  }
  .block_system .box_system .set_order03 {
    order: 2;
  }
  .block_system .box_system .set_order04 {
    order: 3;
    margin-top: 1.33em !important;
    margin-bottom: 3.2em;
  }
  .block_system .box_system .set_order05 {
    order: 5;
    margin-top: 1.8em;
  }
  .block_system .box_system .set_order06 {
    order: 6;
    padding: 4px 15.4% 4px 13.8% !important;
  }
  .block_system .box_system .set_order07 {
    order: 7;
  }
}
@media screen and (max-width: 767px) {
  .block_system {
    padding: min(calc(73 / 390 * 100vw), 73px) 0 min(calc(70 / 390 * 100vw), 70px);
  }
  .block_system .ttl02_2 {
    margin-bottom: min(calc(39 / 390 * 100vw), 39px);
  }
  .block_system .ttl02_2 + .text01 {
    text-align: left;
    max-width: 600px;
    width: 100%;
    margin: 0 auto min(calc(33 / 390 * 100vw), 33px);
  }
  .block_system .box_system {
    padding: 0;
    max-width: 600px;
    margin: 0 auto;
  }
  .block_system .box_system .box_text h3 {
    font-size: min(calc(20 / 390 * 100vw), 20px);
    height: 3.2em;
    margin-bottom: 1.45em;
    line-height: 125%;
  }
  .block_system .box_system .box_text h3::after {
    width: 1.5em;
  }
  .block_system .box_system .set_order04 {
    margin-top: 0.667em !important;
    margin-bottom: 1.867em;
  }
  .block_system .box_system .set_order01 {
    width: 100%;
  }
  .block_system .box_system .box_text .text01:nth-of-type(n + 2) {
    margin-top: 0;
  }
  .block_system .box_system .box_text .text_ttl {
    margin: 2.467em 0 1.2em !important;
  }
  .block_system .box_system .set_order06 {
    order: 6;
    padding: min(calc(8 / 390 * 100vw), 8px) 5% min(calc(26 / 390 * 100vw), 26px) !important;
  }
  .block_system .box_system .box_text .box_data {
    padding: 4px 6.428%;
    font-size: min(calc(15 / 390 * 100vw), 15px);
    margin-bottom: 1.6em;
  }
  .block_system .box_system .box_text .box_data h4 {
    font-size: 1.2em;
    margin-bottom: 0.5em;
  }
  .block_system .box_system .box_text dl {
    gap: min(calc(8 / 390 * 100vw), 8px);
    margin-bottom: 0.125em;
  }
  .block_system .box_system .box_text .data00 dt {
    width: 21.73%;
    font-size: 0.8em;
    border-radius: min(calc(5 / 390 * 100vw), 5px);
    text-align: center;
    align-self: stretch;
  }
  .block_system .box_system .box_text .data00 dd {
    font-size: 0.933em;
    width: 75.3%;
    letter-spacing: 0;
  }
  .block_system .dec_hand {
    flex-flow: wrap;
    gap: 0;
    padding-left: 0;
    margin-top: 0.5334em;
  }
  .block_system .dec_hand::before {
    margin-right: 0.7334em;
  }
  .block_system .dec_hand .dec_line01 {
    margin-left: 0.05em;
  }
}
@media screen and (max-width: 607px) {
  .block_system .dec_hand .dec_line01 {
    width: fit-content;
    margin-left: 3.667em;
    margin-top: -1em;
  }
}
/*.block_fee --------------------------*/
.block_fee {
  position: relative;
  z-index: 0;
  margin: 0 0;
  padding: 112px 0 160px;
  background-color: #f8f8f8;
}
.block_fee .ttl02_4 {
  margin-bottom: 0.7em;
}
.block_fee .ttl02_4 + .text01 {
  width: 856px;
  max-width: 100%;
  margin: 0 auto 5em;
  text-align: center;
}
.block_fee .list_fee {
  display: flex;
  flex-flow: column;
  gap: 2.667em;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0;
  margin-bottom: 5em;
}
.block_fee .list_fee .fee00 {
  background-color: #fff;
  border-radius: 8px;
}
.block_fee .list_fee .fee00 dl {
  display: flex;
  align-items: center;
  border-radius: 8px;
  padding: 24px 0;
}
.block_fee .list_fee .fee00 dl dt {
  position: relative;
  z-index: 0;
  width: 529px;
  text-align: center;
  font-weight: 400;
}
.block_fee .list_fee .fee00 dl dt::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  background-color: #e9d1d9;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  width: 1px;
  height: 5.334em;
}
.block_fee .list_fee .fee00 .dec00 {
  display: block;
  border-radius: 99px;
  text-align: center;
}
.block_fee .list_fee .fee00 .dec01 {
  background: #e8d0d8;
  width: 280px;
  margin: 0 auto;
  padding: 0.2667em 0;
}
.block_fee .list_fee .fee00 .dec02 {
  background: #ffe375;
  width: 288px;
  margin: 0 0 0 auto;
  padding: 0.2667em 0;
  margin-top: 0.667em;
  margin-right: -2em;
}
.block_fee .list_fee .fee00 .dec00.adjust01 {
  margin-top: 0.4667em;
}
.block_fee .list_fee .fee00 .dec00.adjust02 {
  border-radius: 10px;
  padding: 0.8667em 0;
  margin-top: 1.6em;
}
.block_fee .list_fee .fee00 dl dt .size_l {
  display: block;
  font-size: 1.667em;
  line-height: 1.3;
}
.block_fee .list_fee .fee00 dl dd {
  width: calc(100% - 529px);
  text-align: right;
  padding-right: 10%;
}
.block_fee .list_fee .fee00 dl dd .size_m {
  font-size: 1.667em;
  font-weight: 500;
}
.block_fee .list_fee .fee00 dl dd .size_l {
  font-size: 2.5em;
  line-height: 1;
  font-weight: 300;
  font-family: "Roboto", sans-serif;
}
.block_fee .list_fee .fee00 dl dd .tax {
  font-weight: 300;
}
.block_fee .cap {
  text-align: center;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0;
  margin: 43px 0 41px;
}
.block_fee .box_point {
  background: #fff;
  padding: 13px 0 68px;
}
.block_fee .box_point h3 {
  color: #333;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: 130%; /* 36.4px */
  letter-spacing: 0.04em;
  margin-bottom: 0.678em;
}
.block_fee .box_point h3 .size_s {
  font-size: 0.714em;
}
.block_fee .box_point h3 .dec_01 {
  display: block;
  color: #ccb0bc;
  text-align: center;
  font-family: Corinthia;
  font-size: 2.25em;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  transform: rotate(-11deg);
  margin-bottom: -0.357em;
  letter-spacing: 0;
}
.block_fee .box_point h3 .dec_line {
  background: linear-gradient(transparent 60%, #e0f0f8 60%);
}
.block_fee .box_point h3 + .text02 {
  text-align: center;
  font-size: 15px;
  font-weight: 300;
  line-height: 135%;
  letter-spacing: 0;
  margin-bottom: 3.2em;
}
.block_fee .box_point .point_list {
  display: flex;
  flex-flow: wrap;
  justify-content: center;
  gap: 1.333em;
  font-size: 18px;
  font-weight: 300;
  line-height: 150%;
  letter-spacing: 0;
  text-align: center;
}
.block_fee .box_point .point_list li {
  border-radius: 12px;
  background: #e0f0f8;
  width: 13.75%;
  height: 4.444em;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 1280px) {
  .block_fee {
    padding: 71px 0 112px;
  }
  .block_fee .block_inner {
    padding: 0 1.27%;
  }
  .block_fee .ttl02_4 {
    font-size: 36px;
    margin-bottom: 35px;
  }
  .block_fee .ttl02_4 + .text01 {
    margin: 0 auto 59px;
  }
  .block_fee .ttl02_4 .dec01 {
    font-size: 1.556em;
    /*margin-top: .155em;*/
  }
  .block_fee .list_fee {
  }
  .block_fee .list_fee .fee00 dl dt {
    width: 345px;
  }
  .block_fee .list_fee .fee00 dl dd {
    width: calc(100% - 345px);
  }
  .block_fee .list_fee .fee00 dl dd .size_l {
    font-size: 2.288em;
  }
  .block_fee .list_fee .fee00 .dec02 {
    margin-right: -2.86em;
  }
  .block_fee .box_point {
    padding: 13px 0 60px;
  }
  .block_fee .box_point .point_list {
    width: 576px;
    margin: 0 auto;
    gap: 24px 4.16%;
  }
  .block_fee .box_point .point_list li {
    width: 30.55%;
    border-radius: 12px;
    background: #e0f0f8;
    height: 4.444em;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .block_fee {
    padding: min(calc(67 / 390 * 100vw), 67px) 0 min(calc(78 / 390 * 100vw), 78px);
  }
  .block_fee .block_inner {
    padding: 0;
  }
  .block_fee .ttl02_4 {
    font-size: min(calc(30 / 390 * 100vw), 30px);
    margin-bottom: 0;
  }
  .block_fee .ttl02_4 + .text01 {
    margin: 0 auto min(calc(65 / 390 * 100vw), 65px);
  }
  .block_fee .ttl02_4 .dec01 {
    font-size: 1.867em;
    margin-top: 0.0862em;
  }
  .block_fee .list_fee {
    max-width: 600px;
    margin: 0 auto 65px;
    gap: 1.6em;
    font-size: min(calc(15 / 390 * 100vw), 15px);
    font-style: normal;
  }
  .block_fee .list_fee .fee00 dl {
    flex-flow: column;
    border-radius: min(calc(8 / 390 * 100vw), 8px);
    padding: in(calc(23 / 390 * 100vw), 23px) 0 min(calc(20 / 390 * 100vw), 20px);
  }
  .block_fee .list_fee .fee00 dl dt {
    width: 100%;
  }
  .block_fee .list_fee .fee00 dl dt::after {
    display: none;
  }
  .block_fee .list_fee .fee00 dl:has(dd .dec02) dt {
    padding-bottom: 18px;
    margin-bottom: 11px;
  }
  .block_fee .list_fee .fee00 dl:has(dd .dec02) dt::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    background-color: #e9d1d9;
    top: auto;
    bottom: 0;
    right: auto;
    left: 50%;
    transform: translate(-50%, 0);
    width: min(calc(80 / 390 * 100vw), 80px);
    height: 2px;
  }
  .block_fee .list_fee .fee00 dl dt .size_l {
    font-size: 1.467em;
  }
  .block_fee .list_fee .fee00 dl dd {
    width: 100%;
    text-align: center;
    padding-right: 0;
  }
  .block_fee .list_fee .fee00 dl dd .size_l {
    font-size: 2.088em;
  }
  .block_fee .list_fee .fee00 .dec00.adjust01 {
    margin-top: 0.8667em;
    margin-bottom: 1em;
  }
  .block_fee .list_fee .fee00 .dec00.adjust02 {
    border-radius: min(calc(10 / 390 * 100vw), 10px);
    padding: 0.8667em 0;
    margin-top: min(calc(16 / 390 * 100vw), 16px);
    margin-bottom: min(calc(13 / 390 * 100vw), 13px);
  }
  .block_fee .list_fee .fee00 .dec01 {
    background: #e8d0d8;
    width: 81.87%;
    margin: 0 auto;
    margin-top: 0px;
    padding: 0.2667em 0;
  }
  .block_fee .list_fee .fee00 .dec02 {
    background: #ffe375;
    width: 84.21%;
    margin: 0.667em auto 0;
    padding: 0.2667em 0;
  }
  .block_fee .cap {
    font-size: min(calc(15 / 390 * 100vw), 15px);
    margin: 23px 0 20px;
  }
  .block_fee .box_point {
    padding: min(calc(2 / 390 * 100vw), 2px) min(calc(27 / 390 * 100vw), 27px) min(calc(32 / 390 * 100vw), 32px);
  }
  .block_fee .box_point h3 {
    font-size: min(calc(24 / 390 * 100vw), 24px);
    margin-bottom: 0.9166em;
  }
  .block_fee .box_point h3 .size_s {
    font-size: 0.667em;
  }
  .block_fee .box_point h3 .dec_01 {
    font-size: 2.33em;
    margin-bottom: -0.214em;
  }
  .block_fee .box_point h3 + .text02 {
    font-size: min(calc(15 / 390 * 100vw), 15px);
    margin-bottom: 1.266em;
    line-height: 150%;
  }
  .block_fee .box_point .point_list {
    max-width: 600px;
    width: 100%;
    margin: 0 auto;
    gap: min(calc(16 / 390 * 100vw), 16px) 5.56%;
    font-size: min(calc(15 / 390 * 100vw), 15px);
  }
  .block_fee .box_point .point_list li {
    width: 47.22%;
    border-radius: 12px;
    background: #e0f0f8;
    height: 5.333em;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
/*.block_correction --------------------------*/
.block_correction {
  overflow: hidden;
  position: relative;
  z-index: 0;
  margin: 0 0;
}
.block_correction .block_inner {
  position: relative;
  z-index: 1;
}
.block_correction .box_attention {
  position: relative;
  z-index: 0;
  display: flex;
  justify-content: space-between;
  margin-bottom: 98px;
}
.block_correction .box_attention::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  border: 8px solid #f4eacf;
  border-image: linear-gradient(30deg, #c7b980 0%, #e1d5ad 43%, #f4eacf 100%);
  border-image-slice: 1;
  top: 0;
  left: 0;
  width: 53.333%;
  height: 360px;
}
.block_correction .box_attention::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  background: linear-gradient(to right, #c7b980 0%, #e1d5ad 43%, #f4eacf 100%);
  bottom: 0;
  right: 0;
  width: 77.5%;
  height: 350px;
}
.block_correction .box_attention .block_inner {
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
}
.block_correction .box_attention .box_text {
  width: 68.75%;
  margin: 22px 0 0 -3.046%;
  border: 1px solid #eee;
  background: #fff;
  align-self: baseline;
  padding: 89px 109px 96px 139px;
}
.block_correction .box_attention .box_text h2 {
  text-align: center;
  font-size: 32px;
  font-weight: 300;
  line-height: 120%;
  letter-spacing: 0.08em;
}
.block_correction .box_attention .box_text h2 .size_s {
  display: block;
  font-size: 0.625em;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: 0;
  display: flex;
  justify-content: center;
}
.block_correction .box_attention .box_text h2 .size_s span {
  background-color: #a2d4f8;
  border-radius: 99px;
  text-align: center;
  width: 2.2em;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 -0.2em;
}
.block_correction .box_attention .box_text h2 .size_m {
  display: block;
  margin: 0.8125em 0 0.219em;
}
.block_correction .box_attention .box_text h2 .size_l {
  font-size: 2.25em;
  font-weight: 300;
  line-height: 120%;
  background: linear-gradient(transparent 72%, #fffc99 72%, #fffc99 93%, transparent 93%);
}
.block_correction .box_attention .box_text h2 .size_l .dec01 {
  font-size: 0.444em;
}
.block_correction .box_attention .box_text .text01 {
  margin-top: 3.1875em;
}
.block_correction .box_attention .box_img {
  width: 41.71%;
  margin-right: -7.528%;
}
.block_correction .box_attention .box_img {
  width: 41.71%;
  margin-right: -7.528%;
}
@media screen and (max-width: 1280px) {
  .block_correction .box_attention::after {
    bottom: -40px;
  }
  .block_correction .box_attention .box_text {
    padding: 60px 50px 60px 50px;
  }
  .block_correction .box_attention .box_text h2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 1024px) {
  .block_correction {
  }
  .block_correction .box_attention {
    margin-bottom: 58px;
  }
  .block_correction .box_attention::before {
    top: -33px;
    left: -8px;
    width: calc(35.8% + 8px);
    height: auto;
    aspect-ratio: 272 / 360;
  }
  .block_correction .box_attention::after {
    bottom: 3.65%;
    width: 75%;
    height: auto;
    aspect-ratio: 576 / 592;
  }
  .block_correction .box_attention .block_inner {
    flex-flow: column;
    margin-top: 0;
  }
  .block_correction .box_attention .box_text {
    width: 100%;
    margin: 0;
    padding: 57px 8.78% 120px;
  }
  .block_correction .box_attention .box_text h2 .size_s {
    font-size: 0.7143em;
  }
  .block_correction .box_attention .box_text h2 .size_m {
    margin: 1.17em 0 0;
    letter-spacing: 0.08em;
  }
  .block_correction .box_attention .box_text .text01 {
    margin-top: 2.987em;
  }
  .block_correction .box_attention .box_img {
    width: 84.99%;
    margin: -17.42% auto 0;
  }
}
@media screen and (max-width: 767px) {
  .block_correction {
    padding: 0;
  }
  .block_correction .box_attention {
    margin-bottom: min(calc(14 / 390 * 100vw), 14px);
  }
  .block_correction .box_attention::before,
  .block_correction .box_attention::after {
    display: none;
  }
  .block_correction .box_attention .block_inner {
    width: 600px;
  }
  .block_correction .box_attention .box_text {
    border: 0;
    padding: min(calc(36 / 390 * 100vw), 36px) 0 0;
  }
  .block_correction .box_attention .box_text h2 {
    font-size: min(calc(22 / 390 * 100vw), 22px);
  }
  .block_correction .box_attention .box_text h2 .size_m {
    margin: 0.943em 0 0;
  }
  .block_correction .box_attention .box_text h2 .size_s {
    font-size: 0.727em;
  }
  .block_correction .box_attention .box_text h2 .size_l {
    font-size: 1.63em;
  }
  .block_correction .box_attention .box_img {
    width: 102%;
    margin: min(calc(20 / 390 * 100vw), 20px) auto 0;
  }
}
/*.block_correction .list_case*/
.block_correction .list_case {
}
.block_correction .list_case .case00 {
  padding: 119px 0 112px;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
}
.block_correction .list_case .case01 {
  background: url("../image/bi_list_case.png") 0% 0% / 8px 8px repeat;
}
.block_correction .list_case .case02 {
  background: #f8f8f8;
}
.block_correction .list_case .case00 .block_inner {
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
}
.block_correction .list_case .case00 h3 {
  width: 100%;
  color: #cfba89;
  text-align: center;
  font-family: "Noto Serif JP";
  font-size: 32px;
  font-style: normal;
  font-weight: 300;
  line-height: 136%;
  letter-spacing: 0.04em;
  margin-bottom: 1.41em;
}
.block_correction .list_case .case00 h3 .en {
  display: block;
  text-align: center;
  font-family: Corinthia;
  font-size: 1.5em;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: 3.84px;
  padding-bottom: 0.1875em;
  margin-bottom: 0.2917em;
  border-bottom: 1px solid #cfba89;
}
.block_correction .list_case .case00 .box_img {
  width: 45.625%;
}
.block_correction .list_case .case00 .box_img .box_tab {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 40px;
}
.block_correction .list_case .case00 .box_img .box_tab .tab00 {
  width: 31.5%;
  height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #e5e5e6;
  color: #878787;
  font-family: "Noto Serif JP";
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0;
  border-radius: 8px;
  cursor: pointer;
}
.block_correction .list_case .case00 .box_img .box_tab .tab00.on {
  height: 56px;
  background-color: #cfba89;
  color: #fff;
  pointer-events: none;
}
.block_correction .list_case .case00 .box_img .box_case_img {
  position: relative;
  z-index: 0;
  aspect-ratio: 584 / 434;
}
.block_correction .list_case .case00 .box_img .case_img00 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
  transition: 0.3s;
}
.block_correction .list_case .case00 .box_img .case_img00.on {
  opacity: 1;
  pointer-events: auto;
}
.unit_case .img00,
.block_correction .list_case .case00 .box_img .img00 {
  width: 64.38%;
}
.unit_case .img02 {
  position: absolute;
  bottom: 0;
  right: 0;
}
.unit_case .img00 img {
  border-radius: 12px;
}
.unit_case .img00 figcaption {
  color: #c8b078;
  font-family: Spartan;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: 0;
  display: flex;
  align-items: center;
  gap: 0.1em;
}
.unit_case .img01 figcaption {
  margin-top: 0.35em;
}
.unit_case .img01 figcaption::before {
  content: "";
  display: inline-block;
  background-color: #c8b078;
  width: 0.8em;
  aspect-ratio: 1;
  clip-path: polygon(0 100%, 50% 0%, 100% 100%);
  margin: 0 0.25em 0 0;
}
.unit_case .img02 figcaption {
  width: fit-content;
  margin-left: auto;
  margin-bottom: 0.35em;
  gap: 0.1em;
}
.unit_case .img02 figcaption::after {
  content: "";
  display: inline-block;
  background-color: #c8b078;
  width: 0.8em;
  aspect-ratio: 1;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
  margin: 0 0 0 0.25em;
}
@media screen and (max-width: 767px) {
  .unit_case .img00 figcaption {
    font-size: min(calc(16 / 390 * 100vw), 16px);
  }
}
/**/
.block_correction .list_case .case00 .box_text {
  width: 44.843%;
  padding: 28px 96px 48px 46px;
  background-color: #fff;
}
.block_correction .list_case .case00 .box_text .box_content {
  position: relative;
  z-index: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 16px;
  font-weight: 300;
  line-height: 136%;
  letter-spacing: 0;
  padding-bottom: 0.6875em;
}
.block_correction .list_case .case00 .box_text .box_content::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  background-color: #cfba89;
  bottom: 0;
  left: 0;
  width: 6rem;
  height: 1px;
}
.block_correction .list_case .case00 .box_text .box_content:nth-of-type(n + 2) {
  margin-top: 11px;
}
.block_correction .list_case .case00 .box_text .box_content dt {
  color: #444;
  font-family: "Noto Serif JP";
  font-size: 1.25em;
  font-weight: 400;
  line-height: 180%;
  text-align: center;
  width: 4.8em;
}
.block_correction .list_case .case00 .box_text .box_content dd {
  width: calc(100% - 8.375em);
}
.block_correction .list_case .case00 .box_text .box_content dd .text02 {
  line-height: 1.8;
}
.block_correction .list_case .case00 .box_text .box_content dd .btn00 {
  color: #fff;
  font-family: Corinthia;
  font-size: 1.5em;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  background: #cfba89;
  letter-spacing: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 48px;
  border-radius: 8px;
  margin-top: 0.6em;
}
@media screen and (max-width: 1280px) {
  .block_correction .list_case .case00 {
    padding: 70px 0 104px;
    flex-flow: column;
    justify-content: space-between;
  }
  .block_correction .list_case .case00 .block_inner {
    flex-flow: column;
    align-items: center;
  }
  .block_correction .list_case .case00 h3 {
    margin-bottom: 1.628em;
  }
  .block_correction .list_case .case00 h3 .en {
    font-size: 1.25em;
  }
  .block_correction .list_case .case00 .box_img {
    width: 79.32%;
    margin: 0 0 60px;
  }
  .block_correction .list_case .case00 .box_img .box_tab {
    margin-bottom: 30px;
  }
  .unit_case .img00,
  .block_correction .list_case .case00 .box_img .img00 {
    width: 65.71%;
  }
  .block_correction .list_case .case00 .box_text {
    width: 81.59%;
    padding: 30px 13.61% 48px 6.81%;
  }
}
@media screen and (max-width: 767px) {
  .block_correction .list_case .case00 .block_inner {
    width: 600px;
  }
  .block_correction .list_case .case00 {
    padding: min(calc(45 / 390 * 100vw), 45px) 0 min(calc(80 / 390 * 100vw), 80px);
  }
  .block_correction .list_case .case00 h3 {
    font-size: min(calc(24 / 390 * 100vw), 24px);
    margin-bottom: 2.125em;
  }
  .block_correction .list_case .case00 h3 .en {
    font-size: 1.667em;
  }
  .block_correction .list_case .case00 .box_img {
    width: 104.67%;
    margin: 0 0 min(calc(48 / 390 * 100vw), 48px) -0.1%;
  }
  .block_correction .list_case .case00 .box_img .box_tab {
    margin-bottom: min(calc(32 / 390 * 100vw), 32px);
  }
  .block_correction .list_case .case00 .box_img .box_tab .tab00 {
    width: 31.81%;
    height: min(calc(48 / 390 * 100vw), 48px);
    font-size: min(calc(20 / 390 * 100vw), 20px);
    border-radius: min(calc(8 / 390 * 100vw), 8px);
  }
  .block_correction .list_case .case00 .box_img .box_tab .tab00.on {
    height: min(calc(56 / 390 * 100vw), 56px);
  }
  .block_correction .list_case .case00 .box_text {
    width: 100%;
    padding: min(calc(40 / 390 * 100vw), 40px) min(calc(27 / 390 * 100vw), 27px) min(calc(48 / 390 * 100vw), 48px);
  }
  .block_correction .list_case .case00 .box_img .box_case_img {
    aspect-ratio: 358 / 288;
  }
  .unit_case .img00,
  .block_correction .list_case .case00 .box_img .img00 {
    width: 70.45%;
  }
  .block_correction .list_case .case00 .box_text .box_content {
    flex-flow: column;
    align-items: center;
    padding-bottom: 0;
    font-size: min(calc(15 / 390 * 100vw), 15px);
  }
  .block_correction .list_case .case00 .box_text .box_content:nth-of-type(n + 2) {
    margin-top: min(calc(40 / 390 * 100vw), 40px);
  }
  .block_correction .list_case .case00 .box_text .box_content::after {
    display: none;
  }
  .block_correction .list_case .case00 .box_text .box_content dt {
    width: 100%;
    font-size: 1.1334em;
    line-height: 1;
    padding-bottom: min(calc(8 / 390 * 100vw), 8px);
    margin-bottom: min(calc(10 / 390 * 100vw), 10px);
    border-bottom: 1px solid #cfba89;
  }
  .block_correction .list_case .case00 .box_text .box_content dd {
    width: 100%;
    text-align: center;
  }
  .block_correction .list_case .case00 .box_text .box_content dd .text02 {
    text-align: left;
  }
  .block_correction .list_case .case00 .box_text .box_content dd .btn00 {
    font-size: min(calc(18 / 390 * 100vw), 18px);
    height: 2em;
    border-radius: min(calc(8 / 390 * 100vw), 8px);
    margin-top: 1em;
  }
}
/*.block_faceline --------------------------*/
.block_faceline {
  position: relative;
  z-index: 0;
  margin: 0 0;
  padding: 115px 0 120px;
  background: url("../image/bi_list_case.png") 0% 0% / 8px 8px repeat;
}
.block_faceline .block_inner {
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
}
.block_faceline .ttl02_2 {
  width: 100%;
  margin-bottom: 2.464em;
}
.block_faceline .box_img01 {
  width: 41.25%;
}
.block_faceline .box_text {
  width: 50%;
}
.block_faceline .box_text .text01 {
  max-width: 456px;
  margin-bottom: 56px;
}
@media screen and (max-width: 1280px) {
  .block_faceline {
    padding: 101px 0 86px;
  }
  .block_faceline .ttl02_2 {
    margin-bottom: 53px;
  }
  .block_faceline .box_text .text01 {
    max-width: 90.1%;
    margin: 0 auto 27px;
  }
}
@media screen and (max-width: 767px) {
  .block_faceline {
    padding: min(calc(68 / 390 * 100vw), 68px) 0 min(calc(77 / 390 * 100vw), 77px);
  }
  .block_faceline .ttl02_2 {
    margin-bottom: min(calc(51 / 390 * 100vw), 51px);
  }
  .block_faceline .ttl02_2 .dec02 {
    letter-spacing: 0;
  }
  .block_faceline .box_text {
    display: contents;
  }
  .block_faceline .box_text .text01 {
    order: 1;
    max-width: 100%;
    margin: 0 auto min(calc(49 / 390 * 100vw), 49px);
  }
  .block_faceline .box_img01 {
    order: 2;
    width: 100%;
    margin-bottom: min(calc(24 / 390 * 100vw), 24px);
  }
  .block_faceline .box_img02 {
    order: 3;
  }
}
/*.block_balance --------------------------*/
.block_balance {
  position: relative;
  z-index: 0;
  padding: 107px 0 0;
}
.block_balance .ttl02_5 {
  margin-bottom: 1.4375em;
}
.block_balance .ttl02_5 + .text01 {
  text-align: center;
  margin-bottom: 4.125em;
}
.block_balance .wrapper_balance {
  display: flex;
  justify-content: space-between;
}
.box_balance.unit_case {
  position: relative;
  z-index: 0;
  width: 45.625%;
  aspect-ratio: 584 / 434;
  align-self: baseline;
}
.block_balance .box_text {
  width: 45%;
}
.block_balance .box_text h3 {
  position: relative;
  z-index: 0;
  color: #c8b078;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 28px;
  font-style: normal;
  font-weight: 500;
  line-height: 200%;
  letter-spacing: 0.08em;
  height: 2.429em;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0px 0px 0px 1px #c8b078;
  margin-bottom: 1.321em;
}
.block_balance .box_text h3::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  background-color: #fff;
  bottom: -15px;
  left: 50%;
  transform: translate(-50%, 0);
  width: 1.143em;
  aspect-ratio: 32 / 16;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
}
.block_balance .box_text h3::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: #c8b078;
  bottom: -17px;
  left: 50%;
  transform: translate(-50%, 0);
  width: 1.143em;
  aspect-ratio: 34 / 18;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
}
.block_balance .box_text .text01 + .text01 {
  margin-top: 1em;
}
@media screen and (max-width: 1280px) {
  .block_balance {
    padding: 76px 0 0;
  }
  .block_faceline .block_inner {
    width: 600px;
  }
  .box_balance.unit_case {
    width: 47.87%;
    aspect-ratio: 338 / 288;
  }
  .box_balance.unit_case .img00 {
    width: 73.37%;
  }
  .box_balance.unit_case .img00 figcaption {
    font-size: 16px;
  }
  .block_balance .box_text {
    width: 48.72%;
  }
  .block_balance .box_text h3 {
    font-size: 24px;
    height: 3.667em;
    line-height: 135%;
    margin-bottom: 1.321em;
  }
  .block_balance .box_text h3::before {
    bottom: -13px;
  }
  .block_balance .box_text h3::after {
    bottom: -15px;
  }
}
@media screen and (max-width: 767px) {
  .block_balance {
    padding: min(calc(68 / 390 * 100vw), 68px) 0 min(calc(19 / 390 * 100vw), 19px);
  }
  .block_balance .ttl02_5 {
    margin-bottom: 1.8125em;
  }
  .block_balance .ttl02_5 + .text01 {
    text-align: left;
    margin-bottom: min(calc(31 / 390 * 100vw), 31px);
  }
  .block_balance .wrapper_balance {
    flex-flow: column;
  }
  .box_balance.unit_case {
    aspect-ratio: 358 / 288;
    width: 104.67%;
    margin: 0 0 min(calc(48 / 390 * 100vw), 48px) -2.34%;
  }
  .box_balance.unit_case .img00 {
    width: 69.27%;
  }
  .box_balance.unit_case .img00 figcaption {
    font-size: min(calc(16 / 390 * 100vw), 16px);
  }
  .block_balance .box_text {
    width: 100%;
  }
  .block_balance .box_text h3 {
    font-size: min(calc(24 / 390 * 100vw), 24px);
    height: 3.667em;
    margin-bottom: min(calc(31 / 390 * 100vw), 31px);
  }
}
/*.block_implant --------------------------*/
.block_implant {
  position: relative;
  z-index: 0;
  padding: 242px 0 128px;
}
.block_implant::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -2;
  background-color: #f8f8f8;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  clip-path: polygon(0 0, 100% 26.98%, 100% 100%, 0 100%);
}
.block_implant::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-color: #f8f8f8;
  top: 0;
  left: 0;
  transform: translate(0, 0);
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  clip-path: polygon(0 19.32%, 100% 2%, 100% 100%, 0 100%);
}
.block_implant .ttl02_5 {
  margin-bottom: 3.1875em;
}
.block_implant .ttl02_5 .dec01 {
  font-size: 0.875em;
}
.block_implant .ttl02_5 .dec02 {
  display: flex;
  justify-content: center;
  align-items: center;
}
.block_implant .ttl02_5 .dec_x {
  margin: 0 0.229em 0 0.125em;
}
.block_implant .ttl02_5 .dec_x img {
  width: 1.645em;
  aspect-ratio: 80 / 81;
}
.block_implant .ttl02_5 + .text01 {
  max-width: 832px;
  text-align: center;
  margin: 0 auto 6em;
}
.block_implant .box_img {
  max-width: 832px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.block_implant .box_img img {
  width: 45.19%;
}
.block_implant {
}
@media screen and (max-width: 1280px) {
  .block_implant {
    padding: 131px 0 102px;
  }
  .block_implant::before {
    clip-path: polygon(0 16.85%, 100% 5.62%, 100% 100%, 0 100%);
  }
  .block_implant::after {
    clip-path: polygon(0 0, 100% 19.24%, 100% 100%, 0 100%);
  }
  .block_implant .ttl02_5 {
    margin-bottom: 51px;
  }
  .block_implant .ttl02_5 .dec02 {
    flex-flow: row-reverse;
  }
  .block_implant .ttl02_5 .dec_x {
    margin: 0 0.125em 0 0.45em;
  }
  .block_implant .ttl02_5 .dec_x img {
    width: 1.334em;
  }
  .block_implant .ttl02_5 + .text01 {
    margin: 0 auto 43px;
  }
  .block_implant .box_img {
    max-width: 70.53%;
  }
}
@media screen and (max-width: 767px) {
  .block_implant {
    padding: min(calc(86 / 390 * 100vw), 86px) 0 min(calc(80 / 390 * 100vw), 80px);
  }
  .block_implant .block_inner {
    width: 600px;
  }
  .block_implant::before {
    clip-path: polygon(0 14.16%, 100% 2.23%, 100% 100%, 0 100%);
  }
  .block_implant::after {
    clip-path: polygon(0 0, 100% 11.94%, 100% 100%, 0 100%);
  }
  .block_implant .ttl02_5 {
    margin-bottom: min(calc(48 / 390 * 100vw), 48px);
  }
  .block_implant .ttl02_5 + .text01 {
    text-align: left;
    margin: 0 auto min(calc(49 / 390 * 100vw), 49px);
  }
  .block_implant .box_img {
    max-width: 104.67%;
    margin: 0 0 0 -2.34%;
  }
  .block_implant .box_img img {
    width: 47.72%;
  }
}
/*.block_message --------------------------*/
.block_message {
  padding: 40px 40px 0;
}
.block_message .box_wrapper {
  overflow: hidden;
  background-color: #f5edea;
  background: linear-gradient(90deg, #faf9f7 0%, #f5edea 100%);
}
.block_message .block_inner {
  position: relative;
  z-index: 0;
}
.block_message .block_inner::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  background-image: url("../image/img_message.webp");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  top: 0;
  left: -12.03%;
  width: 72.81%;
  height: 100%;
  aspect-ratio: 932 / 840;
}
.block_message .box_img {
  display: none;
}
.block_message .box_text {
  padding: 0px 0 90px;
  width: 50%;
  margin-left: 0;
  overflow: hidden;
  margin-top: -152px;
}
.block_message .box_text {
  margin-left: auto;

  margin-top: 0;
}
.block_message .box_text h2 {
  font-family: "Noto Serif JP";
  font-size: 56px;
  font-style: normal;
  font-weight: 300;
  line-height: 1.2;
  margin-bottom: 0.7857em;
  letter-spacing: 0;
}
.block_message .box_text h2 .en {
  display: block;
  color: #d2b268;
  font-family: Corinthia;
  font-size: 1.286em;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  transform: rotate(-11deg);
  margin-bottom: 0.6389em;
}
.block_message .box_text h2 .size_s {
  font-size: 0.7142em;
  font-style: normal;
}
.block_message .box_text .text01 {
  letter-spacing: 0;
}
.block_message .box_text .text01 + .text01 {
  margin-top: 1em;
}
.block_message .box_text .signature {
  color: #333;
  text-align: right;
  font-family: "Noto Serif JP";
  font-size: 32px;
  font-weight: 300;
  line-height: 150%;
  margin-top: 1.3125em;
  letter-spacing: 0;
}
@media screen and (max-width: 1280px) {
  .block_message .box_text h2 {
    font-size: 46px;
  }
}
@media screen and (max-width: 1200px) {
  .block_message {
    padding: 30px 30px 0;
  }
  .block_message .box_wrapper {
    width: 97.46%;
    margin: 0 auto;
  }
  .block_message .block_inner {
    max-width: 100%;
  }
  .block_message .block_inner::after {
    background-image: none;
  }
  .block_message .box_img {
    display: block;
  }
  .block_message .box_text {
    padding: 0 0 90px;
    margin: -30% auto 0;
    width: 85.8%;
  }
  .block_message .box_text h2 {
    font-size: 40px;
  }
  .block_message .box_text h2 .size_s {
    font-size: 0.8em;
  }
  .block_message .box_text h2 .en {
    font-size: 1.6em;
    margin-bottom: 0.7168em;
  }
}
@media screen and (max-width: 767px) {
  .block_message {
    padding: min(calc(24 / 390 * 100vw), 24px) min(calc(24 / 390 * 100vw), 24px) 0;
  }
  .block_message .box_wrapper {
    width: 600px;
    max-width: 100%;
    margin: 0 auto;
  }
  .block_message .box_text {
    padding: 0 min(calc(25 / 390 * 100vw), 25px) min(calc(42 / 390 * 100vw), 42px);
    margin: min(calc(-48 / 390 * 100vw), -48px) auto 0;
    width: 100%;
  }
  .block_message .box_text h2 {
    font-size: min(calc(36 / 390 * 100vw), 36px);
    margin-bottom: 0.4722em;
  }
  .block_message .box_text h2 .size_s {
    font-size: 0.667em;
  }
  .block_message .box_text h2 .en {
    font-size: 1.334em;
    margin-bottom: calc(18px + 0.066312997 * (100vw - 390px));
    margin-left: min(calc(-7 / 390 * 100vw), -7px);
  }
  .block_message .box_text .signature {
    font-size: min(calc(24 / 390 * 100vw), 24px);
    margin-top: 0.4583em;
  }
}
@media screen and (max-width: 390px) {
  .block_message .box_text h2 .en {
    margin-bottom: min(calc(18 / 390 * 100vw), 18px);
  }
}
/**/
.wrapper_site {
  position: relative;
  z-index: 0;
}
.block_float01 {
  width: 100vw;
  padding-top: 12px;
  overflow: hidden;
  position: fixed;
  z-index: 999;
  bottom: 0;
  left: 0;
  transition: 0.3s;
}
.block_float01 .unit_link_01 {
  transform: translateY(100%);
  transition: 0.3s;
}
.block_float01.on .unit_link_01 {
  transform: translateY(-12px);
}
.port {
  background: #333;
}
/** 葉っぱ **/
.section__left-leaf {
    position: absolute;
    width: 26.198vw;
    height: auto;
    bottom: 0;
    left: 0;
    z-index: 8;
}
.section__right-leaf {
    position: absolute;
    right: 0;
    top: -7.135vw;
    width: 19.948vw;
    height: auto;
    z-index: 8;
}
.block_worries .parts_contact01 .parts_data dt {
  background: rgba(246,246,236,0.3);
}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 767px) {
  .section__right-leaf {
      top: -37.135vw;
      width: 38.948vw;
  }
  .section__left-leaf {
      width: 49.198vw;
  }
}

.floating-sp-banner-wrap .parts_link {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 8px;
    display: flex;
    gap: 8px;
}

.floating-sp-banner-wrap .btn00 {
  color: #fff;
    text-align: center;
    font-family: "Noto Serif JP";
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 0.08em;

  display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;

    position: relative;
    z-index: 0;
    background-color: #666;
    width: 100%;
    gap: 0.647em;
    font-size: min(calc(13 / 390 * 100vw), 20px);
    padding: 0;
    padding: 12px 0;
    border-radius: 8px;
    overflow: hidden;
}

.floating-sp-banner-wrap .btn00::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: #666;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.floating-sp-banner-wrap .btn00.btn_web::before {
    background-color: #333;
}
.floating-sp-banner-wrap .btn00.btn_tel .dec01::before {
    content: "";
    display: block;
    background-image: url("../image/icon_phone.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 0.6667em;
    aspect-ratio: 17 / 25;
}

.floating-sp-banner-wrap .btn00 .dec01 {
    font-size: 1.714em;
    line-height: 100%;
    letter-spacing: 0.16em;
    display: flex;
    align-items: center;
    gap: 0.35em;
    font-size: 1.2em;
}
.floating-sp-banner-wrap .btn_web .dec01 {
  letter-spacing: -.1em;
}

.floating-sp-banner-wrap .btn00 .dec01::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: rgba(255, 255, 255, 0.2);
    top: 0;
    right: 0;
    height: 100%;
    width: 57.95%;
    clip-path: polygon(25.5% 0, 100% 0, 100% 100%, 0% 100%);
}

