@charset "utf-8";
/* CSS Document */

* {
	box-sizing: border-box;
}

body {
	overflow:hidden;
	font-size: 14px;
	line-height: 1.6;
	color: #080808;
	-webkit-text-size-adjust: 100%;
	background:#fafafa;
}

#container {
	position:relative;
	padding:54px 0 0 0;
	width:100%;
	height:100%;
}

#disable-layer {
	display:none;
	position:fixed;
	left:0;
	top:0;;
	z-index:997;
	background:rgba(240, 240, 240, .9);
	width:100%;
	height:100%;
}


/* ヘッダー部分 */

header {
	position:fixed;
	top: 0;
	left:0;
	z-index:996;
	padding:0;
	display:block;
	background:#ffffff;
	width:100%;
	height:54px;
}

header > .inner {
	position:relative;
	width:100%;/* 300/320=93.75% */
	padding:12px 0 0 5%;
	margin:0;
	text-align:center;
}

#naviMark {
	position:absolute;
	top:8px;
	right:24px;
	z-index:997;
	width:36px;
	height:36px;
}

.menu-trigger {
	position: relative;
	display:block;
	float:left;
	width: 36px;
	height: 22px;
	padding:0 3px;
	margin:8px 0 0 0;
	cursor:pointer;
}

.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}

.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #000000;
}

.menu-trigger span:nth-of-type(1) {
	top: 0;
}

.menu-trigger span:nth-of-type(2) {
	top: 10px;
}

.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}

.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
}

.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}

.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
}


#navi {
	position:fixed;
	top:0;
	right:0;
	z-index:990;
	padding:72px 0 0 0;
  background: rgba(255, 255, 255, 1);
	width: 100%;
	height: 100%;
	opacity: 0;
	visibility: hidden;
	transition: .5s linear;
	text-align:center;
}

#navi.active {
	opacity: 1;
	visibility: visible;
}

#navi .inner {
	padding:0 0 0 0;
	margin:0;
}

header h1 {
	display:inline-block;
	padding:0;
	margin:0;
	color:#000000;
	font-size:18px;
	font-family: 'Muli', sans-serif;
	font-weight:bold;
}

header h1 a {
	display:block;
	padding:27px 0 0 0;
	margin:0;
	overflow:hidden;
	background:url(../img/logo.png) no-repeat top center;
	background-size:78px 27px;
	width:78px;
	height:0px;
}


#navi ul:before {
	content:"";
	display:block;
	margin:0 auto 24px auto;
}

#navi ul.site-link {
	padding:0;
	margin:0 0 12px 0;
}

#navi ul.site-link li {
	padding:0;
	margin:0 auto;
	display:block;
	box-sizing:border-box;
	width:180px;
	text-align:center;
}

#navi ul.site-link li.active {
    -webkit-animation: MenuUp .5s 1;
	animation: MenuUp .5s 1;
}

#navi ul.site-link li span {
	display:inline-block;
	padding:0 0 0 42px;
	margin:0 0 6px 0;
	width:8em;
    line-height:1.5em;
	text-align:left;
	font-size:24px;
	font-family: 'Muli', sans-serif;
}

#navi ul.site-link li a {
	display:block;
	padding:0;
	color:#111111;
	letter-spacing:.2em;
	text-indent:.2em;
}

#navi ul.site-link > li:nth-child(1) span {
	background:url(../img/home_icon.png) no-repeat 5% 45%;
	background-size:24px 24px;
}

#navi ul.site-link > li:nth-child(2) span {
	background:url(../img/menu_icon.png) no-repeat 5% 45%;
	background-size:24px 24px;
}

#navi ul.site-link > li:nth-child(3) span {
	background:url(../img/system_icon.png) no-repeat 5% 45%;
	background-size:24px 24px;
}

#navi ul.site-link > li:nth-child(4) span {
	background:url(../img/infomation_icon.png) no-repeat 5% 50%;
	background-size:24px 24px;
}

#navi ul.site-link > li:nth-child(5) span {
	background:url(../img/contact_icon.png) no-repeat 5% 50%;
	background-size:24px 24px;
}

.socialmedia ul {
	padding:0;
	margin:0;
	text-align:left;
}

.socialmedia ul li {
	display:inline-block;
	padding:0;
	margin:12px 0;
	width:36px;
	height:36px;
	border:none;
	border-radius:6px;
	overflow:hidden;
}

