/*------------------------------------------------------------
	index
------------------------------------------------------------*/
@media all and (min-width: 769px) and (max-width: 1279px) {
  .fix-list {
    top: 10.3rem;
  }
}
/* memo 1339 */
@media all and (max-width: 768px) {
    .header-logo {
    width: 75vw;
    }
  .main-visual-bg {
    height: 46.2rem;
    background-image: url(../images/index/webp/main_visual_img_sp.webp);
  }
  .no-webp .main-visual-bg {
    background-image: url(../images/index/main_visual_img_sp2.jpg);
  }
  .main-visual__sub {
    left: 3rem;
    bottom: 3.6rem;
  }
  .main-visual__txt {
    margin: 0 0 1.2rem -3rem;
    padding: 0 0 0.6rem 3rem;
    width: 23.4rem;
    font-size: 1.7rem;
  }
  .main-visual__num {
    font-size: 3.5rem;
  }
  .main-visual__ttl {
    font-size: 3.1rem;
    line-height: 1.58;
    letter-spacing: 0.155rem;
  }
  .main-visual__ttl__en {
    margin-top: 0.9rem;
    font-size: 1.1rem;
    letter-spacing: -0.048rem;
  }
  .solution {
    padding: 4.1rem 2.5rem 0;
  }
  .solution-box {
    width: auto;
  }
  .solution-box__pho {
    width: 21.3rem;
    margin: 1.9rem -3.8rem 0 auto;
    position: static;
  }
  .solution-box__text {
    width: auto;
  }
  .solution__ttl {
    margin-bottom: 1.7rem;
    font-size: 2.4rem;
    text-align: center;
    letter-spacing: 0.12rem;
    background-position: center top;
  }
  .solution-list__item {
    padding: 4.1rem 0 0;
    margin-bottom: 1.5rem;
    font-size: 1.7rem;
    line-height: 1.88;
    letter-spacing: 0.085rem;
    background-position: top center;
  }
  .reasons {
    padding-bottom: 0;
  }
  .reasons-box {
    margin-bottom: 2.85rem;
  }
  .reasons-box--last {
    margin-bottom: 5.75rem;
  }
  .reasons-info__pho {
    width: auto;
    margin: 0 auto;
  }
  .reasons-sub {
    margin: 0;
    width: auto;
    padding: 2.1rem 0 0;
    border: none;
  }
  .reasons-sub__ttl {
    margin-bottom: 1.5rem;
    font-size: 2rem;
    letter-spacing: 0.1rem;
  }
  .reasons-sub__text {
    letter-spacing: 0.09rem;
  }
  .quality {
    padding-bottom: 0;
  }
  .quality-page-wid {
    border-bottom-width: 11.4rem;
  }
  .quality-box {
    padding: 0;
  }
  .quality-headline01 {
    margin-bottom: 3.3rem;
  }
  .quality__img {
    margin: 3.2rem 0 0;
  }
  .sedation {
    padding-bottom: 0;
  }
  .sedation-page-wid {
    border-bottom-width: 11.4rem;
  }
  .sedation-box {
    padding: 3.4rem 0 6rem;
  }
  .sedation-box__info__ttl {
    margin: -0.1rem 0 1.6rem;
  }
  .sedation-box__info__note {
    margin-bottom: 1.7rem;
    font-size: 1.2rem;
    line-height: 1.66;
  }
  .case {
    padding-bottom: 0;
  }
  .case-page-wid {
    border-bottom-width: 8.3rem;
  }
  .case-box {
    margin: -0.3rem 0 5rem;
  }
  .case-box--last {
    margin-bottom: 4.6rem;
  }
  .case-headline02 {
    margin-bottom: 1.1rem;
  }
  .case-list {
    display: block;
  }
  .case-list::before {
    background-image: url(../images/common/icon11_sp.svg);
    height: 4rem;
  }
  .case-list__item {
    margin-bottom: 4.8rem;
    width: auto;
  }
  .case-list__item--last {
    margin-bottom: 0;
  }
  .case-info {
    display: block;
  }
  .case-left {
    width: auto;
    padding: 2.1rem 0 0rem;
  }
  .case-left__ttl {
    font-size: 2rem;
    letter-spacing: 0.1rem;
  }
  .case-left__text {
    letter-spacing: 0.09rem;
  }
  .case-right {
    width: auto;
  }
  .case-ul__item {
    padding: 0.7rem 0 0.8rem;
    letter-spacing: 0.09rem;
  }
  .case-ul__ttl {
    margin-bottom: 0.4rem;
  }
  .staff {
    padding-bottom: 0;
  }
  .staff-page-wid {
    border-bottom-width: 15rem;
  }
  .staff-box {
    padding: 2rem 0 6.6rem;
  }
  .staff-box__ttl {
    margin-bottom: 2.2rem;
    font-size: 1.7rem;
    letter-spacing: 0.085rem;
  }
  .staff-box__name {
    margin-top: 0.9rem;
    font-size: 2.4rem;
    letter-spacing: 0.12rem;
  }
  .staff-box__title {
    font-size: 2rem;
    line-height: 1.4;
    letter-spacing: 0.1rem;
  }
  .staff-box__text {
    margin-bottom: 3.6rem;
    letter-spacing: 0.09rem;
  }
  .flow {
    margin-bottom: 0;
  }
  .flow-page-wid {
    border-bottom-width: 5.3rem;
  }
  .flow-box {
    padding: 0.2rem 0 1.3rem;
  }
  .flow-list__item {
    padding-bottom: 4.65rem;
    background-position: center bottom;
  }
  .flow-list__step {
    margin-bottom: 2.1rem;
    font-size: 3.2rem;
    letter-spacing: 0.28rem;
  }
  .flow-info {
    display: block;
  }
  .flow-info__pho {
    width: auto;
  }
  .flow-sub {
    width: auto;
    margin-top: 1.4rem;
  }
  .flow-sub__ttl {
    margin-bottom: 1.5rem;
    font-size: 2rem;
    letter-spacing: 0.1rem;
  }
  .flow-sub__text {
    letter-spacing: 0.09rem;
  }
  .price {
    padding-bottom: 0;
  }
  .price-page-wid {
    border-bottom-width: 11.4rem;
  }
  .price-box {
    padding: 3.3rem 0 6rem;
  }
  .price-info {
    margin: 5rem 0 3.9rem;
    padding: 2.4rem;
  }
  .price-info-red {
    width: auto;
    margin: 0 auto 2.3rem;
    padding: 3rem 0 3.7rem;
  }
  .price-info__ttl {
    margin-bottom: -1.2rem;
    font-size: 2rem;
    letter-spacing: 0.1rem;
  }
  .price-info__text {
    font-size: 9rem;
  }
  .price-info__txt {
    margin: 4rem 0 0 1.5rem;
    font-size: 2.4rem;
    letter-spacing: 0.17rem;
  }
  .price-info__sml {
    margin: 0.5rem 0 0;
    font-size: 1.9rem;
  }
  .price-box__text {
    margin-bottom: 2.3rem;
    font-size: 2rem;
    letter-spacing: 0.1rem;
    line-height: 1.35;
  }
  .price-box__txt {
    margin-top: 1.6rem;
  }
  .price-sub {
    margin: 0 -0.6rem 3rem;
    display: block;
  }
  .price-sub-left {
    margin-bottom: 4rem;
    width: auto;
  }
  .price-sub__ttl {
    margin-bottom: 1.6rem;
    text-align: left;
    font-size: 2rem;
    letter-spacing: 0.1rem;
  }
  .price-sub__ttl__img {
    margin: -0.2rem 0.9rem 0 0;
  }
  .price-list__item {
    min-height: 6.8rem;
    margin-bottom: 0.8rem;
  }
  .price-list__item:not(.price-list__item--last)::before {
    display: none;
  }
  .price-list__text {
    letter-spacing: 0.09rem;
  }
  .price-sub-right {
    width: auto;
  }
  .price-info__note {
    margin: 0;
    padding: 1.7rem 0.5rem 1.6rem;
    text-align: left;
    line-height: 1.66;
    font-size: 1.2rem;
  }
  .price-inner__img {
    width: auto;
    margin: 0 auto 3.2rem;
  }
  .price-ul {
    display: block;
  }
  .price-ul__item {
    margin-bottom: 3.3rem;
    width: auto;
    padding: 0 1.2rem 0 1.5rem;
  }
  .price-ul__item--last {
    margin-bottom: 0;
  }
  .price-ul__ttl {
    margin-bottom: 1.8rem;
    font-size: 2rem;
    letter-spacing: 0.1rem;
  }
  .price-ul__text {
    letter-spacing: 0.09rem;
  }
  .faq {
    padding: 1.1rem 0 5.2rem;
  }
  .faq__ttl {
    margin-bottom: 3.3rem;
    background: none;
  }
  .faq__title {
    margin-bottom: 1.7rem;
    font-size: 2rem;
    letter-spacing: 0.1rem;
    line-height: 1.35;
  }
  .faq__text {
    margin-bottom: 2.4rem;
    letter-spacing: 0.09rem;
  }
  .faq-list__item {
    margin-bottom: 0.8rem;
    padding: 0.9rem 2.4rem 0.8rem;
  }
  .faq-list__ttl {
    padding: 1.5rem 0 1.5rem 5.3rem;
    font-size: 1.7rem;
    line-height: 1.88;
    letter-spacing: 0.085rem;
  }
  .faq-list__ttl::before,
  .faq-list__text::before {
    top: 50% !important;
    font-size: 2.4rem;
    transform: translateY(-70%);
  }
  .faq-list__text {
    padding: 1.6rem 0 1.6rem 7.5rem;
    letter-spacing: 0.09rem;
  }
  .faq-list__text::before {
    left: 2.6rem;
  }

	.sec-intro{ padding: 57px 20px 55px; }
	.sec-intro .bg01{ right: 0; width: 200px; }
	.sec-intro ul li{ width: 100%; font-size: 1.8rem; padding: 17px 0 12px 36px; font-feature-settings: 'palt'; background-size: 28px; background-position: left top 13px; }
	.sec-intro ul li:nth-of-type(n+2){ border-top: solid 1px #efefef; }
	.sec-intro ul li:nth-of-type(1){ order: 0; }
	.sec-intro ul li:nth-of-type(2){ order: 3; }
	.sec-intro ul li:nth-of-type(3){ order: 2; }
	.sec-intro ul li:nth-of-type(4){ order: 4; }

	.sec-comment{ padding: 70px 0 55px; }
	.sec-comment .arrow{ width: 100px; }
	.sec-comment img.main01{ width: 100%; border-radius: 15px; margin: 0 0 30px; }
	.sec-comment h2{ width: 100vw;  margin-bottom: 20px; }
    .sec-intro h2, .sec-comment h2{
        font-size: 2.2rem;
    }
    .sec-comment p{
        font-size: 1.4rem!important;
    }
    
	footer{ width: 100%; padding-bottom: 5.5rem; }
	footer .bg{ padding: 4.5rem 0 5rem; }
	footer .bg .logo{ margin-bottom: 3rem; }
	footer .bg.hirao .logo{ width: 28.85rem; }
	footer .bg.hakata .logo{ width: 34rem; }
	footer .bg .left{ width: 100%; margin-bottom: 3.5rem; }
	footer .bg .left iframe{ height: 24.5rem; }
	footer .bg .right{ width: 100%; }
	footer .bg .right a.resv{ font-size: 1.7rem; height: 6.5rem; width: 100%; }
	footer .bg .right .sns{ justify-content: center; }
	footer .bg .right .sns li img{ width: 1.9rem; }
	footer .bg .right .sns li + li{ margin-left: 2.8rem; }
	footer .copy{ display: block; width: 100%; text-align: center; font-size: 10px; letter-spacing: 0; padding: 1em 0; }
    .wrap {
        width: 100%;
        padding-left: 1.75rem;
        padding-right: 1.75rem;
    }
   .sec-comment .content {
        padding: 2rem!important;
    }
.quality-box h2.general{
    font-size: 2.5rem!important;
    margin-bottom: 4rem;
    margin-top: 0;
}
    .com-box__list {
        padding: 2rem;
    }
    .quality__img{
        padding: 2rem;
    }
 
    .l-doctor__history dd{
       width: calc(100% - 7rem); font-size: 12px;
    }
    .l-doctor__history dt{ font-size: 12px; }
    .l-doctor__gap{
            gap: 1.6rem;
        }
    .l-doctor__gap .l-doctor__history{
        width: 100%; margin-top: 0;
       
    }
    .dr_box{
    margin: 15px 0;
}
    .certificate_position{ bottom:2rem; left: auto; right: 1.5rem; bottom: 22rem; }
    .certificate_position p{ font-size: 10px; letter-spacing: 0; }
    .certificate_position .certificate img{ width: 100px;}
    .l-cta__title span{ font-size: 1.8rem; margin-bottom: 1.5rem; }
    .flex_wrap .img_box{ width: 50%;}
    .flex_wrap .text_box{ width: 50%; padding-left: 1.5rem; font-size: 14px; }
    .scroll-content .item{ width: 100%; }
    .scroll-content .item + .item{ margin-left: 2rem; }
    .scroll-box .l-flow__item{ padding-right: 2rem; }
    
    .mv .mv-slide li.swiper-slide .inner.small_font .first-catch .txt-wrap,
    .mv .mv-slide li.swiper-slide .inner.small_font .first-catch,
    .mv .mv-slide li.swiper-slide .inner.small_font .point-list li{ font-size: 14px; }
    .mv .mv-slide li.swiper-slide .inner.small_font .main-catch{ font-size: 18px; }
    .mv .mv-slide li.swiper-slide .inner.small_font .main-catch span{ font-size: 42px; }
    
    .case_wrap table th, .case_wrap table td{ font-size: 12px; padding: 8px 6px; }
    .l-doctor__history ul li{ font-size: 12px;}
    
   
    
    
}