.spbtn {
	display: none;
}

.slider img.sp {
	display: none;
}

@media (max-width: 950px) {
  body {
		position: relative;
		padding-top: 60px;
		min-width: 0;
		background: none;
  }
  body::before {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100vh;
		background: linear-gradient(0deg, rgba(239, 243, 200, 0) 0%, #eff3c8 100%);
  }

  body#related_link::before {
		display: none;
  }

  .wrapper {
		width: 100%;
		max-width: 950px;
		display: flex;
		flex-direction: column;
  }
  .wrapper > .main {
		order: 1;
  }
  .wrapper > .sidebar {
		order: 2;
  }
  .wrapper > iframe {
		order: 3;
  }

  .slider_about {
		width: 100%;
		max-width: 948px;
  }

  .bx-wrapper img {
		max-width: 100%;
		height: auto;
  }

  .gfooter01 {
		width: 100%;
		max-width: 950px;
		height: auto;
		background: url(../img/format/bg_g_footer01.png) no-repeat center top 10px;
		padding-top: 90px;
		padding-bottom: 20px;
		border-top: 1px solid #aaa;
  }
  .gfooter01 ul.logo {
		display: flex;
		flex-direction: column;
		padding-top: 0;
		gap: 15px;
  }
  .gfooter01 ul.logo li {
		display: block;
		text-align: center;
  }

  .gfooter02 {
		width: calc(100% - 20px);
		padding: 0 10px;
  }
  .gfooter02 ul.gnav {
		height: auto;
		line-height: 1.4;
		margin-top: 15px;
		display: flex;
		flex-wrap: wrap;
		gap: 10px 15px;
		padding-right: 80px;
  }
  .gfooter02 ul.gnav li {
		float: none;
		margin: 0;
  }

  .main_index {
		width: calc(100% - 20px);
		display: block;
		max-width: 619px;
		padding: 0 10px;
		margin: 0 auto;
		float: none;
  }

  .entry_list_column {
		width: 100%;
		max-width: 619px;
		padding: 13px 0;
  }

  .sidebar_index {
		float: none;
		display: block;
		margin: 30px auto 30px;
  }

  .copyright {
		position: static;
		float: none;
		line-height: 1.5;
		margin-top: 20px;
		margin-bottom: 0;
  }

  header.gheader {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		max-width: 950px;
		height: 60px;
		z-index: 10000;
		background: #fff;
		border-bottom: 1px solid #666;
  }
  header.gheader .site_id {
		padding: 5px 0 0 10px;
		width: auto;
		height: 50px;
  }
  header.gheader .site_id img {
		height: 50px;
		width: auto;
  }
  header.gheader ul.gnav {
		position: fixed;
		display: none;
		left: 0;
		top: 60px;
		width: calc(100% - 30px);
		height: auto;
		background: #007C39;
		margin: 0;
		padding: 0 15px;
		z-index: 10000;
		line-height: 1;
  }
  header.gheader ul.gnav li {
		list-style: none;
		padding: 0;
		margin: 0;
		float: none;
  }
  header.gheader ul.gnav li + li {
		border-top: 1px solid #fff;
  }
  header.gheader ul.gnav li a {
		display: block;
		color: #fff;
		padding: 20px 0;
		text-decoration: none;
  }

  .spbtn {
		position: absolute;
		right: 10px;
		top: 10px;
		display: block;
		cursor: pointer;
  }
  .spbtn button {
		position: relative;
		display: inline-block;
		width: 40px;
		height: 40px;
		border: none;
		cursor: pointer;
		background: #007C39;
  }
  .spbtn button span {
		position: absolute;
		display: inline-block;
		left: 8px;
		width: 24px;
		height: 2px;
		background-color: #fff;
		border-radius: 4px;
		transition: 0.5s;
  }
  .spbtn button span:nth-of-type(1) {
		top: 10px;
  }
  .spbtn button span:nth-of-type(2) {
		top: 19px;
  }
  .spbtn button span:nth-of-type(3) {
		bottom: 10px;
  }
  .spbtn button.open span:nth-of-type(1) {
		transform: translateY(9px) rotate(-45deg);
  }
  .spbtn button.open span:nth-of-type(2) {
		opacity: 0;
  }
  .spbtn button.open span:nth-of-type(3) {
		transform: translateY(-9px) rotate(45deg);
  }

  .main {
		display: block;
		float: none;
		margin: 0 auto;
		width: calc(100% - 20px);
		max-width: 640px;
		padding: 20px 10px 0;
  }
  .main img {
		max-width: 100%;
		height: auto;
  }

  .sidebar {
		display: block;
		float: none;
		padding-top: 0;
		margin: 0 auto;
  }

  .map {
		width: 100%;
		max-width: 600px;
  }

  .pic {
		width: auto;
  }

  .pic_main {
		width: 100%;
		max-width: 620px;
		height: auto;
  }

  iframe.related_link_window {
		width: 100%;
  }

  #related_link ul {
		display: flex;
		flex-wrap: wrap;
		gap: 30px;
  }
  #related_link ul li {
		margin: 0;
		float: none;
		width: calc((100% - 30px) / 2);
  }

  #related_link ul li div {
		display: flex;
		gap: 10px;
  }
  #related_link ul li div p {
		height: auto;
		float: none;
		display: block;
		background: none;
  }
  #related_link ul li div dl {
		width: calc(100% - 80px - 10px);
		margin: 0;
		float: none;
		display: block;
  }

  .title_entry {
		display: flex;
		gap: 20px;
  }
  .title_entry .status {
		display: block;
		float: none;
  }
  .title_entry .text {
		width: 100%;
		margin: 0;
		float: none;
		display: block;
  }

  dl.tabular {
		display: flex !important;
		flex-wrap: wrap !important;
  }
  dl.tabular dt {
		float: none !important;
		width: calc(35% - 0.5em) !important;
  }
  dl.tabular dd {
		float: none !important;
		margin: 0 !important;
		width: calc(65% - 0.5em - 0.5em) !important;
  }

  .voice {
		width: 100%;
		max-width: 518px;
  }

  .slider_about {
		display: none;
  }

  .slider img.sp {
		display: block;
  }
}
@media (max-width: 660px) {
  .entry_lists {
		display: flex;
		gap: 20px;
		flex-wrap: wrap;
  }
  .entry_lists .entry_list_thumbnail {
		float: none;
  }
  .entry_lists .entry_lists_detail_with_report {
		width: calc(100% - 80px - 20px);
		float: none;
		padding-left: 0;
  }
  .entry_lists .entry_list_report_button {
		float: none;
		padding-left: 0;
		width: 100%;
		text-align: center;
  }
  .entry_lists .entry_list_report_button p {
		text-align: center;
  }

  #related_link ul {
		gap: 20px;
  }
  #related_link ul li {
		width: 100%;
  }

  .pic_thumbnail {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
  }
  .pic_thumbnail p {
		width: calc((100% - 2px - 10px) / 2);
		margin: 0;
		float: none;
		display: block;
		height: auto;
		background: none;
		line-height: 0;
		border: none;
  }
  .pic_thumbnail p:hover {
		border: none;
  }
  .pic_thumbnail p img {
		width: 100%;
		height: auto;
		border: 1px solid #009141;
  }

  .img_top {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
  }
  .img_top div {
		float: none;
		margin: 0;
		display: block;
		width: calc((100% - 8px) / 2);
  }
  .img_top div p {
		text-align: left;
  }
  .img_top div p span {
		width: 100%;
		height: auto;
  }
  .img_top div p span img {
		width: 100%;
		height: auto;
  }

  .map {
		margin-top: 20px;
		background: none !important;
		height: auto !important;
		display: flex;
		flex-wrap: wrap;
		gap: 20px;
  }
  .map img {
		position: static !important;
  }

  .archive_list {
		width: auto;
  }
  .archive_list .archive_list_thumbnail {
		float: none;
		display: block;
		width: 100%;
		text-align: center;
  }
  .archive_list .archive_list_text {
		float: none;
		display: block;
		width: 100%;
		margin-left: 0;
		margin-top: 20px;
  }
}
