@charset "utf-8";

.pc {
    display: none;
}

main {
    color: var(--primary-white, #FDFDFD);
}

p {
    display: block;
    text-align: justify;
}

@media screen and (min-width:769px) {
    .pc {
        display: block;
    }

    .sp {
        display: none;
    }
}

/* top_sp */
.top {
    background-image: url(../img/about/pc_about_mv.jpg);
    background-size: cover;
    background-position: bottom;
    background-repeat: no-repeat;
    height: 100vh;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

h1 {
    color: var(--primary-orange, #FFA500);
    padding-bottom: 30px;
}

h1 span {
    font-family: Ubuntu;
    font-size: 3.2rem;
    font-style: italic;
    font-weight: 400;
    line-height: 1;
    display: block;
    padding-bottom: 15px;
}

h1 i {
    font-family: Ubuntu;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    padding-left: 5px;
}

.top_content .title {
    font-size: 1rem;
    line-height: 1rem;
    letter-spacing: 0.56rem;
    padding-bottom: 5px;
    text-shadow: 1px 1px 2px papayawhip;
}

.top_content .title02 {
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 0.8rem;
    letter-spacing: 0.64rem;
    margin-bottom: 3rem;
    position: relative;
    z-index: 8;
}

.top_content .title02::before {
    transform: skewX(45deg);
    content: "";
    width: 100%;
    height: 1rem;
    position: absolute;
    z-index: 9;
    background-color: rgba(255, 255, 255, 0.5);
    left: -0.5rem;
}

.top_content .text {
    font-size: 1.4rem;
    line-height: 2.8rem;
    letter-spacing: 0.14rem;
    padding-bottom: 2rem;
}

.text_header01 {
    font-size: 2rem;
}

.text_header02 {
    font-size: 2rem;
    line-height: 3;
}

.top_content {
    padding: 0 35px;
}

/* top_pc */
@media screen and (min-width:769px) {
    .top {
        background-image: url(../img/about/pc_about_mv.jpg);
        width: 100vw;
        background-size: cover;
        background-position: bottom;
        background-repeat: no-repeat;
        height: 1100px;
    }

    .top_wrapper {
        max-width: 1000px;
        margin: 0 auto;
    }

    .top_content {
        display: flex;
        justify-content: space-between;
        gap: 90px;
        padding: 30% 35px;
    }

    .top_content h1 {
        width: 50%;
    }

    .inner_text {
        width: 50%;
    }

    .top_content h1 span {
        font-size: 9.6rem;
    }

    .top_content h1 i {
        font-size: 2.1rem;
    }

    .top_content .title02 {
        font-size: 2rem;
    }

    .top_content .text {
        font-size: 1.6rem;
    }

    .text_header01 {
        padding: 10px 0;
        font-size: 2rem;
    }

    .top {
        padding-bottom: 39rem;
    }
}

/* concept_sp */
.concept .sp {
    padding: 0 35px 100px;
}

.concept {
    margin: 0 auto;
}

.concept_01 h2,
.concept_02 h2 {
    display: grid;
    place-content: center;
    color: var(--text, #FFA500);
    font-size: 2.8rem;
    line-height: 1.5;
    margin-bottom: 10rem;
}

.concept_01 span,
.concept_02 span {
    color: #000;
    filter: blur(0.35rem);
    font-family: Ubuntu;
    font-size: 3.8rem;
    font-style: italic;
    line-height: 1;
}

.concept_01 i,
.concept_02 i {
    color: #FFA500;
    font-family: Ubuntu;
    font-size: 20px;
    font-style: italic;
    line-height: 1.6;
}

.concept_01 p,
.concept_02 p {
    color: #FFF;
    font-size: 1.4rem;
    line-height: 1.8;
    letter-spacing: 0.14rem;
    margin: 9rem auto 21rem;
    padding: 0 35px;

}

/* concept_pc */
@media screen and (min-width:769px) {
    .concept {
        max-width: 1000px;
    }

    .concept_01 {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .concept_01 .concept_header {
        grid-area: 1 / 1 / 2 / 2;
    }

    .concept_01 .pc {
        grid-area: 2 / 1 / 3 / 3;
    }

    .concept_01 p {
        grid-area: 1 / 2 / 2 / 3;
        padding: 234px 0 180px;
    }

    .concept_01 span,
    .concept_02 span {
        filter: blur(0.35rem);
        font-size: 3.8rem;
        line-height: 0.7;
    }

    .concept_01 i,
    .concept_02 i {
        font-size: 3.8rem;
        line-height: 0.7;
    }

    .concept_01 h2,
    .concept_02 h2 {
        place-content: baseline;
        font-size: 4rem;
        line-height: 2.1;
        margin-top: -2.09rem;
        padding: 0 35px;
    }

    .concept_header i {
        padding-bottom: 9.6rem;
    }

    .concept_01 p,
    .concept_02 p {
        font-size: 1.6rem;
        line-height: 1.8;
        letter-spacing: 0.16rem;
        padding: 140px 35px 170px;
        text-align: justify;
        margin: 0;
    }

    .concept_02 {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .concept_02 .concept_header {
        grid-area: 1 / 2 / 2 / 3;
        padding: 100px 35px 0 0;
    }

    .concept_02 .pc {
        grid-area: 2/ 1/ 3 / 3;
    }

    .concept_02 p {
        grid-area: 1 / 1 / 2 / 2;
        padding: 100px 35px 170px;
    }
}

/* message_sp */
.message_wrapper {
    margin: 0 auto;
    padding-top: 8.5rem;
}

.message h2 {
    display: grid;
    place-content: center;
    color: var(--text, #FFA500);
    font-size: 2.8rem;
    line-height: 1.5;
    margin-bottom: 10rem;
    -webkit-text-stroke: 0.1px #000;
}

.message_wrapper span {
    color: #000;
    filter: blur(0.35rem);
    font-family: Ubuntu;
    font-size: 3.8rem;
    font-style: italic;
    line-height: 1;
}

.message i {
    color: #FFA500;
    font-family: Ubuntu;
    font-size: 20px;
    font-style: italic;
    line-height: 1.6;
}

.message p {
    font-size: 1.4rem;
    line-height: 1.8;
    letter-spacing: 0.14rem;
    margin: 9rem auto 21rem;
    padding: 0 35px;

}

.message .sp {
    padding: 0 35px;
}

/* message_pc */
@media screen and (min-width:769px) {

    .message {
        max-width: 1000px;
        margin: 0 auto;
    }

    .message_wrapper {
        display: flex;
        justify-content: space-between;
    }

    .message_wrapper {
        display: flex;
    }

    .message .pc {
        width: 70%;
        padding-top: 100px;
    }

    .message .inner {
        width: 50%;
        margin-left: -300px;
        z-index: 3;
    }

    .message_wrapper span {
        filter: blur(0.35rem);
        font-size: 3.8rem;
        line-height: 0.7;
    }

    .message_wrapper i {
        font-size: 3.8rem;
        line-height: 0.7;
    }

    .message h2 {
        font-size: 4rem;
    }


    .message_wrapper i {
        padding-bottom: 9.6rem;
    }

    .message_wrapper p {
        max-width: 100%;
        font-size: 1.6rem;
        line-height: 1.8;
        letter-spacing: 0.16rem;
        text-align: justify;
        margin: 0;
        background-color: #ffffff78;
        color: #333A3A;
        padding: 10px 35px;
    }

}