@charset "UTF-8";
/* ----------------------------
 import css
---------------------------- */ 
@import url("common.css");
body{
 font-family: "游明朝" , "Yu Mincho" , YuMincho , Hiragino Mincho Pro , serif;
}
/*=============================================================
#base
=============================================================*/
html {
 font-size: 10px;
}
body {
 font-size: 1.6rem;
 margin: 0px;
 padding: 0px;
 background-color: #FFF;
 line-height: 1.8em;
 text-align: left;
 text-size-adjust: 100%;
}
body,html{
 width: 100%;
 min-width: 1200px;
}
a:active {
 color: #111111;
 text-decoration: none;
}
a:visited {
 color: #111111;
 text-decoration: none;
}
a:link {
 color: #111111;
 text-decoration: none;
}
a:hover {
 color: #111111;
 text-decoration: none;
}
#container {
 margin-right:auto;
 margin-left:auto;
 margin-top: 0px;
 margin-bottom: 0px;
 background-color: #ffffff;
}
a[href^="tel:"] {
 pointer-events: none;
 text-decoration: none;
 color: #ffffff;
}
.sp {
 display: none;
}
.pc {
 display: block;
}

/*=============================================================
header
=============================================================*/
header {
 width: 100%;
 margin: 0 auto;
 position: relative;
}
#headerbox {
 display: flex;
 justify-content: space-between;
 padding-top: 30px;
 width: 1120px;
 margin: 0 auto;
 position: relative;
 z-index: 1;
}
/*=============================================================
nav
=============================================================*/
nav {
 padding-top: 15px;
 font-size: 1.8rem;
}
nav ul {
 display: flex;
 justify-content: space-between;
}
nav li {
 margin-left: 20px;
 font-weight: 600;
}
.navhover {
 display: inline-block;
 position: relative;
 text-decoration: none;
}
.navhover::after {
 position: absolute;
 content: '';
 bottom: -5px;
 left: 0;
 width: 0;
 height: 2px;
 background: #258c6d;
 transition: all 0.3s ease 0s;
}
.navhover:hover {
 cursor: pointer;
}
.navhover:hover::after {
 width: 100%;
}
/*=============================================================
#footer
=============================================================*/
#footerbox {
 display: flex;
 justify-content: space-between;
 width: 1200px;
 margin: 0 auto 40px;
}
#footerbox ul {
 display: flex;
 justify-content: space-between;
}
#footerbox ul li {
 padding-left: 17px;
}
#footerbox img {
 padding-bottom: 20px;
}
#copyright {
 color: #ffffff;
 background-color: #258c6d;
 height: 80px;
}
#copyright a {
 color: #ffffff;
}
#copyright div {
 display: flex;
 justify-content: space-between;
 width: 1200px;
 margin: 0 auto;
 padding-top: 45px;
}
/*=============================================================
トップに戻るボタン
=============================================================*/
#page_top{
 width: 50px;
 height: 50px;
 position: fixed;
 right: 10px;
 bottom: 10px;
 background: #258c6d;
 border-radius: 50%;
 border: solid 1px #ffffff;
}
#page_top a{
 position: relative;
 display: block;
 width: 50px;
 height: 50px;
 text-decoration: none;
}
#page_top a::before{
 content: '';
 color: #fff;
 position: absolute;
 width: 10px;
 height: 10px;
 top: 15px;
 bottom: 0;
 right: 0;
 left: 0;
 margin: auto;
 text-align: center;
 border-top: 3px solid #fff;
 border-right: 3px solid #fff;
 transform: rotate(-45deg);
 margin-top: 5px;
}
/*-------------------------------------------
SP
-------------------------------------------*/
@media screen and (max-width: 640px) {
		.sp{
				display: block;
		}
		.pc{
				display: none;
		}
  /*=========================================
  #base
  =========================================*/
  body,html{
				min-width: 100%;
  }
  #container {
				overflow-x: hidden;
  }
  a[href^="tel:"] {
				pointer-events: auto;
		}
  /*=========================================
  header
  =========================================*/
		#headerbox {
				width: 100%;
				padding-top: 20px;
				padding-left: 10px;
		}
		#headerbox img {
				width: 120px;
				height: 49px;
		}
  /*=========================================
  footer
  =========================================*/
		#footerbox {
				width: 100%;
				flex-direction: column;
				margin: 0 10px;
				font-size: 1.6rem;
		}
		#footerbox img {
		  width: 120px;
				height: 49px;
		}
		#footerbox ul {
				flex-direction: column;
				margin: 10px 0 20px 0;
		}
		#footerbox ul li {
				padding-left: 0;
		}
		#footerbox ul li:before {
				content: "›";
				margin: 0.6em; /* 記号の左右の余白 */
		}
		#copyright {
				height: 100%;
		}
		#copyright p:not(:last-of-type)::before {
				content: "›";
				margin: 0.6em; /* 記号の左右の余白 */
		}
		#copyright div {
				flex-direction: column;
				width: 100%;
				padding: 25px 10px;
		}
		#copy {
				font-size: 1.2rem;
				padding-top: 10px;
				text-align: center;
		}
}
  /*=========================================
   ハンバーガーメニュー
  =========================================*/	
.hamburger-menu {
		display: none;
}
@media screen and (max-width: 640px) {
		.hamburger-menu {
				display: block;
				width: 60px;
				height: 50px;
				position: relative;
				border: none;
				background: #ffffff;
				appearance: none;
				padding: 0;
				cursor: pointer;
				margin-right: 20px;
		}
		.hamburger-menu__bar {
				display: inline-block;
				width: 45%;
				height: 2px;
				background: #242424;
				position: absolute;
				left: 50%;
				transform: translateX(-50%);
				transition: .5s;
		}
		.hamburger-menu__bar:first-child {
				top: 16px;
		}
		.hamburger-menu__bar:nth-child(2) {
				top: 24px;
		}
		.hamburger-menu__bar:last-child {
				top: 32px;
		}
		.hamburger-menu--open .hamburger-menu__bar {
				top: 50%;
		}
		.hamburger-menu--open .hamburger-menu__bar:first-child {
				transform: translateX(-50%) translateY(-50%) rotate(45deg);
		}
		.hamburger-menu--open .hamburger-menu__bar:last-child {
				transform: translateX(-50%) translateY(-50%) rotate(-45deg);
		}
		.hamburger-menu--open .hamburger-menu__bar:nth-child(2) {
				display: none;
		}
		.navigation {
				display: none;
				background: #ffffff;
				position: absolute;
				top: 70px;
				width: 100%;
				z-index: 9999;
				margin-left: -10px;
		}
		.navigation__link {
				color: #fff;
				text-decoration: none;
				display: block;
				padding: 10px 0;
				transition: .5s;
		}
		nav {
				padding-top: 0;
				font-size: 1.8rem;
		}
		nav ul {
				flex-direction: column;
		}
		nav li {
				margin-left: 0;
				text-align: center;
		}
		nav li:nth-child(1)  {
				border-bottom: none;
		}
		.navhover::after{
				display: none;
		}
}