@charset "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,600&display=swap');
@import url('https://fonts.googleapis.com/css?family=Zilla+Slab:100,200,300,400&display=swap');


body {
	font-family: 'Noto Sans JP';
	font-weight: 300;
	background: #fff;
	color: #000;
	letter-spacing: 1px;
	line-height: 1.8;
	font-size: 14px;
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	-webkit-text-size-adjust: none;
	-webkit-overflow-scrolling: touch;
}

/* position:fixed IE6 */
* html body {     
    background: url(null) fixed;
} 

img {
	width: 100%;
	height: auto;
	line-height: 1;
	vertical-align: bottom;
}

ul {
	list-style: none;
}

a,
a:link,
a:hover,
a:active {
	text-decoration: none;
	color: #000;
}

.flex-wrapper {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}


/*--------------------------------------------------------------
#wrapper
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	#wrapper {
		margin: 110px 0 0 0;
		padding: 0;
		overflow: hidden;
	}
	
}

/* Small than tablet */
@media (min-width: 768px) {
	
	#wrapper {
		margin: 150px 0 0 0;
	}
}

/* Larger than tablet */
@media (min-width: 992px) {
	
	#wrapper {
		margin: 110px 0 0 0;
	}

}

/*--------------------------------------------------------------
.sp-visible
.pc-visible
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	.sp-visible {
		display: block;
	}
	
	.pc-visible {
		display: none;
	}
}

/* Small than tablet */
@media (min-width: 768px) {
	
	.sp-visible {
		display: none;
	}
	
	.pc-visible {
		display: block;
	}
}

/* Larger than tablet */
@media (min-width: 992px) {
	

}


/*--------------------------------------------------------------
#header
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	#header {
		width: 100%;
		height: 80px;
		margin: 0;
		padding: 0;
		position: fixed;
		top:0;
		left:0;
		z-index: 9999;
		overflow: hidden;
	}
	
	#header h1 {
		margin: 0;
		padding: 0;
		position: absolute;
		top: 50%;
		left: 20px;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	
	#header h1 a {
		width: 200px;
		height: 23px;
		margin: 0;
		padding: 0;
		display: block;
		text-indent: -9999px;
		background: url("../images/header-logo-m.svg") no-repeat top left;
		-webkit-background-size: 200px auto;
		background-size: 200px auto;
	}
	
	#header nav {
		margin: 0;
		padding: 7px 7px 5px 7px;
		position: absolute;
		top: 50%;
		right: 10px;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		color: #000;
		font-size: 10px;
		text-align: center;
		font-family: 'Zilla slab';
		letter-spacing: 1.5px;
	}
	
	#header nav p {
		margin: -5px 0 0 0;
		padding: 0;
	}
}

/* Small than tablet */
@media (min-width: 768px) {
	
	#header {
		height: 110px;
	}
	
	#header h1 {
		left: 30px;
	}
	
	#header h1 a {
		width: 250px;
		height: 30px;
		-webkit-background-size: 250px auto;
		background-size: 250px auto;
	}
	
	
	
	#header nav {
		padding: 7px 7px 5px 7px;
		right: 20px;
		font-size: 10px;
	}
	
}

/* Larger than tablet */
@media (min-width: 992px) {
	
	#header h1 {
		left: 50px;
	}
	
	#header h1 a {
		width: 285px;
		height: 42px;
		background: url("../images/header-logo.svg") no-repeat top left;
		-webkit-background-size: 285px auto;
		background-size: 285px auto;
	}
	
	
	
	#header nav {
		padding: 10px 10px 5px 10px;
		right: 30px;
		font-size: 12px;
	}
}

/*--------------------------------------------------------------
.menu-trigger
--------------------------------------------------------------*/

.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	margin: 0;
	padding: 0;
	position: relative;
	width: 35px;
	height: 30px;
}
.menu-trigger span {
	position: absolute;
	left: 45%;
	width: 5px;
	height: 5px;
	background-color: #000;
	border-radius: 50%;
}
.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: 5px;
}

.menu-trigger.active span:nth-of-type(1) {
	left: 0;
	width: 100%;
	height: 2px;
	-webkit-transform: translateY(13px) rotate(-45deg);
	transform: translateY(13px) rotate(-45deg);
	border-radius: 0;
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	left: 0;
	width: 100%;
	height: 2px;
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
	border-radius: 0;
}


