@charset "utf-8";

img, object, embed, video {
	max-width: 100%;
}
input {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
input[type="number"]::-webkit-outer-spin-button, 
input[type="number"]::-webkit-inner-spin-button { 
  -webkit-appearance: none; 
  margin: 0; 
} 
input[type="number"] { 
  -moz-appearance:textfield; 
} 
button{
        background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        appearance: none;
}


body {
	margin: 0;
	color: #333;
	font-family:
    "メイリオ",
    Meiryo,
    "Noto Sans JP",
    "Hiragino Sans",
    "Hiragino Kaku Gothic ProN",
    "Yu Gothic Medium",
    "YuGothic",
    sans-serif;
	background:#E5DCC3;

	letter-spacing: 0.03em;
}
a:link ,a:visited {
	color: #333;
	text-decoration: underline;
}
a:hover,a:active {
	color: #E90064;
	text-decoration: none;
}


h1 {
	font-size: 170%;
	margin-bottom: 35px;
	font-weight: normal;
	border-left-width: 0px;
	margin-top: 15px;
	padding-top: 12px;
	color: #3F5A3A;
	line-height: 120%;
}
h2 {
	font-size: 150%;
	margin-bottom: 24px;
	font-weight: normal;
	border-left-width: 0px;
	margin-top: 34px;
	padding-top: 12px;
	padding-bottom: 14px;
	color: #0078AA;
	line-height: 110%;
	position: relative;	
}

h3 {
    font-size: 110%;
    font-weight: normal;

    padding-top: 10px;
    padding-bottom: 2px;
    line-height: 100%;
}

hr{
  border:0;
  height:1px;
  margin:18px 0;
  background: linear-gradient(to right,
    transparent,
    rgba(60,55,45,.35),
    rgba(60,55,45,.18),
    rgba(60,55,45,.35),
    transparent
  );
}


/* ページ全体の最大幅を制限（PC向け） */
main {
  max-width: 800px;    /* 好みにより 800〜1000pxで調整 */
  margin: 0 auto;
  padding: 0 6px;     /* 端に余白をつけて窮屈さ回避 */
}
/* PC：headerだけは別管理 */
header {
  max-width: 800px;
  margin: 0 auto;
  padding: 0;
}

/* ヘッダー画像（比率維持して可変） */
#topimg img {
  width: 100%;      /* 親要素の幅に合わせて縮小 */
  height: auto;     /* 比率維持 */
  display: block;   /* 隙間解消 */
}

/* スマホは幅いっぱいでOK */
@media (max-width: 600px) {
  main {
    max-width: 100%;
    padding: 0 10px;
  }
header {
    max-width: 100%;
    margin: 0;
    padding: 0;
  }
/* ヘッダー画像も完全に横いっぱいへ */
  #topimg img {
    width: 100%;
    height: auto;
  }
}

/* 投稿全体 */
.post {
  background:#ffffff;
  border:1px solid #e2e2e2;
  border-radius:12px;
  padding:16px 18px;
  margin:22px 0;
  position:relative;
  box-shadow:0 1px 2px rgba(0,0,0,0.06);
}

/* シンプルなヘッダーメニュー */
.simple-nav {
  background: #E5DCC3;        /* 指定色 */
  max-width: 800px;
  margin: 0 auto;
  padding: 6px 0;
  display: flex;
  justify-content: center;
  gap: 24px;
  border-bottom: 1px solid #d4ccb6;
}

.simple-nav a {
  color: #4a4a4a;
  font-size: 14px;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 6px;
  border-radius: 4px;
  transition: 0.2s ease;
}

.simple-nav a:hover {
  background: rgba(255, 255, 255, 0.4);
  color: #000;
}

/* スマホ対応 */
@media (max-width: 600px) {
  .simple-nav {
    max-width: 100%;
    gap: 16px;
    padding: 8px 0;
  }
  .simple-nav a {
    font-size: 15px;
  }
}

/* フッター */
/* フッター共通 */
.footer-boards {
  margin: 20px auto 30px;
  text-align: center;
}

