/* Generated CSS for specific functionality (Hamburger, Pagetop, Animations) */

@charset "utf-8";

@import url("https://unpkg.com/sanitize.css");
@import url("inview.css");

@charset "utf-8";



/*リセットCSS（sanitize.css）の読み込み
---------------------------------------------------------------------------*/
@import url("https://unpkg.com/sanitize.css");

/*Google Fontsの読み込み
---------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Tangerine&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');

/*slick.cssの読み込み
---------------------------------------------------------------------------*/
@import url("https://cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.css");

/*inview.cssの読み込み
---------------------------------------------------------------------------*/
@import url("inview.css");




/*３本バー（ハンバーガー）アイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	display: block;
	position: fixed;z-index: 100;
	top: 20px;		/*上からの配置場所*/
	right: 20px;	/*左からの配置場所*/
	width: 50px;	/*幅*/
	height: 50px;	/*高さ*/
	cursor: pointer;
	background: rgba(0,0,0,0.6) url(../images/icon_menu.png) no-repeat center top/50px;	/*背景色、背景画像の読み込み、画像の上半分（３本マーク）を表示。幅は50px。*/
}



/*×印が出ている状態の設定。*/
#menubar_hdr.close {
	background: #ccffcc url(../images/icon_menu.png) no-repeat center bottom/50px;	/*背景色、背景画像の読み込み、画像の下半分（×マーク）を表示。幅は50px。*/
}



/*main　h2　のTEXT文字アニメーション
---------------------------------------------------------------------------*/
main {
	margin-bottom: 100px;	/*下に空けるスペース*/
}

/*ブロック内のh2タグ*/
main h2 {
	opacity: 0;							/*透明度。0は色が出ていない(0%)状態の事。*/
	text-align: center;					/*文字をセンタリング*/
	font-family: 'Tangerine', cursive, "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "メイリオ", Meiryo, Osaka;
	font-weight: normal;				/*hタグはデフォルトで太字なので、これを標準にする*/
	font-size: 4rem;					/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
}

/*ブロック内のh2タグ内のspanタグ（日本語の小さい説明用部分）*/
main h2 span {
	display: block;	
	font-size: 0.7rem;			/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
	letter-spacing: 0.2em;		/*文字間隔を少し広くとる指定*/
}

/*spanタグの前に「〜」を出力する指定*/
main h2 span::before {
	content: "〜";
	padding-right: 10px;
}

/*spanタグの後に「〜」を出力する指定*/
main h2 span::after {
	content: "〜";
	padding-left: 10px;
}

/* main　h2　のTEXT文字アニメーション
---------------------------------------------------------------------------*/


/*３本バー（ハンバーガー）アイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	display: block;
	position: fixed;z-index: 100;
	top: 20px;		/*上からの配置場所*/
	right: 20px;	/*左からの配置場所*/
	width: 50px;	/*幅*/
	height: 50px;	/*高さ*/
	cursor: pointer;
	background: rgba(0,0,0,0.6) url(../images/icon_menu.png) no-repeat center top/50px;	/*背景色、背景画像の読み込み、画像の上半分（３本マーク）を表示。幅は50px。*/
}



/*×印が出ている状態の設定。*/
#menubar_hdr.close {
	background: #ccffcc url(../images/icon_menu.png) no-repeat center bottom/50px;	/*背景色、背景画像の読み込み、画像の下半分（×マーク）を表示。幅は50px。*/
}



/*メニューの設定
---------------------------------------------------------------------------*/
#menubar ul {list-style: none;}



/*ボックス全体の設定*/
#menubar {
	display: none;				/*デフォルトで非表示にしておく*/
	animation-name: opa1;		/*@keyframesの指定*/
	animation-duration: 1S;		/*アニメーションの実行時間*/
	animation-fill-mode: both;	/*アニメーションの待機中は最初のキーフレームを維持、終了後は最後のキーフレームを維持。*/
	position: fixed;overflow: auto;z-index: 99;	/*fixedはスクロールしても動かない為の指定*/
	left: 0px;top: 0px;
	width: 100%;
	height: 100%;
	padding: 50px;		/*ボックス内の余白*/
	text-align: center;	/*テキストをセンタリング*/
	background: rgba(0,0,0,0.8);	/*背景色*/
	font-size: 1.2rem;	/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
}



/*メニュー１個あたりの設定*/
#menubar li {
	margin-bottom: 20px;	/*下に空けるスペース*/
}



