.div_headBackground {
    position: relative;

    width: 100%;

    background-image: none;

    aspect-ratio: 1/.55;
}

.app_bg2 {
    background: no-repeat url(/others/teiden-appli/images/app_bg2.png) center center/cover;
}

.img_headPicture01 {
    width: 1000px;
    height: 673px;
}

.img_headPicture02 {
    width: 100%;
    height: auto;
}

.img_bottomPicture01 {
    width: 1000px;
    height: 228px;
}

.img_bottomPicture02 {
    width: 100%;
    height: auto;
}

.div_functionButton {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    justify-content: center;

    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
}

.div_functionButton a {
    display: block;

    width: 33%;
    margin: 0 7.5px;
}

.div_functionButton a img {
    width: 100%;
}

.div_functionButton a:hover {
    opacity: .8;
}

.inline_content {
    padding: 20px;
}

.inline_content p {
    font-size: 16px;
}

#cboxOverlay {
    opacity: .75 !important;
}

.div_informationBlock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;

    margin-top: 30px;
}

@media screen and (min-width: 767px), print {
    .div_informationBlock {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;

        margin-top: 60px;
    }
}

.div_informationBlock .div_informationMovieBlock {
    width: 100%;

    text-align: center;
}

.div_informationBlock .div_informationMovieBlock .video {
    position: relative;

    width: 100%;
    padding-top: 56.25%;
}

.div_informationBlock .div_informationMovieBlock .video iframe {
    position: absolute;
    top: 0;
    right: 0;

    width: 100%;
    height: 100%;
    padding-right: 10%;
    padding-left: 10%;
}

@media screen and (min-width: 767px), print {
    .div_informationBlock .div_informationMovieBlock {
        width: 400px;
    }

    .div_informationBlock .div_informationMovieBlock .video {
        position: relative;

        width: 100%;
        padding-top: 56.25%;
    }

    .div_informationBlock .div_informationMovieBlock .video iframe {
        position: absolute;
        top: 0;
        right: 0;

        width: 100%;
        height: 100%;
        padding-right: 0;
        padding-left: 0;
    }
}

.div_informationBlock .ul_informationNoteBlock {
    width: 100%;
    margin-top: 30px;
}

@media screen and (min-width: 767px), print {
    .div_informationBlock .ul_informationNoteBlock {
        width: 540px;
        margin-top: 0;
        margin-left: 60px;
    }
}

.figure_informationMovieTitle {
    width: 60%;
    margin: 60px auto 30px auto;
}

.li_informationNoteMark {
    padding-left: 1em;

    text-indent: -1em;
}

.li_informationNote {
    margin-top: 1em;
}

.div_informationLinkBlock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;

    margin-top: 15px;
}

.div_informationLinkBlock a {
    display: block;

    margin: 15px 10% 0 10%;
}

.div_informationLinkBlock a:hover {
    opacity: .75 !important;
}

@media screen and (min-width: 767px), print {
    .div_informationLinkBlock {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;

        margin-top: 30px;
    }

    .div_informationLinkBlock a {
        margin: 0 0 0 15px;
    }

    .div_informationLinkBlock a img {
        width: 100%;
    }

    .div_informationLinkBlock a:first-child {
        margin-left: 0;
    }
}

.flexbox_movie {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    padding: 0 clamp(10px, 5%, 20px);
}

.movie_frame .video_btn:before {
    position: absolute;
    top: 78%;
    left: 90%;

    display: block;

    width: 50px;

    content: '';
    transform: translate(-50%, -50%);

    background: url(/corporate/images/gallery_play.png) no-repeat;
    background-size: contain;
}


.div_headBackground {
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 270% 74%;
    aspect-ratio: auto;
}

@media screen and (min-width: 768px) {
    .div_headBackground {
        padding-bottom: 10px;

        background-position: center bottom;
        background-size: auto;
    }

    .div_headBackground .conts_in .pc_only img {
        max-width: 100% !important;
    }

    .flexbox_movie .movie_frame {
        flex-basis: 30%;
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
    }

    .movie_frame .video_btn:before {
        position: absolute;
        top: 78%;
        left: 90%;

        display: block;

        width: 40px;
        height: 40px;

        content: '';
        transform: translate(-50%, -50%);

        background: url(/corporate/images/gallery_play.png) no-repeat;
        background-size: contain;
    }
}


