/*
Theme Name: eclatclinic
*/


*{
  font-family: "Noto Serif JP", serif;
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  margin: 0;
  padding: 0;
}

body{
  background-color: #FAF7F7;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }

/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 480px) {
.pc { display: none !important; }
.sp { display: block !important; }
}

html {
  scroll-behavior: smooth;
}

p{
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #361212;
  line-height: 1.8em;
}

h2{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  color: #361212;
  font-weight: 400;
  letter-spacing: 1px;
}

h3{
  font-family: "Aboreto", system-ui;
  font-size: 25px;
  color: #361212;
  font-weight: 300;
  letter-spacing: 2px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
h2{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  color: #361212;
  font-weight: 400;
  letter-spacing: 1px;
}

h3{
  font-family: "Aboreto", system-ui;
  font-size: 32px;
  color: #361212;
  font-weight: 300;
  letter-spacing: 2px;
}
}

header {
  background: linear-gradient(180deg, #F6EDE9 0%, #FFFFFF 100%);
}


.header {
  position: fixed;
  top: 0;
  width: 92%;
  background: transparent;
  z-index: 1000;
  transition: all 0.3s ease;
  padding: 1% 4%;
  background: linear-gradient(180deg, #F6EDE9 0%, #FFFFFF 100%);
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
  .header {
    position: fixed;
    top: 0;
    width: 94%;
    background: transparent;
    z-index: 1000;
    transition: all 0.3s ease;
    padding: 2% 4%;
    background: linear-gradient(180deg, #F6EDE9 0%, #FFFFFF 100%);
  }
}

.header-inner {
  display: flex;
  justify-content:flex-end;
  align-items: center;
}

.logo-container{
  margin-right: auto;
}

.logo {
  height: 30px;
  transition: all 0.3s ease;
}
.header-inner .footer-sns{
  margin-top: 8px;
  margin-right: 20px;
  list-style: none;
}
/* スマートフォン*/
@media (min-width: 0px) and (max-width: 1070px) {
  .nav{
    display: none;
  }
}

.nav-list {
  list-style: none;
  display: flex;
  gap: 24px;
  align-items: center;
  margin-right: 24px;
}

.headermenulist a {
  text-decoration: none;
  color: #401919;
  transition: color 0.3s ease;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 1px;
}

.nav-list li a:hover{
  opacity: .5;
  transition: .5s;
}

.headerline a{
  background-color: #D8A7A9;
  padding: 6% 4%;
  border-radius: 50px;
  font-size: 13px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 1px;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  text-decoration: none;
  border: solid 1px #D8A7A9;
}

.headerline a img{
  width: 20px;
  margin-right: 8px;
}

.headerline a:hover{
  background-color: #D8A7A938;
  color: #D8A7A9;
  transition: .5s;
}

.headerweb a{
  background-color: #401919;
  padding: 6% 4%;
  border-radius: 50px;
  font-size: 13px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 1px;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  text-decoration: none;
  border: solid 1px #401919;
}

.headerweb a img{
  width: 20px;
  margin-right: 8px;
}

.headerweb a:hover{
  background-color: #40191938;
  color: #401919;
  transition: .5s;
}

.hamburger-overlay span {
  background: #000000;
  transition: background 0.3s ease;
}


.header.scrolled .hamburger-overlay span {
  background: black;
}

.hamburger-overlay {
  z-index: 1000;
  width: 40px;
  height: 50px;
  border: none;
  background: transparent;
  cursor: pointer;
  position: relative;
}

.hamburger-overlay__line {
  position: absolute;
  width: 40px;
  height: 1px;
  background-color: #D8A7A9;
  transition: all .6s;
}

.hamburger-overlay__line:nth-of-type(1) { 
  top: 16px; 
  background-color: #D8A7A9;
}
.hamburger-overlay__line:nth-of-type(2) { 
  top: 24px;
  transform: translateX(-4px);
  background-color: #D8A7A9;
}
.hamburger-overlay__line:nth-of-type(3) { 
  top: 32px; 
  background-color: #D8A7A9;
}
/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.hamburger-overlay__line:nth-of-type(1) { 
  top: 14px; 
  background-color: #D8A7A9;
  right: 16px;
}
.hamburger-overlay__line:nth-of-type(2) { 
  top: 22px;
  transform: translateX(-4px);
  background-color: #D8A7A9;
  right: 20px;
}
.hamburger-overlay__line:nth-of-type(3) { 
  top: 30px; 
  background-color: #D8A7A9;
  right: 16px;
}
}

.hamburger-overlay.active .hamburger-overlay__line {
  background-color: #D8A7A9;
}



.hamburger-overlay.active .hamburger-overlay__line:nth-of-type(1) {
  transform: translateY(8px) rotate(-32deg);
  background-color: #D8A7A9;
}

.hamburger-overlay.active .hamburger-overlay__line:nth-of-type(2) {
  opacity: 0;
}

.hamburger-overlay.active .hamburger-overlay__line:nth-of-type(3) {
  transform: translateY(-8px) rotate(32deg);
  background-color: #D8A7A9;
}

.nav-overlay {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  background: linear-gradient(180deg, #F6EDE9 0%, #FFFFFF 100%);
  visibility: hidden;
  opacity: 0;
  transition: all .6s;
  z-index: 900;
  overflow: hidden; 
}

.nav-overlay.active {
  visibility: visible;
  opacity: 1;
}

.nav-overlay__content {
  margin: 0;
}

.hambergarlogo {
  transition: all 0.3s ease;
  padding: 1.5% 4%;
  background: linear-gradient(180deg, #F6EDE9 0%, #FFFFFF 100%);
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.hambergarlogo {
  transition: all 0.3s ease;
  padding: 4% 4%;
  background: linear-gradient(180deg, #F6EDE9 0%, #FFFFFF 100%);
}
}

.hambergarlogo img{
  height: 30px;
  transition: all 0.3s ease;
}

.nav-overlay__manu_list {
  margin: 80px 32% 40px;
  border-top: solid 1px #C8A7A8;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.nav-overlay__manu_list {
  margin: 40px 8% 32px;
  border-top: solid 1px #C8A7A8;
}
}

.nav-overlay__manu_list li{
  list-style: none;
  margin-top: 16px;
  border-bottom: solid 1px #C8A7A8;
  padding-bottom: 16px;
}

.nav-overlay__manu_list li a{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  color: #361212;
  font-weight: 400;
  letter-spacing: 1px;
  text-decoration: none;
}

.nav-overlay__manu_list li a:hover{
  opacity: 0.5;
  transition: .5s;
}

.nav-overlay__list_sns {
  margin: 40px 32%;
  display: flex;
  justify-content:flex-end;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.nav-overlay__list_sns {
  margin: 16px 8%;
  display: flex;
  justify-content:flex-start;
}
}

.nav-overlay__list_sns li{
  list-style: none;
  margin-left: 16px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.nav-overlay__list_sns li{
  list-style: none;
  margin-left: 0;
  margin-right: 8px;
}
}

.nav-overlay__list_sns li img{
  width: 20px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.nav-overlay__list_sns li img{
  width: 25px;
}
}

.nav-overlay__list_contact{
  margin: 40px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.nav-overlay__list_contact{
  margin: 40px 8% 0;
  display: block;
  align-items: center;
  justify-content: center;
}
}

.nav-overlay__list_contact li{
  list-style: none; 
  margin: 0 24px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.nav-overlay__list_contact li{
  list-style: none; 
  margin: 0;
  margin-top: 16px;
}
}

.nav-overlay__list_contact li a{
  background-color: #D8A7A9;
  padding: 4% auto;
  border-radius: 50px;
  font-size: 12px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 1px;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 300px;
  text-decoration: none;
  border: 1px solid #D8A7A9;
}

.nav-overlay__list_contact li a:hover{
  background-color: #D8A7A938;
  color: #D8A7A9;
  transition: .5s;
}


.nav-overlay__list_contact .headerweb a{
  background-color: rgb(101, 78, 78);
  padding: 4% auto;
  border-radius: 50px;
  font-size: 12px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 1px;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 300px;
  text-decoration: none;
  border: 1px solid rgb(101, 78, 78);
}

.nav-overlay__list_contact .headerweb a:hover{
  background-color: #654e4e38;
  color: #654E4E;
  transition: .5s;
}




.nav-overlay.active .nav-overlay__item {
  opacity: 1;
}

.nav-overlay__manu_list li {
  opacity: 0;
  transition: opacity 0.5s ease, transform 0.5s ease;
}

/* activeになったら表示される */
.nav-overlay.active .nav-overlay__manu_list li {
  opacity: 1;
}


.nav-overlay.active .nav-overlay__manu_list li:nth-child(1) { transition-delay: 0.1s; }
.nav-overlay.active .nav-overlay__manu_list li:nth-child(2) { transition-delay: 0.2s; }
.nav-overlay.active .nav-overlay__manu_list li:nth-child(3) { transition-delay: 0.3s; }
.nav-overlay.active .nav-overlay__manu_list li:nth-child(4) { transition-delay: 0.4s; }
.nav-overlay.active .nav-overlay__manu_list li:nth-child(5) { transition-delay: 0.5s; }
.nav-overlay.active .nav-overlay__manu_list li:nth-child(6) { transition-delay: 0.6s; }


.nav-overlay__list_contact{
  opacity: 0;
  transition: opacity 0.5s ease, transform 0.5s ease;
}

/* activeになったら表示される */
.nav-overlay.active .nav-overlay__list_contact {
  opacity: 1;
}


.nav-overlay.active .nav-overlay__list_contact{ transition-delay: 0.6s; }

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.sp-cta{
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  bottom: 16px;
  z-index: 50;
  display: flex;
  transition: transform .25s ease, opacity .2s ease, visibility .2s ease;
}

.sp-cta.is-hidden{
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.sp-cta li{
  list-style: none;
  margin: 0 8px;
}

.sp-cta li a{
  padding: 12px 18px;
  letter-spacing: 3px;
}

.sp-cta li a img{
  display: none;
}
}

.top-fv{
  position: relative;
  height: 100vh;
}

.top-fv img{
  width: 100%;
  height: 100vh;
    object-fit: cover;
}

.top-fv .top-fv-text{
  position: absolute;
  top: 45%;
  left: 16%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-fv .top-fv-text{
  position: absolute;
  top: 50%;
  left: 8%;
}
}

.top-fv .top-fv-text h1{
  font-family: "Noto Serif JP", serif;
  font-size: 45px;
  font-weight: 400;
  color: #ffffff;
  line-height: 1.4em;
  letter-spacing: 1px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-fv .top-fv-text h1{
  font-family: "Noto Serif JP", serif;
  font-size: 30px;
  font-weight: 400;
  color: #ffffff;
  line-height: 1.4em;
  letter-spacing: 1px;
}
}

.top-fv .top-fv-text p{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #ffffff;
  margin-top: 16px;
  line-height: 1.8em;
  letter-spacing: 2px;
}

.top-section2{
	background: url("/wp-content/themes/eclatclinic/img/top-section2-bg.png") center / cover no-repeat;
  width: 84%;
  padding: 104px 8%;
  text-align: center;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section2{
	background: url("/wp-content/themes/eclatclinic/img/top-section2-spbg.png") center / cover no-repeat;
  width: 100%;
  padding: 80px 0;
  text-align: center;
}
}

.na-carousel, .na-carousel * { box-sizing: border-box; }
.na-carousel ul { margin:0; padding:0; list-style:none; }
.na-carousel a, .na-carousel img { display:block; }

.na-carousel {
  position: relative;
  width:100%;
  margin: 64px auto;
  padding: 12px 24px; 
  max-width: 1600px;
}

.na-carousel__viewport {
  overflow: hidden;
  width: 100%;
}

.na-carousel__track {
  display: flex;
  gap: 0;
  transition: transform 0.5s ease;
  will-change: transform;
}

.na-carousel__slide {
  flex: 0 0 25% !important;
  max-width: 25% !important;
}

#myCarousel .na-carousel__viewport{ margin: 0; } /* 外側を揃える */
#myCarousel .na-carousel__slide > a{ padding:0 8px; box-sizing:border-box; }
#myCarousel .na-carousel__slide > .campaign-modal-trigger{ padding:0 8px; box-sizing:border-box; }

.na-carousel__slide a { width: 100%; }
.na-carousel__slide .campaign-modal-trigger { width: 100%; }
.na-carousel__slide img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.na-carousel__slide a:hover{
opacity: .8;
  transition: .5s;
}

.na-carousel__slide .campaign-modal-trigger:hover{
opacity: .8;
  transition: .5s;
}

/* 矢印 */
.na-carousel__nav {
  position: absolute;
  inset-block: 0;
  width: 44px;
  border: 0;
  background: none;
  cursor: pointer;
  display: grid;
  place-items: center;
  z-index: 2;
  justify-content: center;
}

.na-carousel__nav--prev { left: 0; }
.na-carousel__nav--next { right: 0; }

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
  .sp-carousel{ 
    display: block; 
    width: 92%; 
    margin: 40px 0 40px 8%; 
    --sp-gap: 12px;
  }

  .sp-carousel__viewport{ 
    overflow: hidden; 
    width: 100%; 
  }
  .sp-carousel__track{
    display: flex;
    gap: var(--sp-gap);       /* ← スライド間の余白 */
    transition: transform .5s ease;
    will-change: transform;
  }

  .sp-carousel__track li{
    list-style: none;
  }

  /* 1.5枚表示（= 各スライド幅 100/1.5%） */
  .sp-carousel__slide{
    flex: 0 0 calc(100% / 1.5);
    max-width: calc(100% / 1.5);
    margin: 0 !important;
  }
  .sp-carousel__slide a{ display: block; }
  .sp-carousel__slide .campaign-modal-trigger{ display: block; }
  .sp-carousel__slide img{
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
  }

  /* 下・左寄せのナビ */
  .sp-carousel__controls{
    display: flex;
    gap: 12px;
    justify-content: flex-start;
    margin-top: 12px;
    background: transparent !important;
  }

 .sp-carousel__nav{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0;
  width: auto; height: auto;
  display: inline-flex;           /* 画像サイズにフィット */
  align-items: center;
  justify-content: center;
  line-height: 0;                 /* 余白対策 */
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  /* iOS のタップ時ハイライトを消す（任意） */
  -webkit-tap-highlight-color: transparent;
 } 

  .sp-carousel__nav img{
     width: 50px;
     
   }
}


.top-section2-link{
  display: flex;
  align-items: center;
  justify-content: center;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section2-link{
  display: block;
  align-items: center;
  justify-content: center;
  text-align: left;
  margin: 0 8%;
}
}

.top-section2-link li{
  list-style: none;
  margin: 0 8px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section2-link li{
  list-style: none;
  margin: 0;
  margin-top: 16px;
  width: 100%;
}
}

.top-section2-link .top-section2-link-left a{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #654E4E;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #654E4E;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section2-link .top-section2-link-left a{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #654E4E;
  border-radius: 30px;
  padding: 12px auto;
  text-decoration: none;
  border: solid 1px #654E4E;
  display: block;              
  width: 100% !important;     
  box-sizing: border-box;    
  text-align: center; 
}
}

.top-section2-link .top-section2-link-left a:hover{
  background-color: #654e4e00;
  color: #654E4E;
  transition: .5s;
}

.top-section2-link .top-section2-link-right a{
  background-color: #B19963;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #B19963;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section2-link .top-section2-link-right a{
  background-color: #B19963;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  border-radius: 30px;
  padding: 12px auto;
  text-decoration: none;
  border: solid 1px #B19963;
  display: block;              
  width: 100% !important;     
  box-sizing: border-box;    
  text-align: center; 
}
}

.top-section2-link .top-section2-link-right a:hover{
  background-color: #B1996300;
  color: #B19963;
  transition: .5s;
}


.top-section3{
	background: url("/wp-content/themes/eclatclinic/img/top-section3-bg.png") center / cover no-repeat;
  width: 68%;
  padding: 104px 16%;
  text-align: center;
}

/* タブレット*/
@media (min-width: 481px) and (max-width: 1024px) {
.top-section3{
  background: url("/wp-content/themes/eclatclinic/img/top-section3-bg.png") center / cover no-repeat;
  width: 84%;
  padding: 104px 8%;
  text-align: center;
}
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section3{
 background: url("/wp-content/themes/eclatclinic/img/top-section3-bg.png") center / cover no-repeat;
  width: 92%;
  padding: 80px 4%;
  text-align: center;
}
}

.top-section3-content{
  margin: 64px auto;
  justify-content: flex-start;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  max-width: 1600px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section3-content{
    margin: 40px auto;
    justify-content: flex-start;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    max-width: 1600px;
    grid-template-columns: repeat(2, 1fr); /* SP: 2列 */
  }
}


.top-section3-content li{
  width: auto !important;    
  min-width: 0;
  list-style: none;
}

.top-section3-content li a{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #361212;
  letter-spacing: 0;
  border-radius: 30px;
  text-decoration: none;
  background-color: #ffffff;
  display: block;
  text-align: center;       
  padding: 12px;        
  text-decoration: none;  
}


/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section3-content li a{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 11px;
  font-weight: 400;
  color: #361212;
  letter-spacing: 2px;
  border-radius: 30px;
  padding: 12px 12px;
  text-decoration: none;
  background-color: #ffffff;
  display: block;
  text-align: center;   
  text-decoration: none;  
}
}

