﻿@charset "utf-8";

.l-ctVisual {
  background-image:url(../image/ctVisual.jpg?d=20240531);
}

article.content {
  text-align:left;
  counter-reset:s-no;
  counter-reset:list-no;
}

@media print,screen and (min-width:641px) {
  .sp {
    display:none;
  }
  .sp_min {
    display:none;
  }
  article.content {
    text-align:left;
    padding-top:80px;
    padding-bottom:100px;
  }
}

@media screen and (max-width:640px) {
  .sp {
    display:inline;
  }
  .sp_min {
    display:none;
  }
  article.content {
    text-align:left;
    padding-top:2.5em;
    padding-bottom:2.5em;
    overflow-x:hidden;
  }
}

@media screen and (max-width:570px) {
  .sp {
    display:inline;
  }
  .sp_min {
    display:inline;
  }
}


/*----------------------------------------------------------------------------------------------------

  ページ内ナビ
  
----------------------------------------------------------------------------------------------------*/

ul.pgNav {
  display:flex;
  width:100%;
  color:#ffffff;
  font-size:1.05em;
  font-weight:500;
  line-height:1.4;
  background-color:#9b6e50;
  margin:65px 0 0 0;
  list-style:none;
}
ul.pgNav li,
ul.pgNav li a {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
}
ul.pgNav li {
  flex-grow:2;
  background:url('../../image/icon/arT-down_white.svg') no-repeat center bottom 0.5em / auto 0.5em;
}
ul.pgNav li a {
  width:100%;
  height:100%;
  padding:1em .5em 1.75em .5em;
}
ul.pgNav li {
  border-left:1px solid #ffffff;
}
ul.pgNav li a,
ul.pgNav li a:visited,
ul.pgNav li a:hover,
.ua-pc ul.pgNav li a:hover {
  color:#ffffff;
  text-decoration:none;
}
.ua-pc ul.pgNav li {
  transition:color 0.15s ease-out,background 0.15s ease-out,border 0.15s ease-out;
}
.ua-pc ul.pgNav li:hover {
  background-color:#b58361;
}
.ua-pc ul.pgNav li:hover,
.ua-pc ul.pgNav li:hover + li {
  border-left-color:#ffffff;
}

@media screen and (max-width:1180px) {
  ul.pgNav {
    font-size:90%;
  }
}

@media screen and (max-width:640px) {
  ul.pgNav {
    flex-wrap:wrap;
    width:100vw;
    margin:40px calc(50% - 50vw) 30px calc(50% - 50vw);
  }
  ul.pgNav li {
    width:50%;
  }
  ul.pgNav li:nth-child(n+3) {
    border-top:1px solid #ffffff;
  }
}


/*----------------------------------------------------------------------------------------------------

  コンテント＆セクション
  
----------------------------------------------------------------------------------------------------*/

.content {
}
.content .parent {
}
.content .child {
  max-width:980px;
  margin-right:auto;
  margin-left:auto;
}

.catch {
  background-color:#fff3e3;
  margin:2em 0 0 0;
}
.catch p.hdline {
  color:#ff942c;
  font-size:1.25em;
  font-weight:700;
  text-align:center;
  line-height:1.4;
}
.catch ul {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:30px;
  margin:2em 0 2em 0;
  list-style:none;
}
.catch ul li {
  display:flex;
  flex-direction:column;
  gap:0;
  width:calc((100% - 90px) / 4);
  text-align:center;
  background:#ffffff;
  padding:20px;
}
.catch ul li::before {
  content:"";
  display:block;
  width:calc(100% + 40px);
  height:auto;
  aspect-ratio:3 / 2;
  margin:0 -20px;
}
.catch ul li p {
}

.caution_container {
  background-color:#fde0df;
  margin:2em 0 0 0;
}
.caution_container p.hdline {
  color:#f55041;
  font-size:1.25em;
  font-weight:700;
  text-align:center;
  line-height:1.4;
}
.caution_container ul:not(.caution) {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  column-gap:30px;
  row-gap:5px;
  margin:2em 0 2em 0;
  list-style:none;
}
.caution_container ul:not(.caution) li {
  position:relative;
  width:calc((100% - 30px) / 2);
  text-align:left;
  padding:0 0 0 1.2em;
}
.caution_container ul:not(.caution) li::before {
  content:"●";
  position:absolute;
  left:0;
  display:flex;
  height:calc((1em / 0.8) * 1.8);
  align-items:center;
  color:#f55041;
  font-size:0.8em;
}

