@charset "utf-8";

#contents {
    padding-top: 0;
    padding-bottom: 15px;
}

#contents>* {
    margin-bottom: 90px;
}

.teamInner {
    background: var(--color-text);
    padding: 80px;
}

.teamComingsoonTxt {
    font-family: "Roboto Condensed", sans-serif;
    font-size: 1.875rem;
    font-weight: bold;
    line-height: var(--line-height-base06);
    color: var(--color-bg);
    margin: 0;
    text-align: center;
}


.teamHeadBl {
    padding: 100px 0 138px;
    background: url(../img/team/team_head_bg.jpg) no-repeat center/cover;
}

.teamHeadTtl {
    max-width: 616px;
    margin: 0 auto 65px;
    padding: 0;
}

.teamHeadTtl::before,
.teamHeadTtl::after {
    display: none;
}

.teamHeadNameEn {
    font-family: "Roboto Condensed", sans-serif;
    font-size: 4.375rem;
    font-weight: 800;
    line-height: var(--line-height-base07);
    color: var(--color-text);
    text-align: center;
    margin-bottom: 6px;
}

.teamHeadNameJp {
    font-size: 2.1875rem;
    font-weight: 900;
    line-height: var(--line-height-base06);
    color: var(--color-text);
    text-align: center;
    margin-bottom: 65px;
}

.teamHeadDescWrap {
    max-width: 670px;
    margin: 0 auto;
}

.teamHeadDesc {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: var(--line-height-base02);
    color: var(--color-text);
}

.teamHeadDesc+.teamHeadDesc {
    margin-top: 16px;
}


.philosophyBl .teamInner {
    position: relative;
    z-index: 1;
}

.philosophyBl .teamInner::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/team/team_philosophy_bg.png) no-repeat right top / contain;
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
}

.philosophyLineArea {
    border: 5px solid var(--color-green03);
    padding: 58px 40px;
}

.philosophyLineAreaDesc {
    font-size: 1.25rem;
    font-weight: 900;
    line-height: var(--line-height-base04);
    color: var(--color-bg);
    text-align: center;
}

.philosophyLineAreaDesc+.philosophyLineAreaDesc {
    margin-top: 20px;
}


.emblemBl .teamInner {
    position: relative;
    height: 500px;
}

.emblemLogo {
    max-width: 361px;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -46px;
}

.emblemInner {
    padding: 70px 40px;
    background: url(../img/team/team_head_bg.jpg) no-repeat center / cover;
}

.emblemDesc {
    font-size: 1.25rem;
    font-weight: 900;
    line-height: var(--line-height-base04);
    color: var(--color-text);
    text-align: center;
}

.emblemDesc+.emblemDesc {
    margin-top: 20px;
}


.gameStadiumFlex {
    display: flex;
    border: 5px solid var(--color-green03);
}

.gameStadiumPic {
    width: 50.5%;
}

.gameStadiumPic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.gameStadiumTxt {
    width: 49.5%;
    padding: 45px;
    background: var(--color-gray07);
    display: flex;
    align-items: center;
}

.gameStadiumName {
    font-size: 1.25rem;
    font-weight: 900;
    line-height: var(--line-height-base04);
    color: var(--color-bg);
}

.gameStadiumList {
    margin-top: 48px;
}

.gameStadiumItem {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: var(--line-height-base06);
    color: var(--color-bg);
}

.gameStadiumItem+.gameStadiumItem {
    margin-top: 25px;
}

.gameStadiumItemLlink {
    display: block;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 7px;
    position: relative;
    padding-left: 35px;
}

.gameStadiumItemLlink:hover {
    text-decoration: none;
}

.gameStadiumItemLlink::before {
    content: '';
    display: block;
    position: absolute;
    top: 3px;
    margin: auto;
}

.gameStadiumItem:nth-child(1) .gameStadiumItemLlink::before {
    width: 20px;
    height: 25px;
    background: url(../img/common/icn_mappin_green.svg) no-repeat center / contain;
    left: 5px;
}

.gameStadiumItem:nth-child(2) .gameStadiumItemLlink::before {
    width: 23px;
    height: 23px;
    background: url(../img/common/icn_network_green.svg) no-repeat center / contain;
    left: 3px;
}


.fanLettersBoxTtl {
    background: var(--color-green01);
    line-height: var(--line-height-base07);
    color: var(--color-text);
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0;
    padding: 14px 10px 14px 22px;
    position: relative;
    overflow: hidden;
}