#menubar a {
	display: block;text-decoration: none;
	text-align: center;	/*テキストをセンタリング*/
	background: #ccffcc;	/*背景色*/
	color: #1F2A1F;		/*文字色*/
	border-radius: 5px;	/*角丸の指定*/
	box-shadow: 0px 0px 50px 10px rgba(255,255,255,0.4);	/*ボックスの影。右へ、下へ、ぼかし幅、範囲。255,255,255は白の事で0.4は色が40%出た状態の事。*/
	padding: 5px;	/*余白*/
}



/*メニュー内のspanタグ（小さい日本語部分）*/
#menubar span {
	display: block;
	font-size: 0.7rem;	/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
}



/*トップページの「Photo's」の横スライドショーコーナー（slickを使用）
---------------------------------------------------------------------------*/
/*アイコン*/
ul.icon2 {
	list-style: none;
	margin: 0 0px;padding: 0;
	margin-bottom: 30px;	/*下に空けるスペース*/
}



/*トップページの「Photo's」の横スライドショーコーナー（slickを使用）
---------------------------------------------------------------------------*/
/*スライドショー全体を囲むボックス*/
.pickup {
	position: relative;
	display: flex;			/*flexボックスを使う指定*/
}



/*１個あたりのボックス*/
.pickup .slick-slide {
	margin: 5px !important;
	width: auto;
}



/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
.pagetop-show {display: block;}



.pagetop a {
	display: block;text-decoration: none;text-align: center;
	width: 50px;		/*幅*/
	line-height: 50px;	/*高さ*/
	position: fixed;
	right: 30px;		/*右からの配置場所指定*/
	bottom: 30px;		/*下からの配置場所指定*/
	color: #fff;		/*文字色*/
	background: rgba(0,0,0,0.4);	/*背景色。0,0,0は黒色の指定で0.4は色が40%出た状態。*/
	border: 1px solid #1F2A1F;	/*枠線の幅、線種、色*/
}



/*マウスオン時*/
.pagetop a:hover {
	background: rgba(0,0,0,0.8);	/*背景色。0,0,0は黒色の指定で0.8は色が80%出た状態。*/
}



/*３本バー（ハンバーガー）アイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	display: block;
	position: fixed;z-index: 100;
	top: 20px;		/*上からの配置場所*/
	right: 20px;	/*左からの配置場所*/
	width: 50px;	/*幅*/
	height: 50px;	/*高さ*/
	cursor: pointer;
	background: rgba(0,0,0,0.6) url(../images/icon_menu.png) no-repeat center top/50px;	/*背景色、背景画像の読み込み、画像の上半分（３本マーク）を表示。幅は50px。*/
}



/*×印が出ている状態の設定。*/
#menubar_hdr.close {
	background: ##ccffcc url(../images/icon_menu.png) no-repeat center bottom/50px;	/*背景色、背景画像の読み込み、画像の下半分（×マーク）を表示。幅は50px。*/
}



/*メニューの設定
---------------------------------------------------------------------------*/
#menubar ul {list-style: none;}



/*ボックス全体の設定*/
#menubar {
	display: none;				/*デフォルトで非表示にしておく*/
	animation-name: opa1;		/*@keyframesの指定*/
	animation-duration: 1S;		/*アニメーションの実行時間*/
	animation-fill-mode: both;	/*アニメーションの待機中は最初のキーフレームを維持、終了後は最後のキーフレームを維持。*/
	position: fixed;overflow: auto;z-index: 99;	/*fixedはスクロールしても動かない為の指定*/
	left: 0px;top: 0px;
	width: 100%;
	height: 100%;
	padding: 50px;		/*ボックス内の余白*/
	text-align: center;	/*テキストをセンタリング*/
	background: rgba(0,0,0,0.8);	/*背景色*/
	font-size: 1.2rem;	/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
}



/*メニュー１個あたりの設定*/
#menubar li {
	margin-bottom: 20px;	/*下に空けるスペース*/
}



#menubar a {
	display: block;text-decoration: none;
	text-align: center;	/*テキストをセンタリング*/
	background: #ccffcc;	/*背景色*/
	color: #1F2A1F;		/*文字色*/
	border-radius: 5px;	/*角丸の指定*/
	box-shadow: 0px 0px 50px 10px rgba(255,255,255,0.4);	/*ボックスの影。右へ、下へ、ぼかし幅、範囲。255,255,255は白の事で0.4は色が40%出た状態の事。*/
	padding: 5px;	/*余白*/
}



/*メニュー内のspanタグ（小さい日本語部分）*/
#menubar span {
	display: block;
	font-size: 0.7rem;	/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
}



