@charset "utf-8";
/* CSS Document */

body{
	margin: 0;
}

.sticky-container{
	margin: 0;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	background-color: #C3C3C3;
}

.sticky-container img{
	display: block;
	line-height: 0;
}

.pc-box{
	display: none;
}

.wrapper{
	width: 100%;
	margin: 0 auto;
	padding-bottom: 10%;
}

.mv{
	margin: 0 auto 10%;
}

.mv p{
	text-align: center;
	font-size: 13px;
	line-height: 2;
	margin: 10% auto;
}

.map{
	margin: 10% auto;
}

.map img{
	width: 90%;
	margin: 0 auto;
}

.category-list {
    list-style: none;
    padding: 0;
	width: 70%;
	margin: 10% auto;
}

.category-list li {
	border-bottom: solid 1px #888888;
}

.category-list li a {
    display: flex;
    align-items: center;
	justify-content: space-between;
    padding: 15px 10px;
    text-decoration: none;
    color: #333;
    font-weight: bold;
    font-size: 17px; 
    letter-spacing: 0.05em;
}

/* 矢印（V字）の作成 */
.arrow {
    display: inline-block;
    width: 9px;
    height: 9px;
    border-right: 1px solid #333; 
    border-bottom: 1px solid #333;
    transform: rotate(45deg); 
    margin-bottom: 4px;
}

.main-content{
	margin: 0 auto;
}

.main-content__box{
	margin: 0 auto 15%;
	padding-top: 14%;
}

.main-content__box h1{
	width: 95%;
	margin: 0 auto;
	font-size: 28px;
	line-height: 1.0;
	letter-spacing: 1px;
}

.main-content__box h1 span{
	font-size: 15px;
	margin: 0;
}

.main-content__box p{
	width: 95%;
	margin: 5% auto;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1px;
	line-height: 1.8;
}

.swiper {
	width: 100%;
	height: auto;
}

.swiper-slide {
	display: flex;
	justify-content: center;
	align-items: center;
	background: transparent;
}

.swiper-slide img{
	width: 100%;
	height: auto;
	display: block;
}

.swiper-button-next {
    right: 5px !important; 
}

.swiper-button-prev {
    left: 5px !important;
}

.swiper-button-next,
.swiper-button-prev {
    z-index: 10 !important;
    cursor: pointer;
}

.swiper-button-next:after, .swiper-button-prev:after {
	font-size: 25px!important;
	color: #fff;
}

.main-content__box .swiper p{
	margin: 2% auto;
	text-align: center;
}

.main-content__box a{
	display: block;
	width: 80%;
	margin: 8% auto 0;
	text-align: center;
	border:solid 2px #000;
	color: #000;
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	line-height: 3.6;
}

.movie{
	position: relative;
	width:90%; /* 横幅は100%で固定 */
	height:0; /* 高さは0にしておく(padding-topで高さを指定するため) */
	padding-top: 56.25%; /* 高さを指定(16:9) */
	margin: 10% auto;
}

.movie iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.footer{
	width: 100%; 
	margin: 25% auto 3%;
}

.footer__logo{
	width: 24%;
	margin: 0 auto;
}

.footer__copy{
	font-size: 11px;
	margin: 5% auto 0;
	text-align: center;
	line-height: 2;
}


@media(min-width:750px){
	.sticky-container{
		display: flex;
		justify-content: center;
		column-gap: 160px;
		background-color: #e2e2e2;
	}
	
	.pc-box{
		position: sticky;
        left: 0;
        top: 0;
        display: flex;
        width: 24%;
        height: 100vh;
        justify-content: center;
        align-items: center;
	}
	
	.pc-box__left{
		font-family: din-2014, sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size: 80px;
		letter-spacing: 10px;
		line-height: 1.0;
	}
	
	.pc-box__left .category-list {
		width: 100%;
		margin: 10% 0;
	}
	
	.pc-box__left .category-list li a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 24px 10px;
		text-decoration: none;
		color: #333;
		font-weight: bold;
		font-size: 20px; 
		letter-spacing: 0.05em;
	}

	/* 矢印（V字）の作成 */
	.pc-box__left .arrow {
		display: inline-block;
		width: 9px;
		height: 9px;
		border-right: 2px solid #333; 
		border-bottom: 2px solid #333;
		transform: rotate(45deg); 
		margin-bottom: 4px;
	}
		
	.pc-box__left img{
		width: 50vh;
	}
		
	.wrapper{
		width: 36%;
		margin: 0;
		background-color: #C3C3C3;
	}
	
	.mv p{
		font-size: 16px;
		line-height: 2.3;
	}
	
	.main-content__box h1{
		width: 90%;
		margin: 0 auto;
		font-size: 40px;
		line-height: 1.0;
		letter-spacing: 1px;
	}

	.main-content__box h1 span{
		font-size: 18px;
	}

	.main-content__box p{
		width: 90%;
		font-size: 15px;
		line-height: 2;
		margin: 3% auto;
	}
	
	.main-content__box a{
		font-size: 22px;
	}
	
	.footer__logo{
		width: 20%;
		margin: 0 auto;
	}

	.footer__copy{
		font-size: 14px;
		line-height: 2;
	}
}
