@charset "utf-8";

/* CSS Document */
/*----------------------------------------


article


----------------------------------------*/
article {
  padding-top: 0 !important;
  overflow-x: hidden;
}

section section {
  padding: 40px 0;
}

.sme-font-size {
  vertical-align: baseline;
}

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


title


----------------------------------------*/
.fv_title_area {
  position: relative;
  display: flex;
  align-items: center;
  height: 20vh;
  min-height: 350px;
  transition: 0.3s;
}

@media screen and (max-width:1550px) {
  .fv_title_area {
    background-size: cover !important;
  }
}

.fv_title_ph_area {
  height: auto;
  min-height: auto;
  margin-top: 30px;
  width: 100%;
  left: 0;
}

.fv_title_area .inner {
  position: relative;
  max-width: 1350px;
  width: 90%;
}

.fv_title_ph_area .inner {
  position: relative;
  max-width: 1050px;
  width: 100%;
}

.fv_title_area .title {
  font-size: 3.2rem;
  margin-top: 30px;
  font-weight: normal;
}

.fv_title_area .title span {
  display: inline-block;
  font-size: 1.8rem;
  vertical-align: baseline;
}

.fv_title_area .title span.en,
.fv_title_area .title.en_serif {
  font-size: min(7.0rem, 7vw);
}

.fv_title_area .title.en_serif span:not(.en) {
  display: block;
  font-size: min(1.6rem, 1.6vw);
  letter-spacing: 0.2rem;
}

.sub_title {
  font-size: clamp(2.4rem, 2.4vw, 3.2rem);
  margin-bottom: 50px;
  text-align: center;
  color: #b29a59 !important;
  font-weight: normal;
}

.sub_title_in {
  display: inline-block;
}

section .title_area h2 {
  font-size: 6.0rem;
  line-height: 1.2;
  margin-bottom: 50px;
  text-align: center;
}

section .title_area h2 span.serif {
  display: block;
  font-size: 1.8rem;
  letter-spacing: 0.08rem;
}

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


search


----------------------------------------*/
.search .inner {
  padding: 50px 0 100px;
}

.search .inner h3 {
  text-align: center;
  font-size: 2.4rem;
  padding-bottom: 50px;
}

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


trouble


----------------------------------------*/
.trouble_area {
  padding-bottom: 0;
}

.trouble_contents {
  padding: 80px 0;
}

.trouble_contents p+p {
  margin-top: 1.5em;
}

/*----------------------------------------
trouble_about_contents
----------------------------------------*/
.trouble_about_contents .trouble_details_area {
  position: relative;
  margin-bottom: 50px;
}

.trouble_about_contents .trouble_details_area::before {
  position: absolute;
  content: "";
  background: #d7ccaf;
  left: 5%;
  bottom: -50px;
  width: 65%;
  height: 100%;
}

.trouble_about_contents .trouble_details_area:nth-child(odd):before {
  left: 30%;
}

.trouble_about_contents .trouble_details_area .inner {
  display: flex;
  justify-content: center;
  width: 80%;
}

.trouble_about_contents .trouble_details_area .ph {
  position: relative;
  width: 400px;
  z-index: 2;
}

.trouble_about_contents .trouble_details_area:nth-child(odd) .ph {
  top: 150px;
}

.trouble_about_contents .trouble_details_area .txt_area {
  position: relative;
  top: 50px;
  left: 0;
  width: 60%;
  padding: 80px 80px 80px 0;
  max-width: 700px;
  box-sizing: border-box;
  z-index: 3;
  font-size: 1.8rem;
  font-size: clamp(1.6rem, 1.6vw, 1.8rem);
}

.trouble_about_contents .trouble_details_area:nth-child(odd) .txt_area {
  padding: 80px 0 80px 80px;
}

.trouble_about_contents .trouble_details_area .txt_area h3 {
  font-size: 2.6rem;
  font-size: clamp(2.2rem, 2.2vw, 2.6rem);
  margin-bottom: 20px;
}

/*----------------------------------------
trouble_kinds_contents/trouble_treatment_contents
----------------------------------------*/
.trouble_area .trouble_kinds_contents ul li {
  margin: 0 10px 20px;
  transition: 0.2s;
  display: flex;
  justify-content: space-between;
  border: 1px solid #d6c3af;
  background: #fff;
  box-sizing: border-box;
  padding: 30px;
}

.trouble_area .trouble_treatment_contents ul li {
  margin: 0 10px 20px;
  transition: 0.2s;
  display: flex;
  justify-content: space-between;
  background: #fff;
  box-sizing: border-box;
  padding: 30px;
}

.trouble_area .trouble_kinds_contents ul li .ph,
.trouble_area .trouble_treatment_contents ul li .ph {
  width: 40%;
}

.trouble_area .trouble_visia_contents .ph img,
.trouble_area .trouble_kinds_contents ul li .ph img,
.trouble_area .trouble_treatment_contents ul li .ph img {
  object-fit: cover;
  height: 100%;
}

.trouble_area .trouble_visia_contents .txt,
.trouble_area .trouble_kinds_contents ul li .txt,
.trouble_area .trouble_treatment_contents ul li .txt {
  width: 100%;
  box-sizing: border-box;
  padding-right: 30px;
}

.trouble_area .trouble_visia_contents .txt h3,
.trouble_area .trouble_kinds_contents ul li .txt h3,
.trouble_area .trouble_treatment_contents ul li .txt h3 {
  font-size: 2.2rem;
  font-size: clamp(2.0rem, 2.0vw, 2.2rem);
  margin-bottom: 20px;
}

.trouble_area .trouble_treatment_contents ul li .txt h3 {
  border-bottom: 1px solid #d6c3af;
  padding-bottom: 10px;
}

.trouble_area .trouble_kinds_contents ul li .txt h4 {
  position: relative;
  font-size: 1.7rem;
  font-size: clamp(1.5rem, 1.5vw, 1.7rem);
  margin: 25px 0 20px;
}

.trouble_area .trouble_kinds_contents ul li .txt h4::before {
  position: absolute;
  content: "";
  border-bottom: 1px solid #d6c3af;
  left: -30px;
  bottom: -10px;
  width: 100%;
  height: 0;
}

.trouble_area .trouble_kinds_contents ul li .txt p {
  /*font-size: 1.4rem;
	font-size: clamp(1.3rem, 1.3vw , 1.4rem);*/
}

.trouble_area .trouble_kinds_contents ul li .txt .tag_area {
  padding: 8px;
  font-size: 1.4rem;
  font-size: clamp(1.2rem, 1.2vw, 1.4rem);
  margin-top: 10px;
}

.trouble_area .trouble_kinds_contents ul li .txt .tag_area a,
.trouble_area .trouble_kinds_contents ul li .txt .tag_area span {
  position: relative;
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 10px;
  padding: 8px 20px;
  background: #f8f6f3;
  border-radius: 50px;
  color: #bfac7d
}

.trouble_area .trouble_treatment_contents ul li .txt .btn {
  margin: 30px auto 0;
}

.trouble_area .trouble_treatment_contents .trouble_treatment_box {
  width: 180px;
  padding: 10px 15px;
  margin-top: 20px;
  font-size: 1.3rem;
  font-size: clamp(1.2rem, 1.2vw, 1.3rem);
}

.trouble_area .trouble_treatment_contents .trouble_treatment_box h4 {
  font-size: 1.5rem;
  font-size: clamp(1.4rem, 1.4vw, 1.5rem);
  margin-bottom: 5px;
}

/*----------------------------------------
trouble_aftercare_contents
----------------------------------------*/
.trouble_area .trouble_aftercare_contents .inner {
  width: 900px;
}

.trouble_area .trouble_aftercare_contents .trouble_aftercare_list {
  background: #fff;
  padding: 30px;
  margin-bottom: 20px;
}

.trouble_area .trouble_aftercare_contents .trouble_aftercare_list h3 {
  font-size: 2.2rem;
  font-size: clamp(2.0rem, 2.0vw, 2.2rem);
  margin-bottom: 20px;
}

/*----------------------------------------
trouble_visia_contents
----------------------------------------*/
.trouble_area .trouble_visia_contents .inner {
  width: 900px;
}

.trouble_area .trouble_visia_contents h2 {
  font-size: 4.0rem;
  font-size: clamp(3.6rem, 3.6vw, 4.0rem);
}

.trouble_area .trouble_visia_contents h2 span.serif {
  font-size: 3.0rem;
  font-size: clamp(2.6rem, 2.6vw, 3.0rem);
  margin-top: 10px;
}

.trouble_area .trouble_visia_contents .trouble_visia_list {
  margin: 0 0 20px;
  transition: 0.2s;
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
}

.trouble_area .trouble_visia_contents .ph {
  width: 50%;
}

/*----------------------------------------
trouble_ability_contents
----------------------------------------*/
.trouble_area .trouble_ability_contents .inner {
  max-width: 1300px;
  width: 90%;
}

.trouble_area .trouble_ability_contents ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.trouble_area .trouble_ability_contents ul li {
  max-width: 400px;
  width: calc(33.33333% - 20px);
  margin: 0 0 30px 30px;
  padding: 20px;
  box-sizing: border-box;
}

.trouble_area .trouble_ability_contents ul li:nth-child(3n+1) {
  margin-left: 0;
}

.trouble_area .trouble_ability_contents ul li h3 {
  position: relative;
  font-size: 2.2rem;
  font-size: clamp(2.0rem, 2.0vw, 2.2rem);
  margin-bottom: 20px;
}

.trouble_area .trouble_ability_contents ul li h3::before {
  position: absolute;
  content: "";
  border-bottom: 1px solid #d6c3af;
  left: -20px;
  bottom: -10px;
  width: 100%;
  height: 0;
}

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


case


----------------------------------------*/
.case_details_area .case_title_area {
  padding: 80px 0;
}

.case_details_area .case_title_area .date {
  font-size: 1.8rem;
}

.case_details_area .case_title_area .cate_area span {
  font-size: 1.4rem;
  background: #444;
  color: #fff;
  padding: 8px 20px;
}

.case_details_area .case_title_area .title {
  font-weight: normal;
  font-size: 2.4rem;
  margin-top: 20px;
}

.case_details_area .case_details_contents {
  margin: 0 auto 0;
  padding: 80px 0 40px;
}

.case_details_area .case_details_contents ul {
  max-width: 500px;
  width: 80%;
  margin: 0 auto 40px;
}

.case_details_area .case_details_contents ul li {
  width: 100%;
  padding: 0;
  margin-bottom: 40px;
}

.case_details_area .case_details_contents ul li .caption {
  font-size: 1.4rem;
  margin-bottom: 10px;
}

.case_details_area .case_details_contents .case_details_txt_contents02 {
  padding-bottom: 80px;
}

.case_details_area .case_details_contents .case_details_txt_contents01,
.case_details_area .case_details_contents .case_details_txt_contents02,
.case_details_area .case_details_contents .case_details_txt_contents01 a,
.case_details_area .case_details_contents .case_details_txt_contents02 a {
  color: #fff;
}

.case_details_area .case_details_contents .case_details_txt_contents01 a,
.case_details_area .case_details_contents .case_details_txt_contents02 a {
  text-decoration: underline;
}

.case_details_area .case_details_contents dl {
  display: flex;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid #fff;
}

.case_details_area .case_details_contents dl {
  display: flex;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid #fff;
}

.case_details_area .case_details_contents dl dt {
  padding-right: 25px;
  font-size: 1.8rem;
  font-weight: bold;
}

.case_details_area .case_details_contents .case_details_txt_contents01 dl {
  width: 48.5%;
}

.case_details_area .case_details_contents .case_details_txt_contents01 dl dt {
  width: 100px;
}

.case_details_area .case_details_contents .case_details_txt_contents02 dl dt {
  width: 150px;
}

.case_details_area .case_details_contents .case_details_txt_contents01 dl dd {
  width: calc(100% - 100px);
}

.case_details_area .case_details_contents .case_details_txt_contents02 dl dd {
  width: calc(100% - 150px);
}

.case_details_area .case_details_contents .case_details_doctor_contents {
  padding: 30px;
  margin: 30px 0;
  background: #fff;
  color: #000;
}

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


event


----------------------------------------*/
.event .event_area:not(.event_list_area) {
  padding-top: 0;
}

.event .event_area .event_details_title {
  padding: 50px 0;
}

.event_area h1 {
  font-size: 2.4rem;
}

.event_area .details figure {
  max-width: 750px;
  margin: 70px auto 100px;
  text-align: center;
}
@media screen and (max-width: 750px){
	.event_area .details figure {
		width: 100%;
	}
}
.event_area .details p+p {
  margin-top: 1.5em;
}

.event_area h2 {
  position: relative;
  margin-bottom: 40px;
  font-size: 2.0rem;
  padding-bottom: 10px;
  border-bottom: 1px solid #000;
  margin-bottom: 20px;
  padding-bottom: 10px;
}

.event_area h2::before {
  position: absolute;
  content: "";
  border-bottom: 1px solid #b29a59;
  width: 200px;
  height: 0;
  left: 0;
  bottom: -1px;
  z-index: 1;
}

.wp-block-image img {
  height: auto;
}

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


doctor_area


----------------------------------------*/
.doctor_area {
  padding-bottom: 0;
}

.doctor_area .doctor_list_area {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
}

.doctor_area .doctor_list_area .ph {
  position: relative;
  order: 2;
  width: 50%;
}

.doctor_area .doctor_list_area .ph img {
  display: block;
  max-width: 465px;
  margin: 0 auto;
}

.doctor_area .doctor_list_area .txt_area {
  order: 1;
  margin-top: 20px;
  width: 50% !important;
}
	#recruiting.doctor_area .doctor_list_area .txt_area {
		width: 100% !important;
	}
.doctor_area .doctor_list_area .txt_area .clinic_name {
  font-size: 2.0rem;
  margin-bottom: 30px;
}

.doctor_area .doctor_list_area .txt_area h2 {
  font-size: clamp(3.0rem, 3.0vw, 4.0rem);
  margin-bottom: 45px;
  line-height: 1.2;
  letter-spacing: 0.5rem;
}

.doctor_area .doctor_list_area .txt_area .sns_area {
  display: flex;
  align-items: center;
  justify-content: center;
}

.doctor_area .doctor_list_area .txt_area .sns_area li {
  width: 36px;
  margin: 0 10px;
}

.doctor_area .doctor_list_area .txt_area .btn {
  max-width: 220px;
  width: 80%;
}

.doctor_area .doctor_list_area .txt_area .btn a {
  height: auto;
}

.doctor_area .doctor_message_area {
  padding: min(8vw, 80px);
}

.doctor_area .doctor_message_area h3 {
  font-size: clamp(6.0rem, 6.0vw, 7.0rem);
  line-height: 1.2;
}

.doctor_area .doctor_message_area p {
  margin: 20px 0 30px;
  line-height: 2.0;
  font-size: 1.8rem;
}

.doctor_area .about_list_area .inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto;
  box-sizing: border-box;
}

.doctor_area .about_list_area dl {
  width: 48%;
  color: #fff;
  margin-top: 50px;
}

.doctor_area .about_list_area .history {
  width: 100%;
}

.doctor_area .about_list_area dt {
  margin-bottom: 15px;
  font-size: clamp(2.0rem, 2.0vw, 3.0rem);
}

.doctor_area .about_list_area .profile dd {
  padding: 0;
  font-size: clamp(1.3rem, 1.3vw, 1.4rem);
  line-height: 2.0;
}

.doctor_area .about_list_area .history dd {
  position: relative;
  padding: 0 0 15px 50px;
  margin-bottom: 15px;
  border-bottom: 1px solid #444;
}
#recruiting.doctor_area .about_list_area .history dd {
  padding: 0 0 15px 90px;
}


.doctor_area .about_list_area dd span {
  position: absolute;
  left: 0;
  top: 0;
}

.doctor_area .about_list_area dd p {
  font-size: clamp(1.3rem, 1.3vw, 1.4rem);
}

/*----------------------------------------
lonav
----------------------------------------*/
.doctor .menu_btn_area_ptn2 {
  padding: 0;
  z-index: 3;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin-bottom:  min(5vw,50px);
  }
.doctor .menu_btn_area_ptn2 .inner {
}
.doctor .smenu_btn_contents {
  padding: min(4vw,40px) 0;
}
.doctor .menu_btn_area_ptn2 h2 {
  width: 150px;
  font-size: 3.0rem;
}
.doctor .smenu_btn_list {
  width: calc(100% - 150px);
  margin: 0;
  display: flex;
  flex-wrap: wrap;
}
.doctor .smenu_btn_list .btn {
  margin-left: 10px;
  margin-bottom: 10px;
  width: 32%;
}
.doctor .btn_gray a {
  position: relative;
  color: #fff;
  background: #666666;
  border: none;
}
.doctor .btn_d a::before {
  position: absolute;
  background: url(../../images/ico_arrow_f_w.svg) no-repeat left top / 100%;
  content: "";
  width: 4px;
  height: 24px;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s;
  margin-top: 0;
}
.doctor .btn_d a:hover:before {
  margin-top: 10px;
}
/*----------------------------------------


schedule


----------------------------------------*/
.schedule .schedule_area .inner {
  position: relative;
  padding-bottom: min(15vw, 150px);
}

.schedule .ph {
  position: relative;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding-top: min(6vw, 100px);
}

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


clinic


----------------------------------------*/
.about .inner {
  position: relative;
}

.about .about_contents .ph {
  position: relative;
  width: 60%;
  left: 40%;
  max-width: 800px;
  order: 2;
}

.about .about_contents .ph.symbol_hexagon::before {
  width: 400px;
  height: 400px;
  right: -15%;
  bottom: -20%;
  z-index: -1;
  ;
}

.about .about_contents .txt_area {
  position: absolute;
  width: 45%;
  order: 1;
  left: 10%;
}

.about .about_contents .txt_area h3 {
  position: relative;
  font-size: clamp(3.0rem, 3.0vw, 4.0rem);
  letter-spacing: 0.4rem;
  margin-bottom: 30px;
  white-space: nowrap;
  transition: 0.3s;
  z-index: 2;
}

.about .about_contents .txt_area p {
  position: relative;
  line-height: 2.2;
  width: 70%;
  max-width: 400px;
}

.about .clinic_concept_area {
  position: relative;
}

.about .clinic_concept_area .clinic_concept .cach {
  font-size: clamp(1.8rem, 1.8vw, 2.4rem);
  margin-bottom: 50px;
}