.top-section3-content li a:hover{
  background-color: #36121226;
  transition: .5s;
}

.top-section3-link  a{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #654E4E;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #654E4E;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section3-link  a{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #654E4E;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #654E4E;
  display: block;
  width: 92% !important;
  box-sizing: border-box;
  text-align: center;
  margin: 0 4%;
}

}

.top-section3-link  a:hover{
  background-color: #654e4e00;
  color: #654E4E;
  transition: .5s;
}


.top-section4{
  margin: 104px 8%;
  text-align: center;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section4{
  margin: 80px 8%;
  text-align: center;
}
}

.top-section4-content{
  margin: 64px auto;
  max-width: 1600px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section4-content{
  margin: 40px auto;
  max-width: 1600px;
}
}

.top-section4-content-info{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  text-align: left;
  margin-bottom: 40px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section4-content-info{
  display: block;
  justify-content: space-between;
  align-items: flex-start;
  text-align: left;
  margin-bottom: 40px;
}
}

.top-section4-content-info li:nth-child(1){
  width: 30%;
  list-style: none;
  display: flex;
  align-items:flex-start;
}

.top-section4-content-info li:nth-child(2){
  width: 68%;
  list-style: none;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section4-content-info li:nth-child(1){
  width: 100%;
  list-style: none;
  display: flex;
  align-items:flex-start;
}

.top-section4-content-info li:nth-child(2){
  width: 100%;
  list-style: none;
}
}

.top-section4-content-info li b{
  color: #A3555E;
  font-family: "Noto Serif JP", serif;
  font-size: 30px;
  font-weight: 300;
  margin-right: 16px;
}

.top-section4-content-info li b span{
  font-size: 33px;
  font-weight: 200;
  margin-right: 2px;
}

.top-section4-content-info li h3{
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8em;
  margin-top: 8px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section4-content-info li h3{
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8em;
  margin-top: 13px;
}
}

.top-section4-content-info li .top-section4-p{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #401919;
  letter-spacing: 2px;
  margin-top: 8px;
}

.top-section4-content-info-point{
  display: flex;
  justify-content: space-between;
  margin-top: 12px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section4-content-info-point{
  display: block;
  justify-content: space-between;
  margin-top: 16px;
}
}

.top-section4-content-info-point-text{
  background-color: #F6EDE9;
  padding: 4% 6%;
  width: 37%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section4-content-info-point-text{
  background-color: #F6EDE9;
  padding: 4% 6%;
  width: 88%;
  margin-top: 8px;
}
}

.top-section4-content-info-point-text h5{
  color: #A3555E;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 1px;
  margin-bottom: 8px;
}

.top-section4-content-info-point-text p{
  font-size: 13px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section4-content-info-point-text p{
  font-size: 12px;
}
}

.top-section5{
  margin: 104px 0;
  text-align: center;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section5{
  margin: 80px 0;
  text-align: center;
}
}

.top-section5-content{
  padding-top: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1600px;
  margin: 0 auto;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section5-content{
  padding-top: 40px;
  display: block;
  align-items: center;
  justify-content: space-between;
  max-width: 1600px;
  margin: 0 auto;
}
}

.top-section5-content .top-section5-content-left{
  width: 45%;
  list-style: none;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section5-content .top-section5-content-left{
  width: 100%;
  list-style: none;
}
}

.top-section5-content li img{
  width: 100%;
}

.top-section5-content .top-section5-content-right{
  width: 42%;
  list-style: none;
  text-align: left;
  padding-right: 8%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section5-content .top-section5-content-right{
  width: 84%;
  list-style: none;
  text-align: left;
  padding-right: 8%;
  padding-left: 8%;
  margin-top: 24px;
}
}

.top-section5-content li p{
  font-weight: 500;
  letter-spacing: 1px;
}

.top-section5-content li h3{
  font-family: "Noto Serif JP", serif;
  font-size: 20px;
  font-weight: 400;
  margin-top: 0;
}

.donctor-instalink a{
  display: flex;
  align-items: center;
}

.donctor-instalink a img{
  width: 20px;
  margin-right: 8px;
}

.donctor-instalink a{
  color: #D18D95;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  margin: 16px 0 24px;
  text-decoration: none;
  letter-spacing: 1px;
}

.donctor-instalink a:hover{
  opacity: .5;
  transition: .5s;
}

.top-donctor-info{
  border-top: solid 1px #C8A7A8;
  padding-top: 24px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
	margin-top: 24px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-donctor-info{
  border-top: solid 1px #C8A7A8;
  padding-top: 24px;
  display: block;
  justify-content: space-between;
  align-items: flex-start;
	margin-top: 24px;
}
}

.top-donctor-info .top-donctor-info-left{
  width: 65%;
  list-style: none;
}

.top-donctor-info .top-donctor-info-right{
  width: 30%;
  list-style: none;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-donctor-info .top-donctor-info-left{
  width: 100%;
  list-style: none;
}

.top-donctor-info .top-donctor-info-right{
  width: 100%;
  list-style: none;
  margin-top: 16px;
}
}

.top-donctor-info li b{
  color: #D18D95;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 400;
}

.top-donctor-info li p{
  font-weight: 400;
  font-size: 13px;
}

.top-section6{
  padding: 0 0 104px;
	background: url("/wp-content/themes/eclatclinic/img/top-section6-bg.png") center / cover no-repeat;
  text-align: center;
  width: 100%;
}

@media (min-width: 0px) and (max-width: 480px) {
.top-section6{
  padding: 0 0 80px;
  background: url("/wp-content/themes/eclatclinic/img/top-section6-bg.png") center / cover no-repeat;
  text-align: center;
  width: 100%;
}
}

.top-section6-content{
  padding-top: 64px;
  display: flex;
  align-items:center;
  justify-content: space-between;
  max-width: 1600px;
  margin: 0 auto;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section6-content{
  padding-top: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1600px;
  margin: 0 auto;
  flex-direction: column;
  padding-right: 8%;
}
}

