/* 🌸 全画面共通のスタイル */
body {
  background-color: #f8f4e6;
  font-family: sans-serif;
  margin: 0;
  padding: 0;
}

#top {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #f8f4e6; /* 背景色を明示して透け防止 */
  z-index: 1000; /* 前面に表示 */
  padding: 10px 5%;
  box-sizing: border-box;
  border-bottom: 1px solid #ccc;
}

/* ヘッダーの下にスペースを空けるために、body内の最初に余白を確保 */
body {
  padding-top: 80px; /* 実際の#topの高さに応じて調整 */
}


#logo img {
  width: 100%;
  max-width: 180px;
}

a img{
  border-style:none;
}

#input-area {
  text-align: center;
  margin-top: 10px;
}

#mnemo-id {
  padding: 8px;
  font-size: 16px;
  width: 60%;
  max-width: 300px;
}
/*
#mnemo-form button {
  background: none;
  border: none;
  cursor: pointer;
}

#mnemo-form button img {
  height: 24px;
  vertical-align: middle;
  background-color: white;
  padding:10px;
}
*/

#search-button {
  background-color: white;
  border: none;
  border-radius: 10%;
  padding: 10px;
  cursor: pointer;
  box-shadow: 2px 2px 2px #bbb; 
  transition: background-color 0.3s ease;
}

#search-button:hover {
   box-shadow: none;
}

#search-button .icon-only {
  height: 18px;
  width: 18px;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
/* 🖼️ 見出し画像（スマホでも背景色を保持） */
#top_img {
  text-align: center;
  background-color: #339999;
  padding: 0;
}

#top_img img {
  width: 90%;
  max-width: 500px;
  display: block;
  margin: 0 auto;
}

/* 📜 ブログ部分（共通） */
#blog {
  width: 90%;
  max-width: 800px;
  margin: 30px auto;
  padding: 0 15px;
  border-left: solid 1px #339999;
  border-right: solid 1px #339999;
  box-sizing: border-box;
}

#sort {
  color: #696969;
  font-size: 80%;
  background-color: white;
  width: fit-content;
  padding: 5px 10px;
  border: solid 1px #666666;
  margin-left: auto;
}

#x_icon img{
  width:50px;
  display: block;
  margin-left: auto;
}

.blog-area {
  background-color: white;
  border: solid 1px #666666;
  padding:0 20px;
  margin-top: 20px;
  border-radius: 5px;
}

h2{
  color:#444444;
  padding-bottom:5px;
  border-bottom:dotted 1px #777777;}

.date{
  color:#666666;
  padding-bottom:5px;
  font-size:80%;
}
.blog-area p{
  line-height:1.5em;
  margin-bottom:30px;
}
.blogphoto{
  text-align: center;
  padding-bottom:20px;
}
.blogphoto img{
  width:60%;
}

.link{
  text-align: right;
  font-size: 80%;
  margin-top:10px;
}
.link a{
  margin-right:10px;
}

/*一覧*/
table{
  margin:50px auto;
  width:90%;
}
td, th {
	border-bottom: dotted 1px #666666;
	font-size:90%;
}
td, th {
	padding: 10px;
}
.ichiran_date{
  width:95px;
}

td a{
  color:#444444;
  text-decoration: none; 
}
td a:hover{
 color:#666666;
}

/*フッター*/
#footer{
  border-top: solid 1px #666666;	
}

#footer .copyright{
  font-size: 70%;
  text-align: center;
}
#footer .number{
  padding-right:20px;
  padding-bottom:20px;
  font-size: 70%;
  text-align: right;
}

/* 💻 PC用レイアウト（600px以上） */
@media (min-width: 600px) {
  #top {
    display: flex;
    align-items: center;
    padding: 0 5%;
    justify-content: space-between;
  }

  #input-area {
    margin-top: 0;
    text-align: right;
    padding-right: 20px;
  }

  #sort {
    margin-top: 10px;
  }
}
/*スマホでの表示調整*/
@media (max-width: 599px) {
  #top_img {
    margin-top: 105px;
  }
}