.caution_container02 {
  background-color:#fde0df;
  margin:2em 0 0 0;
}
.caution_container02 p.hdline {
  color:#f55041;
  font-size:1.25em;
  font-weight:700;
  text-align:center;
  line-height:1.4;
}
.caution_container02 p.hdline-sub {
  color:#f55041;
  font-weight:500;
  text-align:center;
  line-height:1.4;
}
.caution_container02 ul:not(.caution) {
  margin:2em 0 2em 0;
  list-style:none;
  overflow: hidden;
}
.caution_container02 ul:not(.caution) li {
  position:relative;
  text-align:left;
  padding:0 0 0 1.2em;
}
.caution_container02 ul:not(.caution) li:nth-child(odd) {
  margin-right: 30px;
}
.caution_container02 ul:not(.caution) li::before {
  content:"●";
  position:absolute;
  left:0;
  display:flex;
  height:calc((1em / 0.8) * 1.8);
  align-items:center;
  color:#f55041;
  font-size:0.8em;
}

figure.photo_container {
  display:flex;
  flex-direction:row-reverse;
  gap:50px;
}
figure.photo_container div {
  flex-shrink:0;
  position:relative;
  background:#ffffff;
  margin:10px 0 0 0;
  overflow:hidden;
  transition:none;
}
figure.photo_container div > img {
  width:100%;
  height:auto;
}
figure.photo_container .hair_removal_photo {
  width:140px;
  aspect-ratio:8 / 15;
}
figure.photo_container .diet_photo {
  width: 240px;
}
figure.photo_container figcaption {
}
figure.photo_container figcaption .effect {
  margin-top: 1em;
}

@media print,screen and (min-width:1000px) and (max-width:1180px) {

}

@media print,screen and (min-width:641px) and (max-width:999px) {

}

@media print,screen and (min-width:641px) {
  .catch,
  .caution_container,
  .caution_container02 {
    padding:5%;
  }
}

@media screen and (max-width:640px) {
  .catch,
  .caution_container,
  .caution_container02 {
    margin:2em -1.25em 0 -1.25em;
    padding:1.25em 1.25em 2em 1.25em;
  }
  .catch ul li {
    width:calc((100% - 30px) / 2);
  }
  .catch ul li::before {
    width:100%;
    margin:0 auto;
  }
  .caution_container ul:not(.caution) li,
  .caution_container02 ul:not(.caution) li {
    width:100%;
  }

  figure.photo_container {
    flex-direction:column-reverse;
    justify-content:center;
    gap:50px;
  }
  figure.photo_container div {
    width:100%;
    text-align:center;
    margin:0;
  }
  figure.photo_container div > img {
    width:auto;
    height:100%;
    margin:0 auto;
  }
  figure.photo_container .hair_removal_photo {
    width:100%;
    height:auto;
    max-height: 250px;
  }
  figure.photo_container .diet_photo {
    width:100%;
    height:auto;
  }
}

@media screen and (max-width:500px) {
  .catch ul li {
    width:100%;
  }
}


/*----------------------------------------------------------------------------------------------------

  イラスト部分
  
----------------------------------------------------------------------------------------------------*/

/* 美容内服セット */
.internal-medicine .catch ul li:nth-of-type(1)::before { background:transparent url('../image/internal-medicine_illust01.jpg') center center / auto 100% no-repeat; }
.internal-medicine .catch ul li:nth-of-type(2)::before { background:transparent url('../image/internal-medicine_illust02.jpg') center center / auto 100% no-repeat; }
.internal-medicine .catch ul li:nth-of-type(3)::before { background:transparent url('../image/internal-medicine_illust03.jpg') center center / auto 100% no-repeat; }
.internal-medicine .catch ul li:nth-of-type(4)::before { background:transparent url('../image/internal-medicine_illust04.jpg') center center / auto 100% no-repeat; }

/* プラセンタ療法（プラセンタ注射） */
.placenta .catch ul li:nth-of-type(1)::before { background:transparent url('../image/placenta_illust01.jpg') center center / auto 100% no-repeat; }
.placenta .catch ul li:nth-of-type(2)::before { background:transparent url('../image/placenta_illust02.jpg') center center / auto 100% no-repeat; }
.placenta .catch ul li:nth-of-type(3)::before { background:transparent url('../image/placenta_illust03.jpg') center center / auto 100% no-repeat; }
.placenta .catch ul li:nth-of-type(4)::before { background:transparent url('../image/placenta_illust04.jpg') center center / auto 100% no-repeat; }
.placenta .catch ul li:nth-of-type(5)::before { background:transparent url('../image/placenta_illust05.jpg') center center / auto 100% no-repeat; }
.placenta .catch ul li:nth-of-type(6)::before { background:transparent url('../image/placenta_illust06.jpg') center center / auto 100% no-repeat; }
.placenta .catch ul li:nth-of-type(7)::before { background:transparent url('../image/placenta_illust07.jpg') center center / auto 100% no-repeat; }