.about .clinic_concept_area .clinic_concept h3 {
  font-size: clamp(5.0rem, 5.0vw, 7.0rem);
  margin-bottom: 15px;
}

.about .clinic_concept_area .clinic_concept h4 {
  font-size: clamp(3.0rem, 3.0vw, 4.0rem);
  /* background: url("../../images/ico_hexagon.svg") no-repeat left center / 40px 40px;
  padding-left: 70px; */
  text-align: center;
  border-bottom: 1px solid #7d6523;
  margin-bottom: 20px;
}

.about .clinic_concept_area .clinic_concept li {
  width: 32%;
  border: 1px solid #7d6523;
  padding: 20px;
  box-sizing: border-box;
}

.about .clinic_concept_area .clinic_concept p {
  line-height: 2.0;
}

.clinic_room_area h3 {
  font-size: clamp(5.0rem, 5.0vw, 7.0rem);
  margin-bottom: 30px;
}

.clinic_room_area h4 {
  font-size: clamp(1.4rem, 1.4vw, 1.6rem);
  margin-top: 10px;
  text-align: center;
}

.clinic_room_area li {
  width: 48%;
}

.clinic_room_area li:nth-child(even) {
  margin-top: min(10vw, 100px);
}


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


access


----------------------------------------*/
.access .access_address_area {
  margin-bottom: 60px;
}

.first .en_title,
.access .access_address_area .en_title {
  font-size: clamp(6.0rem, 6.0vw, 7.0rem);
  line-height: 1.2;
}

.first h2,
.access .access_address_area h2 {
  font-size: clamp(1.3rem, 1.3vw, 1.4rem);
  margin-bottom: 40px;
}

.access .access_address_area .access_address_contents {
  margin-bottom: min(10vw, 100px);
}

.access .access_address_area .access_address_contents .ph {
  width: 40%;
}

.access .access_address_area .access_address_contents .txt_area {
  width: 55%;
}

.access .access_address_area h3 {
  font-size: 2.0rem;
  font-weight: normal;
}

.access .access_address_area .access_address_contents .txt_area p {
  margin-bottom: 30px;
}

.access iframe {
  width: 100%;
  height: 350px;
  margin: 0 auto min(10vw, 130px);
}

#main {
  background: #000;
}

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


system


----------------------------------------*/
.system .en_title {
  font-size: clamp(6.0rem, 6.0vw, 7.0rem);
  line-height: 1.2;
  margin-bottom: 40px;
}

.system #transportation .en_title {
  font-size: clamp(5.0rem, 5.0vw, 6.0rem);
}

.system h2 {
  font-size: clamp(1.4rem, 1.4vw, 1.6rem);
}

.system_area {
  line-height: 2.0;
  padding-bottom: 150px;
}

.system_area .details_area .ph {
  order: 2;
  width: 40%;
}

.system_area .details_area .txt_area {
  order: 1;
  width: 55%;
}

.system_area .system_box_area {
  border: 1px solid #b29a59;
  padding: min(3vw, 40px);
  margin-top: min(5vw, 60px);
}

.system_area .system_box_area h3 {
  font-size: 2.6rem;
  margin-bottom: min(2vw, 20px);
}

.system_area .system_box_area .guarantee_list li {
  width: 23%;
  background: #b29a59;
  color: #fff;
  padding: min(1vw, 10px);
  box-sizing: border-box;
}

.system_area .system_box_area .transportation_list li {
  color: #b29a59;
  font-size: 1.8rem;
  padding: 0;
}

.system_area .system_box_area h4 {
  padding: min(1.5vw, 15px);
  margin-bottom: 30px;
  font-size: 2.0rem;
  letter-spacing: 0.3rem;
  font-weight: normal;
}

.system_area .guarantee_area h4 {
  background: #f4f4f4;
}

.system_area .transportation_area h4 {
  background: #000;
  color: #fff;
}

.system_area .system_box_contents {
  margin-top: min(4vw, 60px);

}

.system_area .system_box_contents .system_box_list_contents {
  border-top: 1px solid;
  padding: min(2vw, 30px) 0 0;
  margin-top: min(3vw, 40px);
}

.system_area .system_box_contents .system_box_list_contents:nth-of-type(1) {
  border-top: none;
  padding: 0;
  margin-top: 0;
}

.system_area .transportation_area .system_box_list_contents:nth-of-type(1) {
  margin-top: min(3vw, 40px);
}

.system_area .guarantee_area .system_box_list_contents {
  border-top-color: #f4f4f4;
}

.system_area .transportation_area .system_box_list_contents {
  border-top-color: #fff;
}

.system_area .system_box_contents h5 {
  font-size: 1.8rem;
  letter-spacing: 0.3rem;
  font-weight: normal;
  margin-bottom: min(1.0vw, 10px);
}

.system_area .box_area {
  border: 1px solid #fff;
  padding: min(2vw, 30px);
  text-align: center;
  margin-top: min(2vw, 20px);
}

.system_area .box_area span {
  display: inline-block;
  font-size: 2.2rem;
  vertical-align: baseline;
  margin: 0 5px;
}

.system_area .atention_area {
  background: #222;
  padding: 25px;
  margin: 50px auto 0;
  font-size: 1.4rem;
  color: #fff;
}

.system_area .atention_area h4 {
  background: transparent;
  padding: 0;
  margin: 0 0 10px;
  font-size: 1.8rem;
}

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


first_area


----------------------------------------*/
.first_flow_area,
.first_minor_area {
  line-height: 2.0;
  padding-bottom: 150px;
}

.first_flow_area {
  background: #141414;
}

.first .step_no {
  display: inline-block;
  font-size: 3.0rem;
  line-height: 1.0;
  vertical-align: baseline;
  margin-right: 15px;
}

.first .first_flow_contents {
  margin-top: 70px;

}

.first .first_flow_contents h3 {
  background: #000;
  padding: 15px 15px;
  margin-bottom: 30px;
  font-size: 2.0rem;
  letter-spacing: 0.3rem;
}

.first .first_flow_contents .firs_reserve_area {
  background: none !important;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 0 0;
  font-size: 1.1rem;
  margin-top: min(2vw, 20px);
}

.first .first_flow_contents .firs_reserve_area li a {
  display: block;
  padding: 8px 40px 10px;
  height: 70px;
  box-sizing: border-box;
}

.first .first_flow_contents .firs_reserve_area li a span {
  display: flex;
  justify-content: center;
  align-items: center;
}

.first .first_flow_contents .firs_reserve_area img {
  width: 24px;
  display: inline-block;
  margin-right: 15px;
}

.first .first_flow_contents .firs_reserve_area span {
  font-size: 2.4rem;
}

.first .first_flow_contents .firs_reserve_area .tel_area {
  margin-right: 20px;
}

.first .first_flow_contents .firs_reserve_area .tel_area p {
  margin-bottom: 0;
}

.first .first_flow_contents .firs_reserve_area .tel_area span {
  font-size: 3.0rem;
  line-height: 1.0;
}

.first .first_flow_contents .firs_reserve_area .reserve_btn_area a {
  display: flex;
}

.first .first_flow_contents .txt_area {
  display: flex;
  justify-content: space-between;
}

.first .first_flow_contents .txt_area figure {
  width: 400px;
  margin-left: 40px;
  margin-top: 0;
  order: 2;
}

.first .first_flow_contents .txt_area p {
  width: calc(100% - 340px);
  order: 1;
}

.first .first_minor_area .btn {
  margin: 50px auto 0;
}

.first .first_minor_area .btn a {
  font-size: 1.8rem;
}

.first .atention_area {
  background: #f4f4f4;
  padding: 25px;
  max-width: 800px;
  margin: 50px auto 0;
  font-size: 1.4rem;
}

.first .atention_area h4 {
  font-size: 1.6rem;
  margin-bottom: 20px;
}

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


information


----------------------------------------*/
.information .information_area {
  max-width: 900px;
  min-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.information .information_area .list {
  border-bottom: 1px solid #f0f0f0;
  padding: 25px 0;
}

.information .information_area .list a {
  color: #000;
  transition: 0.3s;
}

.information .information_area .list a:hover * {
  color: #c0a06e !important;
}

.information .information_area .list h2 {
  font-size: 2.0rem;
}

.information .information_area .date {
  text-align: right;
  margin-bottom: 10px;
}

.information .information_area h1 {
  font-size: 2.4rem;
  margin-bottom: 30px;
}

.information .information_area .details_area {
  max-width: 900px;
  margin: 50px auto;
}

.information .information_area .details_area img {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

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


menu


----------------------------------------*/
.menu .fv_title_area {
  background-position: right top;
  background-repeat: no-repeat;
  color: #fff;
}

.menu section {
  background: #000;
  color: #fff;
}

.menu section:nth-of-type(even) {
  background: #141414;
  box-sizing: border-box;
}

.menu section p {
  line-height: 2.0;
}

/*----------------------------------------
payment
----------------------------------------*/
.menu .payment_area {
  border: 1px solid #b29a59;
  padding: 40px;
  margin: 40px auto;
  max-width: 1000px;
  width: 90%;
  box-sizing: border-box;
}

.menu .payment_area h2 {
  font-size: clamp(2.0rem, 2.4vw, 2.4rem);
  font-weight: normal;
  margin-bottom: 20px;
}

.menu .payment_area .kinds_list li {
  border: 1px solid #b29a59;
  padding: 10px;
  text-align: center;
  width: 32%;
  box-sizing: border-box;
}

.menu .payment_area .payment_contents {
  margin-top: 40px;
}

.menu .payment_area .payment_contents h3 {
  background: #f4f4f4;
  padding: 12px 15px;
  font-size: clamp(1.6rem, 1.6vw, 1.8rem);
  font-weight: normal;
  margin-bottom: 20px;
}
.menu .payment_area .payment_contents h4 {
  font-size: clamp(1.5rem, 1.5vw, 1.7rem);
  font-weight: normal;
  margin-top: 20px;
}
.menu .payment_area .payment_contents p+p {
  margin-top: 1em;
}

.menu .payment_area .payment_contents .ph {
  max-width: 500px;
  margin-top: 20px;
}

/*----------------------------------------
lo_nav_fixed_area
----------------------------------------*/
.lo_nav_fixed_area {
  background: #000;
  padding: 40px 0;
  border-bottom: 1px solid #322e26;
}

.lo_nav_fixed_area .nav_title {
  text-align: center;
  font-size: 8.0rem;
  color: #b29a59;
}

.lo_nav_fixed_area .nav_title.nav_jp_title {
  font-size: 3.2rem;
}

.lo_nav_fixed_area .nav_title a {
  color: #b29a59;
}

.lo_nav_fixed_area .lo_nav_nav_list {
  width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  box-sizing: border-box;
}

.lo_nav_fixed_area .js_accordion_content .lo_nav_nav_list div:not(.lo_nav_case_list) {
  margin: 5px;
}

.lo_nav_fixed_area .js_accordion_content .lo_nav_nav_list div:not(.lo_nav_case_list) a {
  position: relative;
  display: block;
  padding: 6px 30px;
  color: #fff;
  text-align: center;
  font-size: 1.8rem;
  border: 1px solid #666;
  background: transparent;
}

.lo_nav_fixed_area .js_accordion_content .lo_nav_nav_list div:not(.lo_nav_case_list) a:hover {
  background: #b29a59;
}

.js_accordion_content {
  display: block;
}

/*----------------------------------------
lo_nav_fixed_area case
----------------------------------------*/
.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list {
  margin-top: 30px;
}

.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list h2 {
  width: 100%;
  color: #fff;
  font-size: 2.4rem;
  margin-bottom: 10px;
  font-weight: normal;
}

.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.other h2 {
  font-size: 2.0rem;
  margin-top: 10px;
}

.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction li {
  width: calc((100% - 20px) / 3);
  margin-right: 6.6666px;
  margin-top: 6.6666px;
}

.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction li a {
  padding: 6px 15px;
  box-sizing: border-box;
  position: relative;
  display: block;
  color: #fff;
  text-align: center;
  font-size: 1.8rem;
  border: 1px solid #666;
  background: transparent;
}

.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction li:first-child {
  width: 100%;
  margin-top: 0;
}

.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction figure {
  position: relative;
  width: 420px;
  height: 100%;
  overflow: hidden;
  height: auto;
}

.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction figure img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  top: 0;
  left: 0;
}

.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction ul {
  width: 550px;
}

.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.other ul li {
  width: calc((100% - 60px) / 3);
  margin-right: 27px;
  margin-top: 20px;
}

.lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.other ul li:nth-child(3n) {
  margin-right: 0;
}

/*----------------------------------------
menu
----------------------------------------*/
.menu_point_area .inner .menu_point_contents {
  display: flex;
  justify-content: space-between;
  width: 900px;
  margin: 0 auto 40px;
}

.menu_point_area .inner .menu_point_contents .ico_area {
  width: 200px;
}

.menu_point_area .inner .menu_point_contents .ico_area p {
  font-size: 4.0rem;
  line-height: 1.0;
  margin-bottom: 10px;
}

.menu_point_area .inner .menu_point_contents .ico_area p span {
  display: inline-block;
  vertical-align: baseline;
  font-size: 8.0rem;
  margin-left: 10px;
}

.menu_point_area .inner .menu_point_contents .txt_area {
  width: 660px;
}

.menu_point_area .inner .menu_point_contents h3 {
  font-size: 2.4rem;
  margin-bottom: 15px;
}

.menu_point_area .inner .menu_point_contents p {}

/*----------------------------------------
case_area
----------------------------------------*/
.menu .case_area {}

/*----------------------------------------
about
----------------------------------------*/
.menu_about_area .inner {
  margin-bottom: 50px;
}

.menu_about_area .col__area {
  position: relative;
  justify-content: center;
  width: 80%;
  margin: 0 auto;
}

.menu_about_area .col__area .ph_contents {
  position: relative;
  width: 100%;
}

.menu_about_area .col__area.symbol_hexagon::before {
  width: 500px;
  height: 500px;
  right: -30%;
  bottom: -100px;
}

.menu_about_area .col_2_area .ph_contents {
  width: 48%;
  text-align: left;
  margin-top: 40px;
  margin-left: 1%;
  margin-right: 1%;
}

.menu_about_area .col_2_area .ph_contents img {
  margin-left: 0;
  width: 100%;
}

.menu_about_area .col_2_area .txt {
  width: 100%;
}

.menu_about_area p {
  padding-bottom: 20px;
}

/*----------------------------------------
flow
----------------------------------------*/
.menu_flow_area h2+p {
  margin-bottom: 40px;
}

.menu_flow_area .menu_flow_contents {
  display: flex;
  position: relative;
  flex-wrap: wrap;
}

.menu_flow_area .menu_flow_contents .step_area {
  border: 1px solid #b29a59;
  padding: 25px 25px 20px;
  background: #fff;
  width: 31%;
  margin-right: 2.3%;
  color: #000;
  box-sizing: border-box;
  margin-bottom: 25px;
}

.menu_flow_area .menu_flow_contents .step_area:nth-child(3n) {
  margin-right: 0;
}

.menu_flow_area .step_area .step_no {
  font-size: 6.0rem;
  color: #b29a59;
  line-height: 1.0;
  width: 80px;
}

.menu_flow_area .step_area .txt {
  display: flex;
}

.menu .menu_flow_area .step_area h3 {
  font-size: 1.9rem;
  margin-bottom: 10px;
  line-height: 1.6;
}

.menu .menu_flow_area .step_area .ph {
  margin-top: 20px;
}

/*----------------------------------------
kanren
----------------------------------------*/
.menu_kanren_area .menu_kanren_contents_area {
  width: 900px;
  margin: 0 auto 50px;
}

.menu .menu_kanren_contents {
  margin-bottom: 30px;
}

.menu_kanren_area .menu_kanren_contents {
  display: flex;
  justify-content: flex-start;
}

.menu_kanren_area .menu_kanren_contents .ph {
  width: 250px;
  margin-right: 40px;
}

.menu_kanren_area .menu_kanren_contents .txt_area {
  width: calc(100% - 290px);
}

.menu .menu_kanren_area h3 {
  position: relative;
  font-size: 2.2rem;
  border-bottom: 1px solid #fff;
  margin-bottom: 20px;
  padding-bottom: 10px;
}

.menu .menu_kanren_area h3::before {
  position: absolute;
  content: "";
  border-bottom: 1px solid #b29a59;
  width: 200px;
  height: 0;
  left: 0;
  bottom: -1px;
}

.menu .menu_kanren_area .btn_area {
  margin-top: 40px;
}

/*----------------------------------------
movie
----------------------------------------*/
.menu_movie_area .inner {
  width: 800px;
  margin: 0 auto;
}

.movie_area .inner {
  width: 700px;
  margin: 0 auto 30px;
}

.menu_movie_area .inner .menu_movie_contents,
.movie_area .inner .menu_movie_contents {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom: 20px;
}

.menu_movie_area .inner .menu_movie_contents iframe,
.movie_area .inner .menu_movie_contents iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/*----------------------------------------
fature
----------------------------------------*/
.menu_fature_area .sub_title {
  font-size: 3.4rem;
}

.menu_fature_area h3 {
  position: relative;
  font-size: 2.4rem;
  border-bottom: 1px solid #fff;
  margin-bottom: 20px;
  padding-bottom: 10px;
}

.menu_fature_area h3::before {
  position: absolute;
  content: "";
  border-bottom: 1px solid #b29a59;
  width: 200px;
  height: 0;
  left: 0;
  bottom: -1px;
}

.menu_fature_area h4 {
  font-size: 1.9rem;
  margin-bottom: 20px;
}

.menu_fature_area .btn_flex_area {
  margin-top: 40px;
}

.menu_fature_area .col_2_area .col_2_contents {
  width: calc(100% - 500px);
}
.menu_fature_area .col__area + .col__area {
  padding: 40px 0 0;
}
.menu_fature_area .ph_contents p.caption {
  text-align: right;
}
.menu_fature_area .col__area + h3 {
  margin-top: 80px;
}
.menu_fature_area p + p {
  margin-top: 1.5em;
}
/*----------------------------------------
syorei
----------------------------------------*/
.menu_syorei_area {}

.menu_syorei_area h3 {
  font-size: 2.4rem;
  padding-bottom: 10px;
  border-bottom: 1px solid #51b7d6;
  margin-bottom: 30px;
}

.menu_syorei_area h4 {
  font-size: 2.0rem;
  padding-bottom: 10px;
}

.menu_syorei_area .ph_area {
  width: 400px;
  margin-right: 40px;
}

.menu_syorei_area .txt_area {
  width: calc(100% - 400px);
}

.menu_syorei_area .txt_area .txt {
  text-align: left;
}

.menu_syorei_area .txt_area .txt+.txt {
  margin-top: 30px;
}

.menu_syorei_area .menu_syorei_contents+.menu_syorei_contents {
  margin-top: 50px;
}

/*----------------------------------------
seizai
----------------------------------------*/
.menu_seizai_area .col__area {
  margin-top: 30px;
}

.menu_seizai_area .inner h3 {
  font-size: 1.7rem;
  min-height: 58px;
  margin-bottom: 5px;
  color: #fff;
  line-height: 1.5;
}

.menu_seizai_area .inner p {
  padding-top: 5px;
  line-height: 1.6;
  color: #fff;
}

/*----------------------------------------
option
----------------------------------------*/
.menu_option_area .menu_option_contents_area {
  width: 900px;
  margin: 0 auto;
}

.menu_option_area .menu_option_contents_area a {
  display: block;
  border: 2px solid #51b7d6;
  padding: 20px;
  box-sizing: border-box;
  background: #fff;
  margin-bottom: 20px;
}

.menu section:nth-of-type(even).menu_option_area .menu_option_contents_area a {
  border: 2px solid #fff;
}

.menu_option_area .menu_option_contents {
  display: flex;
  justify-content: space-between;
}

.menu_option_area .menu_option_contents .ph {
  width: 250px;
  margin-left: 40px;
}

.menu_option_area .menu_option_contents .txt_area {
  width: calc(100% - 290px);
}

.menu_option_area .menu_option_contents_area h3 {
  font-size: 2.0rem;
  margin-bottom: 20px;
}

/*----------------------------------------
osusume
----------------------------------------*/
.menu_osusume_area {
  position: relative;
  text-align: center;
}

.menu_osusume_area::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../../images/menu/osusume_bg.png) no-repeat right center / auto 210%;
}