.socialmedia ul li a {
	display:block;
	padding:36px 0 0 0;
	width:36px;
	height:0px;
	overflow:hidden;
}

.socialmedia ul li.facebook a {
	background:url(../img/facebook_icon.png) no-repeat center top;
	background-size:cover;
}

.socialmedia ul li.twitter a {
	background:url(../img/twitter_icon.png) no-repeat center top;
	background-size:cover;
}

@keyframes MenuUp {
0% {
    opacity: 1;/* 透明 */
    transform: translateY(20px);
}
100% {
    opacity: 1;/* 不透明 */
    transform: translateY(0);
}
}

.reserve-field {
	padding:0;
	margin:0;
	text-align:center;
}

.reserve-field p {
	display:block;
	padding:0;
	margin:0 auto;
	border:solid 3px #000000;
	width:50%;
}

.reserve-field p a {
	position:relative;
	display:block;
	color:#000000;
	font-weight:bold;
}

.reserve-field p span {
	font-size:16px;
	line-height:42px;
}

.reserve-field p span:before {
	content:"";
	display:inline-block;
	padding:0;
	margin:0 6px 0 0;
	background:url(../img/tel-icon.png) no-repeat left 50%;
	background-size:16px 16px;
	width:16px;
	height:16px;
}

@keyframes hover {
  0%, 100% {
    color: #333;
  }
  50% {
    color: #fff;
  }
}
@keyframes hover-in {
  0% {
    transform-origin: left top;
    transform: scale(1, 0);
  }
  100% {
    transform-origin: left top;
    transform: scale(1, 1);
  }
}
@keyframes hover-out {
  0% {
    transform-origin: left bottom;
    transform: scale(1, 1);
  }
  100% {
    transform-origin: left bottom;
    transform: scale(1, 0);
  }
}



/* フッター部分 */

footer * a {
	text-decoration: none;
	color:#000000;
}

footer a:focus {
	outline: none;
}

footer {
	position:relative;
	background:#ffffff;
	padding:36px 0 48px 0;
	margin:0;
	color:#000000;
	text-align:center;
}

footer .inner {
	position:relative;
	padding:6px 0 0 0;
	margin:0 auto;
	width:90%;
	text-align:center;
}

footer .inner h1 {
	padding:0;
	margin:0 auto 24px auto;
	font-size:16px;
}

footer .infomation {
	width:70%;
	padding:18px 0 0 0;
	margin:0 auto;
	font-size:12px;
	font-weight:bold;
}

footer .infomation p span {
	display:inline-block;
}

footer .siteLink {
	width:90%;
	padding:0;
	margin:0 auto;
	font-size:12px;
	font-weight:bold;
}

footer .siteLink ul {
	padding:0;
	margin:0 auto;
	border-bottom:solid 1px #000000;
}

footer .siteLink ul li {
	display:block;
	float:left;
	padding:.75em 0;
	margin:0;
	border-top:solid 1px #000000;
	width:50%;
	text-align:center;
}

footer .siteLink ul li:nth-child(odd) {
	border-right:solid 1px #000000;
}

footer .siteLink ul li a {
	display:block;
	padding:0;
	margin:0;
	color:#000000;
}

footer p.copyright {
	padding:24px 0 0 0;
	margin:0 auto;
	border-top:3px solid #000000;
	width:80%;
	text-align:center;
	font-size:10px;
	font-weight:bold;
}

#back-top {
    position: fixed;
    bottom:140px;
	right:18px;
	width:48px;
    z-index: 998;
}

#back-top:before {
	position:absolute;
	display:inline-block;
	content:"# PAGE TOP";
	top:50px;
	right:-18px;
	transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
	font-size:9px;
	font-family: JosefinSans;
}

#back-top a {
	padding-top: 60px;
}

#back-top a span {
	position: absolute;
	top: 0;
	left: 50%;
	width: 30px;
	height: 80px;
	margin-left: 0px;
}


/*----------------------------------------------------------------------------
 ***                                                                width480
----------------------------------------------------------------------------*/

@media only screen and (min-width: 480px){
}

/*----------------------------------------------------------------------------
 ***                                                                width768
----------------------------------------------------------------------------*/

