@charset "utf-8";

/* common
------------------------------------------------------------------*/
.content_low {
  padding: calc(100 / var(--break) * 100vw) 0 calc(200 / var(--break) * 100vw);
}
.main_page {
  position: relative;
  height: calc(600 / var(--break) * 100vw);
  background: url("images/page/deco_main_low05.png") no-repeat right top calc(150 / var(--break) * 100vw)/calc(190 / var(--break) * 100vw), url("images/page/deco_main_low04.png") no-repeat left calc(717 / 1920 * 100vw) top/calc(175 / var(--break) * 100vw), url("images/page/deco_main_low03.png") no-repeat left calc(380 / var(--break) * 100vw) bottom calc(97 / var(--break) * 100vw)/calc(69 / var(--break) * 100vw), url("images/page/deco_main_low02.png") no-repeat left calc(230 / var(--break) * 100vw) bottom calc(160 / var(--break) * 100vw)/calc(168 / var(--break) * 100vw), url("images/page/deco_main_low01.png") no-repeat left calc(-85 / var(--break) * 100vw) bottom calc(30 / var(--break) * 100vw)/calc(280 / var(--break) * 100vw), url("images/page/bg_main_low01.png") no-repeat right top/auto 100%;
}
.page_main section:not(:last-child) {
  margin-bottom: calc(100 / var(--break) * 100vw);
}
.hdg3 {
  min-height: calc(150 / var(--break) * 100vw);
  margin-bottom: calc(60 / var(--break) * 100vw);
}
.hdg3::before {
  position: absolute;
  content: "";
  width: 50%;
  height: 100%;
  right: 0;
  top: 0;
  z-index: -1;
  pointer-events: none;
  background: url("images/page/ptn_01.png") repeat right top/calc(14 / var(--break) * 100vw);
}
.hdg4 {
  min-height: calc(100 / var(--break) * 100vw);
  background: var(--color07);
}
.hdg4::before, .hdg4::after {
  position: absolute;
  content: "";
  aspect-ratio: 1;
  height: 100%;
  top: 0;
}
.hdg4::before {
  left: 0;
  background: url("images/page/deco_hdg4.png") repeat-y left top/cover;
}
.hdg4::after {
  right: 0;
  transform: rotate(180deg);
  background: url("images/page/deco_hdg4.png") repeat-y right bottom/cover;
}
.hdg5 {
  min-height: calc(80 / var(--break) * 100vw);
}
.bg_common01::before {
  position: absolute;
  content: "";
  width: calc(1225 / var(--break) * 100vw);
  height: calc(283 / var(--break) * 100vw);
  left: 0;
  top: 0;
  background: url("images/page/deco_common02.svg") no-repeat center/contain;
}
.bg_common01::after {
  position: absolute;
  content: "";
  width: calc(460 / 1920 * 100%);
  height: 100%;
  right: 0;
  top: 0;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.bg_common02::after {
  position: absolute;
  content: "";
  width: 100%;
  height: calc(250 / 1048 * 100%);
  bottom: 0;
  left: 0;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.bnr_common01 {
  width: calc(550 / var(--break) * 100vw);
  border-radius: calc(15 / var(--break) * 100vw);
  height: calc(140 / var(--break) * 100vw);
  overflow: hidden;
}
.bnr_common01::after {
  position: absolute;
  content: "";
  width: calc(100% - 10 / var(--break) * 100vw);
  height: calc(45 / var(--break) * 100vw);
  left: 0;
  bottom: 0;
  border-bottom-right-radius: calc(15 / var(--break) * 100vw);
  background: url("images/page/ptn_01.png") repeat left/calc(14 / var(--break) * 100vw);
  opacity: 0.2;
  z-index: -1;
  pointer-events: none;
}
.bnr_common01 .col_txt {
  width: calc(420 / 540 * 100%);
}
.bnr_common01 .col_txt .txt01 {
  margin-bottom: calc(10 / var(--break) * 100vw);
}
.bnr_common01 .col_txt .txt02 {
  width: fit-content;
  padding-right: calc(31 / var(--break) * 100vw);
}
.bnr_common01 .col_txt .txt02::after {
  position: absolute;
  content: "";
  width: calc(25 / var(--break) * 100vw);
  height: calc(25 / var(--break) * 100vw);
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  background: url("images/page/arw_bnr.svg") no-repeat center/contain;
}
.bnr_common01 .col_img {
  width: calc(120 / 540 * 100%);
}
.bnr_common01 .col_img img {
  height: 100%;
  object-fit: contain;
}
.box_common01::before {
  position: absolute;
  content: "";
  width: calc(91 / var(--break) * 100vw);
  height: calc(145 / var(--break) * 100vw);
  left: calc(-70 / var(--break) * 100vw);
  top: calc(-60 / var(--break) * 100vw);
  background: url("images/page/deco_common01.svg") no-repeat center/contain;
}
.box_common01 .copy {
  min-height: calc(50 / var(--break) * 100vw);
}
.box_common02 {
  border: 2px solid var(--color01);
  outline: 2px solid var(--color01);
  outline-offset: -12px;
  padding-left: calc(60 / 1240 * 100%);
  padding-right: calc(60 / 1240 * 100%);
}
.box_pay01 {
  padding-left: calc(50 / 1240 * 100%);
  padding-right: calc(50 / 1240 * 100%);
  border: 2px solid var(--color01);
}
.box_pay01 .ttl {
  padding-bottom: calc(17 / var(--break) * 100vw);
  border-bottom: calc(2 / var(--break) * 100vw) solid var(--color01);
}
.btn_pay01 {
  max-width: calc(400 / var(--break) * 100vw);
  min-height: calc(60 / var(--break) * 100vw);
}
.btn_pay01::after {
  position: absolute;
  content: "";
  background: url("images/page/arw_btn02.svg") no-repeat center/contain;
  width: calc(30 / var(--break) * 100vw);
  height: calc(30 / var(--break) * 100vw);
  top: 50%;
  transform: translateY(-50%);
  right: calc(30 / var(--break) * 100vw);
}
.circle_common01 {
  width: calc(180 / var(--break) * 100vw);
  height: calc(180 / var(--break) * 100vw);
  border-radius: 50%;
  right: calc(20 / var(--break) * 100vw);
  bottom: calc(-40 / var(--break) * 100vw);
}
.circle_common01 .txt {
  line-height: 1.6666666667;
}
.content_pay01::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 50%;
  bottom: 0;
  left: 0;
  background: var(--color12);
}
.list_common01 li {
  width: calc(550 / 1140 * 100%);
  position: relative;
  border-bottom: 1px solid var(--color13);
  padding-left: calc(30 / var(--break) * 100vw);
  padding-top: calc(6 / var(--break) * 100vw);
  padding-bottom: calc(5 / var(--break) * 100vw);
}
.list_common01 li:not(:first-child) {
  margin-top: 0;
}
.list_common01 li::before {
  position: absolute;
  content: "";
  left: 0;
  width: calc(20 / var(--break) * 100vw);
  height: calc(20 / var(--break) * 100vw);
  background: url("images/page/icn_check.svg") no-repeat center/contain;
  border-radius: 0;
  top: calc(10 / var(--break) * 100vw);
}
.row_common01 .col_img {
  width: calc(700 / 1500 * 100%);
}
.row_common01 .col_txt {
  width: calc(740 / 1500 * 100%);
  margin-top: calc(-10 / var(--break) * 100vw);
}
.row_common02:not(:last-child) {
  border-bottom: calc(2 / var(--break) * 100vw) solid #f5f5f5;
}
.row_common02.topborder {
  border-top: calc(2 / var(--break) * 100vw) solid #f5f5f5;
}
.row_common02.noborder {
  border-bottom: none;
}
.row_common02 .col_img {
  width: calc(570 / 1500 * 100%);
}
.row_common02 .col_txt {
  margin-top: calc(-6 / var(--break) * 100vw);
  width: calc(870 / 1500 * 100%);
}
.row_common03:not(:last-child) {
  border-bottom: calc(2 / var(--break) * 100vw) solid #f5f5f5;
}
.row_common03 .col_img {
  width: calc(350 / 1500 * 100%);
}
.row_common03 .col_txt {
  width: calc(1100 / 1500 * 100%);
  margin-top: calc(-9 / var(--break) * 100vw);
}
.row_common04 {
  column-gap: calc(30 / 1500 * 100%);
}
.row_common04 .col {
  width: calc(480 / 1500 * 100%);
}
.row_common04 .col::before {
  position: absolute;
  content: "";
  z-index: -1;
  pointer-events: none;
  width: 50%;
  height: 100%;
  right: 0;
  top: 0;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.row_common04 .col .ttl {
  min-height: calc(100 / var(--break) * 100vw);
}
.row_pay01 {
  column-gap: calc(20 / 1000 * 100%);
}
.row_pay01 .col {
  width: calc(295 / 1000 * 100%);
}
.row_pay01 .col .icn img {
  width: calc(176 / var(--break) * 100vw);
}
.row_pay01 .col .txt {
  line-height: 1.6666666667;
}
.tbl_common01.reverse th {
  width: 70%;
}
.tbl_common01 table {
  border: 1px solid var(--color04);
}
.tbl_common01 tr:not(:last-child) td {
  border-bottom: 1px solid var(--color04);
}
.tbl_common01 th,
.tbl_common01 td {
  padding: calc(26 / var(--break) * 100vw) calc(18 / var(--break) * 100vw) calc(26 / var(--break) * 100vw);
}
.tbl_common01 th {
  background: var(--color04);
}
@media (min-width: 768px) and (max-width: 1599px) {
  .main_page {
    background: url("images/page/deco_main_low05.png") no-repeat right top calc(150 / 1599 * 100vw)/calc(190 / 1599 * 100vw), url("images/page/deco_main_low04.png") no-repeat left calc(717 / 1920 * 100vw) top/calc(175 / 1599 * 100vw), url("images/page/deco_main_low03.png") no-repeat left calc(380 / 1599 * 100vw) bottom calc(97 / 1599 * 100vw)/calc(69 / 1599 * 100vw), url("images/page/deco_main_low02.png") no-repeat left calc(230 / 1599 * 100vw) bottom calc(160 / 1599 * 100vw)/calc(168 / 1599 * 100vw), url("images/page/deco_main_low01.png") no-repeat left calc(-85 / 1599 * 100vw) bottom calc(30 / 1599 * 100vw)/calc(280 / 1599 * 100vw), url("images/page/bg_main_low01.png") no-repeat right top/auto 100%;
  }
}
@media (min-width: 768px) and (max-width: 1299px) {
  .box_common01::before {
    left: calc(-54 / var(--break) * 100vw);
  }
}
@media (max-width: 767px) {
  .content_low {
    padding: 13vw 0 25vw;
  }
  .content_low .inner,
  .main_page .inner {
    max-width: calc(702 / var(--break) * 100vw);
  }
  .page_main section:not(:last-child) {
    margin-bottom: calc(100 / var(--break) * 100vw);
  }
  .main_page {
    background: url("images/page/bg_ttl_page_sp.jpg") no-repeat center/cover;
    height: calc(500 / var(--break) * 100vw);
    padding-top: calc(134 / var(--break) * 100vw);
  }
  .hdg2 .ja {
    font-size: 1.5625rem;
    line-height: 1.4;
    margin-bottom: calc(28 / var(--break) * 100vw);
  }
  .hdg2 .en {
    font-size: calc(28 / var(--break) * 100vw);
  }
  .hdg3 {
    font-size: calc(40 / var(--break) * 100vw);
    min-height: calc(160 / var(--break) * 100vw);
    line-height: 1.5;
  }
  .hdg4 {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .hdg5 {
    font-size: calc(34 / var(--break) * 100vw);
  }
  .bg_common01::before {
    display: none;
  }
  .bnr_common01 {
    width: calc(646 / var(--break) * 100vw);
    padding-right: calc(12 / var(--break) * 100vw);
    height: calc(164 / var(--break) * 100vw);
  }
  .bnr_common01::after {
    height: calc(53 / var(--break) * 100vw);
  }
  .bnr_common01 .col_txt .txt01 {
    font-size: calc(28.1 / var(--break) * 100vw);
  }
  .bnr_common01 .col_txt .txt02 {
    font-size: calc(23.4 / var(--break) * 100vw);
  }
  .bnr_common01 .col_txt .txt02::after {
    width: calc(29.3 / var(--break) * 100vw);
    height: calc(29.3 / var(--break) * 100vw);
    right: calc(-10 / var(--break) * 100vw);
  }
  .bnr_common01 .col_img {
    aspect-ratio: 1;
  }
  .bnr_common01 .col_img .img {
    height: 100%;
  }
  .box_common01::before {
    width: calc(74 / var(--break) * 100vw);
    height: calc(118 / var(--break) * 100vw);
    top: calc(-46 / var(--break) * 100vw);
    left: calc(-18 / var(--break) * 100vw);
  }
  .box_common01 .copy {
    font-size: calc(36 / var(--break) * 100vw);
    min-height: calc(65 / var(--break) * 100vw);
  }
  .box_common02 {
    border: calc(2 / var(--break) * 100vw) solid var(--color01);
    outline: calc(2 / var(--break) * 100vw) solid var(--color01);
    outline-offset: calc(-12 / var(--break) * 100vw);
  }
  .box_common02 .copy {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .box_pay01 {
    border: calc(2 / var(--break) * 100vw) solid var(--color01);
  }
  .box_pay01 .ttl {
    font-size: calc(40 / var(--break) * 100vw);
  }
  .btn_pay01 {
    max-width: calc(600 / var(--break) * 100vw);
    min-height: calc(80 / var(--break) * 100vw);
  }
  .btn_pay01 .txt {
    font-size: calc(32 / var(--break) * 100vw);
  }
  .btn_pay01::after {
    width: calc(40 / var(--break) * 100vw);
    height: calc(40 / var(--break) * 100vw);
  }
  .circle_common01 {
    bottom: calc(20 / var(--break) * 100vw);
  }
  .circle_common01 .txt {
    font-size: calc(28 / var(--break) * 100vw);
    line-height: 1.5;
  }
  .copy_pay01 {
    font-size: calc(34 / var(--break) * 100vw);
  }
  .list_common01 li {
    width: 100%;
    padding-top: calc(10 / var(--break) * 100vw);
    padding-bottom: calc(10 / var(--break) * 100vw);
    padding-left: calc(40 / var(--break) * 100vw);
  }
  .list_common01 li::before {
    width: calc(30 / var(--break) * 100vw);
    top: calc(21 / var(--break) * 100vw);
    height: calc(30 / var(--break) * 100vw);
  }
  .row_common01 {
    flex-direction: column;
  }
  .row_common01 .col_img {
    width: 100%;
    margin-bottom: 5vw;
  }
  .row_common01 .col_txt {
    width: 100%;
    margin-top: 0;
  }
  .row_common01 .col_txt .copy {
    font-size: calc(36 / var(--break) * 100vw);
    text-align: center;
  }
  .row_common02 {
    flex-direction: column;
  }
  .row_common02 .col_img {
    width: 100%;
    margin-bottom: 5vw;
  }
  .row_common02 .col_txt {
    width: 100%;
    margin-top: 0;
  }
  .row_common02 .col_txt .copy {
    font-size: calc(34 / var(--break) * 100vw);
    text-align: center;
  }
  .row_common03 {
    flex-direction: column;
  }
  .row_common03 .col_img {
    width: 100%;
    margin-bottom: 5vw;
  }
  .row_common03 .col_txt {
    width: 100%;
    margin-top: 0;
  }
  .row_common03 .col_txt .ttl {
    font-size: calc(34 / var(--break) * 100vw);
    text-align: center;
  }
  .row_common04 {
    flex-direction: column;
    max-width: calc(646 / var(--break) * 100vw);
    margin-left: auto;
    margin-right: auto;
    row-gap: calc(30 / var(--break) * 100vw);
  }
  .row_common04 .col {
    width: 100%;
  }
  .row_common04 .col .ttl {
    font-size: calc(32 / var(--break) * 100vw);
    line-height: 1.625;
    min-height: calc(120 / var(--break) * 100vw);
    padding-top: calc(17 / var(--break) * 100vw);
  }
  .row_pay01 {
    column-gap: calc(20 / var(--break) * 100vw);
    row-gap: calc(22 / var(--break) * 100vw);
  }
  .row_pay01 .col {
    width: calc((100% - 20 / var(--break) * 100vw) / 2);
  }
  .row_pay01 .col .ttl {
    font-size: calc(34 / var(--break) * 100vw);
  }
}

/* clinic
------------------------------------------------------------------*/
.bg_clinic01 {
  background: url("images/clinic/bg_clinic01.jpg") no-repeat center/cover;
}
.bg_clinic01 .deco01 {
  width: calc(500 / var(--break) * 100vw);
  left: 0;
  top: 0;
}
.bg_clinic01 .deco02 {
  width: calc(270 / var(--break) * 100vw);
  right: 0;
  bottom: calc(60 / var(--break) * 100vw);
}
.bg_clinic02::before {
  position: absolute;
  content: "";
  pointer-events: none;
  width: 100%;
  height: calc(250 / 778 * 100%);
  bottom: 0;
  left: 0;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.box_clinic01 {
  background: rgba(255, 255, 255, 0.8);
}
.box_clinic02 {
  max-width: calc(1620 / 1920 * 100%);
  margin-left: calc(126 / var(--break) * 100vw);
  position: relative;
}
.box_clinic03 .ttl {
  min-height: calc(70 / var(--break) * 100vw);
}
.box_clinic04 .img {
  max-width: calc(1009 / 1240 * 100%);
}
.circle_clinic01 {
  width: calc(240 / var(--break) * 100vw);
  height: calc(240 / var(--break) * 100vw);
  border-radius: 50%;
}
.circle_clinic01 .txt {
  line-height: 1.5833333333;
}
.circle_clinic02 {
  width: calc(160 / var(--break) * 100vw);
  height: calc(160 / var(--break) * 100vw);
  border-radius: 50%;
  bottom: calc(-40 / var(--break) * 100vw);
  left: calc(40 / var(--break) * 100vw);
}
.circle_clinic02 .txt {
  line-height: 1.6666666667;
}
.circle_clinic03 {
  width: calc(150 / var(--break) * 100vw);
  height: calc(150 / var(--break) * 100vw);
  border-radius: 50%;
  border: calc(2 / var(--break) * 100vw) solid #fff;
  top: calc(30 / var(--break) * 100vw);
  left: calc(30 / var(--break) * 100vw);
}
.circle_clinic03 .txt {
  line-height: 2.1111111111;
}
.content_clinic01 {
  max-width: calc(680 / 960 * 100%);
}
.content_clinic02 > .deco {
  top: calc(-40 / var(--break) * 100vw);
  left: calc(70 / var(--break) * 100vw);
  width: calc(229 / var(--break) * 100vw);
}
.content_clinic03 {
  border-bottom: calc(2 / var(--break) * 100vw) solid #f5f5f5;
}
.content_clinic03.last {
  border-bottom: none;
}
.copy_clinic01 {
  margin-top: calc(-10 / var(--break) * 100vw);
}
.row_clinic01 .col_txt {
  width: 50%;
}
.row_clinic01 .col_txt > .deco01 {
  right: calc(40 / var(--break) * 100vw);
  top: 0;
  width: calc(172 / var(--break) * 100vw);
}
.row_clinic01 .col_txt > .deco02 {
  right: calc(17 / var(--break) * 100vw);
  top: 0;
  width: calc(176 / var(--break) * 100vw);
}
.row_clinic01 .col_txt > .deco03 {
  left: 0;
  top: calc(120 / var(--break) * 100vw);
  width: calc(103 / var(--break) * 100vw);
}
.row_clinic01 .col_txt > .deco04 {
  right: calc(40 / var(--break) * 100vw);
  top: 0;
  width: calc(240 / var(--break) * 100vw);
}
.row_clinic01 .col_txt > .deco05 {
  right: 0;
  top: calc(-15 / var(--break) * 100vw);
  width: calc(210 / var(--break) * 100vw);
}
.row_clinic01 .col_txt > .deco06 {
  left: 0;
  top: 0;
  width: calc(165 / var(--break) * 100vw);
}
.row_clinic01 .col_txt > .deco07 {
  right: calc(20 / var(--break) * 100vw);
  top: 0;
  width: calc(228 / var(--break) * 100vw);
}
.row_clinic01 .col_img {
  width: 50%;
}
.row_clinic02 {
  column-gap: calc(9 / var(--break) * 100vw);
  right: calc(39 / var(--break) * 100vw);
  bottom: calc(-30 / var(--break) * 100vw);
}
.row_clinic03 {
  width: calc(1500 / 1620 * 100%);
}
.row_clinic03 .col_img {
  width: calc(500 / 1500 * 100%);
}
.row_clinic03 .col_img .img {
  width: 100%;
  top: calc(-110 / var(--break) * 100vw);
}
.row_clinic03 .col_txt {
  width: calc(960 / 1500 * 100%);
}
.row_clinic03 .col_txt .ttl {
  padding-top: calc(3 / var(--break) * 100vw);
  padding-bottom: calc(3 / var(--break) * 100vw);
}
.row_clinic04 {
  column-gap: calc(29 / 1240 * 100%);
  row-gap: calc(30 / var(--break) * 100vw);
}
.row_clinic04 .col {
  width: calc(394 / 1240 * 100%);
}
.row_clinic04 .ttl {
  min-height: calc(70 / var(--break) * 100vw);
}
.row_clinic06 .col {
  width: calc(360 / 1500 * 100%);
}
.row_clinic06 .col .ttl {
  min-height: calc(66 / var(--break) * 100vw);
}
.slide_clinic01 .slick-prev {
  background: url(images/page/arw_slide01.svg) no-repeat center/cover;
  width: calc(30 / var(--break) * 100vw);
  height: calc(54 / var(--break) * 100vw);
  transform: translate(0);
  top: 0;
  bottom: 0;
  margin: auto;
  left: -7.2%;
  z-index: 1;
}
.slide_clinic01 .slick-next {
  background: url(images/page/arw_slide01.svg) no-repeat center/cover;
  width: calc(30 / var(--break) * 100vw);
  height: calc(54 / var(--break) * 100vw);
  right: -7.2%;
  transform: translate(0) scaleX(-1);
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 1;
}
.slide_clinic01 .slick-prev:before,
.slide_clinic01 .slick-next:before {
  display: none;
}
.slide_clinic01 .slide_thumbnail li {
  width: 18%;
  margin-right: 2.5%;
  margin-bottom: 2%;
  opacity: 0.5;
  transition: 0.3s;
}
.slide_clinic01 .slide_thumbnail li.thumbnail-current {
  opacity: 1;
}
.slide_clinic01 .slide_thumbnail li:nth-child(5n),
.slide_clinic01 .slide_thumbnail li:last-child {
  margin-right: 0;
}
.slide_clinic01 .slide_thumbnail li:hover {
  opacity: 1;
  transition: 0.3s;
  cursor: pointer;
}
.wrap_clinic01::before {
  position: absolute;
  content: "";
  pointer-events: none;
  width: 100%;
  height: calc(150 / 920 * 100%);
  bottom: 0;
  left: 0;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.wrap_clinic01::after {
  position: absolute;
  content: "";
  z-index: -1;
  pointer-events: none;
  width: 100%;
  height: calc(679 / 920 * 100%);
  bottom: 0;
  left: 0;
  background: var(--color12);
}
.wrap_clinic02::before {
  position: absolute;
  content: "";
  pointer-events: none;
  width: 100%;
  height: calc(150 / 550 * 100%);
  bottom: 0;
  left: 0;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.wrap_clinic02::after {
  position: absolute;
  content: "";
  z-index: -1;
  pointer-events: none;
  width: 100%;
  height: calc(305 / 550 * 100%);
  bottom: 0;
  left: 0;
  background: var(--color11);
}
.wrap_clinic03::before {
  position: absolute;
  content: "";
  pointer-events: none;
  width: 100%;
  height: calc(150 / 924 * 100%);
  bottom: 0;
  left: 0;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.wrap_clinic03::after {
  position: absolute;
  content: "";
  z-index: -1;
  pointer-events: none;
  width: 100%;
  height: calc(679 / 924 * 100%);
  bottom: 0;
  left: 0;
  background: var(--color13);
}
.wrap_clinic04::before {
  position: absolute;
  content: "";
  pointer-events: none;
  width: 100%;
  height: calc(150 / 550 * 100%);
  bottom: 0;
  left: 0;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.wrap_clinic04::after {
  position: absolute;
  content: "";
  z-index: -1;
  pointer-events: none;
  width: 100%;
  height: calc(305 / 550 * 100%);
  bottom: 0;
  left: 0;
  background: var(--color10);
}
.wrap_clinic05::before {
  position: absolute;
  content: "";
  pointer-events: none;
  width: 100%;
  height: calc(150 / 550 * 100%);
  bottom: 0;
  left: 0;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.wrap_clinic05::after {
  position: absolute;
  content: "";
  z-index: -1;
  pointer-events: none;
  width: 100%;
  height: calc(305 / 550 * 100%);
  bottom: 0;
  left: 0;
  background: var(--color09);
}
.wrap_clinic06 .inner1000 {
  max-width: calc(1000 / var(--break) * 100vw);
}
.wrap_clinic06 .inner1000 > .deco {
  right: 0;
  top: calc(-20 / var(--break) * 100vw);
  transform: translateX(100%);
  width: calc(176 / var(--break) * 100vw);
}
.wrap_clinic07::after {
  position: absolute;
  content: "";
  z-index: -1;
  pointer-events: none;
  width: 100%;
  height: calc(365 / 610 * 100%);
  bottom: 0;
  left: 0;
  background: var(--color11);
}
.wrap_clinic08 {
  margin-top: calc(-60 / var(--break) * 100vw);
}
.wrap_clinic08 > .deco01 {
  left: 0;
  top: calc(30 / var(--break) * 100vw);
  width: calc(231 / var(--break) * 100vw);
}
.wrap_clinic08 > .deco02 {
  right: 0;
  top: calc(30 / var(--break) * 100vw);
  width: calc(230 / var(--break) * 100vw);
}
@media (min-width: 768px) and (max-width: 1899px) {
  .wrap_clinic08 > .deco01 {
    top: calc(-30 / var(--break) * 100vw);
  }
  .wrap_clinic08 > .deco02 {
    top: calc(-60 / var(--break) * 100vw);
  }
}
@media (min-width: 768px) and (max-width: 1599px) {
  .bg_clinic01 .deco01 {
    width: calc(380 / 1599 * 100vw);
  }
  .bg_clinic01 .deco02 {
    width: calc(270 / 1599 * 100vw);
  }
  .box_clinic02 {
    margin-left: auto;
    margin-right: auto;
  }
  .circle_clinic01 {
    width: calc(200 / 1599 * 100vw);
    height: calc(200 / 1599 * 100vw);
  }
  .circle_clinic01 .txt {
    font-size: calc(24 / 1599 * 100vw);
  }
  .circle_clinic01.no02 .txt {
    font-size: calc(22 / 1599 * 100vw);
  }
  .circle_clinic01.no02 .txt span {
    font-size: calc(20 / 1599 * 100vw);
  }
  .content_clinic01 {
    max-width: 80%;
  }
  .content_clinic02 > .deco {
    left: 0;
    width: calc(160 / 1599 * 100vw);
  }
  .row_clinic01 .col_txt {
    padding-top: calc(50 / 1599 * 100vw);
  }
  .row_clinic01 .col_txt > .deco01 {
    width: calc(140 / 1599 * 100vw);
    right: calc(40 / 1599 * 100vw);
  }
  .row_clinic01 .col_txt > .deco02 {
    width: calc(176 / 1599 * 100vw);
    top: calc(-68 / 1599 * 100vw);
  }
  .row_clinic01 .col_txt > .deco03 {
    top: calc(50 / 1599 * 100vw);
    width: calc(103 / 1599 * 100vw);
  }
  .row_clinic01 .col_txt > .deco04 {
    right: calc(20 / 1599 * 100vw);
    width: calc(180 / 1599 * 100vw);
  }
  .row_clinic01 .col_txt > .deco05 {
    width: calc(170 / 1599 * 100vw);
    top: calc(-90 / var(--break) * 100vw);
  }
  .row_clinic01 .col_txt > .deco06 {
    top: calc(-20 / 1599 * 100vw);
    width: calc(140 / 1599 * 100vw);
  }
  .row_clinic01 .col_txt > .deco07 {
    width: calc(200 / 1599 * 100vw);
    top: calc(-20 / var(--break) * 100vw);
  }
  .row_clinic02 {
    right: calc(20 / 1599 * 100vw);
  }
  .row_clinic03 .col_img .img {
    top: 0;
  }
  .row_clinic03 .col_txt .ttl {
    padding-top: calc(3 / 1599 * 100vw);
    padding-bottom: calc(3 / 1599 * 100vw);
    font-size: calc(28 / 1599 * 100vw);
    margin-bottom: calc(20 / 1599 * 100vw);
  }
  .slide_clinic01 .slick-prev,
  .slide_clinic01 .slick-next {
    width: calc(30 / var(--break) * 100vw);
    height: calc(54 / var(--break) * 100vw);
  }
  .wrap_clinic08 > .deco01 {
    width: calc(170 / 1599 * 100vw);
    top: calc(-60 / var(--break) * 100vw);
  }
  .wrap_clinic08 > .deco02 {
    width: calc(150 / 1599 * 100vw);
    top: calc(-60 / var(--break) * 100vw);
  }
}
@media (min-width: 768px) and (max-width: 1299px) {
  .box_clinic02 {
    max-width: 90%;
    margin-top: calc(50 / var(--break) * 100vw);
  }
  .circle_clinic03 {
    width: calc(130 / var(--break) * 100vw);
    height: calc(130 / var(--break) * 100vw);
    top: calc(20 / var(--break) * 100vw);
    left: calc(20 / var(--break) * 100vw);
  }
  .row_clinic01 .col_txt > .deco01 {
    top: calc(-22 / var(--break) * 100vw);
    right: calc(20 / var(--break) * 100vw);
  }
  .row_clinic01 .col_txt > .deco04 {
    top: calc(-10 / var(--break) * 100vw);
  }
  .row_clinic01 .col_txt > .deco06 {
    top: 0;
  }
  .slide_clinic01 .slick-prev,
  .slide_clinic01 .slick-next {
    width: calc(30 / var(--break) * 100vw);
    height: calc(54 / var(--break) * 100vw);
  }
  .slide_clinic01 .slick-prev {
    left: 2%;
  }
  .slide_clinic01 .slick-next {
    right: 2%;
  }
  .wrap_clinic06 .inner1000 {
    max-width: calc(800 / var(--break) * 100vw);
  }
}
@media (max-width: 767px) {
  .bg_clinic01 .deco01 {
    width: calc(300 / var(--break) * 100vw);
  }
  .box_clinic01 .copy {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .box_clinic02 {
    max-width: calc(702 / var(--break) * 100vw);
    margin-left: auto;
    margin-right: auto;
  }
  .circle_clinic01 {
    width: calc(230 / var(--break) * 100vw);
    height: calc(230 / var(--break) * 100vw);
  }
  .circle_clinic01 .txt {
    font-size: calc(28 / var(--break) * 100vw);
  }
  .circle_clinic01.no02 .txt {
    font-size: calc(26 / var(--break) * 100vw);
  }
  .circle_clinic01.no02 .txt span {
    font-size: calc(24 / var(--break) * 100vw);
  }
  .circle_clinic02 {
    width: calc(170 / var(--break) * 100vw);
    height: calc(170 / var(--break) * 100vw);
    left: auto;
    right: calc(20 / var(--break) * 100vw);
  }
  .circle_clinic02 .txt {
    font-size: calc(32 / var(--break) * 100vw);
  }
  .circle_clinic03 {
    width: calc(200 / var(--break) * 100vw);
    height: calc(200 / var(--break) * 100vw);
  }
  .circle_clinic03 .txt {
    font-size: calc(28 / var(--break) * 100vw);
    line-height: 1.7142857143;
  }
  .content_clinic01 {
    max-width: calc(646 / var(--break) * 100vw);
  }
  .content_clinic01 .copy {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .content_clinic02 > .deco {
    display: none;
  }
  .content_clinic03 .ttl {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .copy_clinic01 {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .row_clinic01 {
    flex-direction: column;
  }
  .row_clinic01.no01 {
    margin-bottom: calc(130 / var(--break) * 100vw);
  }
  .row_clinic01.no01 .col_txt {
    padding-top: calc(75 / var(--break) * 100vw);
  }
  .row_clinic01 .col_txt {
    width: 100%;
    padding-top: 5vw;
  }
  .row_clinic01 .col_txt > .deco01 {
    width: calc(108 / var(--break) * 100vw);
    right: auto;
    left: calc(30 / var(--break) * 100vw);
    top: calc(30 / var(--break) * 100vw);
    transform: scaleX(-1);
  }
  .row_clinic01 .col_txt > .deco02 {
    right: calc(32 / var(--break) * 100vw);
    top: calc(-19 / var(--break) * 100vw);
    width: calc(126 / var(--break) * 100vw);
  }
  .row_clinic01 .col_txt > .deco03 {
    top: calc(65 / var(--break) * 100vw);
    width: calc(65 / var(--break) * 100vw);
  }
  .row_clinic01 .col_txt > .deco04 {
    right: calc(10 / var(--break) * 100vw);
    top: calc(14 / var(--break) * 100vw);
    width: calc(140 / var(--break) * 100vw);
  }
  .row_clinic01 .col_txt > .deco05 {
    top: calc(-70 / var(--break) * 100vw);
    width: calc(135 / var(--break) * 100vw);
  }
  .row_clinic01 .col_txt > .deco06 {
    left: 0;
    top: calc(21 / var(--break) * 100vw);
    width: calc(120 / var(--break) * 100vw);
  }
  .row_clinic01 .col_txt > .deco07 {
    display: none;
  }
  .row_clinic01 .col_img {
    width: calc(100% - 24 / var(--break) * 100vw);
  }
  .row_clinic02 {
    right: calc(20 / var(--break) * 100vw);
    bottom: calc(-60 / var(--break) * 100vw);
    flex-direction: column;
    row-gap: calc(9 / var(--break) * 100vw);
  }
  .row_clinic03 {
    flex-direction: column;
    width: calc(646 / var(--break) * 100vw);
  }
  .row_clinic03 .col_img {
    width: 100%;
    margin-top: calc(-150 / var(--break) * 100vw);
    margin-bottom: calc(60 / var(--break) * 100vw);
  }
  .row_clinic03 .col_img .img {
    position: static;
  }
  .row_clinic03 .col_img .img img {
    width: 100%;
  }
  .row_clinic03 .col_txt {
    width: 100%;
  }
  .row_clinic03 .col_txt .ttl {
    font-size: calc(32 / var(--break) * 100vw);
    line-height: 1.625;
    height: calc(90 / var(--break) * 100vw);
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(140 / var(--break) * 100vw);
    position: relative;
    margin-bottom: calc(30 / var(--break) * 100vw);
  }
  .row_clinic03 .col_txt .txt {
    margin-bottom: calc(6 / var(--break) * 100vw);
  }
  .row_clinic04 {
    column-gap: calc(20 / var(--break) * 100vw);
    row-gap: calc(22 / var(--break) * 100vw);
    justify-content: center;
  }
  .row_clinic04 .col {
    width: calc((100% - 20 / var(--break) * 100vw) / 2);
  }
  .row_clinic04 .ttl {
    font-size: calc(34 / var(--break) * 100vw);
    min-height: auto;
  }
  .row_clinic06 {
    row-gap: calc(22 / var(--break) * 100vw);
  }
  .row_clinic06 .col {
    width: calc((100% - 20 / var(--break) * 100vw) / 2);
  }
  .row_clinic06 .col .ttl {
    font-size: calc(34 / var(--break) * 100vw);
    min-height: auto;
  }
  .slide_clinic01 .slick-prev,
  .slide_clinic01 .slick-next {
    width: calc(30 / var(--break) * 100vw);
    height: calc(54 / var(--break) * 100vw);
  }
  .slide_clinic01 .slick-prev {
    left: 3vw;
  }
  .slide_clinic01 .slick-next {
    right: 3vw;
  }
  .wrap_clinic01::after {
    height: calc(720 / 920 * 100%);
  }
  .wrap_clinic02::before {
    height: calc(150 / var(--break) * 100vw);
  }
  .wrap_clinic02::after {
    height: calc(272 / 550 * 100%);
  }
  .wrap_clinic03::after {
    height: calc(655 / 924 * 100%);
  }
  .wrap_clinic04::before {
    height: calc(150 / var(--break) * 100vw);
  }
  .wrap_clinic04::after {
    height: calc(303 / 550 * 100%);
  }
  .wrap_clinic05::before {
    height: calc(150 / var(--break) * 100vw);
  }
  .wrap_clinic05::after {
    height: calc(300 / 550 * 100%);
  }
  .wrap_clinic07::after {
    height: calc(359 / 610 * 100%);
  }
  .wrap_clinic08 > .deco01 {
    width: calc(180 / var(--break) * 100vw);
  }
  .wrap_clinic08 > .deco02 {
    top: auto;
    bottom: calc(-30 / var(--break) * 100vw);
    width: calc(150 / var(--break) * 100vw);
  }
}

/* access
------------------------------------------------------------------*/
.logo_access img {
  width: calc(540 / var(--break) * 100vw);
}
.row_access01 {
  max-width: calc(1067 / var(--break) * 100vw);
}
.row_access01 > .col_l {
  width: calc(404 / 1067 * 100%);
}
.row_access01 > .col_r {
  width: calc(530 / 1067 * 100%);
}
.ttl_access01 {
  width: fit-content;
}
.ttl_access01::before, .ttl_access01::after {
  position: absolute;
  content: "";
  width: calc(32 / var(--break) * 100vw);
  height: calc(32 / var(--break) * 100vw);
  background: url("images/page/deco_ttl.svg") no-repeat center/contain;
}
.ttl_access01::before {
  top: calc(-2 / var(--break) * 100vw);
  left: calc(-66 / var(--break) * 100vw);
}
.ttl_access01::after {
  bottom: calc(-2 / var(--break) * 100vw);
  right: calc(-66 / var(--break) * 100vw);
  transform: rotate(180deg);
}
.wrap_access01::after {
  position: absolute;
  content: "";
  width: 100%;
  height: calc(684 / 935 * 100%);
  background: var(--color13);
  bottom: 0;
  left: 0;
  z-index: -1;
}
@media (max-width: 767px) {
  .row_access01 {
    flex-direction: column;
    row-gap: calc(14 / var(--break) * 100vw);
    max-width: 100%;
    background: var(--color13);
    padding-top: calc(80 / var(--break) * 100vw);
    padding-bottom: calc(85 / var(--break) * 100vw);
  }
  .row_access01 > .col_l {
    width: calc(702 / var(--break) * 100vw);
    margin-left: auto;
    margin-right: auto;
  }
  .row_access01 > .col_r {
    width: calc(702 / var(--break) * 100vw);
    margin-left: auto;
    margin-right: auto;
  }
  .ttl_access01 {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .wrap_access01 {
    padding-bottom: 0;
  }
  .wrap_access01::after {
    display: none;
  }
  .wrap_access02 {
    background: var(--color13);
    padding-top: calc(60 / var(--break) * 100vw);
    padding-bottom: calc(60 / var(--break) * 100vw);
  }
}

/* cosmetic
------------------------------------------------------------------*/
.circle_cosmetic01 {
  width: calc(180 / var(--break) * 100vw);
  height: calc(180 / var(--break) * 100vw);
  border-radius: 50%;
  right: calc(19 / var(--break) * 100vw);
  bottom: calc(-41 / var(--break) * 100vw);
}
.content_cosmetic01:not(:last-child) {
  border-bottom: calc(2 / var(--break) * 100vw) solid #f5f5f5;
}
.tbl_cosmetic01 .tbl_title {
  font-weight: 300;
  min-height: calc(80 / var(--break) * 100vw);
}
.tbl_cosmetic01.no01 .tbl_title {
  border-top: 1px solid var(--color04);
  border-left: 1px solid var(--color04);
  border-right: 1px solid var(--color04);
}
.tbl_cosmetic01.no02 .tbl_title {
  border-left: 1px solid var(--color04);
  border-right: 1px solid var(--color04);
}
@media (max-width: 767px) {
  .circle_cosmetic01 {
    width: calc(190 / var(--break) * 100vw);
    height: calc(190 / var(--break) * 100vw);
  }
  .circle_cosmetic01 .txt {
    line-height: 1.3;
  }
  .circle_cosmetic01 .txt01 {
    font-size: calc(28 / var(--break) * 100vw);
  }
  .circle_cosmetic01 .txt02 {
    font-size: calc(24 / var(--break) * 100vw);
  }
  .content_cosmetic01 .ttl {
    font-size: calc(34 / var(--break) * 100vw);
    text-align: center;
  }
}

/* fee
------------------------------------------------------------------*/
.row_fee01 {
  row-gap: calc(20 / var(--break) * 100vw);
}
.row_fee01 .col {
  width: calc(360 / 1500 * 100%);
}
.row_fee01 .col::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(18 / var(--break) * 100vw);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: calc(10 / var(--break) * 100vw) calc(14.9 / var(--break) * 100vw) 0px calc(14.9 / var(--break) * 100vw);
  border-color: #fff transparent transparent transparent;
}
@media (max-width: 767px) {
  .row_fee01 {
    column-gap: calc(20 / var(--break) * 100vw);
  }
  .row_fee01 .col {
    width: calc((100% - 20 / var(--break) * 100vw) / 2);
  }
  .row_fee01 .col .ttl {
    font-size: calc(34 / var(--break) * 100vw);
  }
}

/* general
------------------------------------------------------------------*/
.bnr_general01 {
  max-width: calc(600 / var(--break) * 100vw);
}
.content_general01::after {
  position: absolute;
  content: "";
  z-index: -1;
  width: 100%;
  height: 50%;
  bottom: 0;
  left: 0;
  background: var(--color13);
}
.content_general02::after {
  position: absolute;
  content: "";
  z-index: -1;
  width: 100%;
  height: calc(250 / 658 * 100%);
  bottom: 0;
  left: 0;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.row_general03 {
  column-gap: calc(29 / 1240 * 100%);
}
.row_general03 .col {
  width: calc(394 / 1240 * 100%);
}
.row_general03 .col .ttl {
  min-height: calc(70 / var(--break) * 100vw);
}
.row_general04 .col_img {
  width: calc(570 / 1500 * 100%);
}
.row_general04 .col_txt {
  width: calc(870 / 1500 * 100%);
}
.row_general04 .col_txt .copy {
  margin-top: calc(-10 / var(--break) * 100vw);
}
@media (max-width: 767px) {
  .row_general03 {
    flex-direction: column;
    max-width: calc(600 / var(--break) * 100vw);
    margin-left: auto;
    margin-right: auto;
    row-gap: 5vw;
  }
  .row_general03 .col {
    width: 100%;
  }
  .row_general03 .col .ttl {
    font-size: calc(34 / var(--break) * 100vw);
  }
  .row_general04 {
    flex-direction: column;
  }
  .row_general04 .col_img {
    width: 100%;
    max-width: calc(600 / var(--break) * 100vw);
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5vw;
  }
  .row_general04 .col_txt {
    width: 100%;
  }
  .row_general04 .col_txt .copy {
    margin-top: 0;
    text-align: center;
    font-size: calc(34 / var(--break) * 100vw);
  }
}

/* implant
------------------------------------------------------------------*/
.bg_implant02::after {
  position: absolute;
  content: "";
  width: 100%;
  height: calc(250 / 784 * 100%);
  bottom: 0;
  left: 0;
  z-index: -1;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.copy_implant01 {
  margin-top: calc(-10 / var(--break) * 100vw);
}
.row_implant03 {
  column-gap: calc(37.5 / 1500 * 100%);
}
.row_implant03 .col {
  width: calc(475 / 1500 * 100%);
}
.row_implant03 .col .ttl {
  min-height: calc(60 / var(--break) * 100vw);
  padding-top: calc(9 / var(--break) * 100vw);
  padding-bottom: calc(9 / var(--break) * 100vw);
}
.row_implant03 .col .txt {
  padding-left: calc(40 / 475 * 100%);
  padding-right: calc(40 / 475 * 100%);
}
.tbl_implant01 table {
  border: 2px solid var(--color01);
}
.tbl_implant01 table th {
  background: var(--color02);
  font-weight: normal;
  vertical-align: middle;
  text-align: center;
}
.tbl_implant01 table thead tr:first-child th.t2 {
  position: relative;
}
.tbl_implant01 table thead tr:first-child th.t2::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  background: var(--color12);
  bottom: -1px;
  left: 0;
}
.tbl_implant01 table thead tr:first-child th.t2, .tbl_implant01 table thead tr:first-child th.t3, .tbl_implant01 table thead tr:first-child th.t4 {
  border-right: 1px solid #fff;
}
.tbl_implant01 table thead tr:nth-child(2) th.t2, .tbl_implant01 table thead tr:nth-child(2) th.t3, .tbl_implant01 table thead tr:nth-child(2) th.t4 {
  border-right: 1px solid var(--color01);
}
.tbl_implant01 table thead th {
  padding: 0;
}
.tbl_implant01 table thead th:not(.t1) {
  background: #fff;
}
.tbl_implant01 table thead th .ttl {
  min-height: calc(60 / var(--break) * 100vw);
}
.tbl_implant01 table thead th .img {
  padding: calc(20 / var(--break) * 100vw) calc(15 / var(--break) * 100vw);
}
.tbl_implant01 table .t1 {
  width: calc(180 / 1240 * 100%);
}
.tbl_implant01 table .t2,
.tbl_implant01 table .t3,
.tbl_implant01 table .t4,
.tbl_implant01 table .t5 {
  width: calc(265 / 1240 * 100%);
}
.tbl_implant01 table .t2 {
  background: var(--color12) !important;
}
.tbl_implant01 table tbody th {
  border-top: 1px solid #fff;
}
.tbl_implant01 table tbody td {
  border-top: 1px solid var(--color01);
  border-right: 1px solid var(--color01);
  text-align: center;
  padding-top: calc(25 / var(--break) * 100vw);
  padding-bottom: calc(22 / var(--break) * 100vw);
  line-height: 2;
}
.tbl_implant01 table tbody td .mark {
  font-size: calc(30 / var(--break) * 100vw);
  line-height: 1;
  display: block;
  margin-bottom: calc(11 / var(--break) * 100vw);
}
@media (max-width: 767px) {
  .copy_implant01 {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .row_implant03 {
    flex-direction: column;
    max-width: calc(600 / var(--break) * 100vw);
    margin-left: auto;
    margin-right: auto;
    row-gap: 5vw;
  }
  .row_implant03 .col {
    width: 100%;
  }
  .row_implant03 .col .ttl {
    font-size: calc(34 / var(--break) * 100vw);
  }
  .row_implant03 .col .txt {
    padding-left: calc(40 / var(--break) * 100vw);
    padding-right: calc(40 / var(--break) * 100vw);
  }
  .row_implant04 {
    max-width: calc(600 / var(--break) * 100vw);
  }
  .tbl_implant01 table {
    width: calc(1660 / var(--break) * 100vw);
    border: calc(2 / var(--break) * 100vw) solid var(--color01);
  }
  .tbl_implant01 table thead th .ttl {
    font-size: calc(32 / var(--break) * 100vw);
  }
  .tbl_implant01 table tbody td {
    line-height: 1.5;
  }
}

/* pediatric
------------------------------------------------------------------*/
.bg_pediatric02::after {
  position: absolute;
  content: "";
  width: 100%;
  height: calc(200 / 822 * 100%);
  bottom: 0;
  left: 0;
  z-index: -1;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.bnr_pediatric01 .col_txt .txt02 {
  padding-right: 0;
}
.bnr_pediatric01 .col_txt .txt02::after {
  right: calc(-53 / var(--break) * 100vw);
}
.copy_pediatric01 {
  width: fit-content;
}
.copy_pediatric01::before, .copy_pediatric01::after {
  position: absolute;
  content: "";
  width: calc(18 / var(--break) * 100vw);
  height: calc(27 / var(--break) * 100vw);
  top: 50%;
  background: url("images/pediatric/deco_pediatric01.svg") no-repeat center/contain;
}
.copy_pediatric01::before {
  left: calc(-45 / var(--break) * 100vw);
  transform: translateY(-50%);
}
.copy_pediatric01::after {
  transform: translateY(-50%) scaleX(-1);
  right: calc(-45 / var(--break) * 100vw);
}
.row_pediatric03 .col {
  width: calc(400 / 1240 * 100%);
  padding-left: calc(30 / 1240 * 100%);
  padding-right: calc(30 / 1240 * 100%);
}
.row_pediatric03 .col .icn img {
  width: calc(160 / var(--break) * 100vw);
}
.row_pediatric03 .col .ttl {
  border-bottom: calc(2 / var(--break) * 100vw) solid var(--color03);
}
@media (max-width: 767px) {
  .copy_pediatric01 {
    font-size: calc(34 / var(--break) * 100vw);
  }
  .copy_pediatric01::before {
    left: calc(-36 / var(--break) * 100vw);
  }
  .copy_pediatric01::after {
    right: calc(-36 / var(--break) * 100vw);
  }
  .row_pediatric03 {
    flex-direction: column;
    row-gap: calc(30 / var(--break) * 100vw);
  }
  .row_pediatric03 .col {
    width: 100%;
    padding-left: calc(30 / var(--break) * 100vw);
    padding-right: calc(30 / var(--break) * 100vw);
  }
  .row_pediatric03 .col .ttl {
    font-size: calc(34 / var(--break) * 100vw);
    padding-top: calc(10 / var(--break) * 100vw);
  }
}

/* perio
------------------------------------------------------------------*/
.copy_perio01 {
  margin-top: calc(-7 / var(--break) * 100vw);
}
@media (max-width: 767px) {
  .copy_perio01 {
    font-size: calc(36 / var(--break) * 100vw);
  }
}

/* prevention
------------------------------------------------------------------*/
.bg_prevention02 {
  padding-top: calc(52 / var(--break) * 100vw);
}
.bg_prevention02::after {
  position: absolute;
  content: "";
  width: 100%;
  height: calc(200 / 544 * 100%);
  bottom: 0;
  left: 0;
  z-index: -1;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.box_prevention03 .img img {
  width: calc(908 / 1240 * 100%);
}
.copy_prevention02 {
  margin-top: calc(-7 / var(--break) * 100vw);
}
.row_prevention04 .col {
  width: calc(400 / 1240 * 100%);
  padding-left: calc(30 / 1240 * 100%);
  padding-right: calc(30 / 1240 * 100%);
}
.row_prevention04 .col .ttl {
  border-bottom: 1px solid var(--color03);
}
@media (max-width: 767px) {
  .box_prevention03 .img img {
    width: 90%;
  }
  .copy_prevention01 {
    font-size: calc(34 / var(--break) * 100vw);
    letter-spacing: 0.1em;
  }
  .copy_prevention02 {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .row_prevention04 {
    flex-direction: column;
    row-gap: calc(30 / var(--break) * 100vw);
  }
  .row_prevention04 .col {
    padding-left: calc(30 / var(--break) * 100vw);
    padding-right: calc(30 / var(--break) * 100vw);
  }
  .row_prevention04 .col {
    width: 100%;
  }
  .row_prevention04 .col .ttl {
    font-size: calc(33 / var(--break) * 100vw);
  }
}

/* staff
------------------------------------------------------------------*/
.copy_staff01 {
  margin-top: calc(-10 / var(--break) * 100vw);
}
.list_staff01 li {
  line-height: 2.2;
  column-gap: calc(20 / var(--break) * 100vw);
}
.list_staff01 .year {
  width: calc(80 / var(--break) * 100vw);
}
.list_staff01 .txt {
  flex: 1;
}
.list_staff02 li::before {
  background: var(--color04);
  top: calc(11 / var(--break) * 100vw);
}
.list_staff02 li:not(:first-child) {
  margin-top: calc(13 / var(--break) * 100vw);
}
.name_staff01 {
  background-color: rgba(133, 195, 215, 0.9);
  right: 0;
  bottom: 0;
  width: calc(242 / var(--break) * 100vw);
  height: calc(120 / var(--break) * 100vw);
  border-top-left-radius: calc(50 / var(--break) * 100vw);
}
.row_staff01 .col_img {
  width: calc(700 / 1500 * 100%);
}
.row_staff01 .col_txt {
  width: calc(740 / 1500 * 100%);
  margin-top: calc(-10 / var(--break) * 100vw);
}
.row_staff02 .col {
  width: calc(730 / 1500 * 100%);
  padding-left: calc(50 / 1500 * 100%);
  padding-right: calc(50 / 1500 * 100%);
}
.row_staff02 .col .ttl {
  min-height: calc(50 / var(--break) * 100vw);
}
.row_staff03 .col {
  width: calc(480 / 1500 * 100%);
}
@media (max-width: 767px) {
  .copy_staff01 {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .img_staff01 {
    margin-bottom: calc(40 / var(--break) * 100vw);
  }
  .list_staff01 li {
    line-height: 1.6;
  }
  .list_staff01 li:not(:last-child) {
    margin-bottom: calc(20 / var(--break) * 100vw);
  }
  .list_staff01 .year {
    width: calc(130 / var(--break) * 100vw);
  }
  .list_staff02 li::before {
    top: calc(20 / var(--break) * 100vw);
  }
  .name_staff01 {
    width: calc(300 / var(--break) * 100vw);
    height: calc(150 / var(--break) * 100vw);
  }
  .name_staff01 .ja {
    margin-bottom: calc(5 / var(--break) * 100vw);
  }
  .name_staff01 .ja .txt01 {
    font-size: calc(24 / var(--break) * 100vw);
  }
  .name_staff01 .ja .txt02 {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .name_staff01 .en {
    font-size: calc(22 / var(--break) * 100vw);
  }
  .row_staff01 {
    flex-direction: column;
  }
  .row_staff01 .col_img {
    width: 100%;
    margin-bottom: 5vw;
  }
  .row_staff01 .col_txt {
    width: 100%;
  }
  .row_staff02 {
    flex-direction: column;
    row-gap: 5vw;
  }
  .row_staff02 .col {
    width: 100%;
    padding-left: calc(30 / var(--break) * 100vw);
    padding-right: calc(30 / var(--break) * 100vw);
  }
  .row_staff02 .col .ttl {
    font-size: calc(36 / var(--break) * 100vw);
    min-height: calc(65 / var(--break) * 100vw);
  }
  .row_staff03 {
    justify-content: center;
    column-gap: calc(20 / var(--break) * 100vw);
    row-gap: calc(22 / var(--break) * 100vw);
  }
  .row_staff03 .col {
    width: calc((100% - 20 / var(--break) * 100vw) / 2);
  }
}

/* whitening
------------------------------------------------------------------*/
.box_whitening03 {
  padding-left: calc(50 / 1240 * 100%);
  padding-right: calc(50 / 1240 * 100%);
  border: 2px solid var(--color01);
}
.box_whitening03:not(:last-child)::after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: calc(15 / var(--break) * 100vw) calc(22.5 / var(--break) * 100vw) 0px calc(22.5 / var(--break) * 100vw);
  border-color: var(--color03) transparent transparent transparent;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(-37 / var(--break) * 100vw);
}
.ttl_whitening01 {
  column-gap: calc(18 / var(--break) * 100vw);
}
.ttl_whitening01 .num {
  width: calc(40 / var(--break) * 100vw);
  height: calc(40 / var(--break) * 100vw);
  border-radius: 50%;
}
.ttl_whitening01 .num.no01 {
  padding-left: calc(3 / var(--break) * 100vw);
}
@media (max-width: 767px) {
  .box_whitening03 {
    border: calc(2 / var(--break) * 100vw) solid var(--color01);
  }
  .ttl_whitening01 .num {
    font-size: calc(28 / var(--break) * 100vw);
  }
  .ttl_whitening01 .txt {
    font-size: calc(34 / var(--break) * 100vw);
  }
}

/* 症例紹介 case
------------------------------------------------------------------*/
.area_case_common01:not(:last-of-type) {
  margin-bottom: calc(60 / var(--break) * 100vw);
}
.box_case01 {
  position: relative;
  padding: calc(30 / var(--break) * 100vw) calc(50 / var(--break) * 100vw) calc(60 / var(--break) * 100vw);
}
.row_case01 {
  max-width: calc(1000 / var(--break) * 100vw);
  width: 100%;
}
.row_case01 .en {
  height: calc(50 / var(--break) * 100vw);
}
.row_case01:after {
  border-left: calc(15 / var(--break) * 100vw) solid var(--color09);
  border-top: calc(23 / var(--break) * 100vw) solid transparent;
  border-bottom: calc(23 / var(--break) * 100vw) solid transparent;
  top: calc(55 / var(--break) * 100vw);
}
.slide_case01 .slick-prev:before,
.slide_case01 .slick-next:before {
  display: none;
}
.slide_case01 .slick-prev,
.slide_case01 .slick-next {
  width: calc(30 / var(--break) * 100vw);
  height: calc(54 / var(--break) * 100vw);
  background: url(images/page/arw_slide01.svg) no-repeat center/cover;
  z-index: 9;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: none;
}
.slide_case01 .slick-prev {
  left: 2.4%;
}
.slide_case01 .slick-next {
  right: 2.4%;
  transform: scaleX(-1);
}
.slide_case01 .slick-dots {
  margin-top: var(--size30px);
  position: relative !important;
  bottom: auto;
  line-height: 1;
}
.slide_case01 .slick-dots li {
  width: calc(11 / var(--break) * 100vw);
  height: calc(11 / var(--break) * 100vw);
  margin: 0 calc(8 / var(--break) * 100vw);
}
.slide_case01 .slick-dots li button {
  width: calc(11 / var(--break) * 100vw);
  height: calc(11 / var(--break) * 100vw);
  padding: 0;
}
.slide_case01 .slick-dots li button:before {
  content: "";
  background: var(--color03);
  width: calc(11 / var(--break) * 100vw);
  height: calc(11 / var(--break) * 100vw);
  border-radius: 50%;
  opacity: 1;
}
.slide_case01 .slick-dots li.slick-active button:before {
  background: var(--color07);
  opacity: 1;
}
.slide_case01 .slick-dots li:only-child {
  display: none;
}
.row_case_common01 .col .case_img {
  height: calc(300 / var(--break) * 100vw);
}
.slide_case01 .tbl_case {
  max-width: calc(1000 / var(--break) * 100vw);
}
.tbl_case table {
  /*ボーダー右切れる対策*/
  width: calc(100% - 1px);
  border: 1px solid var(--color08);
}
.tbl_case table tr:not(:last-child) td {
  border-bottom: 1px solid var(--color08);
}
.tbl_case table th {
  background: var(--color08);
}
@media (min-width: 768px) and (max-width: 1299px){
  .slide_case01 .slick-prev {
    left: calc(30 / var(--break) * 100vw);
  }
  .slide_case01 .slick-next {
    right: calc(30 / var(--break) * 100vw);
  }
}
@media (max-width: 767px){
  .slide_case01 .tbl_case {
    max-width: calc(646 / var(--break) * 100vw);
  }
  .area_case_common01 .ttl {
    font-size: calc(48 / var(--break) * 100vw);
  }
  .row_case01 {
    margin-bottom: 7.5vw;
    max-width: calc(646 / var(--break) * 100vw);
    /*opacity: .5;
    transition: .3s;*/
  }
  .row_case01.slick-active {
    opacity: 1;
  }
  .row_case01 .col {
    max-width: calc(480 / var(--break) * 100vw);
    width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
  .row_case01 .col:first-child {
    margin-bottom: 12vw;
  }
  .row_case01:after {
    border-left: calc(40 / var(--break) * 100vw) solid transparent;
    border-right: calc(40 / var(--break) * 100vw) solid transparent;
    border-top: calc(30 / var(--break) * 100vw) solid var(--color09);
    border-bottom: 0;
    top: 0;
  }
  .row_case01 > .flex {
    display: block;
  }
  .row_case01 .en {
    font-size: calc(28 / var(--break) * 100vw);
  }
  .slide_case01 {
    margin-bottom: 8vw;
  }
  .slide_case01 .slick-slide {
    /*max-width: calc(480 / var(--break) * 100vw);*/
  }
  .slide_case01 .slick-slide.slick-center {
    opacity: 1;
    transition: 0.5s;
  }
  .slide_case01 .slick-slide.slick-active {
    opacity: 1;
    transition: 0.5s;
  }
  .slide_case01 .slick-prev,
  .slide_case01 .slick-next {
    width: calc(50 / var(--break) * 100vw);
    height: calc(90 / var(--break) * 100vw);
    bottom: auto;
    top: 64vw;
  }
  .slide_case01 .slick-prev {
    left: calc(25 / var(--break) * 100vw);
  }
  .slide_case01 .slick-next {
    right: calc(25 / var(--break) * 100vw);
  }
  .slide_case01.slick-dotted.slick-slider {
    margin-bottom: 15vw;
  }
  .slide_case01 .slick-dots li {
    width: calc(16 / var(--break) * 100vw);
    height: calc(16 / var(--break) * 100vw);
    margin: 0 calc(14 / var(--break) * 100vw);
  }
  .slide_case01 .slick-dots li button {
    width: calc(16 / var(--break) * 100vw);
    height: calc(16 / var(--break) * 100vw);
  }
  .slide_case01 .slick-dots li button:before {
    width: calc(16 / var(--break) * 100vw);
    height: calc(16 / var(--break) * 100vw);
  }
  .tbl_case tr th {
    /*border-bottom: 1px solid #000;*/
  }
}

/* リスク・副作用
------------------------------------------------------------------*/
.box_risk01 {
  border: 1px solid #333;
}
.box_risk01 .box {
  overflow: hidden;
  max-height: 180px;
  height: auto;
  touch-action: auto !important;
  position: relative;
  padding-right: calc(50 / var(--break) * 100vw);
}
.box_invisalign {
  max-width: 1000px;
  /* border: ; */
}
.box_invisalign .box {
  overflow: hidden;
  max-height: 180px;
  height: auto;
  touch-action: auto !important;
  position: relative;
  padding-right: calc(50 / var(--break) * 100vw);
}

/* パーフェクトスクロールバー */
.risk .ps__thumb-y,
.box_invisalign .ps__thumb-y {
  background: var(--color07) !important;
  right: 0px !important;
  width: 4px !important;
}
.risk .ps--active-x > .ps__rail-x,
.risk .ps--active-y > .ps__rail-y,
.box_invisalign .ps--active-x > .ps__rail-x,
.box_invisalign .ps--active-y > .ps__rail-y {
  background: none !important;
  right: 0px !important;
  width: 4px !important;
  opacity: 1 !important;
}
.risk .ps .ps__rail-x.ps--clicking,
.risk .ps .ps__rail-x:focus,
.risk .ps .ps__rail-x:hover,
.risk .ps .ps__rail-y.ps--clicking,
.risk .ps .ps__rail-y:focus,
.risk .ps .ps__rail-y:hover,
.box_invisalign .ps .ps__rail-x.ps--clicking,
.box_invisalign .ps .ps__rail-x:focus,
.box_invisalign .ps .ps__rail-x:hover,
.box_invisalign .ps .ps__rail-y.ps--clicking,
.box_invisalign .ps .ps__rail-y:focus,
.box_invisalign .ps .ps__rail-y:hoverr {
  opacity: 1 !important;
}
@media (max-width: 767px){
  .box_risk01 .box {
    padding-right: 4vw;
    max-height: calc(420 / var(--break) * 100vw);
  }
  .box_risk01 .ttl,
  .box_invisalign .ttl {
    font-size: 1.125rem;
    letter-spacing: 0;
  }
  .box_risk01 .txt {
    letter-spacing: 0;
  }
  .sp.risk .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y,
  .sp.risk .ps-container > .ps-scrollbar-y-rail,
  .box_invisalign .ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y,
  .box_invisalign .ps-container > .ps-scrollbar-y-rail {
    right: 0 !important;
    width: 2px !important;
  }
}

/* 採用情報 recruit
------------------------------------------------------------------*/
.box_recruit01 {
  background: url("images/recruit/img_recruit04.jpg") no-repeat center/cover;
  padding-left: calc(100 / 1000 * 100%);
  padding-right: calc(100 / 1000 * 100%);
}
.box_recruit01 .content {
  background: rgba(255, 255, 255, 0.9);
}
.box_recruit01 .copy {
  line-height: 1.6666666667;
}
.tbl_guideline01 table {
  border: 1px solid var(--color08);
}
.tbl_guideline01 tr:not(:last-child) td {
  border-bottom: 1px solid var(--color08);
}
.tbl_guideline01 th {
  background: var(--color08);
  width: calc(413 / 1240 * 100%);
}
.tbl_guideline01 td {
  width: calc(827 / 1240 * 100%);
}
.tbl_form01 .require span::after {
  color: #fff;
  background: var(--color06);
}
.tbl_form01 th {
  color: #333333;
}
.tbl_form01 td input,
.tbl_form01 td textarea {
  background-color: var(--color12);
  border-radius: calc(4 / var(--break) * 100vw);
}
.tbl_form01 .box_form {
  background: var(--color13);
}
.tbl_form01 .btn_submit::before {
  display: none;
}
.tbl_form01 .btn_submit::after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0px 0px calc(20 / var(--break) * 100vw) calc(20 / var(--break) * 100vw);
  border-color: transparent transparent var(--color01) transparent;
  right: 0;
  bottom: 0;
}
.tbl_form01 .btn_submit input {
  border: none;
  background: var(--color07);
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: calc(15 / var(--break) * 100vw);
  min-height: calc(60 / var(--break) * 100vw);
}
.tbl_form01 .btn_submit input:disabled {
  background: #ddd;
}
@media (max-width: 767px) {
  .box_recruit01 {
    padding-left: calc(30 / var(--break) * 100vw);
    padding-right: calc(30 / var(--break) * 100vw);
  }
  .box_recruit01 .copy {
    font-size: calc(36 / var(--break) * 100vw);
  }
  .tbl_guideline01 tr th {
    border-bottom: none;
  }
  .tbl_form01 .btn_submit {
    max-width: calc(500 / var(--break) * 100vw);
  }
  .tbl_form01 .btn_submit::after {
    border-width: 0px 0px calc(28 / var(--break) * 100vw) calc(28 / var(--break) * 100vw);
  }
  .tbl_form01 .btn_submit input {
    font-size: calc(34 / var(--break) * 100vw);
    min-height: calc(90 / var(--break) * 100vw);
  }
  .tbl_guideline01 td a {
    text-decoration: underline;
    color: var(--guideline-color);
  }
}

/* お問い合わせ contact
------------------------------------------------------------------*/
.grecaptcha-badge {
  visibility: hidden;
}

/* ブログ blog
------------------------------------------------------------------*/
#sidebar {
  width: 24%;
}
#sidebar h4 {
  background: var(--color03);
  color: #fff;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: calc(40 / var(--break) * 100vw);
  margin-bottom: calc(4 / var(--break) * 100vw);
  text-align: center;
}
#sidebar caption {
  margin-bottom: calc(5 / var(--break) * 100vw);
}
#wp-calendar {
  width: 100%;
  margin-bottom: calc(10 / var(--break) * 100vw);
}
#wp-calendar thead th {
  background: var(--color13);
  border: 1px solid var(--color13);
  border-right-color: var(--color13);
  font-size: 0.8125rem;
  font-weight: normal;
}
#wp-calendar tbody td {
  border: 1px solid var(--color13);
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.8;
}
#wp-calendar tbody td a {
  color: #959595;
  text-decoration: underline;
}
.wp-calendar-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  margin-bottom: calc(60 / var(--break) * 100vw);
  line-height: 1.5;
}
.wp-calendar-nav-prev {
  padding-left: calc(10 / var(--break) * 100vw);
}
.wp-calendar-nav-next {
  padding-right: calc(10 / var(--break) * 100vw);
}
.wp-calendar-nav a {
  padding-bottom: calc(3 / var(--break) * 100vw);
  border-bottom: 1px solid var(--color07);
  color: var(--color07);
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  display: flex;
  -webkit-box-pack: justify;
  /*--- Androidブラウザ用 ---*/
  -ms-flex-pack: justify;
  /*--- IE10 ---*/
  -webkit-justify-content: space-between;
  /*--- safari（PC）用 ---*/
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  /* Safari */
  flex-wrap: wrap;
}
#sidebar ul li {
  width: 100%;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
#sidebar ul li a {
  border-bottom: 1px solid var(--color07);
  color: var(--color07);
  padding-bottom: calc(4 / var(--break) * 100vw);
  line-height: 2.1;
}
.post_main {
  width: 71%;
}
.navigation {
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  display: flex;
  -webkit-box-pack: justify;
  /*--- Androidブラウザ用 ---*/
  -ms-flex-pack: justify;
  /*--- IE10 ---*/
  -webkit-justify-content: space-between;
  /*--- safari（PC）用 ---*/
  justify-content: space-between;
  margin-bottom: calc(60 / var(--break) * 100vw);
}
.navigation li {
  width: calc(170 / var(--break) * 100vw);
}
.navigation .navitop {
  text-align: center;
}
.navigation .naviright {
  text-align: right;
}
.navigation li a {
  padding-bottom: calc(4 / var(--break) * 100vw);
  border-bottom: 1px solid var(--color07);
  color: var(--color07);
}
.post_content img {
  max-width: 100%;
  height: auto;
}
.date_single {
  display: block;
  text-align: right;
  font-size: 0.8125rem;
  margin-top: calc(-30 / var(--break) * 100vw);
  margin-bottom: calc(40 / var(--break) * 100vw);
}
.post_content {
  line-height: 2;
}
.thmb {
  width: calc(120 / var(--break) * 100vw);
}
.thmb img {
  height: calc(120 / var(--break) * 100vw);
  object-fit: cover;
}
.thmb a:hover .img_thmb {
  opacity: 0.75;
}
.txt_post {
  width: calc(100% - 140 / var(--break) * 100vw);
}
.page_main section.blog_archive {
  padding-bottom: calc(35 / var(--break) * 100vw);
  border-bottom: 1px solid var(--color13);
}
.post_main section.blog_archive:not(:last-child) {
  margin-bottom: calc(40 / var(--break) * 100vw);
}
.txt_post a {
  color: inherit;
}
.txt_post a:hover {
  text-decoration: underline;
}
.txt_post h4 {
  width: 100%;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  line-height: 1.7;
  font-size: 1.25rem;
  letter-spacing: 0.1em;
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.blog_archive .txt_post .date {
  color: var(--color07);
  font-family: "futura-pt", sans-serif;
  font-weight: 600;
  font-style: normal;
}
.txt_post .txt_excerpt {
  line-height: 1.75;
  margin-top: calc(8 / var(--break) * 100vw);
}
.txt_post .txt_excerpt .more {
  color: var(--color07);
  text-decoration: underline;
}
.page_main .wp-pagenavi {
  margin-top: calc(60 / var(--break) * 100vw);
  text-align: center;
  font-size: 0.875rem;
}
.page_main .wp-pagenavi a,
.page_main .wp-pagenavi span {
  text-decoration: none;
  border: 1px solid var(--color07);
  color: var(--color07);
  padding: 0 calc(10 / var(--break) * 100vw);
  margin: calc(2 / var(--break) * 100vw);
  display: inline-block;
}
.page_main .wp-pagenavi span.pages {
  padding: 0 calc(11 / var(--break) * 100vw);
}
.page_main .wp-pagenavi a:hover,
.page_main .wp-pagenavi span.current {
  border-color: var(--color07);
  background: var(--color07);
  color: #fff;
}
.page_main .wp-pagenavi span.current {
  font-weight: normal;
}
.post_content li {
  list-style: inherit;
  margin-left: 1.5em;
}
.single_post > h3 {
  font-size: calc(30 / var(--break) * 100vw);
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0.1em;
  background: var(--color13);
  padding: calc(15 / var(--break) * 100vw) calc(27 / var(--break) * 100vw);
  line-height: 1.6;
  min-height: calc(80 / var(--break) * 100vw);
  position: relative;
  z-index: 1;
}
.single_post > h3::after {
  position: absolute;
  content: "";
  width: 50%;
  height: 100%;
  right: 0;
  top: 0;
  z-index: -1;
  background: url("images/page/ptn_01.png") repeat center/calc(14 / var(--break) * 100vw);
}
.post_content > h4 {
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(28 / var(--break) * 100vw);
  line-height: 1.6;
  letter-spacing: 0.1em;
  background: var(--color02);
  color: #fff;
  padding: calc(7 / var(--break) * 100vw) calc(28 / var(--break) * 100vw);
  min-height: calc(60 / var(--break) * 100vw);
  margin-bottom: calc(30 / var(--break) * 100vw);
}
.post_content > h5 {
  font-family: "ryo-gothic-plusn", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(24 / var(--break) * 100vw);
  line-height: 1.6;
  letter-spacing: 0.1em;
  padding-bottom: calc(10 / var(--break) * 100vw);
  border-bottom: calc(2 / var(--break) * 100vw) solid var(--color01);
  margin-bottom: calc(30 / var(--break) * 100vw);
}
#sidebar .category h4 {
  margin-bottom: calc(20 / var(--break) * 100vw);
}
#sidebar .category ul {
  gap: calc(10 / var(--break) * 100vw) 3%;
}
#sidebar .category ul li {
  font-size: 1rem;
  width: auto;
  overflow: visible;
  white-space: normal;
}
#sidebar .category ul li a {
  border: 1px solid var(--color07);
  background: var(--color07);
  color: #fff;
  padding: calc(4 / var(--break) * 100vw) calc(8 / var(--break) * 100vw);
  line-height: 1.6;
}
#sidebar .category ul li a.is-active {
  background: #fff;
  color: var(--color07);
}
@media (max-width: 767px){
  .page_main {
    display: block !important;
  }
  #sidebar {
    width: 100%;
  }
  #sidebar h4 {
    line-height: calc(80 / var(--break) * 100vw);
  }
  .post_main {
    width: 100%;
    margin-bottom: 20vw;
  }
  .thmb {
    width: calc(210 / var(--break) * 100vw);
  }
  .thmb img {
    height: calc(210 / var(--break) * 100vw);
  }
  .txt_post {
    width: calc(100% - 240 / var(--break) * 100vw);
  }
  .txt_post h4 {
    font-size: 1rem;
    letter-spacing: 0;
  }
  .navigation li {
    width: calc(200 / 750 * 100vw);
  }
  .page_main .wp-pagenavi span.pages,
  .page_main .wp-pagenavi a,
  .page_main .wp-pagenavi span {
    padding: 0.5vw 2vw;
    margin: calc(4 / 750 * 100vw);
  }
  .page_main section.blog_archive {
    padding-bottom: 6vw;
  }
  .post_main section.blog_archive:not(:last-child) {
    margin-bottom: 6vw;
  }
  .post_main .wp-pagenavi {
    margin-top: 12vw;
    display: -webkit-box;
    /*--- Androidブラウザ用 ---*/
    display: -ms-flexbox;
    /*--- IE10 ---*/
    display: -webkit-flex;
    /*--- safari（PC）用 ---*/
    display: flex;
    -webkit-box-pack: justify;
    /*--- Androidブラウザ用 ---*/
    -ms-flex-pack: justify;
    /*--- IE10 ---*/
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    /* Safari */
    flex-wrap: wrap;
  }
  .single_post > h3 {
    letter-spacing: 0;
    font-size: 1.1875rem;
  }
  .post_content > h4,
  .post_content > h5 {
    letter-spacing: 0;
    font-size: 1.125rem;
  }
  #sidebar .category ul li a {
    border-radius: calc(8 / var(--break) * 100vw);
    padding: calc(4 / var(--break) * 100vw) calc(14 / var(--break) * 100vw);
  }
}

/* フォーマット format
------------------------------------------------------------------*/
.wrap_format01:not(:last-of-type) {
  margin-bottom: calc(100 / var(--break) * 100vw);
}
.img_format01 {
  max-width: 1000px;
}
.row_format01 .col_img {
  width: 46%;
  max-width: 570px;
}
.row_format01 .col_txt {
  width: 50%;
}
.list_format01 li {
  max-width: 425px;
}
.row_format03 .col_img {
  width: 29%;
  max-width: 350px;
}
.row_format03 .col_txt {
  width: 67%;
}
.row_format03 .copy {
  border-bottom: 1px solid #333;
}
.row_format03 .copy:before {
  content: "";
  position: absolute;
  width: calc(20 / var(--break) * 100vw);
  height: calc(20 / var(--break) * 100vw);
  left: 0;
  top: 0.4em;
  background: #333;
}
.txt_format01 {
  max-width: 1000px;
}
.tbl_fee {
  max-width: 1000px;
}
.tbl_fee table {
  /* border-color: #; */
}
.tbl_fee th {
  /* background: #; */
}
.tbl_fee thead th {
  /* background: #; */
  text-align: center;
}
.tbl_fee thead tr th:not(:last-of-type) {
  border-right: 1px solid #fff;
}
.tbl_fee tr:not(:last-child) td {
  /* border-bottom-color: #; */
}
.tbl_fee tbody tr td:not(:last-of-type) {
  /* border-right: 1px solid #; */
}
.tbl_fee01 tbody th {
  /* text-align: center; */
}
.wrap_format01 .box_flow:last-of-type:before {
  display: none;
}
.box_format03 .col_img {
  width: 31%;
  max-width: 345px;
}
.box_format03 .col_txt {
  width: 65%;
}
.row_format04 .col {
  width: 31.8%;
  max-width: 394px;
  margin-right: 2.3%;
}
.row_format04 .col:nth-child(3n),
.row_format04 .col:last-child {
  margin-right: 0;
}
.row_format04 .col:not(:nth-child(-n+3)) {
  margin-top: calc(60 / var(--break) * 100vw);
}
.wrap_format01 .box_qa03 {
  border: none;
  margin-bottom: calc(60 / var(--break) * 100vw);
}
.wrap_format01 .box_qa03 .box_a .box {
  width: calc(60 / var(--break) * 100vw);
  height: calc(60 / var(--break) * 100vw);
  left: 0;
  top: 0;
}
.wrap_format01 .box_qa03 .box_a {
  padding-top: calc(30 / var(--break) * 100vw);
  padding-left: calc(100 / var(--break) * 100vw);
}
.box_format04 .ttl {
  font-weight: 300;
  height: calc(50 / var(--break) * 100vw);
}
.list_format02 li:not(:first-child) {
  margin-top: calc(14 / var(--break) * 100vw);
}
.list_format02 .year {
  width: calc(140 / var(--break) * 100vw);
}
.list_format02 .txt {
  width: calc(100% - 140 / var(--break) * 100vw);
}
.risk_format {
  border: 1px solid #333;
}
.risk_format .box {
  overflow-y: scroll;
  max-height: 280px;
  scrollbar-color: #333 #fff;
  scrollbar-width: thin;
}
@media (max-width: 767px) {
  .format {
    padding-bottom: 17vw;
  }
  .wrap_format01:not(:last-of-type) {
    margin-bottom: 20vw;
  }
  .img_format01 {
    max-width: 100%;
  }
  .box_format01 .ttl {
    font-size: 1.125rem;
    letter-spacing: 0;
  }
  .list_format01 li {
    max-width: 100%;
  }
  .row_format03 .copy {
    font-size: 1.125rem;
    letter-spacing: 0;
  }
  .row_format03 .copy:before {
    top: 0.55em;
  }
  .txt_format01 {
    max-width: calc(646 / var(--break) * 100vw);
  }
  .tbl_fee {
    max-width: 100%;
  }
  .tbl_fee01 tbody th {
    /* text-align: left; */
  }
  .box_format03 {
    display: block;
  }
  .box_format03 .copy {
    font-size: 1.125rem;
  }
  .row_format04 {
    display: block;
  }
  .row_format04 .col {
    width: 100%;
    max-width: calc(600 / var(--break) * 100vw);
    margin: 0 auto !important;
  }
  .row_format04 .col:not(:first-child) {
    margin-top: calc(60 / var(--break) * 100vw) !important;
  }
  .row_format04 .ttl {
    font-size: 1.125rem;
    letter-spacing: 0;
  }
  .wrap_format01 .box_qa03 .box_a .box {
    width: calc(80 / var(--break) * 100vw);
    height: calc(80 / var(--break) * 100vw);
    font-size: 1.5625rem;
  }
  .tbl_format01.js-scrollable table {
    width: calc(1200 / var(--break) * 100vw);
    font-size: 0.875rem;
  }
  .img_format02 {
    max-width: calc(500 / var(--break) * 100vw);
  }
  .name_format .job {
    font-size: 0.875rem;
    letter-spacing: 0;
  }
  .name_format .ja {
    font-size: 1.25rem;
    letter-spacing: 0;
  }
  .box_format04 .ttl {
    font-size: 1.125rem;
    letter-spacing: 0;
    height: calc(80 / var(--break) * 100vw);
  }
  .list_format02 li:not(:first-child) {
    margin-top: 2vw;
  }
  .list_format02 .year {
    width: calc(200 / var(--break) * 100vw);
  }
  .list_format02 .txt {
    width: calc(100% - 200 / var(--break) * 100vw);
  }
}