.menu_osusume_area .inner {
  position: relative;
  width: 800px;
}

.menu_osusume_area .inner .menu_osusume_contents {
  display: inline-block;
  margin: 0 auto;
  text-align: left;
}

.menu_osusume_area .inner .menu_osusume_contents p {
  display: inline-block;
  min-width: 46%;
  position: relative;
  padding-bottom: 20px;
  font-size: 1.8rem;
  padding-top: 0 !important;
}

.menu_osusume_area .inner .menu_osusume_contents p.ico_kakko {}

.menu_osusume_area .inner .menu_osusume_contents p.ico_kakko::before,
.menu_osusume_area .inner .menu_osusume_contents p.ico_kakko::after {
  color: #b29a59;
  font-size: 2.4rem;
}

.menu_osusume_area .inner .menu_osusume_contents p.ico_kakko::before {
  content: "「";
}

.menu_osusume_area .inner .menu_osusume_contents p.ico_kakko::after {
  content: "」";
}

/*----------------------------------------
details
----------------------------------------*/

.menu_details_area {}

.menu_details_area .inner {
  width: 900px;
  margin: 0 auto;
}

.menu_details_area dt {
  position: relative;
  width: 200px;
  letter-spacing: 0.1rem;
}

.menu_details_area dt::before {
  position: absolute;
  content: "";
  border-right: 1px solid #666;
  right: 0;
  top: 5px;
  height: calc(100% - 10px);
}

.menu_details_area dd {
  width: calc(100% - 200px);
}

/*----------------------------------------
qa
----------------------------------------*/
.menu_qa_area {}

.menu_qa_area .inner {
  width: 900px;
  margin: 0 auto;
}

.menu_qa_area dt {
  position: relative;
  padding-left: 80px;
  padding-right: 50px;
}

.menu_qa_area dt .ico,
.menu_qa_area dd .ico {
  position: absolute;
  left: 20px;
  top: 35px;
  font-size: 6.0rem;
  color: #b29a59;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}

.menu .menu_qa_area dd {
  border-top: none !important;
}

.menu_qa_area dd .ico {
  color: #b89c80;
}

.menu section.menu_qa_area dd {
  display: none;
  padding: 20px;
  background: #222;
  margin: 0 20px 20px;
}

/* .menu section.menu_qa_area dd p {
  color: #b89c80;
} */

.menu_qa_area .js_accordion .js_accordion_openbar::before,
.menu_qa_area .js_accordion .js_accordion_openbar::after {
  right: 20px;
}

/*----------------------------------------
bnr
----------------------------------------*/
.menu .menu_bnr_area .menu_bnr_contents {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 100%;
}

.menu .menu_bnr_area .menu_bnr_contents a {
  display: block;
  width: 48.5%;
  margin-bottom: 30px;
}

.menu .menu_bnr_area .menu_bnr_contents a:nth-child(even) {
  margin-left: 3%;
}

/*----------------------------------------
menu_sns_area
----------------------------------------*/
.menu .menu_sns_area {}

.menu .menu_sns_area ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.menu .menu_sns_area ul li {
  margin: 10px;
}

.menu section.menu_sns_area a {
  color: #444;
}

/*----------------------------------------
price
----------------------------------------*/
.price .price_attention_area {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 90%;
  max-width: 1050px;
  margin: 50px auto;
  background: #f0f0f0;
  padding: 25px;
  box-sizing: border-box;
}

.price .price_attention_area .price_attention_contents {
  width: 48.5%;
}

.price .price_attention_area .price_attention_contents+.price_attention_contents {}

.price .price_attention_area .price_attention_contents h2 {
  font-size: 1.8rem;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #c0a06e;
}

.price .price_attention_area .price_attention_contents .aside {
  margin-top: 10px;
}

.price .menu_price_area h2 {
  text-align: center;
}

.price .menu_price_area .menu_list_inner {
  position: relative;
}

.price .menu_price_area .menu_list_inner:nth-child(odd) {}

.menu_list_title {
  margin: 0 0 0 0;
  padding-bottom: 10px;
  font-size: 2.6rem;
}

.menu_price_area h4 {
  padding: 20px 0 15px 0;
  font-size: 1.8rem;
}

.price_list_area .menu_price_area,
.menu_price_area .inner {
  width: 950px;
  margin: 0 auto;
  font-size: 1.6rem;
}

.price .menu_price_area .inner {
  padding: 0 0 10px;
}

.menu_price_area .inner+.inner {
  margin-top: 100px;
}

.menu_price_area .menu_price_contents {
  padding-bottom: 60px;
  line-height: 3.0rem;
}

.menu_price_area table {
/*  table-layout: fixed; */
  width: 100%;
  background: #fff;
  border-top: 1px solid #c0c0c0;
  border-right: 1px solid #c0c0c0;
  text-align: center;
  color: #000;
}

.menu section.menu_price_area table * {
  color: #000;
}

.menu_price_area table th,
.menu_price_area table td {
  padding: 4px 8px;
  border-bottom: 1px solid #cfc19d;
  border-left: 1px solid #cfc19d;
  text-align: right;
}
.menu_price_area table th:first-of-type { width: 420px; text-align: left; }
@media all and (max-width: 767px) {
	.menu_price_area table th:first-of-type { width: auto; }
}
.menu_price_area table td:first-of-type { text-align: left; }
.menu_price_area table th {
  min-height: 50px;
  background: #b29a59;
  color: #fff !important;
}
.menu_price_area table td span { font-size: 1.3rem; }
.menu_price_area .aside {
  padding: 10px 0 20px;
}

.menu_price_area .price_note_box {
  margin-top: 10px;
  margin-bottom: 40px;
  font-size: 1.4rem;
  background: #f9f9f9;
  padding: 20px;
  color: #222;
}

.menu_price_area .price_note_box p {
  color: #222 !important;
}

.menu_price_menu_area {
  padding: 100px 40px 40px;
  border: 1px solid #000;
  margin-bottom: 40px;
}

.menu_price_menu_area h3 {
  font-size: 2.0rem;
  text-align: center;
  margin-bottom: 20px;
}

.menu_price_menu_area a {
  margin-top: 20px;
}

.price_area .non-tax {
  vertical-align: baseline;
  ;
}

.price_area .non-tax {
  font-size: 2.4rem;
}

.price .menu_list_area .price_notes {
  max-width: 950px;
  margin: 0 auto 40px;
  width: 90%;
  box-sizing: border-box;
  padding: 30px;
  border: 4px solid #dfd3c0;
  background: #fff;
}

/*----------------------------------------
case
----------------------------------------*/
.menu_case_area .menu_case_contents {
  display: flex;
  justify-content: space-between;
}

.menu_case_area .menu_case_contents .ph {
  width: 45%;
}

.menu_case_area .menu_case_contents .txt_area {
  width: 52%;
}

.menu_case_area .menu_case_contents .txt_area h3 {
  font-size: 2.2rem;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid #d7ccaf;
}

.menu_case_area .menu_case_contents .txt_area .txt {
  margin-bottom: 20px;
}

.menu_case_area .menu_case_contents .txt_area .txt h4 {
  font-size: 1.6rem;
  margin-bottom: 5px;
}

.menu_case_area .btn {
  margin: 50px auto 0;
}

/*----------------------------------------
ph p
----------------------------------------*/
.menu .ph p,
.menu .ph_contents p {
  padding-top: 10px;
}

/*----------------------------------------
menu一覧
----------------------------------------*/
.price .menu_list_area .js_accordion_content {
  margin-bottom: 100px;
}

.menu_list.menu section:nth-of-type(3n)::before,
.menu_list.menu section:nth-of-type(3n+1)::before,
.price.menu section:nth-of-type(3n)::before,
.price.menu section:nth-of-type(3n+1)::before {
  display: none;
}

.menu .menu_list_area {
  padding: 0;
}

.price .menu_list_area {
  padding: 80px 0;
}

.price .title_area h2 {
  font-size: 4.6rem;
  line-height: 1.2;
  margin-bottom: 50px;
  text-align: center;
}

.price .title_area h2 span {
  font-size: 1.6rem;
}

/*.menu .menu_list_area h3{
	max-width: 1050px;
	margin: 0 auto;
	text-align: center;
	font-size: 2.2rem;
	padding-bottom: 10px;
	border-bottom: 1px solid #000;
}
section.menu .menu_list_contents {
	padding: 80px 0;
}
.menu_list .menu_list_area .menu_list_contents:nth-of-type(odd),
.price .menu_list_area .menu_list_contents:nth-of-type(odd){
	background: #f6f6f6;
	color: #fff;
}
section.menu .menu_list_contents h3{
	font-size: 2.4rem;
}
section.menu .menu_list_contents ul {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
section.menu .menu_list_contents ul li{
	margin-bottom: 15px;
	margin-right: 10px;
	width: 30%;
}
section.menu .menu_list_contents ul.menu_list_block {
    max-width: 1050px;
	justify-content: space-between;
	width: 90%;
	margin: 0 auto;
}
section.menu .menu_list_contents ul.menu_list_block li {
    margin-bottom: 15px;
    margin-right: 0;
    width: 48.5%;
	text-align: left;
}
section.menu .menu_list_contents ul.menu_list_block li a {
    display: flex;
    text-align: center;
    color: #000;
    background: #fff;
    border:1px solid #000;
	padding: 15px;
}
section.menu .menu_list_contents ul.menu_list_block .txt_area{
	width: calc(100% - 105px);
}
section.menu .menu_list_contents ul.menu_list_block li h3 {
    text-align: left;
    font-size: 1.6rem;
    padding-bottom: 0;
    border-bottom:none;
}
section.menu .menu_list_contents ul.menu_list_block li p {
     text-align: left;
	margin-top: 5px;
	font-size: 1.3rem;
	line-height: 1.6;
}
section.menu .menu_list_contents ul.menu_list_block  figure{
	width: 90px;
	height: 90px;
	overflow: hidden;
	margin-right: 15px;
}
section.menu .menu_list_contents ul.menu_list_block  figure img{
	width: auto;
	height: 100%;
	object-fit: cover;
}*/
/*----------------------------------------
共通ローカルナビ
----------------------------------------*/
.lo_nav_area {
  margin: 0 auto;
  padding: 40px 0;
  box-sizing: border-box;
  background: #000;
}

.lo_nav_area .inner {
  width: 1050px;
  margin: 0 auto;
  box-sizing: border-box;
}

.menu .lo_nav_area {
  padding-bottom: 40px;
}

.lo_nav_area .inner.flex {
  display: flex;
  justify-content: space-between;
}

.lo_nav_area .inner h2 {
  font-size: 2.8rem;
  line-height: 1;
  padding-bottom: 20px;
  text-align: center;
}

.lo_nav_area .inner .parent_cate {
  font-size: 2.4rem;
  line-height: 1;
  padding-bottom: 20px;
}

.lo_nav_area .inner .parent_cate span {
  display: inline-block;
  margin-left: 20px;
  font-size: 1.5rem;
  line-height: 1;
  vertical-align: baseline;
}

.lo_nav_area .lo_nav {
  display: flex;
  flex-wrap: wrap;
}

.trouble .lo_nav_area .lo_nav {
  justify-content: center;
}

.price_list_area {
  width: 900px;
  margin: 0 auto 60px;
}

.price_list_area h3 {
  padding-top: 40px;
}

.case .lo_nav_area .lo_nav {
  justify-content: center;
}

.case .lo_nav_area .lo_nav {
  padding-bottom: 60px;
}

.lo_nav_area .lo_nav li {
  width: 24%;
  text-align: center;
  margin: 5px 0 8px 1%;
}

.case .lo_nav_area .lo_nav li {
  background: #000;
}

.case .lo_nav_area .lo_nav li:nth-child(4n + 1) {
  margin-left: 0;
}

.lo_nav_area a {
  position: relative;
  display: block;
  padding: 12px 0;
  text-align: center;
  z-index: 1;
}

.menu .lo_nav_area .lo_nav li {
  width: 31%;
}

.menu .lo_nav_area .lo_nav li:nth-child(3n + 1) {
  margin-left: 0;
}

.trouble .lo_nav_area .lo_nav li a,
.menu .lo_nav_area .lo_nav li a {
  display: block;
  text-align: center;
  color: #000;
  background: #fff;
  border: 1px solid #c0a06e;
}

.case .lo_nav_area a {
  color: #000;
  text-align: center;
}

.case .lo_nav_area a:hover {
  opacity: 1;
}

/*----------------------------------------
doctors_cosme
----------------------------------------*/
.doctors_cosme_area {
  background: #fff;
}

.doctors_cosme_area .doctors_cosme_btn {
  position: relative;
  letter-spacing: 0.2rem;
  background: #b89c80;
  padding: 20px 0;
  text-align: center;
  color: #fff;
  font-size: 2.0rem;
  cursor: pointer;
  transition: 0.3s;
}

.doctors_cosme_area .doctors_cosme_btn:hover {
  opacity: 0.8;
}

.doctors_cosme_area .doctors_cosme_btn::before,
.doctors_cosme_area .doctors_cosme_btn::after {
  right: 5%;

}

.doctors_cosme_area .doctors_cosme_contents {
  background: #fff;
}

.doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list {
  padding: 50px 0;
  display: flex;
  flex-wrap: wrap;
}

.doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li {
  width: 23%;
  margin-left: 2%;
  margin-bottom: 40px;
  transition: 0.3s;
}

.doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li figure {
  width: 80%;
  margin: 0 auto;
}

.doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li:hover {
  opacity: 0.7;
}

.doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li:nth-child(4n+1) {
  margin-left: 0;
}

.doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li h3 {
  font-size: 1.6rem;
  margin-bottom: 15px;
  line-height: 1.3;
  border-left: none;
  margin-top: 20px;
  letter-spacing: 0;
}

.doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li h3.ht2 {
  height: 45px;
}

.doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li .txt {
  border-top: 1px solid #d6c3af;
  border-bottom: 1px solid #d6c3af;
  padding: 10px 0;
  line-height: 1.6;
}

.doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li .txt .kinds {
  font-size: 1.3rem;
}

.doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li .txt .price {
  font-size: 1.8rem;
}

@media screen and (max-width:1500px) {
  .about .about_contents .txt_area {
    left: 5%;
  }
}

@media screen and (min-width:751px) {
  .lo_nav_fixed_area .js_accordion_content {
    display: block !important;
  }
}

@media screen and (max-width:750px) {
  article {
    padding-top: 8vw !important;
  }

  section section {
    padding: 6.66666667vw 0;
  }

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


    title


    ----------------------------------------*/
  .fv_title_area {
    position: relative;
    height: 15vh;
    min-height: auto;
  }

  .fv_title_area::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
  }

  .fv_title_ph_area {
    height: auto;
    min-height: auto;
    margin-top: 4vw;
  }

  .fv_title_ph_area::before {
    display: none;
  }

  .fv_title_area .inner {
    width: 90%;
  }

  .fv_title_ph_area .inner {
    width: 90%;
  }

  .fv_title_area .title.en_serif {
    font-size: 7vw;
    margin-top: 0;
  }

  /* .fv_title_area .title.en_serif span.serif {
    font-size: 3.6vw;
  } */

  .fv_title_area .title span {
    font-size: 3.6vw;
  }

  /* .fv_title_area .en_serif span.en_serif {
    font-size: 3.2vw;
  } */
  .fv_title_area .title.en_serif span.en {
    font-size: 7vw !important;
  }

  .sub_title {
    font-size: 5.333333333vw;
    margin-bottom: 5.333333vw;
    letter-spacing: 0;
  }

  section .title_area h2 {
    font-size: 9.333333333vw;
    margin-bottom: 6.666666667vw;
  }

  section .title_area h2 span.serif {
    font-size: 3.733333333vw;
  }

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


    fv_bg


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

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


    search


    ----------------------------------------*/
  .search .inner {
    padding: 6.666666667vw 0 13.33333vw;
  }

  .search .inner h3 {
    text-align: center;
    font-size: 2.4rem;
    padding-bottom: 50px;
  }

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


    trouble


    ----------------------------------------*/
  .trouble_contents {
    padding: 10vw 0;
  }

  /*----------------------------------------
    trouble_about_contents
    ----------------------------------------*/
  .trouble_about_contents .trouble_details_area {
    margin-bottom: 15.666667vw;
  }

  .trouble_about_contents .trouble_details_area::before {
    left: 0;
    bottom: -24.66666vw;
    width: 90%;
  }

  .trouble_about_contents .trouble_details_area:nth-child(odd):before {
    left: 10%;
  }

  .trouble_about_contents .trouble_details_area .inner {
    position: relative;
    display: flex;
    justify-content: flex-start;
    width: 90%;
    left: 10%;
  }

  .trouble_about_contents .trouble_details_area:nth-child(even) .inner {
    left: 0;
  }

  .trouble_about_contents .trouble_details_area .ph {
    position: absolute;
    top: 0;
    right: -5%;
    width: 60%;
  }

  .trouble_about_contents .trouble_details_area:nth-child(odd) .ph {
    top: 0;
    right: auto;
    left: -17.5%;
  }

  .trouble_about_contents .trouble_details_area .txt_area {
    top: 24.666666vw;
    left: 0;
    width: 100%;
    padding: 15vw 4vw 4vw;
    max-width: 90%;
    box-sizing: border-box;
    font-size: 4vw;
  }

  .shiwa .trouble_about_contents .trouble_details_area .txt_area {
    top: 6.666666vw;
  }

  .trouble_about_contents .trouble_details_area:nth-child(odd) .txt_area {
    padding: 15vw 4vw 4vw;
  }

  .trouble_about_contents .trouble_details_area .txt_area h3 {
    font-size: 5.2vw;
    margin-bottom: 2.66666vw;
  }

  .trouble_about_contents .trouble_details_area:nth-child(odd) .txt_area h3 {
    text-align: right;
  }

  /*----------------------------------------
    trouble_kinds_contents/trouble_treatment_contents
    ----------------------------------------*/
  .trouble_area .trouble_kinds_contents ul li {
    margin: 0 0 3vw;
    transition: 0.2s;
    display: block;
    padding: 4vw 4vw 6vw;
  }

  .trouble_area .trouble_treatment_contents ul li {
    margin: 0 0 3vw;
    transition: 0.2s;
    display: block;
    padding: 4vw;
  }

  .trouble_area .trouble_kinds_contents ul li .ph,
  .trouble_area .trouble_treatment_contents ul li .ph {
    width: 70%;
    margin: 3vw auto;
  }

  .trouble_area .trouble_visia_contents .txt,
  .trouble_area .trouble_kinds_contents ul li .txt,
  .trouble_area .trouble_treatment_contents ul li .txt {
    padding-right: 0;
  }

  .trouble_area .trouble_visia_contents .txt h3,
  .trouble_area .trouble_kinds_contents ul li .txt h3,
  .trouble_area .trouble_treatment_contents ul li .txt h3 {
    font-size: 4.8vw;
    margin-bottom: 2.66666vw;
  }

  .trouble_area .trouble_treatment_contents ul li .txt h3 {
    padding-bottom: 2vw;
  }

  .trouble_area .trouble_kinds_contents ul li .txt h4 {
    font-size: 4.266666667vw;
    margin: 3vw 0 2.66666vw;
  }

  .trouble_area .trouble_kinds_contents ul li .txt h4::before {
    left: -4vw;
    bottom: -1.66666vw;
  }

  .trouble_area .trouble_kinds_contents ul li .txt .tag_area {
    padding: 1vw;
    font-size: 3.466666667vw;
    margin-top: 3.66666vw;
  }

  .trouble_area .trouble_kinds_contents ul li .txt .tag_area span,
  .trouble_area .trouble_kinds_contents ul li .txt .tag_area a {
    position: relative;
    display: inline-block;
    margin-right: 1.66666vw;
    margin-bottom: 1.66666vw;
    padding: 1vw 2.666666vw;
  }

  .trouble_area .trouble_treatment_contents ul li .txt .btn {
    margin: 4vw auto 0;
  }

  .trouble_area .trouble_treatment_contents .trouble_treatment_box {
    width: 100%;
    padding: 2vw;
    margin-top: 4vw;
    font-size: 3.2vw;
    box-sizing: border-box;
  }

  .trouble_area .trouble_treatment_contents .trouble_treatment_box h4 {
    font-size: 3.4vw;
    margin-bottom: 1vw;
  }

  /*----------------------------------------
    trouble_aftercare_contents
    ----------------------------------------*/
  .trouble_area .trouble_aftercare_contents .inner {
    width: 90%;
  }

  .trouble_area .trouble_aftercare_contents .trouble_aftercare_list {
    background: #fff;
    padding: 4vw;
    margin-bottom: 2.666666vw;
  }

  .trouble_area .trouble_aftercare_contents .trouble_aftercare_list h3 {
    font-size: 4.266666667vw;
    margin-bottom: 2.66666vw;
  }

  /*----------------------------------------
    trouble_visia_contents
    ----------------------------------------*/
  .trouble_area .trouble_visia_contents .inner {
    width: 90%;
  }

  .trouble_area .trouble_visia_contents h2 {
    font-size: 5.2vw;
  }

  .trouble_area .trouble_visia_contents h2 span.serif {
    font-size: 4vw;
    margin-top: 1.666666vw;
  }

  .trouble_area .trouble_visia_contents .trouble_visia_list {
    margin: 0 0 2.66666vw;
    display: block;
  }

  .trouble_area .trouble_visia_contents .ph {
    width: 70%;
    margin: 0 auto;
  }

  /*----------------------------------------
    trouble_ability_contents
    ----------------------------------------*/
  .trouble_area .trouble_ability_contents ul {
    display: block;
  }

  .trouble_area .trouble_ability_contents ul li {
    max-width: 100%;
    width: 100%;
    margin: 0 0 5.3333vw;
    ;
    padding: 4vw;
  }

  .trouble_area .trouble_ability_contents ul li h3 {
    font-size: 4.266666667vw;
    margin-bottom: 2.66666vw;
  }

  .trouble_area .trouble_ability_contents ul li h3::before {
    left: -4vw;
    bottom: -1.66666vw;
  }

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


case


----------------------------------------*/
  .case_details_area .case_title_area {
    padding: 6vw 0;
  }

  .case_details_area .case_title_area .date {
    font-size: 3.4677777vw;
  }

  .case_details_area .case_title_area .cate_area span {
    font-size: 3.2vw;
    padding: 1vw 2.67777vw;
  }

  .case_details_area .case_title_area .title {
    font-size: 4.8vw;
    margin-top: 2.677777vw;
    margin-bottom: 0;
    line-height: 1.5;
  }

  .case_details_area .case_details_contents {
    padding: 10vw 0 5vw;
  }

  .case_details_area .case_details_contents ul {
    margin: 0 auto 4vw;
  }

  .case_details_area .case_details_contents ul li {
    margin-bottom: 6vw;
  }

  .case_details_area .case_details_contents ul li .caption {
    font-size: 3.2vw;
    margin-bottom: 1.6vw;
  }

  .case_details_area .case_details_contents .case_details_txt_contents02 {
    padding-bottom: 8vw;
  }

  .case_details_area .case_details_contents dl {
    padding: 3vw 0;
  }

  .case_details_area .case_details_contents dl dt {
    padding-right: 25px;
    font-size: 1.8rem;
    font-weight: bold;
  }

  .case_details_area .case_details_contents .case_details_txt_contents01 dl {
    width: 100%;
  }

  .case_details_area .case_details_contents .case_details_txt_contents02 dl {
    width: 100%;
    display: block;
  }

  .case_details_area .case_details_contents .case_details_txt_contents01 dl dt {
    width: 18vw;
  }

  .case_details_area .case_details_contents .case_details_txt_contents02 dl dt {
    width: 100%;
    margin-bottom: 1.5vw;
  }

  .case_details_area .case_details_contents .case_details_txt_contents01 dl dd {
    width: calc(100% - 18vw);
  }

  .case_details_area .case_details_contents .case_details_txt_contents02 dl dd {
    width: 100%;
  }

  .case_details_area .case_details_contents .case_details_doctor_contents {
    padding: 4vw;
    margin: 4vw 0;
  }

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


system


----------------------------------------*/
  .system .en_title {
    font-size: 8vw;
    margin-bottom: 5.33333vw;
  }

  .system #transportation .en_title {
    font-size: 8vw;
  }

  .system h2 {
    font-size: 3.2vw;
    margin-bottom: 0;
  }

  .system_area {
    padding-bottom: 13vw;
  }

  .system_area .details_area .ph {
    width: 80%;
    margin: 3vw auto 4vw;
  }

  .system_area .details_area .txt_area {
    width: 100%;
  }

  .system_area .system_box_area {
    padding: 4vw;
    margin-top: 8vw;
  }

  .system_area .system_box_area h3 {
    font-size: 4.8vw;
    margin-bottom: m4vw;
  }

  .system_area .system_box_area .guarantee_list li {
    width: 48%;
    padding: 1.5vw 0;
    box-sizing: border-box;
    margin: 0 auto 2vw;
  }

  .system_area .system_box_area .transportation_list li {
    font-size: 4.8vw;
  }

  .system_area .system_box_area h4 {
    padding: 2vw;
    margin-bottom: 3vw;
    font-size: 4vw;
  }

  .system_area .system_box_contents {
    margin-top: 10vw;
  }

  .system_area .system_box_contents .system_box_list_contents {
    padding: 3vw 0 0;
    margin-top: 4vw;
  }

  .system_area .transportation_area .system_box_list_contents:nth-of-type(1) {
    margin-top: 4vw;
  }

  .system_area .system_box_contents h5 {
    font-size: 4vw;
    margin-bottom: 2vw;
  }

  .system_area .box_area {
    padding: 3vw;
    margin-top: 4vw;
  }

  .system_area .box_area span {
    font-size: 5.333vw;
    margin: 0 1vw;
  }

  .system_area .atention_area {
    padding: 3vw;
    margin: 6vw auto 0;
    font-size: 3.2vw;
  }

  .system_area .atention_area h4 {
    background: transparent;
    padding: 0;
    margin: 0 0 2vw;
    font-size: 4vw;
  }

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


    first


    ----------------------------------------*/
  .first_cach_area h3 {
    font-size: 5.33333vw;
    width: 90%;
    margin: 0 auto;
  }

  .first_cach_area h3 span {
    display: block;
    padding: 3vw;
  }

  .first_cach_area .inner {
    display: block;
    margin: 10vw auto 0;
  }

  .first_cach_area .ph {
    width: 100%;
    margin-top: 0;
  }

  .first_cach_area .txt_area {
    width: 100%;
    margin-top: -5vw;
  }

  .first_cach_area .txt_area h4 {
    font-size: 4.6666vw;
    margin-bottom: 3vw;
    line-height: 1.4;
  }

  .first_cach_area .txt_area p {
    font-size: 3.777777vw;
    margin-bottom: 4vw;
    white-space: normal;
  }

  .first_flow_area .first_flow_list li {
    margin-bottom: 8vw;
  }

  .first_flow_area .first_flow_list .first_flow_title {
    padding-bottom: 2vw;
    margin-bottom: 2.6666vw;
  }

  .first_flow_area .first_flow_list .first_flow_title h3 {
    font-size: 4.6666vw;
    margin-left: 2.6666vw;
  }

  .first_flow_area .first_flow_list .first_flow_title p {
    font-size: 4vw;
  }

  .first_flow_area .first_flow_list .first_flow_title p span {
    margin-top: -1vw;
    font-size: 8vw;
  }

  .first_flow_area .first_flow_list .reserve_area {
    padding: 4vw 0 0;
  }

  .first_flow_area .first_flow_list .reserve_area ul {
    width: 90%;
    margin: 0 auto;
  }

  .first_flow_area .first_flow_list .reserve_area ul li {
    margin-bottom: 2.66666vw;
  }

  .first_flow_area .first_flow_list .reserve_area ul .line_btn_area a {
    font-size: 4vw;
  }

  .first_minor_area .minor_btn {
    width: 80%;
    margin: 4vw auto 0;
  }

  .first_minor_area .minor_btn a {
    padding: 7vw 0;
    font-size: 4vw;
  }

  .first_minor_area .minor_btn a img {
    width: 6vw;
    margin-right: 2vw;
  }

  .first_minor_area .policy_area {
    margin: 8vw 0;
    padding: 5vw;
    border-radius: 10px;
  }

  .first_minor_area .policy_area h3 {
    font-size: 4.6666vw;
    margin-bottom: 2.6666vw;
  }

  /*----------------------------------------
    frist_ticket_area
    ----------------------------------------*/
  .frist_ticket_area .inner {}

  .frist_ticket_area .frist_ticket_contents {
    margin-top: 6.66667vw;
  }

  .frist_ticket_area h3 {
    font-size: 4.4vw;
    padding: 2vw;
  }

  .frist_ticket_area h3 span {
    font-size: 4.2vw;
    padding: 2vw 2vw;
    border-radius: 4px;
    margin-left: 2vw;
  }

  .frist_ticket_area .first_ticket {
    display: block;
    padding: 4vw;
  }

  .frist_ticket_area .first_ticket .ph {
    width: 80%;
    margin: 0 auto;
  }

  .frist_ticket_area .first_ticket .taisyo_area {
    width: 100%;
    padding: 3vw 0;
  }

  .frist_ticket_area .first_ticket .taisyo_area h4 {
    width: 50vw;
    margin: 0 auto 2vw;
    font-size: 4vw;
  }

  .frist_ticket_area .first_ticket .taisyo_area p {
    font-size: 4.4vw;
  }

  .frist_ticket_area .first_ticket .taisyo_area p span {
    font-size: 4vw;
  }

  .frist_ticket_area .first_ticket .taisyo_area .tag_area {
    margin-top: 2vw;
  }

  .frist_ticket_area .first_ticket .taisyo_area .tag_area span {
    background: #fff;
    font-size: 3.0vw;
    padding: 1.6vw 0;
  }

  .frist_ticket_area .first_ticket .price_area {
    width: 100%;
    text-align: center;
  }

  .frist_ticket_area .first_ticket .price_area p.en_serif {
    font-size: 13vw;
  }

  .frist_ticket_area .first_ticket .price_area p.serif {
    font-size: 5vw;
  }

  .frist_ticket_area .first_ticket .price_area p span {
    font-size: 6vw;
  }

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


