body{
    margin-block-start:0; 
    margin-block-end:0; 
    margin-inline-start:0; 
    margin-inline-end:0;
    padding-block-start:0; 
    padding-block-end:0; 
    padding-inline-start:0; 
    padding-inline-end:0;
}
/* header */
header{
    height: min(124px, 8.86vw);
    background-color: #f3f3f3;
}
header .medibang_logo{
    margin-top: 2.29vw;
    margin-left: 2.86vw;
    aspect-ratio: 109/31;
    width: 7.76vw;
}
/* main */
main{
    background-color: #f3f3f3;
    display: flex;
    flex-direction: column;
    row-gap: 70px;
}
/* FV area */
@keyframes slide1 {
    0% {
        transform: translateX(100%);
    }

    to {
        transform: translateX(-100%);
    }
}
@keyframes slide2 {
    0% {
        transform: translateX(0);
    }

    to {
        transform: translateX(-200%);
    }
}
.fv_area{
    aspect-ratio: 1400/753;
    position: relative;
    overflow-x: clip;
}
.fv_area .fv_catchphrase{
    position:absolute;
    top: max(-112px, -8vw);
    left: 0;
    right: 0;
    margin: 0 auto;
    aspect-ratio: 741/332;
    width: 52.9vw;
    z-index: 3;
}
.loopSlide {
    position: relative;
    display: flex;
    width: 100vw;
    height: 100%;
    overflow: hidden;
}

.loopSlide ul {
    padding: 0;
    width: 100vw;
    display: flex;
    flex-shrink: 0;
}

.loopSlide ul:first-child {
    animation: slide1 90s -45s linear infinite;
}

.loopSlide ul:last-child {
    animation: slide2 90s linear infinite;
}

.loopSlide ul li {
    display: inline-block;
    width: calc(100%);
    min-width: 15rem;
    height: 100%;
    padding-bottom: 35.3%;
    margin-right: 1rem;
    position: relative;
    overflow: hidden;
}