/*トップページの「Photo's」の横スライドショーコーナー（slickを使用）
---------------------------------------------------------------------------*/
/*アイコン*/
ul.icon2 {
	list-style: none;
	margin: 0 0px;padding: 0;
	margin-bottom: 30px;	/*下に空けるスペース*/
}



/*トップページの「Photo's」の横スライドショーコーナー（slickを使用）
---------------------------------------------------------------------------*/
/*スライドショー全体を囲むボックス*/
.pickup {
	position: relative;
	display: flex;			/*flexボックスを使う指定*/
}



/*１個あたりのボックス*/
.pickup .slick-slide {
	margin: 5px !important;
	width: auto;
}



/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
.pagetop-show {display: block;}



.pagetop a {
	display: block;text-decoration: none;text-align: center;
	width: 50px;		/*幅*/
	line-height: 50px;	/*高さ*/
	position: fixed;
	right: 30px;		/*右からの配置場所指定*/
	bottom: 30px;		/*下からの配置場所指定*/
	color: #fff;		/*文字色*/
	background: rgba(0,0,0,0.4);	/*背景色。0,0,0は黒色の指定で0.4は色が40%出た状態。*/
	border: 1px solid #ffffff;	/*枠線の幅、線種、色*/
}



/*マウスオン時*/
.pagetop a:hover {
	background: rgba(0,0,0,0.8);	/*背景色。0,0,0は黒色の指定で0.8は色が80%出た状態。*/
}




/*３本バー（ハンバーガー）アイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	display: block;
	position: fixed;z-index: 100;
	top: 20px;		/*上からの配置場所*/
	right: 20px;	/*左からの配置場所*/
	width: 50px;	/*幅*/
	height: 50px;	/*高さ*/
	cursor: pointer;
	background: rgba(0,0,0,0.6) url(../images/icon_menu.png) no-repeat center top/50px;	/*背景色、背景画像の読み込み、画像の上半分（３本マーク）を表示。幅は50px。*/
}



/*×印が出ている状態の設定。*/
#menubar_hdr.close {
	background: #000000 url(../images/icon_menu.png) no-repeat center bottom/50px;	/*背景色、背景画像の読み込み、画像の下半分（×マーク）を表示。幅は50px。*/
}



/*メニューの設定
---------------------------------------------------------------------------*/
#menubar ul {list-style: none;}



/*ボックス全体の設定*/
#menubar {
	display: none;				/*デフォルトで非表示にしておく*/
	animation-name: opa1;		/*@keyframesの指定*/
	animation-duration: 1S;		/*アニメーションの実行時間*/
	animation-fill-mode: both;	/*アニメーションの待機中は最初のキーフレームを維持、終了後は最後のキーフレームを維持。*/
	position: fixed;overflow: auto;z-index: 99;	/*fixedはスクロールしても動かない為の指定*/
	left: 0px;top: 0px;
	width: 100%;
	height: 100%;
	padding: 50px;		/*ボックス内の余白*/
	text-align: center;	/*テキストをセンタリング*/
	background: rgba(0,0,0,0.8);	/*背景色*/
	font-size: 1.2rem;	/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
}



/*メニュー１個あたりの設定*/
#menubar li {
	margin-bottom: 20px;	/*下に空けるスペース*/
}



#menubar a {
	display: block;text-decoration: none;
	text-align: center;	/*テキストをセンタリング*/
	background: #ffffff;	/*背景色*/
	color: #1F2A1F;		/*文字色*/
	border-radius: 5px;	/*角丸の指定*/
	box-shadow: 0px 0px 50px 10px rgba(255,255,255,0.4);	/*ボックスの影。右へ、下へ、ぼかし幅、範囲。255,255,255は白の事で0.4は色が40%出た状態の事。*/
	padding: 5px;	/*余白*/
}



/*メニュー内のspanタグ（小さい日本語部分）*/
#menubar span {
	display: block;
	font-size: 0.7rem;	/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
}


/*３本バー（ハンバーガー）アイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	display: block;
	position: fixed;z-index: 100;
	top: 20px;		/*上からの配置場所*/
	right: 20px;	/*左からの配置場所*/
	width: 50px;	/*幅*/
	height: 50px;	/*高さ*/
	cursor: pointer;
	background: rgba(0,0,0,0.6) url(../images/icon_menu.png) no-repeat center top/50px;	/*背景色、背景画像の読み込み、画像の上半分（３本マーク）を表示。幅は50px。*/
}

