@import "swiper.css";
/*normalize*/
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-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}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{-webkit-box-sizing: border-box;box-sizing: border-box;}

html, body {
  padding: 0;
  margin: 0;
  height: 100%;
  min-height: 100%;
}
ol, ul, li {
  list-style: none;
  margin: 0;
  padding: 0;
}
a{
	cursor: pointer;
	outline: none;
	text-decoration: none;
}
img{
	vertical-align: bottom;
	max-width: 100%;
}
h1,h2,h3,h4,h5,h6,p,li,dt,dd{
	margin: 0;
	padding: 0;
}
h3{
	margin-bottom: 0.4em;
}
small{
	font-weight: normal;
}
/*fonts*/
@font-face {
    font-family: 'awesome';
    font-style: bold;
    font-weight: 400;
    src: url(../fonts/fontawesome-webfont.eot); /* For IE6-8 */
    src: local('awesome'),
    local('fontawesome-webfont'),
    url(../fonts/fontawesome-webfont.woff2) format('woff2'),
    url(../fonts/fontawesome-webfont.woff) format('woff'),
    url(../fonts/fontawesome-webfont.ttf) format('truetype');
}
@font-face {
    font-family: 'Material Icons';
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/MaterialIcons-Regular.eot); /* For IE6-8 */
    src: local('Material Icons'),
    local('MaterialIcons-Regular'),
    url(../fonts/MaterialIcons-Regular.woff2) format('woff2'),
    url(../fonts/MaterialIcons-Regular.woff) format('woff'),
    url(../fonts/MaterialIcons-Regular.ttf) format('truetype');
}
[class*="icons-"]:before {
    font-family: 'Material Icons';
    font-weight: 400;
    font-style: normal;
    font-size: inherit;
}
.icons-right:before{ content: "\e315";}
.icons-left:before{ content: "\e314";}
.icons-upr:before{ content: "\e316";}
.icons-btm:before{ content: "\e313";}
.icons-search:before{ content: "\e8b6";}
.icons-help:before{ content: "\e8fd";}