/*--------------------------------------------------------------
.panel
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	.panel {
		background: rgba(255,255,255,1);
		z-index: 9998;
		position: fixed;
		overflow: auto;
	}
	
	.panel-inner {
		margin: 110px 20px 50px 20px;
		padding: 0;
	}
	
	.panel dl.slide-menu {
		margin: 0;
		padding: 0;
	}
	
	.panel dl.slide-menu dt {
		margin: 0;
		padding: 0;
		font-family: 'Zilla slab';
		font-size: 17px;
	}
	
	.panel dl.slide-menu dt a {
		margin: 0;
		padding: 5px 10px;
		display: inline-block;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all  0.3s ease;
	}
	
	.panel dl.slide-menu dt a:hover {
		opacity: 0.5 ;
	}
	
	.panel dd.dropdown {
		display: none;
	}
	
	.overbtn {
		margin: 0;
		padding: 0;
	}
	
	.overbtn i {
		margin: 0 0 0 10px;
		padding: 0;
		font-style: normal;
	}
	
	.overbtn i.up {
		display: none;
	}
	
	.overbtn.active {
	}
	
	.overbtn.active i.down {
		display: none;
	}
	
	.overbtn.active i.up {
		display: inherit;
	}
	
	.panel ul {
		margin: 0 0 20px 30px;
		padding: 0;
		display:-webkit-box;
		display:-moz-box;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:-moz-flex;
		display:flex;
		-webkit-box-lines:multiple;
		-moz-box-lines:multiple;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		list-style-type: none;
	}
	
	.panel li {
		margin: 0;
		padding: 0;
		width: 100%;
	}
	
	.panel li a {
		margin: 0;
		padding: 0;
		display: block;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all  0.3s ease;
	}
	
	.panel li a:hover {
		opacity: 0.5 ;
	}
	
	.toggle-innner-menu dl {
		margin: 0;
		padding: 10px 0;
	}
	
	.toggle-innner-menu dt {
		margin: 0;
		padding: 0;
		width: 40px;
		float: left;
	}
	
	.toggle-innner-menu dt img {
		border-radius: 50%;
	}
	
	.toggle-innner-menu dd {
		margin: 0 0 0 50px;
		padding: 0.5em 0 0 0;
		font-size: 13px;
	}
}

/* Small than tablet */
@media (min-width: 768px) {
	
	.panel-inner {
		margin: 0;
		padding: 0;
		width: 90%;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	
	.panel li {
		margin: 0;
		padding: 0 50px 0 0;
		width: auto;
	}
	
}

/* Larger than tablet */
@media (min-width: 992px) {
	
	.panel-inner {
		width: 70%;
	}
}

/*--------------------------------------------------------------
.main-menu
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	.menu-area {
		display: none;
	}


}

/* Small than tablet */
@media (min-width: 768px) {
	

	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	.menu-area {
		font-family: 'Zilla slab', sans-serif;
		display: block;
		margin: 0;
		padding: 0;
		position: relative;
	}
	
	.main-menu {
		display: flex;
		width: 600px;
		height: auto;
		margin: 0 auto 50px auto;
		padding: 0;
		justify-content: space-between;
	}
	
	.on {
		position: relative;
	}
	
	.main-menu > li:hover {
		color: #777;
	}
	
	.main-menu > li:hover > a {
		color: #777;
	}
	
	.main-menu > li:hover .drop-menu {
		max-height: 1000px;
		opacity: 1;
	}
	
	.main-menu > li > a {
		display: block;
		margin: 0;
		padding: 20px 0;
		transition: all .2s ease-in;
		font-size: 14px;
		text-align: center;
	}
	
	.main-menu > li .drop-menu {
		transition: all .3s ease-in;
		margin: 0;
		padding: 0;
		box-sizing: border-box;
		max-height: 0;
		opacity: 0;
		overflow: hidden;
		width: 100%;
		height: auto;
		text-align: center;
		position: absolute;
		left: 0;
		background-color: rgba(248,248,248,0.95);
		font-size: 14px;
		z-index: 5000;
	}
	
	
	
	.main-menu > li .drop-menu .inner-menu {
		overflow: hidden;
		margin: 0 auto;
		padding: 20px 0 0 0;
		width: 750px;
		height: auto;
	}
	
	.main-menu > li .drop-menu .inner-menu > li {
		color: #000;
		display: inline-block;
		margin: 0;
		padding: 0;
	}
	
	.main-menu > li .drop-menu .inner-menu > li a {
		transform: .3s;
	}
	
	.main-menu > li .drop-menu .inner-menu > li a:hover {
		opacity: 0.4;
	}
	
	.inner-menu li dl {
		margin: 0 65px 0 0;
		padding: 0;
		position: relative;
		transition: 0.5s;
	}
	
	.inner-menu li dl:hover {
		opacity: 0.7;
	}
	
	.inner-menu li dl.no-margin {
		margin: 0;
	}
	
	.inner-menu li dl dt {
		margin: 0 10px 0 0;
		padding: 0;
		width: 40px;
		height: 40px;
		float: left;
	}
	
	.inner-menu li dl dt img {
		width: 100%;
		height: auto;
		object-fit: cover;
		line-height: 1;
		vertical-align: middle;
		border-radius: 50%;
	} 
	
	.inner-menu li dl dd {
		margin: 0;
		padding: 0.5em 0 0 0;
		box-sizing: border-box;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 13px;
		font-weight: 300;
		overflow: hidden;
	} 


}


/*--------------------------------------------------------------
.top-section-title
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	h2.top-section-title {
		font-family: 'Zilla Slab', serif;
		font-size: 25px;
		text-align: center;
		letter-spacing: 2px;
		margin: 0;
		padding: 0;
		box-sizing: border-box;
		font-weight: normal;
	}
	
	h2.top-section-title p.sub-title{
		font-family: 'Noto Sans JP Regular' , sans-serif;
		font-size: 11px;
		font-weight: normal;
		text-align: center;
		letter-spacing: 2px;
		margin: 5px 0 50px 0;
		padding: 0;
		box-sizing: border-box;
	}
	
	h2.section-title {
		font-family: 'Noto Sans JP Regular' , sans-serif;
		font-size: 20px;
		text-align: center;
		letter-spacing: 2px;
		margin-bottom: 58px;
		padding: 0;
		box-sizing: border-box;
	}
}

/* Small than tablet */
@media (min-width: 768px) {
	
}

/* Larger than tablet */
@media (min-width: 992px) {

	h2.top-section-title {
		font-size: 25px;
		margin: 0;
		padding: 0;
	}
	
	h2.top-section-title p.sub-title{
		font-size: 11px;
		margin: 5px 0 50px 0;
	}
	
}


/*--------------------------------------------------------------
#footer
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	#footer {
		width: 100%;
		height: auto;
		margin: 0;
		padding: 0;
	}
	
	.footer-title {
		font-family: 'Zilla Slab', serif;
		font-size: 23px;
		text-align: center;
		letter-spacing: 2px;
		margin: 0;
		padding: 50px 0 30px 0;
		box-sizing: border-box;
	}
	
	.gallery-menu-area {
		margin: 0 auto;
		padding: 0;
		box-sizing: border-box;
		width: 100%;
		height: auto;
	}
	
	.gallery-menu {
		flex-flow: row wrap;
		justify-content: flex-start;
		transform: translateX(0);
		margin: 0;
		padding: 0 20px;
	}
	
	.gallery-menu li {
		margin: 0 0 5px 0;
		padding: 0;
		width: 100%;
		height: 200px;
		overflow: hidden;
	}
	
	.photo-category {
		font-size: 20px;
		letter-spacing: 1px;
		color: #fff;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		z-index: 100;
		text-align: center;
		display: block;
		font-weight: 300;
		margin: 0;
		padding: 0;
		font-family: 'Zilla slab';
	}
	
	.photo-category span {
		display: block;
		font-family: 'Noto sans JP' , sans-serif;
		font-size: 13px;
		font-weight: 300;
	}
	
	.menu-inner {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%)translateX(-50%);
	}


}

/* Small than tablet */
@media (min-width: 768px) {
	
	.footer-title {
		font-size: 25px;
		margin: 0;
		padding: 50px 0 30px 0;
	}
	
	.gallery-menu-area {
		margin: 0;
		padding: 0;
		box-sizing: border-box;
		width: 100%;
		height: auto;
	}
	
	.gallery-menu {
		flex-flow: row wrap;
		justify-content: flex-start;
		transform: translateX(0);
		margin: 0;
		padding: 0 2vw;
	}
	
	.gallery-menu li {
		margin: 0 2vw 2vw 0;
		padding: 0;
		width: 47vw;
		height: 230px;
		box-sizing: border-box;
		overflow: hidden;
	}
	
	.gallery-menu li:nth-child(even) {
		margin-right: 0;
	}
	
	.photo-category {
		font-size: 25px;
		letter-spacing: 1px;
		color: #fff;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		z-index: 100;
		text-align: center;
		display: block;
		font-weight: 300;
		margin: 0;
		padding: 0;
		font-family: 'Zilla slab';
	}
	
	.photo-category span {
		display: block;
		font-family: 'Noto sans JP' , sans-serif;
		font-size: 15px;
		font-weight: 300;
	}
	
	.menu-inner {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%)translateX(-50%);
	}


	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	.gallery-menu-area {
		margin: 0 auto;
		padding: 0;
		box-sizing: border-box;
		width: 1030px;
		height: auto;
	}
	
	.gallery-menu {
		flex-flow: row wrap;
		justify-content: flex-start;
		transform: translateX(15px);
		margin: 0;
		padding: 0;
	}
	
	.gallery-menu li {
		margin: 0 15px 15px 0;
		padding: 0;
		width: 500px;
		height: 285px;
		overflow: hidden;
	}
	
	.gallery-menu li figure {
		display: block;
		width: 100%;
		height: 100%;
		letter-spacing: 2px;
		color: #fff;
		font-size: 25px;
		font-weight: 300;
		text-align: center;
		margin: 0;
		padding: 0;
		position: relative;
	}
	
	.gallery-menu li figure span {
		display: block;
		font-family: 'Noto sans JP' , sans-serif;
		font-size: 15px;
		font-weight: 300;
	}
	
	.menu-inner {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%)translateX(-50%);
	}



}