/*×印が出ている状態の設定。*/
#menubar_hdr.close {
	background: #000000 url(../images/icon_menu.png) no-repeat center bottom/50px;	/*背景色、背景画像の読み込み、画像の下半分（×マーク）を表示。幅は50px。*/
}

/*メニューの設定
---------------------------------------------------------------------------*/
#menubar ul {list-style: none;}

/*ボックス全体の設定*/
#menubar {
	display: none;				/*デフォルトで非表示にしておく*/
	animation-name: opa1;		/*@keyframesの指定*/
	animation-duration: 1S;		/*アニメーションの実行時間*/
	animation-fill-mode: both;	/*アニメーションの待機中は最初のキーフレームを維持、終了後は最後のキーフレームを維持。*/
	position: fixed;overflow: auto;z-index: 99;	/*fixedはスクロールしても動かない為の指定*/
	left: 0px;top: 0px;
	width: 100%;
	height: 100%;
	padding: 50px;		/*ボックス内の余白*/
	text-align: center;	/*テキストをセンタリング*/
	background: rgba(0,0,0,0.8);	/*背景色*/
	font-size: 1.2rem;	/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
}

/*メニュー１個あたりの設定*/
#menubar li {
	margin-bottom: 20px;	/*下に空けるスペース*/
}

#menubar a {
	display: block;text-decoration: none;
	text-align: center;	/*テキストをセンタリング*/
	background: #ffffff;	/*背景色*/
	color: #1F2A1F;		/*文字色*/
	border-radius: 5px;	/*角丸の指定*/
	box-shadow: 0px 0px 50px 10px rgba(255,255,255,0.4);	/*ボックスの影。右へ、下へ、ぼかし幅、範囲。255,255,255は白の事で0.4は色が40%出た状態の事。*/
	padding: 5px;	/*余白*/
}

/*メニュー内のspanタグ（小さい日本語部分）*/
#menubar span {
	display: block;
	font-size: 0.7rem;	/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
}

/* ハンバーガー記述はここまで ------------------------------- */

/*フッターにあるアイコン類
---------------------------------------------------------------------------*/
/*フッター設定
---------------------------------------------------------------------------*/
footer small {font-size: 100%;}

footer {
	font-size: 0.6rem;		/*文字サイズ。remの単位についてはテンプレート内の解説をお読み下さい。*/
	text-align: center;		/*内容をセンタリング*/
	padding: 20px;			/*ボックス内の余白*/
}

/*リンクテキスト*/
footer a {text-decoration: none;}

/*著作部分*/
footer .pr {display: block;}

/*フッターにあるアイコン類
---------------------------------------------------------------------------*/
/*アイコン類を囲むブロック*/
ul.icon {
	list-style: none;
	margin: 0;padding: 0;
	margin-bottom: 30px;	/*下に空けるスペース*/
}

/*アイコン１個あたりの設定*/
ul.icon li {
	display: inline-block;	/*リストタグを横並びにさせる指定*/
}

/*アイコン画像の設定*/
ul.icon img {
	width: 30px;	/*アイコン画像の幅*/
}

/*画像のマウスオン時*/
ul.icon img:hover {
	opacity: 0.8;	/*透明度。0.8は色が80%出た状態の事。*/
}


/* ------------------ハンバーガー最終設定 ---------------------------------  */

---------------------------------------------------------------------------*/
/*container。サイト全体を囲むブロック。
---------------------------------------------------------------------------*/
#container {
	margin: 0 auto;
	max-width: 1400px;	/*最大幅。これ以上幅が広がらないように。*/
	padding: 0 10px;	/*上下、左右へのブロック内の余白*/
}

/*headerブロック（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/* ロゴの枠組み（h1）の設定 */

header #logo {
    position: absolute;
    left: 300px;
    top: 20px;
    transform: none;
    width: 150px;      /* ここで全体の幅を指定 */
    height: auto;
    z-index: 100; /* ★ここを追加（数値を大きくして最前面にする） */
}

/* ★重要：ロゴの中にある画像自体のサイズを調整 */
header #logo img {
    width: 100%;      /* 親要素（80px）の幅に合わせる */
    height: auto;     /* 比率を維持 */
    display: block;
}


