/* ----------------------------------------
CONTACT link：お問い合わせリンクパーツ
---------------------------------------- */

/* リセット */
.contact-link__fax .contact-link__num {
    pointer-events: none; /* リンクを無効化 */
    cursor: default;      /* マウスカーソルを通常状態に設定 */
    text-decoration: none; /* 下線を削除 */
}


.contact h2 {
    margin-bottom: 1.3em;
}

.contact-link {
    border-top: 2px solid var(--color-base);
}

/* お問い合わせページではborder-topを消す */
.page-contact {

    .contact {
        padding: 0 var(--padding-container) var(--space);
    }

    .contact-link {
        border-top: none;
    }
}

.contact-link__list {
    display: grid;
    grid-template-columns: 1fr auto;
    /* 左を可変、右を内容に合わせる */
    gap: 0 1em;
    align-items: center;
    /* 垂直方向の中央揃え */
    --space-min: 37;
    --space-max: 58;
    margin-bottom: var(--space);

    --font-min: 16;
    --font-max: 36;
    font-size: var(--font-size);
    font-weight: var(--wght-regular);
}

.contact-link li {
    display: grid;
    align-items: center;
    grid-template-columns: subgrid;
    grid-column: span 2;
    border-bottom: 1px solid var(--color-base);

    /* inner-md と inner-sm の差分をpaddingに */
    padding: 39px calc((var(--inner-md) - var(--inner-sm)) / 2);
}

.contact-link__content {
    justify-self: center;
    position: relative;
}

/* 電話/FAX */
.contact-link__num {
    letter-spacing: 0.13em;
    --font-min: 20;
    --font-max: 64;
    font-size: var(--font-size);
    font-family: var(--fontFamily-en);
    font-weight: var(--wght-light);
    line-height: 1;
    display: inline-block;
    width: max-content;
}

/* 項目タイトル */
.contact-link__label {
    line-height: 1.5;
    letter-spacing: 0.13em;
    display: flex;
    align-items: center;
    gap: 0.4em;
    position: relative;
}

.contact-link__time {
    position: absolute;
    --font-min: 16;
    --font-max: 18;
    font-size: var(--font-size);
    font-weight: var(--wght-regular);

    span {
        font-family: var(--fontFamily-en);
    }
}

/* 擬似要素でアイコンの追加 */
.contact-link__label::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background: url(../../img/common/icon_phone.svg) no-repeat center/contain;
    margin-bottom: -0.1em;
}

/* チェックアイコン */
.contact-link__visit p::before {
    background: url(../../img/common/icon_check.svg) no-repeat center/contain;
}

/* メールアイコン */
.contact-link__form p::before {
    background: url(../../img/common/icon_check.svg) no-repeat center/contain;
}

/* 空のsubは非表示 */
.contact-link__sub:empty {
    display: none;
}

/* 矢印の位置を少しずらす */
.contact-link__visit .contact-link__content,
.contact-link__form .contact-link__content {
    margin-left: auto;
    --space-min: 0;
    --space-max: 116;
    margin-right: var(--space);
}

.contact-link .circle-arrow {
    width: 1.5em;
    height: 1.5em;
    display: flex;
}

@media (width < 800px) {

    .contact h2 {
    margin-bottom: 0.45em;
    margin-inline: 11px;
}

    .contact-link__list li {
        padding: 1.3em 0;
    }

    .contact-link__label{
        letter-spacing: 0;
        font-weight: var(--wght-bold);
    }

    li.contact-link__phone,
    li.contact-link__fax {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 3px;
    }

    .contact-link__time {
        position: static;
        margin-top: -4px;
    }

    .contact-link__num {
        --font-min: 30;
        --font-max: 64;
        font-size: var(--font-size);
        font-weight: var(--wght-semi-bold);
        letter-spacing: 0.03em;
    }

    .contact-link__visit, .contact-link__form {
        padding: 2em 0 2.35em !important;
    }

    .contact-link__visit .contact-link__label, .contact-link__form .contact-link__label{
        letter-spacing: 0.13em;
    }

    .contact-link .circle-arrow {
        margin-right:11px;
}

}