
* { margin:0; padding:0; box-sizing:border-box; }

html {
  	scroll-behavior: smooth;
	color:#513C05;
}

.toptxt{
  	color:#5E4A1E;
  	font-family: "Birthstone", cursive;
  	font-weight: 400;
  	font-style: normal;
	font-size:3em;
}
.toptxt img{
	width: 120px;
}
#s2{
	background-image: linear-gradient(180deg, rgba(255, 235, 193, 1), rgba(245, 213, 150, 1));
}
#s2 h2{
	color:#513C05;
	font-size:1.3em;
	margin-bottom: 50px;
}
#s2 p{
	color:#513C05;
	font-size:0.9em;
}
#s3 p{
	color:#0F0F0F;
	font-size:1.0em;
	margin-left: 10%;
	margin-right: 10%;
	line-height: 160%;
	margin-bottom: 20px;
	text-shadow:0 0 5px #ffffff;
	text-shadow:1px 1px 0 #fff,-1px 1px 0 #fff,1px -1px 0 #fff,-1px -1px 0 #FFF;
	font-size:14px;
}
#s4 h2{
	color:#5E4A1E;
	font-size:1.1em;
	font-size:20px;
	margin-bottom: 15px;
}
#s4 h3{
	color:#5E4A1E;
	font-size:1.0em;
	font-size:16px;
	margin-bottom: 10px;
}
#s4 p{
	color:#5E4A1E;
	font-size:0.9em;
	margin-left: 5%;
	margin-right: 5%;
	margin-bottom: 30px;
}
#s5 h2{
	font-size: 1.2em;
	color:#FFFFFF;
	margin-bottom: 15px;
	text-shadow:0 0 5px #07677f;
	text-shadow:1px 1px 0 #07677f,-1px 1px 0 #07677f,1px -1px 0 #07677f,-1px -1px 0 #07677f;
}
#s5 h3{
	font-size: 1.05em;
	color:#FFFFFF;
	margin-bottom: 35px;
	text-shadow:0 0 5px #07677f;
	text-shadow:1px 1px 0 #07677f,-1px 1px 0 #07677f,1px -1px 0 #07677f,-1px -1px 0 #07677f;
}
#s5 p{
	font-size:1.1em;
	margin-top: 25px;
	font-size:12px;
	margin-left: 8%;
	margin-right: 8%;
	text-shadow:0 0 10px #07677f;
	text-shadow:1px 1px 0 #07677f,-1px 1px 0 #07677f,1px -1px 0 #07677f,-1px -1px 0 #07677f;
	margin-bottom: 25px;
}
#s5 ol{
    margin-top:10px;
	
}
#s5 ol li{
	font-size:0.9em;
	margin-left: 18%;
	margin-right: 10%;
	margin-bottom: 14px;
	text-shadow:0 0 5px #07677f;
	text-shadow:1px 1px 0 #07677f,-1px 1px 0 #07677f,1px -1px 0 #07677f,-1px -1px 0 #07677f;
	line-height: 1.2em;
}
#s6{
	font-size:1.0em;
	color:#5E4A1E;
}
#s6 h2{
	font-size:1.0em;
	margin-bottom: 20px;
}
#s6 p{
	font-size:0.9em;
}
#s-m2{
	color:#5E4A1E;
	font-size:0.9em;
	margin-left: 5%;
	margin-right: 5%;
	margin-bottom: 30px;
}
#s-m3 p{
	color:#5E4A1E;
	font-size:0.8em;
	margin-left: 10%;
	margin-right: 10%;
	margin-bottom: 30px;
	text-align: left;
}