/* 画面幅が950px以下（モバイル・タブレット）の場合の設定 */
@media screen and (max-width: 767px) {
    header #logo {
        /* 絶対配置を維持したまま、左端からの距離を調整 */
        position: absolute;
        left: 15px;         /* 左端から15pxの位置（お好みで10px〜20px程度に調整） */
        top: 15px;          /* 上からの位置も少し調整 */
        
        /* PC版の大きな余白や移動設定を無効化 */
        margin: 0;
        transform: none;
        
        /* モバイル用にロゴのサイズを少し小さくする（必要に応じて） */
        width: 100px;
        z-index: 100; /* ★ここを追加（数値を大きくして最前面にする） */
    }

    header #logo img {
        width: 100%;
        height: auto;
    }

  #menubar .menu {
/*    margin: 10px 32px 0 auto; */ /* ← 白い箱を右寄せ */
    width: 100%;
    margin: -25px auto 0 auto; 
    padding: 5px 5px 5px; /* 上だけ10pxに、左右20px、下28px */
    border-radius: 14px;
  }

  #menubar .menu a {
    grid-template-columns: 50px 1fr;
    padding: 14px 10px;
  }

  #menubar .icon {
    grid-column: 1;
    width: 38px;
    height: 38px;
    font-size: 15px;
  }

  #menubar .text {
    grid-column: 2;
  }

}


/* アニメーション設定（必要に応じて） */
.home header #logo {
    animation-name: opa1;
    animation-duration: 3s;
    animation-fill-mode: both;
}



/* -------------------新ハンバーグ---------------------- */
/* ===== ハンバーガーメニュー整列 完全版 ===== */

/* ===== ハンバーガーメニュー整列 完全版 ===== */

/* ===== ハンバーガー新 ===================== */

/* ===== ハンバーガーメニュー 完全版（これだけ使う） ===== */

/* ===== ハンバーガー最終完成版（これだけ） ===== */

/* ===== ハンバーガーメニュー：アイコン4割位置＋縦揃え ===== */

/* ===== ハンバーガーメニュー：アイコン4割位置＋縦揃え ===== */

/* ===== ハンバーガーメニュー ===== */
/* 白い箱は右寄せ・中身は今の綺麗な配置のまま */

/* ===== ハンバーガーメニュー最終版 ===== */
/* 右から出てくる感じ＋上品な白パネル＋アイコン少し後ろ */

#menubar .menu {
/*  width: min(88vw, 720px); */
  width: 400px;
  margin: 10px 32px 0 auto; /* ← 白い箱を右寄せ */
  padding: 20px 20px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 20px 20px rgba(0, 0, 0, 0.18);
  backdrop-filter: blur(6px);
  animation: menuPanelIn 0.28s ease;
}

/* 右からスッと出る感じ */
@keyframes menuPanelIn {
  from {
    opacity: 0;
    transform: translateX(36px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* 各行 */
#menubar .menu a {
  width: 100%;
  display: grid;
  grid-template-columns: calc(42% - 30px) 60px 1fr; /* ← アイコンを少し後ろへ */
  align-items: center;
  padding: 18px 0;
  border-bottom: 1px solid #e6eee6;
  text-decoration: none;
  color: #2b342b;
  border-radius: 12px;
  transition: background 0.2s ease, transform 0.2s ease;
}

/* 押した時・ホバー */
#menubar .menu a:hover {
  background: #f3f8f3;
  transform: translateX(4px);
}

/* アイコン */
#menubar .icon {
  grid-column: 2;
  justify-self: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: linear-gradient(135deg, #9DD29C, #6f9f72);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 16px;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.10);
}

/* 文字 */
#menubar .text {
  grid-column: 3;
  text-align: left;
}

#menubar .text p {
  margin: 0;
  font-size: 15px;
  line-height: 1.3;
}

#menubar .text span {
  display: block;
  margin-top: 3px;
  font-size: 12px;
  color: #7b857b;
}

/* 触った時にアイコンを少し濃く */
#menubar .menu a:hover .icon,
#menubar .menu a:active .icon {
  background: linear-gradient(135deg, #7fb77f, #4f7f53);
}


/* スマホ */
/* スマホ */
@media (max-width: 767px) {
  #menubar .menu {
/*    margin: 10px 32px 0 auto; */ /* ← 白い箱を右寄せ */
    width: 100%;
    margin: -25px auto 0 auto; 
    padding: 5px 5px 5px; /* 上だけ10pxに、左右20px、下28px */
    border-radius: 14px;
  }

  #menubar .menu a {
    grid-template-columns: 50px 1fr;
    padding: 14px 10px;
  }

  #menubar .icon {
    grid-column: 1;
    width: 38px;
    height: 38px;
    font-size: 15px;
  }

  #menubar .text {
    grid-column: 2;
  }
}

/* ===== ハンバーガー新ここまで ===================== */
