@charset "UTF-8";
@import url("https://use.fontawesome.com/releases/v5.0.6/css/all.css");

* {
	margin: 0px;
	padding: 0px;
}

body {
    width: 100%;
    background-image: url(https://hachikuma.tan-deki.com/img/wall.png);
    background-repeat: repeat;
    background-attachment: scroll;
    letter-spacing: normal;
    text-align: center;
    font-size: 15px;
    font-family: "メイリオ", "Meiryo", sans-serif;
    line-height : 1.5;
}

img {
	border: none;
	vertical-align: top;
}

a {
	border-width:0px;
	border-bottom-width:2px;
	border-style:dotted;
}

a:link {
	color: #663300;
	text-decoration:none;
	border-color: #FFC30B;
}

a:visited {
	color: #696969;
	text-decoration: none;
	background-color: rgba(232,246,231,0.5);
}

a:active {
	color: #696969;
	text-decoration: none;
}

a:hover {
	color: #FFFFFF;
	text-decoration: none;
	background-color: rgba(105,105,105,0.5);
}

/* wrapperの設定 */
#wrapper {
    max-width: 950px; /* 全体の幅を指定 */
    margin: 0 auto; /* 中央揃え */
    background-color: #f0f8c3;
    box-sizing: border-box; /* パディングとボーダーを幅に含める */
}

header {
    width: 950px; /* デスクトップビューでの幅 */
    height: 350px; /* 高さを350pxに設定 */
    margin: 0 auto; /* 中央揃え */
    background-image: url(https://hachikuma.tan-deki.com/img/header.png); /* ヘッダー画像 */
    background-size: cover; /* 画像をヘッダー全体にカバー */
    background-position: center; /* 画像を中央に配置 */
    background-repeat: no-repeat; /* 画像を繰り返さない */
    text-align: center; /* 中央揃え */
    box-sizing: border-box; /* パディングとボーダーを幅に含める */
}

/* コンテンツエリアの設定 */
#content {
    width: 950px; /* ヘッダーと同じ幅 */
    display: flex; /* 横並びにするためのフレックスボックス */
    margin: 0 auto; /* 中央揃え */
    box-sizing: border-box; /* パディングとボーダーを幅に含める */
}

/* メインコンテンツの設定 */
#main {
    float: left;
    width: 100%; /* メインコンテンツの幅 */
    box-sizing: border-box; /* パディングとボーダーを幅に含める */
}

#sidebar {
    width: 250px;
    text-align: left;
}

/* ハンバーガーメニューはデフォルトで非表示 */
#hamburger-menu {
    display: none;
}

/* 画面幅が950px以下の場合のスタイル */
@media (max-width: 950px) {
    header {
        width: 100%; /* 幅を100%に設定 */
        height: auto; /* 高さを自動調整 */
        background-size: contain; /* 画像をコンテンツ内に収める */
    }
    #content {
        width: 100%; /* ヘッダーと同じ幅 */
        margin: 0 auto; /* 中央揃え */
    }
}

/* 横幅768px以下のスタイル */
@media (max-width: 768px) {
    #hamburger-menu {
        display: block;
        position: fixed;
        top: 20px;
        right: 20px;
        z-index: 1000; /* 前面に表示 */
    }

    #sidebar {
        display: none; /* 768px以下でサイドバーを非表示 */
    }

    #content {
        flex-direction: column; /* 縦に並べる */
        width: 100%; /* 幅を100%に設定 */
        padding-top: 60px; /* ハンバーガーメニューの高さを考慮して、コンテンツの上部に余白を追加 */
    }
    
    #main {
        width: 100%; /* メインコンテンツの幅を100%に設定 */
    }

    /* ハンバーガーメニューから表示されるポップアップのスタイル */
    #popup-sidebar {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.8); /* 半透明の背景 */
        z-index: 1000; /* 高いz-indexで他のコンテンツの上に表示 */
        overflow-y: auto;
    }

    #popup-sidebar .content {
        background-color: white;
        margin: 50px auto;
        padding: 20px;
        max-width: 500px;
        border-radius: 10px;
    }
}

p {
	padding: 20px;
	margin-right: 30px;
	letter-spacing: normal;
}

h1 {
	margin-bottom: 15px;
}

#site-title {
	text-align: center;
	padding-top: 150px;
	color: #663300;
	font-size: 32px;
	font-weight: bold;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	text-shadow: 2px  2px 3px #FFC30B, -2px  2px 3px #FFC30B, 2px -2px 3px #FFC30B, -2px -2px 3px #FFC30B;
}

