@charset "utf-8";

@-ms-viewport {
  width: auto;
}

@viewport {
  width: device-width;
}

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}


@media screen and (max-width:780px){

.pc{display:none;}
.sp{display:block;}

.btn:hover{
	opacity:1.0;
	filter: alpha(opacity=100);
}

body{
	background:none;
	font-size: 1.4rem;
}


/*Contents layout
----------------------------------------------------*/
.contents{
	width:94%;
}


/*header
----------------------------------------------------*/
.header_sp{
	display:block;
}

.header_sp a{
	float:right;
	margin-right:3.5em;
}

.header_sp a img{
	width:auto;
	height:2em;
}

header{
	height:auto;
	padding-top:10px;
}

header h1{
	width:70%;
	margin-bottom:15px;
	font-size:12px;
}

header .ttl_logo{
	float:none;
	margin-bottom:20px;
	text-align:center;
}

header .box_right{
	position:relative;
	top:auto;
	right:auto;
	width:auto;
}

header .box_right img{
	float:none;
	margin-left:0;
	display:none;
}

header .box_right .tel{
	font-size:24px;
	text-align:center;
}

header .box_right .time{
	margin-bottom:15px;
	font-size:12px;
	text-align:center;
}


/*navigation
----------------------------------------------------*/

/*icon
-----------------------------------*/
.drawer-hamburger {
  position: fixed;
  z-index: 104;
  top: 0;
  display: block;
  box-sizing: content-box;
  width: 2.5rem;
  padding: 0;
  padding-top: 3.5%;
  padding-right: 0;
  padding-bottom: 30px;
  padding-left: 0;
  -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  border: 0;
  outline: 0;
  background-color: transparent;
}

.drawer-hamburger:hover {
  cursor: pointer;
  background-color: transparent;
}

.drawer-hamburger-icon {
  position: relative;
  display: block;
  margin-top: 10px;
}

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
  width: 100%;
  height: 2px;
  -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  background-color: #D9384B;
}

.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
  position: absolute;
  top: -10px;
  left: 0;
  content: ' ';
}

.drawer-hamburger-icon:after {
  top: 10px;
}

.drawer-open .drawer-hamburger-icon {
  background-color: transparent;
}

.drawer-open .drawer-hamburger-icon:before,
.drawer-open .drawer-hamburger-icon:after {
  top: 0;
}

.drawer-open .drawer-hamburger-icon:before {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.drawer-open .drawer-hamburger-icon:after {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.sr-only {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  overflow: visible;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
}


/*navi
-----------------------------------*/
.drawer-nav{
	position:fixed;
	top:0;
	width:100%;
	margin:0 auto;
	padding-top:12px;
	overflow: hidden;
	z-index: 101;
}

.drawer-menu{
	width:100%;
	margin:0;
}

nav ul.gnavi{
	position:relative;
	top:0;
	right:auto;
	text-align:center;
	display:block;
}

nav ul.gnavi li{
	width:100%;
	margin-left:0px;
	text-align:center;
	display:block;
}

nav ul.gnavi li a,
.drawer-nav.fixed a{
	height:auto;
	padding:15px 5%;
	display:block;
}

.sidebars * {
  -webkit-transition: 0s;
  -moz-transition: 0s;
  -ms-transition: 0s;
  -o-transition: 0s;
  transition: 0s;
}


.drawer-brand {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 3.75rem;
  display: block;
  padding-right: .75rem;
  padding-left: .75rem;
  text-decoration: none;
  color: #222;
}

.drawer-menu-item {
  font-size: 1rem;
  display: block;
  padding: .75rem;
  text-decoration: none;
  color: #222;
}

.drawer-menu-item:hover {
  text-decoration: underline;
  color: #555;
  background-color: transparent;
}

/*! overlay */
.drawer-overlay {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .2);
}

.drawer-open .drawer-overlay {
  display: block;
}


.drawer--top .drawer-nav {
  top: -100%;
  left: 0;
  width: 100%;
  height: auto;
  max-height: 100%;
  -webkit-transition: top .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: top .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}

.drawer--top.drawer-open .drawer-nav {
  top: 0;
}

.drawer--top .drawer-hamburger,
.drawer--top.drawer-open .drawer-hamburger {
  right: 5%;
}


/*mainImage
----------------------------------------------------*/
.mainImage{
	width:100%;
	min-height:0;
}


/*common
----------------------------------------------------*/
section h2{
	margin:0 auto 40px auto;
	padding:0 20px;
	font-size:32px;
}


/*outline
----------------------------------------------------*/
#outline{
	padding:40px 0;
	font-size:18px;
}

section table{
	width:100%;
}

section table th{
	width:5.5em;
}


/*business
----------------------------------------------------*/
#business{
	padding:40px 0;
	font-size:18px;
}

/*#business .box_left,
#business .box_right{
	float:none;
	width:100%;
}

#business .box_left{
	margin-bottom:20px;
}

#business .box_right{
	text-align:center;
}

#business .box_right img{
	width:100%;
	max-width:380px;
	height:auto;
}*/


/*access
----------------------------------------------------*/
#access{
	padding:40px 0;
	font-size:18px;
}

#access .map{
	width:100%;
	height:350px;
	margin:0 auto 20px auto;
}


/*inq
----------------------------------------------------*/
#inq{
	padding:40px 0;
	font-size:18px;
}

#inq dl{
	width:100%;
	margin:0 auto 25px auto;
}

#inq dt{
	float:none;
	width:100%;
	margin-right:0;
	padding:15px;
	font-size:22px;
}

#inq dd{
	float:none;
	width:100%;
	text-align:center;
}

#inq dd.tel{
	padding-top:15px;
	font-size:30px;
}

#inq dd.mail{
	padding-top:15px;
	font-size:22px;
}

#inq p{
	width:100%;
	text-align:center;
}

#inq p span{
	margin-right:0;
	display:block;
}


/*page top
----------------------------------------------------*/
#page-top{
	position:relative;
	bottom: auto;
	right: auto;
	margin-bottom:0;
	text-align:center;
}

#page-top a:hover{
	opacity:0.70;
	filter: alpha(opacity=70);
}


/*footer
----------------------------------------------------*/
footer{
	padding:50px 0 20px 0;
	font-size:12px;
	text-align:center;
}

footer .ttl_logo{
	margin-bottom:40px;
}

}