/* transitions */
#title[data-v-f41a3be6] {
	padding-top: 0;
	padding-bottom: 5em
}
#title.h1[data-v-f41a3be6] {
	padding-top: 8em
}
#title.small[data-v-f41a3be6] {
	padding-bottom: 4em
}
#title.small > h2[data-v-f41a3be6] {
			font-size: 2em
}
#title h1[data-v-f41a3be6],
	#title h2[data-v-f41a3be6] {
		font-weight: 700;
		color: black;
		text-align: center;
		font-family: 'Roboto', sans-serif;
		margin-bottom: 0;
		font-size: 3em
}
#title h1 span[data-v-f41a3be6], #title h2 span[data-v-f41a3be6] {
			padding-bottom: .2em;
			border-bottom: 4px solid black
}
/* .page-enter-active, */
/* .page-leave-active */
/* 	#title */
/* 		transition: transform 1s ease-out */
/* .page-leave-active */
/* 	#title */
/* 		transform: translateX(3em) */
/* .page-enter */
/* 	#title */
/* 		transform: translateX(5em) */
@media (max-width: 34em) {
#title[data-v-f41a3be6] {
		padding-bottom: 2em
}
}
@media (max-width: 34em) {
#title.h1[data-v-f41a3be6] {
		padding-top: 6em
}
}
@media (max-width: 34em) {
#title.small[data-v-f41a3be6] {
		padding-bottom: 2em
}
}
@media (max-width: 34em) {
#title h1[data-v-f41a3be6],
	#title h2[data-v-f41a3be6] {
		font-size: 2em
}
}

/* transitions */
#footer {
	background: black;
	margin-top: 12em;
}
#footer {
	padding: 0;
	position: relative;
	z-index: 2;
}
#footer #triangles {
		position: relative;
		z-index: -1;
}
#footer #triangles .inner {
			position: absolute;
			min-height: 35vw;
			height: 24em;
			bottom: 0;
			width: 100%;
}
#footer #triangles .inner .triangle {
				position: absolute;
				height: 100%;
				width: 100%;
				-webkit-transform-origin: right center;
				        transform-origin: right center;
				opacity: .6;
				background: -webkit-gradient(linear, right top, left top, from(#169034), to(black));
				background: linear-gradient(to left, #169034, black)
}
#footer #triangles .inner #big {
				-webkit-transform: skewY(-45deg);
				        transform: skewY(-45deg)
}
#footer #triangles .inner #small {
				top: 55%;
				-webkit-transform: skewY(-18deg);
				        transform: skewY(-18deg)
}
#footer #nav-bottom {
		z-index: 5;
		background: black;
		margin-bottom: -1px;
}
#footer #nav-bottom .container {
			position: relative;
			padding: 1.5em 1.2em;
			font-family: 'Roboto', sans-serif;
			width: 60em;
			max-width: 100%;
			margin: auto;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			        justify-content: space-between;
}
#footer #nav-bottom .container #to-top {
				position: absolute;
				top: -1em;
				right: 3em;
				font-size: 1.5em;
				line-height: 1em;
				color: white;
				font-weight: 500;
}
#footer #nav-bottom .container #to-top a {
					color: white;
					position: relative;
					bottom: .4em
}
#footer #nav-bottom .container #to-top .anchor {
					z-index: -1;
					position: relative;
					float: right;
					width: 60%;
					-webkit-transform: scaleX(.8);
					        transform: scaleX(.8);
}
#footer #nav-bottom .container #to-top .anchor .shape {
						background: black;
						width: 4em;
						height: 4em;
						position: absolute;
						-webkit-transform: translateX(-2em) translateY(-2em) rotate(45deg);
						        transform: translateX(-2em) translateY(-2em) rotate(45deg)
}
#footer #nav-bottom .container ul {
				display: inline-block;
				list-style: none;
				font-size: 1.2em;
}
#footer #nav-bottom .container ul li {
					display: inline-block;
					padding: .5em 0;
					width: 5.5em;
					text-align: center;
					vertical-align: middle;
}
#footer #nav-bottom .container ul li a {
						display: block;
						height: 100%
}
#footer #nav-bottom .container ul a {
					color: white
}
#footer #nav-bottom .container ul.primary {
				margin-left: 2em;
}
#footer #nav-bottom .container ul.secondary {
				/* float: right */
				font-size: 1em;
}
#footer #nav-bottom .container ul.secondary li {
					width: auto;
					padding: .6em 0;
					margin-left: 1em;
}
#footer #nav-bottom .container ul.secondary li a {
						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-align: center;
						    -ms-flex-align: center;
						        align-items: center;
}
#footer #nav-bottom .container ul.secondary li a .icon {
							display: -webkit-box;
							display: -ms-flexbox;
							display: flex;
							-webkit-box-align: center;
							    -ms-flex-align: center;
							        align-items: center;
}
#footer #nav-bottom .container ul.secondary li a .icon img {
								height: 1.5em;
								margin-right: .5em
}
#footer #nav-bottom .container ul.secondary li a .subtitle {
							letter-spacing: 2px;
							display: block;
							margin-top: .5em;
							font-size: .6em
}
@media (max-width: 34em) {
#footer {
		margin-top: 8em;
}
}
@media (max-width: 34em) {
#footer #nav-bottom .container {
		padding: 1em;
}
#footer #nav-bottom .container ul {
					display: none;
}
}

