@charset "utf-8";

/*.design-bg{ width: 1920px; height: 1080px; background: url('../design_img/10.jpg') 0 0 no-repeat; position: absolute; top: 0; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); z-index: -1; opacity: .5; background-size: 1920px; }*/

html, body,#main,#wrap 	{ margin: 0; width: 100%; height: 100%; }
html 					{ overflow-x: hidden; }
body					{ font-family: 'Shippori Mincho', serif; font-weight: 100; line-height: 1; color: #004866; background-color: #fff; position: relative; overflow-x: hidden; }
main 					{ position: relative; z-index: 1; }
img 					{ vertical-align: bottom; max-width: 100%; height: auto; }
svg 					{ vertical-align: bottom; max-width: 100%; height: auto; }
h1,h2,h3,h4,h5,p,dl,dt,dd{ margin: 0; font-weight: 100; }
.m-plus-1p 				{ font-family: 'M PLUS 1p', sans-serif; }
p 						{ line-height: 1.5em; }
hr 						{  }
figure 					{ margin: 0; }
.thumbImage 			{ height: auto; }

.pinyon 				{ font-family: 'Pinyon Script', cursive; }

#link-logo 				{ cursor: pointer; }
#loader-spinner 		{ width: 64px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); z-index: 9999 }
#loader-bg 				{ width: 100%; height: 100vh; position: fixed; background-color: #fff; z-index: 9999; }
#loader 				{ width: 100%; position: absolute; top: 50%; left: 50%; text-align: center; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
#loader div 			{ margin-bottom: 50px; }
#loader div img 		{ width: 200px; }
#loader p 				{ font-size: 2.2rem; opacity: 0; }
#loader.active p 		{ opacity: 1; }
#loader p:last-of-type 	{ margin-top: 10px; font-size: 1.4rem; letter-spacing: 1px; }
.loader .letter{
	-webkit-transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	-webkit-transition-property: visibility,opacity,-webkit-transform;
	transition-property: visibility,opacity,-webkit-transform;
	transition-property: transform,visibility,opacity;
	transition-property: transform,visibility,opacity,-webkit-transform;
	-webkit-transform: translateY(1rem);
	transform: translateY(1rem);
	will-change: transform,visibility,opacity;
	display: inline-block;
	visibility: hidden;
	opacity: 0;
}
.loader.active .letter{
	-webkit-transition-duration: .5s;
	transition-duration: .5s;
	-webkit-transition-delay: calc(1.5s + var(--delay));
	transition-delay: calc(1.5s + var(--delay));
	-webkit-transform: translateY(0);
	transform: translateY(0);
	visibility: visible;
	opacity: 1;
}


.letter-off .letter{
	-webkit-transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	-webkit-transition-property: visibility,opacity,-webkit-transform;
	transition-property: visibility,opacity,-webkit-transform;
	transition-property: transform,visibility,opacity;
	transition-property: transform,visibility,opacity,-webkit-transform;
	-webkit-transform: translateY(1rem);
	transform: translateY(1rem);
	will-change: transform,visibility,opacity;
	display: inline-block;
	visibility: hidden;
	opacity: 0;
}
.letter-on .letter{
	-webkit-transition-duration: .5s;
	transition-duration: .5s;
	-webkit-transition-delay: calc(.25s + var(--delay));
	transition-delay: calc(.25s + var(--delay));
	-webkit-transform: translateY(0);
	transform: translateY(0);
	visibility: visible;
	opacity: 1;
}

.delay1 .letter{
	-webkit-transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	-webkit-transition-property: visibility,opacity,-webkit-transform;
	transition-property: visibility,opacity,-webkit-transform;
	transition-property: transform,visibility,opacity;
	transition-property: transform,visibility,opacity,-webkit-transform;
	-webkit-transform: translateX(-1rem);
	transform: translateX(-1rem);
	will-change: transform,visibility,opacity;
	display: inline-block;
	visibility: hidden;
	opacity: 0;
}
.loadcomp .fp-completely .delay1 .letter{
	-webkit-transition-duration: .5s;
	transition-duration: .5s;
	-webkit-transition-delay: calc(2s + var(--delay));
	transition-delay: calc(2s + var(--delay));
	-webkit-transform: translateX(0);
	transform: translateX(0);
	visibility: visible;
	opacity: 1;
}

.delay2 .letter{
	-webkit-transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	-webkit-transition-property: visibility,opacity,-webkit-transform;
	transition-property: visibility,opacity,-webkit-transform;
	transition-property: transform,visibility,opacity;
	transition-property: transform,visibility,opacity,-webkit-transform;
	-webkit-transform: translateX(-1rem);
	transform: translateX(-1rem);
	will-change: transform,visibility,opacity;
	display: inline-block;
	visibility: hidden;
	opacity: 0;
}
.loadcomp .fp-completely .delay2 .letter{
	-webkit-transition-duration: .5s;
	transition-duration: .5s;
	-webkit-transition-delay: calc(2s + var(--delay));
	transition-delay: calc(2s + var(--delay));
	-webkit-transform: translateX(0);
	transform: translateX(0);
	visibility: visible;
	opacity: 1;
}

.delay3 .letter{
	-webkit-transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	-webkit-transition-property: visibility,opacity,-webkit-transform;
	transition-property: visibility,opacity,-webkit-transform;
	transition-property: transform,visibility,opacity;
	transition-property: transform,visibility,opacity,-webkit-transform;
	-webkit-transform: translateX(-1rem);
	transform: translateX(-1rem);
	will-change: transform,visibility,opacity;
	display: inline-block;
	visibility: hidden;
	opacity: 0;
}
.active .delay3 .letter{
	-webkit-transition-duration: .5s;
	transition-duration: .5s;
	-webkit-transition-delay: calc(1s + var(--delay));
	transition-delay: calc(1s + var(--delay));
	-webkit-transform: translateX(0);
	transform: translateX(0);
	visibility: visible;
	opacity: 1;
}

.delay4 .letter{
	-webkit-transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	transition: all 0s cubic-bezier(.215,.61,.355,1) .5s;
	-webkit-transition-property: visibility,opacity,-webkit-transform;
	transition-property: visibility,opacity,-webkit-transform;
	transition-property: transform,visibility,opacity;
	transition-property: transform,visibility,opacity,-webkit-transform;
	-webkit-transform: translateX(-1rem);
	transform: translateX(-1rem);
	will-change: transform,visibility,opacity;
	display: inline-block;
	visibility: hidden;
	opacity: 0;
}
.active .delay4 .letter{
	-webkit-transition-duration: .5s;
	transition-duration: .5s;
	-webkit-transition-delay: calc(2s + var(--delay));
	transition-delay: calc(2s + var(--delay));
	-webkit-transform: translateX(0);
	transform: translateX(0);
	visibility: visible;
	opacity: 1;
}

@-webkit-keyframes pathmove{
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:80px;
		opacity: 1;
	}
	100%{
		height:20px;
		top:100px;
		opacity: 0;
	}
}