.top-section6-content li:nth-child(1){
  width: 42%;
  text-align: left;
  list-style: none;
  margin-left: 8%;
}

.top-section6-content li:nth-child(2){
  width: 45%;
  list-style: none;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.top-section6-content li:nth-child(1){
  width: 92%;
  text-align: left;
  list-style: none;
  margin-left: 8%;
  margin-top: 24px;
}

.top-section6-content li:nth-child(2){
  width: 100%;
  list-style: none;
}
.top-section6-content li:nth-child(1){ order: 2; text-align: left; }
  .top-section6-content li:nth-child(2){ order: 1; }
}


.top-section6-content li:nth-child(2) img{
  width: 100%;
}

.top-section6-content li h6{
  font-family: "Noto Serif JP", serif;
  font-size: 20px;
  font-weight: 400;
  margin-top: 0;
  color: #401919;
  line-height: 1.8em;
  letter-spacing: 2px;
  margin-bottom: 24px;
}

.top-section6-content li p{
  line-height: 2em;
}

.top-section6-content-clinicinfo{
  margin-top: 24px;
  border-top: solid 1px #C8A7A8;
}

.top-clinic-info{
  display: flex;
  align-items: center;
  margin: 24px 0 0;
  align-items:flex-start;
}

.top-clinic-info img{
  width: 20px;
  margin-right: 8px;
}

.top-clinic-info p{
  margin-top: -6px;
}


.top-clinic-info a{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #A3555E;
}

.top-clinic-info a:hover{
  opacity: .5;
  transition: .5s;
}


.top-clinic-info-link,
.top-clinic-info-link-company {
  margin-top: 32px;
}
.top-clinic-info-link a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #654E4E;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #654E4E;
}
.top-clinic-info-link-company a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 10px;
  font-weight: 400;
  color: #401919;
  letter-spacing: 2px;
  background-color: #e5d9d9;
  border-radius: 30px;
  padding: 9px 18px;
  text-decoration: none;
}
@media (min-width: 0px) and (max-width: 480px) {
.top-clinic-info-link a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #654E4E;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #654E4E;
  display: block;
  width: 100% !important;
  box-sizing: border-box;
  text-align: center;
  margin: 0;
}
.top-clinic-info-link-company a {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #401919;
  letter-spacing: 1px;
  background-color: #e5d9d9;
  border-radius: 30px;
  text-decoration: none;
  display: block;
  box-sizing: border-box;
  text-align: center;
  width: 50%;
  margin: 0 auto;
}
}

.top-clinic-info-link a:hover{
  background-color: #654e4e00;
  color: #654E4E;
  transition: .5s;
}

.top-section7{
  padding: 104px 0;
	background: url("/wp-content/themes/eclatclinic/img/top-section7-bg.png") center / cover no-repeat;
  text-align: center;
  width: 100%;
}

@media (min-width: 0px) and (max-width: 480px) {
.top-section7{
  padding: 80px 8%;
  background: url("/wp-content/themes/eclatclinic/img/top-section7-bg.png") center / cover no-repeat;
  text-align: center;
  width: 84%;
}
}

.top-section7-link{
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 40px;
}

@media (min-width: 0px) and (max-width: 480px) {
.top-section7-link{
  display: block;
  align-items: center;
  justify-content: center;
  margin-top: 40px;
}
}

.top-section7-link li{
  list-style: none;
  margin: 0 8px;
}

@media (min-width: 0px) and (max-width: 480px) {
.top-section7-link li{
  list-style: none;
  margin: 0 8px;
  margin-top: 16px;
}
}

.top-section7-link li a img{
  width: 20px;
  margin-right: 8px;
}

.top-section7-link .top-section7-link-left a{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #D8A7A9;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #D8A7A9;
  display: flex;
  align-items: center;
}

.top-section7-link .top-section7-link-left a:hover{
  background-color: #d8a7a938;
  color: #d8a7a9;
  transition: .5s;
}

.top-section7-link .top-section7-link-right a{
  background-color: #654E4E;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #654E4E;
  display: flex;
  align-items: center;
}

.top-section7-link .top-section7-link-right a:hover{
  background-color: #654E4E38;
  color: #654E4E;
  transition: .5s;
}

footer{
  padding: 104px 0 0;
	background: url("/wp-content/themes/eclatclinic/img/footer-bg.png") center / cover no-repeat;
  text-align: left;
  width: 100%;
}

@media (min-width: 0px) and (max-width: 480px) {
footer{
  padding: 40px 0 0;
  background: url("/wp-content/themes/eclatclinic/img/footer-bg.png") center / cover no-repeat;
  text-align: left;
  width: 100%;
}
}

footer li{
  list-style: none;
}

.footer-top{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 8%;
}



.footer-top a img{
  width: 50px;
}
.footer-top .logo {
  width: 200px;
}
.footer-center{
  border-top: solid 1px #C8A7A8;
  padding-top: 24px;
  margin: 24px 8% 0;
}

.footer-menu{
  display: flex;
  align-items: center;
}

@media (min-width: 0px) and (max-width: 480px) {
.footer-menu{
  display: block;
  align-items: center;
}
}

.footer-menu li{
  margin-right: 24px;
}

@media (min-width: 0px) and (max-width: 480px) {
.footer-menu li{
  margin-right: 0;
  margin-bottom: 8px;
}
}

.footer-menu li a{
  text-decoration: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 400;
  margin-top: 0;
  color: #401919;
}

.footer-menu li a:hover{
  opacity: .5;
  transition: .5s;
}

.footer-sns{
  display: flex;
  align-items: center;
  margin-top: 24px;
}

.footer-sns li{
  margin-right: 16px;
}

.footer-sns li a:hover{
  opacity: .5;
  transition: .5s;
}

.footer-sns li a img{
  width: 20px;
}

@media (min-width: 0px) and (max-width: 480px) {
.footer-sns li a img{
  width: 25px;
}
}

.footer-bottom{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 1px;
  color: #ffffff;
  margin-top: 40px;
  text-align: center;
  padding: 1% 4%;
  background: linear-gradient(180deg, #5B2424 0%, #8C5D5D 100%);
}

@media (min-width: 0px) and (max-width: 480px) {
.footer-bottom{
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 1px;
  color: #ffffff;
  margin-top: 40px;
  text-align: center;
  padding: 4% 4%;
  background: linear-gradient(180deg, #5B2424 0%, #8C5D5D 100%);
}
}


/*アバウト*/
.subpage-top{
  text-align: center;
  padding: 144px 0 0;
  background: linear-gradient(180deg, #FFF7F8 0%, #F6EDE9 100%);
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.subpage-top{
  text-align: center;
  padding: 104px 0 0;
  background: linear-gradient(180deg, #FFF7F8 0%, #F6EDE9 100%);
}
}

.subpage-top .section-title{
  padding-bottom: 80px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.subpage-top .section-title{
  padding-bottom: 40px;
}
}

.section-title h3{
  font-family: "Aboreto", system-ui;
  font-size: 25px;
  color: #361212;
  font-weight: 300;
  letter-spacing: 2px;
}

.section-title h1{
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  font-weight: 400;
  color: #401919;
  letter-spacing: 2px;
}

.section-title h2{
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  font-weight: 400;
  color: #401919;
  letter-spacing: 2px;
}

.about-section2{
  margin: 0;
  padding: 40px 0 0;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.about-section2{
  margin: 0;
  padding: 0;
}
}

.about-section2-content-clinicinfo{
  margin-top: 40px;
  display: block;
}

.about-section2-content-clinicinfo li{
  list-style: none;
}

.about-section2-content-clinicinfo li:nth-child(1){
  margin-bottom: 16px;
  margin-left: 0;
}

.about-section2-content-clinicinfo li:nth-child(1) a{
  text-decoration: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #D8A7A9;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #D8A7A9;
  display: inline-block;
  width: 250px;
  text-align: center;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.about-section2-content-clinicinfo li:nth-child(1) a{
  text-decoration: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #D8A7A9;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #D8A7A9;
  display: inline-block;
  width: 92%;
  text-align: center;
}

}

.about-section2-content-clinicinfo li:nth-child(1) a:hover{
  background-color: #D8A7A900;
  color: #D8A7A9;
  transition: .5s;
}

.about-section2-content-clinicinfo li:nth-child(2) a{
  text-decoration: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #654E4E;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #654E4E;
  display: inline-block;
  width: 250px;
  text-align: center;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.about-section2-content-clinicinfo li:nth-child(2) a{
  text-decoration: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #654E4E;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #654E4E;
  display: inline-block;
  width: 84%;
  text-align: center;
}
}

.about-section2-content-clinicinfo li:nth-child(2) a:hover{
  background-color: #654E4E00;
  color: #654E4E;
  transition: .5s;
}

.about-section4{
  max-width: 1600px;
  margin: 0 auto;
  text-align: center;
	background: url("/wp-content/themes/eclatclinic/img/top-section6-bg.png") center / cover no-repeat;
  padding: 0 24% 80px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.about-section4{
  max-width: 1600px;
  margin: 0 auto;
  text-align: center;
  background: url("/wp-content/themes/eclatclinic/img/top-section6-bg.png") center / cover no-repeat;
  padding: 0 8% 80px;
}
}

.about-section4-content{
  border-top: solid 1px #C8A7A8;
  margin-top: 40px;
}

.about-section4-content-info{
  border-bottom: solid 1px #C8A7A8;
  padding: 24px 0;
  display: flex;
  justify-content: flex-start;
}

.about-section4-content-info li{
  list-style: none;
  text-align: left;
}

.about-section4-content-info li:nth-child(1){
  width: 30%;
}

.about-section4-content-info li:nth-child(2){
  width: 68%;
}

.about-section4-content-info li a{
  text-decoration: none;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #361212;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.about-section4-content-info li:nth-child(1){
  width: 40%;
}

.about-section4-content-info li:nth-child(2){
  width: 58%;
}
}


/*料金表*/
.price-section2{
  margin: 40px 0;
  text-align: center;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-section2{
  margin: 24px 8%;
  text-align: left;
}
}

.price-section2-info{
  margin: 40px 24%;
  background-color: #F7F1F1;
  padding: 4%;
  text-align: center;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-section2-info{
  margin: 24px 0;
  background-color: #F7F1F1;
  padding: 8% 4%;
  text-align: center;
}

.price-section2-info p{
  font-size: 12px;
}
}

.price-section3{
  margin: 80px auto;
  max-width: 1600px;
  padding: 0 16%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-section3{
  margin: 40px auto;
  max-width: 1600px;
  padding: 0 8%;
}
}

.price-section3 h6{
  font-family: "Noto Serif JP", serif;
  font-size: 20px;
  font-weight: 400;
  color: #401919;
  letter-spacing: 2px;
  margin-bottom: 40px;
  text-align: center;
}


#twoTabs.tabs { max-width: 100%; }

#twoTabs .tabs__list{
  display: flex;
}

#twoTabs .tabs__tab{
  flex: 1 1 0;              
  padding: 16px 16px;
  background-color: #F5ECEC;
  border: none;
  cursor: pointer;
  font: inherit;
  color: #3612129d;
  font-size: 15px;
  border-top: 4px solid #F5ECEC;
  transition: background .15s ease, border-color .15s ease;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
#twoTabs .tabs__tab{
  flex: 1 1 0;              
  padding: 16px 16px;
  background-color: #F5ECEC;
  border: none;
  cursor: pointer;
  font: inherit;
  color: #3612129d;
  font-size: 14px;
  border-top: 4px solid #F5ECEC;
  transition: background .15s ease, border-color .15s ease;
}
}