doctor_area


----------------------------------------*/
  .doctor_area {
    padding-bottom: 0;
  }

  .doctor_area .doctor_list_area {
    position: relative;
    display: block;
    overflow-x: 0;
  }

  .doctor_area .doctor_list_area .ph {
    width: 80%;
    margin-left: 33%;
  }
	section#recruiting.doctor_area .doctor_list_area .ph {
	width: 100%;
    margin-left: 0%;
  }
  .doctor_area .doctor_list_area .ph img {
    max-width: 100%;
  }

  .doctor_area .doctor_list_area .txt_area {
    position: absolute;
    top: 30%;
    margin-top: 0;
    width: 45%;
  }
  #recruiting.doctor_area .doctor_list_area .txt_area {
    top: 74%;
  }

  .doctor_area .doctor_list_area .txt_area .clinic_name {
    font-size: 3.2vw;
    margin-bottom: 2vw;
  }
		#recruiting.doctor_area .doctor_list_area .txt_area .clinic_name {
    		font-size: 4vw;
			color: #fff;
		  }
  .doctor_area .doctor_list_area .txt_area h2 {
    font-size: 5.0vw;
    margin-bottom: 4vw;
  }
		#recruiting.doctor_area .doctor_list_area .txt_area h2 {
			font-size: 6vw;
			color: #fff;
		}

  .doctor_area .doctor_list_area .txt_area .sns_area li {
    width: 6vw;
    margin: 0 1.5vw;
  }

  .doctor_area .doctor_list_area .txt_area .btn {
    max-width: 100%;
    width: 90%;
  }

  .doctor_area .doctor_list_area .txt_area .btn a {
    height: auto;
    font-size: 3.0vw;
  }

  .doctor_area .doctor_message_area {
    padding: 8vw 0;
  }

  .doctor_area .doctor_message_area h3 {
    font-size: 10vw;
  }

  .doctor_area .doctor_message_area p {
    margin: 2.67777vw 0 4vw;
    font-size: 3.733333vw;
  }

  .doctor_area .about_list_area .inner {
    display: block;
  }

  .doctor_area .about_list_area dl {
    width: 100%;
    margin-top: 6.6777vw;
  }

  .doctor_area .about_list_area dt {
    margin-bottom: 2vw;
    font-size: 5.0vw;
  }

  .doctor_area .about_list_area .profile dd {
    font-size: 3.73333vw;
  }

  .doctor_area .about_list_area .history dd {
    padding: 0 0 2vw 10vw;
    margin-bottom: 2vw;
  }

  .doctor_area .about_list_area dd p {
    font-size: 3.73333vw;
  }
/*----------------------------------------
lonav
----------------------------------------*/
.doctor .menu_btn_area_ptn2 {
  margin-bottom:  0;
  }
.doctor .smenu_btn_contents {
  padding: 2vw 0;
}
.doctor .menu_btn_area_ptn2 h2 {
  width: 100%;
  margin: 0 0 0;
  font-size: 5.3vw;
}

.doctor .smenu_btn_list {
  width: 100%;
  justify-content: space-between;
}
.doctor .smenu_btn_list .btn {
  width: 48.5%;
  margin-left: 0;
  margin-bottom: 2vw;
}
.doctor .btn_d a::before {
  position: absolute;
  background: url(../../images/ico_arrow_f_w.svg) no-repeat left top / 100%;
  content: "";
  width: 3px;
  height: 20px;
}
.doctor .btn_d a:hover:before {
  margin-top: 2vw;
}
  /*----------------------------------------


schedule


----------------------------------------*/
  .schedule .schedule_area .inner {
    position: relative;
    padding-bottom: 15vw;
  }

  .schedule .ph {
    padding-top: 6.6667vw;
  }

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


clinic


