html {
    scroll-behavior: smooth;
}
#special,
#customdiver{
	scroll-margin-top: 100px;
}

.anime{
	opacity: 0;
}
.animated {
    opacity: 1;
    position: relative;
    overflow: hidden;
    animation: reveal 1.2s cubic-bezier(.8, 0, .2, 1) forwards;
}
.animated::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #07569e;
    transform: translateX(-101%);
    z-index: 10;
    animation: wipe 1.2s cubic-bezier(.8, 0, .2, 1) forwards;
}
@keyframes wipe {
    0%   { transform: translateX(-101%); }
    45%  { transform: translateX(0); }
    100% { transform: translateX(101%); }
}
@keyframes reveal {
    0%   { clip-path: inset(0 100% 0 0); }
    45%  { clip-path: inset(0 0 0 0); }
    100% { clip-path: inset(0 0 0 0); }
}
header{
	margin-top: 0;
}
.swiper{
	padding-top: 77px;
	height: calc(80vh - 80px);
}

.catch{
	font-size: 1.2em;
	line-height: 2em;
	color: #333;
	padding: 30px 10px 60px;
}
.catch h1,
.catch h2{
	font-size: 1.2em;
	line-height: 2em;
	font-weight: 500;
}
.catch h2{
	margin-bottom: 30px;
}

.detail{
	text-align: center;
	font-size: 1.1em;
	line-height: 2em;
}

#about .flex{
	gap: 30px;
	width: 1200px;
	max-width: 100%;
	align-items: flex-start;
}
.eventbox{
	background-color: #d5d5d5;
	padding: 20px;
	box-sizing: border-box;
	text-align: center;
}
.eventbox a{
	font-size: 0.9em;
	color: #000;
	text-decoration: underline;
}
.eventtitle img{
	height: 50px;
	margin-right: 10px;
	display: inline-block;
	vertical-align: middle;
}
.eventtitle h3{
	font-size: 1.2em;
	display: inline-block;
	margin: 0 0 5px;
	text-align: left;
    vertical-align: middle;
}
.eventdate{
	font-size: 1.2em;
	font-weight: 500;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	padding: 8px 2px;
	box-sizing: border-box;
	margin: 8px 0;
}
.eventdate span{
	font-size: 1.3em;
}
.eventplace{
	font-size: 0.9em;
	margin-bottom: 5px;
}

#news_inner{
	background-image: url(/motorcycleshow2026/img/back_1.jpg);
	background-size: cover;
	background-position: center center;
	margin-top: 40px;
}
#news_inner .newsthumb{
	aspect-ratio: 1/1;
}

#slidearea .swiper{
	padding: 0;
	height: auto;
}
#slidearea .cdbox{
	margin-top: 80px;
}
#slidearea h4{
	font-size: 1.8em;
	color: #07569e;
	font-weight: 500;
	border-bottom: 1px solid #07569e;
	padding: 0 15px 10px;
}
.cdSwiper .swiper-slide img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.5s ease;
}
.cdSwiper .swiper-slide:hover img {
    transform: scale(1.1);
}
.cdSwiper p{
	color: #555;
	margin: 5px 0 0;
	text-align: center;
}

#historyarea{
	margin-top: 60px;
}
.historybox{
    width: 100%;
    padding: 70px 0;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #000;
    background-image: 
        linear-gradient(rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.9)),
        var(--img-bg);
    background-size: cover;
    background-position: center center;
    background-color: rgba(255, 255, 255, 0.5);
    background-blend-mode: luminosity;
}
.historybox h5{
	margin: 0 0 20px;
	font-size: 1.3em;
	line-height: 1.6em;
}
.historytext{
	font-weight: 500;
}

#page_result{
	margin-top: 120px;
}
#page_result #result .item_box .img_box{
	aspect-ratio: 1/1;
}
#page_result h1,
#page_result h2{
	margin-top: 60px;
}
#page_result p{
	line-height: 2.4em;
}
#page_result img{
	margin: 15px 0;
}

@media screen and (max-width: 868px) {
	nav a{
		padding: 5px;
	}
	.swiper{
		padding-top: 65px;
		height: calc(80vh - 80px);
	}
	#slidearea .cdbox{
		margin-top: 40px;
	}
}
@media screen and (max-width: 768px) {
	nav ul{
		top: 56px;
	}
	nav a{
		padding: 10px;
	}
	.swiper{
		padding-top: 56px;
        height: calc(50vh - 60px);
	}
	.catch{
		padding: 10px 10px 20px;
		font-size: 1em;
	}
	.catch h1,
	.catch h2{
		font-size: 1.2em;
		line-height: 1.8em;
	}
	.detail{
		text-align: left;
		font-size: 1em;
	}
	#about,
	.detail{
		padding-left: 10px;
		padding-right: 10px;
		box-sizing: border-box;
	}
	#slidearea h4{
		font-size: 1.5em;
		padding-bottom: 10px;
	}
	#slidearea .cdbox{
		margin-top: 30px;
	}
	#historyarea{
		margin-top: 30px;
	}
	.historybox{
		padding: 40px 0;
	}
	.historytext{
		text-align: left;
	}

	#page_result{
		margin-top: 80px;
	}
	#page_result h1,
	#page_result h2{
		margin-top: 40px;
	}
}