/*--------------------------------------------------------------
contact-btn-area
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	.contact-btn-area {
		text-align: center;
		padding: 0 20px 50px 20px;
	}
	
	.contact-btn-area p {
		font-size: 13px;
	}
	
	.contact-btn-area p br {
		display: inherit;
	}
	
	.contact-btn {
		width: 70vw;
		height: auto;
		border: 1px solid #000;
		position: relative;
		margin: 30px auto;
		padding: 0;
	}
	
	.contact-btn > a {
		display: block;
		widows: 100%;
		height: 100%;
		font-size: 13px;
		margin: 0;
		padding: 10px 0;
		box-sizing: border-box;
		transition: 0.4s;
	}
	
	.contact-btn > a:hover {
		background: #000;
		color: #fff;
	}

	.contact-btn > img {
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%)translateX(50%);
		width: 46px;
		height: auto;
	}
}

/* Small than tablet */
@media (min-width: 768px) {
	
	.contact-btn-area p br {
		display: none;
	}
	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	.contact-btn-area {
		padding: 0 0 70px 0;
	}
	
	.contact-btn {
		width: 500px;
		height: auto;
		position: relative;
		margin: 30px auto;
		padding: 0;
	}
	.contact-btn > a {
		display: block;
		widows: 100%;
		height: 100%;
		font-size: 15px;
		margin: 0;
		padding: 20px 0;
		box-sizing: border-box;
	}
	
	.contact-btn > img {
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%)translateX(50%);
		width: 46px;
		height: auto;
	}




}

