@media only screen and (min-width: 319px) and (max-width: 768px) {
    .home_page .key {
        --height: min(136.53vw, 600px);
        --max-height: min(136.53vw, 600px);
        --min-height: min(136.53vw, 600px);
        width: calc(100% - min(5.33vw, 50px));
    }
    .home_page .key .slider {
        --mask: url(../images/idx-main-mask-sp.png);
        mask-image: var(--mask);
        -webkit-mask-image: var(--mask);
        mask-repeat: no-repeat;
        -webkit-mask-repeat: no-repeat;
        mask-size: 100% 100%;
        -webkit-mask-size: 100% 100%;
        mask-position: center;
        -webkit-mask-position: center;
        background: url(../images/idx-main-img01-sp.jpg) no-repeat center;
        background-size: cover;
    }
    .home_page .key .slider.s2 {
        background: url(../images/idx-main-img02-sp.jpg) no-repeat top center;
        background-size: cover;
    }
    .home_page .key .catch {
             padding: 17px 0px;
        margin: 25em auto 0;
        max-width: 58em;
    }
    .home_page .key .catch .title span {
        font-size: min(5.27vw, 28px);
    }

    .home_page .key .catch>p:last-child {
        font-size: min(3.43vw, 15px);
        text-shadow: 0 1px 5px rgba(0, 0, 0, 1);
        font-weight: 400;
        height: min(58.67vw, 250px);
		text-align:center;
		margin:0;
    }
    .home_page .key .idx-box-news {
        font-size: initial;
        max-width: min(66.93vw, 500px);
        bottom: min(2.67vw, 10px);
    }
    .home_page .key .idx-box-news .idx-fx-news {
        margin-bottom: min(5.33vw, 20px);
    }
    .home_page .key .idx-box-news .idx-fx-news .ttl {
        font-size: 20px;
        letter-spacing: 0;
    }
    .home_page .key .idx-box-news .idx-fx-news .idx-btn {
        bottom: 0;
    }
    .home_page .key .idx-box-news .idx-fx-news .idx-btn a {
        font-size: 12px;
    }
    .home_page .key .idx-box-news .idx-fx-news .idx-btn a:after {
        margin-left: 20px;
    }
    .iHealth:before {
        display: none;
    }
    .home_page .key .idx-box-news ul li {
        margin-bottom: min(4.8vw, 18px);
    }
    .home_page .key .idx-box-news ul li a .date {
        font-size: min(2.93vw, 13px);
        letter-spacing: 0;
    }
    .home_page .key .idx-box-news ul li a .ttl {
        font-size: min(3.47vw, 15px);
    }
    .home_page .idx-ttl-en {
        margin-bottom: -28px;
        font-size: min(14.6vw, 65px);
        letter-spacing: 0;
        font-weight: 300;
    }
    .home_page h2 {
        font-size: min(5.33vw, 24px);
    }
    .iMenu {
        padding-top: 90px;
        padding-bottom: 153px;
    }
    .iMenu:before {
        top: 0;
        background: url(../images/idx-menu-bg-sp.png) no-repeat center;
        background-size: 100% 100%;
        width: 100%;
        min-height: 100%;
    }
    .iMenu .inner_big:before {
        right: -106px;
        top: -87px;
        background: url(../images/idx-menu-ico12-sp.svg) no-repeat center;
        background-size: contain;
        width: 185px;
        height: 144px;
        z-index: -1;
    }
    .iMenu-ttl {
        margin-bottom: 24px;
    }
    .iMenu-list:before {
        left: -103px;
        top: -90px;
        background: url(../images/idx-menu-ico11-sp.svg) no-repeat center;
        background-size: cover;
        width: 177px;
        height: 171px;
        z-index: -1;
    }
    .iMenu-list li {
        width: calc(50% - 5px);
        max-width: 162px;
        margin-right: 10px !important;
        min-height: auto;
        margin-bottom: 10px;
    }
    .iMenu-list li:nth-child(2n) {
        margin-right: 0 !important;
    }
    .iMenu-list li:last-child a:after {
        right: -36px;
    }
    .iMenu-list li:last-child a:before {
        right: 7px;
    }
    .iMenu-list li a {
        padding-top: 12px;
        padding-bottom: 15px;
    }
    .iMenu-list li a .ico {
        margin-bottom: 0;
    }
    .iMenu-list li a .ico img {
        height: 55px;
        width: auto;
    }
    .iMenu-list li a .ttl {
        font-size: min(4.27vw, 16px);
    }
    .iMenu-list li a:after {
        width: 65px;
        height: 65px;
        right: -32px;
        bottom: -33px;
    }
    .iMenu-list li a:before {
        right: 10px;
        bottom: 9px;
    }
    .iUnwell {
        padding-top: 0;
        padding-bottom: 69px;
    }
    .iUnwell-fx-ttl {
        padding-left: 10px;
        padding-right: 40px;
        position: relative;
        margin-top: -47px;
        margin-bottom: 22px;
    }
    .iUnwell-fx-ttl .img {
        position: absolute;
        width: min(48.8vw, 212px);
        height: min(27.2vw, 132px);
        right: -26px;
        bottom: -67px;
    }
    .iUnwell-ttl {
        padding-top: 0;
        margin-right: 0;
    }
    .iUnwell-ttl h2 {
        font-size: min(5.87vw, 24px);
        margin-bottom: 0;
    }
    .iUnwell-fx {
        padding: 0;
        flex-direction: column;
    }
    .iUnwell-fx:after {
        bottom: -194px;
        right: -110px;
        background: url(../images/idx-unwell-ico02.svg) no-repeat center;
        background-size: cover;
        width: 270px;
        height: 260px;
    }
    .iUnwell-fx .img {
        height: min(53.33vw, 300px);
        margin-right: 20px;
        margin-left: -10px;
        width: 100%;
        margin-bottom: 22px;
    }
    .iUnwell-fx .img img {
        height: 100%;
        object-fit: cover;
        object-position: top left;
    }
    .iUnwell-cnt {
        padding: 0 10px;
        position: relative;
        z-index: 1;
    }
    .iUnwell-cnt .txt {
        margin-bottom: 20px;
    }
    .iUnwell-cnt .txt>p {
        font-size: 16px;
    }
    .iUnwell-cnt .idx-list-btn li {
        width: calc(50% - 5px);
        max-width: 162px;
        margin-right: 10px;
        margin-bottom: 10px;
    }
    .iUnwell-cnt .idx-list-btn li:nth-child(2n) {
        margin-right: 0;
    }
    .iUnwell-cnt .idx-list-btn li a {
        min-width: 100%;
        min-height: 60px;
        font-size: min(4.27vw, 16px);
        padding-left: 20px;
        letter-spacing: 0;
        border-radius: 30px;
    }
    .iUnwell-cnt .idx-list-btn li a:before {
        right: 13px;
    }
    .iUnwell-frame {
        margin-top: 18px;
        width: calc(100% - 20px);
        border-radius: 15px;
        max-width: 500px;
    }
    .iUnwell-frame-fx {
        padding: 37px 20px 0;
        flex-direction: column;
    }
    .iUnwell-frame-fx .box-cnt {
        margin-right: 0;
        padding-top: 0;
    }
    .iUnwell-frame-fx .box-cnt .box-ttl {
        padding-right: 0;
        background: url(../images/idx-unwell-hr-sp.svg) no-repeat bottom center;
        background-size: 100% 3px;
        margin-bottom: 18px;
    }
    .iUnwell-frame-fx .box-cnt .box-ttl:before {
        right: -31px;
        top: -6px;
        width: min(22.93vw, 100px);
        height: min(23.47vw, 98px);
    }
    .iUnwell-frame-fx .box-cnt .box-ttl h2 {
        font-size: min(5.33vw, 24px);
    }
    .iUnwell-frame-fx .box-cnt .txt {
        margin-bottom: 20px;
    }
    .iUnwell-frame-fx .box-cnt .txt>p {
        font-size: 16px;
        letter-spacing: 0;
    }
    .iUnwell-frame-fx .box-cnt .idx-list-btn li {
        width: calc(50% - 5px);
        margin-right: 10px;
        margin-bottom: 10px;
    }
    .iUnwell-frame-fx .box-cnt .idx-list-btn li:nth-child(2n) {
        margin-right: 0;
    }
    .iUnwell-frame-fx .box-cnt .idx-list-btn li a {
        min-height: 60px;
        border-radius: 30px;
        font-size: min(4.27vw, 16px);
        padding-left: min(4vw, 15px);
    }
    .iUnwell-frame-fx .box-cnt .idx-list-btn li a:before {
        right: min(3.2vw, 12px);
    }
    .iUnwell-frame-fx .box-frame {
        width: calc(100% + 40px);
        left: 50%;
        transform: translate(-50%);
        position: relative;
        margin-top: 19px;
        border-radius: 15px;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
    }
    .iUnwell-frame-fx .box-frame .ttl02 {
        font-size: min(4.8vw, 18px);
        line-height: 1.4em;
        color: #fff;
        text-align: center;
        background: #ae8fc2;
        font-weight: 300;
        padding-top: 16px;
        letter-spacing: 0;
        padding-bottom: 16px;
        border-bottom-left-radius: 15px;
        border-bottom-right-radius: 15px;
    }
    .iUnwell-frame-fx .box-frame .cnt {
        padding: 26px min(5.33vw, 20px);
    }
    .iUnwell-frame-fx .box-frame .cnt .ttl {
        margin-bottom: 18px;
    }
    .iUnwell-frame-fx .box-frame ul li {
        font-size: min(4.27vw, 16px);
        margin-bottom: 19.5px;
        line-height: 1.3em;
        letter-spacing: -0.5px;
    }
    .iUnwell-frame-fx .box-frame ul li:before {
        width: min(4.27vw, 16px);
        height: min(4.27vw, 16px);
        margin-right: min(1.87vw, 7px);
        flex-shrink: 0;
        top: 3px;
    }
    .home_page .idx-ttl-en02 {
        font-size: 12px;
        letter-spacing: 0;
    }
    .iHealth {
        padding: 65px 10px 60px;
        background: url(../images/idx-health-bg-sp.jpg) no-repeat center;
        background-size: cover;
    }
    .iHealth-ttl {
        margin-bottom: 15px;
    }
    .iHealth-ttl h2 {
        line-height: 1.6em;
    }
    .iHealth-ttl .idx-ttl-en02 {
        letter-spacing: -1px;
    }
    .iHealth .txt {
        margin-bottom: 22px;
    }
    .iHealth .txt>p {
        letter-spacing: 0;
        font-size: min(4.27vw, 16px);
    }
    .iHealth .idx-list-btn {
        flex-wrap: wrap;
    }
    .iHealth .idx-list-btn li {
        width: calc(50% - 5px);
        max-width: 162px;
        margin-bottom: 10px;
        margin-right: 10px !important;
    }
    .iHealth .idx-list-btn li:nth-child(2n) {
        margin-right: 0 !important;
    }
    .iHealth .idx-list-btn li a {
        min-height: 60px;
        min-width: 100%;
        border-radius: 30px;
        font-size: min(4.27vw, 16px);
        padding-left: 20px;
        padding-top: 5px;
        padding-bottom: 5px;
    }
    .iHealth .idx-list-btn li a:before {
        right: 10px;
    }
    .iTreatment {
        padding-top: 64px;
        padding-bottom: 70px;
    }
    .iTreatment:before {
        content: "";
        position: absolute;
        left: 50%;
        transform: translate(-50%);
        top: 0;
        background: url(../images/idx-treatment-bg-sp.png) no-repeat center;
        background-size: 100% 100%;
        width: 100.5vw;
        height: 100%;
    }
    .iTreatment-fx-ttl {
        flex-direction: column;
    }
    .iTreatment-ttl {
        margin-right: 0;
        margin-bottom: 29px;
    }
    .iTreatment-ttl h2 {
        font-size: min(5.87vw, 24px);
        line-height: 1.45em;
    }
    .iTreatment-list li {
        width: calc(33.3333333333% - 5px);
        margin-right: 10px;
        min-width: auto;
        max-width: 100%;
    }
    .iTreatment-list li:last-child {
        margin-right: 0;
    }
    .iTreatment-list li a {
        min-height: auto;
        padding-top: 31px;
        padding-bottom: 30px;
        border-radius: 15px;
    }
    .iTreatment-list li a .ico {
        margin-bottom: 7px;
    }
    .iTreatment-list li a .ico img {
        height: min(13.33vw, 50px);
        width: auto;
    }
    .iTreatment-list li a .ttl {
        font-size: min(4.27vw, 16px);
    }
    .iTreatment-list li a:before {
        right: 9px;
        bottom: 9px;
    }
    .iTreatment-list li a:after {
        width: 65px;
        height: 65px;
        right: -32px;
        bottom: -32px;
    }
    .iTreatment-frame {
        width: calc(100% - 20px);
        padding-bottom: 40px;
        margin-top: 186px;
        max-width: 500px;
    }
    .iTreatment-frame .box-txt {
        width: calc(100% - 40px);
        margin: 0 auto;
        top: -157px;
        padding: 22px min(3vw, 20px);
        margin-bottom: -133px;
        border-radius: 15px;
    }
    .iTreatment-frame .box-txt>p {
        font-size: min(4.25vw, 16px);
        line-height: 1.9em;
    }
    .iTreatment-frame-fx {
        flex-direction: column;
        position: relative;
        margin-top: 0;
        padding: 0;
    }
    .iTreatment-frame-fx .img01,
    .iTreatment-frame-fx .img02 {
        position: absolute;
        padding: 0;
    }
    .iTreatment-frame-fx .img01 {
        width: min(17.87vw, 67px);
        height: min(40.27vw, 151px);
        top: -52px;
        left: 14px;
    }
    .iTreatment-frame-fx .img02 {
        width: min(22.13vw, 83px);
        height: min(39.73vw, 149px);
        top: -52px;
        right: 2px;
    }
    .iTreatment-frame-fx .cnt h3 {
        font-size: 20px;
        padding-bottom: 22px;
        margin-bottom: 18px;
    }
    .iTreatment-frame-fx .cnt .txt {
        margin-bottom: 20px;
    }
    .iTreatment-frame-fx .cnt .txt>p {
        font-size: min(4.27vw, 16px);
    }
    .iTreatment-frame-fx .cnt .idx-btn02 a {
        min-height: 60px;
        font-size: min(4.27vw, 16px);
        padding-left: 20px;
        border-radius: 30px;
    }
    .iTreatment-frame-fx .cnt .idx-btn02 a:before {
        right: 15px;
    }
    .iTreatment-bg,
    .iTreatment-bg02 {
        height: 9.38em;
    }
    .iTreatment-medical-fx {
        flex-direction: column;
        padding: 0 10px 0;
        padding-top: 89px;
    }
    .iTreatment-medical-fx:before {
        content: "";
        position: absolute;
        left: 10px;
        right: 0;
        bottom: -100px;
        margin: 0 auto;
        background: url(../images/idx-medical-ico.svg) no-repeat center;
        background-size: contain;
        width: min(25.33vw, 130px);
        height: min(29.33vw, 150px);
        z-index: 3;
    }
    .iTreatment-medical-fx .img {
        display: none;
    }
    .iTreatment-medical-fx .box-cnt h2 {
        font-size: min(5.87vw, 24px);
    }
    .iTreatment-medical-fx .box-cnt .idx-ttl-en02 {
        letter-spacing: 0.02em;
    }
    .iTreatment-medical-fx .box-cnt .img {
        display: block;
        height: min(53.33vw, 300px);
        margin-left: -20px;
        margin-right: 0;
        margin-bottom: 24px;
    }
    .iTreatment-medical-fx .box-cnt .img img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
    .iTreatment-medical-fx .box-cnt .txt>p {
        font-size: min(4.27vw, 16px);
    }
    .iTreatment-medical-fx .box-cnt .idx-box-tab {
        max-width: 500px;
        margin: 31px auto 0;
        padding: 30px 20px 6px;
    }
    .iTreatment-medical-fx .box-cnt .idx-box-tab .TabPager {
        min-width: 100%;
    }
    .iTreatment-medical-fx .box-cnt .idx-box-tab .TabPager li {
        font-size: min(4.27vw, 16px);
        height: 50px;
        padding: 9px 10px;
    }
    .iTreatment-medical-fx .box-cnt .idx-box-tab .TabPager li.active {
        height: 60px;
    }
    .iTreatment-medical-fx .box-cnt .idx-box-tab .idx-list-link {
        margin-top: 22px;
    }
    .iTreatment-medical-fx .box-cnt .idx-box-tab .idx-list-link .btn-link {
        margin-right: 15px;
        width: calc(50% - 8px);
        margin-bottom: 20px;
    }
    .iTreatment-medical-fx .box-cnt .idx-box-tab .idx-list-link .btn-link a {
        font-size: min(4.27vw, 16px);
        line-height: 1.5em;
        padding-bottom: 15px;
    }
    .iTreatment-medical-fx .box-cnt .idx-box-tab .idx-list-link .btn-link a:before {
        right: 0;
        width: 11px;
        height: 8px;
        top: 0;
        bottom: 15px;
        margin: auto 0;
    }
    .iTreatment-home {
        padding-top: 63px;
    }
    .iTreatment-home:before,
    .iTreatment-home:after {
        width: 33px;
        height: 30px;
        top: -30px;
        background: url(../images/idx-home-bg01-sp.png) no-repeat left center;
        background-size: 100% auto;
    }
    .iTreatment-home:after {
        top: initial;
        bottom: -60px;
        background: url(../images/idx-home-bg02-sp.png) no-repeat center;
        background-size: 100% auto;
        width: 66px;
        height: 60px;
        left: initial;
        right: 0;
    }
    .iTreatment-home-fx {
        padding: 0 20px 69px;
        flex-direction: column;
    }
    .iTreatment-home-fx .img {
        margin-right: -22px;
        position: relative;
        z-index: 1;
        height: min(53.33vw, 300px);
    }
    .iTreatment-home-fx .img:before {
        content: "";
        position: absolute;
        top: -170px;
        right: -260px;
        background: url(../images/idx-medical-ico01-sp.svg) no-repeat center;
        background-size: contain;
        width: 324px;
        height: 272px;
        z-index: -1;
    }
    .iTreatment-home-fx .img:after {
        content: "";
        position: absolute;
        bottom: -30px;
        left: -110px;
        background: url(../images/idx-medical-ico02-sp.svg) no-repeat center;
        background-size: contain;
        width: 214px;
        height: 160px;
        z-index: -1;
    }
    .iTreatment-home-fx .img img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
    .iTreatment-home-fx .box-cnt {
        padding-top: 0;
    }
    .iTreatment-home-fx .box-cnt:before {
        left: initial;
        right: 0px;
        bottom: -108px;
        background: url(../images/idx-home-ico03.svg) no-repeat center;
        background-size: 100% auto;
        width: min(45.87vw, 172px);
        height: min(44.27vw, 166px);
        z-index: 1;
    }
    .iTreatment-home-fx .box-cnt h2 {
        margin-bottom: 2px;
        font-size: min(5.87vw, 24px);
    }
    .iTreatment-home-fx .box-cnt .idx-ttl-en02 {
        letter-spacing: 0;
        margin-bottom: 22px;
    }
    .iTreatment-home-fx .box-cnt .txt {
        margin-top: 23px;
    }
    .iTreatment-home-fx .box-cnt .txt>p {
        font-size: min(4.27vw, 16px);
        letter-spacing: -0.5px;
    }
    .iTreatment-home-fx .box-cnt .idx-btn02 {
        width: fit-content;
        margin-left: 0;
        margin-top: 20px;
        max-width: 162px;
        width: 100%;
    }
    .iTreatment-home-fx .box-cnt .idx-btn02 a {
        min-width: 100%;
        min-height: 60px;
        border-radius: 30px;
        padding-left: 17px;
        font-size: min(4.27vw, 16px);
    }
    .iTreatment-home-fx .box-cnt .idx-btn02 a:before {
        right: 13px;
    }
    .idx_gallery {
        margin-top: -30px;
    }
    .idx_gallery .item img {
        width: 320px;
        height: 330px;
    }
    .iFeature {
        position: relative;
        padding-top: 71px;
        margin-top: -51px;
    }
    .iFeature:before {
        content: "";
        position: absolute;
        left: 50%;
        transform: translate(-50%);
        top: 0;
        background: url(../images/idx-bg-feature-sp.png) no-repeat top center;
        background-size: 100% auto;
        height: 66px;
        width: 101%;
    }
    .iFeature .inner_big {
        padding: 0 20px;
    }
    .iFeature .inner_big:before {
        right: -27px;
        top: 60px;
        background: url(../images/idx-feature-ico01-sp.svg) no-repeat center;
        background-size: contain;
        width: 106px;
        height: 89px;
    }
    .iFeature-ttl {
        margin-bottom: 66px;
    }
    .iFeature-list {
        max-width: 100%;
    }
    .iFeature-list li {
        width: 100%;
        margin: 0 auto 71px !important;
        padding-bottom: 23px;
    }
    .iFeature-list li:first-child:after {
        left: -193px;
        top: -117px;
        background: url(../images/idx-feature-ico02-sp.svg) no-repeat center;
        background-size: contain;
        width: 236px;
        height: 226px;
        z-index: -2;
    }
    .iFeature-list li:nth-child(2):after {
        right: initial;
        left: -121px;
        bottom: -58px;
        background: url(../images/idx-feature-ico03-sp.svg) no-repeat center;
        background-size: contain;
        width: 202px;
        height: 150px;
        z-index: -2;
    }
    .iFeature-list li:nth-child(3):after {
        right: -164px;
        bottom: -139px;
        top: initial;
        background: url(../images/idx-feature-ico04-sp.svg) no-repeat center;
        background-size: contain;
        width: 236px;
        height: 226px;
        z-index: -2;
    }
    .iFeature-list li:nth-child(5):after {
        left: -122px;
        top: initial;
        bottom: -55px;
        background: url(../images/idx-feature-ico05-sp.svg) no-repeat center;
        background-size: contain;
        width: 204px;
        height: 172px;
        z-index: -2;
    }
    .iFeature-list li:nth-child(6):after {
        right: -117px;
        bottom: -127px;
        background: url(../images/idx-feature-ico06-sp.svg) no-repeat center;
        background-size: contain;
        width: 236px;
        height: 226px;
        z-index: -2;
    }
    .iFeature-list li:before {
        top: -39px;
    }
    .iFeature-list li:last-child {
        margin-bottom: 0 !important;
    }
    .iFeature-list li .stt {
        margin-top: -30px;
        font-size: 47px;
        margin-bottom: 7px;
    }
    .iFeature-list li .stt span img {
        width: min(13.87vw, 62px);
        height: auto;
    }
    .iFeature-list li .img {
        height: min(45.33vw, 250px);
        padding: 0 20px;
        margin-bottom: 17px;
    }
    .iFeature-list li .img img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
    .iFeature-list li .cnt {
        padding: 0 20px;
    }
    .iFeature-list li .cnt h3 {
        font-size: min(4.8vw, 20px);
        text-align: center;
        line-height: 1.4em;
        margin-bottom: 7px;
    }
    .iFeature-list li .cnt .txt>p {
        font-size: min(4.27vw, 16px);
    }
    .iGreeting {
        position: relative;
        z-index: 1;
        margin-top: -1px;
        padding-top: min(50.4vw, 200px);
        padding-bottom: 0;
    }
    .iGreeting:before {
        top: 0;
        left: 50%;
        transform: translate(-50%);
        background: url(../images/idx-bg-greeting-sp.png) no-repeat top center;
        background-size: 100% 100%;
        width: 100%;
        height: 100%;
        z-index: -1;
    }
    .iGreeting-fx {
        flex-direction: column;
        padding: 0;
    }
    .iGreeting-img {
        margin-left: -20px;
        margin-right: 44px;
    }
    .iGreeting-img:after {
        display: none;
    }
    .iGreeting-img:before {
        left: -230px;
        top: -120px;
        bottom: initial;
        background: url(../images/idx-greeting-ico03-sp.png) no-repeat center;
        background-size: cover;
        width: 375px;
        height: 362px;
        z-index: -1;
        filter: brightness(0) invert(1);
    }
    .iGreeting-img .img {
        height: min(80vw, 400px);
    }
    .iGreeting-img .img img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
    .iGreeting-img .box-name {
        background: #fff;
        writing-mode: tb-rl;
        color: var(--main-color);
        position: absolute;
        right: -44px;
        bottom: -29px;
        border-radius: 0.625em;
        padding: 17px 11px;
    }
    .iGreeting-img .box-name .sub-name {
        font-size: min(4.27vw, 16px);
    }
    .iGreeting-img .box-name .name {
        font-size: min(5.87vw, 24px);
    }
    .iGreeting-img .box-name .name span {
        font-size: 14px;
    }
    .iGreeting-cnt {
        padding-top: 30px;
        padding-bottom: 60px;
        z-index: 1;
    }
    .iGreeting-cnt:before {
        right: -20px;
        top: initial;
        bottom: 0;
        background: url(../images/idx-greeting-img02.jpg) no-repeat center;
        background-size: cover;
        width: min(40vw, 150px);
        height: min(53.33vw, 200px);
        z-index: -1;
    }
    .iGreeting-cnt:after {
        right: initial;
        bottom: initial;
        top: 247px;
        left: -30px;
        background: url(../images/idx-greeting-ico02-sp.png) no-repeat center;
        background-size: contain;
        width: 189px;
        height: 287px;
        mix-blend-mode: multiply;
        z-index: -1;
    }
    .iGreeting-cnt h2 {
        font-size: min(5.87vw, 24px);
        line-height: 1.7em;
        margin-bottom: 15px;
    }
    .iGreeting-cnt .txt {
        margin-bottom: 20px;
    }
    .iGreeting-cnt .txt>p {
        font-size: min(4.27vw, 16px);
    }
    .iGreeting-cnt .idx-list-btn li {
        max-width: 162px;
        margin-bottom: 10px;
    }
    .iGreeting-cnt .idx-list-btn li a {
        min-height: 60px;
        font-size: min(4.27vw, 16px);
        padding-left: 20px;
        border-radius: 30px;
    }
    .iGreeting-cnt .idx-list-btn li a:before {
        right: 12px;
    }
    .iGreeting .inner_big {
        padding: 0 20px;
    }
    .txt-animation {
        left: 0;
        top: min(33.33vw, 125px);
    }
    .txt-animation span {
        font-weight: 400;
        font-size: min(16vw, 70px);
    }
}