#twoTabs .tabs__tab:hover{ background-color: #FAF7F7;}
#twoTabs .tabs__tab[aria-selected="true"]{
  border-bottom-color: currentColor;
  border-top: 4px solid #D8A7A9;
  background-color: #FAF7F7;
  color: #361212;
  font-size: 15px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
#twoTabs .tabs__tab:hover{ background-color: #FAF7F7;}
#twoTabs .tabs__tab[aria-selected="true"]{
  border-bottom-color: currentColor;
  border-top: 4px solid #D8A7A9;
  background-color: #FAF7F7;
  color: #361212;
  font-size: 14px;
}
}

#twoTabs .tabs__panel{ padding: 16px 0; }

.price-tab-list{
  display: flex;
  flex-wrap: wrap;
  margin: 40px 0;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-tab-list{
  display: flex;
  flex-wrap: wrap;
  margin: 24px 0;
}
}

#tab1-1,#tab1-2,#tab1-3,#tab1-4,#tab1-5,#tab1-6,#tab1-7,#tab1-8,#tab1-9,#tab1-10,#tab1-11,#tab1-12,#tab1-13,#tab1-14,#tab1-15{
  --header-h: 80px;
  scroll-margin-top: calc(var(--header-h) + 40px);
}

.price-tab-list li{
  list-style: none;
  margin-right: 16px;
  margin-bottom: 24px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-tab-list li{
  list-style: none;
  margin-right: 8px;
  margin-bottom: 16px;
}
}

.price-tab-list li a{
  text-decoration: none;
  color: #401919;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 1px;
  padding: 8px;
  background-color: #F6EDE9;
  border-radius: 30px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-tab-list li a{
  text-decoration: none;
  color: #401919;
  font-size: 12px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  letter-spacing: 1px;
  padding: 8px 12px;
  background-color: #F6EDE9;
  border-radius: 30px;
}
}

.price-tab-list li a:hover{
  background-color: #dbc7be;
  transition: .5s;
}

.price-tab-pricelist{
  margin: 40px 0;
}

.price-tab-pricelist-info{
  margin-bottom: 40px;
  background-color: #f5f0f0;
}

.price-tab-pricelist-titile{
  background-color: #D8A7A9;
  color: #ffffff;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 1px;
  padding: 8px 24px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
	.price-tab-pricelist-titile{
  background-color: #D8A7A9;
  color: #ffffff;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 1px;
  padding: 8px 12px;
}
}

.price-tab-pricelist-price{
  display: flex;
  align-items: baseline; 
  gap: 8px;            
}

.price-tab-pricelist-price .spot-title{
  padding: 10px 24px 10px;
  width: 40%;
  position: relative;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-tab-pricelist-price .spot-title{
  padding: 10px 12px;
  width:40%;
  position: relative;
  font-size: 12px;
}
}

.price-tab-pricelist-price .spot-title::after{
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  width: 0.5px;
  height: 100%;       
  background: #c8a7a89c;     
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-tab-pricelist-price .spot-title::after{
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  width: 0.5px;
  height: 100%;       
  background: #c8a7a860;     
}
}


.price-tab-pricelist-price .price{
  margin-left: auto;  
  white-space: nowrap;
  text-align: right;
  padding: 10px 0 ;
  color: #A68F8F;
  font-size: 12px;
  font-weight: 300;
  text-decoration: line-through;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-tab-pricelist-price .price{
  margin-left: auto; 
  margin-right: 0; 
  white-space: nowrap;
  text-align: right;
  padding: 10px 0 ;
  color: #A68F8F;
  font-size: 10px;
  font-weight: 300;
  text-decoration: line-through;
}
}

.price-tab-pricelist-price .campaignーprice{
  white-space: nowrap;
  text-align: right;
  padding: 10px 24px 10px 0;
  width: 20%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-tab-pricelist-price .campaignーprice{
  white-space: nowrap;
  text-align: right;
  padding: 10px 12px;
  width: 20%;
  font-size: 12px;
}
.price-tab-pricelist-price .regular-price{
  text-align: right;
  padding: 10px 24px 10px 0;
  width: 20%;
  font-size:10px;
}
}


/*施術一覧*/
.menulist-section2{
  text-align: center;
  padding: 80px 16% 40px;
  background: linear-gradient(180deg, #cdabaf51 0%, #FAF7F7 100%);
}


/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.menulist-section2{
  text-align: left;
  padding: 40px 8% 24px;
  background: linear-gradient(180deg, #cdabaf51 0%, #FAF7F7 100%);
}
}

.menulist-section2 h6{
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #361212;
  font-weight: 600;
}

.menulist-section2  p{
  text-align: left;
  margin-top: 16px;
}

.menulist-section3{
  padding: 40px 12% 104px;
  margin: 0 auto;
  max-width: 1600px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.menulist-section3{
  padding: 24px 8% 40px;
  margin: 0 auto;
  max-width: 1600px;
}

}

.menulist-section3-menu{
  display: flex;
  justify-content: space-between;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.menulist-section3-menu{
  display: block;
  justify-content: space-between;
}
}

.menulist-section3-menu-left{
  width: 48%;
}

.menulist-section3-menu-right{
  width: 48%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.menulist-section3-menu-left{
  width:100%;
}

.menulist-section3-menu-right{
  width: 100%;
}
}

.menulist-section3-menu-content a{
  display: flex;
  align-items: center;
  text-decoration: none;
}

.menulist-section3-menu-content a:hover{
  opacity: .5;
  transition: .5s;
}

.menulist-section3-menu-content li{
  list-style: none;
  margin-bottom: 24px;
}

.menulist-section3-menu-content li:nth-child(1){
  width: 40%;
  margin-right: 16px;
}

.menulist-section3-menu-content li:nth-child(2){
  width: 50%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.menulist-section3-menu-content li:nth-child(1){
  width: 30%;
  margin-right: 16px;
}

.menulist-section3-menu-content li:nth-child(2){
  width: 65%;
}
}

.menulist-section3-menu-content li:nth-child(3){
  width: 6%;
  text-align: right;
  font-size: 28px;
  font-family: "Noto Sans JP", sans-serif;
  color: #D18D95;
  font-weight: 200;
}


.menulist-section3-menu-content li img{
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.menulist-section3-menu h3{
  background-color: #8C5D5D;
  padding: 12px 18px;
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #ffffff;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 24px;
}

.menulist-section3-menu-content li h2{
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #D18D95;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 8px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.menulist-section3-menu h3{
  background-color: #8C5D5D;
  padding: 12px 18px;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #ffffff;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 24px;
}

.menulist-section3-menu-content li h2{
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #D18D95;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 4px;
}

.menulist-section3-menu-content li p{
  font-size: 13px;
  line-height: 1.6em;
}
}

/* 施術一覧の画像を正方形に */
.treatment-archive-thumbnail {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
}

/*施術詳細*/

.treatment-title{
	padding-bottom: 80px;
}

@media (min-width: 0px) and (max-width: 480px) {
    .treatment-title {
        padding-bottom: 40px;
    }
}

.treatment-title h1 {
    font-family: "Noto Serif JP", serif;
    color: #361212;
    font-weight: 500;
  line-height: 1.6em;
    letter-spacing: 2px;
	font-size: 23px;
}

@media (min-width: 0px) and (max-width: 480px) {
	.treatment-title h1 {
    font-family: "Noto Serif JP", serif;
    color: #361212;
    font-weight: 500;
  line-height: 1.6em;
    letter-spacing: 2px;
	font-size: 20px;
}
}

.treatment-title h2 {
    font-family: "Noto Serif JP", serif;
    font-size: 16px;
    font-weight: 400;
    color: #401919;
    letter-spacing: 2px;
}



.treatment-section3{
  margin: 40px auto;
  max-width: 1600px;
  padding: 0 8%;
  display: flex;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)); 
  gap: 8px; 
  list-style: none;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-section3{
  margin: 40px auto;
  max-width: 1600px;
  padding: 0 8%;
  display: flex;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)); 
  gap: 8px; 
  list-style: none;
}
}

.treatment-section3 > li{ min-width: 0; }

.treatment-section3 a{
  display: flex;
  align-items: center;
  justify-content: space-between; 
  padding: 18px 20px;
  border: 1px solid #8C5D5D;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 600;
  color: #401919;
  text-decoration: none;
  box-sizing: border-box;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-section3 a{
  display: flex;
  align-items: center;
  justify-content: space-between; 
  padding: 12px 16px;
  border: 1px solid #8C5D5D;
  border-radius: 5px;
  font-size: 12px;
  font-weight: 600;
  color: #401919;
  text-decoration: none;
  box-sizing: border-box;
  height: 60px;
}
}

.treatment-section3 a:hover{
  background-color: #8c5d5d45;
  transition: .5s;
}

.treatment-section3 a span{
  font-size: 0;
  line-height: 0;
  display:inline-flex;
  width: 10px;  
  height:10px;
  color: #401919;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
  .treatment-section3 a span{
  font-size: 0;
  line-height: 0;
  display:inline-flex;
  width: 10px;  
  height:10px;
  color: #401919;
  margin-left: 4px;
}
}

/* くの字（下向き） */
.treatment-section3 a span::before{
  content:"";
  display:block;
  width: 4px;                
  height:4px;
  border-right: 2px solid currentColor; 
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);   
  transform-origin: center;
}

#treatment-info1,#treatment-info2,#treatment-info3,#treatment-info4,#treatment-info5,#treatment-info6,#treatment-info7,#treatment-info8,#treatment-info9,#treatment-info10,#treatment-info11{
  --header-h: 80px;                       
    scroll-margin-top: calc(var(--header-h) + 40px); 
}

.treatment-section4{
  margin: 80px auto;
  max-width: 1600px;
  padding: 0 8%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-section4{
  margin: 40px auto;
  max-width: 1600px;
  padding: 0 8%;
}

}

.treatment-info{
  background-color: #f8f1f5;
  margin-bottom: 40px;
  padding: 4% 6%;
}


/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
  .treatment-info{
  background-color: #f8f1f5;
  margin-bottom: 24px;
  padding: 6% 8%;
}
}

.treatment-info h3{
  padding-bottom: 24px;
  font-size: 18px;
  font-family: "Noto Sans JP", sans-serif;
  color: #D18D95;
  font-weight: 600;
  letter-spacing: 1px;
  border-bottom: solid 1px#D18D95;
  margin-bottom: 24px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info h3{
  padding-bottom: 16px;
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #D18D95;
  font-weight: 600;
  letter-spacing: 1px;
  border-bottom: solid 1px#D18D95;
  margin-bottom: 16px;
}
}

.treatment-info1-text li{
  list-style: none;
  display: flex;
  margin-bottom: 8px;
  align-items: center;
}

.treatment-info1-text li img{
  width: 25px;
  margin-right: 8px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info1-text li img{
  width: 20px;
  margin-right: 8px;
}
}

.treatment-info2-text-1{
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info2-text-1{
  list-style: none;
  display: block;
  align-items: center;
  justify-content: space-between;
}
}

.treatment-info2-text-1 li:nth-child(1){
  width: 65%;
}

.treatment-info2-text-1 li:nth-child(2){
  width: 30%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info2-text-1 li:nth-child(1){
  width: 100%;
  margin-bottom: 16px;
}

.treatment-info2-text-1 li:nth-child(2){
  width: 100%;
}
}

.treatment-info2-text img{
  width: 100%;
}

.treatment-info2-text-2{
  margin-top: 40px;
}

.treatment-info2-text-2 h4{
  background-color: #8C5D5D;
  padding: 12px 18px;
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #ffffff;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 16px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info2-text-2 h4{
  background-color: #8C5D5D;
  padding: 8px 18px;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #ffffff;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 16px;
}
}