----------------------------------------*/
  .about .about_contents .ph {
    width: 80%;
    left: 20%;
  }

  .about .about_contents .ph.symbol_hexagon::before {
    width: 30vw;
    height: 30vw;
    right: 70%;
    bottom: 50%;
  }

  .about .about_contents .txt_area {
    position: relative;
    width: 100%;
    order: 2;
    left: 0;
    margin-top: 2vw;
  }

  .about .about_contents .txt_area h3 {
    font-size: 5.3333vw;
    margin-bottom: 4vw;
  }

  .about .about_contents .txt_area p {
    width: 100%;
    max-width: 100%;
  }

  .about .clinic_concept_area .clinic_concept .cach {
    font-size: 4vw;
    margin-bottom: 5.3333vw;
  }

  .about .clinic_concept_area .clinic_concept h3 {
    font-size: 10vw;
    margin-bottom: 4vw;
  }

  .about .clinic_concept_area .clinic_concept h4 {
    font-size: 7vw;
    margin-bottom: 3vw;
  }

  .about .clinic_concept_area .clinic_concept li {
    width: 90%;
    padding: 4vw;
    margin: 0 auto 4vw;
  }

  .about .clinic_concept_area .clinic_concept p {
    line-height: 2.0;
  }

  .clinic_room_area h3 {
    font-size: 10vw;
    margin-bottom: 4vw;
  }

  .clinic_room_area h4 {
    font-size: 3.7333vw;
  }

  .clinic_room_area li:nth-child(even) {
    margin-top: 8vw;
  }

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


access


----------------------------------------*/
  .access .access_address_area {
    margin-bottom: 8vw;
  }

  .first .en_title,
  .access .access_address_area .en_title {
    font-size: 8vw;
  }

  .first h2,
  .access .access_address_area h2 {
    font-size: 3.2vw;
    margin-bottom: 5.33333vw;
  }

  .access .access_address_area .access_address_contents .ph {
    width: 42%;
    margin: 0 0 4vw;
  }

  .access .access_address_area .access_address_contents .txt_area {
    width: 53%;
  }

  .access .access_address_area h3 {
    font-size: 4vw;
  }

  .access .access_address_area .access_address_contents .txt_area p {
    margin-bottom: 4vw;
    font-size: 3.2vw;
    letter-spacing: 0;
  }

  .access iframe {
    width: 100%;
    height: 50vw;
    margin: 0 auto 13vw;
  }

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


first_area


----------------------------------------*/
  .first_flow_area,
  .first_minor_area {
    padding-bottom: 15vw;
  }

  .first .step_no {
    font-size: 5vw;
    margin-right: 3vw;
  }

  .first .first_flow_contents {
    margin-top: 10vw;
  }

  .first .first_flow_contents h3 {
    padding: 2vw;
    margin-bottom: 4vw;
    font-size: 4vw;
  }

  .first .first_flow_contents .firs_reserve_area {
    display: block;
    font-size: 3.0vw;
    width: 80%;
    margin: 5vw auto;
  }

  .first .first_flow_contents .firs_reserve_area li a {
    display: block;
    padding: 2vw 4vw;
    height: auto;
  }

  .first .first_flow_contents .firs_reserve_area img {
    width: 6vw;
    margin-right: 2vw;
  }

  .first .first_flow_contents .firs_reserve_area span {
    font-size: 4.8vw;
  }

  .first .first_flow_contents .firs_reserve_area .tel_area {
    margin-right: 0;
    margin-bottom: 3vw;
    text-align: center;
  }

  .first .first_flow_contents .firs_reserve_area .tel_area span {
    font-size: 5.3vw;
  }

  .first .first_flow_contents .txt_area {
    display: block;
  }

  .first .first_flow_contents .txt_area figure {
    width: 70%;
    margin: 0 auto 3vw;
  }

  .first .first_flow_contents .txt_area p {
    width: 100%;
  }

  .first .first_minor_area .btn {
    margin: 6.6666vw auto 0;
  }

  .first .first_minor_area .btn a {
    font-size: 4.2vw;
  }

  .first .atention_area {
    padding: 4vw;
    margin: 6.666vw auto 0;
    font-size: 3.46777vw;
  }

  .first .atention_area h4 {
    font-size: 4vw;
    margin-bottom: 2.666vw;
  }

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


    case


    ----------------------------------------*/
  .lo_search_area {
    padding: 5.333333vw 0;
  }

  .case .lo_search_area form {
    width: 90%;
  }

  .case .lo_search_area form ul {
    display: block;
  }

  .case .lo_search_area form ul li {
    width: auto;
    margin: 0;
    background: transparent;
  }

  .case .lo_search_area form ul li:nth-child(1),
  .case .lo_search_area form ul li:nth-child(2) {
    padding-top: 10px;
  }

  .searchandfilter label {
    width: 100% !important;
  }

  .case .lo_search_area form select {
    position: relative;
    display: block;
    outline: none;
    border: none;
    width: 100%;
    line-height: 1.3;
    padding: 2.66666vw 1.4em 2.66666vw .8em;
    box-sizing: border-box;
    margin: 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: #fff url("../../images/case/signs.png") no-repeat right top;
    background-size: 10px;
    border-bottom: 1px solid #fff;
  }

  .case .lo_search_area form [type="submit"] {
    display: block;
    width: 200px;
    margin: 0 auto;
    padding: 3vw 0;
  }

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


    case


    ----------------------------------------*/
  .case .case_area {
    padding-top: 0;
  }

  .case .case_details_list_area {
    padding: 10.66666667vw 0;
  }

  .case .case_details_list_area h2 {
    font-size: 4.8vw;
    margin-bottom: 4vw;
    padding-bottom: 1.33333vw;
  }

  .case .case_details_list_area .ph_area {
    width: 90%;
    max-width: 400px;
    margin: 5.33333vw auto;
  }

  .case .case_details_list_area .ph_area .case_thumb_list {
    justify-content: center;
    margin-top: 2.6666667vw;
  }

  .case .case_comment_area {
    padding: 4vw 4vw 1.333333vw;
  }

  .case .case_comment_area dt {
    font-size: 4.266666667vw;
    padding-bottom: 1.333333vw;
  }

  .case .case_comment_area dd {
    padding-bottom: 2.6666667vw;
    margin-bottom: 2.6666667vw;
  }

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


    event


    ----------------------------------------*/
  .event .event_area .event_details_title {
    padding: 50px 0;
  }

  .event_area h1 {
    font-size: 4.8vw;
  }

  .event_area .details figure {
    margin: 6.66667vw auto 8vw;
  }

  .event_area h2 {
    margin-bottom: 4vw;
    font-size: 4.266666667vw;
    padding-bottom: 1.666666vw;
  }

  .event_area h2::before {
    width: 30vw;
  }



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


    information


    ----------------------------------------*/
  .information .information_area {
    max-width: 90%;
    min-width: 90%;
  }

  .information .information_area .list {
    border-bottom: 1px solid #f0f0f0;
    padding: 4vw 0;
  }

  .information .information_area .list h2 {
    font-size: 4vw;
  }

  .information .information_area .list p {
    font-size: 3.2vw;
  }

  .information .information_area .date {
    margin-bottom: 1vw;
    font-size: 2.933333333vw;
    font-size: 1.2rem;
    color: #777;
  }

  .information .information_area h1 {
    font-size: 4.8vw;
    margin-bottom: 4vw;
  }

  .information .information_area .details_area {
    margin: 4vw auto;
  }

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


    menu


    ----------------------------------------*/
  .menu .fv_title_area {
    background-size: 250% !important;
  }

  /*.menu section:nth-of-type(odd) *{
        color: #f4f3ee;
    }
    .menu_list section:nth-of-type(odd),
    .price section:nth-of-type(odd){
        background: #fff;
    }
    .menu_list section:nth-of-type(even){
        background: #fff;
    }
    .menu_list section:nth-of-type(odd) *,
    .price section:nth-of-type(odd) *{
    }
    .price section:nth-of-type(even){
        background: #f9f9f9;
    } */

  /*----------------------------------------
payment
----------------------------------------*/
  .menu .payment_area {
    padding: 4vw 3.5vw 6vw;
    margin: 5.333vw auto;
  }

  .menu .payment_area h2 {
    font-size: 5.3333vw;
    margin-bottom: 3vw;
  }

  .menu .payment_area .kinds_list li {
    padding: 2vw 0;
    line-height: 1.3;
    font-size: 3.2vw;
    letter-spacing: 0;
  }

  .menu .payment_area .payment_contents {
    margin-top: 8vw;
  }

  .menu .payment_area .payment_contents h3 {
    padding: 2vw;
    font-size: 4vw;
    margin-bottom: 3vw;
  }
  .menu .payment_area .payment_contents h4 {
    font-size: 3.73333vw;
    margin-top: 3vw;
  }
  .menu .payment_area .payment_contents .ph {
    margin-top: 2.6666vw;
  }

  /*----------------------------------------
    lo_nav_fixed_area
    ----------------------------------------*/
  .lo_nav_fixed_area {
    position: relative;
    padding: 0;
  }

  .lo_nav_fixed_area::before,
  .lo_nav_fixed_area::after {
    height: 10vw;
  }

  .lo_nav_fixed_area::before {
    left: 1vw;
    top: -4vw;
  }

  .lo_nav_fixed_area::after {
    right: 1vw;
    bottom: -4vw;
  }

  .lo_nav_fixed_area .nav_title {
    text-align: center;
    font-size: 8vw;
  }

  .lo_nav_fixed_area .nav_title.nav_jp_title {
    font-size: 4.8vw;
  }

  .lo_nav_fixed_area .lo_nav_nav_list {
    width: 100%;
    display: block;
  }

  .lo_nav_fixed_area .js_accordion_content .lo_nav_nav_list div:not(.lo_nav_case_list) {
    margin: 0;
  }

  .lo_nav_fixed_area .js_accordion_content .lo_nav_nav_list div:not(.lo_nav_case_list) a {
    padding: 3vw 0;
    font-size: 4.2vw;
    border-bottom: none;
    border-right: none;
    border-left: none;
  }

  .js_accordion_content {
    display: none;
  }

  /*----------------------------------------
lo_nav_fixed_area case
----------------------------------------*/
  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list {
    margin: 4vw auto;
    width: 90%;
  }

  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list h2 {
    font-size: 4.2vw;
    margin-bottom: 2vw;
  }

  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.other h2 {
    font-size: 4.0vw;
    margin-top: 2vw;
  }

  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction li {
    width: 48.5%;
    margin-right: 0;
    margin-top: 2vw;
  }

  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction li a {
    padding: 3vw 0;
    font-size: 3.2vw;
  }

  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction li:first-child {
    width: 48.5%;
    margin-top: 2vw;
  }

  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction figure {
    width: 100%;
  }

  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction figure img {
    position: relative;
  }

  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.liposuction ul {
    width: 100%;
    justify-content: space-between;

  }

  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.other ul {
    justify-content: space-between;
  }

  .lo_nav_fixed_area .js_accordion_content div.lo_nav_case_list.other ul li {
    width: 48.5%;
    margin-right: 0;
    margin-top: 2vw;
  }

  /*----------------------------------------
    menu
    ----------------------------------------*/
  .menu_point_area .inner .menu_point_contents {
    display: block;
    width: 100%;
    margin: 0 auto 6.333333333vw;
  }

  .menu_point_area .inner .menu_point_contents .ico_area {
    width: 100%;
  }

  .menu_point_area .inner .menu_point_contents .ico_area p {
    font-size: 6.3333vw;
    margin-bottom: 2.677777vw;
    text-align: center;
  }

  .menu_point_area .inner .menu_point_contents .ico_area p span {
    font-size: 12vw;
    margin-left: 2.677777vw;
  }

  .menu_point_area .inner .menu_point_contents .txt_area {
    width: 100%;
    margin-top: 4vw;
  }

  .menu_point_area .inner .menu_point_contents h3 {
    font-size: 4.0vw;
    margin-bottom: 2vw;
  }

  /*----------------------------------------
    case_area
    ----------------------------------------*/
  .menu .case_area {}

  /*----------------------------------------
    about
    ----------------------------------------*/
  .menu_about_area .inner {
    margin-bottom: 5.333333333vw;
  }

  .menu_about_area .col__area {
    width: 100%;
  }

  .menu_about_area .col__area .ph_contents {
    margin-top: 5.333333333vw;
    width: 100%;
  }

  .menu_about_area p {
    padding-bottom: 2.666667vw;
  }

  .menu_about_area .col_2_area .ph_contents {
    min-width: 100%;
  }

  .menu_about_area .col_2_area .txt {
    width: 100%;
    margin-top: 2vw;
  }

  .menu_about_area .col__area.symbol_hexagon::before {
    width: 60%;
    height: 60%;
    bottom: -5vw;
    right: -10vw;
  }

  /*----------------------------------------
    bnr
    ----------------------------------------*/
  .menu .menu_bnr_area .menu_bnr_contents a {
    margin-bottom: 2.666666vw;
  }

  /*----------------------------------------
    flow
    ----------------------------------------*/
  .menu_flow_area h2+p {
    margin-bottom: 5.3333vw;
  }

  .menu_flow_area .menu_flow_contents .step_area {
    padding: 4vw;
    width: 100%;
    margin-bottom: 4vw;
    width: 100%;
    margin-right: 0;
  }

  .menu_flow_area .step_area .step_no {
    font-size: 11vw;
    width: 13vw;
  }

  .menu .menu_flow_area .step_area h3 {
    font-size: 4.8vw;
  }

  .menu_flow_area .step_area .ph {
    margin-top: 3vw;
  }

  /*----------------------------------------
    fature
    ----------------------------------------*/
  .menu_fature_area .sub_title {
    font-size: 5.8vw;
  }

  .menu_fature_area h3 {
    font-size: 4.533333333vw;
    margin-bottom: 4vw;
  }

  .menu_fature_area h3::before {
    width: 30vw;
  }

  .menu_fature_area h4 {
    font-size: 4.266666667vw;
    margin-bottom: 2.66666vw;
  }

  .menu_fature_area .btn_flex_area {
    margin-top: 5.333333vw auto 0;
  }

  .menu_fature_area .col_2_area .col_2_contents {
    width: 100%;
  }
  .menu_fature_area .col__area + .col__area {
    padding: 5.33333vw 0 0;
  }
  .menu_fature_area .col__area + h3 {
    margin-top: 10vw;
  }
  .menu_fature_area p + p {
    margin-top: 1.5em;
  }
  /*----------------------------------------
    kanren
    ----------------------------------------*/
  .menu_kanren_area .menu_kanren_contents_area {
    width: 100%;
    margin: 0 auto 0;
  }

  .menu .menu_kanren_contents {
    margin-bottom: 4vw;
  }

  .menu_kanren_area .menu_kanren_contents {
    display: block;
  }

  .menu_kanren_area .menu_kanren_contents .ph {
    width: 100%;
    margin-right: 0;
    margin-bottom: 2.6666vw;
  }

  .menu_kanren_area .menu_kanren_contents .txt_area {
    width: 100%;
  }

  .menu .menu_kanren_area h3 {
    position: relative;
    font-size: 4.8vw;
    margin-bottom: 3vw;
    padding-bottom: 1.66666vw;
  }

  .menu .menu_kanren_area h3 {
    position: relative;
    font-size: 2.2rem;
    border-bottom: 1px solid #fff;
    margin-bottom: 20px;
    padding-bottom: 10px;
  }

  .menu .menu_kanren_area h3::before {
    width: 30%;
  }

  .menu .menu_kanren_area .btn_area {
    margin-top: 4vw;
    justify-content: center;
  }

  /*----------------------------------------
    movie
    ----------------------------------------*/
  .menu_movie_area .inner {
    width: 88%;
  }

  .movie_area .inner {
    width: 100%;
    margin: 0 auto 4vw;
  }

  .menu_movie_area .inner .menu_movie_contents,
  .movie_area .inner .menu_movie_contents {
    margin-bottom: 2.6666vw;
  }

  /*----------------------------------------
    syorei
    ----------------------------------------*/
  .menu_syorei_area h3 {
    font-size: 4.8vw;
    padding-bottom: 1.333333vw;
    margin-bottom: 4vw;
  }

  .menu_syorei_area h4 {
    font-size: 4.266666667vw;
    padding-bottom: 1.33333vw;
  }

  .menu_syorei_area .ph_area {
    width: 100%;
    margin-right: 0;
  }

  .menu_syorei_area .txt_area {
    width: 100%;
  }

  .menu_syorei_area .txt_area .txt+.txt {
    margin-top: 4vw;
  }

  .menu_syorei_area .menu_syorei_contents+.menu_syorei_contents {
    margin-top: 6.666666667vw;
  }

  /*----------------------------------------
    seizai
    ----------------------------------------*/
  .menu_seizai_area .col__area {
    margin-top: 4vw;
  }

  .menu_seizai_area .ph_contents {
    width: 70% !important;
    margin: 0 auto;
  }

  .menu_seizai_area .inner h3 {
    font-size: 4.266666667vw;
    min-height: auto;
    margin-bottom: 2vw;
    line-height: 1.4;
  }

  .menu_seizai_area .inner li p {
    padding-top: 2vw;
  }

  /*----------------------------------------
    option
    ----------------------------------------*/
  .menu_option_area .menu_option_contents_area {
    width: 100%;
  }

  .menu_option_area .menu_option_contents_area a {
    padding: 4vw;
    margin-bottom: 2.666667vw;
  }

  .menu_option_area .menu_option_contents {
    display: block;
  }

  .menu_option_area .menu_option_contents .ph {
    width: 100%;
    margin: 2.6666676vw 0 0;
  }

  .menu_option_area .menu_option_contents .txt_area {
    width: 100%;
  }

  .menu_option_area .menu_option_contents_area h3 {
    font-size: 4.8vw;
    margin-bottom: 2.6666667vw;
  }

  /*----------------------------------------
    osusume
    ----------------------------------------*/
  .menu_osusume_area::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../../images/menu/osusume_bg.png) no-repeat right center / cover;
    opacity: 0.7;
  }

  .menu_osusume_area .inner {
    width: 90%;
  }

  .menu_osusume_area .inner .menu_osusume_contents {
    display: block;
    width: 100%;
  }

  .menu_osusume_area .inner .menu_osusume_contents p {
    min-width: 100%;
    padding-bottom: 4vw;
    font-size: 4.266666667vw;
    box-sizing: border-box;
    line-height: 1.6;
  }

  .menu_osusume_area .inner .menu_osusume_contents p.ico_check::before {
    width: 4.8vw;
    height: 4.8vw;
  }

  .menu_osusume_area .inner .menu_osusume_contents p.ico_check {
    padding-left: 6vw;
  }

  /*----------------------------------------
    details
    ----------------------------------------*/
  .menu_details_area {}

  .menu_details_area .inner {
    width: 90%;
  }

  .menu_details_area dt {
    width: 100%;
  }

  .menu_details_area dt::before {
    display: none;
  }

  .menu_details_area dd {
    width: 100%;
  }

  /*----------------------------------------
    qa
    ----------------------------------------*/
  .menu_qa_area {}

  .menu_qa_area .inner {
    width: 90%;
  }

  .menu_qa_area dt {
    padding-left: 12vw;
    padding-right: 9vw;
  }

  .menu section.menu_qa_area dd {
    padding: 3vw;
    margin: 0 2vw 4vw;
  }

  .menu_qa_area dt .ico {
    top: 50%;
    font-size: 10vw;
    width: 8vw;
    height: 8vw;
    left: 2vw;
    transform: translateY(-50%);
  }

  .menu_qa_area .js_accordion .js_accordion_openbar::before,
  .menu_qa_area .js_accordion .js_accordion_openbar::after {
    height: 1px;
    right: 3vw;
  }

  /*----------------------------------------
    price
    ----------------------------------------*/
  .price .menu_price_area .menu_list_inner {
    position: relative;
  }

  .menu_list_title {
    padding-bottom: 1.3333vw;
    font-size: 4.8vw;
  }

  .menu_price_area h4 {
    padding: 2.66666vw 0 2vw 0;
    font-size: 3.733333333vw;
  }

  .price_list_area .menu_price_area,
  .menu_price_area .inner {
    width: 95%;
    font-size: 3.466666667vw;
  }

  .price .menu_price_area .inner {
    padding: 0;
  }

  .menu_price_area .inner+.inner {
    margin-top: 13vw;
  }

  .menu_price_area table th,
  .menu_price_area table td {
    padding: 1vw 0.8vw;
    font-size: 3.2vw;
    letter-spacing: 0;
  }

  .menu_price_area .aside {
    padding: 1.33333vw 0 6.666666667vw;
  }

  .menu_price_area .price_note_box {
    margin-top: 1.333333vw;
    margin-bottom: 5.333333vw;
    font-size: 2.933333333vw;
    ;
    padding: 4vw;
  }

  .menu_price_menu_area {
    padding: 13.33333vw 5.33333vw 5.33333vw;
    margin-bottom: 5.33333vw;
  }

  .menu_price_menu_area h3 {
    font-size: 4.8vw;
    margin-bottom: 2.6666667vw;
  }

  .menu_price_menu_area a {
    margin-top: 2.6666667vw
  }

  .price_area .non-tax {
    font-size: 4.8vw;
  }

  .price .menu_list_area .price_notes {
    margin: 0 auto 5.333333vw;
    padding: 4vw;
  }

  /*----------------------------------------
    case
    ----------------------------------------*/
  .menu_case_area .menu_case_contents {
    display: block;
  }

  .menu_case_area .menu_case_contents .ph {
    width: 80%;
    margin: 0 auto 4vw;
  }

  .menu_case_area .menu_case_contents .txt_area {
    width: 100%;
  }

  .menu_case_area .menu_case_contents .txt_area h3 {
    font-size: 4.8vw;
    margin-bottom: 2.66666vw;
    padding-bottom: 2vw;
  }

  .menu_case_area .menu_case_contents .txt_area .txt {
    margin-bottom: 3vw;
  }

  .menu_case_area .menu_case_contents .txt_area .txt h4 {
    font-size: 4vw;
    margin-bottom: 1.3333vw;
  }

  .menu_case_area .btn {
    margin: 5.66666vw auto 0;
  }

  /*----------------------------------------
   menu_sns_area
    ----------------------------------------*/
  .menu .menu_sns_area ul {
    display: block;
  }

  .menu .menu_sns_area ul li {
    margin: 3vw;
  }

  .menu .menu_sns_area ul li .btn {
    margin: 0 auto;
  }

  .menu .menu_sns_area ul li .btn.btn_sns a {
    padding: 4vw 0;
  }

  /*----------------------------------------
    ph p
    ----------------------------------------*/
  .menu .ph p,
  .menu .ph_contents p {
    padding-top: 10px;
  }

  /*----------------------------------------
    menu一覧
    ----------------------------------------*/
  .price .menu_list_area .js_accordion_content {
    margin-bottom: 8vw;
  }

  .price.menu section:nth-of-type(3n)::before,
  .price.menu section:nth-of-type(3n+1)::before {
    display: none;
  }

  .menu .menu_list_area .menu_title {
    margin: 0 auto 5.33333vw;
    font-size: 4.266666667vw;
  }

  .menu .menu_list_area .menu_title::after {
    width: 6.6666667vw;
    height: 8vw;
    top: -8vw;
  }

  .price .menu_list_area {
    padding: 7.33333333vw 0;
  }

  .price .title_area h2 {
    font-size: 7vw;
    margin-bottom: 6.66667vw;
  }

  .price .title_area h2 span.serif {
    font-size: 3.2vw;
  }

  .menu .menu_list_area h3 {
    font-size: 4.266666667vw;
    padding-bottom: 1.333333vw;
  }

  /*section.menu .menu_list_contents {
        padding: 13.33333vw 0 8vw;
    }
    section.menu .menu_list_contents h3{
        font-size: 4.266666667vw;
    }
    section.menu .menu_list_contents ul.menu_list_block {
		display: block;
    }
    section.menu .menu_list_contents ul.menu_list_block li {
        margin-bottom: 2.66666vw;
        width: 100%;
    }
    section.menu .menu_list_contents ul.menu_list_block li a {
        padding: 2vw;
    }
    section.menu .menu_list_contents ul.menu_list_block .txt_area{
        width: calc(100% - 22vw);
    }
    section.menu .menu_list_contents ul.menu_list_block li h3 {
        font-size: 4vw;
    }
    section.menu .menu_list_contents ul.menu_list_block li p {
        margin-top: 0.2vw;
        font-size: 3.2vw;
		line-height: 1.5;
    }
    section.menu .menu_list_contents ul.menu_list_block  figure{
        width: 20vw;
        height: 20vw;
        margin-right: 2vw;
    }*/
  /*----------------------------------------
    共通ローカルナビ
    ----------------------------------------*/
  .lo_nav_area {
    padding: 5.33333vw 0;
  }

  .lo_nav_area .inner {
    width: 90%;
  }

  .menu .lo_nav_area {
    padding-bottom: 5.333333vw;
  }

  .lo_nav_area .inner h2 {
    font-size: 4.266666667vw;
    padding-bottom: 1.66666vw;
  }

  .lo_nav_area .inner .parent_cate {
    font-size: 4.266666667vw;
    padding-bottom: 1.666666vw;
  }

  .lo_nav_area .inner .parent_cate span {
    margin-left: 1.666666vw;
    font-size: 2.666666667vw;
  }

  .lo_nav_area .lo_nav {
    justify-content: space-between;
  }

  .case .lo_nav_area .lo_nav {
    justify-content: center;
  }

  .case .lo_nav_area .lo_nav {
    padding-bottom: 60px;
  }

  .lo_nav_area .lo_nav li {
    width: 48.5% !important;
    margin-left: 0;
  }

  .lo_nav_area a {
    padding: 2vw 0;
    font-size: 2.933333333vw;
  }

  /*----------------------------------------
    price
    ----------------------------------------*/
  .price .price_attention_area {
    display: block;
    margin: 5.33333vw auto;
    padding: 3vw;
  }

  .price .price_attention_area .price_attention_contents {
    width: 100%;
  }

  .price .price_attention_area .price_attention_contents+.price_attention_contents {
    margin-top: 3vw;
  }

  .price .price_attention_area .price_attention_contents h2 {
    font-size: 3.7vw;
    margin-bottom: 2vw;
    padding-bottom: 2vw;
  }

  .price .price_attention_area .price_attention_contents .aside {
    font-size: 3.2vw;
  }

  .price .lo_nav_area .inner {
    width: 90% !important;
    margin: 0 auto;
  }

  /*----------------------------------------
    doctors_cosme
    ----------------------------------------*/
  .doctors_cosme_area .doctors_cosme_btn {
    padding: 3vw 0;
    font-size: 4vw;
  }

  .doctors_cosme_area .doctors_cosme_btn::before,
  .doctors_cosme_area .doctors_cosme_btn::after {
    right: 2%;
  }

  .doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list {
    padding: 6.66667vw 0;
    justify-content: space-between;
  }

  .doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li {
    width: 48.5%;
    margin-left: 0;
    margin-bottom: 5.66667vw;
  }

  .doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li figure {
    width: 80%;
  }

  .doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li h3 {
    font-size: 3.3vw;
    margin-bottom: 2.66667vw;
    margin-top: 2vw;
    letter-spacing: 0;
  }

  .doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li h3.ht2 {
    height: 8vw;
  }

  .doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li .txt {
    padding: 2vw 0;
  }

  .doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li .txt .kinds {
    font-size: 3.0vw;
  }

  .doctors_cosme_area .doctors_cosme_contents .doctors_cosme_list li .txt .price {
    font-size: 4.5vw;
  }

}

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


