@charset "UTF-8";

/* reset */
article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}*,body{margin:0;line-height:1}a{text-decoration:none}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{height:auto;border:0;vertical-align:bottom}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}button,input{line-height:normal}button,html input[type="button"],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}ul{list-style:none;margin:0;padding:0}em{font-style:normal}


/**==============================================**/
/*
/*			共通設定
/*
/**==============================================**/

body {
	color: #231815;
	font-family: "Roboto Slab",Garamond,"Times New Roman","游明朝","Yu Mincho","游明朝体","YuMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HiraMinProN-W3","HGS明朝E","ＭＳ Ｐ明朝","MS PMincho",serif;

	/*	font-family: "游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;*/
	background-size: 100% auto;
	background-position: 50% 0;
	background-repeat: repeat-y;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: none;
	opacity: 0;
}
a {
	color: #231815;
	text-decoration: none;
}
.clear {
	clear:both;
	margin: 0px;
}
.cf:before,
.cf:after{
	display: table;
	content: "";
}
.cf:after{
	clear: both;
}
.cf{
	*zoom:1;
}

.hira-goth {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}
.yu-goth {
	font-family: "游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}


header {
	z-index: 302;
}
.h-logo-wrap > a,
.h-logo-wrap > a strong {
	display: block;
}



/* nav-wrap */
header .nav-wrap {
	position: fixed;
	top: 0;
	height: 100%;
	text-align: center;
	background: #fff;
	z-index: 400;
	opacity: 0;
	box-sizing: border-box;
}
.nav-wrap > strong {
	margin: auto;
	width: 140px;
	display: block;
}

/* toggle */
.toggle {
	display: none;
	position: fixed;
	cursor: pointer;
	z-index: 500;
	display: block;
	top: 0;
	right: 0;
	padding: 23px 12px;
}
.toggle .menu-btn {
	width: 43px;
	height: 38px;
	display: block;
	box-sizing: border-box;
	position: relative;
	cursor: pointer;
}
.toggle,
.toggle span {
	display: inline-block;
	transition: all .2s;
}
.toggle span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
	box-shadow: 0 0 5px 2px rgba(0,0,0,.2);
}
.toggle span:nth-of-type(1) {
	top: 0;
}
.toggle span:nth-of-type(2) {
	top: 50%;
	margin-top: -1px;
}
.toggle span:nth-of-type(3) {
	bottom: 0;
}
.toggle.active span {
	background-color: #546e7b;
	box-shadow: none;
}
.toggle.active span:nth-of-type(1),
.toggle.active span:nth-of-type(3) {
/*	width: 10px;*/
}
.toggle.active span:nth-of-type(1) {
	-webkit-transform: translate(0, 18px) rotate(45deg);
	transform: translate(0, 18px) rotate(45deg);
}
.toggle.active span:nth-of-type(2) {
	opacity: 0;
}
.toggle.active span:nth-of-type(3) {
	-webkit-transform: translate(0, -18px) rotate(-45deg);
	transform: translate(0, -18px) rotate(-45deg);
}
.over-wrap {
	position: relative;
	width: 100%;
	height: 100%;
	background: #fff;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
	z-index: 300;
}
.over-wrap {
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	z-index: 300;
}
.overlay {
	content: '';
	visibility: hidden;
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0);
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	z-index: 301;
}



div.over-wrap {
	overflow: hidden;
}

div.content-wrap {
	width: 100%;
	height: auto;
	margin: auto;
}

.inner-wrap {
	margin-right: auto;
	margin-left: auto;
}



/* map */
.map-wrap {
	position: relative;
	animation-delay: .3s;
}
.map-wrap iframe {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 100%;
}



