@media only screen and (max-width: 768px) {
    .home_page .key {
        --height: 84vw;
        --max-height: none;
        --min-height: 320px;
        font-size: initial;
        margin-bottom: 30px;
        height: auto;
    }
    .home_page .key:before {
        right: 2px;
        top: min(calc(var(--height) - 96px), 284px);
        width: 118px;
        height: 125px;
        max-width: 16em;
        bottom: auto;
    }
    .home_page .key .mv_slider {
        max-height: 386px;
        width: calc(100% - 40px);
        height: var(--height);
        min-height: var(--min-height);
        margin: 0 auto;
        border-top-left-radius: min(21.33vw, 80px);
        border-top-right-radius: min(21.33vw, 80px);
        border-bottom-left-radius: min(8vw, 30px);
        border-bottom-right-radius: min(8vw, 30px);
    }
    .time_mv {
        padding: 1em 20px;
        font-size: min(14px, calc((100vw - 40px) / 30));
    }
    .home_page .key .mv_slider:before {
    }
    .home_page .key .slick-track {
        height: 100%;
    }
    .home_page .key .key_text .item {
        padding: 10px 0;
        height: var(--height);
        max-height: 100%;
        min-height: 320px;
        align-items: flex-start;
        padding-top: min(90px, 20vw);
    }
    .home_page .key .key_text .item .inner {
        margin-left: 0;
        margin-right: auto;
    }
    .home_page .key .key_text .item .catch .title {
        font-size: min(6.4vw, 22px);
        letter-spacing: 0;
        line-height: 1.75em;
        margin-bottom: 13px;
        text-align: left;
    }
    .home_page .key .catch::before {
        font-size: min(14px, 3.5vw);
    }
    .home_page .key .key_text .item .catch > p {
        font-size: min(4vw, 15px);
        letter-spacing: 0;
        line-height: 1.7em;
        text-align: left;
    }
    .home_page .key .idx-box-news {
        left: auto;
        right: auto;
        margin: 0 auto;
        bottom: auto;
        width: calc(100% - 40px);
        flex-direction: column;
        padding: 10px 0 0;
        border-radius: 0px;
        position: relative;
    }
    .home_page .key .idx-box-news .box-ttl {
        padding-right: 0;
        margin-right: 0;
        display: flex;
        justify-content: space-between;
        padding-bottom: 0;
        margin-bottom: 17px;
        background: url(../images/idx-news-hr-sp.svg) no-repeat bottom center;
        background-size: 100% auto;
    }
    .home_page .key .idx-box-news .box-ttl .ttl {
        font-size: 20px;
        margin-bottom: 0;
    }
    .home_page .key .idx-box-news .box-ttl .btn-news a {
        font-size: 13.5px;
    }
    .home_page .key .idx-box-news ul li {
        margin-bottom: 15px;
    }
    .home_page .key .idx-box-news ul li a .date {
        font-size: 12px;
    }
    .home_page .key .idx-box-news ul li a .ttl {
        font-size: 14px;
    }
}

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

@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 h2 {
        font-size: 24px;
    }
    .home_page h3 {
        font-size: 20px;
    }
}

