@charset "UTF-8";
/* CSS Document */
/*-------------------------------*/

/* ABOUT */

/*------------------------------*/
:root{
    --about-gap-top: calc(164rem/16);
}
@media(max-width: 959px){
    :root{
        --about-gap-top: calc(80rem/16);
    }
}
@media(max-width:559px){
    :root{
        --about-gap-top: calc(64rem/16);
    }
}
/* リスト */
.about__list{
    width: 100%;
}
.about__item{
    margin-top: var(--about-gap-top);
    width: 100%;
}
.about__item-wrapper{
    max-width: calc(2000rem/16);
    margin-right: auto;
    margin-left: auto;
}
/* ======================
grid style */
.about__item-inner{
    --about-width: min(30%, calc(480rem/16));
    padding-left: var(--head-match-space);
    display: grid;
    grid-template-columns: var(--about-width) 1fr;
    grid-template-rows: auto auto;
    grid-template-areas: 
    "heading    photo"
    "txt        photo"
    ;
    gap: 0 min(8vw , calc(120rem/16));
}
.about-header{
    grid-area: heading;
    align-self: flex-end;
}
.about-photo__wrapper{
    grid-area: photo;
}
.about-txt__wrapper{
    grid-area: txt;
    align-self: flex-start;
}
/* grid style end
====================== */

/*-------------------------------*/
/* テキスト */
.about-header .lead{
    margin-top: 1em;
}
.about-txt__wrapper{
    margin-top: 3em;
}
/*-------------------------------*/
/* 写真 */
.about-photo__wrapper{
    width: 100%;
    height: 100%;
    position: relative;
}
.about-photo__wrapper::before{
    content: "";
    display: block;
    padding-top: 56.25%;
}
.about-photo__wrapper > img{
    display: inline-block;
    width: 100%;
    height: 100%;
    object-fit: cover;

    position: absolute;
    top: 0;
    left: 0;
}

/* =============================
/* リバース */
.about__item:nth-of-type(even){
    background-color: var(--color-main-pale);
}
/* ----------------------
grid style */
.about__item:nth-of-type(even) .about__item-inner{
    padding-left: 0;
    padding-right: var(--head-match-space);
    grid-template-columns: 1fr var(--about-width);
    grid-template-areas:
    "photo    heading"
    "photo    txt"
    ;
}
.about__item:nth-of-type(even) .about__item-inner .about-header{
    padding-top: calc(80rem/16);
}
.about__item:nth-of-type(even) .about__item-inner .about-txt__wrapper{
    padding-bottom: calc(80rem/16);
}
/* grid style end
---------------------- */
/* リバース end
============================= */

/*==============================
ブレイクポイント
==============================*/
@media(max-width: 959px){
    /*------------------------------*/
    /* コンテナ */
    .about__item-inner{
        display: block;
        padding-left: 0;
    }
    .about__item:nth-of-type(even) .about__item-inner{
        padding-right: 0;
    }
    .about-header,
    .about-txt__wrapper{
        margin-right: var(--space-lr-reg);
        margin-left: var(--space-lr-reg);
    }
    .about-photo__wrapper{
        margin-top: 3em;
    }
}
@media(max-width: 559px){
    .about__item:nth-of-type(even) .about__item-inner .about-header{
        padding-top: calc(64rem/16);
    }
    .about__item:nth-of-type(even) .about__item-inner .about-txt__wrapper{
        padding-bottom: calc(64rem/16);
    }
}