.fanLettersBoxTtl::before {
    content: '';
    display: block;
    width: 8px;
    height: 100%;
    background: var(--color-bg);
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.fanLettersBoxTtl::after {
    display: none;
}

.fanLettersBoxInner {
    background: var(--color-gray07);
    padding: 42px 45px 60px;
}

.fanLettersBoxDesc,
.fanLettersBoxBulletTtl,
.fanLettersBoxBulletItem {
    font-size: 1rem;
    font-weight: 500;
    line-height: var(--line-height-base06);
    color: var(--color-bg);
}

.fanLettersBoxDesc {
    word-break: break-word;
}

.fanLettersBoxBullet {
    margin-top: 26px;
}

.fanLettersBoxBulletTtl {
    text-indent: -1em;
    padding-left: 1em;
}

.fanLettersBoxBulletItem {
    text-indent: -1em;
    padding-left: 1em;
}


@media screen and (max-width:1000px) {
    .teamInner {
        padding: 40px;
    }

    .gameStadiumFlex {
        display: block;
    }

    .gameStadiumPic,
    .gameStadiumTxt {
        width: auto;
    }

    .gameStadiumList {
        margin-top: 28px;
    }
}


@media screen and (max-width: 767px) {
    #contents>* {
        margin-bottom: calc(100vw / 7.5);
    }

    .teamInner {
        padding: calc(60vw / 7.5) calc(37vw / 7.5);
    }

    .teamComingsoonTxt {
        font-size: calc(40vw / 7.5);
    }

    .teamHeadBl {
        padding: calc(136vw / 7.5) 0 calc(106vw / 7.5);
    }

    .teamHeadTtl {
        max-width: inherit;
        width: calc(670vw / 7.5);
        margin: 0 auto calc(50vw / 7.5);
    }

    .teamHeadNameEn {
        font-size: calc(78vw / 7.5);
        margin-bottom: calc(20vw / 7.5);
    }

    .teamHeadNameJp {
        font-size: calc(38vw / 7.5);
        margin-bottom: calc(50vw / 7.5);
    }

    .teamHeadDesc {
        font-size: calc(28vw / 7.5);
    }

    .teamHeadDesc+.teamHeadDesc {
        margin-top: calc(20vw / 7.5);
    }

    .philosophyLineArea {
        padding: calc(40vw / 7.5) calc(37vw / 7.5);
    }

    .philosophyLineAreaDesc,
    .emblemDesc,
    .gameStadiumName {
        font-size: calc(30vw / 7.5);
    }

    .philosophyLineAreaDesc+.philosophyLineAreaDesc,
    .emblemDesc+.emblemDesc {
        margin-top: calc(30vw / 7.5);
    }

    .emblemBl .teamInner {
        height: calc(520vw / 7.5);
    }

    .emblemLogo {
        max-width: inherit;
        width: calc(370vw / 7.5);
        bottom: calc(-46vw / 7.5);
    }

    .emblemInner {
        padding: calc(60vw / 7.5) calc(37vw / 7.5) calc(40vw / 7.5);
    }

    .gameStadiumTxt {
        padding: calc(37vw / 7.5) calc(37vw / 7.5) calc(52vw / 7.5);
        display: block;
    }

    .gameStadiumList {
        margin-top: calc(17vw / 7.5);
    }

    .gameStadiumItem {
        font-size: calc(26vw / 7.5);
    }

    .gameStadiumItem+.gameStadiumItem {
        margin-top: calc(20vw / 7.5);
    }

    .gameStadiumItemLlink {
        text-underline-offset: calc(6vw / 7.5);
        padding-left: calc(40vw / 7.5);
    }

    .gameStadiumItemLlink:hover {
        text-decoration: underline;
    }

    .gameStadiumItem:nth-child(1) .gameStadiumItemLlink::before {
        width: calc(25vw / 7.5);
        height: calc(30vw / 7.5);
        top: calc(4vw / 7.5);
        left: calc(2vw / 7.5);
    }

    .gameStadiumItem:nth-child(2) .gameStadiumItemLlink::before {
        width: calc(30vw / 7.5);
        height: calc(30vw / 7.5);
        top: calc(5vw / 7.5);
        left: 0;
    }

    .fanLettersBoxTtl {
        font-size: calc(32vw / 7.5);
        padding: calc(11vw / 7.5) calc(11vw / 7.5) calc(12vw / 7.5) calc(28vw / 7.5);
    }

    .fanLettersBoxTtl::before {
        width: calc(10vw / 7.5);
    }

    .fanLettersBoxInner {
        padding: calc(35vw / 7.5) calc(37vw / 7.5);
    }

    .fanLettersBoxDesc,
    .fanLettersBoxBulletTtl,
    .fanLettersBoxBulletItem {
        font-size: calc(24vw / 7.5);
    }

    .fanLettersBoxBullet {
        margin-top: calc(24vw / 7.5);
    }

    .fanLettersBoxBulletItem {
        margin-top: calc(10vw / 7.5);
    }

}