.treatment-info3-text-1{
  list-style: none;
}



.info3-margin{
  margin-bottom: 64px;
}

.treatment-info3-text-1 li:nth-child(1){
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}

.treatment-info3-text-1-left{
  width: 83%;
}

.treatment-info3-text-1 li img{
  width: 15%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info3-text-1 li:nth-child(1){
  display: block;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}

.treatment-info3-text-1-left{
  width: 100%;
}

.treatment-info3-text-1 li img{
  width: 50%;
  margin: 0 25%;
}
}

.treatment-info3-text-1-left h6{
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 600;
  margin-bottom: 8px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info3-text-1-left h6{
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 600;
  margin-bottom: 8px;
}
}

.treatment-info3-text-1 li:nth-child(2){
  background-color: #ffffff;
  padding: 2% 4%;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info3-text-1 li:nth-child(2){
  background-color: #ffffff;
  padding: 4% 6%;
}
}

.treatment-info3-text-1 li b{
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 600;
  margin-bottom: 8px;
  display: inline-block;
  border-bottom: solid 1px #401919;
}

.treatment-info3-text-1 li:nth-child(2) p{
  font-size: 13px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info3-text-1 li b{
  font-size: 13px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 600;
  margin-bottom: 8px;
  display: inline-block;
  border-bottom: solid 1px #401919;
}

.treatment-info3-text-1 li:nth-child(2) p{
  font-size: 11px;
}

}

.treatment-info5-text-link{
  display: flex;
  align-items: center;
  list-style: none;
  justify-content: flex-start;
  margin-bottom: 8px;
}

.treatment-info5-text-link li:nth-child(1){
  margin-right: 40px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info5-text-link{
  display: block;
  align-items: center;
  list-style: none;
  justify-content: flex-start;
  margin-bottom: 16px;
}

.treatment-info5-text-link li:nth-child(1){
  margin-right: 0;
}
}

.treatment-info5-text-link li a{
  border: solid 1px #401919c5;
  text-decoration: none;
  padding: 8%;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  display: inline-flex;
  align-items: center;
  width: 200px;
  justify-content: space-between;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info5-text-link li a{
  border: solid 1px #401919c5;
  text-decoration: none;
  padding: 4%;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  display: inline-flex;
  align-items: center;
  width: 92%;
  justify-content: space-between;
  margin-bottom: 8px;
}

}

.treatment-info5-text-link li a:hover{
  background-color: #40191922;
  transition: .5s;
}

.treatment-info8-text li{
  list-style: none;
  margin-top: 32px;
}

.treatment-info8-text li b{
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 600;
  margin-bottom: 8px;
  display: inline-block;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info8-text li b{
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 600;
  margin-bottom: 8px;
  display: inline-block;
}
}

.price-table{
  width: 100%;
  border-spacing: 0;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  border: 1px solid #40191991;
}

.price-table thead th{
  background: #D18D95;
  color: #ffffff;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  padding: 16px;
  border-right: 1px solid #40191991;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-table thead th{
  background: #D18D95;
  color: #ffffff;
  text-align: center;
  font-size: 10px;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  padding: 4% 2%;
  border-right: 1px solid #40191991;
}
}

.price-table thead th:first-child{
  text-align: left;
}
.price-table thead th:last-child{
  border-right: none;
}

.price-table .menu-col{  
  width: 40%; 
}
.price-table .price-col{ width: 20%; }
.price-table .mix-col{   width: 20%; }


.price-table tbody tr{
  background: var(--rowbg);
}


.price-table th[scope="row"],
.price-table td{
  padding: var(--pad-y) var(--pad-x);
  border-right: 1px solid #40191991;
  vertical-align: middle;
  font-size: 14px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-table th[scope="row"],
.price-table td{
  padding: var(--pad-y) var(--pad-x);
  border-right: 1px solid #40191991;
  vertical-align: middle;
  font-size: 10px;
}
}

.price-table td:last-child,
.price-table th[scope="row"]:last-child{
  border-right: none;
}

.price-table th[scope="row"]{
  text-align: left;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 400;
  background-color: #d18d9512;
  padding: 2%;
  border-top: 1px solid #40191991;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-table th[scope="row"]{
  text-align: left;
  font-size: 10px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 500;
  background-color: #d18d9512;
  padding: 2%;
  border-top: 1px solid #40191991;
}
}

.price-table td{
  text-align: center;
  background-color: #ffffff;
  padding: 2%;
  border-top: 1px solid #40191991;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.price-table td{
  text-align: left;
  background-color: #ffffff;
  padding: 2%;
  border-top: 1px solid #40191991;
}
}


.price-table-2col {
  width: 100%;
  border-spacing: 0;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  border: 1px solid #40191991;
}

.price-table-2col thead th {
  background: #D18D95;
  color: #ffffff;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  padding: 16px;
  border-right: 1px solid #40191991;
}

.price-table-2col thead th:first-child {
  text-align: left;
}

.price-table-2col thead th:last-child {
  border-right: none;
}

.price-table-2col .menu-col {
  width: 60%;
}
.price-table-2col .price-col {
  width: 40%;
}

.price-table-2col tbody tr {
  background: var(--rowbg, #fff);
}

.price-table-2col th[scope="row"],
.price-table-2col td {
  padding: 12px;
  border-right: 1px solid #40191991;
  vertical-align: middle;
  font-size: 14px;
}

.price-table-2col td:last-child,
.price-table-2col th[scope="row"]:last-child {
  border-right: none;
}


.price-table-2col th[scope="row"] {
  text-align: left;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 400;
  background-color: #d18d9512;
  border-top: 1px solid #40191991;
}


.price-table-2col td {
  text-align: center;
  background-color: #ffffff;
  border-top: 1px solid #40191991;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
  .price-table-2col thead th {
    text-align: left;
    font-size: 10px;
    padding: 4% 2%;
  }
  .price-table-2col th[scope="row"],
  .price-table-2col td {
    font-size: 10px;
    padding: 4% 2%;
    text-align: left;
  }
}

.treatment-info9-text .treatment-info9-text-span{
	font-size:12px;
	margin-top:4px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info9-text .treatment-info9-text-span{
	font-size:10px;
	margin-top:4px;
}
}

.treatment-info11-text li{
  list-style: none;
  background-color: #ffffff;
  margin-top: 8px;
  padding: 2% 3%;
}

.treatment-info11-text li h6{
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 600;
  margin-bottom: 8px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info11-text li{
  list-style: none;
  background-color: #ffffff;
  margin-top: 8px;
  padding: 6%;
}

.treatment-info11-text li h6{
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  font-weight: 600;
  margin-bottom: 8px;
  line-height: 1.8em;
}
}

.treatment-info12-text{
  list-style: none;
}

.treatment-info12-text li:nth-child(1){
  margin-bottom: 40px;
}

.treatment-info12-text li:nth-child(2){
  margin-bottom: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info12-text li:nth-child(2){
  margin-bottom: 40px;
  display: block;
  align-items: center;
  justify-content: space-between;
}
}

.treatment-info12-text-li2-left{
  width: 65%;
}

.treatment-info12-text-li2-right{
  width: 30%;
}

@media (min-width: 0px) and (max-width: 480px) {
.treatment-info12-text-li2-left{
  width: 100%;
	margin-bottom: 16px;
}

.treatment-info12-text-li2-right{
  width: 100%;
}
}

.treatment-info12-text img{
  width: 100%;
}

.treatment-info12-text-li2-left h5{
  font-size: 15px;
    font-family: "Noto Sans JP", sans-serif;
    color: #401919;
    font-weight: 600;
    margin-bottom: 8px;
}

.treatment-info12-text-li3 h4{
  background-color: #D8A7A9;
    color: #ffffff;
    font-size: 15px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 1px;
    padding: 8px 16px;
    margin-bottom: 24px;
    margin-top: 40px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info12-text-li3 h4{
  background-color: #D8A7A9;
    color: #ffffff;
    font-size: 15px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 1px;
    padding: 12px 16px;
    margin-bottom: 24px;
}
}

.treatment-info12-text-li3 h6{
  font-size: 15px;
    font-family: "Noto Sans JP", sans-serif;
    color: #401919;
    font-weight: 600;
    margin-bottom: 8px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info12-text-li3 h6{
  font-size: 14px;
    font-family: "Noto Sans JP", sans-serif;
    color: #401919;
    font-weight: 600;
    margin-bottom: 8px;
}
}

.treatment-info12-text-li3 p span{
  font-size: 12px;
  line-height: 1.6em;
  display: inline-block;
  margin-top: 4px;
}

.treatment-info12-text-li3-text2{
  background-color: #ffffff;
    padding: 2% 4%;
    margin-top: 24px;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {
.treatment-info12-text-li3-text2{
  background-color: #ffffff;
    padding: 4% 6%;
    margin-top: 24px;
}
}

.treatment-info12-text-li3-text2 b{
  font-size: 15px;
    font-family: "Noto Sans JP", sans-serif;
    color: #401919;
    font-weight: 600;
    margin-bottom: 8px;
    display: inline-block;
    border-bottom: solid 1px #401919;
}

/* スマートフォン*/
@media (min-width: 0px) and (max-width: 480px) {

.treatment-info12-text-li3-text2 b {
        font-size: 13px;
        font-family: "Noto Sans JP", sans-serif;
        color: #401919;
        font-weight: 600;
        margin-bottom: 8px;
        display: inline-block;
        border-bottom: solid 1px #401919;
    }
	
	.treatment-info12-text-li3-text2 p{
		        font-size: 11px;
	}
	
}

.treatment-info-td{
	margin-top:40px;
}

.treatment-info-td h6{
	font-size: 15px;
    font-family: "Noto Sans JP", sans-serif;
    color: #401919;
    font-weight: 600;
    margin-bottom:16px;
}

.treatment-compare {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 12px;
  background: #fff;
}

.treatment-compare th,
.treatment-compare td {
  border: 1px solid #ddd;
  padding: 8px 12px;
  vertical-align: middle;
  text-align: left;
  line-height: 1.6;
  word-break: keep-all;
  font-weight: 400;
    font-family: "Noto Sans JP", sans-serif;
    color: #401919;
	white-space: normal;   
  word-break: break-word;
}


.treatment-compare thead th {
  background: #f7f7f7;
	font-size: 12px;
    font-family: "Noto Sans JP", sans-serif;
    color: #401919;
    font-weight: 500;
    margin-bottom:8px;
	white-space: normal;   
  word-break: break-word;
}

.treatment-compare tbody th {
  background: #fafafa;
  font-weight: 600;
  text-align: left;
  white-space: nowrap;
	font-family: "Noto Sans JP", sans-serif;
    color: #401919;
}

@media (max-width: 480px) {
.treatment-compare {
  width: 100%;
  font-size: 10px;
}


  .treatment-compare thead {
    display: none; /* 見出しは消す */
  }
  .treatment-compare,
  .treatment-compare tbody,
  .treatment-compare tr,
  .treatment-compare td,
  .treatment-compare th {
    display: block;
  }

.treatment-compare tbody th{
  border: none;
  border-bottom: solid 1px #ddd;
	padding: 8px;
} 
  .treatment-compare tr {
    border: 1px solid #ddd;
    background: #fff;
    
  }
  .treatment-compare td {
    text-align: left;
    padding:0;
    border: none;
    border-bottom: 1px solid #eee;
    display: flex;
    justify-content:flex-start;
    flex: 1;    
    box-sizing: border-box;
    padding: 8px;
	  word-break: break-word;  
    white-space: normal; 
  }

  .treatment-compare td::before {
    content: attr(data-label);
    flex: 0 0 50%;          
    font-weight: bold;
    box-sizing: border-box;
    display: flex;         
    align-items: center;  
    margin-right: 8px;
    padding-right: 8px;
    border-right: solid 1px #eee;
  }
}



/*アニメーション*/
.top-fv-text{
  opacity: 0;
  transition: opacity .4s ease var(--fv-delay, .8s); 
}
.top-fv-text.is-visible{
  opacity: 1;
}

.top-fv img{ opacity:0; transition:opacity .4s ease; }
.top-fv img.is-visible{ opacity:1; }

.header {
  opacity: 0;
  transition: opacity .4s  ease var(--fv-delay, .4s);
}
.header.visible {
  opacity: 1;
}



.fade-in-block {
  opacity: 0;
  transform: translateY(60px);
  transition: opacity 1s ease, transform 1s ease;
  will-change: transform, opacity;
}

.fade-in-block.visible {
  opacity: 1;
  transform: translateY(0);
}


/*フェードイン*/
.fade-in {
  opacity: 0; /* 初期状態では透明 */
  transform: translateY(10px); /* 少し下から出てくるように設定 */
  transition: opacity 0.5s ease, transform 0.5s ease; /* フェードインとスライドのトランジション */
}

/* 画面に入ったら透明度が1になり、位置が元に戻る */
.fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}

.fade-in2 {
  opacity: 0; /* 初期状態では透明 */
  transform: translateY(50px); /* 少し下から出てくるように設定 */
  transition: opacity 0.7s ease, transform 0.7s ease; /* フェードインとスライドのトランジション */
}

/* 画面に入ったら透明度が1になり、位置が元に戻る */
.fade-in2.visible {
  opacity: 1;
  transform: translateY(0);
}


/* 症例一覧 */
.case-list-section {
    margin: 80px auto;
      max-width: 1600px;
      padding: 0 16%;
}

.case-item {
  max-width: 100%;
  margin: 0 auto;
}

.case-item-content {
  max-width: 100%;
  box-sizing: border-box;
}

/* タブレット */
@media (min-width: 481px) and (max-width: 1024px) {
  .case-list-section {
    padding: 0 8%;
  }
  
  .case-item-images {
    gap: 2px;
  }
  
  .case-item-image {
    width: auto;
    flex: 1 1 calc(50% - 6px);
    min-width: 0;
  }
  
  .case-item-image img {
    height: auto;
    aspect-ratio: 1;
  }
}

/* 症例絞り込みボタン */
.case-filter-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 40px;
  justify-content: center;
}

