body{
margin:0;background:linear-gradient(#f8efd9,#fff);
font-family:'Noto Serif JP',serif;color:#333}
.container{width:min(1200px,92%);margin:auto}
.hero{background:#f6e7bb;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;padding:70px 0}
.hero h1{font-size:4rem;color:#7a3d00}
.hero h1 span{color:#d96a00}
.hero-image img{width:100%;border-radius:20px;}
.wave{height:80px;background:linear-gradient(175deg,#f6e7bb 50%,white 51%)}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:50px 0}
.card,.owner{background:#fff;border-radius:24px;box-shadow:0 5px 20px rgba(0,0,0,.08)}
.card{padding:35px}
.card h2{color:#d96a00}
.btn{display:inline-block;padding:14px 30px;background:#ef7d00;color:#fff;text-decoration:none;border-radius:999px}
.btn.dark{background:#222}
.owner{display:grid;grid-template-columns:260px 1fr;gap:30px;padding:30px;margin-bottom:60px}
.owner img{width:220px;height:220px;border-radius:50%;object-fit:cover}
.owner h2{color:#d96a00}
@media(max-width:768px){
.hero-grid,.cards,.owner{grid-template-columns:1fr}
.hero h1{font-size:2.5rem}
.owner{text-align:center}
.owner img{margin:auto;display:block}
}
.top-header{
    position:sticky;
    top:0;
    z-index:999;
    background:white;
    box-shadow:0 2px 10px rgba(0,0,0,.08);

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:15px 5%;
}

.logo{
    font-size:1.4rem;
    font-weight:bold;
    color:#d96a00;
}

.top-header ul{
    display:flex;
    gap:30px;
    list-style:none;
}

.top-header a{
    text-decoration:none;
    color:#333;
    font-weight:600;
}

.top-header a:hover{
    color:#d96a00;
}

.top-header nav ul{
    display:flex;
    align-items:center;
    list-style:none;
    gap:30px;
}

.top-header nav ul li{
    position:relative;
}

.top-header nav ul{
    display:flex;

    align-items:center;
    gap:30px;
    list-style:none;
}

.top-header nav ul li{
    position:relative;
}

.dropdown-menu{
    position:absolute;
    top:100%;
    right:0;
    display:flex;
    flex-direction:column;

    min-width:320px;

    background:#fff;
    border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,.12);

    list-style:none;
    padding:10px 0;

    opacity:0;
    visibility:hidden;
    transform:translateY(10px);

    transition:.25s;
    z-index:9999;
}

.dropdown.active .dropdown-menu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.dropdown-menu a{
    display:block;
    padding:12px 18px;
    text-decoration:none;
    color:#333;
    white-space:nowrap;
}

.dropdown-menu a:hover{
    background:#fff4e8;
    color:#d96a00;
}
```