/*margin,padding*/
.mt-a{margin-top: auto;}.mb-a{margin-bottom: auto;}.ml-a{margin-left: auto;}.mr-a{margin-right: auto;}.mt-n{margin-top: 0;}.mb-n{margin-bottom: 0;}.ml-n{margin-left: 0;}.mr-n{margin-right: 0;}.pt-n{padding-top: 0;}.pb-n{padding-bottom: 0;}.pl-n{padding-left: 0;}.pr-n{padding-right: 0;}.mt-xs{margin-top: 6px;}.mt-s{margin-top: 12px;}.mt-m{margin-top: 24px;}.mt-l{margin-top: 36px;}.mt-ll{margin-top: 48px;}.mt-xl{margin-top: 64px;}.mb-xs{margin-bottom: 6px;}.mb-s{margin-bottom: 12px;}.mb-m{margin-bottom: 24px;}.mb-l{margin-bottom: 36px;}.mb-ll{margin-bottom: 48px;}.mb-xl{margin-bottom: 64px;}.ml-xs{margin-left: 6px;}.ml-s{margin-left: 12px;}.ml-m{margin-left: 24px;}.ml-l{margin-left: 36px;}.ml-ll{margin-left: 48px;}.ml-xl{margin-left: 64px;}.ml-xs{margin-left: 6px;}.mr-s{margin-right: 12px;}.mr-m{margin-right: 24px;}.mr-l{margin-right: 36px;}.mr-ll{margin-right: 48px;}.mr-xl{margin-right: 64px;}.pt-xs{padding-top: 6px;}.pt-s{padding-top: 12px;}.pt-m{padding-top: 24px;}.pt-l{padding-top: 36px;}.pt-ll{padding-top: 48px;}.pt-xl{padding-top: 64px;}.pb-xs{padding-bottom: 6px;}.pb-s{padding-bottom: 12px;}.pb-m{padding-bottom: 24px;}.pb-l{padding-bottom: 36px;}.pb-ll{padding-bottom: 48px;}.pb-xl{padding-bottom: 64px;}.pl-xs{padding-left: 6px;}.pl-s{padding-left: 12px;}.pl-m{padding-left: 23px;}.pl-l{padding-left: 36px;}.pl-ll{padding-left: 48px;}.pl-xl{padding-left: 64px;}.pl-xs{padding-left: 6px;}.pr-s{padding-right: 12px;}.pr-m{padding-right: 23px;}.pr-l{padding-right: 36px;}.pr-ll{padding-right: 48px;}.pr-xl{padding-right: 64px;}@media screen and (min-width:1260px){.mt-xs{margin-top: 12px;}.mt-s{margin-top: 24px;}.mt-m{margin-top: 36px;}.mt-l{margin-top: 48px;}.mt-ll{margin-top: 64px;}.mt-xl{margin-top: 92px;}.mb-xs{margin-bottom: 12px;}.mb-s{margin-bottom: 24px;}.mb-m{margin-bottom: 36px;}.mb-l{margin-bottom: 48px;}.mb-ll{margin-bottom: 64px;}.mb-xl{margin-bottom: 92px;}.ml-xs{margin-left: 12px;}.ml-s{margin-left: 24px;}.ml-m{margin-left: 36px;}.ml-l{margin-left: 48px;}.ml-ll{margin-left: 64px;}.ml-xl{margin-left: 92px;}.ml-xs{margin-left: 12px;}.mr-s{margin-right: 24px;}.mr-m{margin-right: 36px;}.mr-l{margin-right: 48px;}.mr-ll{margin-right: 64px;}.mr-xl{margin-right: 92px;}.pt-xs{padding-top: 12px;}.pt-s{padding-top: 24px;}.pt-m{padding-top: 36px;}.pt-l{padding-top: 48px;}.pt-ll{padding-top: 64px;}.pt-xl{padding-top: 92px;}.pb-xs{padding-bottom: 12px;}.pb-s{padding-bottom: 24px;}.pb-m{padding-bottom: 36px;}.pb-l{padding-bottom: 48px;}.pb-ll{padding-bottom: 64px;}.pb-xl{padding-bottom: 92px;}.pl-xs{padding-left: 12px;}.pl-s{padding-left: 24px;}.pl-m{padding-left: 36px;}.pl-l{padding-left: 48px;}.pl-ll{padding-left: 64px;}.pl-xl{padding-left: 92px;}.pl-xs{padding-left: 12px;}.pr-s{padding-right: 24px;}.pr-m{padding-right: 36px;}.pr-l{padding-right: 48px;}.pr-ll{padding-right: 64px;}.pr-xl{padding-right: 92px;}}
.center{ margin-left: auto; margin-right: auto;}
/*border*/
.bt-n{ border-top: none !important;} .br-n{ border-right: none !important;} .bb-n{ border-bottom: none !important;} .bl-n{ border-right: none !important;}
@media screen and (min-width:1023px){ .dd-bt-n{ border-top: none !important;} .dd-br-n{ border-right: none !important;} .dd-bb-n{ border-bottom: none !important;} .dd-bl-n{ border-right: none !important;} }
@media screen and (max-width:1024px){ .md-bt-n{ border-top: none !important;} .md-br-n{ border-right: none !important;} .md-bb-n{ border-bottom: none !important;} .md-bl-n{ border-right: none !important;} }
/*text*/
.text-center{text-align: center !important;} .text-left{text-align: left !important;} .text-right{text-align: right !important;}
@media screen and (min-width:1024px){
	.dd-text-center{text-align: center !important;} .dd-text-left{text-align: left !important;} .dd-text-right{text-align: right !important;}
}
/*indent*/
.indent-num{text-indent: -1.2em; padding-left: 2em; display: block;}
.indent-em{text-indent: -1em; padding-left: 1em;}
.en .indent-em{text-indent: -0.8em; padding-left: 0.8em;}
.bg-gray.indent-num{text-indent: -1.2em; padding-left: 2em;}
@media screen and (min-width:1023px){.bg-gray.indent-num{padding-left: 3em;}}
.indent-abc{text-indent: -1.6em; padding-left: 1.6em; display: block;}
small{line-height: 1.3;}

/*font-size*/
html{ font-size: 625%;}
@media screen and (max-width:1280px){
	html{ font-size: 575%;}
}
@media screen and (max-width:1024px){
	html{ font-size: 470%;}
}
@media screen and (max-width:955px){
	html{ font-size: 385%;}
}
@media screen and (max-width:860px){
	html{ font-size: 385%;}
}
@media screen and (max-width:800px){
	html{ font-size: 570%;}
}
@media screen and (max-width:700px){
	html{ font-size: 500%;}
}
@media screen and (max-width:510px){
	html{ font-size: 555.7%;}
}
/*row*/
.row{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}
.row .col-1{
	width: 8.3333%;
}
.row .col-2{
	width: 16.6666%;
}
.row .col-3{
	width: 25%;
}
.row .col-4{
	width: 33.3333%;
}
.row .col-5{
	width: 41.6666%;
}
.row .col-6{
	width: 50%;
}
.row .col-7{
	width: 58.3333%;
}
.row .col-8{
	width: 66.6666%;
}
.row .col-9{
	width: 75%;
}
.row .col-10{
	width: 83.3333%;
}
.row .col-11{
	width: 91.6666%;
}
.row .col-12{
	width: 100%;
}