@keyframes pathmove{
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:80px;
		opacity: 1;
	}
	100%{
		height:20px;
		top:100px;
		opacity: 0;
	}
}

@-webkit-keyframes arrowmove{
	0%{bottom:.5%;}
	50%{bottom:2.5%;}
	100%{bottom:.5%;}
}

@keyframes arrowmove{
	0%{bottom:.5%;}
	50%{bottom:2.5%;}
	100%{bottom:.5%;}
}

@-webkit-keyframes arrowmovesp{
	0%{bottom:55px;}
	50%{bottom:65px;}
	100%{bottom:55px;}
}

@keyframes arrowmovesp{
	0%{bottom:55px;}
	50%{bottom:65px;}
	100%{bottom:55px;}
}

@-webkit-keyframes arrow-anime{
	0%{-webkit-transform: translate(0, -50%);transform: translate(0, -50%);}
	50%{-webkit-transform: translate(5px, -50%);transform: translate(5px, -50%);}
	100%{-webkit-transform: translate(0, -50%);transform: translate(0, -50%);}
}

@keyframes arrow-anime{
	0%{-webkit-transform: translate(0, -50%);transform: translate(0, -50%);}
	50%{-webkit-transform: translate(5px, -50%);transform: translate(5px, -50%);}
	100%{-webkit-transform: translate(0, -50%);transform: translate(0, -50%);}
}


@-webkit-keyframes img-wrap {
	100% {
		-webkit-transform: translateY(100%);
		transform: translateY(100%);
	}
}


@keyframes img-wrap {
	100% {
		-webkit-transform: translateY(100%);
		transform: translateY(100%);
	}
}
#loader div 		{ overflow: hidden; position: relative; }
#loader div:before 	{ background: #fff; bottom: 0; content: ''; left: 0; pointer-events: none; position: absolute; right: 0; top: 0; z-index: 1; }
#loader.active div:before{ -webkit-animation: img-wrap 1.5s cubic-bezier(.4, 0, .2, 1) forwards; animation: img-wrap 1.5s cubic-bezier(.4, 0, .2, 1) forwards; }

.animation .fadein 	{ opacity: 0; -webkit-transition: 0s; transition: 0s; -webkit-transition-delay: 0s; transition-delay: 0s; }
.loadcomp .animation.active .fadein{ opacity: 1; -webkit-transition: .5s; transition: .5s; -webkit-transition-delay: .5s; transition-delay: .5s; }

.animation .fadein2 { opacity: 0; -webkit-transition: 0s; transition: 0s; -webkit-transition-delay: 0s; transition-delay: 0s; }
.loadcomp .animation.active .fadein2{ opacity: 1; -webkit-transition: .5s; transition: .5s; -webkit-transition-delay: 1s; transition-delay: 1s; }

.animation .fadeInUp{ opacity: 0; -webkit-transform: translateY(20px); transform: translateY(20px); -webkit-transition: 1s; transition: 1s; -webkit-transition-delay: 0s; transition-delay: 0s; }
.animation.active .fadeInUp{ opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); -webkit-transition-delay: .5s; transition-delay: .5s; }

.animation .fadeInUp2{ opacity: 0; -webkit-transform: translateY(20px); transform: translateY(20px); -webkit-transition: 1s; transition: 1s; -webkit-transition-delay: 1.5s; transition-delay: 1.5s; }
.animation.fp-completely .fadeInUp2{ opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }

/*.animation .slideInB 	{ opacity: 0; -webkit-transform: translateY(-100%); transform: translateY(-100%); -webkit-transition: 1s; transition: 1s; -webkit-transition-delay: 1s; transition-delay: 1s; }
.animation.docSlider-current .slideInB{ opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }*/

/*.animation .slideInT 	{ opacity: 0; -webkit-transform: translateY(100%); transform: translateY(100%); -webkit-transition: 1s; transition: 1s; -webkit-transition-delay: 1s; transition-delay: 1s; }
.animation.docSlider-current .slideInT{ opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }*/

.animation .fadeInS 	{ opacity: 0; -webkit-transform: scale(0,0); transform: scale(0,0); -webkit-transition: 0s; transition: 0s; -webkit-transition-delay: 0s; transition-delay: 0s; }
.loadcomp .animation.active .fadeInS{ opacity: 1; -webkit-transform: scale(1,1); transform: scale(1,1); -webkit-transition: .5s; transition: .5s; -webkit-transition-delay: .5s; transition-delay: .5s; }


/*#wrap 					{ display: none; }*/

#fp-nav ul li:nth-of-type(-n+4){ display: none; }
.fp-viewing-0 #fp-nav,.fp-viewing-1 #fp-nav,.fp-viewing-2 #fp-nav,.fp-viewing-3 #fp-nav{ display: none; }

/*.fp-viewing-0 #fullpage,.fp-viewing-1 #fullpage,.fp-viewing-2 #fullpage,.fp-viewing-3 #fullpage,.fp-viewing-4 #fullpage{ -webkit-transition-delay: 2s!important; transition-delay: 2s!important; }*/
#fullpage{ -webkit-transition-delay: 0s!important; transition-delay: 0s!important; }
.scrolldown0 			{ display: none; }
.fp-viewing-0 .scrolldown0,.fp-viewing-1 .scrolldown0,.fp-viewing-2 .scrolldown0,.fp-viewing-3 .scrolldown0{ display: block; }
/*.backG .textBox 		{ opacity: 0; -webkit-transition: 1s; transition: 1s; -webkit-transition-delay: 0s; transition-delay: 0s; }
.backG.fp-completely .textBox{ opacity: 1; -webkit-transition: 0s; transition: 0s; }*/