.case-filter-btn {
  display: inline-block;
  padding: 8px 20px;
  background-color: #fff;
  border: 1px solid #5B2424;
  color: #5B2424;
  font-size: 14px;
  font-weight: normal;
  cursor: pointer;
  transition: all 0.3s ease;
  border-radius: 4px;
  text-decoration: none;
}

.case-filter-btn:hover {
  background-color: #5B2424;
  color: #fff;
}

.case-filter-btn.active {
  background-color: #5B2424;
  color: #fff;
  font-weight: bold;
}

@media only screen and (max-width: 768px) {
  .case-list-section {
    padding: 0 4%;
  }
  
  .case-filter-buttons {
    gap: 8px;
    margin-bottom: 30px;
  }
  
  .case-filter-btn {
    padding: 6px 16px;
    font-size: 12px;
  }
}

.case-list-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}

@media only screen and (max-width: 768px) {
  .case-list-container {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  
  .case-item {
    max-width: 100%;
    margin: 0 auto;
  }
  
  .case-item-content {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  
  .case-item-images {
    gap: 10px;
    max-width: 100%;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
  }
  
  .case-item-image {
    width: auto;
    flex: 1 1 calc(50% - 5px);
    min-width: 0;
    box-sizing: border-box;
  }
  
  .case-item-image img {
    width: 100%;
    max-width: 100%;
    height: auto;
    aspect-ratio: 1;
    object-fit: cover;
    display: block;
  }
}

/* 症例画像（ビフォア・アフター） */
.case-item-images {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
  max-width: 100%;
}

.case-item-image {
  width: auto;
  max-width: 180px;
  flex: 0 1 180px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.case-item-image img {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
}

/* PCでも画面幅が狭い場合の対応 */
@media (min-width: 769px) and (max-width: 1200px) {
  .case-item-images {
    gap: 12px;
  }
  
  .case-item-image {
    width: auto;
    flex: 1 1 calc(50% - 6px);
    min-width: 0;
  }
  
  .case-item-image img {
    height: auto;
    aspect-ratio: 1;
  }
}

.case-item-image-label {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  margin-top: 8px;
}

.case-item-image-label-before {
  color: #5B2424;
}

.case-item-image-label-after {
  color: #A3555E;
}

/* 症例詳細情報 */
.case-item-details {
  margin-top: 20px;
}

.case-item-detail {
  margin-bottom: 0px;
}

.case-item-detail-label {
  color: #5B2424;
  font-size: 12px;
  font-weight: bold;
  margin-right: 8px;
}

.case-item-detail-value {
  color: #5B2424;
  font-size: 12px;
  font-weight: normal;
}

.case-item-detail-risk .case-item-detail-label {
  display: block;
  margin-right: 0;
  margin-bottom: 4px;
}

.case-item-detail-risk .case-item-detail-value {
  display: block;
}

/* 医師一覧 */
.doctor-list-section {
  margin: 80px auto;
  max-width: 1600px;
  padding: 0 16%;
}

.doctor-list-container {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.doctor-item {
  border-bottom: 1px solid #C8A7A8;
  padding: 20px 0;
}

.doctor-item:last-child {
  border-bottom: none;
}

.doctor-item-content {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 40px;
  align-items: flex-start;
  text-align: left;
}

.doctor-item-image {
  flex: 0 0 auto;
  width: 48%;
  max-width: 650px;
}

.doctor-item-image img {
  width: 100%;
  height: auto;
  display: block;
}

.doctor-item-info {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.doctor-item-position {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  margin-top: 0;
  margin-bottom: 0;
  color: #401919;
}

.doctor-item-title {
  font-family: "Noto Serif JP", serif;
  margin: 0;
  padding-bottom: 24px;
  border-bottom: 1px solid #C8A7A8;
  font-size: 20px;
  font-weight: 500;
  color: #401919;
}

.doctor-item-catchcopy {
  font-family: "Noto Serif JP", serif;
  margin: 24px 0 0;
  text-align: left;
  color: #401919;
  font-size: 20px;
  line-height: 190%;
}

.doctor-item-profile {
  width: 100%;
  flex-basis: 100%;

  padding-bottom: 24px;
  border-bottom: 1px solid #C8A7A8;
  text-align: left;
  color: #401919;
  font-size: 16px;
  line-height: 190%;
}

.doctor-item-career-license {
  width: 100%;
  flex-basis: 100%;
  display: flex;
  flex-direction: row;
  gap: 40px;
  align-items: flex-start;
}

.doctor-item-career,
.doctor-item-license {
  flex: 1;
}

.doctor-item-career-title,
.doctor-item-license-title {
  color: #D18D95;
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 16px;
}

.doctor-item-career-text,
.doctor-item-license-text {
  color: #401919;
  font-size: 16px;
  line-height: 190%;
  margin-bottom: 8px;
}

.doctor-item-career-text:last-child,
.doctor-item-license-text:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 768px) {
  .doctor-list-section {
    padding: 0 5%;
  }

  .doctor-item {
    padding: 15px 0;
  }

  .doctor-item-content {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    gap: 12px;
  }

  .doctor-item-image {
    width: calc(100% + 10%);
    max-width: none;
    margin: 0 -5%;
  }

  .doctor-item-info {
    width: 100%;
    align-items: flex-start;
    text-align: left;
  }

  .doctor-item-position {
    font-size: 18px;
    margin-top: 12px;
  }

  .doctor-item-title {
    font-size: 24px;
    padding-bottom: 16px;
  }

  .doctor-item-catchcopy {
    font-size: 24px;
    margin-top: 16px;
  }

  .doctor-item-profile {
    font-size: 14px;
    margin-top: 16px;
  }

  .doctor-item-career-license {
    flex-direction: column;
    gap: 24px;
    margin-top: 16px;
  }

  .doctor-item-career-title,
  .doctor-item-license-title {
    font-size: 18px;
    margin-bottom: 12px;
  }

  .doctor-item-career-text,
  .doctor-item-license-text {
    font-size: 14px;
    margin-bottom: 6px;
  }
}

/* コラム一覧 */
.column-list-section {
  margin: 80px auto;
  max-width: 1600px;
  padding: 0 16%;
}

.column-list-container {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.column-item {
  border-bottom: 1px solid #C8A7A8;
  padding: 20px 0;
}

.column-item:last-child {
  border-bottom: none;
}

.column-item-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.column-item-date {
  color: #A3555E;
  font-size: 14px;
  font-weight: normal;
}

.column-item-title {
  font-size: 14px;
  font-weight: normal;
  margin: 0;
}

.column-item-title a {
  color: #5B2424;
  text-decoration: none;
}

.column-item-title a:hover {
  text-decoration: underline;
}

@media only screen and (max-width: 768px) {
  .column-list-section {
    padding: 0 5%;
  }
  
  .column-item {
    padding: 15px 0;
  }
}

.column-single{
      margin: 80px auto;
      max-width: 1600px;
      padding: 0 16%;

}

/* お悩み一覧 */
.trouble-list-section {
  margin: 80px auto;
  max-width: 1600px;
  padding: 40px 12% 104px;
}

.trouble-list-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 24px 0;
}

.trouble-item {
  width: 48%;
  list-style: none;
  margin: 0;
  padding: 0;
}

.trouble-item a {
  display: flex;
  align-items: center;
  text-decoration: none;
}

.trouble-item a:hover {
  opacity: 0.5;
  transition: 0.5s;
}

.trouble-item-image {
  width: 40%;
  margin-right: 16px;
  list-style: none;
  margin-bottom: 0;
}

.trouble-item-image img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
}

.trouble-item-content {
  width: 50%;
  list-style: none;
  margin: 0;
  padding: 0;
}

.trouble-item-title {
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #D18D95;
  font-weight: 600;
  letter-spacing: 1px;
  margin: 0 0 8px 0;
}

.trouble-item-excerpt {
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
  color: #401919;
  line-height: 1.6;
  margin: 0;
}

/* スマートフォン */
@media (min-width: 0px) and (max-width: 480px) {
  .trouble-list-section {
    padding: 24px 8% 40px;
  }

  .trouble-list-container {
    flex-direction: column;
    gap: 24px 0;
  }

  .trouble-item {
    width: 100%;
  }

  .trouble-item-image {
    width: 30%;
    margin-right: 16px;
  }

  .trouble-item-content {
    width: 65%;
  }

  .trouble-item-title {
    font-size: 14px;
    margin-bottom: 4px;
  }

  .trouble-item-excerpt {
    font-size: 13px;
    line-height: 1.6;
  }
}

/* お悩み詳細 */
.trouble-single {
  margin: 80px auto;
  max-width: 1600px;
  padding: 0 16%;
}

.trouble-single-catchcopy {
  font-size: 16px;
  color: #5B2424;
  text-align: center;
  line-height: 1.8;
  margin-bottom: 40px;
}

.trouble-single-anchors {
  display: flex;
  flex-wrap: nowrap;
  gap: 16px;
  margin-bottom: 40px;
}

.trouble-single-anchor {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border: 1px solid #401919;
  border-radius: 1px;
  text-decoration: none;
  color: #401919;
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  transition: opacity 0.3s;
  flex: 1 1 calc(25% - 12px);
  min-width: 0;
}

.trouble-single-anchor:hover {
  opacity: 0.7;
}

.trouble-single-anchor::after {
  content: '▼';
  font-size: 12px;
  margin-left: 8px;
}

.trouble-single-heading {
  font-size: 28px;
  color: #5B2424;
  text-align: center;
  margin: 60px 0 24px;
  font-family: "Noto Serif JP", sans-serif;
  font-weight: 600;
}

.trouble-single-treatments-approach-heading {
  margin: 60px 0 0;
}

.trouble-single-treatments-approach-section {
  background-color: #F6F2F2;
  padding: 60px 0;

}

.trouble-section-inner {
  max-width: 1600px;
  margin: 0 auto;
  padding: 0 16%;
}

.trouble-single-faq-section {
  background-color: #F7EEEF;
  padding: 60px 0;

}

.trouble-single-faq-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.trouble-single-faq-item {
  background-color: #fff;
  border-bottom: 1px solid #C8A7A8;
}

.trouble-single-faq-item:first-child {
  border-top: 1px solid #C8A7A8;
}

.trouble-single-faq-question {
  width: 100%;
  background: none;
  border: none;
  padding: 20px;
  text-align: left;
  cursor: pointer;
  position: relative;
  display: flex;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
}

.trouble-single-faq-q {
  position: relative;
  padding-left: 24px;
  font-size: 16px;
  color: #401919;
  line-height: 1.6;
}

.trouble-single-faq-q::before {
  content: "Q.";
  position: absolute;
  left: 0;
  color: #A3555E;
  font-weight: bold;
  font-size: 14px;
}

.trouble-single-faq-question::after {
  content: "▼";
  position: absolute;
  right: 20px;
  color: #A3555E;
  font-size: 12px;
  transition: transform 0.3s;
}

.trouble-single-faq-item.active .trouble-single-faq-question::after {
  transform: rotate(180deg);
}

.trouble-single-faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  background-color: #fff;
}

.trouble-single-faq-item.active .trouble-single-faq-answer {
  max-height: 1000px;
}

.trouble-single-faq-a {
  padding: 0 20px 20px 44px;
  position: relative;
  font-size: 16px;
  color: #401919;
  line-height: 1.8;
  font-family: "Noto Sans JP", sans-serif;
}

.trouble-single-faq-a::before {
  content: "A.";
  position: absolute;
  left: 20px;
  color: #A3555E;
  font-weight: bold;
  font-size: 14px;
}

/* FAQページ */
.faq-page-section {
  background-color: #F7EEEF;
  padding: 60px 0;
  margin: 0 0 40px;
}

.faq-page-tabs {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  margin: 40px auto;
  max-width: 1600px;
  padding: 0 16%;
}

.faq-tab-btn {
  padding: 12px 24px;
  background-color: #fff;
  border: 1px solid #C8A7A8;
  border-radius: 4px;
  color: #401919;
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  cursor: pointer;
  transition: all 0.3s;
}

.faq-tab-btn:hover {
  background-color: #F7EEEF;
}

.faq-tab-btn.active {
  background-color: #d18d95;
  color: #fff;
  border-color: #d18d95;
}

.trouble-single-faq-item.hidden {
  display: none;
}

.trouble-single-treatments-approach-section .trouble-single-heading {
  margin-top: 0;
}

.trouble-single-treatments {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
}

.trouble-single-treatment-item {
  display: flex;
  flex-direction: column;
}

.trouble-single-treatment-title {
  background-color: #77494B;
  color: #FFFDFD;
  font-size: 20px;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  padding: 16px 20px;
  margin: 0 0 16px;
  border-radius: 4px;
}

.trouble-single-treatment-title a {
  color: #FFFDFD;
  text-decoration: none;
  display: block;
}

.trouble-single-treatment-title a:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

.trouble-single-treatment-image a {
  display: block;
}

.trouble-single-treatment-image a:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

.trouble-single-treatment-content {
  display: flex;
  gap: 20px;
  align-items: center;
}

.trouble-single-treatment-image {
  flex-shrink: 0;
  width: 150px;
}

.trouble-single-treatment-image img {
  width: 100%;
  height: auto;
  display: block;
}

.trouble-single-treatment-excerpt {
  flex: 1;
  font-size: 16px;
  line-height: 1.8;
  color: #401919;
  font-family: "Noto Sans JP", sans-serif;
}

.trouble-single-list {
  background-color: #F6EDE9;
  padding: 32px 40px;
  margin: 0 0 40px;
  list-style: none;
}

.trouble-single-list-item {
  position: relative;
  padding-left: 24px;
  margin-bottom: 16px;
  font-size: 16px;
  line-height: 1.8;
  color: #401919;
  font-family: "Noto Sans JP", sans-serif;
}

.trouble-single-list-item:last-child {
  margin-bottom: 0;
}

.trouble-single-list-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.9em;
  width: 9px;
  height: 9px;
  background-color: #A3555E;
  transform: translateY(-50%);
}

.trouble-single-contents {
  background-color: #F7EEEF;
  padding: 60px 0;
}

.trouble-single-contents-heading {
  font-size: 28px;
  color: #5B2424;
  text-align: center;
  margin: 0 0 24px;
  font-family: "Noto Serif JP", sans-serif;
  font-weight: 600;
}

.trouble-single-contents-intro {
  font-size: 16px;
  color: #5B2424;
  text-align: center;
  line-height: 1.8;
  margin-bottom: 40px;
}

.trouble-single-contents-images {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.trouble-single-contents-image {
  width: 100%;
}

.trouble-single-contents-image img {
  width: 100%;
  height: auto;
  display: block;
}

.trouble-single-contents-items {
  margin-top: 40px;
}

.trouble-single-contents-item {
  margin-bottom: 32px;
}

.trouble-single-contents-item:last-child {
  margin-bottom: 0;
}

.trouble-single-contents-item-title {
  position: relative;
  padding-left: 20px;
  font-size: 20px;
  color: #D18D95;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  margin: 0 0 16px;
}

.trouble-single-contents-item-title::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.8em;
  width: 9px;
  height: 9px;
  background-color: #A3555E;
  transform: translateY(-50%);
}

.trouble-single-contents-item-text {
  color: #401919;
  font-size: 16px;
  line-height: 190%;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 16px;
}
.trouble-single-contents-item-extra {
 padding: 20px;
 background-color: #fff;
}

.trouble-single-contents-item-caution {
  background-color: #D8A7A9;
  text-align: center;
  padding: 20px 0;
  margin-top: 16px;
  border-radius: 4px;
  position: relative;
}

.trouble-single-contents-item-caution::after {
  content: '';
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 12px solid #D8A7A9;
}

.trouble-single-contents-item-caution .caution-image {
  width: 32px;
  height: 32px;
  display: inline-block;
  margin-bottom: 12px;
}

.trouble-single-contents-item-caution-title {
  color: #FFFDFD;
  font-size: 20px;
  line-height: 150%;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 16px;
}

.trouble-single-contents-item-caution-line {
  height: auto;
  display: block;
  margin: 16px auto;
}

.trouble-single-contents-item-caution-text {
  color: #fff;
  font-size: 16px;
  line-height: 190%;
  text-align: center;
  padding: 0 20px;
  font-family: "Noto Sans JP", sans-serif;
}

.trouble-single-header {
  margin-bottom: 24px;
}

.trouble-single-meta {
  display: flex;
  align-items: center;
  gap: 16px;
}

.trouble-single-meta time {
  color: #A3555E;
  font-size: 14px;
}

.trouble-single-image {
  margin-bottom: 32px;
}

.trouble-single-image img {
  width: 100%;
  height: auto;
  display: block;
}

.trouble-single-content {
  color: #401919;
  font-size: 14px;
  line-height: 1.8;
}

@media only screen and (max-width: 768px) {
  .trouble-single {
    padding: 0 5%;
  }

  .trouble-single-catchcopy {
    font-size: 14px;
  }

  .trouble-single-anchors {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(2, 1fr);
    gap: 12px;
  }

  .trouble-single-anchor {
    flex: none;
    min-width: auto;
    padding: 12px 16px;
    color: #5B2424;
    font-size: 14px;
  }

  .trouble-single-heading {
    font-size: 24px;
  }

  .trouble-single-treatments-approach-heading {
    margin: 40px 0 0;
  }

  .trouble-single-treatments-approach-section {
    padding: 40px 0;
    margin: 0 0 24px;
  }

  .trouble-section-inner {
    padding: 0 5%;
  }

  .faq-page-section {
    padding: 40px 0;
    margin: 0 0 24px;
  }

  .faq-page-tabs {
    padding: 0 5%;
    margin: 24px auto;
    gap: 8px;
  }

  .faq-tab-btn {
    background-color: #fffdfd;
      border: 1px solid #baacac;
      border-radius: 4px;
      color: #716262;
      font-family: "Noto Sans JP", sans-serif;
      cursor: pointer;
      transition: all 0.3s;
      padding: 6px 10px;
      font-size: 14px;
      letter-spacing: 0.05em;
  }

  .trouble-single-faq-section {
    padding: 40px 0;
    margin: 0 0 24px;
  }

  .trouble-single-faq-question {
    padding: 16px;
  }

  .trouble-single-faq-q {
    font-size: 14px;
    padding-left: 20px;
  }

  .trouble-single-faq-q::before {
    font-size: 12px;
  }

  .trouble-single-faq-a {
    padding: 0 16px 16px 36px;
    font-size: 14px;
  }

  .trouble-single-faq-a::before {
    left: 16px;
    font-size: 12px;
  }

  .trouble-single-treatments {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .trouble-single-treatment-title {
    font-size: 18px;
    padding: 12px 16px;
    margin-bottom: 12px;
  }

  .trouble-single-faq-section {
    padding: 40px 0;
    margin: 0 0 24px;
  }

  .trouble-single-treatment-content {
    flex-direction: row;
    align-items: center;
    gap: 12px;
  }

  .trouble-single-treatment-image {
    width: 150px;
    flex-shrink: 0;
  }

  .trouble-single-treatment-excerpt {
    font-size: 14px;
  }

  .trouble-single-list {
    padding: 24px 20px;
  }

  .trouble-single-list-item {
    font-size: 14px;
    padding-left: 20px;
    margin-bottom: 12px;
  }

  .trouble-single-list-item::before {
    width: 9px;
    height: 9px;
  }

  .trouble-single-contents {
    padding: 40px 0;
    margin: 24px 0;
  }

  .trouble-single-contents-heading {
    font-size: 24px;
    margin-bottom: 16px;
  }

  .trouble-single-contents-intro {
    font-size: 14px;
    margin-bottom: 24px;
  }

  .trouble-single-contents-images {
    gap: 16px;
  }

  .trouble-single-contents-items {
    margin-top: 24px;
  }

  .trouble-single-contents-item {
    margin-bottom: 24px;
  }

  .trouble-single-contents-item-title {
    font-size: 18px;
    padding-left: 18px;
    margin-bottom: 12px;
  }

  .trouble-single-contents-item-title::before {
    width: 9px;
    height: 9px;
  }

  .trouble-single-contents-item-text {
    font-size: 14px;
    margin-bottom: 12px;
  }

  .trouble-single-contents-item-caution {
    padding: 16px 0;
    margin-top: 12px;
  }

  .trouble-single-contents-item-caution::after {
    bottom: -10px;
    border-left-width: 10px;
    border-right-width: 10px;
    border-top-width: 10px;
  }

  .trouble-single-contents-item-caution .caution-image {
    width: 32px;
    height: 32px;
    margin-bottom: 8px;
  }

  .trouble-single-contents-item-caution-title {
    font-size: 18px;
    margin-bottom: 12px;
  }

  .trouble-single-contents-item-caution-line {
    margin: 12px auto;
  }

  .trouble-single-contents-item-caution-text {
    font-size: 14px;
  }
}

/* キャンペーンモーダル */
.campaign-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99999;
}

.campaign-modal[aria-hidden="false"] {
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.campaign-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(32, 19, 19, 0.8);
  cursor: pointer;
}

.campaign-modal__content {
  position: relative;
  max-width: 90%;
  max-height: 90%;
  z-index: 10000;
}

.campaign-modal__image {
  max-width: 100%;
  max-height: 90vh;
  width: auto;
  height: auto;
  object-fit: contain;
}

.campaign-modal__close {
  position: absolute;
  top: -40px;
  right: 0;
  background: transparent;
  border: none;
  color: #fff;
  font-size: 40px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10001;
}

.campaign-modal__close:hover {
  opacity: 0.7;
}

.campaign-modal-trigger {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  width: 100%;
  height: auto;
  display: block;
  outline: none;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
}

.campaign-modal-trigger img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#myCarousel .na-carousel__slide > .campaign-modal-trigger {
  padding: 0 8px;
  box-sizing: border-box;
}