/*--------------------------------------------------------------
.footer-content
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	.footer-content {
		color: #fff;
		background: url("../images/footer_bg_mask.jpg") no-repeat center;
		background-size: cover;
		margin: 0;
		padding: 100px 0 50px 0;
		text-align: center;
		position: relative;
		box-sizing: border-box;
		width: 100%;
		height: auto;
		overflow: hidden;
	}
	
	#page-top {
		background: #313131;
		width: 100%;
		height: 45px;
		position: absolute;
		top: 0;
		left: 0;
		transition: .3s;
	}
	
	#page-top:hover {
		background:#696969;
	}
	
	.page_top_inner {
		width: 100%;
		height: 100%;
		position: relative
	}
	
	.page_top_inner > img {
		width: 22px;
		height: auto;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateX(-50%)translateY(-50%);
	}
	
	.footer-logo-area {
		width: 170px;
		margin: 0 auto 50px auto;
		padding: 0;
	}
	
	.info-area {
		margin: 0 0 30px 0;
		padding: 0;
		font-family: 'Noto Sans JP' , sans-serif;
		line-height: 1.8;
	}
	
	.tel {
		font-size: 20px;
		font-weight: 400;
		line-height: 1;
		margin: 0 0 30px 0;
		padding: 0;
		letter-spacing: 3px;
	}
	
	.tel a:link {
		color: #FFF;
		text-decoration: none;
	}
	
	.tel a:visited {
		color: #FFF;
		text-decoration: none;
	}
	
	.tel a:hover, .tel a:active, .tel a:focus {
		color: #FFF;
		text-decoration: none;
	}
	
	.tel span {
		display: block;
		font-size: 12px;
		font-weight: 300;
		position: relative;
		margin: 0 auto 15px auto;
		padding: 0;
		text-align: center;
		width: 130px;
		height: auto;
	}
	
	.tel span::before {
		display: block;
		content: "";
		background: #fff;
		width: 53px;
		height: 1px;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateX(-100%);
	}
	
	.tel span::after {
		display: block;
		content: "";
		background: #fff;
		width: 53px;
		height: 1px;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateX(100%);
	}
	
	.other {
		font-size: 13px;
	}
	
	.foot-nav-area {
		display: none;
	}
	
	.copyright {
		font-family: 'Zilla slab';
		font-size: 10px;
	}
	
	.copyright span {
		display: none;
	}

}

/* Small than tablet */
@media (min-width: 768px) {
	
	.footer-content {
		background: url("../images/footer_bg_mask.jpg") no-repeat center;
		background-size: cover;
		margin: 0;
	}
	
	.footer-logo-area {
		width: 240px;
		margin: 0 auto 50px auto;
		padding: 0;
	}
	
	.page_top {
		background: #313131;
		width: 100%;
		height: 45px;
		position: absolute;
		top: 0;
		left: 0;
	}
	
	.page_top_inner {
		width: 100%;
		height: 100%;
		position: relative
	}
	
	.page_top_inner > img {
		width: 22px;
		height: auto;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateX(-50%)translateY(-50%);
	}
	
	.info-area {
		margin: 0;
		padding: 0;
		font-family: 'Noto Sans JP' , sans-serif;
		line-height: 1.8;
	}
	
	.tel {
		font-size: 25px;
		line-height: 1;
		margin: 0 0 30px 0;
		padding: 0;
		letter-spacing: 3px;
	}
	
	.tel span {
		display: block;
		font-size: 14px;
		font-weight: 300;
		position: relative;
		margin: 0 auto 15px auto;
		padding: 0;
		text-align: center;
		width: 150px;
		height: auto;
	}
	
	.tel span::before {
		display: block;
		content: "";
		background: #fff;
		width: 53px;
		height: 1px;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateX(-100%);
	}
	
	.tel span::after {
		display: block;
		content: "";
		background: #fff;
		width: 53px;
		height: 1px;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateX(100%);
	}
	
	.foot-nav-area {
		font-family: 'Zilla slab', sans-serif;
		display: inherit;
		margin: 0;
		padding: 0;
	}
	
	.foot-nav-area {
		margin: 0;
		padding: 0;
	}
	
	.foot-nav {
		width: 634px;
		height: auto;
		margin: 0 auto;
		padding: 105px 0 35px 0;
		justify-content: space-between;
	}
	
	.foot-nav > li:hover {
		color: #777;
	}
	
	.foot-nav > li:hover > a {
		color: #777;
	}

	.foot-nav > li > a {
		color: #fff;
		display: block;
		margin: 0;
		padding: 0;
		transition: all .2s ease-in;
		font-size: 15px;
		text-align: center;
	}

	
	.copyright {
		font-size: 10px;
	}

	.copyright span {
		margin-right: 5px;
		display: inline;
	}

	
}


