@media only screen and (min-width: 1px) and (max-width: 768px) {
    .index02 .box-img .box02-list-hover li.modal {
        visibility: hidden;
        opacity: 0;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(77, 77, 77, 0.7);
        transition: all 0.4s;
        z-index: 999;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        transition: all 0.3s;
        max-width: 770px;
        transform: none;
    }
    .index06-box-fx {
        flex-direction: column;
    }
    .index06-box,
    .index06-blog {
        width: 100%;
        margin: 0 auto;
    }
    .index06-box {
        margin-bottom: 50px;
    }
    .index04 {
        padding-top: 2.9em;
    }
    .home_page .key .video {
        width: 320vw;
        height: 180vh;
        right: initial;
        left: 50%;
        transform: translate(-50%);
    }
    .home_page .key .video video {
        position: absolute;
        height: 100%;
        width: 100%;
    }
    .home_page .key {
        --height: 750px;
        --max-height: 750px;
        --min-height: 750px;
    }
    .home_page .key:before {
        background: url(../images/idx-bg-main02.png) no-repeat center;
        background-size: cover;
    }
    .home_page .key .inner_big {
        padding-top: min(69.333vw, 200px);
    }
    .home_page .key .inner_big .box-list-key {
        position: absolute;
        right: 0;
        bottom: 0;
        background: #fff;
        width: 100%;
        display: flex;
        align-items: center;
        min-height: 60px;
        padding-left: 15px;
    }
    .home_page .key .inner_big .box-list-key ul li a {
        display: flex;
        flex-direction: column;
        overflow: initial;
        text-overflow: none;
        padding-right: 10px;
    }
    .home_page .key .inner_big .box-list-key ul li a .date {
        display: block;
    }
    .home_page .key .inner_big .box-list-key ul li a .ttl {
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .home_page .key .catch .title {
        margin-bottom: 24px;
        font-size: 39px;
    }
    .home_page .key .catch p {
        font-size: 14px;
    }
    .home_page .key .catch .txt-animation {
        bottom: 58px;
        left: 0;
        line-height: 50px;
        margin-right: 35px;
        position: absolute;
    }
    .home_page .key .catch .txt-animation span {
        font-size: 85px;
        margin-right: 0;
    }
    .index03 .index03-list li .ttl02 {
        font-size: 16px;
    }
    .home_page .idx-ttl-jp {
        font-size: 14px;
        margin-bottom: 15px;
    }
    .index01-fx .box-left .idx-ttl01 {
        margin-bottom: 15px;
        font-size: 25px;
    }
    .home_page .key .key_text {
        position: initial;
    }
    .home_page .key .key_text .item {
        padding: 10px;
        height: calc(100vh - 60px);
        max-height: 156vw;
        min-height: 320px;
    }
    .box-key-icon {
        display: none;
    }
    .index0 {
        min-height: 667px;
        background-attachment: initial;
    }
    .index01-fx {
        flex-direction: column;
        padding: 60px 0;
    }
    .index01-fx .box-left,
    .index01-fx .box-right {
        width: 100%;
    }
    .index01-fx .box-left {
        padding: 0;
    }
    .index01-fx .box-left .idx-ttl-en {
        margin-left: 0;
    }
    .index01-fx .box-left .txt {
        font-size: min(4.267vw, 16px);
    }
    .index01-fx .box-right {
        padding: 0;
        padding-top: 100px;
        max-width: 355px;
        margin: 0 auto;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(1) {
        right: 0;
        top: -90px;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(2) {
        left: 0;
        bottom: -60px;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(2) .ttl {
        min-width: auto;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(2) .ttl:before {
        top: -86px;
        right: 141px;
        height: 100px;
        transform: rotate(-40deg);
        left: initial !important;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(3) {
        position: absolute;
        bottom: -150px;
        right: 0;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(3) .ttl:before {
        top: -100px;
        right: 80px;
        height: 110px;
        transform: rotate(28deg);
        left: initial !important;
    }
    .index01-fx .box-right .box-img .box01-list-right li .ttl:before {
        left: 78px !important;
        bottom: -64px;
        height: 70px;
        width: 1px;
        transform: rotate(-35deg);
    }
    .index01-fx .box-right .box-img .box01-list-right li .ttl {
        font-size: 25px;
    }
    .index01-fx .box-right .box-img .box01-list-right li .sub-ttl {
        font-size: 18px;
        margin-top: 1.563vw;
        padding-right: 1.563vw;
    }
    .index01-fx .box-right .img img {
        width: 70vw;
        height: auto;
        max-width: 262px;
    }
    .index02 {
        padding-top: 30px;
    }
    .index01-fx .box-right .img:before {
        content: "ACE \aMAKE's \a 3S";
        white-space: pre;
        font-size: 28px;
        text-align: left;
        padding: 1.563vw 3.125vw 0;
        left: 0.25vw;
        top: 2.375vw;
        display: inline-block;
        min-width: auto;
    }
    .index01 {
        padding-bottom: 90px;
    }
    .index01:before {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        margin: 0 auto;
        top: initial;
        background: url(../images/idx-box01-img02-sp.png) no-repeat right;
        background-size: 100% 100%;
        height: 600px;
        width: 100%;
    }
    .home_page .idx-ttl-en {
        font-size: max(7.333vw, 35px);
        margin-bottom: 6px;
    }
    .home_page .idx-ttl-en span {
        animation: txt_scroll 10s linear infinite;
    }
    .idx-ttl01 {
        font-size: min(6.667vw, 25px);
    }
    .idx-ttl-jp {
        font-size: 16px;
        margin-bottom: 20px;
    }
    .idx-list-btn {
        display: flex;
    }
    .idx-list-btn li {
        width: calc(50% - 5px);
    }
    .idx-list-btn li:first-child {
        margin-right: 10px;
    }
    .idx-list-btn li a {
        width: 100%;
        min-width: 100%;
        background: #fff;
        font-size: 14px;
    }
    .idx-list-btn li a:before {
        right: 10px;
    }
    .index02 .box-img .box02-list-hover02 {
        display: none;
    }
    .index02 .box-img .box02-list-hover li {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .index02 .box-img .box02-list-hover li .fx-cnt {
        display: flex;
        justify-content: space-between;
        flex-direction: column;
        background: #3E3E3E;
        max-width: min(89.333vw, 335px);
        height: 440px !important;
        margin: auto;
        height: fit-content;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
    }
    .index02 .box-img .box02-list-hover li .fx-cnt .close {
        position: absolute;
        right: 10px;
        top: 5px;
        text-align: right;
    }
    .index02 .box-img .box02-list-hover li .fx-cnt .cnt {
        padding: 30px 20px 20px;
    }
    .index02 .box-img .box02-list-hover li .fx-cnt .cnt .idx-btn {
        text-align: center;
    }
    .index02 .box-img .box02-list-hover li .fx-cnt .img {
        height: 200px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        width: 100%;
    }
    .index02 .box-img .box02-list-hover li .fx-cnt .img img {
        height: 100%;
        object-fit: cover;
        width: 100%;
    }
    .index03 {
        padding: 60px 0;
    }
    .index03 .index03-list {
        flex-direction: column;
    }
    .index03 .index03-list:before {
        min-height: 70%;
    }
    .index03 .index03-list li {
        width: 100%;
        margin: 0 auto 20px !important;
        padding: 15px 15px 15px 25px;
        min-height: 166px;
    }
    .index03 .index03-list li:last-child {
        margin-bottom: 0 !important;
    }
    .index03 .index03-list li:first-child:before {
        width: 108px;
        height: 130px;
        bottom: 20px;
        right: 65px;
    }
    .index03 .index03-list li:nth-child(2):before {
        width: 180px;
        height: 126px;
        bottom: 20px;
    }
    .index03 .index03-list li:nth-child(3):before {
        width: 142px;
        height: 126px;
        bottom: 16px;
        right: 47px;
    }
    .index03 .index03-list li .ttl {
        font-size: 20px;
    }
    .index03 .index03-list li .num {
        font-size: 78px;
        display: inline-block;
        float: left;
        margin-top: 0;
        letter-spacing: 0.01em;
        font-weight: bold;
    }
    .index03 .index03-list li .num span {
        font-size: 45px;
    }
    .index03 .index03-list li .sub-num {
        float: left;
        display: inline-block;
        position: relative;
        top: 55px;
        margin-left: 5px;
        font-size: min(3vw, 12px);
    }
    .index04 .inner_big {
        padding: 0;
    }
    .index04 .index04-box {
        min-height: min(126.667vw, 400px);
        background: url(../images/idx-bg-box04-sp.png) no-repeat right;
        background-size: cover;
    }
    .index04 .index04-box .iBtn {
        bottom: -52px;
        width: 106px;
        height: 106px;
        font-size: 15px;
        padding-bottom: 0;
    }
    .index04 .index04-box .iBtn .ico {
        width: 8px;
        height: 20px;
    }
    .index04 .index04-box .index04-cnt .index04-ttl .idx-ttl-en {
        color: #fff;
        font-size: max(7.333vw, 45px);
    }
    .index04 .index04-box .index04-cnt .index04-ttl {
        writing-mode: tb-rl;
        position: relative;
        padding-right: 28px;
        padding-top: 18px;
        padding-bottom: 15px;
        padding-left: 20px;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        min-width: 100px;
    }
    .index04 .index04-box .index04-cnt .index04-ttl .idx-ttl-jp:before {
        height: 30px;
    }
    .index04 .index04-box .index04-cnt .index04-ttl .idx-ttl-jp {
        font-size: 14px;
        margin-bottom: 8px;
        margin-right: 0;
    }
    .index04 .index04-box .index04-cnt .index04-sub-ttl {
        font-size: 18px;
        left: -17px;
        bottom: -30px;
    }
    .index05 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .index05 .inner_big {
        padding: 0;
    }
    .index05 .inner_big:before {
        left: 0;
        width: 60%;
    }
    .index05 .index05-fx {
        flex-direction: column;
        margin-bottom: 35px;
    }
    .index05 .index05-fx.index05-fx02 .box-cnt {
        padding: 0 15px 25px;
        margin-left: auto;
    }
    .index05 .index05-fx .box-img {
        order: 1;
        width: 100%;
    }
    .index05 .index05-fx .box-cnt {
        width: calc(100% - 18.667vw);
        min-width: auto;
        margin-top: -30px;
        order: 2;
        padding: 0 15px 25px;
        margin-right: 0;
    }
    .index05 .index05-fx .box-cnt .stt {
        font-size: 55px;
        margin-bottom: 10px;
        margin-top: -25px;
    }
    .index05 .index05-fx .box-cnt .box05-ttl {
        font-size: min(7vw, 25px);
        margin-bottom: 20px;
    }
    .index05 .index05-fx .box-cnt .idx-btn a {
        min-width: 162px;
        font-size: 13px;
    }
    .index05 .index05-fx .box-cnt .txt {
        margin-bottom: 15px;
    }
    .index06 {
        position: relative;
        padding: 60px 0;
        min-height: auto;
        background-size: cover;
    }
    .index06 .index06-fx {
        flex-direction: column;
        padding-right: 0;
        margin-bottom: 20px;
    }
    .index06 .index06-fx .idx-ttl-en {
        font-size: 33px;
    }
    .index06-blog .idx-btn {
        margin-top: 25px;
        text-align: center;
    }
    .index06-blog ul li a .img {
        width: 140px !important;
        height: 100px !important;
    }
    .index06-blog ul li a .date {
        font-size: 11px;
    }
    .index06-blog ul li a .ttl {
        font-size: 14px;
    }
    .index06-blog ul li a .txt {
        font-size: 12px;
    }
    .index06 .index06-list {
        flex-wrap: wrap;
        justify-content: center;
    }
    .index06 .index06-list li {
        min-height: auto;
        height: auto;
        width: calc(30% - 10px);
        margin: 5px !important;
    }
    .index07 {
        padding-bottom: 0;
        padding-top: 100px;
        position: relative;
    }
    .index07:before {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        background: url(../images/idx-box07-img01-sp.png) no-repeat center;
        background-size: contain;
        width: 120px;
        height: 200px;
    }
    .index07 .inner_big:before {
        display: none;
    }
    .index07 .index07-fx {
        flex-direction: column;
        padding: 0;
    }
    .index07 .index07-fx .box-cnt {
        padding-top: 0;
        margin-bottom: 30px;
    }
    .index07 .index07-fx .box-cnt .idx-ttl01 {
        font-size: min(8vw, 30px);
        letter-spacing: -1px;
        margin-bottom: 20px;
        margin-top: 20px;
        width: 68%;
    }
    .index07 .index07-fx .box-cnt .txt {
        line-height: 2em;
    }
    .index07 .index07-fx .box-img {
        margin-left: 0;
        max-width: 380px;
        margin: 0 auto;
        width: 100%;
    }
    .index07 .index07-fx .box-img .img {
        display: none;
    }
    .index07 .index07-fx .box-img .img02 {
        margin-top: 0;
        margin-left: -10px;
        width: 65%;
    }
    .index07 .index07-fx .box-img .img03 {
        top: 110px;
        width: 140px;
        height: 200px;
        bottom: 0;
        right: -10px;
        z-index: 1;
    }
    .index07 .index07-fx .box-img .img03 img {
        height: 100%;
        object-fit: cover;
    }
    .index07 .idx-btn {
        max-width: 350px;
        margin: 0 auto 70px;
    }
    .index07 .idx-btn a {
        min-width: 100%;
        min-height: 65px;
        font-size: 22px;
        padding-bottom: 3px;
    }
    .index07 .idx-btn a:before {
        right: 15px;
        width: 30px;
        height: 30px;
        background: url(../images/idx-ico-arr02-sp.svg) no-repeat center;
        background-size: contain;
    }
    .index07 .idx-ttl-en {
        top: -65px;
        display: block;
        animation: catch_main 0s 0.9s forwards infinite;
        font-size: 75px;
    }
    @keyframes txt_scroll {
        0% {
            transform: translateX(0);
        }
        100% {
            transform: translateX(-100%);
        }
    }
    .idx_gallery {
        padding: 45px 0 0;
    }
    .idx_gallery.style02 {
        padding-top: 9.333vw;
    }
    .idx_gallery ul li {
        margin-right: 15px;
    }
    .idx_gallery ul li .img {
        width: 200px;
        height: 200px;
        background-size: cover;
    }
    .idx_gallery ul li .img01 {
        width: 175px;
        height: 132px;
    }
    .idx_gallery ul li .img02 {
        width: 175px;
        height: 100px;
    }
    .idx_gallery ul li .img03 {
        width: 175px;
        height: 175px;
    }
    .idx_gallery ul li .img04 {
        width: 175px;
        height: 100px;
    }
    .idx_gallery ul li .img05 {
        width: 175px;
        height: 100px;
    }
    .idx_gallery ul li .img06 {
        width: 175px;
        height: 175px;
    }
    .idx_gallery ul li .img07 {
        width: 175px;
        height: 100px;
    }
    .idx_gallery ul li .img08 {
        width: 175px;
        height: 132px;
    }
    .index08 {
        padding: 45px 0 0;
    }
    .index08 .index08-fx {
        flex-direction: column;
    }
    .index08 .index08-fx:before {
        left: -10px;
        width: calc(100% + 30px);
        top: 50px;
        height: 95%;
        clip-path: polygon(0 0, 100% 15.2%, 100% 100%, 0 83.8%);
    }
    .index08 .index08-fx .box-img {
        order: 1;
        position: relative;
    }
    .index08 .index08-fx .box-img:before {
        content: "GREETING";
        position: absolute;
        writing-mode: tb-rl;
        font-size: 45px;
        left: -4.5vw;
        font-family: var(--f-en);
        font-weight: bold;
        letter-spacing: 0;
        color: #fff;
        top: 22.667vw;
    }
    .index08 .index08-fx .box-img .img {
        margin-left: auto;
        margin-right: -15px;
        width: 90%;
    }
    .index08 .index08-fx .box-img .img02,
    .index08 .index08-fx .box-img .img03 {
        display: none;
    }
    .index08 .index08-fx .box-cnt {
        padding: 0;
        order: 2;
        margin-top: -18.667vw;
    }
    .index08 .index08-fx .box-cnt:before {
        font-size: 45px;
        left: -10px;
        top: 0;
        display: none;
    }
    .index08 .index08-fx .box-cnt .idx-ttl01 {
        margin-bottom: 20px;
        font-size: 25px;
        width: 65%;
    }
    .index08 .index08-fx .box-cnt .txt {
        font-size: 13px;
    }
    .index08 .index08-fx .box-cnt .idx-list-btn li a {
        background: transparent;
        font-size: 12px;
    }
    .index08 .index08-fx .box-cnt .txt-name {
        margin-bottom: 25px;
    }
    .index08-fx-img {
        display: flex !important;
        position: relative;
        width: calc(100% + 22px);
        left: 50%;
        transform: translate(-50%);
    }
    .index08-fx-img .img02 {
        margin-right: 15px;
        margin-top: 30px;
    }
    .index02-bg .inner_big {
        padding: 0;
    }
    .index02-bg .index02-list-img {
        flex-direction: column;
        max-width: 500px;
        margin: 0 auto;
    }
    .index06 .index06-fx .insta-info .ico {
        margin-right: 10px;
    }
    .index02-bg .index02-list-img li {
        width: auto;
        height: 100%;
        max-width: 200px;
    }
    .index02-bg .index02-list-img li .parallax-item {
        position: relative;
        width: 100%;
        height: 100%;
        transform: none;
    }
    .index02-bg .index02-list-img li .parallax-item img {
        position: relative;
    }
    .index02-bg .index02-list-img li:nth-child(2n) {
        max-width: 500px;
        margin: 0 15px;
    }
    .index02-bg .index02-list-img li:nth-child(2n) .parallax-item {
        width: 100%;
        margin: 15px auto;
    }
    .index02-bg .index02-list-img li:last-child {
        flex: 1;
        max-width: 200px;
        margin-top: 0;
        justify-content: flex-end;
        text-align: right;
        margin-left: auto;
    }
    .index02-bg .index02-list-img li:last-child img {
        max-width: 300px;
        margin-left: auto;
        margin-right: 0;
    }
    .index02 .idx-ttl-en,
    .index02 .idx-ttl-jp {
        top: 20px;
        margin-left: 10px;
    }
    .index02 .idx-ttl-jp {
        top: 10px;
        font-size: 14px;
        position: relative;
    }
    .txt-index02 {
        position: relative;
        top: 0;
        color: #fff;
        font-size: 10px;
        margin-left: 10px;
    }
    .index02 .idx-ttl-jp:before {
        width: 30px;
        top: 2px;
    }
    .index02 .box-img {
        top: 0;
        top: 0;
        width: 100%;
        left: initial;
        transform: none;
        margin-bottom: -220px;
        /* left: 54%;
        transform: translate(-50%);
        width: 140%;
        position: relative;
        margin-top: -110px;
        margin-bottom: -50px; */
    }
    .index02 .box-img svg.sp {
        position: relative;
        width: calc(100% + 200px);
        left: calc(50% + 8vw);
        transform: translate(-50%);
        top: -210px;
    }
    .index02 .box-gsap-list {
        width: 100%;
        height: min(77.333vw, 350px);
        min-height: auto;
        overflow-x: scroll;
        margin-bottom: 40px;
    }
    .index02 .box-gsap-list ul {
        padding-left: 30px;
    }
    .index02 .box-gsap-list ul li {
        height: min(77.333vw, 350px);
        position: relative;
        width: min(58.667vw, 330px) !important;
        flex-shrink: 0;
        margin-right: 4vw;
    }
    .index02 .box-gsap-list ul li a:before {
        height: 100%;
    }
    .index02 .box-gsap-list ul li .img img {
        object-fit: cover;
    }
    .index02 .box-gsap-list ul li .cnt-fx {
        padding: 3vw 2vw;
        flex-direction: column;
        justify-content: flex-end;
    }
    .index02 .box-gsap-list ul li .cnt-fx .cnt .ttl {
        font-size: min(4.2vw, 20px);
        flex-direction: column;
        align-items: flex-start !important;
    }
    .index02 .box-gsap-list ul li .cnt-fx .cnt .ttl .stt {
        font-size: 12px;
        display: block;
        margin-right: 5px;
        margin-bottom: 8px;
    }
    .index02 .box-gsap-list ul li .cnt-fx .cnt .sub-ttl {
        font-size: min(2.2vw, 13px);
    }
    .index02 .box-gsap-list ul li .cnt-fx .cnt .txt {
        font-size: min(2.8vw, 13px);
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .index02 .box-gsap-list ul li .cnt-fx .iBtn {
        width: 25px;
        height: 25px;
        bottom: 0;
        margin-left: 0;
        margin-top: 10px;
    }
    .index02-bg:before {
        top: -1px;
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 60%);
        height: 65%;
    }
    .home_page .idx-ttl-jp:before {
        width: 25px;
    }
    .cls-1 {
        stroke-dasharray: 0 0 .99 2.98;
    }
    .cls-1,
    .cls-2,
    .cls-3,
    .cls-4,
    .cls-5,
    .cls-6,
    .cls-7,
    .cls-8,
    .cls-9 {
        fill: none;
    }
    .cls-1,
    .cls-2,
    .cls-3,
    .cls-4,
    .cls-6,
    .cls-7,
    .cls-8,
    .cls-9 {
        stroke: #fff;
        stroke-miterlimit: 10;
    }
    .cls-3 {
        stroke-dasharray: 0 0 1 3.01;
    }
    .cls-10 {
        filter: url(#drop-shadow-2);
    }
    .cls-10,
    .cls-11,
    .cls-12,
    .cls-13,
    .cls-5,
    .cls-14,
    .cls-15,
    .cls-16 {
        stroke-width: 0px;
    }
    .cls-10,
    .cls-15 {
        fill: #f6740c;
    }
    .cls-4 {
        stroke-dasharray: 0 0 1 3.01;
    }
    .cls-11 {
        opacity: .15;
    }
    .cls-11,
    .cls-13,
    .cls-14,
    .cls-16 {
        fill: #fff;
    }
    .cls-12 {
        fill: #fab985;
    }
    .cls-13 {
        opacity: .5;
    }
    .cls-6 {
        stroke-dasharray: 0 0 1 3;
    }
    .cls-7 {
        stroke-dasharray: 0 0 .99 2.98;
    }
    .cls-17 {
        clip-path: url(#clippath);
    }
    .cls-8 {
        stroke-dasharray: 0 0 1 3;
    }
    .cls-15 {
        filter: drop-shadow(0 0 6px #444444);
    }
    .cls-9 {
        stroke-dasharray: 0 0 1 3;
    }
    .cls-16 {
        opacity: .3;
    }
}

@media only screen and (min-width: 320px) and (max-width: 768px) {
    .index08 .index08-fx .box-img:before {
        font-size: 38px;
    }
    .index02 .box-img svg.sp {
        top: -180px;
    }
    .index03 .index03-list li .num span {
        font-size: 36px;
    }
    .index01-fx .box-right .box-img .box01-list-right li .ttl:before {
        left: 92px !important;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(2) .ttl:before {
        top: -80px;
        right: 158px;
        height: 90px;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(3) .ttl:before {
        top: -100px;
        right: 70px;
    }
}

@media only screen and (min-width: 360px) and (max-width: 768px) {
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(3) .ttl:before {
        right: 77px;
    }
    .index01-fx .box-right .box-img .box01-list-right li .ttl:before {
        left: 82px !important;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(2) .ttl:before {
        top: -94px;
        right: 146px;
        height: 110px;
    }
}

@media only screen and (min-width: 375px) and (max-width: 768px) {
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(1) {
        right: 0;
        top: -90px;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(2) {
        left: 0;
        bottom: -60px;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(2) .ttl {
        min-width: auto;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(2) .ttl:before {
        top: -92px;
        right: 146px;
        height: 104px;
        transform: rotate(-40deg);
        left: initial !important;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(3) {
        position: absolute;
        bottom: -150px;
        right: 0;
    }
    .index01-fx .box-right .box-img .box01-list-right li:nth-child(3) .ttl:before {
        top: -100px;
        right: 80px;
        height: 110px;
        transform: rotate(28deg);
        left: initial !important;
    }
    .index01-fx .box-right .box-img .box01-list-right li .ttl:before {
        left: 78px !important;
        bottom: -64px;
        height: 70px;
        width: 1px;
        transform: rotate(-35deg);
    }
}

@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 (min-width: 425px) and (max-width: 768px) {
    .index01-fx {
        flex-direction: column;
        padding: 60px 0;
    }
}

@media only screen and (min-width: 639px) and (max-width: 768px) {
    .index02 .box-img svg.sp {
        position: relative;
        width: calc(100% + 380px);
        left: calc(50% + 7vw);
        transform: translate(-50%);
        top: -400px;
    }
    .index02 .box-img {
        margin-bottom: -510px;
        margin-top: 70px;
    }
    .index02-bg .index02-list-img li,
    .index02-bg .index02-list-img li:last-child {
        max-width: 300px;
    }
    .index08 .index08-fx:before {
        clip-path: polygon(0 0, 100% 19.2%, 100% 100%, 0 83.8%);
    }
    .index01:before {
        height: 650px;
    }
}


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