/* transitions */
.layout {
	overflow: hidden;
	position: relative;
	min-height: 100vh;
}
/* background: white */
.layout .background {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: white;
		z-index: 2
}
main {
	background: white;
	overflow: hidden
}
body {
	background: black
}
#description p {
		text-align: center
}

/* transitions */
.menu-button {
	/* position: absolute */
	/* top: 0 */
	/* left: 0 */
	/* right: 0 */
	/* bottom: 0 */
	/* margin: auto */
	width: 26px;
	height: calc(2px + 10px*2);
	cursor: pointer;
}
.menu-button .bars,
	.menu-button .bars:after,
	.menu-button .bars:before {
		width: 26px;
		height: 2px;
}
.menu-button .bars {
		position: relative;
		-webkit-transform: translateY(10px);
		        transform: translateY(10px);
		background: rgba(255, 255, 255, 1);
		-webkit-transition: all 0ms 100ms;
		transition: all 0ms 100ms;
}
.menu-button .bars:before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 10px;
	background: rgba(255, 255, 255, 1);
	-webkit-transition: bottom 300ms 100ms cubic-bezier(0, 0, 0, 1), 
				-webkit-transform 100ms linear;
	transition: bottom 300ms 100ms cubic-bezier(0, 0, 0, 1), 
				-webkit-transform 100ms linear;
	transition: bottom 300ms 100ms cubic-bezier(0, 0, 0, 1), 
				transform 100ms linear;
	transition: bottom 300ms 100ms cubic-bezier(0, 0, 0, 1), 
				transform 100ms linear, 
				-webkit-transform 100ms linear;
}
.menu-button .bars:after {
	content: "";
	position: absolute;
	left: 0;
	top: 10px;
	background: rgba(255, 255, 255, 1);
	-webkit-transition: top 300ms 100ms cubic-bezier(0, 0, 0, 1), 
				-webkit-transform 100ms linear;
	transition: top 300ms 100ms cubic-bezier(0, 0, 0, 1), 
				-webkit-transform 100ms linear;
	transition: top 300ms 100ms cubic-bezier(0, 0, 0, 1), 
				transform 100ms linear;
	transition: top 300ms 100ms cubic-bezier(0, 0, 0, 1), 
				transform 100ms linear, 
				-webkit-transform 100ms linear;
}
.menu-button .bars.open {
	background: rgba(255, 255, 255, 0);
}
.menu-button .bars.open:after {
	top: 0;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transition: top 100ms linear, 
					-webkit-transform 300ms 100ms cubic-bezier(0, 0, 0, 1);
	transition: top 100ms linear, 
					-webkit-transform 300ms 100ms cubic-bezier(0, 0, 0, 1);
	transition: top 100ms linear, 
					transform 300ms 100ms cubic-bezier(0, 0, 0, 1);
	transition: top 100ms linear, 
					transform 300ms 100ms cubic-bezier(0, 0, 0, 1), 
					-webkit-transform 300ms 100ms cubic-bezier(0, 0, 0, 1);
}
.menu-button .bars.open:before {
	bottom: 0;
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	-webkit-transition: bottom 100ms linear, 
					-webkit-transform 300ms 100ms cubic-bezier(0, 0, 0, 1);
	transition: bottom 100ms linear, 
					-webkit-transform 300ms 100ms cubic-bezier(0, 0, 0, 1);
	transition: bottom 100ms linear, 
					transform 300ms 100ms cubic-bezier(0, 0, 0, 1);
	transition: bottom 100ms linear, 
					transform 300ms 100ms cubic-bezier(0, 0, 0, 1), 
					-webkit-transform 300ms 100ms cubic-bezier(0, 0, 0, 1);
}
header {
	position: fixed;
	z-index: 15;
	width: 100%;
}
header .mobile {
		background: rgba(0,0,0,.8);
		padding: .4em 1.2em;
}
header .mobile {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
header .mobile img {
			height: 2.5em;
}
header #nav-top {
		padding: .4em 1.2em;
		background: rgba(0,0,0,.8);
		font-family: 'Roboto', sans-serif;
}
header #nav-top ul {
			margin: auto;
			width: 820px;
			max-width: 100%;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-ms-flex-pack: distribute;
			    justify-content: space-around;
			-webkit-box-align: stretch;
			    -ms-flex-align: stretch;
			        align-items: stretch;
			list-style: none;
			font-size: 1.2em;
}
header #nav-top ul li {
				text-align: center;
				vertical-align: middle;
}
header #nav-top ul li a {
					display: block;
					height: 100%;
					display: -webkit-box;
					display: -ms-flexbox;
					display: flex;
					-webkit-box-orient: vertical;
					-webkit-box-direction: normal;
					    -ms-flex-direction: column;
					        flex-direction: column;
					-ms-flex-pack: distribute;
					    justify-content: space-around
}
header #nav-top ul a {
				color: white
}
header #nav-top ul img {
				height: 2.8em
}
@media (min-width: 34.001em) {
header .mobile {
		display: none;
}
}
@media (max-width: 34em) {
header #nav-top {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
}
header #nav-top ul {
				height: 20em;
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
}
header #nav-top ul li {
					-webkit-box-flex: 1;
					    -ms-flex: 1;
					        flex: 1;
					background: black;
					margin: 1px
}
header #nav-top ul .logo {
					display: none
}
header #nav-top.closed {
		padding: 0;
		height: 0;
		opacity: 0;
		visibility: hidden;
		-webkit-transition: opacity .3s cubic-bezier(0, 0, 0, 1), 
					visibility 0s .3s,
					height 0s .3s,
					padding 0s .3s;
		transition: opacity .3s cubic-bezier(0, 0, 0, 1), 
					visibility 0s .3s,
					height 0s .3s,
					padding 0s .3s;
}
header #nav-top.open {
		padding: 1.2em;
		height: calc(100vh - 2.5em - .4em * 2);
		visibility: visible;
		opacity: 1;
		-webkit-transition: opacity .3s cubic-bezier(0, 0, 0, 1);
		transition: opacity .3s cubic-bezier(0, 0, 0, 1);
}
}