/* Larger than tablet */
@media (min-width: 992px) {
	
	.footer-content {
		color: #fff;
		background: url("../images/footer_bg_mask.jpg") no-repeat center;
		background-size: cover;
		margin: 0;
		padding: 150px 0 50px 0;
		text-align: center;
		position: relative;
	}
	
	.page_top {
		background: #313131;
		width: 100%;
		height: 45px;
		position: absolute;
		top: 0;
		left: 0;
	}
	
	.page_top_inner {
		width: 100%;
		height: 100%;
		position: relative
	}
	
	.page_top_inner > img {
		width: 22px;
		height: auto;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateX(-50%)translateY(-50%);
	}
	
	.info-area {
		margin: 0;
		padding: 0;
		line-height: 1.8;
	}
	
	.tel {
		font-size: 25px;
		line-height: 1;
		margin: 0 0 30px 0;
		padding: 0;
		letter-spacing: 3px;
	}
	
	.tel span {
		display: block;
		font-size: 14px;
		font-weight: 300;
		position: relative;
		margin: 0 auto 15px auto;
		padding: 0;
		text-align: center;
		width: 150px;
		height: auto;
	}
	
	.tel span::before {
		display: block;
		content: "";
		background: #fff;
		width: 53px;
		height: 1px;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateX(-100%);
	}
	
	.tel span::after {
		display: block;
		content: "";
		background: #fff;
		width: 53px;
		height: 1px;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateX(100%);
	}
	
	
	.copyright {
		font-size: 10px;
	}


}



