/* 全体リセット */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Zen Kurenaido', sans-serif;
  line-height: 1.6;
  padding-bottom: 90px; /* フッターの高さ + 余裕 */
}
@font-face {
  font-family: 'Zen Kurenaido';
  src: url('font/ZenKurenaido-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

/* ===== ヘッダー ===== */
.site-header {
  background: url('https://via.placeholder.com/1200x300') no-repeat center/cover;
  color: #fff;
  padding: 10px 20px;
}

.header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.logo img {
  width: 50px;
  height: auto;
}

/* ナビ（PC版） */
.nav ul {
  display: flex;
  list-style: none;
}

.nav ul li {
  margin-left: 20px;
}

.nav ul li a {
  color: #6666CC;
  text-decoration: none;
  font-weight: bold;
}

/* ===== ハンバーガーボタン ===== */
.hamburger {
  display: none;
  flex-direction: column;
  justify-content: space-between;
  width: 25px;
  height: 18px;
  background: none;
  border: none;
  cursor: pointer;
}

.hamburger span {
  display: block;
  height: 3px;
  background: #333;
  border-radius: 2px;
}

/* 開閉時のアニメーション */
.hamburger.active span:nth-child(1) {
  transform: rotate(45deg) translateY(7px);
}
.hamburger.active span:nth-child(2) {
  opacity: 0;
}
.hamburger.active span:nth-child(3) {
  transform: rotate(-45deg) translateY(-7px);
}

/* ===== メイン ===== */
.site-mainkyoto {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  gap: 20px;
  background-image: url("image/kyoto/wasi haikei_result.jpg");
      background-size: cover;
}
.site-mainkyoto1 {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  gap: 20px;
  background-image: url("image/kyoto/wasi haikei_result.jpg");
      background-attachment: fixed;
      background-repeat: no-repeat;
      background-size: cover;
}

.site-maintokyo {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  gap: 20px;
  background-image: url("image/tokyo/kikagaku_result.jpg");
      background-repeat: no-repeat;
      background-size: cover;
}
.site-mainperusona {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  gap: 20px;
  background-image: url("image/tokyo/perusona_result.jpg");
      background-attachment: fixed;
      background-repeat: no-repeat;
      background-size: cover;
}
.site-maingensin {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  gap: 20px;
  background-image: url("image/tokyo/gensin_result.jpg");
      background-attachment: fixed;
      background-repeat: no-repeat;
      background-size: cover;
}
.site-mainosaka {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  gap: 20px;
  background-image: url("image/osaka/IMG_1442_result.jpg");
      background-attachment: fixed;
      background-repeat: no-repeat;
      background-size: cover;
}
.site-mainhyogo {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  gap: 20px;
  background-image: url("image/hyogo/image0_result.jpg");
      background-attachment: fixed;
      background-repeat: no-repeat;
      background-size: cover;
}
.site-mainhirosima {
  display: flex;
  flex-wrap: wrap;
  padding: 20px;
  gap: 20px;
  background-image: url("image/hirosima/autumn-leaves_00015.jpg");
      background-attachment: fixed;
      background-repeat: no-repeat;
      background-size: cover;
}

.site-main {
  display: flex;
  flex-wrap: wrap;
  background-color: #f0f0f0;
  padding: 20px;
  gap: 20px;
}

.content {
  flex: 2;
  min-width: 250px;
  padding: 20px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.7);
  width: 80%;
  max-width: 1000px;
  margin: 0 auto;     
  
}
@media (max-width: 768px) {
  .content {
    width: 100% !important;
    margin: 0 !important;
    flex: none !important;
  }
}


.sidebar1 {
  min-width: 200px;
  padding: 20px;
  background-color: #ddd;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.sidebar2 {
  min-width: 200px;
  padding: 20px;
  background-color: #ddd;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
}


.sidebar-container {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
}


/* ===== フッター ===== */
.site-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #333;
  color: #fff;
  text-align: center;
  padding: 20px;
  z-index: 1000; /* 他の要素より前に表示 */}