#site-description {
	text-align: center;
	width: 30%;
	margin-left: 33%;
	-moz-border-radius: 20px;    /* 古いFirefox */
	-webkit-border-radius: 20px; /* 古いSafari,Chrome */
	border-radius: 20px;         /* CSS3 */
	border: 3px #EB9605 dotted;     /* 枠線の装飾 */
	background-color: #FFC30B;
	font-size: 16px;
	font-weight: bold;
}

h2 {
	border-bottom: double 6px #663300;
	font-size: 18px;
	font-weight: bold;
	margin: 10px;
}

nav {
	font-size: 15px;
	font-weight: bold;
}

ul {
	border: solid 2px #EB9605;
	background: #fffaf1;
	padding: 0.5em 1em 0.5em 2.3em;
	position: relative;
}

ul li {
	line-height: 1.5;
	padding: 0.5em 0;
	list-style-type: none!important;/*ポチ消す*/
}

ul li:before {
	font-family: "Font Awesome 5 Free";
	content: "\f1b0";/*アイコン種類*/
	position: absolute;
	left : 1em; /*左端からのアイコンまで*/
	color: #663300; /*アイコン色*/
}

ol {
	border: solid 1px #EB9605;
	background: #fffaf1;
	padding: 0.5em 1em 0.5em 2.3em;
	position: relative;
}

ol li {
	line-height: 1.5;
	margin-left: 50;
	border-bottom: 1px dotted #EB9605;
}

section {
	width: 97%;
	margin: 10px;
	padding: 10px;
	border: 2px dotted #EB9605;
	text-align: left;
	line-height : 1.8;
    box-sizing: border-box; /* パディングとボーダーを幅に含める */
}

h3 {
	margin: 10px;
	padding: 5px;
	border: 2px solid #99CCFF;
	font-size: 18px;
	font-weight: bold;
	color: #3C69E7; /*bluetiful*/
}

h4 {
	margin: 10px;
	padding: 5px;
	border: 1px solid #99CCFF;
	font-size: 16px;
	font-weight: bold;
}

h3.navi-link {
	border: none;
}

#a-z {
	margin: 5px 15px 15px 50px;
}

#roseaux {
	margin: 15px;
	font-size: 12px;
}

#latest {
	margin-left: 5px;
	border-bottom: 1px dotted #99CCFF;
}

strong {
	border-bottom: 1px dashed #99CCFF;
	font-weight: bold;
}

small {
	margin-left: 2px;
	margin-right: 2px;
	font-size: 12px;
	font-weight: normal;
}

#peripatos {
	text-align: center;
	border-bottom: 1px dotted #99CCFF;
	font-size: 12px;
}

.aside {
	text-align: center;
}

.center {
	margin-left: 100px;
}

.entry-content {
	margin: 0 20px 20px 20px;
	border: 1px solid #6B74EB;
	text-align: left;
}

.wp {
	padding-left: 20px;
}

#wp dt {
	font-size: 12px;
	font-weight: normal;
}

.alignright {
	float: right;
	margin: 0 3px 5px 20px;
}

h5 {
	margin: 5px 3px 5px 3px;
	padding-left: 25px;
	font-size: 16px;
	font-weight: bold;
}

h6 {
	margin: 5px 3px 5px 3px;
	padding-left: 30px;
	font-size: 14px;
	font-weight: bold;
}

dl {
	padding: 5px;
}

dt {
	padding-left: 20px;
	font-weight: bold;
	line-height : 1.2em;
}

dd {
	padding-left: 30px;
}

blockquote {
	padding: 40px;
	letter-spacing: normal;
	line-height : 18px;
	border: 2px dashed #FFC8FF;
}

hr {
	padding: 15px;
	display:block;
	height: 1px;
	border: 0;
	border-top: 1px dashed #FFC8FF;
}

footer {
    clear: both;
    width: 950px;
    margin: 0 auto; /* 中央揃え */
    text-align: center;
    padding: 20px;
    background-color: #f4f4f4; /* 背景色 */
    box-sizing: border-box; /* パディングとボーダーを幅に含める */
}

/* 画面幅が950px以下の場合 */
@media (max-width: 950px) {
    footer {
        width: 100%; /* 幅を100%に設定 */
    }
}

.scroll-top {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 100;
    background-color: #58CE91;
    opacity: .8;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: none;
    color: #fff;
}

.scroll-top:hover {
    cursor: pointer;
}

.copyright {
	font-size: 12px;
	padding: 0 0 10px 0;
}