/*--------------------------------------------------------------
#to_contact
--------------------------------------------------------------*/

/* mobile */
@media (min-width: 300px) {
	
	#to_contact {
		display: flex;
		position: fixed;
		right: 2%;
		bottom: 2%;
		margin: 0;
		padding: 0;
		font-size: 27px;
		justify-content: center;
		align-items: center;
		z-index: 9999;
	}
	
	.contact-label {
		display: block;
		margin: 0;
		padding: 0;
		background: rgba(0,0,0,1);
		width: 60px;
		height: 60px;
		border-radius: 50%;
		box-shadow: 0px 3px 5px rgba(0,0,0,0.2);
		position: relative;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all  0.3s ease;
	}
	
	.contact-label:hover {
		background: rgba(36,36,36,1.00);
	}
	
	.contact-label dl {
		margin: 0;
		padding: 0;
		text-align: center;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		width: 100%;
	}
	
	.contact-label dl dt {
		margin: 0 auto;
		padding: 0;
		width: 20px;
		height: auto;
		line-height: 0;
	}
	
	.contact-label dl dd {
		display: none;
	}

	#to_contact a:link {
		color: #FFF;
		text-decoration: none;
	}
	
	#to_contact a:visited {
		color: #FFF;
		text-decoration: none;
	}
	
	#to_contact a:hover, #to_contact a:active, #to_contact a:focus {
		color: #FFF;
		text-decoration: none;
	}

}

/* Small than tablet */
@media (min-width: 768px) {
	
	.contact-label {
		width: 135px;
		height: 135px;
	}
	
	.contact-label dl dt {
		margin: 0 auto 8px auto;
		padding: 0;
		width: 25px;
		height: auto;
	}
	
	.contact-label dl dd {
		display: inherit;
		margin: 0;
		padding: 0;
		font-size: 11px;
		font-weight: 300;
	}
	
}


/* Larger than tablet */
@media (min-width: 992px) {
	


}


/*--------------------------------------------------------------
.loading
--------------------------------------------------------------*/

#loading-wrap {
   background: rgba(47,47,47,1.00);
   width: 100%;
   height: 100%;
   position: fixed;
   top: 0;
   left: 0;
   text-align: center;
   display: table;
   z-index: 9999;
}

#loading-item {
	margin: 0;
	padding: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
	width: 100%;
}

#loading-item dl {
	margin: 0;
	padding: 0;
}


#loading-item dt {
	width: 180px;
	margin: 0 auto 20px auto;
	padding: 0;
}
	
#loading-item dd {
	margin: 0;
	padding: 0;
}


.loader {
	position: relative;
	display: inline-block;
	margin: 0;
	width: 20px;
	height: 20px;
	border: 1px solid #FFF;
	border-radius: 50%;
	animation: spin 0.75s infinite linear;
}

.loader::before,
.loader::after {
	left: -1px;
	top: -1px;
	display: none;
	position: absolute;
	content: '';
	width: inherit;
	height: inherit;
	border: inherit;
	border-radius: inherit;
}

.loader-style,
.loader-style::before {
	display: inline-block;
	border-color: transparent;
	border-top-color: #FFF;
}

.loader-style::before {
	animation: spin 1.5s infinite ease;
}


@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
}
}