/* にんにく注射 */
.ivgarlic .catch ul li:nth-of-type(1)::before { background:transparent url('../image/ivgarlic_illust01.jpg') center center / auto 100% no-repeat; }
.ivgarlic .catch ul li:nth-of-type(2)::before { background:transparent url('../image/ivgarlic_illust02.jpg') center center / auto 100% no-repeat; }
.ivgarlic .catch ul li:nth-of-type(3)::before { background:transparent url('../image/ivgarlic_illust03.jpg') center center / auto 100% no-repeat; }
.ivgarlic .catch ul li:nth-of-type(4)::before { background:transparent url('../image/ivgarlic_illust04.jpg') center center / auto 100% no-repeat; }

/* 白玉注射 */
.glutathione .catch ul li:nth-of-type(1)::before { background:transparent url('../image/glutathione_illust01.jpg') center center / auto 100% no-repeat; }
.glutathione .catch ul li:nth-of-type(2)::before { background:transparent url('../image/glutathione_illust02.jpg') center center / auto 100% no-repeat; }
.glutathione .catch ul li:nth-of-type(3)::before { background:transparent url('../image/glutathione_illust03.jpg') center center / auto 100% no-repeat; }
.glutathione .catch ul li:nth-of-type(4)::before { background:transparent url('../image/glutathione_illust04.jpg') center center / auto 100% no-repeat; }
.glutathione .catch ul li:nth-of-type(5)::before { background:transparent url('../image/glutathione_illust05.jpg') center center / auto 100% no-repeat; }
.glutathione .catch ul li:nth-of-type(6)::before { background:transparent url('../image/glutathione_illust06.jpg') center center / auto 100% no-repeat; }
.glutathione .catch ul li:nth-of-type(7)::before { background:transparent url('../image/glutathione_illust07.jpg') center center / auto 100% no-repeat; }

/* 高濃度ビタミンC点滴（美容効果） */
.vitamin_c .catch ul:nth-of-type(1) li:nth-of-type(1)::before { background:transparent url('../image/vitamin_c_illust01.jpg') center center / auto 100% no-repeat; }
.vitamin_c .catch ul:nth-of-type(1) li:nth-of-type(2)::before { background:transparent url('../image/vitamin_c_illust02.jpg') center center / auto 100% no-repeat; }
.vitamin_c .catch ul:nth-of-type(1) li:nth-of-type(3)::before { background:transparent url('../image/vitamin_c_illust03.jpg') center center / auto 100% no-repeat; }
.vitamin_c .catch ul:nth-of-type(1) li:nth-of-type(4)::before { background:transparent url('../image/vitamin_c_illust04.jpg') center center / auto 100% no-repeat; }
.vitamin_c .catch ul:nth-of-type(1) li:nth-of-type(5)::before { background:transparent url('../image/vitamin_c_illust05.jpg') center center / auto 100% no-repeat; }

/* 高濃度ビタミンC点滴（健康効果） */
.vitamin_c .catch ul:nth-of-type(2) li:nth-of-type(1)::before { background:transparent url('../image/vitamin_c_illust06.jpg') center center / auto 100% no-repeat; }
.vitamin_c .catch ul:nth-of-type(2) li:nth-of-type(2)::before { background:transparent url('../image/vitamin_c_illust07.jpg') center center / auto 100% no-repeat; }
.vitamin_c .catch ul:nth-of-type(2) li:nth-of-type(3)::before { background:transparent url('../image/vitamin_c_illust08.jpg') center center / auto 100% no-repeat; }
.vitamin_c .catch ul:nth-of-type(2) li:nth-of-type(4)::before { background:transparent url('../image/vitamin_c_illust09.jpg') center center / auto 100% no-repeat; }


/*----------------------------------------------------------------------------------------------------

  セクションタイトル
  
----------------------------------------------------------------------------------------------------*/

h3.hdline {
  color:#ff942c;
  font-weight:700;
  line-height:1.4;
  border-bottom:1px solid #eadbc9;
  margin:0 0 1.5em 0;
  padding-bottom:0.75em;
}

.hdlineS {
  font-weight:600;
  line-height:1.4;
}

h4.hdline-line {
  font-weight:600;
  line-height:1.4;
  position:relative;
  margin:0 0 1em 0;
  padding-left:2rem;
}

h4.hdline-line:before {
  content:"";
  width:4px;
  height:100%;
  border-radius:4px;
  position:absolute;
  left:0;
  top:0;
  background-color:#ffac3a;
}

@media print,screen and (min-width:641px) {
  h3.hdline {
    padding-top:90px;
  }
  
  h4.hdline-line {
    margin-top:60px;
  }
}