@media only screen and (max-width: 640px) {
    .home_page .key {
        font-size: 1.5vmin;
    }
}

@media only screen and (max-width: 768px) and (orientation: landscape) {
    .home_page .key {
        font-size: 1.5vmin;
    }
}

@media only screen and (max-width: 768px) {
    .home_page h3 {
        margin-bottom: 30px;
        font-size: calc(var(--ttl_size) - 2px);
    }
}

@media only screen and (max-width: 768px) {
    .index0 {
        padding: 60px 0px 60px;
        background-color: #000;
    }
    .index07 {
        padding: 60px 0px 55px;
    }
    .index07 .content {
        flex-direction: column;
        align-items: center;
    }
    .index07 .content .box {
        margin-bottom: 5px;
        width: 100%;
        padding: 40px 5%;
        max-width: 680px;
    }
    .index07 .content .btn-group {
        max-width: 150px;
        width: 44%;
    }
    .index07 .content li {
        max-width: 100%;
    }
    .index07 .content li a {
        padding: 20px 0;
    }
    .index07 .content li a .date {
        width: 7em;
    }
    .index07 .content li a .title {
        width: calc(100% - 7em);
    }
    .iGreeting .idx-list-btn {
        max-width: 335px;
    }
}

@media only screen and (min-width: 639px) and (max-width: 768px) {
    .iFeature {
        margin-top: -65px;
    }
    .iHealth .idx-list-btn li:nth-child(2n) {
        margin-right: 10px !important;
    }
    .iMenu-list li:nth-child(2n),
    .iUnwell-cnt .idx-list-btn li:nth-child(2n) {
        margin-right: 10px !important;
    }
    .idx-list-btn {
        max-width: 350px;
        margin: 0 auto;
    }
    .iGreeting .idx-list-btn {
        margin-right: auto;
        margin-left: 0;
        max-width: 400px;
    }
    .iGreeting-img {
        max-width: 450px;
        margin: 0 auto;
    }
    .iGreeting-cnt {
        padding-top: 30px;
        padding-bottom: 120px;
        z-index: 1;
    }
    .iTreatment-medical-fx {
        padding: 0 10px 40px;
    }
}


/*# sourceMappingURL=index_sp.css.map */