@media only screen and (min-width: 768px){

/* ヘッダー部分 */

header {
	position:fixed;
	top:0;
	left:0;
	z-index:996;
	padding:0;
	margin:0;
	display:block;
	width:100%;
	height:auto;
}

header > .inner {
	padding:24px 0 12px 0;
	margin:0 auto;
	width:90%;/* 300/320=93.75% */
	text-align:left;
}

header h1 {
	display:inline-block;
	padding:0;
	margin:0 36px 0 0;
	font-size:18px;
	visibility:visible;
}


#naviMark {
	display:none;
}

#navi {
	position:absolute;
	top:0px;
	right:5%;
	display: inline-block;
	padding: 0;
	width: auto;
	height: auto;
	opacity: 1;
	visibility:visible;
}

#navi ul.site-link {
	padding:0 0 0 18px;
	margin:0;
}

#navi ul.site-link li {
	display:block;
	float: left;
	width:auto;
	margin: 0 9px;
}

#navi ul.site-link li span {
	display:block;
	padding:0;
	font-size:18px;
	width:auto;
}

#navi ul.site-link li a {
	color:#000000;
	letter-spacing:.1em;
	text-indent:0;
}

#navi ul.site-link > li:nth-child(1) span {
	background:none;
}

#navi ul.site-link > li:nth-child(2) span {
	background:none;
}

#navi ul.site-link > li:nth-child(3) span {
	background:none;
}

#navi ul.site-link > li:nth-child(4) span {
	background:none;

}

#navi ul.site-link > li:nth-child(5) span {
	background:none;
}

#navi ul.site-link > li:nth-child(6) span {
	background:none;
}

.socialmedia {
	display: none;
}

.socialmedia ul {
	padding:0 0 0 18px;
}

.socialmedia ul li {
	padding:0;
	margin:12px 0;
}


#container {
	position:relative;
	padding:0;
	margin:0;
	width:100%;
	height:100%;
}

footer {
	padding:96px 0 24px 0;
}

footer .inner {
	width:100%;
}

footer .infomation p span {
	padding:0 1em;
}

footer .linkBox {
	padding:36px 0 0 0;
	margin:0 auto;
	width:90%;
	max-width:1024px;
}

footer .linkBox dl.linkList {
	padding:0;
	margin:0 auto 0 0;
	width:auto;
	max-width:1024px;
}

footer .linkBox dl.linkList dt {
	border-bottom:solid 1px #272727;
	background:none;
}

footer .linkBox dl.linkList dd {
	display:block;
	padding:0;
	margin:0;
	background:none;
}

footer .linkBox dl.linkList ul li {
	display:block;
	float:left;
	padding:.75em 0;
	margin:0;
	width:25%;
	border-top:none;
	color:#808080;
}

footer .socialLink{
	padding:12px 0;
	margin:0 auto;
	max-width:1024px;
}

footer .siteLink {
	padding:0;
	margin:0 auto;
	max-width:1024px;
}

footer .siteLink ul {
	padding:0 0 0 0;
	border-bottom:none;
	text-align:center;
}

footer .siteLink ul li {
	display:inline-block;
	float:none;
	padding:0 1em;
	margin:0;
	border-top:none;
	border-right:solid 1px #272727;
	width:auto;
	text-align:center;
}

footer .siteLink ul li:nth-child(odd) {
	border-right:solid 1px #272727;
}

footer .siteLink ul li:last-child {
	border-right:none;
}

footer p.copyright {
	width:90%;
}

}



/*----------------------------------------------------------------------------
 ***                                                                width1024
----------------------------------------------------------------------------*/

@media only screen and (min-width: 1024px){

#navi ul.site-link li span {
	padding:0 0 0 42px;
}

#navi ul.site-link > li:nth-child(1) span {
	background:url(../img/home_icon.png) no-repeat 5% 45%;
	background-size:24px 24px;
}

#navi ul.site-link > li:nth-child(2) span {
	background:url(../img/menu_icon.png) no-repeat 5% 45%;
	background-size:24px 24px;
}

#navi ul.site-link > li:nth-child(3) span {
	background:url(../img/system_icon.png) no-repeat 5% 45%;
	background-size:24px 24px;
}

#navi ul.site-link > li:nth-child(4) span {
	background:url(../img/infomation_icon.png) no-repeat 5% 50%;
	background-size:24px 24px;
}

#navi ul.site-link > li:nth-child(5) span {
	background:url(../img/contact_icon.png) no-repeat 5% 50%;
	background-size:24px 24px;
}

}


@media only screen and (min-width: 1280px){



}

@media only screen and (min-width: 1920px){


}