.loopSlide ul img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}
/* text area */
.text_area{
    display: block;
    width: min(1197px, 85.5vw);
    margin: 0 auto;
}
.text_area .title_area{
    width: min(50%, 598.5px);
    margin-right: min(20px, 1.43vw);
}
.text_area .sub_title{
    font-family: "Zen Maru Gothic", serif;
    font-size: min(20px, 1.43vw);
    font-weight: bold;
    width: auto;
    background-image: linear-gradient(95deg, #ff8d4e 0%, #ea2ce2 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.text_area .text_contents{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.text_area .text_contents .title{
    font-family: "Zen Maru Gothic", serif;
    font-size: min(40px, 2.86vw);
    font-weight: 900;
    width: min(534px, 38.2vw);
    background-image: linear-gradient(95deg, #ff8d4e 0%, #ea2ce2 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 1.5;
    letter-spacing: -0.05em;
}
.text_area .text_contents .text{
    font-family: "Noto Sans JP", serif;
    font-weight: normal;
    font-size: min(20px, 1.43vw);
    margin-top: min(16px, 1.14vw);
    margin-bottom: min(20px, 1.43vw);
    width: min(597px, 41.5vw);
    line-height: 1.6;
}
/* ambassador_list */
.ambassador_list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 1400px;
    column-gap: min(9px, 0.625vw);
    row-gap: min(27px, 1.93vw);
    margin: 0 auto;
    padding: 0 min(40px, 2.2vw) 150px;
}
.ambassador_list .ambassador{
    aspect-ratio: 323/391;
    width: min(323px, 23.1vw);
    position: relative;
}
.ambassador_list .film{
    background-color: #fff;
    border-radius: 17.6px;
    box-shadow: 0px 13.2px 26.4px rgba(0, 0, 0, 0.1);
}
.ambassador_list .ambassador .ambassador_name{
    font-family: "Noto Sans JP", serif;
    font-size: min(1.8vw, 26.4px);
    font-weight: bold;
    text-align: center;
    position: absolute;
    top: min(32px, 2.29vw);
    left: 0;
    right: 0;
}
.ambassador_list .ambassador .ambassador_img{
    aspect-ratio: 1/1;
    width: min(281.6px, 20.1vw);
    margin: 0 auto;
    position: absolute;
    bottom: min(21px, 1.45vw);
    left: 0;
    right: 0;
}
.ambassador_list .ambassador .ambassador_img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* footer */
.footer-container {
    background-color: #fff;
    padding: 56px 20px 40px;
    border-bottom: 16px solid;
    border-image: linear-gradient(to right, #FF8D4E, #EA2CE2) 1;
    font-family: "Hiragino Sans";
}
.footer-inner {
    max-width: 1200px;
    margin: auto;
}
.footer-box {
    display: flex;
    justify-content: space-between;
}
.footer-nav-wrap {
    display: flex;
    margin-bottom: 42px;
}
.footer-nav {
    margin-left: 40px;
}
.footer-nav-title {
    font-size: 16px;
    font-weight: 600;
    color: #363636;
    margin-bottom: 20px;
}
.footer-nav ul li {
    margin-bottom: 20px;
}
.footer-nav ul li:last-child {
    margin-bottom: 0;
}
.footer-nav ul li a {
    font-size: 14px;
    color: #acacac;
}
.twitter-link a {
    position: relative;
    padding-left: 20px;
}
.twitter-link a::before {
    content: url('./img/x_logo.svg');
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
}
.footer-info ul {
    display: flex;
    gap: 0 24px;
    margin: auto;
    justify-content: center;
}
.footer-info ul li a {
    font-size: 12px;
    color: #acacac;
}
.css-175oi2r {
    border: none !important;
}

@media screen and (max-width: 1024px) {
    main{
        row-gap: 0;
    }
    /* header */
    header{
        height: 13.3vw;
    }
    header .medibang_logo{
        aspect-ratio: 78/22;
        width: 20.8vw;
        margin: 7.2vw 0 0 8vw;
    }
    /* main */
    .fv_area{
        aspect-ratio: 375/369;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
    }
    .fv_area .fv_catchphrase{
        aspect-ratio: 307/138;
        width: 81.9vw;
        top: -4.8vw;
    }
    .loopSlide{
        height: 78.9vw;
    }
    .loopSlide ul{
        width: 166vw;
    }
    .loopSlide ul:first-child {
        animation: slide1 80s -40s linear infinite;
    }
    .loopSlide ul:last-child {
        animation: slide2 80s linear infinite;
    }
    .loopSlide ul li{
        margin-right:1.6vw;
    }
    /* text area */
    .text_area{
        width: 84vw;
        margin-top: 11.2vw;
        margin-bottom: 6.67vw;
    }
    .text_area .sub_title{
        font-size: 3.47vw;
        margin-bottom: 3.47vw;
    }
    .text_area .text_contents{
        flex-direction: column;
        row-gap: 6.9vw;
        align-items: flex-start;
    }
    .text_area .text_contents .title{
        font-size: 6.13vw;
        width: 100%;
    }
    .text_area .text_contents .text{
        font-size: 3.47vw;
        width: 100%;
    }

    /* ambassador_list */
    .ambassador_list{
        column-gap: 1.3vw;
        row-gap: 3.2vw;
        padding: 0 2vw 50px;
    }
    .ambassador_list .film{
        border-radius: 2.4vw;
    }
    .ambassador_list .ambassador{
        aspect-ratio: 169/205;
        width: 45.1vw;
    }
    .ambassador_list .ambassador .ambassador_name{
        font-size: 4.3vw;
        top: 4.53vw;
    }
    .ambassador_list .ambassador .ambassador_img{
        width: 39.3vw;
        bottom: 3.2vw;
    }
    /* footer */
    .footer-container {
        background-color: #fff;
        padding: 47px 30px 23px;
        border-bottom: 16px solid;
        border-image: linear-gradient(to right, #FF8D4E, #EA2CE2) 1;
    }
    .footer-box {
        display: block;
    }
    .footer-nav-wrap {
        display: block;
        margin-top: 46px;
        margin-bottom: 56px;
    }
    .footer-nav {
        margin-top: 44px;
        margin-left: 0;
    }
    .footer-nav ul li {
        margin-bottom: 13px;
    }
    .footer-nav ul li a {
        font-size: 12px;
        color: #acacac;
    }
    .footer-info ul li a {
        font-size: 10px;
    }
    .footer-info ul {
        gap: 5px 16px;
        flex-wrap: wrap;
    }
    .X_timelinearea_contents {
        margin-top: -6px;
    }
}