/* footer */
footer {
	position: relative;
	z-index: 2;
}
footer .footer-wrap {
	margin-right: auto;
	margin-left: auto;
}
footer .f-info-wrap img {
	max-width: 100%;
	height: auto;
}
.f-info a,
.f-info img {
	display: block;
}
.f-info .add,
.f-info .add a {
	color: #546e7b;
}
.fb-wrap > div {
	width: 100%;
	height: auto;
}
footer .copy-wrap {
	background: #546e7b;
	text-align: center;
	color: #fff;
}
.copy-wrap p {
	font-family: "游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}



/* page-top */
.page-top {
	position: fixed;
	right: 0;
	z-index: 300;
	overflow: hidden;
	-webkit-box-shadow: 0px 0px 3px 1px rgba(0,0,0,0.1);
	-ms-box-shadow: 0px 0px 3px 1px rgba(0,0,0,0.1);
	box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.1);
	width: 50px;
}
.page-top a {
	opacity: .8;
	text-align: center;
	background: #546e7b;
	width: 100%;
	display: block;
	line-height: 50px;
	color: #fff;
	font-size: 10px;
}



/* bg-link */
.bg-link {
	text-align: center;
}
.bg-link a {
	display: inline-block;
	background: #546e7b;
	color: #fff;
	text-align: center;
	position: relative;
	box-sizing: border-box;
	border: 1px solid #546e7b;
}
.bg-link a span {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	display: inline-block;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.bg-link a span:after {
	content: "";
	display: block;
	width: 28px;
	height: 1px;
	border-bottom: 1px solid #fff;
	position: absolute;
	right: 25px;
	top: 50%;
	transition: 0.5s;
}
.bg-link a span:before {
	content: "";
	display: block;
	width: 14px;
	height: 1px;
	border-bottom: 1px solid #fff;
	position: absolute;
	right: 24px;
	top: 29%;
	transform: rotate(30deg);
	transition: 0.5s;
}



/* guide-banner */
.guide-banner a,
.guide-banner a img {
	display: block;
}
.guide-banner a img {
	display: block;
	width: 100%;
	height: auto;
}



/* contact guide */
.contact-wrap a,
.contact-wrap a img {
	display: block;
}
.contact-wrap a img {
	width: 100%;
	height: auto;
}
.contact-wrap:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 10px 20px 10px rgb(255, 255, 255) inset;
	z-index: 1;
}
.bubble {
	position: relative;
}
.bubble canvas {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.img-wrap.line-link {
	position: relative;
	z-index: 1;
}
.line-link .line {
	display: inline-block;
	color: #fff;
	text-align: center;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	border: 1px solid #fff;
	background: none;
}
.line-link .line span {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	display: inline-block;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.line-link .line span:before {
	content: "";
	display: block;
	width: 14px;
	height: 1px;
	border-bottom: 1px solid #fff;
	position: absolute;
	right: 24px;
	top: 29%;
	transform: rotate(30deg);
	transition: 0.5s;
}
.line-link .line span:after {
	content: "";
	display: block;
	width: 28px;
	height: 1px;
	border-bottom: 1px solid #fff;
	position: absolute;
	right: 25px;
	top: 50%;
	transition: 0.5s;
}



/* gallery-banner */
.gallery-banner {
	position: relative;
	background: url(../img/common/gallery-bg.jpg) 50% 50% / cover no-repeat;
}
.gallery-banner:before {
	content: "";
	display: block;
	padding-top: 50%;
}

.gallery-banner a {
	display: block;
	width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	left: 0;
}
.gallery-banner a strong {
	display: block;
	margin: auto;
	background: rgba(84,110,123,.8);
}
.gallery-banner a strong span {
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	width: 30px;
	height: 30px;
}
.gallery-banner a strong span:before {
	content: "";
	display: block;
	width: 14px;
	height: 1px;
	border-bottom: 1px solid #fff;
	position: absolute;
	right: 0px;
	bottom: 4px;
	transform: rotate(30deg);
	transition: 0.5s;
}
.gallery-banner a strong span:after {
	content: "";
	display: block;
	width: 28px;
	height: 1px;
	border-bottom: 1px solid #fff;
	position: absolute;
	right: 1px;
	bottom: 1px;
	transition: 0.5s;
}



/* sub-page */
.sub-page .main-img-wrap {
	position: relative;
}
.sub-page .main-img-wrap .main-img > img {
	width: 100%;
	margin: auto;
}
.sub-page .main-headd {
	background: rgba(84,110,123,.8);
	position: absolute;
}
.sub-page .main-headd h1 {
}
.sub-page .main-headd h1 img {
	display: block;
	width: 100%;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.sub-page .sec.bg {
	background: #f7f7f7;
}
.sub-page .sec .sec-inner {
	margin-right: auto;
	margin-left: auto;
}
.sub-page .sec .headd-wrap {
	text-align: center;
}
.sub-page .sec .headd-wrap h2 {
	color: #546e7b;
	font-weight: normal;
	position: relative;
	display: inline-block;
}
.sub-page .sec .headd-wrap h2:before {
	content: "";
	display: block;
	width: 80px;
	height: 2px;
	background: #546e7b;
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	margin: auto;
}
.sub-page .sec img.ct {
	display: block;
	max-width: 100%;
	margin-right: auto;
	margin-left: auto;
}



/* .hov */
.hov {
	-webkit-transition-duration: .3s;
	-ms-transition-duration: .3s;
	transition-duration: .3s;
}
.hov:hover {
	opacity: .8;
}



/**==============================================**/
/*
/*			SP
/*
/**==============================================**/

@media screen and (max-width:639px) {

	html {
		font-size: 62.5%;
	}
	.sp,
	.sp.tab {
		display: block !important;
	}
	.tab,
	.pc {
		display: none !important;
	}



	header .h-logo-wrap {
		margin: 3.5% auto 0;
	}
	.h-logo-wrap > a {
		width: 51.9%;
		max-width: 230px;
	}
	.h-logo-wrap > a img {
		display: block;
		width: 100%;
	}
	header .nav-wrap {
/*		padding-top: 56px;*/
	}
	header .nav-wrap > strong {
		margin-bottom: 10%;
	}
	.h-nav li a {
		font-size: 1.8rem;
		line-height: 3em;
	}



	/* footer */
	footer {}
	footer .footer-wrap {
		padding: 8% 0;
	}
	.footer-wrap .f-info-wrap {
		width: 87.5%;
		margin-right: auto;
		margin-left: auto;
		max-width: 500px;
	}
	.f-info a, .f-info img {
		display: inline-block;
	}
	.f-info-wrap .f-info {
		margin-bottom: 66px;
	}
	.f-info-wrap .f-info dl {
		margin-bottom: 5%;
	}
	.f-info dl dt {
		margin-bottom: 3%;
	}
	.f-info dd p {
		font-size: 1.7rem;;
		line-height: 1.68;
	}
	.f-info dd a {
		font-size: 1.9rem;
		text-decoration: underline;
	}
	.f-info .f-info-img {
		max-width: 320px;
		margin-right: auto;
		margin-left: auto;
	}
	.f-banner li {
		max-width: 320px;
		margin-right: auto;
		margin-left: auto;
		width: 90%;
	}
	.f-banner li:not(:last-child) {
		margin-bottom: 5%;
	}
	.footer-wrap .fb-wrap {
		width: 87.5%;
		margin: 8% auto 0;
	}
	.copy-wrap .copy {
		font-size: 1.4rem;
		line-height: 1.4;
		padding: 2% 0;
	}



	/* bg-link */
	.bg-link a {}
	.bg-link a span {
		font-size: 1.6rem;
	}



	/* contact guide */
	.img-wrap.line-link {
		max-width: 912px;
		width: 90%;
		margin: auto;
		overflow: hidden;
	}
	.line-link .line p {
		-webkit-transition-duration: .3s;
		-ms-transition-duration: .3s;
		transition-duration: .3s;
		width: 248px;
		height: 64px;
		font-size: 16px;
		letter-spacing: .1em;
		text-indent: .1em;
	}
	.line-link a img {
		width: 160%;
	}
	.line-link a:hover .line p {
		background: rgba(255,255,255,.9);
		color: #546e7b;
	}
	.line-link a:hover .line span:before {
		right: 14px;
	}
	.line-link a:hover .line span:after {
		right: 15px;
	}
	.line-link a:hover .line span:before,
	.line-link a:hover .line span:after {
		border-bottom-color: #546e7b;
	}



	/* gallery-banner */
	.gallery-banner {
		height: 57vw;
	}
	.gallery-banner:before {}
	.gallery-banner a {
		display: block;
		width: 100%;
		height: auto;
		position: absolute;
		top: 0;
		left: 0;
	}
	.gallery-banner a:before {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(255,255,255,.2);
		opacity: 0;
		-webkit-transition-duration: .3s;
		-ms-transition-duration: .3s;
		transition-duration: .3s;
	}
	.gallery-banner .gb-headd {
		height: 57vw;
	}
	.gb-headd strong {
		width: 4em;
		height: 100%;
		position: relative;
	}
	.gb-headd strong img {
		width: 1.4em;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.gallery-banner a strong span {
		bottom: 8%;
	}



	/* sub-page */
	body.sub-page {
		font-size: 1.5rem;
	}
	.sub-page .main-img-wrap {
		margin-bottom: 32vw;
	}
	.sub-page .main-img-wrap .main-img img {
	}

	.sub-page .main-headd {
		width: 14vw;
		min-height: 56vw;
		bottom: -27vw;
		-webkit-transform: translate(-50%, 0);
		-ms-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}
	.sub-page .main-headd h1 {}
	.sub-page .main-headd h1 img {
		width: 24px;
		width: 5vw;
	}
	.sub-page .sec-inner {}
	.sub-page .sec.bg {}
	.sub-page .sec .headd-wrap {}
	.sub-page .sec .headd-wrap h2 {
		font-size: 1.8rem;
		line-height: 1.6;
		padding-bottom: 5%;
		margin-bottom: 10%;
	}
	.sub-page .sec .headd-wrap h2 br.sp {
		display: inline-block !important;
	}
	.sub-page .ct {
		text-align: center;
	}
	.sub-page .contact-wrap {
		padding: 15% 0;
	}



}



/*@media screen and (max-width:374px) {}*/



/**==============================================**/
/*
/*			sp-l ～ tab
/*
/**==============================================**/

@media screen and (min-width:640px) and (max-width:1069px) {

	.sp.tab,
	.tab,
	.tab.pc {
		display: block !important;
	}
	.sp,
	.pc {
		display: none !important;
	}



	header .h-logo-wrap {
		margin: 24px auto 0;
	}
	/* nav-wrap */
	header .nav-wrap > strong {
		margin-bottom: 50px;
	}
	.nav-wrap a {
		font-size: 16px;
		line-height: 50px;
	}



	/* footer */
	footer {}
	footer .footer-wrap {
		max-width: 1008px;
		padding: 44px 0 42px;
	}
	.footer-wrap .f-info-wrap {
		width: 87.5%;
		margin-right: auto;
		margin-left: auto;
		max-width: 500px;
	}
	.f-info-wrap .f-info {
		margin-bottom: 66px;
	}
	.f-info-wrap .f-info dl {
		width: 52.66%;
		max-width: 258px;
		float: left;
	}
	.f-info dl dt {
		margin-top: -5px;
	}
	.f-info dd {
		margin-top: 17px;
	}
	.f-info dd p {
		font-size: 17px;
		line-height: 1.68;
	}
	.f-info dd a {
		font-size: 19px;
		margin-top: 7px;
	}
	.f-info .f-info-img {
		width: 47.35%;
		max-width: 232px;
		float: right;
	}
	.f-banner li {
		float: left;
		width: 46.54%;
		max-width: 228px;
	}
	.f-banner li:nth-child(even) {
		float: right;
	}
	.f-banner li:not(:last-child) {
		margin-bottom: 25px;
	}
	.footer-wrap .fb-wrap {
		width: 100%;
		max-width: 500px;
		margin: 30px auto 50px;
	}
	.copy-wrap p {
		font-size: 15px;
		line-height: 36px;
		max-width: 1008px;
	}



	/* bg-link */
	.bg-link a {}
	.bg-link a span {
		font-size: 16px;
	}



	/* contact guide */
	.img-wrap.line-link {
		max-width: 912px;
		width: 90%;
		margin: auto;
	}
	.line-link .line p {
		-webkit-transition-duration: .3s;
		-ms-transition-duration: .3s;
		transition-duration: .3s;
		width: 248px;
		height: 64px;
		font-size: 16px;
		letter-spacing: .1em;
		text-indent: .1em;
	}
	.line-link a:hover .line p {
		background: rgba(255,255,255,.9);
		color: #546e7b;
	}
	.line-link a:hover .line span:before {
		right: 14px;
	}
	.line-link a:hover .line span:after {
		right: 15px;
	}
	.line-link a:hover .line span:before,
	.line-link a:hover .line span:after {
		border-bottom-color: #546e7b;
	}



	/* gallery-banner */
	.gallery-banner {
		height: 318px;
	}
	.gallery-banner:before {}
	.gallery-banner a {
		display: block;
		width: 100%;
		height: auto;
		position: absolute;
		top: 0;
		left: 0;
	}
	.gallery-banner a:before {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(255,255,255,.2);
		opacity: 0;
		-webkit-transition-duration: .3s;
		-ms-transition-duration: .3s;
		transition-duration: .3s;
	}
	.gallery-banner .gb-headd {
		height: 318px;
	}
	.gb-headd strong {
		width: 114px;
		height: 100%;
		position: relative;
	}
	.gb-headd strong img {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.gallery-banner a strong span {
		bottom: 49px;
	}



	/* sub-page */
	body.sub-page {
		font-size: 16px;
	}
	.sub-page .main-img-wrap {
		margin-bottom: 170px;
	}
	.sub-page .main-img-wrap .main-img {
		max-height: 630px;
	}
	.sub-page .main-img-wrap .main-img img {}
	.sub-page .main-headd {
		width: 84px;
		height: 348px;
		bottom: -106px;
		-webkit-transform: translate(-50%, 0);
		-ms-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}
	.sub-page .main-headd h1 {}
	.sub-page .main-headd h1 img {
		width: 24px;
	}
	.sub-page .sec .headd-wrap h2 {
		font-size: 25px;
		padding-bottom: 20px;
		margin-bottom: 70px;
		letter-spacing: .1em;
		text-indent: .1em;
	}
	.sub-page .ct {
		text-align: center;
	}
	.sub-page .contact-wrap {
		padding: 112px 0 118px;
	}



}



/**==============================================**/
/*
/*			sp tab 共通
/*
/**==============================================**/

@media screen and (max-width:1069px) {

	header {
		position: absolute;
		width: 100%;
	}
	header .h-logo-wrap {
		width: 87.5%;
	}
	header .h-logo-wrap a {
		position: relative;
		z-index: 999;
	}
	/* nav-wrap */
/*
	.nav-wrap {
		right: -100%;
		width: 100%;
		padding-top: 56px;
		font-size: 13px;
		transition: 0.5s;
		margin: auto;
	}
*/
	/* active */
/*
	.side-open .over-wrap,
	.side-open .overlay {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
	.side-open .overlay {
		visibility: visible;
		cursor: pointer;
		background: rgba(84, 110, 123, 0.4);
	}
	.side-open .nav-wrap {
		right: 0;
		opacity: 1;
	}
	.nav-wrap a {
		color: #546e7b;
		display: block;
		text-align: center;
		line-height: 4em !important;
	}
	.side-open .over-wrap,
	.side-open .overlay {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
*/

	/* nav-wrap */
	.over-wrap {
		opacity: 1;
		-webkit-transition: all 1.2s ease;
		transition: all 1.2s ease;
	}
	.side-open .over-wrap {
		opacity: 0;
	}
	.side-open .overlay {
		background: #fff;
		visibility: visible;
		cursor: pointer;
	}
	.nav-wrap strong {
		opacity: 0;
	}
	.nav-wrap {
		text-align: center;
		right: 0;
		width: 100%;
		padding-top: 56px;
		transition: 0.7s;
		-webkit-transition: opacity .7s cubic-bezier(.42,0,.57,.68);
		transition: opacity .7s cubic-bezier(.42,0,.57,.68);
		height: 0 !important;
		overflow: hidden;
		opacity: 0;
		background: none !important;
	}
	.nav-wrap .h-nav {
		display: inline-block;
	}
	.nav-wrap .h-nav li {
		-webkit-transform: translateY(-1em);
		-ms-transform: translateY(-1em);
		transform: translateY(-1em);
		opacity: 0;
	}

	.nav-wrap a {
		color: #546e7b;
	}

	/* active */
	.side-open .nav-wrap strong {
		opacity: 1;
	}
	.side-open .nav-wrap {
		opacity: 1;
		height: auto !important;
/*		padding-top: 25vh;*/
	}
	.side-open .nav-wrap .h-nav li {
		transition-duration: 0.5s;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
	.side-open .nav-wrap .h-nav li:nth-child(2) {
		transition-delay: .1s;
	}
	.side-open .nav-wrap .h-nav li:nth-child(3) {
		transition-delay: .3s;
	}
	.side-open .nav-wrap .h-nav li:nth-child(4) {
		transition-delay: .5s;
	}
	.side-open .nav-wrap .h-nav li:nth-child(5) {
		transition-delay: .7s;
	}
	.side-open .nav-wrap .h-nav li:nth-child(6) {
		transition-delay: .9s;
	}





	footer {}
	footer div.footer-wrap {
		text-align: center;
	}
	.f-logo-wrap {
		display: inline-block;
	}
	.f-logo-wrap a,
	.f-logo-wrap strong img {
		display: block;
	}
	.f-logo-wrap ul {
		text-align: left;
	}



	/* bg-link */
	.bg-link a {
		width: 248px;
		height: 64px;
	}
	.bg-link a span {
		letter-spacing: .1em;
		text-indent: .1em;
	}



	/* contact guide */
	.line-link .line p {
		width: 248px;
		height: 64px;
		font-size: 16px;
		letter-spacing: .1em;
		text-indent: .1em;
		margin: auto !important;
		line-height: 1;

		text-align: center;
	}



	/* map-wrap */
	.map-wrap {
		width: 100%;
		height: 348px;
	}



	/* sub-page */
	body.sub-page {}
	.sub-page .main-img-wrap .main-img {
		overflow: hidden;
	}
	.sub-page .main-img-wrap .main-img img {
		width: 120%;
		margin: 0 -10%;
		display: block;
	}
	.sub-page .main-headd {
		left: 50%;
	}
	.sub-page .sec-inner {
		width: 87.5%;
	}



}



/**==============================================**/
/*
/*			PC
/*
/**==============================================**/
@media print, screen and (min-width:1070px){

	.sp,
	.tab {
		display: none !important;
	}
	.tab.pc,
	.pc {
		display: block !important;
	}
	.tel-link:hover {
		cursor: default;
	}



	body {
		font-size: 15px;
	}
	header {
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
	}
	header .header-inner {
		width: 96%;
		max-width: 1160px;
		margin-right: auto;
		margin-left: auto;
	}
	.h-logo-wrap {
		padding: 17px 0 0;
	}
	.h-logo-wrap > a {
		display: block;
		width: 230px;
	}
	.h-logo-wrap > a:hover {
		opacity: .8;
	}
	.h-logo-wrap strong img {
		display: inline-block;
	}
	header .nav-wrap {
		margin-top: 0 !important;
	}
	header .nav-wrap > strong {
		position: absolute;
		top: 100px;
		right: 0;
		left: 0;
	}
	header nav {
		border-top-width: 1px;
	}
	header .h-nav li {}
	header .h-nav li a {
		display: block;
		color: #546e7b;
		position: relative;
		font-size: 16px;
		padding: 0 14px;
	}
	header .h-nav li a:hover {
		text-decoration: underline;
	}



	/* nav-wrap */
	.over-wrap {
		opacity: 1;
		-webkit-transition: all 1.2s ease;
		transition: all 1.2s ease;
	}
	.side-open .over-wrap {
		opacity: 0;
	}
	.side-open .overlay {
		background: #fff;
		visibility: visible;
		cursor: pointer;
	}
	.nav-wrap strong {
		opacity: 0;
	}
	.nav-wrap {
		text-align: center;
		right: 0;
		width: 100%;
		font-size: 13px;
		transition: 0.7s;
		-webkit-transition: opacity .7s cubic-bezier(.42,0,.57,.68);
		transition: opacity .7s cubic-bezier(.42,0,.57,.68);
		height: 0 !important;
		overflow: hidden;
		opacity: 0;
		background: none !important;
	}
	.nav-wrap .h-nav {
		display: inline-block;
	}
	.nav-wrap .h-nav li {
		-webkit-transform: translateY(-1em);
		-ms-transform: translateY(-1em);
		transform: translateY(-1em);
		opacity: 0;
	}

	.nav-wrap a {
		line-height: 4em !important;
	}

	/* active */
	.side-open .nav-wrap strong {
		opacity: 1;
	}
	.side-open .nav-wrap {
		opacity: 1;
		height: auto !important;
		padding-top: 25vh;
	}
	.side-open .nav-wrap .h-nav li {
		transition-duration: 0.7s;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
	.side-open .nav-wrap .h-nav li:nth-child(2) {
		transition-delay: .2s;
	}
	.side-open .nav-wrap .h-nav li:nth-child(3) {
		transition-delay: .4s;
	}
	.side-open .nav-wrap .h-nav li:nth-child(4) {
		transition-delay: .6s;
	}
	.side-open .nav-wrap .h-nav li:nth-child(5) {
		transition-delay: .8s;
	}
	.side-open .nav-wrap .h-nav li:nth-child(6) {
		transition-delay: 1s;
	}



	.inner-wrap {
		width: 96%;
		max-width: 1200px;
	}



	/* page-top */
	.page-top {
		right: 0;
	}
	.page-top a {
		-webkit-transition-duration: .2s;
		-ms-transition-duration: .2s;
		transition-duration: .2s;
	}
	.page-top a:hover {
		opacity: 1;
	}



	/* footer */
	footer {}
	footer .footer-wrap {
		width: 96%;
		max-width: 1090px;
		padding: 86px 0 72px;
	}
	.footer-wrap .f-info-wrap {
		width: 48.62%;
		max-width: 490px;
		/* float: left; */
    margin: 0 auto;
	}
	.f-info-wrap .f-info {
		margin-bottom: 66px;
	}
	.f-info-wrap .f-info dl {
		width: 52.66%;
		max-width: 258px;
		float: left;
	}
	.f-info dl dt {
		margin-top: -5px;
	}
	.f-info dd {
		margin-top: 17px;
	}
	.f-info dd p {
		font-size: 17px;
		line-height: 1.68;
	}
	.f-info dd a {
		font-size: 19px;
		margin-top: 7px;
	}
	.f-info .f-info-img {
		width: 47.35%;
		max-width: 232px;
		float: right;
	}
	.f-info-wrap .f-banner {}
	.f-banner li {
		float: left;
		width: 46.54%;
		max-width: 228px;
	}
	.f-banner li:nth-child(even) {
		float: right;
	}
	.f-banner li:not(:last-child) {
		margin-bottom: 25px;
	}
	.footer-wrap .fb-wrap {
		width: 45.88%;
		max-width: 500px;
		float: right;
	}
	.copy-wrap p {
		font-size: 15px;
		line-height: 36px;
		max-width: 1008px;
	}



	/* bg-link */
	.bg-link a {
		width: 248px;
		height: 64px;
	}
	.bg-link a span {
		font-size: 16px;
		letter-spacing: .1em;
		text-indent: .1em;
	}
	.bg-link a:hover span:before {
		right: 14px;
	}
	.bg-link a:hover span:after {
		right: 15px;
	}



	/* contact guide */
	.img-wrap.line-link {
		max-width: 912px;
		margin: auto;
	}
	.line-link .line p {
		-webkit-transition-duration: .3s;
		-ms-transition-duration: .3s;
		transition-duration: .3s;
		width: 248px;
		height: 64px;
		font-size: 16px;
		letter-spacing: .1em;
		text-indent: .1em;
	}
	.line-link a:hover .line p {
		background: rgba(255,255,255,.9);
		color: #546e7b;
	}
	.line-link a:hover .line span:before {
		right: 14px;
	}
	.line-link a:hover .line span:after {
		right: 15px;
	}
	.line-link a:hover .line span:before,
	.line-link a:hover .line span:after {
		border-bottom-color: #546e7b;
	}



	/* gallery-banner */
	.gallery-banner {
		height: 580px;
	}
	.gallery-banner:before {}
	.gallery-banner a {
		display: block;
		width: 100%;
		height: auto;
		position: absolute;
		top: 0;
		left: 0;
	}
	.gallery-banner a:before {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(255,255,255,.2);
		opacity: 0;
		-webkit-transition-duration: .3s;
		-ms-transition-duration: .3s;
		transition-duration: .3s;
	}
	.gallery-banner a:hover:before {
		opacity: 1;
	}
	.gallery-banner .gb-headd {
		height: 580px;
	}
	.gb-headd strong {
		width: 114px;
		height: 100%;
		position: relative;
	}
	.gb-headd strong img {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.gallery-banner a strong span {
		bottom: 149px;
	}



	/* map-wrap */
	.map-wrap {
		width: 100%;
		height: 554px;
	}



	/* sub-page */
	body.sub-page {
		font-size: 16px;
	}
	.sub-page .main-img-wrap {
		margin-bottom: 170px;
	}
	.sub-page .main-img-wrap .main-img {
		max-height: 630px;
		overflow: hidden;
	}
	.sub-page .main-headd {
		width: 84px;
		height: 518px;
		left: 50%;
		bottom: -106px;
		-webkit-transform: translate(-50%, 0);
		-ms-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}
	.sub-page .main-headd h1 {}
	.sub-page .main-headd h1 img {
		width: 24px;
	}
	.sub-page .sec-inner {
		width: 96%;
	}
	.sub-page .sec .headd-wrap h2 {
		font-size: 25px;
		padding-bottom: 20px;
		margin-bottom: 70px;
		letter-spacing: .1em;
		text-indent: .1em;
	}
	.sub-page .ct {
		text-align: center;
	}
	.sub-page .contact-wrap {
		padding: 112px 0 118px;
	}



}



/**==============================================**/
/*
/*			print
/*
/**==============================================**/

@media print {

	* {
		opacity: 1 !important;
	}
	.sl-up {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
	.cover:after,
	.d-cover:before,
	.d-cover:after {
		content: none !important;
	}
	.fd-in {
		opacity: 1;
	}
	body {
		width: 960px;
		margin-right: auto;
		margin-left: auto;
		opacity: 1;
	}
	header .header-inner {
		width: 90%;
	}
	.h-logo-wrap strong img {
		width: 100%;
	}
	.toggle,
	.page-top {
		display: none;
	}
	section { /* section内改ページ回避 */
/*		page-break-inside: avoid !important;*/
	}
	.sw {
		opacity: 1;
	}
	
	
	
	section,/* section img 後改行 */
	img  {}




}