.sp-carousel__slide .campaign-modal-trigger {
  display: block;
}

@media only screen and (max-width: 768px) {
  .campaign-modal__close {
    top: -35px;
    font-size: 35px;
    width: 35px;
    height: 35px;
  }
}

.price-tab-pricelist-price-header {
  border-bottom: 0.5px solid #C8A7A8;
  text-align:center;
}
.price-tab-pricelist-price-header .campaignーprice{
  text-align:center;
}
.price-tab-pricelist-price-first{
  border-right: 0.5px solid #C8A7A8;
  height: 100%;
}
.price-tab-pricelist-price .price{
  margin-left:50px;
}
@media only screen and (max-width: 768px) {
  .price-tab-pricelist-price .price{
    margin-left:auto;
  }
}

.price-tab-pricelist-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  color: #361212;
}

.price-tab-pricelist-table thead tr.price-tab-pricelist-price-header {
  border-bottom: 0.5px solid #C8A7A8;
}

.price-tab-pricelist-table thead th {
  text-align: center;
  padding: 10px 24px;
  font-weight: normal;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  color: #361212;
}

.price-tab-pricelist-table thead th.spot-title {
  text-align: left;
  width: 40%;
}

.price-tab-pricelist-table thead th.campaignーprice {
  width: 20%;
}

