@charset "UTF-8";

.header__cv {
    display: none;
}

@media screen and (min-width: 770px) {
    .header--new {
        font-family: Roboto, "Noto Sans JP", sans-serif;
        .header__inner {
            max-width: none;
            width: fit-content;
        }
        .header__box {
            padding: 8px 10px;
            gap: 10px;
        }
        .header__logo {
            margin-right: 0;
        }
        .nav {
            width: auto;
        }
        .nav__links {
            gap: 8px;
        }
        .nav__links li.v2 {
            font-size: 10px;
            width: auto;
            margin: 0;
            a {
                display: block grid;
                text-decoration: none;
                justify-items: center;
                text-align: center;
                width: auto;
                span {
                    white-space: nowrap;
                    line-height: 1.6
                }
            }
        }
        .header__action {
            min-width: 0;
            width: fit-content;
            margin-inline: 0;
            line-height: 1.6;
        }
        .header__tel {
            white-space: nowrap;
            line-height: 1;
            span {
                font-size: 10px;
                line-height: 1;
            }
            strong {
                font-size: 16px;
                letter-spacing: 0;
                line-height: 1;
            }
        }
        .header__hours {
            white-space: nowrap;
            font-size: 10px;
            padding: 2px 10px;
            margin-block-start: 2px;
            line-height: 1.6;
            span {
                display: none;
                line-height: 1.6;
            }
        }
        .header__cv {
            display: block;
            position: absolute;
            --__size: 80px;
            --__margin: 5px;
            width: var(--__size);
            height: var(--__size);
            top: 50%;
            right: calc((var(--__size) + var(--__margin)) * -1);
            transform: translateY(-50%);
            text-decoration: none;
        }
        .header__cv-background {
            display: block;
            position: absolute;
            object-fit: cover;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }
        .header__cv-inner {
            display: block grid;
            justify-items: center;
            text-align: center;
            position: relative;
            z-index: 1;
        }
        .header__cv-icon {
            width: 100%;
            height: auto;
        }
        .header__cv-text {
            line-height: 1.2;
            color: #fff;
            font-size: 11px;
            font-weight: bold;
            margin-block-start: -.5em;
        }
    }
}
@media screen and (min-width: 1000px) {
    .header--new {
        .header__box {
            padding: 10px 20px;
            gap: 15px;
        }
        .nav__links {
            gap: 12px;
        }
        .nav__links li.v2 {
            font-size: 12px;
        }
        .header__tel {
            span {
                font-size: 12px;
            }
            strong {
                font-size: 20px;
            }
        }
        .header__hours {
            font-size: 10px;
            padding: 2px 10px;
            span {
                display: inline;
            }
        }
        .header__cv {
            --__size: 96px;
            --__margin: 20px;
        }
        .header__cv-text {
            font-size: 13px;
            margin-block-start: -.5em;
        }
    }
}
@media screen and (min-width: 1200px) {
    .header--new {
        .header__box {
            padding: 12px 30px;
            gap: 20px;
        }
        .nav__links {
            gap: 15px;
        }
        .nav__links li.v2 {
            font-size: 13px;
        }
        .header__tel {
            span {
                font-size: 16px;
            }
            strong {
                font-size: 30px;
            }
        }
        .header__hours {
            font-size: 11px;
            padding: 2px 10px;
        }
        .header__cv {
            --__size: 96px;
            --__margin: 20px;
        }
        .header__cv-text {
            font-size: 13px;
            margin-block-start: -.5em;
        }
    }
}


.footer-nav {
	display: block grid;
	gap: 1.5em;
	margin-block: 3em 4em;
	grid-template-columns: repeat(2, 1fr);
	padding-inline: 1em;
	ul {
		display: block grid;
		align-content: start;
		gap: .5em;
		font-size: 15px;
		a {
			text-decoration: none;
		}
	}
	ul ul {
		font-size: 13px;
		margin-block: .75em;
		align-content: start;
		li {
			position: relative;
			padding-inline-start: 2em;
			&::before {
				content: '-';
				position: absolute;
				left: 1em;
			}
		}
	}
}

@media screen and (min-width: 770px) {
	.footer-nav {
		grid-template-columns: repeat(4, 1fr);
		ul {
			font-size: 16px;
		}
		ul ul {
			font-size: 14px;
		}
	}
}




.footer__info {
    display: block grid;
    margin-block: 2em 1em;
    gap: 1em;
}
.footer__sns {
    display: block flex;
    justify-content: center;
    gap: 1em;
}
@media screen and (min-width: 770px) {
    .footer__info {
        display: block flex;
        justify-content: space-between;
        align-items: center;
        gap: 2em;
    }
    .footer__sns {
        justify-content: flex-start;
    }
}
