.flex{
  display: flex;
}
.layout07_name-text{
  width: 100%;
  flex: 1;
}
.layout07_name-text span{
  display: block;
  text-align: left;
}
.layout07_profile_list dt{
  font-weight: bold;
}
.layout07_profile_list dd{
  margin-bottom: 16px;
}
.layout07_profile_list dd:last-child{
  margin-bottom: 0;
}
.text-bold{
  font-weight: bold;
}
.access-content{
  margin-top: 24px;
}
.access-list dt{
  font-weight: bold;
}
.btn .btn-orange{
  display: inline-block;
  background: #f8b048;
  color: #fff;
  text-decoration: none;
  padding: 12px 24px;
  border-radius: 9999px;
  transition: .4s ease background;
}
.btn .btn-orange:hover{
  background: #f8e870;
}
.btn-center{
  text-align: center;
}
.access-map iframe{
  width: 100%;
  margin: 24px 0;
}
.layout04_list a{
  display: block;
  margin-bottom: 16px;
}
.layout04_list li a{
  text-decoration: none;
  flex-direction: column;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex: 1 1 33%;
  gap: 32px;
  transition: all .4s ease;
}
.layout04_list li a figure{
  overflow: hidden;
  display: block;
  flex: none;
}
.layout04_list li a img{
  transition: transform .4s ease,opacity .4s ease;
}
.layout04_list li a:hover img{
  transform: scale(1.1);
  opacity: 0.8;
}
.contents-image{
  overflow: hidden;
  border-radius: 40px;
}
.contents-image img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.text-center{
  text-align: center !important;
}
.txt-left{
  text-align: left !important;
}
.mt-24{
  margin-top: 24px !important;
}
.section_title-sub{
  font-size: clamp(28px, 7.46vw + 7px, 28px);
}
.page01 .layout07_name_en img{
  max-width: 100%;
  width: auto;
}
.page02 .layout05_list .inner figure{
  max-width: 100%;
  width: 100px;
  margin-inline: auto;
  margin-bottom: 8px;
}
.tbl{
  margin-bottom: 24px;
  max-width: 1024px;
  margin-inline: auto;
}
.tbl table{
  width: 100%;
  border-collapse:collapse;
  background: #fff;
}
.tbl table th{
  width: 15%;
  text-align: left;
}
.tbl table th,.tbl table td{
  padding: 16px;
  border: 1px solid #ccc;
}
.tbl_time{
  max-width: 1024px;
  margin-inline: auto;
}
.tbl_time table{
  width: 100%;
  border-collapse:collapse;
  background: #fff;
}
.tbl_time table th,.tbl_time table td{
  padding: 16px;
  border: 1px solid #ccc;
  text-align: center;
}
.aqua{
  color: #28a0c8;
}
.layout02_step h3.title_aqua,.title_aqua{
  color: #28a0c8;
  font-size: clamp(32px, 4.17vw + 5px, 40px);
  font-weight: 500;
  line-height: 140%;
  margin-bottom: 24px;
  text-align: center;
  display: block;
}
.red{
  color: #e05098;
}
.layout07_content.column-reverse .layout07_profile{
  z-index: 2;
  margin-left: 0;
  z-index: 2;
}
.layout07_content.column-reverse .layout07_image{
  margin-left: -10%;
}
.page01 .section_philosophy .layout02_desc,.page01 .section_philosophy .layout07_content{
  margin-bottom: 0;
}
.section_foundation .layout07_profile, .section_foundation .section_inner, .section_foundation .layout07_content{
  margin-bottom: 0;
}
.section_philosophy .layout02_desc > div{
  padding-bottom: 0;
}
.section_director .layout07_content{
  margin-bottom: 0;
}
.section_director .layout07_content.column-reverse{
  margin-top: clamp(48px, 6.25vw + 8px, 64px);
}
.page02 .mv_frame h1{
  white-space: unset;
  line-height: 130%;
}
.section_tour .layout02_step h3{
  font-size: 28px;
}
.section_control .layout04_list{
  align-items: flex-start;
}
.page03 .access-section__footer{
  margin-top: 0;
}
.page03 .access-section{
  padding-top: 0;
}
.page06 .info .title_sub{
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 24px;
  text-align: center;
}
.page06 .info .flex{
  justify-content: center;
  gap: 24px;
}
.page06 .info .box{
  border-radius: 40px;
  padding: 20px 40px;
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 400px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.page06 .info .box .tel{
  font-size: 32px;
  font-weight: bold;
  color: #f8b048;
  text-align: center;
}
.page06 .info .box dl{
  display: flex;
  justify-content: start;
}
.page06 .info .box dl dt{
  font-weight: bold;
}
.btn_submit{
  border-radius: 20px;
  min-width: 400px;
  background: #f8b048;
  color: #fff;
  border: none;
  display: block;
  line-height: 60px;
  font-size: 32px;
  padding: 16px;
  margin-inline: auto;
  margin-top: 56px;
}
.page04 .section_child .layout05_list .inner{
  align-items: start;
  padding-top: 40px;
}
.page04 .section_child .layout05_list li figure{
  max-width: 100%;
  width: 100px;
  height: auto;
  margin-inline: auto;
}
.page04 .section_child .layout05_list li img{
  width: 100%;
  height: auto;
}
.page04 .section_faq .box dl{
  padding: 32px 48px;
margin-bottom: 64px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.page04 .section_faq .box{
  margin-bottom: 64px;
}
.page04 .section_faq .box dl:last-child,.page04 .section_faq .box:last-child{
  margin-bottom: 0;
}
.page04 .section_faq .box dl dt{
  font-weight: bold;
  margin-bottom: 16px;
}
.page04 .section_menu .layout02_step > div{
  padding: 32px 48px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.page04 .section_denture .layout02_step p{
  max-width: 1024px;
  margin: 0 auto;
  text-align: center;
}
.page04 .section_faq .section_title + p{
  margin-bottom: 40px;
}
.page04 .section_faq .title_aqua{
  margin-bottom: 40px;
}
.page05 .section_belongings .title_aqua{
  margin-bottom: 96px;
}
.page05 .section_belongings .layout03_list_text{
  padding-left: 80px;
  padding-right: 80px;
}
.page05 .section_belongings h3{
  margin-bottom: 16px;
}
.page05 .section_belongings .inner2{
  max-width: 1024px;
  margin-inline: auto;
}
.page05 .section_second .section_inner{
  max-width: 1280px;
}
.page05 .layout04 h2 + p{
  margin-bottom: 0;
}

.page05 .section_second .box{
  padding: 56px 80px;
  margin-top: 64px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.page05 .section_second .box h3{
  margin-bottom: 16px;
}
.page05 .layout03_list_item:nth-child(odd) .layout03_list_text{
  margin-left: 0;
  margin-top: 0;
}
.section_page04_top .section_lead{
  max-width: 1024px;
  margin: 0 auto 48px;
}
.page06 .section_page06_top .layout03_list_item .layout03_list_text p{
  margin-top: 0;
}
.page06 .section_page06_top .layout03_list_item .layout03_list_text h3{
  margin-bottom: 16px;
}
.page06 .section_form .section_form_text{
  text-align: center;
  margin-bottom: 16px;
}
/* タブレット */
@media (max-width: 1024px) {
  .section_equipment .layout05_list,.page04 .section_child .layout05_list {
    flex-direction: column;
    gap: 24px;
  }
  .page04 .section_child .layout05_list .inner{
    align-items: center;
    padding-top: 0;
  }
  .section_equipment .layout05_list li:nth-child(odd) ,.page04 .section_child .layout05_list li:nth-child(odd){
    flex: 1 1 100%;
    margin-left: 30%;
    margin-top: -7%;
  }
  .section_equipment .layout05_list li:nth-child(even),.page04 .section_child .layout05_list li:nth-child(even) {
    flex: 1 1 100%;
    margin-right: 30%;
    margin-top: -7%;
  }
  .page04 .section_child .layout05_list li:first-child{
    margin-top: 0;
  }
  .page06 .info .flex{
    flex-direction: column;
  }
  .btn_submit,.page06 .info .flex .box{
    min-width: 100%;
  }
  .page06 .info .box dl{
    flex-direction: column;
  }
}

/* スマホ */
@media (max-width: 767px) {
  .layout07_name-text span{
    font-size: clamp(16px, 1.8vw + 2px, 16px);
  }
  .access-content{
    display: block;
  }
  .tbl table th{
    border-bottom: none;
  }
  .tbl table th,.tbl table td{
    display: block;
    width: 100%;
  }
  .tbl_time table th,.tbl_time table td{
    padding: 8px;
  }
  .page01 .section_access .contents-image{
    margin-top: 24px;
  }
  .section_director .layout07_content.column-reverse{
    margin-top: 0;
    flex-direction: column-reverse;
  }
  .section_director .layout07_content.column-reverse .layout07_image img{
    border-radius: 40px 0 0 40px;
  }
  .layout07_content.column-reverse .layout07_image{
    margin-left: 24px;
    margin-right: -24px;
    flex: 1 1 80%;
  }
  .section_control .section_lead{
    padding-bottom: 0;
    margin-bottom: 32px;
    text-align: left !important;
  }
  .section_find .section_lead{
    text-align: left !important;
  }
  .page04 .section_child .layout05_list {
    gap: 24px;
  }
  .page04 .section_child .layout05_list li:nth-child(odd){
    margin-left: 0;
    margin-top: 5%;
  }
  .page04 .section_child .layout05_list li:nth-child(even){
    margin-right: 0;
    margin-top: 5%;
  }
  .page04 .section_menu .layout02_step > div {
    max-width: 100%;
    width: 100%;
  }
  .page04 .section_denture .layout02_step p{
    text-align: left;
  }
  .page02 .mv_frame{
    padding: 32px 48px;
  }
  .layout02_step:nth-of-type(even) > *:nth-child(2){
    padding: 0;
  }
  .section_equipment .layout05_list li:nth-child(odd) ,.page04 .section_child .layout05_list li:nth-child(odd){
    margin-left: 0;
    margin-right: -24px;
    padding: 16px;
  }
  .section_equipment .layout05_list li:nth-child(even), .page04 .section_child .layout05_list li:nth-child(even){
    margin-left: -24px;
    margin-right: 0;
    padding: 16px;
  }
  .page04 .section_child .layout05_list li{
    padding: 0;
    margin-top: 0!important;
  }
  .page02 .section_control .section_title,.page03 .layout01 .section_title{
    margin-bottom: 24px;
  }
  .page04 .section_page04_top .section_title{
    margin-bottom: 40px;
  }
  .page04 .section_page04_top .btn{
    margin-top: 32px;
  }
  .page04 .section_menu .layout02_step > div{
    padding: 24px;
  }
  .page04 .section_menu .layout03_list_text li::before{
    width: 24px;
    flex: 0 0 24px;
  }
  .page04 .section_cavity .layout02_step{
    gap: 8px;
  }
  .page04 .section_faq .section_inner{
    padding-top: 64px;
  }
  .page04 .section_faq .section_title + p{
    margin-bottom: 40px;
  }
  .page04 .section_faq .title_aqua{
    margin-bottom: 40px;
  }
  .page05 .section_belongings .layout03_list_text{
    padding: 0;
  }
  .page05 .section_belongings .title_aqua{
    margin-bottom: 24px;
  }
  .page05 .section_belongings h3{
    margin-bottom: 8px;
  }
  .page05 .section_second .section_inner{
    padding: 48px 24px;
  }
  .page05 .section_second .box{
    padding: 32px;
  }
  .page05 .section_second .box h3{
    margin-bottom: 8px;
  }
  .page06 .section_page06_top .section_inner{
    padding-top: 132px;
  }
  .page06 .section_page06_top .layout03_list_item .layout03_list_text h3{
    margin-bottom: 8px;
  }
  .page06 .section_page06_top .layout03_list_text li::before{
    width: 24px;
    flex: 0 0 24px;
  }
  .page06 .section_page06_top .layout03_list_text li span{
    font-size: 24px;
    line-height: 150%;
  }
  .page06 .section_form .layout06 .section_inner{
    padding-top: 64px;
  }
  .page06 .section_form .layout06 .section_inner .section_title{
    margin-bottom: 48px;
  }
  .page06 .section_form .section_form_text{
    margin-bottom: 24px;
    text-align: left;
  }
  .page04 .section_child .layout05_list{
    gap: 0;
  }
  .page06 .section_form .section_inner{
    padding-top: 64px;
  }
  .page06 .section_form .section_inner .section_title{
    margin-bottom: 48px;
  }
}