@import url('https://fonts.googleapis.com/css?family=Poppins:100,100i,200,200i,300,300i,400,400i,500,500i,600,600i,700,700i,800,800i,900,900i&subset=devanagari,latin-ext');

.kunpeivideo {
    position: relative;
    margin-top: 3vh;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

body {
margin: 0;
font-family: 'Poppins', sans-serif;
background-color: #ffffff;
color: white;
overflow-x: hidden;
}

/* スマホ用動画用のスタイル */
@media (max-width: 768px) {
    .hero {
        height: 50vh; /* スマホでは高さを調整 */
    }

    .video video {
        object-fit: cover; /* 全体を収める */
    }
}

/* ヘッダー */
.header-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.9259vh 1.8519vh;
    background-color: #1c1c1c;
    box-shadow: 0 0.3704vh 0.7407vh rgba(0, 0, 0, 0.6);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
}

.nav {
    flex-grow: 1;
    margin-left: 1.8519vh;
}

.logo {
    width:  4.4vh;
    height: auto;
}

.menu-group {
    list-style: none;
    display: flex;
    gap: 2.7778vh;
    justify-content: flex-end;
    margin: 0;
    padding: 0;
    position: relative;
    right: 2.7778vh;
}

.menu-item a {
    text-decoration: none;
    color: white;
    font-family: impact,serif;
    font-size: 0.8rem;
    transition: color 0.3s ease;
}

.menu-item a:hover {
    color: #00bcd4;
}


.hero {
    position: relative;
    width: 100%;
    height: 100vh; /* 画面全体の高さに合わせる */
    overflow: hidden;
    background-color: #000000;
}

.hero-content {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1; /* 前面に表示する要素があれば調整 */
}

.video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0; /* 背景動画を背面に表示 */
    overflow: hidden;
}

.video video {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 動画が全体をカバーする */
}

.hero2 {
    height: 120vh;
    background-color: #000000;
    position: relative;
    top: -13.333vh;

}
.hero2 .teien h1 {
    position: relative;
    font-size: 6rem;
    background: -webkit-linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888);
    -webkit-background-clip: text; 
    -webkit-text-fill-color: transparent;
    display: flex;
    text-align: center;
    justify-content: center;
    top: 20vh;
}

.hero2 .teien p {
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    position: relative;
    font-size: 1.2rem;
    color: rgb(255, 255, 255);
    display: flex;
    text-align: center;
    justify-content: center;
    top: 16.667vh;
    line-height: 200%
}
.hero3 {
    position: relative;
    display: flex;
    text-align: center;
    justify-content: center;
    background-color: #ffffff;
    margin-top: 20vh;


}
.map {
    position: relative;
    top: -6vh;
    left: 6px;
	width: 100%;
	height: 500%
}

.hero4 .access h2 {
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    position: relative;
    font-size: 1.2rem;
    color: #878787;
    right: -1vh;
} 
.photo {
    position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
    width: 100%;


}

.footer-container {
    display: flex;
    flex-direction: column; /* スマホで縦並びにする */
    align-items: center;
    position: relative;
	
    justify-content: center;
    padding: 20px;
    background-color: #1c1c1c;
    color: white;
    font-size: 0.9rem;
    gap: 10px; /* 要素間のスペースを小さくする */
}

.footer-text {
    font-family: "Hiragino Mincho Pro", serif;
    text-align: center; /* 中央揃え */
    margin: 0; /* 余白を削除 */
}

.instagram-logo {
    width: 30px;
    height: 30px;
    cursor: pointer;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.instagram-logo:hover {
    transform: scale(1.1);
    opacity: 0.8;
}

/* スマホや小さな画面向けのレスポンシブ対応 */
@media screen and (max-width: 768px) {
    .footer-container {
        padding: 10px; /* 全体の余白を縮小 */
        font-size: 0.8rem; 
    }

    .instagram-logo {
        width: 25px; /* アイコンを小さく */
        height: 25px;
    }
}
@media screen and (max-width: 1024px) {

    .instagram-logo {
        width: 25px; /* アイコンを小さく */
        height: 25px;
    }
}

@media screen and (max-width: 481px) {
	.hero2 .teien h1{
		font-size: 2rem;
	}
	.hero2 .teien p {
		font-size: 0.8rem ;
	}
	.hero2 {
		height: 80vh;
	}
	.intro-text {
		font-size: 0.2rem;
	}
	.menu-item a {
		font-size: 0.6rem;
	}
	.menu-group {
		right: 0.3vh;
	}
	.responsive-text {
		font-size: 0.8rem;
	}
	.hero4 .midashi p {
		display: none;
	}
}
/* Googleマップのレスポンシブ対応 */
.map iframe {
    width: 100%; /* 親要素の幅に合わせる */
    height: auto; /* 高さを自動調整 */
    aspect-ratio: 3 / 2; /* 比率を指定 */
    border: 0; /* 枠線を消す */
}

/* 小さい画面向けの調整 */
@media screen and (max-width: 768px) {
    .map iframe {
        aspect-ratio: 16 / 9; /* 横長の比率に変更 */
    }
}
.access{
    margin-top:7vh;
}