404


----------------------------------------*/
.not404 h1 {
  font-weight: normal;
  font-size: 2.0rem;
}

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


news


----------------------------------------*/
.news {
  margin-bottom: 100px;
}

.news_area {
  padding: 0;
}

.news .news_list_contents {
  margin-top: 80px;
}

.news:not(.media) .news_list_contents li {
  margin-bottom: 0;
}

.news .news_list_contents li a {
  display: block;
  border: none;
  border-bottom: 1px solid #000;
}

.news .news_list_contents li h3 {
  font-size: 1.8rem;
  font-weight: normal;
}

.news .news_area .date {
  font-size: 1.4rem;
}

.news .news_list_contents li a:hover {
  opacity: 1;
}

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


media


----------------------------------------*/
.media .news_list_contents li a {
  display: block;
  border: 1px solid #000;
}

.media .news_area .news_list_contents li a {
  display: flex;
  justify-content: space-between;
  padding: 10px;
}

.media .news_area .news_list_contents li a figure {
  width: 30%;
  max-width: 200px;
  padding-right: 20px;
  aspect-ratio: 13 / 9;
  overflow: hidden;
}

.media .news_area .news_list_contents li a .txt_area {
  width: 100%;
}

.media .news_area .news_list_contents li a::before {
  display: none;
}

.media .news_area .news_list_contents li h3 {
  padding-left: 0;
  margin-top: 10px;
}

.media .news_area .news_list_contents li h3::before {
  display: none;
}

.media .media_area .details img {
  max-width: 600px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*----------------------------------------
details
----------------------------------------*/
.news .news_area .news_details_title {
  padding: 50px 0;
}

.news .news_area .details {
  position: relative;
  padding: 50px 0 100px;
  margin: 0 auto;
}

.news .news_area h1 {
  margin-bottom: 20px;
  font-size: 2.6rem;
}

.wp-block-image {
  width: 80%;
  margin: 40px auto;
  max-width: 700px;
}

.news .news_area .details p {
  line-height: 2.0;
  padding-top: 20px;
}

.news .news_area .details p a {
  text-decoration: underline;
}

.news .news_area .details p a:hover {
  text-decoration: none;
}

/* 投稿の画像配置 */
.news .news_area .details img.alignright { display: block; margin: 0 0 10px auto; }/* 配置位置 左 */
.news .news_area .details img.alignleft { display: block; margin: 0 auto 10px 0; }/* 配置位置 右 */
.news .news_area .details img.aligncenter { display: block; margin: 0 auto 10px; }/* 配置位置 中央 */

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


blog


----------------------------------------*/
.blog {
  margin-bottom: 150px;
}

.blog .col_inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  /* flex-wrap: wrap; */
  padding: 50px 0 0;
}

.col_inner section {
  min-width: auto !important;
}

.blog .blog_area {
  max-width: 800px;
  width: 72.7%;
  margin: 0;
  padding-top: 0;
}

.blog.not404 .blog_area {
  margin: 0 auto;
}

.blog .side_area {
  max-width: 240px;
  width: 21.8%;
  padding-top: 0;
}

.blog .blog_area.recommend {
  padding: 80px 0;
}

.blog .blog_area h1 {
  font-size: 2.4rem;
  line-height: 1.5;
}

.blog .blog_area h3 {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.5;
  width: 100%;
  margin-bottom: 10px;
}

.blog .movie_area ul.blog_list_contents,
.blog .blog_area ul.blog_list_contents {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.blog .blog_area .list {
  margin: 0 0 10px 10px;
  width: calc(33.33% - 10px);
}

.movie .blog_area .list {
  margin-bottom: 50px;
}

.blog .blog_area .list * {
  transition: 0.3s;
}

.blog .blog_area .list a:hover {
  opacity: 1;
}

.blog .blog_area .list:hover * {
  color: #d7ccaf;
}

.blog .blog_area .list:nth-child(3n+1) {
  margin-left: 0;
}

.blog .blog_area .list .ph {
  height: 200px;
  overflow: hidden;
  margin-bottom: 10px;
}

.movie .movie_area .list .ph {
  position: relative;
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
}

.blog .blog_area .list .ph img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
}

.blog .blog_area .list .txt {
  line-height: 1.5;
}

.blog .blog_area .list .txt p {
  padding-top: 10px;
  font-size: 1.4rem;
  line-height: 1.8;
}

.blog .blog_area p.date {
  font-size: 1.2rem;
  padding-top: 0 !important;
  text-align: right;
}

.blog .blog_area .cate_area {}

.blog .blog_area .cate_area span {
  display: inline-block;
  background: #000;
  color: #fff;
  padding: 1px 10px 2px;
  text-align: center;
  margin-right: 5px;
  margin-bottom: 0;
  font-size: 1.1rem;
}

/*----------------------------------------
details
----------------------------------------*/
.blog .blog_area .details {
  position: relative;
  padding: 0 0 100px;
  max-width: 800px;
  margin: 0 auto;
}

.blog .blog_area .details .details_cate_area {
  display: flex;
  justify-content: space-between;

}

.blog .blog_area .details h1 {
  margin-bottom: 20px;
}

.blog .blog_area .details .ph,
.wp-block-image {
  width: 80%;
  margin: 40px auto;
  max-width: 700px;
}

.blog .blog_area .details .cate_area {
  width: 75%;
}

.blog .blog_area .details .cate_area span {
  font-size: 1.3rem;
}

.blog .blog_area .details p.date {
  position: relative;
  width: 100%;
  text-align: right;
  padding-bottom: 30px;
  font-size: 1.4rem;
}

.blog .blog_area .details p.date span {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  margin: 0;
}

.blog .blog_area .details p {
  line-height: 2.0;
  padding-top: 20px;
}

.addtoany_list {
  margin-top: 80px !important;
}

.a2a_svg {
  display: inline-block !important;
  margin: 0 5px;
}

.movie .movie_wrap {
  width: 100%;
  aspect-ratio: 16 / 9;

}

.movie .movie_wrap iframe {
  width: 100%;
  height: 100%;
}

.movie .movie_area .details h1 {
  margin-top: 30px;
}

/*----------------------------------------
side_area/related
----------------------------------------*/
.blog .side_area {}

.blog .side_area .side {
  margin-top: 20px;
}

.blog .side_area .side li {}

.blog .side_area .side li a {
  display: block;
  font-size: 1.4rem;
  border-bottom: 1px solid #000;
  padding: 8px 0;
}

.blog .side_area .side li a.current {
  border-bottom: 1px solid #d7ccaf;
}

.blog .side_area h3,
.blog .related h3 {
  font-size: 2.2rem;
  font-weight: 700;
}

.blog .related .ph figure,
.blog .side_area .ph figure {
  display: block;
  padding-top: 63.7%;
  overflow: hidden;
}

.blog .related .ph img,
.blog .side_area .ph img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
}

.blog .side_area p.date,
.blog .related p.date {
  font-size: 1.2rem;
  color: #777;
  text-align: right;
}

.blog .related p.date {
  display: block;
  margin: 0 0 10px;
}

.blog .side_area h4,
.blog .related h4 {
  font-size: 1.4rem;
  padding: 0 0 0 0;
}

.blog .side_area a:hover p,
.blog .side_area a:hover h4,
.blog .related a:hover p,
.blog .related a:hover h4 {
  opacity: 0.7;
}

/*----------------------------------------
related
----------------------------------------*/
.blog .related {
  padding: 100px 0;
}

.blog .related h2 {
  font-weight: 700;
  font-size: 5.0rem;
  margin-bottom: 20px;
}

.blog .related h3 {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.5;
  width: 100%;
  margin-bottom: 10px
}

/*----------------------------------------
archives_area
----------------------------------------*/
.side_area .archives_area select {
  width: 100%;
  border: 1px solid #000;
  height: 40px;
  padding: 3px;
}

/*----------------------------------------
search
----------------------------------------*/
.search_txt {
  width: calc(100% - 40px);
  border: 1px solid #000;
  padding: 10px;
  box-sizing: border-box;
  height: 40px;
}

.blog .side_area form span {
  display: inline-block;
  background: #000;
  padding: 5px 12px;
  height: 40px;
  width: 40px;
  box-sizing: border-box;
}

.blog .side_area input {
  padding: 0;
  background: transparent;
  border-radius: 0;
}

.serch_details {
  padding: 40px 0 40px 10px;
}

.serch_details li {
  padding: 0 0 20px;
  margin: 0 0 20px;
  border-bottom: 1px solid #e0e0e0;
}