@media (max-width:1023px){
.row .sm-col-1{
	width: 8.3333%;
}
.row .sm-col-2{
	width: 16.6666%;
}
.row .sm-col-3{
	width: 25%;
}
.row .sm-col-4{
	width: 33.3333%;
}
.row .sm-col-5{
	width: 41.6666%;
}
.row .sm-col-6{
	width: 50%;
}
.row .sm-col-7{
	width: 58.3333%;
}
.row .sm-col-8{
	width: 66.6666%;
}
.row .sm-col-9{
	width: 75%;
}
.row .sm-col-10{
	width: 83.3333%;
}
.row .sm-col-11{
	width: 91.6666%;
}
.row .sm-col-12{
	width: 100%;
}
}

@media (max-width:600px){
.row .xs-col-1{
	width: 8.3333%;
}
.row .xs-col-2{
	width: 16.6666%;
}
.row .xs-col-3{
	width: 25%;
}
.row .xs-col-4{
	width: 33.3333%;
}
.row .xs-col-5{
	width: 41.6666%;
}
.row .xs-col-6{
	width: 50%;
}
.row .xs-col-7{
	width: 58.3333%;
}
.row .xs-col-8{
	width: 66.6666%;
}
.row .xs-col-9{
	width: 75%;
}
.row .xs-col-10{
	width: 83.3333%;
}
.row .xs-col-11{
	width: 91.6666%;
}
.row .xs-col-12{
	width: 100%;
}
}
/*common*/
html,body{
	height: 100%;
}
body{
	font-size: .15em;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

nav{
	width: 150px;
	height: 100%;
	position: fixed;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 2;
	background-color: #fff;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
}
main{
	position: relative;
	width: 100%;
	height: 100%;
	padding-right: 150px;
}
section{
	position: relative;
	margin-bottom: 54px;
}
section.content{
	padding: 0 48px;
}

footer{
	background-color: #333;
}
footer,footer a{
	color: #fff;
}
footer .content{
	padding: 48px;
	flex-direction: row-reverse;
	align-items: center;
}
footer .logo{
	display: inline-block;
	margin-bottom: 16px;
}
footer .content .contact{
	text-align: center;
}
footer .content p{
	margin-bottom: 2em;
}
footer .content small{
	font-size: .12rem;
	font-family: "メイリオ", "Meiryo", 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'MS P Gothic', 'Osaka', sans-serif;
}
@media (max-width: 768px){
	main{
		padding: 80px 0 0;
	}
	section.content{
		padding: 0 24px;
	}
	footer .content{
		padding: 24px;
	}
	footer .content .contact{
		margin-bottom: 24px;
	}
}
/*nav*/
nav h1{
	position: absolute;
	width: 80%;
	margin: auto;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
nav .toggle{
	position: relative;
	z-index: 1000;
	padding: 36px 0;
	margin: 16px 48px;
	text-align: center;
	display: block;
}
nav .toggle span{
	display: block;
	text-align: center;
	font-size: 11px;
}
nav .toggle:after,
nav .toggle span:before,
nav .toggle span:after{
	content: "";
	width: 100%;
	height: 1px;
	background-color: #000;
	position: absolute;
	left: 0;
	transition: .3s;
}
nav .toggle span:before{
	top: 10px;
}
nav .toggle span:after{
	top: 16px;
	opacity: 1;
}
nav .toggle:after{
	top: 22px;
}
nav.open .toggle span:before{
	top: 16px;
	transform: rotate(30deg);
}
nav.open .toggle span:after{
	top: 16px;
	opacity: 0;
}
nav.open .toggle:after{
	top: 16px;
	transform: rotate(-30deg);
}

nav .nav{
	overflow: hidden;
	width: 0%;
	position: fixed;
	z-index: 100;
	right: 150px;
	left: calc(100% - 150px);
	top: 0;
	bottom: 0;
	transition: .5s;
	opacity: 0;
}
nav{
	z-index: 101;
}
nav.open .nav{
	right: 150px;
	left: 0;
	width: calc(100% - 150px);
	color: #fff;
	opacity: 1;
}
nav .nav > div{
	padding: 100px 36px 0;
	position: relative;
	z-index: 100;
	width: 33.3333%;
	overflow: hidden;
	white-space: nowrap;
}
nav .nav > div:nth-child(1){
	background: url(../images/common/bg-nav-01.png) no-repeat 0 0;
	background-size: cover;
}
nav .nav > div:nth-child(2){
	background: url(../images/common/bg-nav-02.png) no-repeat 0 0;
	background-size: cover;
}
nav .nav > div:nth-child(3){
	background: url(../images/common/bg-nav-03.png) no-repeat 0 0;
	background-size: cover;
}

nav .nav a{
	color: #fff;
	text-decoration: none;
	transition: .3s;
}
nav .nav a:hover{
	text-decoration: underline;
}
nav .nav h3{
	font-weight: normal;
	font-size: .24rem;
}
nav .nav ul li{
	padding: 10px 20px;
	font-size: .16rem;
}
body.noScroll{
    position: relative;
    height: 100%;
    overflow: hidden;
}
@media (max-width: 768px){
	nav{
		width: 100%;
		left: 0;
		right: 0;
		top: 0;
		bottom: auto;
		height: auto;
	}
	nav h1{
		width: 100px;
	}
	nav a.toggle{
		width: 60px;
		height: 60px;
		padding-top: 36px;
		padding-bottom: 0px;
		float: right;
		margin: 10px 20px;
	}
	nav.open .toggle span:before{
		width: 30px;
		left: 14px;
		transform: rotate(45deg);
	}
	nav.open .toggle:after{
		width: 30px;
		left: 14px;
		transform: rotate(-45deg);
	}
	nav .nav{
		display: block !important;
	    width: 100%;
	    right: 0;
	    left: 0;
	    bottom: auto;
	    height: 0;
	    top: 80px;
	}
	nav.open .nav {
	    right: 0;
	    left: 0;
	    width: 100%;
	    height: 100%;
	    overflow: scroll;
	}
	nav .nav > div{
		width: 100% !important;
		height: auto;
		padding-top: 24px;
	}
	nav .nav h3{
		border-bottom: #fff 1px solid;
	}
}



/*
	module
*/
main h3{
	position: relative;
	background: url(../images/common/bg-line01.png) no-repeat right bottom;
	font-size: 0.24rem;
	color: #000;
	padding: 4px 18px 4px 36px;
	display: inline-block;
	margin-left: 5px;
	margin-bottom: 24px;
}
main h3:before{
	content: "";
	background: url(../images/common/i-flower.png) no-repeat center center;
	background-size: contain;
	width: 46px;
	height: 46px;
	position: absolute;
	left: -14px;
	top: -1px;
}
main h4{
	font-size: .18rem;
	font-weight: normal;
	display: inline-block;
	padding: 1px 2px;
	border-bottom: #000 1px solid;
	margin-bottom: 1em;
}
main h5{
	font-size: .16rem;
	font-weight: normal;
	display: inline-block;
	padding: 1px 3px;
	border-left: #000 3px solid;
	margin-bottom: 1em;
	line-height: 1;
}
.btn{
	border: #000 1px solid;
	padding: 20px 38px;
	text-align: center;
	display: inline-block;
	text-decoration: none;
	color: #000;
	transition: .3s;
	background-color: transparent;
}
.btn.arrow{
	border-right: none;
	margin-right: 30px;
	position: relative;
	height: 58px;
}
.btn.arrow:before,
.btn.arrow:after{
	content: "";
	width: 1px;
	height: 33px;
	border-right: #000 1px solid;
	position: absolute;
	right: -8px;
}
.btn.arrow:before{
	transform: rotate(-30deg);
	top: -2px;
}
.btn.arrow:after{
	transform: rotate(30deg);
	bottom: -2px;
}
.btn.arrow.wht:before,
.btn.arrow.wht:after{
	border-color: #fff;
}
.btn.arrow span{
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 28px 0 28px 16px;
	border-color: transparent transparent transparent transparent;
	top: 0;
	right: -16px;
	transition: .3s;
}
.btn.arrow:hover span{
	border-color: transparent transparent transparent rgba(255,255,255,.3);
}
.btn.arrow.wht:hover span{
	border-color: transparent transparent transparent rgba(255,255,255,.3);
}
.btn.blk{
	
}
.btn.wht{
	border-color: #fff;
	color: #fff;
}
.btn.blk:hover{
	background-color: rgba(255,255,255,0.3);
}
.btn.wht:hover{
	background-color: rgba(255,255,255,0.3);
}
.bnr{
	display: block;
	position: relative;
	text-decoration: none;
}
@media (max-width: 768px){
	main h3{
		background: none;
	}
}
/*gallery*/
.gallery h4{
	display: block;
	font-size: .2rem;
	line-height: 1.7;
	border-bottom: #000 1px solid;
	padding-top: 10px;
	margin-bottom: 10px;
}
.gallery *{
	transition: .3s;
}
.gallery a{
	color: #000;
}
.gallery a img{
	opacity: 1;
	transition: .3s;
}
.gallery a:hover img{
	opacity: .7;
}
.gallery.slide{
	width: 100%;
	overflow: hidden;
}
.gallery.slide .row{
	width: 1698px;
	overflow: hidden;
	flex-wrap: nowrap;
	padding-left: 48px;
}
.seijinshiki .gallery.slide .row{
	width: 2328px;
}
.gallery.photos.slide .row{
	padding-right: 20px;
}
.gallery.slide .box{
	width: 250px;
	margin-right: 20px;
}
.gallery.photos.slide .box{
	margin: 16px;
}
.gallery.photos.thumb{
	padding-left: 48px;
}
.gallery.photos.thumb .box{
	margin: 16px;
	width: 220px;
}
.gallery.slide .btn-scroll:before{
	content: "";
	position: absolute;
	top: 172px;
	transform: translateY(-50%);
    font-family: 'Material Icons';
	width: 64px;
	height: 64px;
	font-size: 100px;
	text-align: center;
	transition: .3s;
}
.gallery.slide .btn-scroll:hover:before{
	color: #b291b2;
}
.gallery.slide .scroll-start:before{
	content: "\e314";
	left: 20px;
}
.gallery.slide .scroll-end:before{
	content: "\e315";
	right: 20px;
}

.gallery.list{
	padding: 0 48px;
}
.gallery.list .row{
	flex-direction: column;
}
.gallery.list h4{
	border-color: #bbb;
}
.gallery.list .box{
	margin-bottom: 10px;
	display: flex;
	border: #bbb 1px solid;
	padding: 10px;
	background-color: #fff;
}
.gallery.list .box a:nth-child(1){
	display: block;
	width: 100px;
	height: 100px;
	overflow: hidden;
}
.gallery.list .box a:nth-child(2){
	flex: 1;
	padding-left: 20px;
}
.gallery.list .box:hover{
	background-color: #efefef;
}
.gallery.list .box:hover a img,
.gallery.list .box:hover a h4,
.gallery.list .box:hover a p{
	opacity: .7;
}
.gallery-tgl{
	float: right;
	padding: 10px;
	position: relative;
	z-index: 2;
}
.gallery-tgl span{
	border: #fff 1px solid;
	cursor: pointer;
	display: inline-block;
	transition: .3s;
}
.gallery-tgl span:hover{
	border-color: #555;
}
.gallery-tgl span.on{
	opacity: .2;
	pointer-events: none;
}
footer .menu{
	background-color: #999;
	position: relative;
	padding-bottom: 70px;
}
footer .menu + section{
	background-color: #666;
}
footer .menu + section .menus{
	top: -60px;
	position: relative;
	color: #fff;
}
footer .gallery h4,
footer .gallery p{
	color: #fff;
	border-color: #fff;
	font-weight: normal;
}
footer .menu h3{
	background: none;
	color: #fff;
	font-weight: normal;
	padding-left: 0;
}
footer .menu h3:before{
	display: none;
}
footer .box a:nth-child(1){
	background: #fff;
	display: block;
}
footer .box a:nth-child(1):hover{
	opacity: 1;
}
footer .box a:nth-child(1) img:hover{
	opacity: 0.7;
}
footer .menu span{
	border-color: transparent;
}
footer .menu span:hover{
	border-color: #fff;
}
footer .menu span img{
	filter: brightness(100);
}
footer .gallery.list .box{
	background-color: #555;
}
footer .gallery.list .box:hover{
	background-color: #333;
}
footer .gallery.list .box a:nth-child(1){
	background-color: transparent;
}
@media (max-width:768px){
	.gallery-tgl{
		padding: 0;
	}
	.gallery.list{
		padding: 0 24px;
	}
	.gallery.list .box a:nth-child(1){
		width: 60px;
		height: 60px;
	}
	.gallery.list .box a:nth-child(2){
		padding-left: 10px;
	}
	.gallery.list h4{
		padding-top: 0;
	}
	.btn-scroll{
		display: none !important;
	}
	.gallery.slide{
		overflow: scroll;
	}
	.gallery.slide .box{
		width: 140px;
	}
	.gallery.slide .row{
		padding-left: 24px;
		width: 988px;
	}
	.gallery.photos.thumb{
		padding-top: 36px;
		padding-left: 8px;
		padding-right: 8px;
	}
	.gallery.photos.slide .box{
		margin: 16px 16px 0 0;
	}
	.gallery.photos.thumb .row{
		width: 100%;
	}
	.gallery.photos.thumb .box{
		width: 33.3333%;
		margin: 0;
		padding: 8px;
	}
}

/*------------------------------------

	content
	
------------------------------------*/
/*index*/
.main_index .main{
	background: url(../images/index/main.jpg) no-repeat 0 0;
	background-size: cover;
	padding: 66% 0 0;
	margin: 0 0 54px;
	overflow: hidden;
}
.main_index .main h2.img{
	position: absolute;
	right: 100px;
	top: 60px;
}
.main_index .about div:nth-child(1){
	background:#000 url(../images/index/bg-about.jpg) no-repeat 0 0;
	background-size: cover;
	padding: 16% 0;
	position: relative;
}
.main_index .about div:nth-child(1):before{
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 2;
	background-color: rgba(0,0,0,0.7);
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.main_index .about div:nth-child(1) .logo{
	width: 310px;
	display: block;
	margin: 0 auto 24px;
	z-index: 3;
	position: relative;
}
.main_index .about div:nth-child(1) .logo img{
	width: 80%;
}
.main_index .about div:nth-child(1) a{
	width: 310px;
	display: block;
	margin: auto;
	z-index: 3;
	position: relative;
}
.main_index .about div:nth-child(1) .link{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
}
.main_index .about div:nth-child(1) .link div{
	padding: 0;
	position: relative;
	overflow: hidden;
	background-color: #000;
}
.main_index .about div:nth-child(1) .link div a{
	width: 100%;
	background-size: cover;
	text-align: center;
	transition: .3s;
}
.main_index .about div:nth-child(1) .link div a span{
	display: block;
	padding: 20% 0;
	opacity: 0;
	color: #fff;
	transition: .3s;
	background-color: rgba(0,0,0,0.7);
}
.main_index .about div:nth-child(1) .link div a:hover span{
	opacity: 1;
}
.main_index .about div:nth-child(1) .link div:nth-child(1) a{
	background: url(/images/index/img-about-01.png) no-repeat 0 0;
	background-size: cover;
}
.main_index .about div:nth-child(1) .link div:nth-child(2) a{
	background: url(/images/index/img-about-02.png) no-repeat 0 0;
	background-size: cover;
}
.main_index .about div:nth-child(1) .link div:nth-child(3) a{
	background: url(/images/index/img-about-03.png) no-repeat 0 0;
	background-size: cover;
}
.main_index .about div:nth-child(2){
	align-items: center;
	flex-direction: row;
	padding: 0 8%;
	background-color: #efefef;
}
.main_index .profile .text-bnr{
	background-color: #efefef;
	position: relative;
}
.main_index .profile .text-bnr > p{
	padding: 64px;
	padding-right: 0;
}
.main_index .profile .text-bnr > div{
	background: url(../images/index/prof.png) no-repeat left top;
	background-size: 80%;
}
.main_index .profile .text-bnr > div .btn{
	position: absolute;
	right: 4em;
	bottom: 2em;
}
.main_index .rental > .row{
	margin: 54px 0 120px;
	padding: 48px;
	background-color: #efefef;
	position: relative;
}
.main_index .rental p{
	font-size: .18rem;
}
.main_index .rental a{
	position: absolute;
	top: -54px;
	right: 54px;
	width: 310px;
	height: 310px;
}
.main_index .rental a .btn{
	position: absolute;
	bottom: 54px;
	right: 20px;
	font-size: 14px;
}
.main_index .total p{
	padding: 24px 10px;
}
.main_index .total > div:nth-child(1) a{
	border: #000 1px solid;
	display: flex;
	color: #000;
	margin-right: 36px;
}
.hair .main_index .total > div:nth-child(2){
	height: 526px;
}
@media (max-width:768px){
	.hair .main_index .total > div:nth-child(2){
		height: 327px;
	}
}
.main_index .total > div:nth-child(1) a > span:nth-child(1){
	padding: 20px 20px 20px 20px;
	width: 253px;
}
.main_index .total > div:nth-child(1) a > span:nth-child(2){
	padding: 40px 20px 30px 0;
	width: auto;
	flex: 1;
}
.main_index .total > div:nth-child(1) a > span:nth-child(2) .p{
	margin-bottom: 10px;
	display: block;
}
.main_index .total > div:nth-child(2) a{
	width: 100%;
	height: 100%;
	display: block;
	background: url(../images/index/img-salon-bridal.jpg) no-repeat 0 0;
	background-size: cover;
	color: #000;
}
.main_index .total > div:nth-child(2) a > span{
	position: absolute;
	left: 50%;
	top: 24px;
	width: 262px;
	transform: translateX(-50%);
}
.main_index .total > div:nth-child(2) a .p{
	margin-bottom: 10px;
	display: block;
}
@media (max-width: 768px){
	.main_index .main{
		height: calc(100vh - 80px);
		background-position-x: center;
	}
	.main_index .main h2.img{
		right: 20px;
		top: 60px;
		width: 50%;
		filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.5));
	}
	.main_index .about div:nth-child(1){
		padding-bottom: 0;
	}
	.main_index .about div:nth-child(1) .btn{
		margin-bottom: 24px;
	}
	.main_index .about div:nth-child(1) .link{
		position: relative;
	}
	.main_index .about div:nth-child(2){
		padding: 36px 24px;
	}
	.main_index .profile .text-bnr > p{
		padding: 20px !important;
	}
	.main_index .profile .text-bnr > div{
		padding: 20px;
		background: none;
		text-align: center;
	}
	.main_index .profile .text-bnr > div .btn{
		position: relative;
		right: 0;
		bottom: 0;
	}
	.main_index .rental > .row{
		margin: 0;
		padding: 24px;
	}
	.main_index .rental > .row > div:nth-child(1){
		margin-bottom: 24px;
	}
	.main_index .rental a{
		position: static;
	}
	.main_index .total > div:nth-child(1) a{
		margin-right: 0;
		margin-bottom: 24px;
	}
	.main_index .total > div:nth-child(1) a > span:nth-child(1){
		width: 100%;
		text-align: center;
	}
	.main_index .total > div:nth-child(1) a > span:nth-child(2){
		padding: 20px;
		text-align: center;
	}
	.main_index .total > div:nth-child(2) a{
		padding-top: 100%;
	}
	.main_index .total > div:nth-child(2) a > span{
		bottom: auto;
		top: 24px;
	}
}


/*
	page
*/
.page .main{
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 43.5%;
	width: 100%;
	
}
.page.profile .main{
	height: 100vh;
	padding: 48px;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	overflow: scroll;
}
.page .main h2{
	border: #fff 1px solid;
	padding: 24px;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: #fff;
	font-weight: normal;
	font-size: .36rem;
	position: absolute;
	left: 36px;
	top: 36px;
	margin: 0;
	text-shadow: 0px 0px 5px rgba(0,0,0,0.8);
}
.page.profile .main h2{
	left: auto;
	position: static;
	-webkit-writing-mode: vertical-lr;
	-ms-writing-mode: tb-lr;
	writing-mode: vertical-lr;
	display: inline-block;
	border-color: #000;
	color: #000;
	text-shadow: 0px 0px 0px rgba(0,0,0,0);
}
.page.profile .main p{
	padding-right: 48px;
	font-size: .18rem;
	line-height: 1.8;
	text-shadow: 0px 0px 0px rgba(0,0,0,0);
}
.page.profile .main h2 + a{
	padding: 20px;
	margin-top: 30px;
	transition: .3s;
}
.page.profile .main h2 + a:after{
	position: relative;
	font-family: 'Material Icons';
	content: "\e5c6";
	font-size: 26px;
	padding-top: 10px;
}
.page.profile .main h2 + a:hover{
	color: #ff6969;
}
@media (max-width: 768px){
	.page .main{
		padding: 0;
		height: calc(100vh - 280px);
	}
	.page .main{
		background-position: right center;
	}
	.page.profile .main{
		padding: 24px;
		height: calc(100vh - 80px);
	}
	.page .main h2{
		left: auto;
		right: 80px;
	}
	.page.profile .main h2{
		padding: 16px;
		font-size: .28rem;
	}
	.page.profile .main p{
		padding-right: 24px;
	}
}
.page .btm-bnr{
	padding-top: 30px;
}
.page .btm-bnr > .row{
	margin: 54px 0 120px;
	padding: 48px;
	background-color: #efefef;
	position: relative;
}
.page .btm-bnr p{
	font-size: .16rem;
}
.page .btm-bnr a{
	position: absolute;
	top: 50%;
    right: 30px;
	max-width: 46%;
	transform: translateY(-50%);
}
.page .btm-bnr a .btn{
	position: absolute;
	top: 50%;
	right: 20px;
	font-size: 14px;
	transform: translateY(-50%);
}
.page .btm-bnr .row .row{
	align-items: center;
}
@media (max-width: 1100px){
	.page .btm-bnr a{
		right: 0;
	}
}
.page p.desc{
	font-size: .16rem;
	padding-right: 48px;
	padding-bottom: 24px;
}
.page p.desc small{
	color: #0071c2;
	display: inline-block;
	padding: 20px;
	background-color: #e0f1f5;
}
.page p.desc a{
	text-decoration: underline;
}
.page .price{
	background-color: #efefef;
	padding: 36px;
	margin-bottom: 36px;
}
.page .price > div{
	margin-bottom: 24px;
}
.page .price > div:last-child{
	margin-bottom: 0;
}
.page .price.wht{
	background-color: transparent;
	padding-top: 0;
	padding-bottom: 0;
}
.page .price table{
	margin-bottom: 1.8em;
}
.page .price table:last-child{
	margin-bottom: 0;
}
.page .price table th,
.page .price table td{
	text-align: left;
	font-weight: normal;
	padding: 3px 5px;
	min-width: 10em;
}
.page main ul{
	padding-left: 1.5em;
}
.page main ul li{
	list-style: disc;
}
.page main .photo{
	padding: 0 48px 48px;
}
.page main .photo img{
	width: 100%;
}
.page .price.contact th,
.page .price.contact td{
	vertical-align: top;
	padding-bottom: 1em;
}
.page .photo > .bnr{
	text-align: center;
	background-color: #ebe4d0;
	color: #000;
	padding: 36px 0;
	border: #d1c299 4px solid;
	box-shadow: 0px 0px 0px 1px #604224 inset,0px 0px 5px rgba(0,0,0,0.2);
}
.page .photo > .bnr img{
	width: 225px !important;
}
.page .photo > .bnr span{
	text-align: center;
	display: block;
}
.page .photo > .bnr span:nth-child(1){
	font-size: .2rem;
	font-weight: bold;
}
.page .photo > .bnr span:nth-child(2){
	padding: 10px 20px;
}
.page .photo > .bnr:hover{
	opacity: .8;
}
.page.rental #sec02 li{
	font-size: .18rem;
}
.page.rental #sec02 li p{
	font-size: 80%;
	margin-bottom: 1em;
}
@media (max-width: 768px){
	.page main h3{
		margin-left: 20px;
	}
	.page p.desc{
		padding: 0 20px 20px;
	}
	.page .price{
		padding: 24px;
	}
	.page .cautions{
		padding: 0 20px;
	}
	.page .btm-bnr > .row{
		margin: 0;
		padding: 24px;
	}
	.page .btm-bnr > .row > div:nth-child(1){
		margin-bottom: 24px;
	}
	.page .btm-bnr a{
		position: static;
	}
	.page .btm-bnr a .btn{
		top: 80%;
	}
	.page.salon .price th,
	.page.salon .price td{
		display: block;
	}
	.page.salon .price th{
		background-color: #fff;
	}
	.page.salon .price.contact th{
		background-color: transparent;
	}
	.page.salon .price td{
		margin-bottom: 1em;
	}
}


/*input*/
input,textarea,select{
	border: #bbb 1px solid;
	font-size: .18rem;
	color: #555;
	box-shadow: 0px 0px 0px #000;
	border-radius: 4px;
	padding: 5px;
	max-width: 90%;
}
.name input{
	max-width: 40%;
}
input[type="submit"]{
	background-color: #b291b2;
	color: #fff;
}
span.recommend{
	font-family: sans-serif;
	display: inline;
	padding: 2px 7px;
	font-size: 80%;
	color: #fff;
	background-color: red;
	border-radius: 4px;
	line-height: 1;
	margin-left: 4px;
	margin-right: 4px;
}
span.err{
	color: red;
}
small.required{
	display: inline-block;
	border-radius: 3px;
	background-color: #b291b2;
	color: #fff;
	margin-left: 3px;
	padding: 1px 4px;
}
body.err.page .main,
body.send.page .main{
	padding-top: 25%;
}
