@charset "utf-8";


/* ---------------------------
navi
* --------------------------- */
.ir__level1Nav + h2,
.ir__level1Nav + h3 {
    margin-top: 0 !important;
}
.ir__level1Nav_list {
    display: flex;
    flex-wrap: wrap;
}
.ir__level1Nav_list_item {
    & a {
        background: var(--base-color-white);
        border: 1px solid var(--base-color-gray);
        color: var(--base-color-dark-gray);
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: var(--font-weight-bold);
        text-align: center;
    }
}
@media (min-width: 751px) {
    .ir__level1Nav {
        margin-bottom: 100px;
    }
    .ir__level1Nav_list {
        gap: 20px;
    }
    .ir__level1Nav_list_item {
        width: calc((100% - (20px * 4)) / 5);

        & a {
            font-size: 16px;
            padding: 8px;
            transition: var(--card--transition-duration);

            &:hover {
                background: var(--base-color-gray);
                color: var(--base-color-white);
            }
        }
    }
}
@media (max-width: 750px) {
    .ir__level1Nav {
        margin-bottom: 11.1111111111vw;
    }
    .ir__level1Nav_list {
        gap: 3.4722222222vw;
    }
    .ir__level1Nav_list_item {
        width: calc((100% - 3.4722222222vw) / 2);

        & a {
            padding: 1.6666666667vw 3.4722222222vw;
        }
    }
}

.ir__level2Nav + h2,
.ir__level2Nav + h3 {
    margin-top: 0 !important;
}
.ir__level2Nav_list {
    display: flex;
    align-items: center;
    justify-content: center;
}
.ir__level2Nav_list_item {
    & a {
        color: var(--key-color-green);
    }
    & a[target="_blank"] {
        &::after {
            content: "";
            background-color: var(--key-color-green);
            display: inline-block;
            mask: url(/wp-content/themes/gimic/assets/img/icons/icon-window.svg) center no-repeat;
            mask-image: url(/wp-content/themes/gimic/assets/img/icons/icon-window.svg);
            vertical-align: middle;
        }
    }
}
@media (min-width: 751px) {
    .ir__level2Nav {
        margin-bottom: 100px;
    }
    .ir__level2Nav_list {
        &::before {
            content: "｜　";
        }
        &::after {
            content: "　｜";
        }
    }
    .ir__level2Nav_list_item {
        & + & {
            &::before {
                content: "　｜　";
            }
        }
        & a[target="_blank"] {
            &::after {
                width: 24px;
                height: 24px;
            }
        }
    }
}
@media (max-width: 750px) {
    .ir__level2Nav {
        margin-bottom: 11.1111111111vw;
    }
    .ir__level2Nav_list {
        flex-direction: column;
        gap: 1em;
        text-align: center;
    }
    .ir__level2Nav_list_item {
        position: relative;
        width: 100%;

        &::before {
            content: "｜";
            position: absolute;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
        }
        &::after {
            content: "｜";
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
        }
        & a[target="_blank"] {
            &::after {
                width: 3.8888888889vw;
                height: 3.8888888889vw;
            }
        }
    }
}


/* ---------------------------
link
* --------------------------- */
.ir__txtLink {
    text-decoration: underline;
}
.ir__txtLink[target="_blank"] {
        &::after {
            content: "";
            background-color: var(--key-color-green);
            display: inline-block;
            mask: url(/wp-content/themes/gimic/assets/img/icons/icon-window.svg) center no-repeat;
            mask-image: url(/wp-content/themes/gimic/assets/img/icons/icon-window.svg);
            vertical-align: middle;
        }
}
@media (min-width: 751px) {
    .ir__txtLink[target="_blank"] {
        &::after {
            width: 24px;
            height: 24px;
        }
    }
}
@media (max-width: 750px) {
    .ir__txtLink[target="_blank"] {
        &::after {
            width: 3.8888888889vw;
            height: 3.8888888889vw;
        }
    }
}


