html{
scroll-behavior:smooth;
}

body{
margin:0;
font-family:Arial,sans-serif;
background:#f7f4ee;
color:#222;
line-height:1.8;
}

img{
max-width:100%;
height:auto;
display:block;
}

a{
text-decoration:none;
}

/* HEADER */

header{
position:fixed;
top:0;
left:0;
width:100%;
background:#fff;
z-index:9999;
box-shadow:0 2px 10px rgba(0,0,0,0.08);
text-align:center;
}

.logo{
width:100%;
max-width:1200px;
margin:auto;
display:block;
}

.catch{
font-size:30px;
font-weight:bold;
padding:10px 20px 20px;
color:#c40000;
}

/* NAV */

nav{
background:#c40000;
padding:18px;
}

nav a{
color:#fff;
font-size:22px;
font-weight:bold;
margin:0 20px;
}

/* SLIDER */

.slider-section{
padding-top:260px;
padding-bottom:30px;
}

.slider{
max-width:1400px;
height:850px;
margin:auto;
position:relative;
overflow:hidden;
border-radius:20px;
background:#fff;
border:2px solid #e4c58d;
}

.slide-img{
position:absolute;
width:92%;
height:92%;
top:4%;
left:4%;
object-fit:contain;
opacity:0;
transition:1.5s;
}

.slide-img.active{
opacity:1;
}

/* COMMON */

.section{
max-width:1400px;
margin:auto;
padding:60px 20px;
}

.title{
font-size:54px;
text-align:center;
color:#c40000;
font-weight:bold;
margin-bottom:20px;
}

.sub{
text-align:center;
font-size:24px;
margin-bottom:40px;
}

h2{
font-size:42px;
color:#c40000;
margin-top:60px;
margin-bottom:20px;
text-align:center;
}

/* MENU */

.menu-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
}

.card{
background:#fff;
border-radius:18px;
overflow:hidden;
border:2px solid #e4c58d;
box-shadow:0 4px 10px rgba(0,0,0,0.08);
}

.card img{
width:100%;
height:220px;
object-fit:contain;
background:#fff;
padding:10px;
}

.card-text{
padding:20px;
text-align:center;
}

.card-text h3{
margin:0 0 10px;
font-size:28px;
color:#c40000;
}

.card-text p{
font-size:20px;
margin:0;
}

/* BOX */

.box{
background:#fff;
padding:40px;
border-radius:20px;
border:2px solid #e4c58d;
margin-top:40px;
}

/* AREA */

.area{
display:inline-block;
padding:12px 24px;
margin:10px;
background:#faf6ef;
border:2px solid #e4c58d;
border-radius:50px;
font-size:24px;
font-weight:bold;
}

/* PRICE */

.price{
font-size:72px;
font-weight:bold;
color:#c40000;
}

/* BUTTON */

.btn{
display:inline-block;
padding:22px 40px;
background:#10c847;
color:#fff;
font-size:28px;
font-weight:bold;
border-radius:14px;
margin-top:20px;
}

/* CONTACT */

.contact{
text-align:center;
padding:80px 20px 180px;
}

.tel{
font-size:90px;
font-weight:bold;
color:#c40000;
line-height:1.2;
}

.fax{
font-size:38px;
margin-top:10px;
}

/* FIXED */

.fixed{
position:fixed;
bottom:0;
left:0;
width:100%;
display:flex;
z-index:9999;
}

.fixed a{
flex:1;
padding:24px;
text-align:center;
font-size:30px;
font-weight:bold;
color:#fff;
}

.fixed-line{
background:#10c847;
}

.fixed-tel{
background:#c40000;
}

/* FOOTER */

footer{
background:#111;
color:#fff;
text-align:center;
padding:40px;
font-size:22px;
}

/* MOBILE */

@media(max-width:768px){

.logo{
max-width:100%;
margin-bottom:0;
}

.catch{
font-size:18px;
padding-top:5px;
padding-bottom:8px;
line-height:1.4;
}

nav{
top:0;
padding:10px 5px;
}

nav a{
display:inline-block;
margin:5px 6px;
font-size:16px;
}

.slider-section{
padding-top:170px;
}

.slider{
height:260px;
}

.title{
font-size:40px;
}

.sub{
font-size:18px;
}

.price{
font-size:48px;
}

.contact h2{
font-size:42px;
}

.tel{
font-size:52px;
}

.fax{
font-size:28px;
}

.fixed a{
font-size:22px;
padding:18px;
}

}