@media screen and (max-width:750px) {

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


    404


    ----------------------------------------*/
  .not404 h1 {
    font-size: 3.9vw;
  }

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


    news


    ----------------------------------------*/
  .news {
    margin-bottom: 13.33333vw;
  }

  .news .news_list_contents {
    margin-top: 6vw;
  }

  .news .news_list_contents li h3 {
    font-size: 4.266666667vw;
    margin: 2vw 0;
  }

  .news .news_area .date {
    padding-top: 0 !important;
    font-size: 4vw;
  }

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


media


----------------------------------------*/
  .media .news_area .news_list_contents li a {
    padding: 2vw;
  }

  .media .news_area .news_list_contents li a figure {
    width: 30vw;
    max-width: 30vw;
    padding-right: 2.6666vw;
    aspect-ratio: 13 / 13;
    overflow: hidden;
  }

  .media .news_area .news_list_contents li a figure img {
    height: 100%;
    object-fit: cover;
  }

  .media .news_area .news_list_contents li a::before {
    display: none;
  }

  .media .news_area .news_list_contents li .date {
    position: static;
    font-size: 3.2vw;
    margin-bottom: 0;
  }

  .media .news_area .news_list_contents li h3 {
    padding-left: 0;
    margin-top: 1vw;
    font-size: 3.4vw;
  }

  .media .news_area .news_list_contents li h3::before {
    display: none;
  }

  .media .media_area .details img {
    max-width: 80%;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }

  /*----------------------------------------
    details
    ----------------------------------------*/
  .news .news_area .news_details_title {
    padding: 5vw 0;
  }

  .news .news_area .details {
    position: relative;
    padding: 8vw 0 13.3333vw;
  }

  .news .news_area .news_details_title .date {
    font-size: 4vw;
  }

  .news .news_area h1 {
    margin-bottom: 3vw;
    font-size: 4.8vw;
  }

  .wp-block-image {
    margin: 4vw auto;
  }

  .news .news_area .details p {
    padding-top: 1.5em;
  }

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


    blog


    ----------------------------------------*/
  .news {
    margin-bottom: 13.33333vw;
  }

  .blog .col_inner {
    display: block;
    padding: 6.666666667vw 0 13.333333vw;
  }

  .blog .blog_area {
    width: 100%;
    margin: 0;
    padding-bottom: 0;
  }

  .blog.not404 .blog_area {
    margin: 0 auto;
  }

  .blog .blog_area ul.blog_list_contents {
    display: block;
  }

  .blog .blog_area .list {
    margin: 0 0 8.66667vw;
    width: 100%;
  }

  .blog .side_area {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding-top: 0;
  }

  .blog .blog_area h1 {
    font-size: 4.8vw;
  }

  .blog .blog_area h3 {
    font-size: 4.266666667vw;
    padding: 0 0 1.33333vw;
    margin-bottom: 2vw;
  }

  .blog .blog_area .list .contents_area {
    display: block;
    margin-top: 1.33333vw;
  }

  .blog .blog_area .list .ph {
    width: 100%;
    height: auto;
    max-height: 100%;
    margin-right: 0;
  }

  .blog .blog_area .list .txt {
    width: 100%;
  }

  .movie .side_area .ph img {
    margin-top: -2.66666vw;
  }

  .blog .blog_area .list .txt p {
    padding-top: 2.66666vw;
    font-size: 3.733333333vw;
  }

  .blog .blog_area p.date {
    font-size: 3.2vw;
    padding-top: 0 !important;
    margin-right: 2.66666666vw;
  }

  .blog .blog_area .cate_area {
    padding: 0 2.66666666vw 0 0;
    margin-bottom: 1.066666667vw;
  }

  .blog .blog_area .cate_area span {
    padding: 1vw 1.333333vw 1vw;
    margin-right: 0.666666vw;
    font-size: 3.2vw;
    margin-bottom: 0.666666vw;
  }

  .blog .blog_area.recommend {
    padding: 10vw 0;
  }

  /*----------------------------------------
    details
    ----------------------------------------*/
  .blog .blog_area .details {
    padding: 0 0 13.333333vw;
  }

  .blog .blog_area .details .details_cate_area {
    display: block;
    justify-content: space-between;

  }

  .blog .blog_area .details h1 {
    margin-bottom: 2.6666666vw;
  }

  .blog .blog_area .details .ph,
  .wp-block-image {
    width: 80%;
    margin: 5.333333333vw auto;
  }

  .blog .blog_area .details .cate_area {
    width: 75%;
  }

  .blog .blog_area .details .cate_area span {
    font-size: 3.2vw;
  }

  .blog .blog_area .details p.date {
    padding-bottom: 4vw;
    font-size: 3.466666667vw;
  }

  .blog .blog_area .details p {
    padding-top: 2.66666vw;
  }

  .addtoany_list {
    margin-top: 80px !important;
  }

  .a2a_svg {
    display: inline-block !important;
    margin: 0 5px;
  }

  .movie .movie_area .details h1 {
    margin-top: 4vw;
  }
  

  /*----------------------------------------
    side_area/related
    ----------------------------------------*/
  .blog .side_area .side {
    display: block;
    width: 100%;
    padding: 0;
    margin-top: 4vw;
  }

  .blog .side_area .side ul {}

  .blog .side_area .side li {
    padding: 0 0 1.33333vw;
  }

  .blog .side_area h3 {
    font-size: 5.3333vw;
    margin: 0 0 2vw;
    width: auto;
  }

  .blog .side_area p.date,
  .blog .related p.date {
    font-size: 2.933333333vw;
    margin-bottom: 2vw;
  }

  .blog .related p.date {
    margin: 0 0 1.333333vw;
  }

  .blog .side_area h4,
  .blog .related h4 {
    font-size: 3.733333333vw;
    padding: 1.333333vw 0 0 0;
  }

  .blog .side_area .side li a {
    font-size: 3.73333vw;
    padding: 2vw 0;
  }

  /*----------------------------------------
    related
    ----------------------------------------*/
  .blog .related {
    padding: 13.333333vw 0;
  }

  .blog .related h2 {
    font-size: 5.3333vw;
    font-weight: 700;
    margin-bottom: 4vw;
  }

  .blog .related h3 {
    font-size: 3.4777vw;
  }

  .blog .search_area,
  .blog .archives_area {}

  .blog .side_area form,
  .blog .archives_area select {
    margin: 0 0 3vw 0;
  }

  /*----------------------------------------
    search
    ----------------------------------------*/
  .search_txt {
    width: calc(100% - 12vw);
    padding: 2.66666vw;
    box-sizing: border-box;
    height: 12vw;
    border-radius: 0;
  }

  .blog .side_area form span {
    padding: 2.5vw 3vw;
    height: 12vw;
    width: 12vw;
  }

  .serch_details {
    padding: 5.333333333vw 0 5.333333333vw 1.33333vw;
  }

  .serch_details li {
    padding: 0 0 2.66666vw;
    margin: 0 0 2.66666vw;
  }

}

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


contact


----------------------------------------*/
.contact_form_area .contact_box {
  max-width: 900px;
  margin: 0 auto 50px auto;
  padding: 30px;
  width: 90%;
}

.contact_form_area .inner {
  max-width: 900px;
}

.contact dl {
  display: flex;
}

.contact dl dt {
  width: 150px;
}

.contact dl dd {
  width: calc(100% - 150px);
}

.contact .btn_area {
  display: flex;
  justify-content: center;
  max-width: 650px;
  margin: 0 auto;
}

.sitename,
.post_id_txt {
  display: none;
}

.contact #form {
  padding: 0
}

.contact_policy_area {
  text-align: center;
  margin: 40px auto;
}

.contact_policy_area .checkbox-field {
  display: inline-block;
}

.form input:not(.radio),
.form textarea,
.form select {
  padding: 20px;
  background: #d4edf4;
  width: 100%;
  box-sizing: border-box;
  font-size: 1.4rem;
  color: #2e4065;
}

.sf-field-search input {
  min-width: 350px;
}

.form input:focus,
.form textarea:focus,
.form select:focus {
  background: #f4f8fb;
}

.contact dl {
  display: flex;
  justify-content: space-between;
  width: 100%;
  border-bottom: 1px solid #e0e0e0;
}

.contact dt {
  position: relative;
  width: 28%;
  min-width: 230px;
  padding: 25px 0 0;
}

.contact dd {
  width: 72%;
  min-width: calc(100% - 230px);
  padding: 25px 0;
}

.contact dd .aside {
  font-size: 14px;
  margin-top: 10px;
}

.contact .form_btn {
  max-width: 300px !important;
  width: 45% !important;
  margin: 0 auto;
}

.required,
.any {
  position: absolute;
  top: 27px;
  right: 20px;
  display: inline-block;
  font-size: 12px;
  font-weight: normal;
  color: #fff;
  padding: 0.25em 15px 0.2em;
  border-radius: 30px;
}

.required {
  background: #88cae1;
}

.any {
  background: #ccc;
}

.contact .reserve_date {
  margin-bottom: 15px;
}

.contact .select_time,
.contact .select_date {
  display: inline-block;
  width: 45% !important;
  max-width: 200px;
  margin-top: 5px;
  border-radius: 5px;
}

.contact .select_date {
  margin-right: 20px;
}

.contact .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 40px;
  width: 48%;
}

.mw_wp_form_input .reset_btn {
  display: none !important;
}

.form .sf-field-submit input,
.form .sf-field-reset input,
.form .confirm,
.form .reset {
  position: relative;
  display: block;
  background: #57bad8 !important;
  border-radius: 80px !important;
  padding: 20px !important;
  text-align: center;
  box-sizing: border-box;
  margin: 0 !important;
  max-width: 300px !important;
  letter-spacing: 0.2rem;
}

.form .sf-field-submit input,
.form .sf-field-reset input,
.form .confirm {
  color: #fff !important;
}

.form .sf-field-reset input,
.form .reset {
  display: block;
  background: #fff !important;
  min-width: 200px !important;
  color: #2e4065 !important;
  border: 2px solid #eef1f9 !important;
}

.form .sf-field-submit,
.form .sf-field-reset {
  display: table-cell;
  max-width: 300px !important;
  padding: 0;
  margin: 40px 10px !important;
}

input[type=checkbox],
input[type=radio],
input[type=file],
select,
input,
textarea,
input[type="submit"],
input[type="cancel"] {
  border-radius: 0;
}

input,
textarea {
  width: 100%;
  box-sizing: border-box;
  font-size: 1.6rem;
  padding: 13px;
  border: none;
  background: #f2f8ff;
  border-radius: 5px;
}

input[type=checkbox],
input[type=radio] {
  width: auto;
}

input[type=checkbox]:focus,
input[type=radio]:focus,
input[type=file]:focus,
select:focus,
label:focus,
input:focus,
textarea:focus,
input[type="submit"]:focus,
input[type="cancel"] :focus {
  outline: none;
}

.sf-level-0,
.mwform-radio-field,
.mwform-checkbox-field {
  position: relative;
  display: inline-block;
  cursor: pointer;
  padding-left: 30px;
  padding-right: 20px;
  margin-bottom: 8px;
}

.checkbox-field-text {
  font-weight: 700;
}

.contact_policy_area .mwform-checkbox-field {
  margin-right: 0 !important;
  padding-left: 10px !important;
}

.mwform-checkbox-field label {
  padding-top: 3px;
}

.searchandfilter li[data-sf-field-input-type="checkbox"] label,
.searchandfilter li[data-sf-field-input-type="radio"] label,
.searchandfilter li[data-sf-field-input-type="range-radio"] label,
.searchandfilter li[data-sf-field-input-type="range-checkbox"] label {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

.sf-level-0 input[type="checkbox"],
.mwform-checkbox-field label input[type="checkbox"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.sf-level-0 input[type="checkbox"]+label::before,
.sf-level-0 input[type="checkbox"]+label::after,
.mwform-checkbox-field label input[type="checkbox"]+span::before,
.mwform-checkbox-field label input[type="checkbox"]+span::after {
  position: absolute;
  top: 5px;
  left: 0;
  display: inline-block;
  content: '';
  box-sizing: border-box;
}

.sf-level-0 input[type="checkbox"]+label::before,
.mwform-checkbox-field label input[type="checkbox"]+span::before {
  z-index: 0;
  border-radius: 3px;
  background-color: #fff;
  width: 22px;
  height: 22px;
  border: 1px #999999 solid;
}

.sf-level-0 input[type="checkbox"]+label::after,
.mwform-checkbox-field label input[type="checkbox"]+span::after {
  z-index: 1;
  margin: 3px 8px;
  width: 8px;
  height: 11px;
}

.sf-level-0 input[type="checkbox"]:checked+label::before,
.mwform-checkbox-field label input[type="checkbox"]:checked+span::before {
  background-color: #fff;
}

.sf-level-0 input[type="checkbox"]:checked+label::after,
.mwform-checkbox-field label input[type="checkbox"]:checked+span::after {
  border-bottom: 2px solid #4a72ee;
  border-right: 2px solid #4a72ee;
  width: 8px;
  height: 11px;
  box-sizing: border-box;
  transform: rotate(45deg);
}

/* ラジオボタン */
.mwform-radio-field {
  position: relative;
  margin-left: 30px !important;
  margin-right: 20px;
  padding-left: 0 !important;
  top: 10px;
}

.mwform-radio-field label input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.mwform-radio-field label input[type="radio"]+span::before {
  position: absolute;
  display: inline-block;
  content: '';
  box-sizing: border-box;
  border-radius: 22px;
}

.mwform-radio-field label input[type="radio"]+span::before {
  z-index: 0;
  top: 2px;
  left: -28px;
  background-color: transparent;
  width: 22px;
  height: 22px;
  border: 1px #999999 solid;
}

.mwform-radio-field label input[type="radio"]:checked+span::before {
  background-color: #4a72ee;
}

.is-error {
  color: red;
  font-size: 1.4rem;
  padding-top: 5px;
}

@media only screen and (max-width:750px) {

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


    contact


    ----------------------------------------*/
  .contact_form_area .contact_box {
    margin: 0 auto 5.333333vw auto;
    padding: 4vw;
    box-sizing: border-box;
  }

  .contact dl {
    display: block;
  }

  .contact dl dt {
    width: 100%;
  }

  .contact dl dd {
    width: 100%;
  }

  .contact .reserve_date {
    margin-bottom: 2vw;
  }

  .contact .btn_area {
    display: flex;
    justify-content: center;
    max-width: 650px;
  }

  .contact #form {
    padding: 0
  }

  .contact_policy_area {
    text-align: center;
    margin: 5.333333333vw auto;
  }

  .contact_policy_area .checkbox-field {
    display: inline-block;
  }

  .form input:not(.radio),
  .form textarea,
  .form select {
    padding: 2.6666667vw;
    width: 100%;
    box-sizing: border-box;
    font-size: 1.4rem;
  }

  .sf-field-search input {
    min-width: 100%;
  }

  .contact dl {
    display: block;
  }

  .contact dt {
    width: 100%;
    padding: 3.333333333vw 0 0;
  }

  .contact dd {
    width: 100%;
    padding: 1.33333vw 0 3.333333333vw;
  }

  .contact dd .aside {
    font-size: 2.933333333vw;
    margin-top: 1.333333vw;
  }

  .contact .form_btn {
    max-width: 300px !important;
    width: 45% !important;
    margin: 0 auto;
  }

  .required,
  .any {
    position: relative;
    top: 0;
    right: 0;
    margin-left: 5px;
    display: inline-block;
    font-size: 2.733333333vw;
    font-weight: normal;
    color: #fff;
    padding: 0.66666vw 2.6666667vw;
    border-radius: 30px;
  }

  .required {
    background: #f4567d;
  }

  .any {
    background: #ccc;
  }

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

  .form .sf-field-submit input,
  .form .sf-field-reset input,
  .form .confirm,
  .form .reset {
    padding: 3.5vw !important;
    text-align: center;
    font-size: 3.733333333vw !important;
  }

  .form .sf-field-submit input,
  .form .sf-field-reset input,
  .form .confirm {
    color: #fff !important;
  }

  .form .sf-field-reset input,
  .form .reset {
    display: block;
    background: #fff !important;
    min-width: 48% !important;
    color: #2e4065 !important;
    border: 2px solid #eef1f9 !important;
  }

  .form .sf-field-submit,
  .form .sf-field-reset {
    display: table-cell;
    margin: 5.33333333vw 1% !important;
    width: 48% !important;
    min-width: 48%;
    box-sizing: border-box;
  }

  input,
  textarea {
    font-size: 3.733333333vw;
    padding: 2vw;
  }

  .sf-level-0 input[type="checkbox"]+label::before,
  .sf-level-0 input[type="checkbox"]+label::after,
  .mwform-checkbox-field label input[type="checkbox"]+span::before,
  .mwform-checkbox-field label input[type="checkbox"]+span::after {
    top: 7px;
  }

  .mwform-radio-field label input[type="radio"]+span::before {
    top: 2px;
  }

  .is-error {
    color: red;
    font-size: 3.733333333vw;
  }
}

body.page_form_vaser header,
body.page_form_vaser footer,
body.page_form_vaser .fixed_sns,
body.page_form_vaser .fixed_side_bnr,
body.page_form_vaser .reserve_area {
  display: none;
}

body.page_form_vaser .fv_title_area {
  height: 10vh;
  min-height: 250px;
}

@media all and (max-width: 767px) {
  body.page_form_vaser article {
    padding-top: 0 !important;
  }

  body.page_form_vaser .fv_title_area {
    min-height: 150px;
  }
}

/* 予約フォーム 230405 */
table#contact_table {
  margin: 0 auto 10px;
  width: 100%;
}

table#contact_table tr {
  border-bottom: 1px solid #ddd;
}

table#contact_table th,
table#contact_table td {
  padding: 10px 10px;
  vertical-align: middle;
  color: #fff;
}

table#contact_table th {
  width: 25%;
  font-weight: bold;
}

table#contact_table td {
  text-align: left;
  line-height: 1em;
}

table#contact_table td:first-of-type {
  width: 50px;
}

table#contact_table td p {
  line-height: 1.6em;
}

table#contact_table td span {
  border: none;
  width: auto;
}

table#contact_table td span.must {
  display: block;
  margin: 0 !important;
  padding: 2px 6px;
  background: #b29a59;
  font-size: 11px;
  color: #fff;
  text-align: center;
}

.mw_wp_form .error {
  display: block;
  color: #fff !important
}

input {
  padding: 5px;
  height: 50px;
  line-height: 50px;
}

input[type="radio"] {
  margin: 0 5px 0 10px;
  border: none;
  top: -2px;
  width: 15px;
  height: 15px;
}

.mwform-radio-field label {
  display: inline-block;
  margin-top: 10px;
  text-align: left;
}

.mwform-radio-field label input {
  float: left;
}

.mwform-radio-field label .mwform-radio-field-text {
  float: left;
  font-size: 17px;
}

.mw_wp_form .vertical-item {
  /*display: inline-block !important;*/
}

.mw_wp_form .horizontal-item+.horizontal-item {
  margin-left: 0 !important;
}

.mwform-checkbox-field label {
  float: left;
  display: inline-block;
  margin-right: 20px;
}

input[type="checkbox"] {
  margin: 0 5px 0 10px;
  border: none;
  top: -2px;
  width: 15px;
  height: 15px;
}

.mwform-checkbox-field label {
  width: 100%;
  height: 25px;
  text-align: left;
}

.mwform-checkbox-field label input {
  float: left;
}

.mwform-checkbox-field label .mwform-checkbox-field-text {
  float: left;
}

input[type="text"],
input[type="email"],
input[type="url"] {
  width: 100%;
  height: 50px;
  font-size: 16px;
}

