@charset "UTF-8";
html, body {
  margin: 0;
  padding: 0;
}


/* CSS Document */
html {
  visibility: hidden;
}
html.wf-active {
  visibility: visible;
}

body {
  letter-spacing: .025em;
  line-height: 1.8;
	 font-family: "Yu Mincho", "游明朝体", "YuMincho", "Hiragino Mincho ProN", serif;
}
* {
  box-sizing: border-box;
}

*,
*::before,
*::after {
  box-sizing:border-box;
}

html,body {
  margin:0;
  padding:0;
}
img {
	width: 100%;
	height: auto;
}

/* ---------- Footer ---------- */

.footer {
	padding:32px 16px 0;
	color:var(--text-muted);
	background:rgba(255,255,255,.4);
	background: #fff;
	text-align: center;
	margin: 0 auto;
}
.footer-name{
	font-size: 1.8rem;
}
.footer-inner {
  width:100%;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.footer-upper {
  display:flex;
  flex-direction:column;
  gap:4px;
}
.footer-img{
	width: 100%;
	max-width: 100px;
	text-align: center;
	margin: 0 auto 22px;
}
.footer-txt{
		font-size:16px;
}
.insta{
	width: 100%;
	max-width: 20px;
	text-align: center;
	margin: 0 auto;
}
.footer-bottom{
	background: #263811;
	color: #fff;
	padding: 10px 0;
	text-align: center;
}

@media (max-width:880px) {

/* ---------- Footer ---------- */

.footer {
	padding:32px 16px 0;
	color:var(--text-muted);
	background:rgba(255,255,255,.4);
	background: #fff;
	text-align: center;
	margin: 0 auto;
}
.footer-name{
	font-size: 1.2rem;
}
.footer-inner {
  width:100%;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.footer-upper {
  display:flex;
  flex-direction:column;
  gap:4px;
}
.footer-img{
	width: 100%;
	max-width: 100px;
	text-align: center;
	margin: 0 auto 22px;
}
.footer-txt{
		font-size:16px;
	margin-bottom: 44px;
}
.insta{
	width: 100%;
	max-width: 25px;
	text-align: center;
	margin: 0 auto 44px;
}
.footer-bottom{
	background: #263811;
	color: #fff;
	padding: 10px 0;
	text-align: center;
}
}

/* 1600px 以上は最大幅 90%に制限 */
@media (min-width:1600px) {

}

/* 750px 以上：サイドバーを縦に固定 */
@media (min-width:880px) {
  .sidebar {
/*    flex:0 0 220px;*/
    position:sticky;
    top:40px;
  }
  .sidebar-nav {
    flex-direction:column;
  }
}

@media (min-width:821px) {
	  .pc {
    display: block !important;
  }
  .sp {
    display: none !important;
  }
}

@media (max-width: 880px){
.pc {
    display: none !important;
  }
 .sp {
    display: block !important;
  }
}