/* ---------------------------
table
* --------------------------- */
@media (min-width: 751px) {
    .ir__tbl {
        width: 100%;

        & th,
        & td {
            padding: 28px 0;
            text-align: left;
            vertical-align: top;
        }
        & th {
            font-weight: var(--font-weight-bold);
            border-top: 1px solid var(--base-color-dark-gray);
        }
        & td {
            padding-left: 16px;
            position: relative;
            border-top: 1px solid var(--base-color-gray);

            &::before {
                content: "";
                width: 16px;
                height: 3px;
                position: absolute;
                top: -2px;
                left: 0;
                background: var(--base-color-white);
            }
        }
        & tr:last-child {
            & th {
                border-bottom: 1px solid var(--base-color-dark-gray);
            }
            & td {
                border-bottom: 1px solid var(--base-color-gray);
            }
        }
    }
}
@media (max-width: 750px) {
    .ir__tbl {
        border-bottom: .2777777778vw solid var(--base-color-dark-gray);
        display: block;
        text-align: left;

        & tbody,
        & tr,
        & th,
        & td {
            display: block;
            text-align: left;
        }
        & th {
            font-weight: var(--font-weight-bold);
            padding: 3.4722222222vw 5vw;
            border-top: .2777777778vw solid var(--base-color-dark-gray);
            border-bottom: .2777777778vw solid var(--base-color-gray);
        }
        & td {
            padding: 5.1388888889vw 0;

            & p {
                margin: 0 5vw;
            }
        }
    }
}


/* ---------------------------
IRTOP
* --------------------------- */
.irTop__newsSec_ttl {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    font-weight: var(--font-weight-bold);
    text-align: center;
}
.irTop__newsSec_ttl-en {
    color: var(--base-color-dark-gray);
    display: block;
    line-height: 1.6;
}
.irTop__newsSec_ttl-ja {
    color: var(--base-color-dark-gray);
    display: block;
    opacity: .5;
}
@media (min-width: 751px) {
    .irTop__newsSec {
        padding-top: 70px;

        & .inner {
            padding-bottom: 160px !important;
        }
        & .button {
            margin-top: 45px;
        }
    }
    .irTop__newsSec_ttl {
        gap: 8px;
        margin-bottom: 60px !important;
    }
    .irTop__newsSec_ttl-en {
        font-size: 48px;
    }
    .irTop__newsSec_ttl-ja {
        font-size: 18px;
    }
}
@media (max-width: 750px) {
    .irTop__newsSec {
        & .button {
            margin-top: 13.3333333333vw;
        }
    }
    .irTop__newsSec_ttl {
        margin-bottom: 17.7777777778vw !important;
    }
    .irTop__newsSec_ttl-en {
        font-size: 9vw;
    }
    .irTop__newsSec_ttl-ja {
        font-size: 3.8888888889vw;
    }
}