td.full_input input[type="text"] {
  width: 100%;
}

.mwform-tel-field {
  width: 100%;
  border: none;
  text-align: left;
}

.mwform-tel-field input {
  width: 90px;
  height: 50px;
  font-size: 18px;
}

textarea {
  margin: 10px 0;
  width: 100%;
  height: 200px;
  font-size: 14px;
}

table#contact_table td.table_center {
  text-align: center;
  line-height: 1.2em;
}

table#contact_table td.table_center p {
  font-size: 14px !important;
  text-align: left;
  line-height: 1.4em !important;
}

table#contact_table td.table_center span {
  font-size: 13px;
}

input:focus {
  border: solid 1px #f7736e;
}

select {
  border-radius: 2px;
  min-width: 370px;
  height: 50px;
}

#ui-datepicker-div select {
  min-width: auto;
  height: auto;
}

select.ui-datepicker-year,
select.ui-datepicker-month {
  height: auto
}

.submit {
  margin: 0 auto;
  text-align: center;
}

.submit input {
  margin: 20px auto;
  padding: 20px 0 20px;
  width: 350px;
  height: 60px;
  border: none;
  background: #821926;
  font-size: 20px;
  color: #fff;
  cursor: pointer;
  line-height: 1;
}

.mw_wp_form_confirm .submit input {
  margin: 20px auto;
  padding: 10px 0 20px;
  width: 350px;
  height: 60px;
  border: none;
  background: #821926;
  font-size: 20px;
  color: #fff;
  cursor: pointer;
}

.mw_wp_form_confirm .back input {
  width: 200px;
  height: 50px !important;
  border: none;
  background: #888;
  overflow: hidden;
  cursor: pointer;
  color: #fff;
}

.back {
  margin: 0 auto 30px;
  text-align: center;
}

.thanks {
  margin: 0 auto 40px;
  padding: 20px 20px 10px;
  border: 1px solid #d4c298;
  font-size: 16px;
  text-align: center;
}

@media all and (max-width: 767px) {
  table#contact_table {
    margin: 0 auto 5%;
  }

  table#contact_table th,
  table#contact_table td {
    float: left;
    padding: 2% 2% 3%;
  }

  table#contact_table th {
    width: 70%;
    text-align: left;
  }

  table#contact_table th.td_center {
    width: 100%;
    text-align: center;
  }

  table#contact_table td:first-of-type {
    width: 20%;
  }

  table#contact_table td:nth-of-type(2) {
    width: 100%;
    text-align: center;
  }

  table#contact_table td span.must {
    text-align: center;
  }

  input {
    width: 100%;
  }

  input[type="text"],
  input[type="email"],
  input[type="url"] {
    width: 90%;
  }

  input[type="radio"] {
    margin: 0 0 0 10px;
  }

  .mwform-radio-field label {
    display: block;
    margin-bottom: 5px !important;
    text-align: left;
    line-height: 1.2;
  }

  .mwform-radio-field label .mwform-radio-field-text {
    float: none;
  }

  textarea {
    width: 90%;
    height: 200px;
  }

  input[type="number"] {
    width: 100px;
  }

  select {
    min-width: 100%;
    max-width: 100%;
    height: 50px;
  }

  .submit {
    margin: 0 auto;
    text-align: center;
  }

  .submit input {
    width: 90%;
  }

  .mw_wp_form_confirm .submit input {
    width: 90%;
  }

  .mw_wp_form_confirm .back input {
    width: 60%;
    font-size: 14px;
  }
}

/* 予約フォーム 230405ここまで */

/* 料金ページアコーディオン */
.menu_list_title{
        color: #43434b;
        background-color: #9a7d2f;
        padding: 10px 50px 10px 20px;
        position: relative;
        cursor: pointer;
}
	.menu_list_title::before,.menu_list_title::after{
        content: "";
        display: inline-block;
        width: 30px;
        height: 2px;
        background-color: #fff;
        position: absolute;
        top: 50%;
        right: 1.6rem;
        transform: translateY(-50%);
    }
	.menu_list_title .fo_normal { color: #fff; }
	.menu_list_title::after { transform: translateY(-50%) rotate(90deg); transition: all .3s; }    
   .menu_list_title.active::after{ transform: translateY(-50%) rotate(0deg); }
   .accordion_tableArea{ display: none; }
	section section.menu_price_area { padding: 20px 0; }
	.menu_price_wrap .lo_nav_nav_list, .menu_price_wrap .lo_nav_fixed_area, .menu_price_area:nth-of-type(2) { display: none; }

	.btn_accordion{
	  color: #fff;
      font-size: 16px;
      background-color: transparent;
      position: relative;
      padding-left: 30px;
      margin: 30px 0 0;
    }
    .btn_accordion::before{
      content: "";
      display: inline-block;
      width: 23px;
      height: 23px;
      border: 1px solid ;
      margin-right: 6px;
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
    }
    .btn_accordion.active::after{
      content: "";
      display: inline-block;
      width: 6px;
      height: 20px;
      border-right: 2px solid;
      border-bottom: 2px solid;
      transform: rotate(45deg);
      position: absolute;
      bottom: 4px;
      left: 10px;
    }
    .btn_accordion .close{
      display: none;
    }
    .btn_accordion.active .close{
      display: inline-block;
    }
    .btn_accordion.active .open{
      display: none;
    }
@media all and (max-width: 767px) {
	.btn_accordion {
		font-size: 14px;
        padding-left: 24px;
	}
	.btn_accordion::before {
        width: 17px;
        height: 17px;
	}
}



/*----------------------------------------
author
----------------------------------------*/
.author {
    height: auto;
    position: relative;
    width: 100%;
    margin: 0 auto;
    font-family: 'Noto sans Jp', sans-serif;
}
.author.open {
    min-height: 300px;
    position: relative;
    height: auto;
    max-height: initial;
    overflow: hidden;
}

.author.open .authorGradient {
    opacity: 0;
    z-index: -1;
}
.author .moreBtn {
    position: absolute;
    display: none;
    margin: 0 auto;
    border: 0;
    color: #a79861;
    background-color: transparent !important;
    cursor: pointer;
    z-index: 4;
    bottom: 12px;
    right: 17px;
    font-size: 13px;
}
.authorWrap {
    display: flex;
    flex-direction: column-reverse;
    border: 1px solid #a89762;
      position: relative;
    justify-content: end;
    line-height: 1.4;
    background: url("../../images/author/author-bg.png") center no-repeat;
    background-size: 44.9%;
    background-position: 99% 97%;
}
.author .authorLeft {
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
    z-index: 1;
    padding-right: 20px;
    padding-bottom: 12px;
}

.authorImg {
    max-width: 396px;
    width: 100%;
    display: flex;
    position: absolute;
    z-index: 2;
    box-sizing: border-box;
    bottom: 0;
    align-items: end;
}
.authorImg img {
    aspect-ratio: 393 / 447;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;    
    object-position: bottom;
}
.author .authorLeft .authorTitle {
    position: relative;
    position: absolute;
    top: 6px;
    right: 88px;
}
.author .authorLeft .authorTitle img {
    display: block;
    aspect-ratio: 459.9 / 116.097;
    width: 160.5px;
}
.author .authorLeft .authorMessage {
      max-width: 589px;
    width: 100%;
    z-index: 1;
    border: 1px solid #a89762;
    border-left: none;
    padding: 57px 10.3px 8.6px 392px;
    position: relative;
}
.author .authorLeft .authorMessage .message {
    font-size: 14px;
    line-height: 1.27;
    letter-spacing: 0.5px;
    color: #231916;
    text-align: justify;
}
.author .authorRight {
    margin-left: auto;
    width: 100%;
    margin-right: 0;
    display: flex;
    flex-direction: column;
    align-items: end;
    padding-bottom: 0;
}
.author .authorRight .authorHeader {
    width: 100%;
    display: flex;
    flex-direction: row;
    background-color: #a79861;
    font-weight: bold;
}
.author .authorHeader .authorHeaderTxt {
    color: white;
    min-width: 133px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.author .authorHeader .authorHeaderTxt.dr {
  padding-left: 10px;
  padding-top: 1px;
  letter-spacing: -0.5px;
  font-size: 16px;
}
.author .authorHeader .authorHeaderTxt.multi {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: unset;
  align-items: unset;
  padding-top: 9px;
  padding-bottom: 5px;
  min-width: 181px;
  font-weight: bold;
}
.author .authorHeader .authorHeaderTxt.multi .subText {
  font-size: 13px;
  letter-spacing: 0.4px;
  line-height: 1.4;
}
.author .authorHeader .authorHeaderTxt.multi .subText .big {
  letter-spacing: 0;
}
.author .authorHeader .authorHeaderTxt.multi .takao {
  display: flex;
}
.author .authorHeader .authorHeaderTxt.multi .takao .big {
  font-size: 22px;
    letter-spacing: -0.2px;
}
.author .authorHeader .authorHeaderTxt.multi .takao .fix {
  display: block;
  font-size: 15px;
  letter-spacing: 0;
  margin-top: auto;
  margin-left: 8px;
}
.author .authorRight .authorText {
    font-size: 15px;
    margin-top: 9px;
    padding-left: 309px;
    padding-right: 16px;
    line-height: 1.4;
    letter-spacing: 0.91px;
    padding-bottom: 25px;
    color: #231916;
    text-align: justify;
    min-height: 193px;
}
.author .authorHeader .linkIconWrap {
  max-width: 173px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.author .authorHeader .linkIconWrap .linkIcon {
  display: flex;
  background: none;
  max-width: 135px;
  width: 100%;
  margin-top: 0;
  padding: 2.5px;
}
.author .authorHeader .linkIconWrap .linkIcon li {
  margin-bottom: 0;
  
}
.author .authorHeader .linkIconWrap .linkIcon li a {
  padding: 0;
  border: 0;
  background: none;
}
.author .authorHeader .linkIconWrap .linkIcon li .insta {
    margin-top: 0px;
    margin-left: 0px;
}
.author .authorHeader .linkIconWrap .linkIcon li .ytb{
    margin-top: 2px;
    margin-left: 4px;
}
.author .authorHeader .linkIconWrap .linkIcon li .tiktok {
    margin-top: 2px;
    margin-left: 7px;
}
.author .authorHeader .linkIconWrap .linkIcon li .twitter {
    margin-top: 2px;
    margin-left: 7px;
}
.author .authorHeader .linkIconWrap .linkIcon li .insta img{
    max-width: 26px;
}
.author .authorHeader .linkIconWrap .linkIcon li .ytb img {
  max-width: 23px;
}
.author .authorHeader .linkIconWrap .linkIcon li .tiktok img {
  max-width: 23px;
}
.author .authorHeader .linkIconWrap .linkIcon li .twitter img {
  max-width: 23px;
}
.author .authorHeader .linkIconWrap .linkIcon li a::before{
  display: none;
}
.author .authorListWrap {
    width: 100%;
    margin-left: 25px;
    margin-top: -15px;
}
.author .authorList {
    font-size: 13px;
    line-height: 1.44;
    letter-spacing: 0;
    margin-bottom: 9px;
    color: #231916;
}
.author .authorList:last-child{
    margin-bottom: 0;
}
.author .authorList li {
    margin-bottom: 0;
}
.author .linkIcon li .iconHover:hover {
  background: none;
}
.author .linkIcon li .iconHover:hover img {
  opacity: 0.6;
  transition: 0.5s ease;
}
.author .moreBtn:hover {
    color: #000;
}
@media (max-width: 750px) {
  .author {
    max-height: 50vh;
    overflow: hidden;
  }
  .authorGradient {
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, transparent 66%, #F4F6F8 95%, #F4F6F8 100%);
    transition: opacity 0.1s ease;
    opacity: 1;
}
  .authorWrap {
      background-size: 85%;
      flex-direction: column-reverse;
  }
  .author .authorLeft{
      width: 100%;
      position: initial;
      flex-direction: column;
      padding-bottom: clamp(25px,5vw,35px);
      padding-right: 0;
  }
  .author .authorListWrap {
    order: 2;
  }
  .authorImg {
      order: 1;
      width: 60%;
      position: initial;
      float: unset;
      margin: 25px auto 0;
  }
  .author .authorLeft .authorMessage {
      order: 3;
      max-width: 100%;
      width: 100%;
      font-size: 16px;
      border-right: none;
      padding: clamp(72px,12vw,90px) 3.33vw 20px;
  }
  .author .authorLeft .authorTitle {
    max-width: 32vw;
    width: 100%;
    top: 18px;
    right: 50%;
    transform: translateX(50%);
  }
  .author .authorLeft .authorTitle img{
    max-width: unset;
    width: 100%;
  }
  .author .authorLeft .authorMessage .message {
    font-size: clamp(13px,3.8vw,24px);
  }
  .author .authorRight {
      width: 100%;
      padding-bottom: 0;
  }
  .author .authorRight .authorText {
      font-size: clamp(14px,3.8vw,28px);
      margin-left: 0;
      padding: 0 3.33vw;
      min-height: unset;
  }
  .author .authorListWrap {
      display: flex;
      width: 100%;
      justify-content: start;
      margin: 15px 0 ;
      padding: 0 3.33vw;
      column-gap: 20px;
      flex-wrap: wrap;
      row-gap: 25px;
  }
  .author .authorList {
    flex: 0 0 calc(50% - 10px);
    width: 50%;
  }
  .author .authorListWrap li {
      font-size: clamp(13px,3.8vw,24px);
  }
  .author .moreBtn {
    display: block;
    font-size: clamp(15px,2.8vw,20px);
  }
  .author.open .moreBtn {
      bottom: 5px;
  }
  .author .authorHeader {
    min-height: unset;
  }
  .author .authorHeader .authorHeaderTxt.dr {
    max-width: 175px;
    padding: 0 10px;
    min-width: 89px;
    font-size: clamp(14px, 3.8vw, 28px);
  }
  .author .authorHeader .authorHeaderTxt {
    max-width: 23.33vw;
  }
  .author .authorHeader .linkIconWrap {
    max-width: 23.33vw;
  }
  .author .authorHeader .authorHeaderTxt.multi {
    padding-bottom: 7px;
    min-width: clamp(175.61px, 43.4vw, 333px);
  }
  .author .authorHeader .authorHeaderTxt.multi .subText {
    font-size: clamp(14px,2.2vw,22px);
  }
  .author .authorHeader .authorHeaderTxt.multi .takao .big {
    font-size: clamp(18px,3.2vw,24px);
  }
  .author .authorHeader .authorHeaderTxt.multi .takao .fix {
    margin: auto 0 0 5px;
    font-size: clamp(14px,2.5vw,18px);
  }
}
@media (max-width: 550px) {
  .author .authorRight .authorHeader {
    flex-wrap: wrap;
  }
  .author .authorHeader .authorHeaderTxt.dr {
    font-size: clamp(20px,3.6vw,24px);
    flex-basis: 100%;
    max-width: unset;
    width: 100%;
    margin-top: 10px;
  }
  .author .authorHeader .authorHeaderTxt.multi {
    flex-basis: 60%;
    max-width: unset;
    margin-right: 1.33vw;
    margin-left: 3.33vw;
  }
  .author .authorHeader .authorHeaderTxt.multi .subText {
    letter-spacing: -0.1px;
  }
  .author .authorHeader .linkIconWrap {
    flex-basis: 40%;
    max-width: 32%;
  }
  .author .authorLeft .authorTitle {
    max-width: 42vw;
  }
  .author .authorHeader .linkIconWrap .linkIcon li .insta {
    margin-top: 0.7px;
  }
  .author .authorHeader .linkIconWrap .linkIcon li .ytb {
    margin-top: 3px;
  }
  .author .authorHeader .linkIconWrap .linkIcon li .tiktok {
    margin-top: 3px;
  }
  .author .authorHeader .linkIconWrap .linkIcon li .twitter {
    margin-top: 2px;
    margin-left: 4px
  }
}

/*----------------------------------------
TOC start
----------------------------------------*/
#toc_container {
  width: 100%;
  font-size: 100%;
  border-left: none;
  border-right: none;
  margin-top: 40px;
  margin-bottom: 55px;
  background:none;
  background: #f9f9f9;
}
#toc_container p.toc_title {
  text-align: left;
  background: #000;
  color: #f9f9f9;
  font-size: 28px;
  font-weight: bold;
  letter-spacing: 2.8px;
  padding: 20px 8px;
  margin-bottom: 9px;
}
#toc_container p.toc_title+ul.toc_list {
  margin-top: 0;
}
#toc_container .toc_list {
  margin: 0;
}
#toc_container .toc_list > li a{
  display: block;
  min-height: 18px;
  font-size: 19px;
  letter-spacing: 0.9px;
  line-height: 1.61;
	border: none;
	padding: 0;
  font-weight: bold;
	color: #141414;
  text-underline-offset: 3px;
  padding: 10px 8px;
  background: #f9f9f9;
}
#toc_container .toc_list > li a:hover {
	background:none;
	color:#000;
  opacity: 1;
}
#toc_container .toc_list > li a::before {
	display:none;
}
#toc_container .toc_list ul {
  margin-top: 10px;
  margin-left: 20px;
}
#toc_container .toc_list ul li {
    font-size: 18px;
}
#toc_container .toc_list ul li:not(:last-child) {
    margin-bottom: 10px;
}
#toc_container + h2 {
    margin-top: 0;
}
@media (max-width: 750px) {
  #toc_container {
    padding: clamp(25px, 10vw, 40px) 0;
  }
  #toc_container p.toc_title {
    font-size: clamp(13.3px,3.2vw,26.7px);
    letter-spacing: 1.8px;
    line-height: 1.6;
    margin-bottom: 24px;
    padding: 20px 8px;
  }
  #toc_container .toc_list > li a{
    text-align: left;
    font-size: clamp(13.3px,3.2vw,26.7px);
  }
  #toc_container .toc_list ul {
      margin: 5px 0 0 15px;
  }
  #toc_container .toc_list ul li {
      font-size: clamp(14px,2.5vw,18px);
  }
  #toc_container .toc_list ul li:not(:last-child) {
      margin-bottom: clamp(5px, 2vw, 15px);
  }
}
/*----------------------------------------
TOC end
----------------------------------------*/


.news .news_area .details h2 {
    border-left: #93836a 4px solid;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 15px;
    border-bottom: #111 0px solid;
    font-size: 22px;
    font-weight: 600;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    margin: 20px 0;
}