/*
 * ヘッダー専用スタイル
 */

/* p-header-tel (電話番号) */
.p-header-tel {
    text-align: center;
}

a.p-header-tel__link {
    align-items: center;
    color: var(--color--theme--primary);
    display: inline-flex;
    font-size: clamp(12px, 3.3vw, 43px);
    gap: .3em;
    text-decoration: none;
}

a.p-header-tel__link:hover {
    color: var(--color--theme--primary);
    opacity: 0.7;
}

.p-header-tel__icon {
    width: clamp(13px, 3vw, 39px);
    height: auto;
}

.p-header-tel__num {
    font-family: "Roboto", var(--font-family-default);
    font-weight: var(--font-weight--bold);
    line-height: 1;
}

.p-header-tel__note {
    color: var(--color--base--gray);
    font-size: clamp(6px, 1.2vw, 16px);
    letter-spacing: -0.04em;
    line-height: 1.3;
    margin-block-start: 0;
    padding-inline-start: calc(clamp(13px, 3vw, 39px) + .8em);
    white-space: nowrap;
}

/* p-header-contact (お問い合わせボタン) */
a.p-header-contact {
    align-items: center;
    color: var(--color--theme--primary);
    display: none;
    font-weight: var(--font-weight--bold);
    gap: .5em;
    line-height: 1.2;
    margin-inline-start: 1em;
    margin-inline-end: .5em;
    text-decoration: none;
    white-space: nowrap;
}

a.p-header-contact:hover {
    color: var(--color--theme--primary);
    opacity: 0.7;
}

.p-header-contact__icon {
    width: 1.5em;
    height: auto;
}

.p-header-contact__label {
    white-space: nowrap;
}

/* p-header-cta (CTAボタン) */
a.p-header-cta {
    align-items: center;
    background-color: var(--color--theme--primary);
    border: 2px solid var(--color--theme--primary);
    border-radius: 5px;
    color: var(--color--base--white);
    display: none;
    font-weight: var(--font-weight--bold);
    gap: .5em;
    height: 61px;
    line-height: 1.2;
    padding: .4em .8em .4em .6em;
    text-decoration: none;
    white-space: nowrap;
    width: 285px;
    transition: all 0.3s ease;
}

a.p-header-cta:hover {
    opacity: 0.8;
}

/* 旧ホバースタイル
a.p-header-cta:hover {
    background-color: var(--color--base--white);
    color: var(--color--theme--primary);
}
*/

a.p-header-cta--orange {
    background-color: var(--color--theme--secondary);
    border-color: var(--color--theme--secondary);
    margin-inline-start: -.5em;
}

/* 旧ホバースタイル
a.p-header-cta--orange:hover {
    background-color: var(--color--base--white);
    color: var(--color--theme--secondary);
}
*/

.p-header-cta__zero {
    align-items: center;
    background-color: var(--color--base--white);
    border-radius: 5px;
    color: var(--color--theme--primary);
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    justify-content: center;
    line-height: 1;
    width: 48px;
    height: 48px;
    transition: all 0.3s ease;
}

/* 旧ホバースタイル
a.p-header-cta:hover .p-header-cta__zero {
    background-color: var(--color--theme--primary);
    color: var(--color--base--white);
}
*/

.p-header-cta--orange .p-header-cta__zero {
    color: var(--color--theme--secondary);
}

/* 旧ホバースタイル
a.p-header-cta--orange:hover .p-header-cta__zero {
    background-color: var(--color--theme--secondary);
    color: var(--color--base--white);
}
*/

.p-header-cta__free {
    font-size: 1.1em;
    letter-spacing: 0.1em;
}

.p-header-cta__label {
    flex: 1;
    font-size: 18px;
    letter-spacing: -0.04em;
    text-align: center;
}

/* メディアクエリ */
@media (min-width: 1461px) {
    a.p-header-contact {
        display: inline-flex;
    }

    a.p-header-cta {
        display: inline-flex;
    }
}

/* SP用調整 */
@media (max-width: 768px) {
    .p-header-tel {
        display: none;
    }

    .p-header-logo__img {
        max-width: 125%;
        height: auto;
    }

    .p-header-logo__deco {
        max-width: 115%;
        height: auto;
        margin-right: -0.2em;
    }

    .p-header-logo__wrapper {
        gap: 0.4em;
    }
}