.irTop__messageSec {
    background: url(/ir/img/index/bg-green.jpg) center center / cover no-repeat;

    & .inner {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}
.irTop__messageSec_box {
    background: var(--base-color-white);
    display: flex;
    overflow: hidden;
}
.irTop__messageSec_img {
    margin: 0;
}
.irTop__messageSec_ttl {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    font-weight: var(--font-weight-bold);
    text-align: center;
}
.irTop__messageSec_ttl-en {
    color: var(--base-color-dark-gray);
    display: block;
    line-height: 1.6;
}
.irTop__messageSec_ttl-ja {
    color: var(--base-color-dark-gray);
    display: block;
    opacity: .5;
}
@media (min-width: 751px) {
    .irTop__messageSec {
        padding: 100px 0;
    }
    .irTop__messageSec_box {
        border-radius: 20px 0;
        align-items: center;
    }
    .irTop__messageSec_img {
        width: 50%;
    }
    .irTop__messageSec_main {
        width: 50%;
    }
    .irTop__messageSec_ttl {
        gap: 8px;
        margin-bottom: 40px !important;
    }
    .irTop__messageSec_ttl-en {
        font-size: 48px;
    }
    .irTop__messageSec_ttl-ja {
        font-size: 18px;
    }
}
@media (max-width: 750px)  {
    .irTop__messageSec {
        padding: 19.4444444444vw 0 22.2222222222vw;
    }
    .irTop__messageSec_box {
        border-radius: 6.6666666667vw 0;
        flex-direction: column;
    }
    .irTop__messageSec_main {
        padding: 5.5555555556vw 5vw;
    }
    .irTop__messageSec_ttl {
        margin-bottom: 11.1111111111vw !important;
    }
    .irTop__messageSec_ttl-en {
        font-size: 9vw;
    }
    .irTop__messageSec_ttl-ja {
        font-size: 3.8888888889vw;
    }
}

.irTop__cardSec {
    background: var(--base-color-gradation);

    & .inner {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}
.irTop__cardSec_cardList {
    display: flex;
}
.irTop__cardSec_cardList_ttl {
    color: var(--base-color-dark-gray) !important;
    font-weight: var(--font-weight-bold);
    text-align: center;
}
.irTop__cardSec_cardList_img {
    margin: 0;
    text-align: center;
}
.irTop__cardSec_cardList_linkList {
    & .button {
        margin-bottom: 0 !important;
        width: 100%;

        & a {
            font-weight: var(--font-weight-basic);
        }
    }
}
.irTop__cardSec_cardList_item {
    background: var(--base-color-white);
}
a.irTop__cardSec_cardList_item {
    position: relative;

    &::before {
        background-color: var(--base-color-dark-gray);
        content: "";
        position: absolute;
        mask: url(/wp-content/themes/gimic/assets/img/icons/icon-arrow-link.svg) center no-repeat;
    }
}
@media (min-width: 751px) {
    .irTop__cardSec {
        padding: 162px 0 172px;
    }
    .irTop__cardSec_cardList {
        flex-wrap: wrap;
        gap: 32px;
    }
    .irTop__cardSec_cardList_item {
        border-radius: 20px 0;
        padding: 46px 22px 30px;
        transition: box-shadow var(--card--transition-duration);
        width: calc((100% - (32px * 2)) / 3);

        &:hover {
            box-shadow: 0px 0px 16px rgba(59, 74, 78, .1);
        }
    }
    a.irTop__cardSec_cardList_item {
        padding-bottom: 72px;

        &::before {
            right: 24px;
            bottom: 30px;
            width: 24px;
            height: 24px;
        }
    }
    .irTop__cardSec_cardList_ttl {
        font-size: 24px !important;
        margin-bottom: 24px !important;
    }
    .irTop__cardSec_cardList_linkList {
        margin-top: 20px;

        & .button {
            & + & {
                margin-top: 5px;
            }
        }
    }
}
@media (max-width: 750px) {
    .irTop__cardSec {
        padding: 23.8888888889vw 0 26.6666666667vw;
    }
    .irTop__cardSec_cardList {
        flex-direction: column;
        gap: 11.1111111111vw;
    }
    .irTop__cardSec_cardList_item {
        border-radius: 6.6666666667vw 0;
        padding: 5.5555555556vw 5vw 11.1111111111vw;
        width: 100%;
    }
    a.irTop__cardSec_cardList_item {
        padding-bottom: 11.1111111111vw;

        &::before {
            right: 5.5555555556vw;
            bottom: 5.5555555556vw;
            width: 6.6666666667vw;
            height: 6.6666666667vw;
        }
    }
    .irTop__cardSec_cardList_ttl {
        font-size: 5.5555555556vw !important;
        margin-bottom: 4.1666666667vw !important;
    }
    .irTop__cardSec_cardList_linkList {
        margin-top: 4.1666666667vw;

        & .button {
            font-size: 3.8888888889vw;

            & + & {
                margin-top: 1.1111111111vw;
            }
        }
    }
    .irTop__cardSec_cardList_img {
        margin: 0 auto;
        width: 40vw;
    }
}

.irTop__cardSec_btnList {
    display: flex;

    & .button {
        margin-bottom: 0 !important;

        & a {
            font-weight: var(--font-weight-basic);
        }
    }
}
@media (min-width: 751px) {
    .irTop__cardSec_btnList {
        flex-wrap: wrap;
        gap: 32px;
        margin-top: 100px;

        & .button {
            width: calc((100% - (32px * 2)) / 3);
        }
    }
}
@media (max-width: 750px) {
    .irTop__cardSec_btnList {
        flex-direction: column;
        gap: 1.1111111111vw;
        margin-top: 17.7777777778vw;

        & .button {
            width: 100%;
        }
    }
}


/* ---------------------------
株主・投資家の皆様へ
* --------------------------- */
.irMessage__box {
    display: flex;
}
.irMessage__box_img {
    margin: 0;
    overflow: hidden;

    & img {
        max-width: 100%;
    }
}
@media (min-width: 751px) {
    .irMessage__box {
        gap: 40px;
    }
    .irMessage__box_img {
        border-radius: 24px 0;
        flex-shrink: 0;
        width: 400px;
    }
}
@media (max-width: 750px) {
    .irMessage__box {
        flex-direction: column;
        gap: 11.1111111111vw;
    }
    .irMessage__box_img {
        border-radius: 6.6666666667vw 0;
    }
}


/* ---------------------------
株式情報
* --------------------------- */
@media (min-width: 751px) {
    .ir__stockTbl {
        & th {
            width: 200px;
        }
    }
}


/* ---------------------------
IRカレンダー
* --------------------------- */
.irCalendar__img {
    display: flex;

    & img {
        max-width: 100%;
    }
}
@media (min-width: 751px) {
    .irCalendar__img {
        gap: 2px;
        justify-content: space-between;
        margin-bottom: 40px;

        & img {
            width: calc((100% - 2px) / 2);
        }
    }
}
@media (max-width: 750px) {
    .irCalendar__img {
        flex-direction: column;
        gap: 2.7777777778vw;
        margin-bottom: 11.1111111111vw;

        & img {
            width: 100%;
        }
    }
}


/* ---------------------------
よくあるご質問
* --------------------------- */
.irFaq__list {
    & + & {
        border-top: 1px solid var(--base-color-gray);
    }
}
.irFaq__list_q {
    font-weight: var(--font-weight-bold);
    position: relative;

    &::before {
        content: "Q.";
        color: var(--key-color-green);
        font-weight: var(--font-weight-bold);
        position: absolute;
        left: 0;
    }
}
.irFaq__list_a {
    position: relative;

    &::before {
        content: "A.";
        color: var(--base-color-gray);
        font-weight: var(--font-weight-bold);
        position: absolute;
        left: 0;
    }
}
@media (min-width: 751px) {
    .irFaq__list {
        & + & {
            margin-top: 40px;
            padding-top: 40px;
        }
    }
    .irFaq__list_q {
        font-size: 18px;
        padding-left: 30px;
    }
    .irFaq__list_a {
        margin-top: 10px;
        padding-left: 30px;
    
        &::before {
            font-size: 18px;
            top: -2px;
        }
    }
}
@media (max-width: 750px) {
    .irFaq__list {
        & + & {
            margin-top: 11.1111111111vw;
            padding-top: 11.1111111111vw;
        }
    }
    .irFaq__list_q {
        font-size: 5vw;
        padding-left: 8vw;
    }
    .irFaq__list_a {
        margin-top: 2.7777777778vw;
        padding-left: 8vw;
    
        &::before {
            font-size: 5vw;
            top: -1.5vw;
        }
    }
}