.mv-area {
    position: relative;
    margin: 0 auto;
    background-image: linear-gradient(#00c0ca, #8dcfd1);
    padding-bottom: 3%;
}

.mv-logo {
    padding-top: 4.5%;

    text-align: center;
}

.mv-logo picture {
    vertical-align: middle;
    line-height: 1;
}

.mv-logo img[src$='.svg'] {
    max-width: 68.5%;
    margin-top: 3%;
    filter: drop-shadow(0 0 5px #1f767d);
}

.mv-logo .icon-wrapper {
    display: block;
    width: 13%;
    margin: 0 auto 1%;
    border-radius: 29%;
    box-shadow: 0 0 6px #ffffff;
    aspect-ratio: 1/1;
}

.mv-logo .icon-wrapper img {
    object-fit: contain;
    vertical-align: middle;
}

.mv-okurin .mv-charactor {
    fill: #fff;
}


.mv-screen {
    text-align: left;
    grid-area: mv-screen;
}


.mv-screen img {
    filter: drop-shadow(0 0 1vw black);
    aspect-ratio: 120 / 239;
    height: 100%;
}

.mv-link {
    grid-area: mv-link;
}

.mv-flex-pc-only {
    display: none;
}

.mv-flex-sp-only {
    display: flex;
}


.mv-copy {
    width: 64%;
    margin: 2% auto 4%;
}

.mv-text {
    display: none;
}


.mv-copy-svg {
    max-width: 100%;

    fill: #fff;
    filter: drop-shadow(0px 0px 2px #1f767d);
    aspect-ratio: 1 / .153;
}


.mv-area-wrapper {
    position: relative;
    margin-bottom: 2%;
}

.mv-okurin .mv-charactor {
    z-index: 1;
    height: 100%;
    filter: drop-shadow(.5vw .5vw .5vw #999);
    aspect-ratio: .594/1;
}

.mv-okurin img[src$='-text.svg'] {
    position: absolute;
    z-index: 1;
    top: -18%;
    right: 26%;
    width: 52%;
}

.mv-flex-sp-only {
    display: flex;
}

.mv-store-link {
    padding: 4% 10%;
    justify-content:
        space-around;
    margin-top: 5%;
}

.mv-store-link .link-appstore {
    flex-basis: 39%;
}

.mv-store-link .link-googleplay {
    flex-basis: 47%;
}

.mv-store-link a {
    display:
        block;
    max-width: 100%;
    ;
}

.mv-store-link a img {
    vertical-align: middle;
}

.mv-store-link .note {
    font-size: 10px;
    display: block;
    text-align:
        center;
    width: 100%;
}

.mv-store-link .link-appstore img {
    width: 100%;
    aspect-ratio: 1/.367;
}

.mv-store-link .link-googleplay img {
    width: 100%;
    aspect-ratio: 1/.297;
}

.mv-area-inner {
    display: grid;
    grid-template-columns: repeat(2, 50%);
    grid-template-rows: repeat(4, 8vh);
    grid-template-areas:
        "mv-okurin-text mv-screen"
        "mv-okurin mv-screen"
        "mv-okurin mv-screen"
        "mv-okurin mv-screen";
    margin: 5% 14% 0;
    justify-content: center;
}

.mv-okurin {
    position: relative;
    text-align: center;
    grid-area: mv-okurin;
}

.mv-okurin-text {
    position: relative;
    text-align: center;
    grid-area: mv-okurin-text;
    max-height: 100%;
    display: flex;
    align-items: flex-end;
    padding-bottom: .5em;
    justify-content: center;
}

.mv-okurin-text img {
    height: clamp(40px, 9vw, 81px);
}

@media screen and (min-width: 768px) {
    .mv-area {
        background: none;
    }

    .mv-area-inner {
        display: grid;
        position: relative;
        max-width: 1000px;
        margin: 4% auto 0;
        justify-content: space-between;
        grid-template-columns: 17.8% 54.6% 15%;
        grid-gap: 0;
        grid-template-rows: auto;
        grid-template-areas:
            "mv-okurin mv-link mv-screen";

    }

    .mv-logo {
        position: absolute;
        z-index: 103;
        bottom: 7%;
        display: grid;
        left: 50%;
        width: 100%;
        max-width: 640px;
        align-items: center;
        transform: translateX(-50%);
        grid-template-columns: 1fr 87%;
        padding-top: 0;
        grid-gap: 0 20px;
        --shadow-color: #ffffff;
        --drop-shadow: drop-shadow(-2px -2px 5px var(--shadow-color)) drop-shadow(2px 2px 5px var(--shadow-color)) drop-shadow(2px -2px 5px var(--shadow-color)) drop-shadow(-2px 2px 5px var(--shadow-color));
    }

    .mv-logo img[src$='.svg'] {
        max-width: none;
        filter: var(--drop-shadow);
        margin: 0;
    }

    .mv-logo .icon-wrapper {
        display: block;
        width: 100%;
        margin: 0;
        border-radius: 44px;
        filter: var(--drop-shadow);
        padding: 0;
        aspect-ratio: 1/1;
        height: 100%;
    }



    .mv-copy-svg {
        fill: #333333;
        filter: none;
    }

    .mv-link {
        display: grid;
        grid-template-columns: 1fr 11.9%;
        grid-template-areas:
            "mv-copy mv-copy"
            "mv-text mv-text"
            "mv-store-link mv-qr";
        align-items: center;
        grid-gap: 0 8%;
    }

    .mv-flex-sp-only {
        display: none;
    }

    .mv-flex-pc-only {
        display: block;
    }

    .mv-link .mv-store-link {
        margin-top: 0;
        padding: 0;
        background: none;
        grid-area: mv-store-link;
        height: 100%;
    }

    .mv-link .mv-store-link .link-appstore {
        width: 43%;
        margin-right: 3%;
        height: 100%;
    }

    .mv-link .mv-store-link .link-googleplay {
        width: 52%;
    }

    .mv-screen img {
        max-width: 53%;
    }

    .mv-store-link a {
        display: flex;
        align-items: center;
        height: 100%;
    }


    .mv-link .mv-qr {
        grid-area: mv-qr;
        text-align: center;
    }

    .mv-link .mv-qr img {
        width: 100%;
        max-width: 90px;
    }

    .mv-screen img {
        height: auto;
        filter: drop-shadow(2px 4px 6px black);
        max-width: none;
        width: 100%;
    }

    .mv-okurin {}

    .mv-okurin img {
        width: 100%;
        max-width: none;
    }

    .mv-okurin .mv-screen {
        width: 35%;
        padding: 0;
        text-align: center;
        margin-left: 11%;
    }

    .mv-okurin .mv-charactor {
        filter: none;
        position: static;
        width: 100%;
    }

    .mv-okurin .mv-charactor {
        fill: transparent;
    }

    .mv-okurin img[src$='-text.svg'] {
        right: -23%;
        bottom: 12%;
        width: 56%;
        left: auto;
        top: auto;
    }

    .mv-copy {
        width: 100%;
        grid-area: mv-copy;
        margin: 0;
        margin: 0 auto;
    }

    .mv-text {
        display: block;
        grid-area: mv-text;
    }

    .mv-okurin-text {
        position: absolute;
        left: 13%;
        bottom: 4.7%;
    }

    .mv-okurin-text img {
        height: 40px;

    }

    .flexbox_movie {
        padding: 0;
    }
}

.mv-image {
    width: 100%;
    grid-area: mv-image;
    position: relative;
    margin: 0 auto;
    text-align: center;
    overflow: hidden;
}

.mv-image-content.mv-image-with-bg::after {
    content: "";
    background-image: url(../images/mainvisual.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    aspect-ratio: 1004/561;
    display: block;
    z-index: 1;
    height: 100%;
    width: 100%;
    filter: blur(13px) opacity(0.6) brightness(1.3);
}

.mv-image-content img {
    position: relative;
    z-index: 3;
    vertical-align: middle;
    filter: brightness(0.95);
}

.mv-image-content {
    position: relative;
}

.mv-image-content.mv-image-with-bg {
    background-image: linear-gradient(#00c0ca, #8dcfd1);
}

.arrow_type2::after {
    border-color: #b9eaee transparent transparent transparent !important;
}