html {
    scroll-padding-top: 66px;
    scroll-behavior: smooth;
}

body {
    background-color: #ffffff;
    color: #333333;
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
    line-height: 1.8;
    letter-spacing: 0.05em;
}

body:not(#policy) section:nth-child(even) {
    background-color: #edf3e8;
}

h1,
h2 {
    font-family: "Yu Mincho", "游明朝", "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
}

img {
    max-width: 100%;
    height: auto;
    object-fit: cover;
}

.mincho {
    font-family: "Yu Mincho", "游明朝", "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif;
}

.underline {
    color: #192F60;
    text-decoration: underline #192F60 1px;
    text-underline-offset: 1em;
}

.subtitle {
    opacity: 0.25;
    letter-spacing: 0.5em;
}

nav {
    background-color: #192F60;
}

.navbar-brand,
.nav-link {
    color: #ffffff;
}

.navbar-brand:hover,
.nav-link:hover {
    color: #ffffff;
    opacity: 0.75;
}

nav .btn,
nav .btn:hover {
    background-color: #E6B422;
    border-color: #E6B422;
    color: #ffffff;
    letter-spacing: 0.05em;
}

nav .btn:hover {
    opacity: 0.75;
}

.navbar-toggler {
    background-color: #ffffff;
}

.navbar-toggler:focus {
    box-shadow: none;
}

#hero {
    background-image: url("../img/hero.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

#hero .container {
    height: 100vh;
    text-shadow: #000000 1px 0 10px;
}



#contact {
    background-color: #192F60;
    color: white;
}

#contact .btn {
    background-color: #E6B422;
    border: 2px solid #E6B422;
    color: #ffffff;

}

#contact .btn:hover,
#contact a:hover {
    opacity: 0.75;
}

#policy,#error {
    padding-top: 66px;
}