@media screen and (max-width:640px) {
  h3.hdline {
    padding-top:1.5em;
  }
  
  h4.hdline-line {
    margin-top:2em;
  }
}


/*----------------------------------------------------------------------------------------------------

  料金テーブル
  
----------------------------------------------------------------------------------------------------*/

.priceTbl {
  width:100%;
  border-collapse:separate;
  margin:40px 0;
}
.priceTbl thead th {
  color:#ffffff;
  font-weight:500;
  white-space:nowrap;
  background:#55a555;
  padding:0.5em 0.75em;
}
.priceTbl tfoot td {
  color:#ffffff;
  padding:0.5em 0 0 0;
}
.priceTbl tbody th {
  text-align:center;
  white-space:nowrap;
  background:#f0edeb;
}
.priceTbl tbody td {
  background:#faf9f9;
}
.priceTbl th,
.priceTbl td {
  line-height:1.6;
  vertical-align:middle;
}
.priceTbl tbody tr:not(:last-child) th,
.priceTbl tbody tr:not(:last-child) td {
  border-bottom:0.5em solid #fff;
}
.priceTbl tbody tr.primary th {
  background:#d6cdc7;
  border-bottom:0;
  padding:0.5em 0.75em;
}
.priceTbl td span {
  position:relative;
  color:#f55041;
  padding:0 0 0 1.2em;
}
.priceTbl td span::before {
  content:"※";
  position:absolute;
  left:0;
  display:flex;
  height:calc((1em / 0.8) * 1.8);
  align-items:center;
  color:#f55041;
  font-size:0.8em;
}

@media print,screen and (min-width:641px) {
  .priceTbl th,
  .priceTbl td {
    padding:1em;
  }
}

@media screen and (max-width:640px) {
  .priceTbl {
    font-size:0.88em;
  }
  .priceTbl tbody th .f-nowrap {
    display:block;
  }
  .priceTbl th,
  .priceTbl td {
    padding:0.75em;
  }
}


/*----------------------------------------------------------------------------------------------------

  telコンテナ
  
----------------------------------------------------------------------------------------------------*/

.tel_container {
  width:100%;
  max-width:1180px;
  color:#ffffff;
  text-align:center;
  background:#4c99db;
  /*background:#e6f5fc;*/
  margin:2em auto 3em auto;
  padding:4% 3% 3% 3%;
  /*margin:40px calc(50% - 50vw) 30px calc(50% - 50vw);
  padding:2.5em 0;*/
}
.tel_container p {
  
}
.tel_container p:nth-of-type(2) {
  margin:0.5em 0 0 0;
}
.tel_container p:nth-of-type(3) {
  margin:0.5em 0 0 0;
}
.tel_container p strong {
  font-size:1.3em;
}

@media screen and (max-width:500px) {
  .tel_container p strong {
    font-size:clamp(1.2em,7.10vw,1em);
    line-height:1.6;
  }
}


/*----------------------------------------------------------------------------------------------------

  注意書き
  
----------------------------------------------------------------------------------------------------*/
ul.caution {
  list-style:none;
}
ul.caution li {
  color:#f55041;
  padding-left:1em;
}
ul.caution li::before {
  content:"※";
  display:inline-block;
  color:#f55041;
  text-indent:-1em;
}


/*----------------------------------------------------------------------------------------------------

  ブロック別臨時
  
----------------------------------------------------------------------------------------------------*/

/* 美容内服セット
-------------------------------------------------- */
.internal-medicine .caution_container02 p:not(.hdline,.hdline-sub) {
  margin:2em 0 0 0;
}
.internal-medicine .caution_container02 ul {
  margin:2em 0 0 0;
  list-style:none;
  overflow: hidden;
}

@media screen and (max-width:640px) {
  .internal-medicine table.priceTbl,
  .internal-medicine table.priceTbl thead,
  .internal-medicine table.priceTbl tbody,
  .internal-medicine table.priceTbl tfoot,
  .internal-medicine table.priceTbl thead tr,
  .internal-medicine table.priceTbl tbody tr,
  .internal-medicine table.priceTbl thead tr th,
  .internal-medicine table.priceTbl tfoot tr td {
    display:block;
    width:100%;
  }
  .internal-medicine table.priceTbl tbody tr {
    display:flex;
    flex-wrap:wrap;
  }
  .internal-medicine table.priceTbl tbody tr th,
  .internal-medicine table.priceTbl tbody tr td {
    display:block;
    border-bottom:0.5em solid #fff;
  }
  .internal-medicine table.priceTbl tbody tr th {
    width:20%;
  }
  .internal-medicine table.priceTbl tbody tr td {
    width:80%;
  }
}