/* ===== ヘッダー ===== */
header {
  position: fixed;
  top: 0;
  width: 100%;
  height: 70px;
  background: rgba(0,0,0,0);
  backdrop-filter: blur(10px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 30px;
  z-index: 1000;
}

.logo {
    color: #fff;
    font-weight: bold;
    width: 100px;
    display: block;	
}
.logo img{
	width: 100%;
}

nav ul {
  display:flex;
  list-style:none;
  gap:20px;
	font-size:1.0em;
}

nav a {
  color:#868585;
  text-decoration:none;
}

/* ===== ハンバーガー ===== */
.hamburger {
  display:none;
  flex-direction:column;
  cursor:pointer;
}

.hamburger span {
  width:25px;
  height:2px;
  background:#5E4A1E;
  margin:4px 0;
}

/* ===== モバイル ===== */
.mobile-menu {
  position:fixed;
  right:-100%;
  top:0;
  width:70%;
  height:100vh;
  background:#b5a073;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  transition:.3s;
  z-index:999;
  font-size: 1.0em;
}

.mobile-menu.active { right:0; }

.mobile-menu a {
  color:#fff;
  margin:20px;
  font-size:20px;
font-size:1.1em;
}

/* ===== セクション ===== */
section {
  height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  color:#fff;
  text-align:center;
  position:relative; /* ←重要 */
}

section2 {
  /*height:100vh;*/
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  color:#fff;
  text-align:center;
  position:relative; /* ←重要 */
	padding-top: 110px;
	padding-bottom: 160px;
}

/* ===== スクロールボタン ===== */
.scroll-btn {
  position:absolute;
  bottom:40px;
  left:50%;
  transform:translateX(-50%);
  z-index:10;
  font-size:14px;
  letter-spacing:2px;
  font-weight:300;
  color:#AAA;
  text-decoration:none;
  opacity:0.8;
  transition:0.3s;
}
.scroll-btn-bk {
  position:absolute;
  bottom:40px;
  left:50%;
  transform:translateX(-50%);
  z-index:10;
  font-size:14px;
  letter-spacing:2px;
  font-weight:300;
  color:#201818;
  text-decoration:none;
  opacity:0.8;
  transition:0.3s;
}
.scroll-btn-wh {
  position:absolute;
  bottom:40px;
  left:50%;
  transform:translateX(-50%);
  z-index:10;
  font-size:14px;
  letter-spacing:2px;
  font-weight:300;
  color:#F1EDED;
  text-decoration:none;
  opacity:0.8;
  transition:0.3s;
}
.scroll-btn:hover , .scroll-btn-bk:hover , .scroll-btn-wh:hover { opacity:1; }

.scroll-btn::after , .scroll-btn-bk::after , .scroll-btn-wh::after {
  content:"↓";
  display:block;
  font-size:22px;
  margin-top:6px;
  animation:bounce 1.5s infinite;
}



@keyframes bounce {
  0%,100% { transform:translateY(0); }
  50% { transform:translateY(12px); }
}

/* ===== 動画 ===== */
.video-hero {
  position:relative;
  overflow:hidden;
}

.bg-video {
  position:absolute;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}
/*
.overlay {
  position:absolute;
  width:100%;
  height:100%;
  background:rgba(0,0,0,0);
  z-index:1;
}
*/
.video-hero h1 {
  position:relative;
  z-index:2;
}

.video-hero .scroll-btn {
  z-index:3;
}

.overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(252,248,202,0.50);
}

/* ===== パララックス ===== */
.parallax {
  background-attachment:fixed;
  background-size:cover;
  background-position:center;
}


/* ===== フェード ===== */
.fade {
  opacity:0;
  transform:translateY(40px);
  transition:2s;
}


.fade.show {
  opacity:1;
  transform:translateY(0);
}


/* ===== PC ===== */
@media (min-width:768px){
.bg1 {
    background-image: url(../image/backim001.jpg);
}

.bg2 {
  background-image:url(../image/backim002.jpg);
}
	.mess-bg1 {
  background-image:url("../image/profile-pc.jpg");
}

#s-w1{
	text-align: left;
}
#s-w1 h2{
	color:#5E4A1E;
	font-size:1.1em;
	font-size:20px;
	margin-bottom: 35px;
}
#s-w1 h3{
	color:#5E4A1E;
	font-size:1.0em;
	font-size:16px;
	margin-bottom: 10px;
	text-align: left;
	width:800px;
}
#s-w1 p{
	color:#5E4A1E;
	font-size:0.9em;
	margin-left: 5%;
	margin-right: 5%;
	margin-bottom: 30px;
	width:800px;
	text-align: left;
}	
	
	
}



/* ===== スマホ ===== */
@media (max-width:768px){
  nav ul { display:none; }
  .hamburger { display:flex; }
  .parallax { background-attachment:scroll; }

.bg1 {
    background-image: url(../image/backim001-sp.jpg);
}

.bg2 {
  background-image:url(../image/backim002-sp.jpg);
}

.mess-bg1 {
  background-image:url("../image/profile.jpg");
}

#s-w1{
	text-align: left;
}
#s-w1 h2{
	color:#5E4A1E;
	font-size:1.1em;
	font-size:20px;
	margin-bottom: 35px;
}
#s-w1 h3{
	color:#5E4A1E;
	font-size:1.0em;
	font-size:16px;
	margin-bottom: 10px;
	text-align: left;
	width:80%;
}
#s-w1 p{
	color:#5E4A1E;
	font-size:0.9em;
	margin-left: 5%;
	margin-right: 5%;
	margin-bottom: 30px;
	width:80%;
	text-align: left;
}	
	
}