.footer-nav ul {
  list-style: none;
  margin-bottom: 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.footer-nav ul li {
  margin: 0 10px;
}

.footer-nav ul li a {
  color: #fff;
  text-decoration: none;
}

.copy {
  font-size: 0.9em;
}

/* ===== レスポンシブ対応 ===== */
@media (max-width: 768px) {
  .header-inner {
    flex-direction: row;
    align-items: center;
  }

  /* ハンバーガー表示 */
  .hamburger {
    display: flex;
  }

  /* ナビはデフォルト非表示 */
  .nav {
    display: none;
    width: 100%;
    background: rgba(0, 0, 0, 0.8);
    margin-top: 10px;
  }

  .nav ul {
    flex-direction: column;
    align-items: flex-start;
    padding: 10px;
  }

  .nav ul li {
    margin: 10px 0;
  }

  /* ハンバーガーONで表示 */
  .nav.active {
    display: block;
  }

  .site-main {
    flex-direction: column;
  }

  .content {
    margin-right: 0;
    margin-bottom: 20px;
  }
}

 /* 中身の設定*/
.nakami1 {
  width: 48%;
  height: 300px;
  border: #999999 solid 4px;
  border-radius: 10px;
  overflow: hidden;
  position: relative;
  float: left;
  margin: 1%;
}

.bg-box {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 33.33%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
/*京都写真 */
.bg1 { left: 0; background-image: url("image/kyoto/kinkaku_result.jpg"); }
.bg2 { left: 33.33%; background-image: url("image/kyoto/tikurin_result.jpg"); }
.bg3 { left: 66.66%; background-image: url("image/kyoto/togetukyo_result.jpg"); }

.bg4 { left: 0; background-image: url("image/kyoto/kiyomizu_result.jpg"); }
.bg5 { left: 33.33%; background-image: url("image/kyoto/tohukuzi_result.jpg"); }
.bg6 { left: 66.66%; background-image: url("image/kyoto/yasuikonpiragu_result.jpg"); }

/*東京写真 */
.bg7 { left: 0; background-image: url("image/tokyo/IMG_7648_result.jpg"); }
.bg8 { left: 33.33%; background-image: url("image/tokyo/IMG_7678_result.jpg"); }
.bg9 { left: 66.66%; background-image: url("image/tokyo/IMG_7706_result.jpg"); }

.bg10 { left: 0; background-image: url("image/tokyo/IMG_8267_result.jpg"); }
.bg11 { left: 33.33%; background-image: url("image/tokyo/IMG_8255_result.jpg"); }
.bg12 { left: 66.66%; background-image: url("image/tokyo/IMG_8223_result.jpg"); }

.nakami1 .text {
  position: relative;
  z-index: 1;
  color: white;
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.5); /* 文字の背景を少し暗く */
  border-radius: 10px;
  margin: 10px;
}
/*京都*/
.titlekyoto {
	background-color: #7E0F09;
	color: #ffffff;
	padding: 4px 10px 10px 10px;
	clear: both;
	margin-top: 10px;
}
.minititlekyoto {
 	padding: 5px 0;
	border-bottom: 2px solid #7E0F09; /* ← 横幅100%の下線 */
	width: 100%;
}
/*東京*/
.titletokyo {
	background-color: #666666;
	color: #ffffff;
	padding: 4px 10px 10px 10px;
	clear: both;
	margin-top: 10px;
}
.minititletokyo {
 	padding: 5px 0;
	border-bottom: 2px solid #666666; /* ← 横幅100%の下線 */
	width: 100%;
}
.titleperusona {
	background-color: #000000;
	color: #ffffff;
	padding: 4px 10px 10px 10px;
	clear: both;
	margin-top: 10px;
}
.minititleperusona {
 	padding: 5px 0;
	border-bottom: 2px solid #000000; /* ← 横幅100%の下線 */
	width: 100%;
}
.titlegensin {
	background-color: #ffd49f;
	color: #2f2f2f;
	padding: 4px 10px 10px 10px;
	clear: both;
	margin-top: 10px;
}
.minititlegensin {
 	padding: 5px 0;
	border-bottom: 2px solid #ffd49f; /* ← 横幅100%の下線 */
	width: 100%;
}
/*大阪*/
.titleosaka {
	background-color: #2e1102;
	color: #ffffff;
	padding: 4px 10px 10px 10px;
	clear: both;
	margin-top: 10px;
}
.minititleosaka {
 	padding: 5px 0;
	border-bottom: 2px solid #2e1102; /* ← 横幅100%の下線 */
	width: 100%;
}
/*兵庫*/
.titlehyogo {
	background-color: #4052a2;
	color: #ffffff;
	padding: 4px 10px 10px 10px;
	clear: both;
	margin-top: 10px;
}
.minititlehyogo {
 	padding: 5px 0;
	border-bottom: 2px solid #4052a2; /* ← 横幅100%の下線 */
	width: 100%;
}
/*広島*/
.titlehirosima {
	background-color: #e83929;
	color: #ffffff;
	padding: 4px 10px 10px 10px;
	clear: both;
	margin-top: 10px;
}
.minititlehirosima {
 	padding: 5px 0;
	border-bottom: 2px solid #e83929; /* ← 横幅100%の下線 */
	width: 100%;
}



.imageyoko {
  width: 400px;

  height: auto;
}
.imagetate {
  width: 300px;
  height: auto;
  margin-right: 50px;
  margin-left: 50px;
}

.containermini {
  text-align: center;
}

.containermini {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2%; /* 少し余裕を持ったギャップ */
}

.imagemini {
  width: calc(25% - 2%); /* 4列用に幅調整 */
  height: auto;
  max-height: 200px;
  margin-bottom: 1%;
  object-fit: contain;
  vertical-align: top;
}

/* スマホ：2列 */
@media screen and (max-width: 768px) {
  .imagemini {
    width: calc(50% - 1%);
    max-height: 160px;
  }
}

.box1 {
  display: flex;
  align-items: flex-start;
  padding: 10px;
  gap: 15px;
}
@media screen and (max-width: 768px) {
  .box1 {
    flex-direction: column;
    align-items: center;
  }

  .image {
    width: 100%;
    max-width: 400px;
  }
}
.boxinfo {
	width: 25%;
	height: 100%;
	border: #005555 hiden 4px;
	padding: 10px;
	margin: 2px 2px 2px 2px;
        background-color: #aaaaaa;
	border: #ffffff double 4px;
	text-align: center;
	min-height: 300px;
}
@media screen and (max-width: 768px) {
  .boxinfo {
    width:  100%;
    height: 100%; 
    min-height: 0px;   
  }




 /* リンク部分の色*/

a.ikisaki{
	color:#ffffff;
	text-decoration: none;
}