body{margin:0;font-family:Noto Sans JP,sans-serif;color:#4a4a4a;font-size:1.125em;min-height:100vh}body main{display:block}body *{-webkit-box-sizing:border-box;box-sizing:border-box}body section{z-index:10;position:relative;padding:3em 0}body .np{padding:0}body .big-padding{padding-top:9em}body .center{text-align:center}body .container{position:relative;z-index:10;width:66em}body .container.narrow{padding:.5em;width:48em}body .container{max-width:100%;padding:0 1em;margin:0 auto}body .container.np{padding:0}body .container.columns{display:-webkit-box;display:-ms-flexbox;display:flex}body .container .half{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}body .container .inline{display:inline-block;vertical-align:top;-webkit-box-flex:1;-ms-flex:1;flex:1}body h1,body h2,body h3{color:#222;margin:0}body h1{font-size:3em}body h2{font-size:2em}body h2,body h3{margin-bottom:1em}body h3{font-size:1em}body h1,body h2,body h3,body h4,body h5,body h6,body p{white-space:pre-line;margin:0;margin-bottom:1em}body img{max-width:100%;display:block}body a{text-decoration:none}body ul{margin:0;padding:0}body .o{opacity:1;-webkit-transition:opacity .3s;transition:opacity .3s}body .o:hover{opacity:.6}@media (max-width:34em){body section{padding:2em 0}}@media (max-width:48em){body .big-padding{padding-top:6em}}@media (max-width:34em){body .big-padding{padding-top:4em}}body{background:#fff;overflow-y:scroll}.container>.border{background:hsla(0,0%,100%,.9);border:2px solid #4eaa80;padding:3em}.more{background:#000;color:#fff;display:inline-block;padding:.5em 1.5em;border:none;font-size:inherit;font-family:inherit;cursor:pointer}@media (max-width:34em){.container>.border{padding:1em}}@media (min-width:34.001em){.more{margin-top:2em}}.page-enter-active,.page-leave-active{-webkit-transition:opacity .4s ease-out,-webkit-transform .4s ease-out;transition:opacity .4s ease-out,-webkit-transform .4s ease-out;transition:opacity .4s ease-out,transform .4s ease-out;transition:opacity .4s ease-out,transform .4s ease-out,-webkit-transform .4s ease-out}.page-enter-active>#title,.page-leave-active>#title{-webkit-transition:opacity .3s ease-out,-webkit-transform .3s ease-out;transition:opacity .3s ease-out,-webkit-transform .3s ease-out;transition:opacity .3s ease-out,transform .3s ease-out;transition:opacity .3s ease-out,transform .3s ease-out,-webkit-transform .3s ease-out}.page-enter-active>:not(#title),.page-leave-active>:not(#title){-webkit-transition:opacity .3s ease-out .1s,-webkit-transform .3s ease-out .1s;transition:opacity .3s ease-out .1s,-webkit-transform .3s ease-out .1s;transition:opacity .3s ease-out .1s,transform .3s ease-out .1s;transition:opacity .3s ease-out .1s,transform .3s ease-out .1s,-webkit-transform .3s ease-out .1s}.page-leave-active>*{opacity:0;-webkit-transform:translateY(.3em);transform:translateY(.3em)}.page-enter>*{opacity:0;-webkit-transform:translateY(.5em);transform:translateY(.5em)}.alert-enter-active,.alert-leave-active{-webkit-transition:opacity .3s ease-out .5s,-webkit-transform .3s ease-out .5s;transition:opacity .3s ease-out .5s,-webkit-transform .3s ease-out .5s;transition:opacity .3s ease-out .5s,transform .3s ease-out .5s;transition:opacity .3s ease-out .5s,transform .3s ease-out .5s,-webkit-transform .3s ease-out .5s}.alert-enter,.alert-leave-to{opacity:0;-webkit-transform:translateX(.3em);transform:translateX(.3em)}.alert-enter-to,.alert-leave{-webkit-transform:translateX(0);transform:translateX(0)}.media-leave-active{position:absolute}.media-move{-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s}.media-enter-active,.media-leave-active{-webkit-transition:opacity .3s,-webkit-transform .5s;transition:opacity .3s,-webkit-transform .5s;transition:opacity .3s,transform .5s;transition:opacity .3s,transform .5s,-webkit-transform .5s}.media-enter,.media-leave-to{opacity:0;-webkit-transform:translateY(30px);transform:translateY(30px)}.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .2s;transition:opacity .2s}.fade-enter,.fade-leave-to{opacity:0}.single-enter-active,.single-leave-active{-webkit-transition:opacity .2s .3s;transition:opacity .2s .3s}.single-enter,.single-leave-to{opacity:0}