.footer-title {
  font-size: 15px;
  font-weight: bold;
  color: #444;
  margin-bottom: 10px;
}

/* スマホ：ul は縦並び（デフォルト） */
.footer-links {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  font-size: 14px;
}

.footer-links li {
  margin: 8px 0;
}

/* リンク共通 */
.footer-links a {
  color: #444;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: opacity 0.2s;
}

.footer-links a:hover {
  opacity: 0.7;
}

/* PC時：li を横並びにするだけ */
@media (min-width: 700px) {
  .footer-links {
    display: flex;
    justify-content: center;
    gap: 26px; /* 項目間の横スペース */
  }
.footer-boards {
  margin: 30px auto 20px;
}

  .footer-links li {
    margin: 0;
  }
}



/* ---------------------
   右下追従 pagetop
---------------------- */
.pagetop {
    position: fixed;
    right: 16px;
    bottom: 20px;
    z-index: 999;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.pagetop.show {
    opacity: 1;
    pointer-events: auto;
}

.pagetop a {
    display: flex;
    width: 46px;
    height: 46px;
    background: #e8e2d0;
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    color: #555;
    font-size: 20px;
    text-decoration: none;
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}

.pagetop a:hover {
    background: #ded7c3;
}


.small {
	font-size: 90%;
}
.small2 {
	font-size: 80%;
}
.small3 {
	font-size: 70%;
}
.color5 {
	color: #DC0000;
}
.color6 {
	color: #A62349;
}
.color7 {
	color: #0078AA;
}
.color8 {
	color: #DC3535;
}
.color9 {
	color: #25B7C0;
}
.color10 {
	color: #333;
}
.color11 {
	color: #999;
}


.back_color1 {
	background-color: #FFF1DC;
	padding-left: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-top: 12px;
	margin-top: 20px;
	margin-bottom: 30px;
	border-radius: 10px;
}
.back_color2 {
	background-color: #F0EEED;
	padding-left: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-top: 12px;
	margin-top: 20px;
	margin-bottom: 30px;
	border-radius: 10px;
}
.back_color3 {
	background-color: #EEB0B0;
	padding-left: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-top: 12px;
	margin-top: 20px;
	margin-bottom: 30px;
	border-radius: 10px;
}
.back_color4 {
	background-color: #BDE6F1;
	padding-left: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-top: 12px;
	margin-top: 20px;
	margin-bottom: 30px;
	border-radius: 10px;
}
.back_color4_1 {
	background-color: #3AB0FF;
	padding-left: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-top: 12px;
	margin-top: 20px;
	margin-bottom: 30px;
	border-radius: 10px;
	color: white;
}
.back_color4top {
	background-color: #3DB2FF;
	padding-left: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-top: 12px;
	margin-top: 0px;
	margin-bottom: 30px;
	border-radius: 10px;

}
.back_color5 {
	background-color: #FFEBB7;
	padding-left: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-top: 12px;
	margin-top: 20px;
	margin-bottom: 30px;
	border-radius: 10px;
}
.back_color6 {
	background-color: #DEEDF0;
	padding-left: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-top: 12px;
	margin-top: 20px;
	margin-bottom: 30px;
	border-radius: 10px;
}
.back_color8 {
	padding: 7px;
	border: 1px solid #666666;
}
.back_color8_1 {
	padding: 0px 6px;
	margin-bottom: 1px;
	border: 1px solid #555;
	background-color: #fff;
}
.back_color9 {
	padding: 3px 8px;
	margin: 4px;
	border: 1px solid #666666;
	border-radius: 6px;
	background-color: white;
}
.back_color10 {
	background-color: #FFFAF4;
	padding-left: 12px;
	padding-right: 12px;
	padding-bottom: 12px;
	padding-top: 12px;
	margin-top: 20px;
	margin-bottom: 30px;
	border-radius: 10px;
}

.back_color10top {
	background-color: #FFFAF4;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 16px;
	padding-top: 16px;
	margin-top: 30px;
	margin-bottom: 30px;
	border-radius: 10px;
	min-height: 110px;
	line-height: 200%
	
}

.backcolor1s{
	background: #979797;
	color: #fff;
	padding-left: 5px;
	padding-right: 5px;
	padding-bottom: 0px;
	padding-top: 1px;
	border-radius: 4px;
	margin-right: 3px;
}

.center {
	text-align: center;
}
.left {
	text-align: left;
}
.right {
	text-align: right;
}
.lineheight180 {
	line-height: 180%;
}
.lineheight200 {
	line-height: 200%;
}
.line_border1 {
	border: dashed 1px #ddd;
}


/* アドセンス広告（モバイル）の高さを指定(cls改善)*/
.adsense {
	min-height:250px;
}

.botton_good {
	font-size: 14px;
	color: white;
	display: inline-block;
	padding: 3px 5px;
	border: 1px solid #777;
	border-radius: 4px;
	background-color: #F2C18D;
}
.botton_good_done {
	font-size: 14px;
	display: inline-block;
	padding: 3px 5px;
	border: 1px solid #999;
	color: #999;
	border-radius: 4px;
	background-color: #ddd;
}

/*タグボタンここから*/


/*フォームここから*/
.formbox {
	padding-bottom: 10px;
	padding-top: 6px;

}
.formline {
	margin: 6px 0px;
}




.form5 input {/* テキストボックス用 */
	font: 15px/20px sans-serif;
	box-sizing: border-box;
	width: 300px;
	padding: 0.3em;
	transition: 0.3s;
	letter-spacing: 1px;
	border: 1px solid #bbb;
	border-radius: 4px;
	background-color: #fafafa;;
}
.form6 input {/* メールアドレス用 */
	font: 16px/20px sans-serif;
	box-sizing: border-box;
	width: 300px;
	padding: 0.3em;
	transition: 0.3s;
	letter-spacing: 1px;
	border: 1px solid #1b2538;
	border-radius: 4px;
	background-color: #fff;
}
.form5 input[type="submit"]{
	padding: 5px 10px;
	font-size: 16px;
	width: 70px;
    border: 1px solid #373737;
	background-color: ghostwhite;
    color: #000000;
	border-radius: 4px;
}
.form5 textarea {/* テキストボックス用 */
	font: 15px/20px sans-serif;
	box-sizing: border-box;
	width: 100%;
	height: 140px;
	padding: 10px;
	transition: 0.3s;
	border: 1px solid #bbb;
	background-color: #fafafa;;
	border-radius: 4px;
}
.form5 select {/* テキストボックス用 */
	font: 16px/20px sans-serif;
	box-sizing: border-box;
	width: 200px;
	padding: 0.3em;
	transition: 0.3s;
	letter-spacing: 1px;
	border: 1px solid #1b2538;
	border-radius: 4px;
	background-color: #fff;
}
.form7 input {/* bbsタイトル */
	font: 15px/20px sans-serif;
	box-sizing: border-box;
	width: 90%;
	padding: 10px;
	transition: 0.3s;
	letter-spacing: 1px;
	border: 1px solid #bbb;
	border-radius: 4px;
	background-color: #fafafa;;
}

/* ラジオボタン用 */

/* ラジオボタンの○を消す */
input[type="radio"] {
    display: none;
}
/* 画像 */
label .radioimg {
    margin: 3px;
    padding: 1px;
	width: 45px;
	height: 45px;
	background-color: white;
}
/* 未選択の場合 */
input[type="radio"] + label .radioimg {
    border: solid 1px ;
	border-radius: 50%;
  }
/* 選択済みの場合 */
input[type="radio"]:checked + label .radioimg {

	border: solid 3px darkorange;
	background-color: beige;
	width: 55px;
	height: 55px;
}



/* Tablet Layout: 481px to 768px. Inherits styles from: Mobile Layout. */

@media only screen and (min-width: 481px) {

	
.mobileoff {
	display: inline;
}

	
.form5 textarea {/* テキストボックス用 */
	height: 160px;
}
.form7 input {/* bbsタイトル */
	width: 400px;
}
	
}

/* Desktop Layout: 769px to a max of 1232px.  Inherits styles from: Mobile Layout and Tablet Layout. */

@media only screen and (min-width: 769px) {


	
}