@media print, screen and (min-width: 751px) {
.sp 					{ display: none!important; }
body 					{ font-size: 14px; }
.master 				{ width: 90%; max-width: 1200px; margin: 0 auto; }
a 						{ -webkit-transition: .2s; transition: .2s; }
a:hover 				{ opacity: .6; }

#fp-nav.right 			{ right: 17px; z-index: 8; }
#fp-nav ul li a 			{ width: 2px; height: 30px; margin: 10px 0; padding: 0; border-radius: 0; opacity: 1; background-color: #b3b3b3; display: block; }
#fp-nav ul li a.active 			{ background-color: #004866; }
/*.docSlider-pager 		{ right: 55px; }
.docSlider-button 		{ width: 2px; height: 40px; margin: 13px 0; padding: 0; border-radius: 0; opacity: 1; background-color: #b3b3b3; }
.docSlider-button.selected{ background-color: #004866; }*/

#header .netTelArea{ -webkit-transform: scale(.85); transform: scale(.85); }
#header svg,#main #mv1 .textBox p,#main #mv2 .textBox p,#main #mv3 .textBox p,#main #mv4 .textBox p{ -webkit-transform: scale(.75); transform: scale(.75); }
.drawer-open .drawer-nav .inner,#concept .master,#about .master,#how_to .master,#plan .master,#gallery .master,#access .master,#loader{ -webkit-transform: translate(-50%,-50%) scale(.75)!importat; transform: translate(-50%,-50%) scale(.75)!important; }

.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before{ background-color: #000; }
.drawer-hamburger-icon 	{ background-color: transparent; }
.drawer-hamburger 		{ padding: 0 8px; top: 45px; right: 60px; z-index: 99999; }
.drawer-hamburger .menu { font-size: .8rem; font-weight: 100; display: block; position: absolute; bottom: -5px; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); color: #000; }
.drawer-hamburger-icon 	{  }
.drawer-open .drawer-overlay{ display: none; }
.drawer-nav 			{ top: 0; left: 0; background-color: transparent; z-index: 10001; display: none; }
.drawer-open .drawer-nav{ top: 0; right: 0; display: block; background-color: #ccc; }
.drawer-open .drawer-nav .inner{ width: 100%; max-width: 600px; margin: 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.drawer-menu li a 		{  }
.drawer-menu>li:first-of-type{ padding-top: 50px; }
.drawer-menu>li:last-of-type{ padding-bottom: 60px; }
#header .drawer-menu-item{ margin: 10px 0; padding: 15px 0; color: #004866; text-align: left; font-weight: 100; display: inline-block; font-size: 1.5rem; }
#header .en{ margin-top: 10px; display: block; font-size: 12px; letter-spacing: 2px;}
#header .drawer-menu-item:hover{ opacity: .6; text-decoration: none; }
.drawer-nav{ height: 100vh; background-color: transparent; -webkit-transition: .5s; transition: .5s; }
.drawer-open .drawer-hamburger-icon:after, .drawer-open .drawer-hamburger-icon:before{ top: 0; }
.drawer-hamburger-icon:before{ top: -6px; }
.drawer-hamburger-icon:after{ width: 50%; top: 6px; }
.drawer-open .drawer-hamburger-icon:after{ width: 100%; }
.drawer-open .drawer-nav .inner .logo{ margin-right: 110px; -ms-flex-item-align: center; align-self: center; }
.drawer-open .drawer-nav .inner .instagram{ width: 100%; margin-top: 80px; text-align: center; }

#header 				{ position: fixed; top: 0; left: 0; z-index: 9; background-color: transparent; }
#header .logoArea 		{ margin: 43px 0 0 65px; }

#header .netTelArea 	{ position: fixed; top: 54px; right: 120px; display: -webkit-box; display: -ms-flexbox; display: flex; display: none; opacity: 1; z-index: 99999; }
.drawer-open #header .netTelArea{ display: -webkit-box; display: -ms-flexbox; display: flex; }
.fp-viewing-4 #header .netTelArea,.fp-viewing-5 #header .netTelArea,.fp-viewing-6 #header .netTelArea,.fp-viewing-7 #header .netTelArea,.fp-viewing-8 #header .netTelArea,.fp-viewing-9 #header .netTelArea{ display: -webkit-box; display: -ms-flexbox; display: flex; }
#header .netTelArea a 	{ display: block; }
#header .netTelArea .net{ width: 180px; height: 48px; margin-right: 20px; background: url('../img/net-btn-bg.png') 50% 50% no-repeat; background-size: 180px; text-align: center; line-height: 48px; }
#header .netTelArea .net span{ color: #fff; display: inline-block; }
#header .netTelArea .net span{ padding-left: 24px; background: url('../img/net-icon_pc.svg') 0 50% no-repeat; color: #fff; display: inline-block; }
#header .netTelArea .tel{ padding: 5px 0; text-align: center; font-size: .84rem; }
#header .netTelArea .tel .num{ margin-top: 7px; padding-left: 18px; background: url('../img/tel-icon_pc.svg') 0 50% no-repeat; display: block; font-size: 1.25rem; letter-spacing: .1rem }

.fp-viewing-0 #main,.fp-viewing-1 #main,.fp-viewing-2 #main,.fp-viewing-3 #main{ background: url('../img/background-g_pc.png') 50% 50% no-repeat; -webkit-transition: 3s; transition: 3s; -webkit-transition-delay: 0s; transition-delay: 0s; background-size: cover; }
.fp-viewing-4 #main,.fp-viewing-5 #main,.fp-viewing-6 #main,.fp-viewing-7 #main,.fp-viewing-8 #main,.fp-viewing-9 #main{ background: url('../img/background-w_pc.png') 50% 50% no-repeat; -webkit-transition: 3s; transition: 3s; -webkit-transition-delay: 0s; transition-delay: 0s; background-size: cover; }

#main .backG 			{ color: #fff; }
#main .backG .inner 	{ width: 100%; height: 100%; position: relative; overflow: hidden; }
#main .backG .inner .bg { width: 100%; height: 100vh; top: 0; left: 0; position: absolute; z-index: -1; }
#main .backG .inner .bg img{ position: absolute; }
#main .backG .textBox{ font-weight: 100; position: absolute; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); text-align: left; white-space: nowrap; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; z-index: 3; }
#main .backG .textBox .ja{ font-size: 1.7rem; letter-spacing: .15rem; }
#main .backG .textBox .en{ font-family: 'Pinyon Script', cursive; font-size: 1.5rem; text-align: right; }

.scrolldown0 			{ position:absolute; right: 75px; bottom: 50px; height: 80px; z-index: 5; }
.scrolldown0 span 		{ position: absolute; right: -20px;top: 40px; }
.scrolldown0::after 	{ content: ''; position: absolute; top: 0; width: 1px; height: 30px; background: #eee; -webkit-animation: pathmove 1.4s ease-in-out infinite; animation: pathmove 1.4s ease-in-out infinite; opacity:0; }

#main #mv1 .box1 		{ top: 37%; right: 30%; }
#main #mv1 .box2 		{ top: 57%; left: 33.5%; }
#main #mv1 .bg img:nth-of-type(1){ width: 1014px; top: -750px; left: -270px; z-index: 2; }
#main #mv1 .bg img:nth-of-type(2){ width: 559px; top: 170px; left: 32.5%; z-index: 1; }
#main #mv1 .bg img:nth-of-type(3){ width: 615px; bottom: -200px; left: -50px; z-index: 3; }
#main #mv1 .bg img:nth-of-type(4){ width: 786px; bottom: -400px; right: -240px; z-index: 2; }

#main #mv2 .box1 		{ top: 50%; left: 48.5%; }
#main #mv2 .bg img:nth-of-type(1){ width: 884px; bottom: -600px; left: -250px; z-index: 1; }
#main #mv2 .bg img:nth-of-type(2){ width: 544px; top: 0; right: 300px; z-index: 3; }
#main #mv2 .bg img:nth-of-type(3){ width: 382px; top: 350px; right: 350px; z-index: 2; }
#main #mv2 .bg img:nth-of-type(4){ width: 431px; top: 190px; right: -170px; z-index: 1; }

#main #mv3 .box1 		{ top: 50%; right: 33%; }
#main #mv3 .box2 		{ top: 53%; left: 38.3%; }
#main #mv3 .bg img:nth-of-type(1){ width: 1312px; top: -590px; left: -435px; z-index: 1; }
#main #mv3 .bg img:nth-of-type(2){ width: 511px; bottom: -150px; left: -97px; z-index: 2; }
#main #mv3 .bg img:nth-of-type(3){ width: 515px; top: 360px; right: 250px; z-index: 3; }
#main #mv3 .bg img:nth-of-type(4){ width: 432px; top: 200px; right: -80px; z-index: 4; }

#main #mv4 .box1 		{ top: 60%; left: 48%; }
#main #mv4 .box1 .en 	{ margin-top: 150px; }
#main #mv4 .bg img:nth-of-type(1){ width: 357px; top: 10px; left: 450px; z-index: 2; }
#main #mv4 .bg img:nth-of-type(2){ width: 371px; top: -170px; left: 50%; z-index: 1; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); }
#main #mv4 .bg img:nth-of-type(3){ width: 532px; bottom: 100px; left: 50%; z-index: 2; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); }
#main #mv4 .bg img:nth-of-type(4){ width: 741px; bottom: -450px; right: 120px; z-index: 1; }

.fp-viewing-4 .drawer-hamburger .menu,.fp-viewing-5 .drawer-hamburger .menu,.fp-viewing-6 .drawer-hamburger .menu,.fp-viewing-7 .drawer-hamburger .menu,.fp-viewing-8 .drawer-hamburger .menu,.fp-viewing-9 .drawer-hamburger .menu{ color: #004866; }

	.fp-viewing-4 .drawer-hamburger-icon:after,.fp-viewing-4 .drawer-hamburger-icon:before,.fp-viewing-5 .drawer-hamburger-icon:after,.fp-viewing-5 .drawer-hamburger-icon:before,.fp-viewing-6 .drawer-hamburger-icon:after,.fp-viewing-6 .drawer-hamburger-icon:before,.fp-viewing-7 .drawer-hamburger-icon:after,.fp-viewing-7 .drawer-hamburger-icon:before,.fp-viewing-8 .drawer-hamburger-icon:after,.fp-viewing-8 .drawer-hamburger-icon:before,.fp-viewing-9 .drawer-hamburger-icon:after,.fp-viewing-9 .drawer-hamburger-icon:before{ background-color: #004866; }

	.fp-viewing-4 #header .logo .d,.fp-viewing-5 #header .logo .d,.fp-viewing-6 #header .logo .d,.fp-viewing-7 #header .logo .d,.fp-viewing-8 #header .logo .d,.fp-viewing-9 #header .logo .d{ fill: #004866; }
	
.backW .scrolldown 		{ width: 52px; position:absolute; bottom: 0; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); -webkit-animation: arrowmove 1s ease-in-out infinite; animation: arrowmove 1s ease-in-out infinite; z-index: 5; }

#main .backW .inner 	{ width: 100%; height: 100vh; position: relative; /*overflow: hidden;*/ }
#main .backW .inner .bg { width: 100%; height: 100vh; top: 0; left: 0; position: absolute; z-index: -5; }
#main .backW .inner .bg img{ position: absolute;}

#main .backW .title{ opacity: 0; text-align: left; font-weight: 100; white-space: nowrap; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-weight: 100; -webkit-transition: 1s; transition: 1s; -webkit-transition-delay: 0s; transition-delay: 0s; }
#main .backW.active .title{ opacity: 1; -webkit-transition-delay: .5s; transition-delay: .5s; }

/*.animation .fadeInUp{ opacity: 0; -webkit-transform: translateY(20px); transform: translateY(20px); -webkit-transition: 1s; transition: 1s; -webkit-transition-delay: 0s; transition-delay: 0s; }
.animation.active .fadeInUp{ opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); -webkit-transition-delay: 2.5s; transition-delay: 2.5s; }*/

#main .backW .title .ja { font-size: 1.8rem; display: block; letter-spacing: .25rem; }
#main .backW .title .en { margin-right: 20px; font-family: 'Pinyon Script', cursive; font-size: 1.5rem; text-align: right; display: block; }

#main #concept 			{  }

#main #concept .master 	{ max-width: 704px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
#main #concept .bg img:nth-of-type(1){ width: 688px; bottom: 0; right: 100px; z-index: 1; }
#main #concept .logo 	{ text-align: center; }
#main #concept .logo h2 { margin-top: 55px; font-size: 2.05rem; font-weight: 100; }
#main #concept .logo h2 span{ margin-top: 15px; display: block; font-size: 1rem; }
#main #concept .textBox { margin-top: 25px; }
#main #concept .textBox p{ text-align: justify; font-size: 1.2rem; line-height: 2.2; }
#main #concept .openBox { margin-top: 35px; text-align: center; }
#main #concept .openBox p{ padding: 11px 14px; font-size: 1.4rem; display: inline-block;border: 1px solid #004866; }

#main #about 			{  }
#main #about .master 	{ max-width: 704px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
#main #about .image 	{ width: 800px; height: 100vh; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); position: relative; z-index: -1; }
#main #about .image img { position: absolute; -webkit-transform: scale(.75); transform: scale(.75); }
#main #about .image img:nth-of-type(1){ width: 642px; top: 00px; left: -475px; }
#main #about .image img:nth-of-type(2){ width: 497px; bottom: -10px; right: -360px; }
#main #about .bg img:nth-of-type(1){ width: 494px; bottom: 0; right: 70px; z-index: 1; }
#main #about .title 	{ margin: 0 auto; }
#main #about .textBox 	{ margin-top: 90px; }
#main #about .textBox h3{ margin-bottom: 20px; font-size: 1.75rem; line-height: 1.5; }
#main #about .textBox p{ text-align: justify; font-size: 1.2rem; line-height: 2.2; }

#main #how_to .master 	{ max-width: 1300px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
#main #how_to .bg img:nth-of-type(1){ width: 540px; bottom: 0; right: 70px; z-index: 1; }
#main #how_to .slider .slider-item{ width: 100%; max-width: 1300px; display: -webkit-box; display: -ms-flexbox; display: flex; }
#main #how_to .slider .slider-item>figure{ width: 50.231%; }
#main #how_to .slider .slider-item>figure img{ max-width: 100%; }
#main #how_to .slider .slider-item>div{ width: 43.5%; margin-left: auto; padding-right: 75px; }
#main #how_to .title 	{ margin: 9px auto 0; padding: 0 70px 0 50px; }
#main #how_to .titleArea{ display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; overflow: hidden; }
#main #how_to .titleArea:before{ content: ''; width: 162px; height: 7px; display: block; background: url('../img/how_to-bd1.svg') 100% 0 no-repeat; }
#main #how_to .titleArea:before{ -webkit-transform: translate(-85%,0); transform: translate(-85%,0); -webkit-transition: 1s; transition: 1s; }
#main #how_to.fp-completely .titleArea:before{ -webkit-transform: translate(0,0); transform: translate(0,0); -webkit-transition: 1s; transition: 1s; }
#main #how_to .titleArea:after{ content: ''; width: 162px; height: 7px; display: block; background: url('../img/how_to-bd2.svg') 0 0 no-repeat; }
#main #how_to .titleArea:after{ -webkit-transform: translate(85%,0); transform: translate(85%,0); -webkit-transition: 1s; transition: 1s; }
#main #how_to.fp-completely .titleArea:after{ -webkit-transform: translate(0,0); transform: translate(0,0); -webkit-transition: 1s; transition: 1s; }

#main #how_to .title>span{  }
#main #how_to .slider .slider-item>div h3{ margin-top: 70px; font-size: 1.5rem; line-height: 1.5; }
#main #how_to .slider .slider-item>div .textBox{ margin-top: 20px; }
#main #how_to .slider .slider-item>div .textBox p{ font-size: 1.2rem; text-align: justify; line-height: 2; }
#main #how_to .slider .slider-item>div .textBox p.mt{ margin-top: 2rem; }
#main #how_to .slider .slick-prev{ width: 22px; height: 83px; background: url('../img/prev-arrow.svg') 0 0 no-repeat; left: -50px; -webkit-animation: arrow-anime .8s ease-in-out infinite; animation: arrow-anime .8s ease-in-out infinite; }
#main #how_to .slider .slick-prev:before{ content: ''; }
#main #how_to .slider .slick-next{ width: 22px; height: 83px; background: url('../img/next-arrow.svg') 0 0 no-repeat; right: -50px; -webkit-animation: arrow-anime .8s ease-in-out infinite; animation: arrow-anime .8s ease-in-out infinite; }
#main #how_to .slider .slick-next:before{ content: ''; }
#main #how_to .slider .slick-disabled{ display: none!important; }

#main #plan 			{  }
#main #plan .master 	{ max-width: 706px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
#main #plan .title 	{ margin: 0 auto; }
#main #plan .bg img:nth-of-type(1){ width: 631px; bottom: 0; right: 40px; z-index: 1; }
#main #plan h3 			{ font-size: 1.3rem; font-weight: 100; }
#main #plan h3>span 	{ border-bottom: 1px solid #004866; }
#main #plan .textBox 	{ margin-top: 90px; text-align: center; }
#main #plan .textBox p{ margin-top: 10px; font-size: 1.65rem; line-height: 2.2; }
#main #plan .textBox p>span{ font-size: 1.2rem; line-height: 2.2; }
#main #plan .lineBox 	{ margin-top: 35px; text-align: center; }
#main #plan .lineBox .box{ width: 706px; height: 178px; margin-top: 30px; padding: 25px 0 0; background: url('../img/plan-line_pc.png') 0 0 no-repeat; background-size: 706px; color: #fff; }
#main #plan .lineBox .box h4{ font-size: 1.7rem; font-weight: 100; letter-spacing: 1px;}
#main #plan .lineBox .box h4>span{ font-size: 1.05rem; }
#main #plan .lineBox .box p{ font-size: 1rem; }
#main #plan .lineBox .box p.as{ margin-top: 5px; font-size: .9rem; }
#main #plan .lineBox .box div{ margin: 5px 0; }
#main #plan .lineBox>p 	{ margin-top: 10px; font-size: .85rem; }

#main #gallery 			{  }
#main #gallery .master 	{ max-width: 822px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
#main #gallery .master .sliderBox{ position: relative; }
#main #gallery .title 	{ position: absolute; top: 0; right: -100px; }
#main #gallery .bg img:nth-of-type(1){ width: 696px; bottom: 0; right: 100px; z-index: 1; }

#main #gallery .gallerySlider .slick-img{ width: 822px; height: 553px; }
#main #gallery .thumbnail{ margin-top: 20px; }
#main #gallery .thumbnail .thumbnail-img{ width: 102px; height: 102px; margin-right: 20px; }

#main #access 			{  }
#main #access .master 	{ max-width: 1090px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); display: -webkit-box; display: -ms-flexbox; display: flex; }
#main #access .title 	{ margin: 0 auto; }
#main #access .bg img:nth-of-type(1){ width: 718px; bottom: 0; right: 60px; z-index: 1; }
#main #access .master>div:nth-of-type(1){ width: 40%; }
#main #access .master>div:nth-of-type(1) h3{ margin: 100px 0 30px; letter-spacing: .15rem; }
#main #access .master>div:nth-of-type(1) h3 span{ padding-bottom: 12px; font-size: 1.2rem; border-bottom: 1px solid #004866; display: inline-block; }
#main #access .master>div:nth-of-type(1) p{ font-size: 1.1rem; line-height: 1.9; letter-spacing: .1rem; }
#main #access .master>div:nth-of-type(1) p.sText{ font-size: .9rem; letter-spacing: 0; }
#main #access .master>div:nth-of-type(1) p.sText.mt{ margin-top: 20px; }
#main #access .master>div:nth-of-type(2){ width: 55%; margin-left: auto; padding-right: 20px; }
#main #access .master>div:nth-of-type(2) .bmap{ margin-bottom: 5px; font-size: .6rem; text-align: right; }
#main #access .master>div:nth-of-type(2) .bmap>span{ padding-left: 15px; background: url('../img/bmap-icon.svg') 0 50% no-repeat; }
#main #access .master>div:nth-of-type(2) .bmap a{ text-decoration: underline; }
#main #access .master>div:nth-of-type(2) .googlemap iframe{ width: 100%; height: 400px; }
#main #access .master>div:nth-of-type(2) .info{ margin-top: 5px; letter-spacing: .1rem; }
#main #access .copyright{ width: 100%; padding: 7px 0; font-size: .75rem; text-align: center; background-color: #001e2c; position: absolute; bottom: 0; left: 0; color: #fff; }
}


@media screen and (max-width: 1345px) and (min-width: 415px) {

}


@media screen and (max-width: 750px) {
.pc 					{ display: none!important; }
body 					{ font-weight: 100; font-size: 14px; }
.drawer-open body 		{ overflow: hidden!important; }
.master 				{ width: 90%; margin: 0 auto; }

#loader-spinner 		{ width: 32px; }
#loader div 			{ margin-bottom: 30px; }
#loader div img 		{ width: 100px; }
#loader p 				{ font-size: 1.3rem; }
#loader p:last-of-type 	{ margin-top: 0px; font-size: .8rem; }

/*.docSlider-button 		{ width: 2px; height: 30px; margin: 10px 0; padding: 0; border-radius: 0; opacity: 1; background-color: #b3b3b3; }
.docSlider-button.selected{ background-color: #004866; }*/

#fp-nav.right 			{ right: 17px; z-index: 8; }
#fp-nav ul li a 			{ width: 2px; height: 30px; margin: 10px 0; padding: 0; border-radius: 0; opacity: 1; background-color: #b3b3b3; display: block; }
#fp-nav ul li a.active 			{ background-color: #004866; }

.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before{ background-color: #000; }
.drawer-hamburger-icon 	{ background-color: transparent; }
.drawer-hamburger 		{ width: 40px; padding: 0 8px; top: 5px; right: 18px; z-index: 99999; }
.drawer-hamburger .menu { font-size: .6rem; font-weight: 100; display: block; position: absolute; bottom: 0px; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); color: #000; }
.drawer-hamburger-icon 	{  }
.drawer-open .drawer-overlay{ display: none; }
.drawer-nav 			{ top: 0; left: 0; background-color: transparent; z-index: 10001; display: none; }
.drawer-open .drawer-nav{ top: 0; right: 0; display: block; background-color: #ccc; }
.drawer-open .drawer-nav .inner{ width: 100%; max-width: 600px; margin: 0 auto; text-align: center; }
.drawer-open .drawer-nav .inner .logo{ margin-top: 35px; }
.drawer-open .drawer-nav .inner ul{ margin-top: 20px; }
.drawer-menu li a 		{  }
.drawer-menu>li:first-of-type{ padding-top: 50px; }
.drawer-menu>li:last-of-type{ padding-bottom: 60px; }
#header .drawer-menu-item{ margin: 0 0; padding: 8px 0; color: #004866; font-weight: 100; display: block; font-size: .95rem; letter-spacing: .1rem; }
#header .en{ margin-top: 7px; display: block; font-size: .4rem; letter-spacing: 0; }
#header .drawer-menu-item:hover{ opacity: .6; text-decoration: none; }
.drawer-nav{ height: 100vh; background-color: transparent; -webkit-transition: .5s; transition: .5s; }
.drawer-open .drawer-hamburger-icon:after, .drawer-open .drawer-hamburger-icon:before{ top: 0; }
.drawer-hamburger-icon:before{ top: -4px; }
.drawer-hamburger-icon:after{ width: 50%; top: 4px; }
.drawer-open .drawer-hamburger-icon:after{ width: 100%; }
.drawer-open .drawer-nav .inner .logo img{ width: 110px; }
.drawer-open .drawer-nav .inner .instagram{ width: 100%; margin-top: 25px; text-align: center; }
.drawer-open .drawer-nav .inner .instagram:after{ content: ''; width: 100%; height: 60px; display: block; }
.drawer-open .drawer-nav .inner .instagram img{ width: 30px; }
.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before{ height: 1px; }
.drawer-open .drawer-hamburger-icon:after, .drawer-open .drawer-hamburger-icon:before{ background-color: #004866; }
.drawer-open .drawer-hamburger .menu{ display: none; }

#header 				{ position: fixed; top: 0; left: 0; z-index: 99; background-color: transparent; }
#header .logoArea 		{ margin: 20px 0 0 20px; }
#header .logoArea .logo { width: 120px; }

#header .netTelArea 	{ width: 100%; position: fixed; bottom: 0; left: 0; display: -webkit-box; display: -ms-flexbox; display: flex; display: none; opacity: 1; }
.fp-viewing-4 #header .netTelArea,.fp-viewing-5 #header .netTelArea,.fp-viewing-6 #header .netTelArea,.fp-viewing-7 #header .netTelArea,.fp-viewing-8 #header .netTelArea,.fp-viewing-9 #header .netTelArea{ display: -webkit-box; display: -ms-flexbox; display: flex; }
.drawer-open #header .netTelArea{ display: -webkit-box!important; display: -ms-flexbox!important; display: flex!important; z-index: 99999; }
#header .netTelArea 	{ background: url('../img/net-tel-bg.png') 50% 50% no-repeat; background-size: cover; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
#header .netTelArea a 	{ width: 50%; height: 50px; line-height: 50px; display: block; }
#header .netTelArea .net{ /*background: url('../img/net-btn-bg.png') 50% 50% no-repeat; background-size: 180px;*/ text-align: center; -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; }
#header .netTelArea .net span{ color: #fff; display: inline-block; }
#header .netTelArea .net span{ padding-left: 24px; background: url('../img/net-icon_pc.svg') 0 50% no-repeat; color: #fff; display: inline-block; font-size: .9rem; }
#header .netTelArea .tel{ text-align: center; -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; text-align: center; }
#header .netTelArea .tel span{ padding-left: 20px; background: url('../img/tel-icon_sp.svg') 0 56% no-repeat; background-size: 13px; color: #fff; display: inline-block; font-size: .9rem; display: inline-block; color: #fff; }
#header .netTelArea .tel span:after{ content: '/'; position: absolute; top: 0; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); }

.fp-viewing-0 #main,.fp-viewing-1 #main,.fp-viewing-2 #main,.fp-viewing-3 #main{ background: url('../img/background-g_sp.png') 50% 50% no-repeat; -webkit-transition: .5s; transition: .5s; background-size: cover; }
.fp-viewing-4 #main,.fp-viewing-5 #main,.fp-viewing-6 #main,.fp-viewing-7 #main,.fp-viewing-8 #main,.fp-viewing-9 #main{ background: url('../img/background-w_sp.png') 50% 50% no-repeat; -webkit-transition: .5s; transition: .5s; background-size: cover; }

#main .backG 			{ color: #fff; }
#main .backG .inner 	{ width: 100%; height: 100vh; height: 100dvh; position: relative; overflow: hidden; }
#main .backG .inner .bg { width: 100%; height: 100vh; height: 100dvh; top: 0; left: 0; position: absolute; z-index: -1; }
#main .backG .inner .bg img{ position: absolute; }
#main .backG .textBox{ position: absolute; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); text-align: left; white-space: nowrap; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; z-index: 3; font-weight: 100; }
#main .backG .textBox .ja{ font-size: 1.2rem; letter-spacing: .1rem; }
#main .backG .textBox .en{ font-family: 'Pinyon Script', cursive; font-size: .8rem; text-align: right; }

.scrolldown0 			{ position:absolute; right: 35px; bottom: 50px; height: 80px; z-index: 5; }
.scrolldown0 span 		{ position: absolute; right: -15px; top: 40px; }
.scrolldown0 span img 	{ width: 6px; }
.scrolldown0::after 	{ content: ''; position: absolute; top: 0; width: 1px; height: 30px; background: #eee; -webkit-animation: pathmove 1.4s ease-in-out infinite; animation: pathmove 1.4s ease-in-out infinite; opacity:0; }

#main #mv1 .box1 		{ top: 36%; left: 78%; }
#main #mv1 .box2 		{ top: 55%; left: 22%; }
#main #mv1 .bg img:nth-of-type(1){ top: -300px; left: -30px; z-index: 2; }
#main #mv1 .bg img:nth-of-type(2){ width: 350px; top: 110px; left: -90px; z-index: 1; }
#main #mv1 .bg img:nth-of-type(3){ width: 270px; top: 490px; left: -50px; z-index: 3; }
#main #mv1 .bg img:nth-of-type(4){ width: 1046px; top: 550px; right: -85px; z-index: 2; }

#main #mv2 .box1 		{ top: 50%; left: 50%; }
#main #mv2 .bg img:nth-of-type(1){ width: 1179px; top: 570px; left: -110px; z-index: 1; }
#main #mv2 .bg img:nth-of-type(2){ width: 350px; top: 0; right: -78px; z-index: 1; }
#main #mv2 .bg img:nth-of-type(3){ width: 160px; top: 450px; right: 10px; z-index: 2; }
#main #mv2 .bg img:nth-of-type(4){ width: 190px; top: 230px; right: -70px; z-index: 1; }

#main #mv3 .en 			{ margin-top: 40px; }
#main #mv3 .box1 		{ top: 50%; left: 78%; }
#main #mv3 .box2 		{ top: 58%; left: 22%; }
#main #mv3 .bg img:nth-of-type(1){ width: 600px; max-width: 1000px; top: -260px; left: -200px; z-index: 1; }
#main #mv3 .bg img:nth-of-type(2){ width: 270px; top: 520px; left: -30px; z-index: 4; }
#main #mv3 .bg img:nth-of-type(3){ width: 360px; top: 320px; right: -60px; z-index: 3; }
#main #mv3 .bg img:nth-of-type(4){ width: 135px; top: 80px; right: -50px; z-index: 4; }

#main #mv4 .box1 		{ top: 50%; left: 50%; left: calc(50% - 20px); }
#main #mv4 .box1 .en 	{ margin-top: 100px; }
#main #mv4 .bg img:nth-of-type(1){ width: 200px; top: 40px; left: -30px; z-index: 2; }
#main #mv4 .bg img:nth-of-type(2){ width: 300px; top: -160px; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); z-index: 1; }
#main #mv4 .bg img:nth-of-type(3){ width: 290px; top: 370px; left: 10%; z-index: 2; }
#main #mv4 .bg img:nth-of-type(4){ width: 988px; top: 500px; right: 0px; z-index: 1; }



.fp-viewing-4 .drawer-hamburger .menu,.fp-viewing-5 .drawer-hamburger .menu,.fp-viewing-6 .drawer-hamburger .menu,.fp-viewing-7 .drawer-hamburger .menu,.fp-viewing-8 .drawer-hamburger .menu,.fp-viewing-9 .drawer-hamburger .menu{ color: #004866; }

.fp-viewing-4 .drawer-hamburger-icon:after,.fp-viewing-4 .drawer-hamburger-icon:before,.fp-viewing-5 .drawer-hamburger-icon:after,.fp-viewing-5 .drawer-hamburger-icon:before,.fp-viewing-6 .drawer-hamburger-icon:after,.fp-viewing-6 .drawer-hamburger-icon:before,.fp-viewing-7 .drawer-hamburger-icon:after,.fp-viewing-7 .drawer-hamburger-icon:before,.fp-viewing-8 .drawer-hamburger-icon:after,.fp-viewing-8 .drawer-hamburger-icon:before,.fp-viewing-9 .drawer-hamburger-icon:after,.fp-viewing-9 .drawer-hamburger-icon:before{ background-color: #004866; }

.fp-viewing-4 #header .logo .d,.fp-viewing-5 #header .logo .d,.fp-viewing-6 #header .logo .d,.fp-viewing-7 #header .logo .d,.fp-viewing-8 #header .logo .d,.fp-viewing-9 #header .logo .d{ fill: #004866; }

.backW .scrolldown 	{ width: 30px; position: absolute; bottom: 0; left: 50%; -webkit-transform: translate(-50%,0); transform: translate(-50%,0); -webkit-animation: arrowmovesp 1s ease-in-out infinite; animation: arrowmovesp 1s ease-in-out infinite; z-index: 5; display: block }

#main .backW .inner 	{ width: 100%; min-height: calc(100vh - 50px); min-height: calc(100dvh - 50px); position: relative; overflow: hidden }
#main .backW .inner .bg { width: 100%; height: 100vh; height: 100dvh; top: 0; left: 0; position: absolute; z-index: -5; }
#main .backW .inner .bg img{ position: absolute; }

#main .backW .title{ opacity: 0; text-align: left; font-weight: 100; white-space: nowrap; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-weight: 100; -webkit-transition: 1s; transition: 1s; -webkit-transition-delay: 0s; transition-delay: 0s; }
#main .backW.active .title{ opacity: 1; -webkit-transition-delay: .5s; transition-delay: .5s; }
#main .backW .title .ja { font-size: 1.15rem; display: block; letter-spacing: .2rem; }
#main .backW .title .en { margin-right: 8px; font-family: 'Pinyon Script', cursive; font-size: .85rem; text-align: right; display: block; }

#main #concept 			{  }

#main .backW .master 	{ width: 100%; min-height: 100vh; min-height: 100dvh; padding: 0 40px 50px; max-width: 704px; /*position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);*/ display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center }
#main #concept .bg img:nth-of-type(1){ width: 350px; bottom: 0; right: -50px; z-index: 1; }
#main #concept .logo 	{ width: 100%; text-align: center; }
#main #concept .logo img{ width: 100px; }
#main #concept .logo h2 { margin-top: 30px; font-size: 1.4rem; text-align: left; }
#main #concept .logo h2 span{ margin-top: 12px; display: block; font-size: .85rem; }
#main #concept .textBox { margin-top: 20px; }
#main #concept .textBox p{ text-align: justify; font-size: .82rem; line-height: 1.7; }
#main #concept .openBox { margin-top: 20px; text-align: center; }
#main #concept .openBox p{ padding: 5px 8px; font-size: .82rem; display: block; text-align: center; border: 1px solid #004866; }

#main #about 			{  }
/*#main #about .master 	{ max-width: 704px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }*/
#main #about .master 	{ padding-top: 40px; }
#main #about .image 	{ width: 800px; height: 100px; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); position: absolute; z-index: -1; }
#main #about .image img { position: absolute; }
#main #about .image img:nth-of-type(1){ width: 220px; top: -210px; left: 140px; }
#main #about .image img:nth-of-type(2){ width: 200px; bottom: -260px; left: 55%; }
#main #about .bg img:nth-of-type(1){ width: 320px; bottom: 0; right: 0px; z-index: 1; }
#main #about .title 	{ margin: 0 0 0 auto; padding-right: 65px; }
#main #about .textBox 	{ margin-top: 50px; }
#main #about .textBox h3{ margin-bottom: 10px; font-size: 1.1rem; line-height: 1.4; }
#main #about .textBox p{ text-align: justify; font-size: .82rem; line-height: 1.7; }
#main #about .textBox .textSp{ width: 50%; }

/*#main #how_to .master 	{ width: 100%; max-width: 1300px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }*/
#main #how_to .master 	{ padding: 30px 0 50px; }
#main #how_to .bg img:nth-of-type(1){ width: 350px; bottom: 0; right: -50px; z-index: 1; }
#main #how_to .slider 	{ width: 100%; margin: 0 auto; }
#main #how_to .slider .slider-item{ width: 100%; max-width: 1300px; }
#main #how_to .slider .slider-item>figure{ width: 100%; }
#main #how_to .slider .slider-item>figure img{ max-width: 100%; width: 100%; /*height: 150px; -o-object-fit: cover; object-fit: cover;*/ }
#main #how_to .slider .slider-item>div{ width: 100%; }
#main #how_to .title 	{ margin: 0 auto; padding: 0 40px 0 30px; }
#main #how_to .titleArea{ width: calc(100% - 80px); margin: 0 auto 20px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; overflow: hidden; }
#main #how_to .titleArea:before{ content: ''; width: 162px; height: 7px; display: block; background: url('../img/how_to-bd1.svg') 100% 0 no-repeat; }
#main #how_to .titleArea:before{ -webkit-transform: translate(-85%,0); transform: translate(-85%,0); -webkit-transition: 1s; transition: 1s; }
#main #how_to.fp-completely .titleArea:before{ -webkit-transform: translate(0,0); transform: translate(0,0); -webkit-transition: 1s; transition: 1s; }
#main #how_to .titleArea:after{ content: ''; width: 162px; height: 7px; display: block; background: url('../img/how_to-bd2.svg') 0 0 no-repeat; }
#main #how_to .titleArea:after{ -webkit-transform: translate(85%,0); transform: translate(85%,0); -webkit-transition: 1s; transition: 1s; }
#main #how_to.fp-completely .titleArea:after{ -webkit-transform: translate(0,0); transform: translate(0,0); -webkit-transition: 1s; transition: 1s; }
#main #how_to .title>span{  }
#main #how_to .slider .slider-item h3{ margin-bottom: 10px; padding: 0 40px; font-size: .95rem; line-height: 1.4; }
#main #how_to .slider .slider-item>div .textBox{ margin-top: 10px; padding: 0 40px; }
#main #how_to .slider .slider-item>div .textBox p{ font-size: .8rem; text-align: justify; line-height: 1.7; }
#main #how_to .slider .slider-item>div .textBox p.mt{ margin-top: 1rem; }
#main #how_to .slick-prev,#main #how_to .slick-next{ top: 32%; }
#main #how_to .slider .slick-prev{ width: 11px; height: 44px; background: url('../img/prev-arrow_sp.svg') 0 0 no-repeat; left: 50px; -webkit-animation: arrow-anime .8s ease-in-out infinite; animation: arrow-anime .8s ease-in-out infinite; z-index: 2; background-size: 11px; }
#main #how_to .slider .slick-prev:before{ content: ''; }
#main #how_to .slider .slick-next{ width: 11px; height: 44px; background: url('../img/next-arrow_sp.svg') 0 0 no-repeat; right: 50px; -webkit-animation: arrow-anime .8s ease-in-out infinite; animation: arrow-anime .8s ease-in-out infinite; z-index: 2; background-size: 11px; }
#main #how_to .slider .slick-next:before{ content: ''; }
#main #how_to .slider .slick-disabled{ display: none!important; }
#main #how_to .slider .slider-item.box1 figure{ padding-right: 40px; }
#main #how_to .slider .slider-item.box2 figure{ padding: 0 40px; }
#main #how_to .slider .slider-item.box3 figure{ padding: 0 40px; }
#main #how_to .slider .slider-item.box4 figure{ padding-left: 40px; }

#main #plan 			{ padding-top: 30px; }
/*#main #plan .master 	{ max-width: 706px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }*/
#main #plan .title 	{ margin: 0 auto; }
#main #plan .bg img:nth-of-type(1){ width: 350px; bottom: 50px; right: -80px; z-index: 1; }
#main #plan h3 			{ font-size: .9rem; font-weight: 100; }
#main #plan h3>span 	{ border-bottom: 1px solid #004866; }
#main #plan .textBox 	{ margin-top: 30px; text-align: center; }
#main #plan .textBox p{ margin-top: 10px; font-size: 1.1rem; line-height: 1.5; letter-spacing: .1rem; }
#main #plan .textBox p>span{ font-size: .9rem; line-height: 2.2; letter-spacing: 0; }
#main #plan .lineBox 	{ margin-top: 18px; text-align: center; }
#main #plan .lineBox .box{ width: 280px; height: 187px; margin: 15px auto 0; padding: 28px 0 0; background: url('../img/plan-line_sp.png') 0 0 no-repeat; background-size: 280px; color: #fff; }
#main #plan .lineBox .box h4{ font-size: 1rem; font-weight: 100; }
#main #plan .lineBox .box h4>span{ font-size: .75rem; }
#main #plan .lineBox .box p{ font-size: .7rem; }
#main #plan .lineBox .box p.as{ margin-top: 5px; font-size: .6rem; }
#main #plan .lineBox .box div{ margin: 5px 0; }
#main #plan .lineBox>p 	{ width: 280px; margin: 5px auto 0; font-size: .8rem; text-align: justify; }

#main #gallery 			{  }
/*#main #gallery .master 	{ max-width: 822px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }*/
#main #gallery .master .sliderBox{ width: 290px; margin: 0 auto; position: relative; }
#main #gallery .title 	{ margin: 0 auto; }
#main #gallery .bg img:nth-of-type(1){ width: 350px; bottom: 50px; right: -40px; z-index: 1; }

#main #gallery .gallerySlider{ width: 290px; margin: 30px auto 0; }
#main #gallery .gallerySlider .slick-img{ width: 290px; height: 290px; }
#main #gallery .thumbnail{ margin-top: 8px; }
#main #gallery .thumbnail .thumbnail-img{ width: 55px; height: 55px; margin-right: 8px; }

#main #access 			{  }
/*#main #access .master 	{ max-width: 1090px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }*/
#main #access .master 	{ padding-top: 30px; padding-bottom: 80px; }
#main #access .title 	{ margin: 0 auto; }
#main #access .bg img:nth-of-type(1){ width: 350px; bottom: 40px; right: -50px; z-index: 1; }
#main #access .master>div:nth-of-type(1){ width: 100%; }
#main #access .master>div:nth-of-type(1) h3{ margin: 25px 0 8px; letter-spacing: .15rem; }
#main #access .master>div:nth-of-type(1) h3 span{ padding-bottom: 6px; font-size: .9rem; border-bottom: 1px solid #004866; display: inline-block; }
#main #access .master>div:nth-of-type(1) p{ font-size: .8rem; line-height: 1.6; letter-spacing: .1rem; }
#main #access .master>div:nth-of-type(1) p.sText{ font-size: .58rem; letter-spacing: 0; }
#main #access .master>div:nth-of-type(1) p.sText.mt{ margin-top: 10px; }
#main #access .master>div:nth-of-type(2){ margin-top: 15px; }
#main #access .master>div:nth-of-type(2) h3 span{ padding-bottom: 6px; font-size: .9rem; border-bottom: 1px solid #004866; display: inline-block; }
#main #access .master>div:nth-of-type(2) .bmap{ margin-bottom: 5px; font-size: .6rem; text-align: right; }
/*#main #access .master>div:nth-of-type(2) .bmap span{ padding-left: 15px; background: url('../img/bmap-icon.svg') 0 50% no-repeat; }*/
#main #access .master>div:nth-of-type(2) .bmap a{ text-decoration: underline; }
#main #access .master>div:nth-of-type(2) .googlemap iframe{ width: 100%; height: 180px; }
#main #access .master>div:nth-of-type(2) .info{ margin-top: 5px; font-size: .7rem; letter-spacing: .1rem; }
#main #access .copyright{ width: 100%; padding: 5px 0; font-size: .52rem; text-align: center; background-color: #001e2c; position: absolute; bottom: 50px; left: 0; color: #fff; }
}