.price-tab-pricelist-table tbody td {
  padding: 10px 24px;
  vertical-align: middle;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  color: #361212;
}

.price-tab-pricelist-table tbody td.spot-title {
  width: 40%;
  position: relative;
  padding: 10px 24px;
}

.price-tab-pricelist-table tbody td.spot-title::after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  width: 0.5px;
  height: 100%;
  background: #c8a7a89c;
}

.price-tab-pricelist-table tbody td.campaignーprice {
  width: 20%;
  white-space: nowrap;
  text-align: right;
  padding: 10px 24px 10px 0;
}

.price-tab-pricelist-table tbody td.spot-title .price {
  margin-left: 50px;
  white-space: nowrap;
  text-align: right;
  padding: 10px 0;
  color: #A68F8F;
  font-size: 12px;
  font-weight: 300;
  text-decoration: line-through;
}

.price-tab-pricelist-table thead th.regular-price,
.price-tab-pricelist-table tbody td.regular-price {
  border-left: 0.5px solid #C8A7A8;
}

.price-tab-pricelist-table thead th.price-tab-pricelist-price-first,
.price-tab-pricelist-table tbody td.price-tab-pricelist-price-first {
  border-right: 0.5px solid #C8A7A8;
    border-left: 0.5px solid #C8A7A8;
}

@media only screen and (max-width: 768px) {
  .price-tab-pricelist-table {
    font-size: 12px;
  }

  .price-tab-pricelist-table thead th {
    padding: 10px 12px;
    font-size: 10px;
  }

  .price-tab-pricelist-table tbody td {
    padding: 10px 12px;
    font-size: 12px;
  }

  .price-tab-pricelist-table tbody td.spot-title {
    padding: 10px 12px;
  }

  .price-tab-pricelist-table tbody td.spot-title::after {
    background: #c8a7a860;
  }

  .price-tab-pricelist-table tbody td.campaignーprice {
    padding: 10px 12px;
  }
  
  .price-tab-pricelist-table tbody td.spot-title .price {
    margin-left: auto;
    font-size: 10px;
  }
}

/* トップページ お知らせセクション */
.top-section-news {
  padding: 104px 0;
  /* background: url("/wp-content/themes/eclatclinic/img/top-section6-bg.png") center / cover no-repeat; */
  text-align: center;
  width: 100%;
}

@media (min-width: 0px) and (max-width: 480px) {
  .top-section-news {
    padding: 80px 0;
  }
}

.top-news-list {
  max-width: 1600px;
  margin: 0 auto;
  padding: 64px 16% 0;
}

@media (min-width: 0px) and (max-width: 480px) {
  .top-news-list {
    padding: 40px 8% 0;
  }
}

.top-news-container {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 32px;
}

.top-news-item {
  border-bottom: 1px solid #C8A7A8;
  padding: 20px 0;
  display: flex;
  align-items: flex-start;
  gap: 24px;
  text-align: left;
}

.top-news-item:last-child {
  border-bottom: none;
}

.top-news-item-image {
  flex-shrink: 0;
  width: 200px;
}

.top-news-item-image img {
  width: 100%;
  height: auto;
  display: block;
}

.top-news-item-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.top-news-item-date {
  color: #A3555E;
  font-size: 14px;
  font-weight: normal;
}

.top-news-item-title {
  font-size: 14px;
  font-weight: normal;
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
}

.top-news-item-title a {
  color: #5B2424;
  text-decoration: none;
}

.top-news-item-title a:hover {
  text-decoration: underline;
}

.top-news-link {
  text-align: center;
  margin-top: 32px;
}

.top-news-link a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #654E4E;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #654E4E;
  display: inline-block;
}

.top-news-link a:hover {
  background-color: #654e4e00;
  color: #654E4E;
  transition: .5s;
}

@media (min-width: 0px) and (max-width: 480px) {
  .top-news-item {
    flex-direction: column;
    gap: 16px;
    padding: 15px 0;
  }

  .top-news-item-image {
    width: 100%;
  }

  .top-news-link a {
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
  }
}

/* トップページ 症例セクション */
.top-section-case {
  padding: 104px 0;
  background-color: #FFFDFB;
  text-align: center;
  width: 100%;
}

@media (min-width: 0px) and (max-width: 480px) {
  .top-section-case {
    padding: 80px 0;
  }
}

.top-case-list {
  max-width: 1600px;
  margin: 0 auto;
  padding: 64px 16% 0;
}

@media (min-width: 0px) and (max-width: 480px) {
  .top-case-list {
    padding: 40px 8% 0;
  }
}

.top-case-list-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
  margin-bottom: 32px;
}

@media only screen and (max-width: 768px) {
  .top-case-list-container {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}

.top-case-item {
  max-width: 100%;
  margin: 0 auto;
}

.top-case-item-content {
  max-width: 100%;
  box-sizing: border-box;
}

.top-case-item-images {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
  max-width: 100%;
  justify-content: center;
}

.top-case-item-image {
  width: auto;
  max-width: 180px;
  flex: 0 1 180px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.top-case-item-image img {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
}

.top-case-item-image-label {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  margin-top: 8px;
}

.top-case-item-image-label-before {
  color: #5B2424;
}

.top-case-item-image-label-after {
  color: #A3555E;
}

.top-case-item-details {
  margin-top: 20px;
  text-align: left;
}

.top-case-item-detail {
  margin-bottom: 0px;
}

.top-case-item-detail-label {
  color: #5B2424;
  font-size: 12px;
  font-weight: bold;
  margin-right: 8px;
}

.top-case-item-detail-value {
  color: #5B2424;
  font-size: 12px;
  font-weight: normal;
}

.top-case-item-detail-risk .top-case-item-detail-label {
  display: block;
  margin-right: 0;
  margin-bottom: 4px;
}

.top-case-item-detail-risk .top-case-item-detail-value {
  display: block;
}

.top-case-link {
  text-align: center;
  margin-top: 32px;
}

.top-case-link a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff;
  letter-spacing: 2px;
  background-color: #654E4E;
  border-radius: 30px;
  padding: 12px 24px;
  text-decoration: none;
  border: solid 1px #654E4E;
  display: inline-block;
}

.top-case-link a:hover {
  background-color: #654e4e00;
  color: #654E4E;
  transition: .5s;
}

@media (min-width: 0px) and (max-width: 480px) {
  .top-case-item-images {
    gap: 10px;
    max-width: 100%;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
  }

  .top-case-item-image {
    width: auto;
    flex: 1 1 calc(50% - 5px);
    min-width: 0;
    box-sizing: border-box;
  }

  .top-case-item-image img {
    width: 100%;
    max-width: 100%;
    height: auto;
    aspect-ratio: 1;
    object-fit: cover;
    display: block;
  }

  .top-case-link a {
    display: block;
    width: 92% !important;
    box-sizing: border-box;
    text-align: center;
    margin: 0 4%;
  }
}


.price-tab-pricelist-table tbody td.regular-price {
  width: 20%;
  white-space: nowrap;
  text-align: right;
  padding: 10px 24px 10px 0;
  color: #A68F8F;
  font-size:12px;
}

@media (min-width: 0px) and (max-width: 480px) {
  .price-tab-pricelist-table tbody td.regular-price {
    font-size:10px;
  }
    .price-tab-pricelist-table thead th.regular-price,
    .price-tab-pricelist-table tbody td.regular-price {
    font-size:10px;
  }
    .price-tab-pricelist-table tbody td.regular-price{
            padding: 10px 12px;
    }
}

/* single-trouble.php用のmenulist-section3-menu-contentスタイル */
.trouble-single-treatments .menulist-section3-menu-content a{
  display: flex;
  align-items: center;
  text-decoration: none;
}

.trouble-single-treatments .menulist-section3-menu-content a:hover{
  opacity: .5;
  transition: .5s;
}

.trouble-single-treatments .menulist-section3-menu-content li{
  list-style: none;
  margin-bottom: 24px;
}

.trouble-single-treatments .menulist-section3-menu-content li:nth-child(1){
  width: 40%;
  margin-right: 16px;
}

.trouble-single-treatments .menulist-section3-menu-content li:nth-child(2){
  width: 50%;
}

.trouble-single-treatments .menulist-section3-menu-content li:nth-child(3){
  width: 6%;
  text-align: right;
  font-size: 28px;
  font-family: "Noto Sans JP", sans-serif;
  color: #D18D95;
  font-weight: 200;
}

.trouble-single-treatments .menulist-section3-menu-content li img{
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.trouble-single-treatments .menulist-section3-menu-content li h2{
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  color: #D18D95;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 8px;
}

.trouble-single-treatments .menulist-section3-menu-content li p{
  font-size: 13px;
  line-height: 1.6em;
}

/* スマートフォン */
@media (min-width: 0px) and (max-width: 480px) {
  .trouble-single-treatments .menulist-section3-menu-content li:nth-child(1){
    width: 30%;
    margin-right: 16px;
  }

  .trouble-single-treatments .menulist-section3-menu-content li:nth-child(2){
    width: 65%;
  }

  .trouble-single-treatments .menulist-section3-menu-content li h2{
    font-size: 14px;
    font-family: "Noto Sans JP", sans-serif;
    color: #D18D95;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 4px;
  }

  .trouble-single-treatments .menulist-section3-menu-content li p{
    font-size: 13px;
    line-height: 1.6em;
  }
}