@media all and (min-width: 668px) {
  .nav-toggle,
  .pagetop,
  .spnav {
	  display: none;
  }
  .spon,
  .spinlineblock {
	  display: none;
  }
  .pcon {
	  display: block;
  }
  .pcinlineblock {
	  display: inline-block;
  }

	a[href^="tel:"] {
		pointer-events: none;
	}
}

@media all and (max-width: 667px) {
	*,
	*::before,
	*::after {
		box-sizing: border-box;
	}
	body.fixed {
		position: fixed;
		width: 100%;
		height: 100%;
	}
	
	.box-link a {
		display: block;
	}
	
	#naka #header {
		height: auto;
		min-width: 1px;
		width: 100%;
		padding-bottom: 35.6vw;
	}
	#naka #header .mgb25 {
		margin-bottom: 0 !important;
	}
  
  #naka #header .header_left {
	  position: fixed;
	  top: 0; left: 0;
	  width: 100%;
	  background-color: #fff;
	  z-index: 100;
	  height: 21.2vw;
  }
  	#naka #header .header_left .logo {
	  	width: 29vw;
	  	float: none;
	  	margin: 0 auto;
	  	padding-top: 2vw;
  	}
  	.header_left .tagline,
  	.header_left > ul {
	  	display: none;
  	}
  #naka #header .header_right {
	  position: absolute;
	  top: 21.2vw;
	  right: auto;
	  width: 100%;
  }
  	#naka #header .header_right > ul {
		  display: flex;
		  flex-direction: row-reverse;
		  justify-content: center;
  	}
  	#naka #header .header_right ul li {
	  	float: none;
	  	width: 33.3%;
	  	height: 14.4vw;
  	}
  	.header_right li a {
	  	display: block;
	  	height: 100%;
  	}
  		.header_right li a:active,
  		.header_right li a:hover {
	  		opacity: .8;
  		}
  	.header_right li img {
	  	visibility: hidden;
  	}
  	.header_right li:nth-of-type(1) a {
	  	background: url(../img/common/head_navi03-sp.png) no-repeat 0 0;
	  	background-size: cover;
  	}
  	.header_right li:nth-of-type(2) a {
	  	background: url(../img/common/head_navi02-sp.png) no-repeat 0 0;
	  	background-size: cover;
  	}
  	.header_right li:nth-of-type(3) a {
	  	background: url(../img/common/head_navi01-sp.png) no-repeat 0 0;
	  	background-size: cover;
  	}
  
  .nav-toggle {
	  display: block;
	  position: absolute;
	  left: 0; top: 0;
	  width: 18.933vw;
	  height: 21.2vw;
	  background: url(../img/common/nav-toggle.svg) no-repeat left top;
	  background-size: cover;
  }
  	.nav-toggle.active {
	  	background-position: left bottom;
  	}
  
  .spnav {
	  position: fixed;
	  top: 21.2vw;
	  background-color: #fff;
	  z-index: 101;
	  display: block;
	  width: 100%;
	  height: 0;
	  transition: height .2s ease-out;
	  overflow: hidden;
  }
  .spnav.nav-open {
	  height: calc( 100% - 21.2vw );
	  overflow: scroll;
  }
  .spnav-sub {
	  height: 0;
	  overflow: hidden;
  }
  .spnav-sub.nav-open {
	  height: auto;
  }
  .spnav-main {
	  padding: 6vw;
	  list-style: none;
	  margin: 0;
  }
  	.spnav-main > li:not(:first-child) {
	  	margin-top: .75em;
  	}
  	.spnav-main > li > a {
	  	display: block;
	  	padding-left: 8vw;
	  	position: relative;
	  	font-size: 1.125rem;
  	}
  	.spnav-main > li > a::before {
	  	content: '';
	  	width: .8em;
	  	height: .8em;
	  	border-bottom: 4px solid #4b9207;
	  	border-right: 4px solid #4b9207;
			transform: rotate(-45deg);
			transform-origin: center center;
			position: absolute;
			left: 0; top: .4em;
  	}
  	.spnav-main > li.open > a::before {
	  	transform: rotate(45deg);
	  	top: .2em;
  	}
  .spnav-sub {
	  padding: 0 0 0 8vw;
	  list-style: none;
  }
  	.spnav-sub > li {
	  	margin-top: .75em;
  	}
  	.spnav-sub > li > a {
	  	display: block;
	  	padding-left: 8vw;
	  	position: relative;
	  	font-size: 1rem;
  	}
  	.spnav-sub > li > a::before {
	  	content: '';
	  	width: .9em;
	  	height: .9em;
	  	border-bottom: 2px solid #4b9207;
	  	border-right: 2px solid #4b9207;
			transform: rotate(-45deg);
			transform-origin: center center;
			position: absolute;
			left: 0; top: .3em;
  	}
  
  .wrapper {
	  width: 100%;
	  padding: 5.33vw 5.33vw 0;
  }
  .gnavi,
  .lnavi,
  .pankuzu {
	  display: none;
  }
  
  .container {
	  width: 100%;
	  margin: 0 0 3rem;
  }
  .contents {
	  width: 100%;
	  float: none;
  }
  .contents .main {
	  width: 100%;
  }
  
  
  .footer_center,
  .footer_under .box02,
  .footer_under .box03 {
	  display: none;
  }
  .footer_top {
	  width: 100%;
	  height: auto;
	  border-top: 1px solid #838383;
	  border-bottom: 1px solid #838383;
  }
  	.footer_top ul {
  	}
  	.footer_top ul li {
	  	text-align: center;
	  	margin: 0;
	  	float: none;
  	}
  	.footer_top li img {
	  	display: none;
  	}
  	.footer_top li:first-of-type {
	  	display: none;
  	}
  	.footer_top li:last-of-type {
	  	border-left: 1px solid #838383;
  	}
  	.footer_top li a {
	  	display: block;
	  	padding: 1.5em 0;
  	}
  	.footer_top li a::before {
	  	content: '▶';
	  	display: inline-block;
	  	margin-right: .5em;
	  	font-size: 80%;
  	}
  	
  	.footer_under .matome {
	  	width: 100%;
	  	border: 0;
	  	padding: 1em 0;
	  	display: flex;
	  	justify-content: center;
  	}
  	.footer_under .box01 {
	  	width: 40%;
	  	float: none;
	  	margin-right: 5%;
  	}
  	.footer_under .box04 {
	  	width: 45%;
	  	float: none;
	  	padding: 0;
  	}
  	.footer_under .copy {
	  	font-size: .5rem;
  	}
  
	.pagetop {
		display: block;
		position: fixed;
		bottom: 2rem;
		right: .5em;
		width: 44px;
		height: 44px;
		border: 2px solid #4b9207;
		background-color: rgba(255,255,255,.5);
		cursor: pointer;
	}
		.pagetop:hover,
		.pagetop:active {
			background-color: rgba(255,255,255,1);
		}
		.pagetop::after {
			content: '';
			width: 50%;
			height: 50%;
			border-top: 2px solid #4b9207;
			border-right: 2px solid #4b9207;
			transform: rotate(-45deg) translate(-15%, -55%);
			transform-origin: center center;
			position: absolute;
			left: 50%; top: 50%;
		}
	
  .spon {
	  display: block;
  }
  .spinlineblock {
	  display: inline-block;
  }
  .pcon,
  .pcinlineblock {
	  display: none;
  }
	
}