@media only screen and (max-width: 768px) {
    .index0 {
        padding: 60px 0px 60px;
        background-color: #000;
    }
    .idx-ttl-en {
        font-size: 16px;
    }
    .idx-box-ttl {
        margin-bottom: 34px;
    }
    .idx-box-ttl.st02 {
        width: fit-content;
        padding-bottom: 11px;
        margin-bottom: 26px;
        background: url(../images/idx-hr-ttl-sp.svg) no-repeat bottom left;
        background-size: 18.75em 0.1875em;
    }
    .iConcept {
        padding: 82px 0 96px;
    }
    .iConcept-fx {
        flex-direction: column;
        padding: 0;
    }
    .iConcept-fx .box-img {
        padding-top: 0;
        margin: 0 auto 12px;
        width: fit-content;
        left: -17px;
    }
    .iConcept-fx .box-img:before {
        left: -126px;
        top: -52px;
        background: url(../images/idx-concept-ico01-sp.svg) no-repeat center;
        background-size: 100% auto;
        width: 289px;
        height: 318px;
    }
    .iConcept-fx .box-img:after {
        content: "";
        position: absolute;
        right: -105px;
        top: -33px;
        background: url(../images/idx-concept-ico02-sp.svg) no-repeat center;
        background-size: 100% auto;
        width: 181px;
        height: 282px;
    }
    .iConcept-fx .box-img .img {
        width: 300px;
        height: 268px;
    }
    .iConcept-fx .box-cnt:before {
        right: -2px;
        top: -11px;
        background: url(../images/idx-concept-ico03-sp.svg) no-repeat center;
        background-size: 100% auto;
        width: 190px;
        height: 182px;
        z-index: -1;
    }
    .iConcept-fx .box-cnt:after {
        left: initial;
        right: 19px;
        bottom: -11px;
        background: url(../images/idx-concept-ico03.png) no-repeat center;
        background-size: 100% auto;
        width: 33px;
        height: 34px;
    }
    .iConcept-fx .box-cnt .idx-ttl-en {
        margin-bottom: -2px;
    }
    .iConcept-fx .box-cnt .txt {
        margin-left: 0;
        padding-left: 0;
        margin-top: 20px;
        margin-bottom: 28px;
    }
    .iConcept-fx .box-cnt .txt > p {
        font-size: 16px;
        line-height: 2em;
    }
    .iConcept-fx .box-cnt .idx-btn {
        max-width: 216px;
        margin: 0;
        width: 100%;
    }
    .iConcept-fx .box-cnt .idx-btn a {
        min-width: 100%;
        font-size: 14px;
        min-height: 60px;
        padding: 0 35px 0 20px;
    }
    .iConcept .inner_big {
        padding: 0 20px;
    }
    .iMenu {
        padding-top: 35px;
        padding-bottom: 300px;
    }
    .iMenu:after {
        left: 0;
        right: 0;
        bottom: -28.125em;
        width: 100%;
        height: 63.4375em;
        background: url(../images/idx-menu-bg03.png) no-repeat top center;
        background-size: 100% 100%;
    }
    .iMenu .inner_big {
        padding: 0 min(5.33vw, 20px);
    }
    .iMenu:before {
        top: -42px;
        background: url(../images/idx-menu-bg01-sp.png) no-repeat center;
        background-size: 100% auto;
        width: 100%;
        height: 62px;
    }
    .iMenu .idx-box-ttl .idx-ttl-en {
        margin-bottom: -2px;
    }
    .iMenu .idx-box-ttl h2 {
        font-size: 32px;
    }
    .iMenu-list {
        border-radius: 20px;
    }
    .iMenu-list li {
        border-top-left-radius: 20px;
        border-bottom-left-radius: 20px;
        height: 235px;
    }
    .iMenu-list li:last-child {
        border-top-right-radius: 20px;
        border-bottom-right-radius: 20px;
    }
    .iMenu-list li:last-child .box-ttl .ttl {
        line-height: 1.4em;
        align-items: flex-end;
    }
    .iMenu-list li:last-child .box-ttl .ttl:after {
        margin-left: 10px;
        top: -5px;
    }
    .iMenu-list li .img {
        height: 100%;
    }
    .iMenu-list li .img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .iMenu-list li .box-ttl {
        left: min(5.33vw, 20px);
        bottom: 13px;
    }
    .iMenu-list li .box-ttl .sub-ttl {
        font-size: min(3.2vw, 12px);
    }
    .iMenu-list li .box-ttl .ttl {
        font-size: min(6.13vw, 23px);
    }
    .iMenu-list li .box-ttl .ttl:after {
        margin-left: min(9.33vw, 35px);
        width: min(5.33vw, 20px);
        height: min(5.33vw, 20px);
    }
    .iMenu-list02 {
        flex-wrap: wrap;
        margin-top: 30px;
        max-width: min(93.33vw, 450px);
        margin-left: auto;
        margin-right: auto;
    }
    .iMenu-list02 li {
        width: 50%;
        margin-right: min(2.67vw, 10px);
        max-width: min(43.33vw, 200px);
        height: min(43.33vw, 200px);
    }
    .iMenu-list02 li:nth-child(2n) {
        margin-right: 0;
    }
    .iMenu-list02 li:nth-child(3) {
        margin: 0 min(21.33vw, 80px);
        margin-top: -10px;
        margin-bottom: -10px;
    }
    .iMenu-list02 li:nth-child(4) {
        margin-right: min(2.67vw, 10px);
    }
    .iMenu-list02 li a {
        border-radius: 50%;
        padding-top: min(6.67vw, 40px);
        min-height: 100%;
    }
    .iMenu-list02 li a .ico {
        margin-bottom: 10px;
    }
    .iMenu-list02 li a .ico img {
        height: min(13.33vw, 60px);
        width: auto;
    }
    .iMenu-list02 li a .ttl {
        font-size: min(4.8vw, 21px);
        margin-bottom: 10px;
    }
    .iMenu-list02 li a .ico-arr img {
        width: 20px;
        height: auto;
    }
    .iGyne.st02 .iGyne-box {
        margin-top: -82px;
        padding-bottom: 20px;
    }
    .iGyne.st02 .iGyne-fx .box-cnt {
        margin-right: 0;
        padding-top: 0;
    }
    .iGyne.st02 .iGyne-fx .box-cnt:before {
        right: -20px;
        top: -98px;
        background: url(../images/idx-gyne-ico04-sp.svg) no-repeat center;
        background-size: 100% auto;
        width: 208px;
        height: 184px;
        z-index: -1;
    }
    .iGyne.st02 .iGyne-fx .box-cnt .idx-box-ttl h2 br {
        display: none;
    }
    .iGyne.st02 .iGyne-fx .box-cnt .txt > p {
        font-size: 16px;
    }
    .iGyne.st02 .iGyne-fx .box-img {
        margin-bottom: 35px;
    }
    .iGyne.st02 .iGyne-fx .box-img:before {
        width: 145px;
        height: 156px;
        background: url(../images/idx-gyne-ico03-sp.svg) no-repeat center;
        background-size: 100% auto;
    }
    .iGyne.st02 .iGyne-fx .box-img .img img {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
        border-top-right-radius: min(40vw, 250px);
        border-bottom-right-radius: min(40vw, 250px);
    }
    .iGyne .inner_big {
        padding: 0;
    }
    .iGyne-box {
        border-radius: 50px;
        background: #fff;
        margin-top: -231px;
        padding-top: 70px;
        padding-bottom: 70px;
    }
    .iGyne-fx {
        flex-direction: column;
        padding-left: 0;
        margin-bottom: 40px;
    }
    .iGyne-fx .box-img {
        order: 1;
        width: calc(100% - min(5.33vw, 40px));
        margin-bottom: 30px;
        position: relative;
        z-index: 2;
    }
    .iGyne-fx .box-img .img img {
        height: min(80vw, 400px);
        width: 100%;
        object-fit: cover;
        border-radius: 0;
        border-top-right-radius: min(40vw, 250px);
        border-bottom-right-radius: min(40vw, 250px);
    }
    .iGyne-fx .box-cnt {
        padding: 0 20px;
        order: 2;
        margin-right: 0;
    }
    .iGyne-fx .box-cnt:before {
        content: "";
        position: absolute;
        right: -20px;
        top: -90px;
        background: url(../images/idx-gyne-ico01-sp.svg) no-repeat center;
        background-size: 100% auto;
        width: 209px;
        height: 185px;
        z-index: -1;
    }
    .iGyne-fx .box-img:before {
        content: "";
        position: absolute;
        right: 3px;
        bottom: -90px;
        background: url(../images/idx-gyne-ico02-sp.svg) no-repeat center;
        background-size: 100% auto;
        width: 130px;
        height: 135px;
    }
    .iGyne-box-link .ttl-link:after {
        content: "";
        position: relative;
        right: 0;
        top: 0;
        bottom: 0;
        margin: auto 0;
        background: url(../images/idx-gyne-hr.svg) no-repeat center;
        background-size: cover;
        width: 100%;
        height: 1px;
        margin-left: 0.5em;
    }
    .iGyne-fx .box-cnt .idx-box-ttl h2 {
        font-size: 32px;
    }
    .iGyne-fx .box-cnt h3 {
        margin-bottom: 9px;
    }
    .iGyne-fx .box-cnt .txt {
        margin-bottom: 27px;
    }
    .iGyne-fx .box-cnt .txt > p {
        font-size: 16px;
    }
    .iGyne-fx .box-cnt .idx-btn {
        width: 100%;
        max-width: 162.5px !important;
    }
    .iGyne-fx .box-cnt .idx-btn a {
        min-width: 100%;
    }
    .iGyne-frame {
        max-width: calc(100% - 20px);
        flex-direction: column;
        padding: 25px min(5.33vw, 20px) 12px;
    }
    .iGyne-frame .ttl {
        text-align: center;
        writing-mode: initial;
        font-size: 24px;
        letter-spacing: 0;
        margin-bottom: 19px;
    }
    .iGyne-frame .ttl br {
        display: none;
    }
    .iGyne-box-link {
        margin-left: 0;
    }
    .iGyne-box-link .ttl-link {
        font-size: 18px;
        line-height: 1.5em;
        margin-bottom: 16px;
    }
    .iGyne-box-link .idx-list-link.st02 li {
        width: 100% !important;
        max-width: 100%;
        margin: 0 auto 10px !important;
    }
    .iGyne-box-link .idx-list-link.st02 li a {
        min-width: 100%;
        letter-spacing: 0.05em;
    }
    .iPill {
        padding-top: 99px;
    }
    .iPill .inner_big {
        padding: 0 20px;
    }
    .iPill-fx {
        padding: 0 !important;
        flex-direction: column;
    }
    .iPill-fx.st02:before {
        width: 535px;
        height: 535px;
        top: initial;
        bottom: 230px;
        left: initial;
        right: -200px;
        background: url(../images/idx-pill-circle02.svg) no-repeat center;
        background-size: 100% auto;
    }
    .iPill-fx.st02 .box-cnt {
        order: 1;
        padding-top: 58px;
    }
    .iPill-fx.st02 .box-cnt .txt {
        margin-bottom: 15px;
    }
    .iPill-fx.st02 .box-img:before {
        top: 30px;
        left: initial;
        right: 72px;
        background: url(../images/idx-pill-ico02.svg) no-repeat center;
        background-size: 100% auto;
        width: 33px;
        height: 35px;
        z-index: 1;
    }
    .iPill-fx.st02 .box-img .img {
        width: min(89.33vw, 400px);
        height: min(69.33vw, 330px);
        margin: 0 auto;
    }
    .iPill-fx.st02 .box-img .img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .iPill-fx.st02 .box-img-frame {
        background: #fff;
        border-radius: 10px;
        max-width: 100%;
        margin: 0 auto;
        background-size: 200% 5px;
        left: 0;
        padding: 22px 20px 2px;
        margin-top: -30px;
        position: relative;
        margin-bottom: 26px;
    }
    .iPill-fx.st02 .box-img-frame .ttl02 {
        font-size: 18px;
        padding-bottom: 11px;
        margin-bottom: 21px;
        background: url(../images/idx-pill-hr01.svg) no-repeat bottom center;
        background-size: 180% 5px;
    }
    .iPill-fx.st02 .idx-list-btn {
        justify-content: center;
    }
    .iPill-fx:before {
        left: -250px;
        top: 70px;
        background: url(../images/idx-pill-circle01.svg) no-repeat center;
        background-size: 100% auto;
        width: 535px;
        height: 535px;
    }
    .iPill-fx .box-cnt {
        margin: 0 !important;
    }
    .iPill-fx .box-cnt .idx-box-ttl {
        padding-bottom: 15px;
        margin-bottom: 15px;
    }
    .iPill-fx .box-cnt .idx-box-ttl .idx-ttl-en {
        font-size: 14px;
        margin-bottom: -2px;
    }
    .iPill-fx .box-cnt .idx-box-ttl h2 {
        font-size: 26px;
    }
    .iPill-fx .box-cnt .txt {
        margin-bottom: 7px;
    }
    .iPill-fx .box-cnt .txt > p {
        font-size: 16px;
    }
    .iPill-fx .box-cnt .idx-list-btn {
        position: relative;
        z-index: 1;
        max-width: 400px;
        margin: 0 auto;
    }
    .iPill-fx .box-img {
        margin: 0 auto -30px;
        width: fit-content;
    }
    .iPill-fx .box-img:before {
        width: 133px;
        height: 116px;
        top: 10px;
        left: 17px;
    }
    .iPill-fx .box-img .img {
        width: min(89.33vw, 400px);
        height: min(74.13vw, 350px);
    }
    .iPill-fx .box-img .img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .iCheck {
        padding-top: 155px;
    }
    .iCheck .idx-box-ttl .idx-ttl-en {
        font-size: 14px;
        line-height: 1.3em;
    }
    .iCheck .idx-box-ttl h2 {
        font-size: 26px;
    }
    .iCheck-frame {
        padding: 20px 20px 37px;
        margin-top: -17px;
        border-radius: 15px;
        padding-top: 52px;
        max-width: 500px;
    }
    .iCheck-list {
        flex-direction: column;
    }
    .iCheck-list li {
        width: 100%;
        max-width: 100%;
        margin: 0 auto 13px;
    }
    .iCheck-list li:last-child {
        margin-bottom: 0;
    }
    .iCheck-list li a {
        display: flex;
        padding-bottom: 0;
        border-radius: 7px;
    }
    .iCheck-list li a:before {
        width: 20px;
        height: 20px;
        right: -8px;
        left: initial;
        top: 0;
        bottom: 0;
        margin: auto 0;
    }
    .iCheck-list li a .img {
        width: min(32.67vw, 150px);
        height: min(34.67vw, 160px);
        margin-bottom: 0;
        flex-shrink: 0;
    }
    .iCheck-list li a .img img {
        height: 100%;
        width: 100%;
        object-fit: cover;
        border-radius: 0;
        border-top-left-radius: 7px;
        border-bottom-left-radius: 7px;
    }
    .iCheck-list li a .cnt {
        text-align: left;
        padding: 16px min(5.33vw, 20px) 16px min(5.87vw, 22px);
    }
    .iCheck-list li a .cnt .ttl {
        padding: 0;
        font-size: min(4.8vw, 18px);
        text-align: left;
        margin-bottom: 0;
    }
    .iCheck-list li a .cnt .txt {
        font-size: min(3.73vw, 14px);
        padding: 0;
        letter-spacing: 0;
        line-height: 1.75em;
    }
    .iPrivate {
        margin-top: -106px;
        padding-top: 155px;
        padding-bottom: 70px;
    }
    .iPrivate .inner_big {
        padding: 0 20px;
    }
    .iPrivate-frame {
        flex-direction: column;
        padding: 30px 20px 40px;
        max-width: 500px;
        margin: 0 auto;
        border-radius: 10px;
    }
    .iPrivate-frame .box-img {
        order: 1;
    }
    .iPrivate-frame .box-img .img img {
        height: 150px;
        width: 100%;
        object-fit: cover;
    }
    .iPrivate-frame .box-cnt {
        order: 2;
        padding-top: 25px;
    }
    .iPrivate-frame .box-cnt .idx-box-ttl {
        margin-bottom: 20px;
    }
    .iPrivate-frame .box-cnt .idx-box-ttl h2 {
        font-size: 26px;
    }
    .iPrivate-frame .box-cnt .idx-box-ttl .idx-ttl-en {
        font-size: 14px;
    }
    .iPrivate-frame .box-cnt .idx-list-btn {
        flex-wrap: wrap;
    }
    .iPrivate-frame .box-cnt .idx-list-btn li {
        margin: 0 auto 10px;
        width: 100%;
        max-width: 100% !important;
    }
    .iPrivate-frame .box-cnt .idx-list-btn li:last-child {
        margin-bottom: 0;
    }
    .iPrivate-frame .box-cnt .idx-list-btn li:first-child a br {
        display: none;
    }
    .iPrivate-frame .box-cnt .idx-list-btn li a {
        width: 100%;
        min-width: 100%;
    }
    .iFeatures {
        padding: 60px 0 150px;
    }
    .iFeatures .inner_big {
        padding: 0;
    }
    .iFeatures .idx-box-ttl {
        margin: 0 20px;
        position: relative;
        background: transparent;
        z-index: 2;
    }
    .iFeatures .idx-box-ttl h2 {
        font-size: 32px;
    }
    .iFeatures-arrow {
        margin-right: 0;
        width: 100%;
        padding: 0 min(5.33vw, 20px);
        margin-bottom: 30px;
        justify-content: space-between;
    }
    .iFeatures-arrow .slick-arrow {
        width: 60px;
        height: 60px;
    }
    .iFeatures .idx-fx-btn {
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    .iFeatures .idx-fx-btn .idx-btn {
        max-width: 162.5px;
    }
    .iFeatures-dots {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 125px;
        margin: 0 auto;
    }
    .iFeatures-dots ul {
        justify-content: center;
    }
    .iGyne.st02 .idx-box-ttl.st02 {
        background: url(../images/idx-hr-ttl-sp.svg) no-repeat bottom left;
        background-size: 18.75em 0.1875em;
    }
    .iFeatures-dots ul li {
        width: 8px;
        height: 8px;
        margin: 0 min(2.13vw, 8px);
    }
    .iFeatures-fx {
        flex-direction: column;
        padding: 0;
        position: relative;
    }
    .iFeatures-fx:before {
        content: "";
        position: absolute;
        width: 254px;
        height: 242px;
        background: url(../images/idx-features-ico01-sp.svg) no-repeat center;
        background-size: 100% auto;
        top: -176px;
        right: 69px;
    }
    .iFeatures-fx .box-cnt {
        margin-right: 0;
        width: 100%;
        padding: 0 20px;
        order: 2;
        padding-top: 18px;
    }
    .iFeatures-fx .box-cnt:before {
        display: none;
    }
    .iFeatures-fx .box-cnt h3 {
        text-align: center;
        margin-bottom: 8px;
    }
    .iFeatures-fx .box-cnt .txt {
        margin-bottom: 27px;
    }
    .iFeatures-fx .box-cnt .txt > p {
        font-size: 16px;
    }
    .iFeatures-slider {
        padding-left: 35px;
        padding-top: 0;
        margin-top: 23px;
    }
    .iFeatures-slider .box-item {
        margin-right: 15px;
        width: min(81.33vw, 400px);
    }
    .iFeatures-slider .box-item .img {
        width: 100%;
    }
    .iFeatures-slider .box-item .img img {
        width: 100%;
        height: 220px;
        object-fit: cover;
    }
    .iFeatures-slider .box-item .stt {
        font-size: 65px;
        top: -9px;
        right: 20px;
    }
    .idx_gallery {
        margin-top: -181px;
        position: relative;
        z-index: 2;
    }
    .iMess:before {
        left: calc(50% + 20px);
        transform: translate(-50%);
        top: -80px;
        background: url(../images/idx-mess-bg01-sp.png) no-repeat top center;
        background-size: cover;
        width: 100%;
        border-top-left-radius: 30px;
        height: calc(100% + 30px);
        max-width: 100%;
    }
    .iMess .inner_big {
        padding: 0 20px;
    }
    .iMess-fx {
        flex-direction: column;
        padding: 0;
    }
    .iMess-fx .box-img {
        order: 1;
        max-width: 500px;
        margin: -10em auto 0;
    }
    .iMess-fx .box-img:before {
        right: 11px;
        top: -58px;
        background: url(../images/idx-mess-ico01-sp.svg) no-repeat center;
        background-size: 100% auto;
        width: 410px;
        height: 278px;
    }
    .iMess-fx .box-img:after {
        left: initial;
        bottom: -90px;
        right: -103px;
        width: 260px;
        height: 196px;
        background: url(../images/idx-mess-ico02-sp.png) no-repeat center;
        background-size: 100% auto;
        z-index: 1;
    }
    .iMess-fx .box-img .img01 {
        width: 345px;
        height: 370px;
        margin-left: auto;
        left: 58px;
        text-align: right;
        margin-top: -4px;
    }
    .iMess-fx .box-img .img02 {
        width: 190px;
        height: 185px;
        margin-left: -30px;
        margin-top: -123px;
    }
    .iMess-fx .box-cnt {
        order: 2;
        margin: 0;
        padding-left: 20px;
        padding-top: 29px;
    }
    .iMess-fx .box-cnt .idx-box-ttl {
        margin-bottom: 15px;
    }
    .iMess-fx .box-cnt .idx-box-ttl h2 {
        font-size: 22px;
        line-height: 1.6em;
    }
    .iMess-fx .box-cnt .txt > p {
        line-height: 2em;
        font-size: 16px;
    }
    .iMess-fx .box-cnt .box-name {
        margin-top: 16px;
        margin-bottom: 33px;
    }
    .iMess-fx .box-cnt .box-name .sub-name {
        font-size: 12px;
    }
    .iMess-fx .box-cnt .box-name .name {
        font-size: 24px;
    }
    .iMess-fx .box-cnt .box-name .name span {
        font-size: 14px;
    }
    .iRecruit {
        padding-top: 70px;
        padding-bottom: 70px;
    }
    .iRecruit:before {
        background-size: cover;
    }
    .iRecruit .inner_big {
        padding: 0 20px;
    }
    .iRecruit-frame {
        background: url(../images/idx-recruit-bg-frame-sp.jpg) no-repeat center;
        background-size: cover;
        padding: 35px min(5.33vw, 20px) 262px;
        border-radius: 10px;
        max-width: 500px;
        margin: 0 auto;
    }
    .iRecruit-frame:before {
        right: -95px;
        bottom: -13px;
        width: 480px;
        height: 247px;
        background: url(../images/idx-recruit-ico01-sp.svg) no-repeat center;
        background-size: 100% auto;
    }
    .iRecruit-frame .box-cnt {
        max-width: 100%;
    }
    .iRecruit-frame .box-cnt .idx-ttl-en02 {
        font-size: 45px;
        text-align: center;
    }
    .iRecruit-frame .box-cnt h3 {
        width: fit-content;
        text-align: center;
        margin: 0 auto 25px;
    }
    .iRecruit-frame .box-cnt h3 span {
        font-size: min(5.87vw, 22px);
        border-radius: 3px;
    }
    .iRecruit-frame .box-cnt .txt > p {
        font-size: 16px;
    }
    .iRecruit-frame .btn {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        margin: 0 auto;
        width: fit-content;
    }
    .iRecruit-frame .btn a {
        justify-content: center;
        min-width: 230px;
        min-height: 70px;
        background: #fff;
        border-top-left-radius: 7px;
        border-top-right-radius: 7px;
        font-size: 22px;
    }
    .iRecruit-frame .btn a:after {
        width: 30px;
        height: 30px;
    }
    .idx-list-frame li {
        width: calc(50% - 5px);
        margin-right: 10px;
        max-width: 100%;
        margin-bottom: 21px;
    }
    .idx-list-frame li:nth-child(2n) {
        margin-right: 0;
    }
    .idx-list-frame li a {
        min-width: 100%;
        font-size: 14px;
    }
    .idx-list-btn {
        max-width: 350px;
        margin: 0 auto;
    }
    .idx-list-btn li {
        width: calc(50% - 5px);
        margin-right: 10px;
        margin-bottom: 10px;
    }
    .idx-list-btn li:nth-child(2n) {
        margin-right: 0;
    }
    .idx-list-link {
        margin-bottom: 20px;
        justify-content: center;
    }
    .idx-list-link li {
        width: calc(50% - 5px);
        margin-right: 10px !important;
        margin-bottom: 10px;
    }
    .idx-list-link li:nth-child(2n) {
        margin-right: 0 !important;
    }
    .idx-list-link li a {
        min-height: 60px;
        font-size: min(3.73vw, 14px);
        padding: 5px min(5.33vw, 20px);
        line-height: 1.4em;
        border-radius: 30px;
    }
    .idx-list-link li a:before {
        width: 14px;
        height: 11px;
        right: 15px;
    }
    .idx-btn a {
        min-width: 100%;
        min-height: 60px;
        font-size: min(3.73vw, 14px);
        max-width: 162.5px;
        padding: 0 20px !important;
        border-radius: 30px;
    }
    .idx-btn a:before {
        width: 13px;
        height: 10px;
        right: 15px;
    }
}

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