@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
/* Reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font-family: 'Noto Sans Japanese', sans-serif;
	vertical-align: baseline;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
body {
	-webkit-text-size-adjust: none;
}
html, body {
	scroll-padding-top: 55px;
}

/* Box Model */
*, *:before, *:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* Basic */
@-ms-viewport {
	width: device-width;
}
body {
	-ms-overflow-style: none;
	font-size: 10px;
}
body.is-loading *, body.is-loading *:before, body.is-loading *:after {
	-moz-animation: none ;
	-webkit-animation: none ;
	-ms-animation: none ;
	animation: none ;
	-moz-transition: none ;
	-webkit-transition: none ;
	-ms-transition: none ;
	transition: none !important;
}
.center{
	text-align:center;
}	
.right{
	text-align:right;
}
@media screen and (max-width: 960px) {
	.right {
		font-size: 0.7em;
	}
}

/* Type */
body, input, textarea {
	font-size: 10px;
	color: rgba(33, 33, 33, 0.8);
	font-weight: normal;
	line-height: 1.75;
}
@media screen and (max-width: 2560px) {
	body, input, textarea, p {
		font-size: 1.2em;
	}
	small{
		font-size: 0.8em;
	}
}
@media screen and (max-width: 1280px) {
	body, input, textarea, p {
		font-size: 1.1em;
	}
}
@media screen and (max-width: 360px) {
	body, input, textarea, p {
		font-size: 0.7em;
	}
}
@media screen and (max-width: 700px) {
	.br-pc{
	  display: none;
	}
}
i {
	padding: 0 0.2em;
}
p {
	color: #111;
}
a {
	-moz-transition: color 0.2s ease, border-bottom-color 0.2s ease;
	-webkit-transition: color 0.2s ease, border-bottom-color 0.2s ease;
	-ms-transition: color 0.2s ease, border-bottom-color 0.2s ease;
	transition: color 0.2s ease, border-bottom-color 0.2s ease;
	border-bottom: dotted 1.6px rgba(5, 177, 249, 0.7);
	color: inherit;
	text-decoration: none;
}
a:hover {
	border-bottom-color: transparent;
	color: #111;
}
a.nodot {
	-moz-transition: color 0.2s ease, border-bottom-color 0.2s ease;
	-webkit-transition: color 0.2s ease, border-bottom-color 0.2s ease;
	-ms-transition: color 0.2s ease, border-bottom-color 0.2s ease;
	transition: color 0.2s ease, border-bottom-color 0.2s ease;
	border-bottom: none;
	color: inherit;
	text-decoration: none;
}

h1, h2, h3, h4 {
		color: #111;
		font-weight: bold;
		line-height: 1.5;
}
h1 a, h2 a, h3 a, h4 a {
	color: inherit;
	text-decoration: none;
}
h1 {
	font-size: 3em;
	padding-bottom: 0.6em;
}
h1.major { /* 下線見出し */
	margin: 0 0 1em 0;
	position: relative;
	padding-bottom: 0.2em;
}
h1.major:after {
	background-image: -moz-linear-gradient(to right, #05b1f9, #fff);
	background-image: -webkit-linear-gradient(to right, #05b1f9, #fff);
	background-image: -ms-linear-gradient(to right,#05b1f9, #fff);
	background-image: linear-gradient(to right,#05b1f9, #fff);
	-moz-transition: max-width 0.2s ease;
	-webkit-transition: max-width 0.2s ease;
	-ms-transition: max-width 0.2s ease;
	transition: max-width 0.2s ease;
	border-radius: 0.2em;
	bottom: 0;
	content: '';
	height: 0.05em;
	position: absolute;
	right: 0;
	width: 100%;
}
h1.majorwhite {/* 下線見出しthx.htmlに使用 */
	margin: 0 0 1em 0;
	position: relative;
	padding-bottom: 0.2em;
	color: #fff;
}
h1.majorwhite:after {
	background-image: -moz-linear-gradient(to right, #05b1f9, #fff);
	background-image: -webkit-linear-gradient(to right, #05b1f9, #fff);
	background-image: -ms-linear-gradient(to right,#05b1f9, #fff);
	background-image: linear-gradient(to right,#05b1f9, #fff);
	-moz-transition: max-width 0.2s ease;
	-webkit-transition: max-width 0.2s ease;
	-ms-transition: max-width 0.2s ease;
	transition: max-width 0.2s ease;
	border-radius: 0.2em;
	bottom: 0;
	content: '';
	height: 0.05em;
	position: absolute;
	right: 0;
	width: 100%;
}
h2 {	/* 機材リスト・2020年 */
	font-size: 2.4em;
	padding-bottom: 0.2em;
}
h3 {	/* 未使用 */
	font-size: 2em;
}
h4 {	/* MENU */
	font-size: 0.6em;
	color: #05b1f9;
}

@media screen and (max-width: 960px) {
	h1 {
		font-size: 2.5em;
		padding-bottom: 0.2em;
	}
	h2 {
		font-size: 1.6em;
	}
	h3 {
		font-size: 1.4em;
	}
	h4 {
		font-size: 0.8em;
	}
	p{
		font-size: 1.1em;
	}
}	
@media screen and (max-width: 480px) {
	h1 {
		font-size: 2em;
		padding-bottom: 0em;
	}
	h2 {
		font-size: 1.4em;
	}
	h3 {
		font-size: 1.2em;
	}
	h4 {
		font-size: 0.8em;
	}
	p{
		font-size: 0.8em;
	}
}

/* Box */
.box {
	border: 0;
	border-radius: 0;
	padding: 5em 0 3em 0;
}

/* Button */
input[type="submit"], input[type="button"], .button {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
	-moz-transition: border-color 0.2s ease;
	-webkit-transition: border-color 0.2s ease;
	-ms-transition: border-color 0.2s ease;
	transition: border-color 0.2s ease;
	background-color: transparent;
	border: solid 1px;
	border-color: rgba(0, 0, 0, 0.7);
	border-radius: 0.2em;
	color: #111;
	cursor: pointer;
	display: inline-block;
	font-size: 1em;
	font-weight: bold;
	height: calc(3em + 2px);
	letter-spacing: 0.1em;
	line-height: 3em;
	outline: 0;
	padding: 0 2.5em;
	margin: 0.4em 0;
	position: relative;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}
input[type="submit"]:after, input[type="button"]:after, .button:after {
	-moz-transform: scale(0.25);
	-webkit-transform: scale(0.25);
	-ms-transform: scale(0.25);
	transform: scale(0.25);
	-moz-pointer-events: none;
	-webkit-pointer-events: none;
	-ms-pointer-events: none;
	pointer-events: none;
	-moz-transition: opacity 0.2s ease, -moz-transform 0.2s ease;
	-webkit-transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
	-ms-transition: opacity 0.2s ease, -ms-transform 0.2s ease;
	transition: opacity 0.2s ease, transform 0.2s ease;
	background: #111;
	border-radius: 0.2em;
	content: '';
	height: 100%;
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
input[type="submit"]:hover, input[type="button"]:hover, .button:hover {
	border-color: rgba(5, 177, 249, 1);
}
input[type="submit"]:hover:after, input[type="button"]:hover:after, .button:hover:after {
	opacity: 0.05;
	-moz-transform: scale(1);
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}
input[type="submit"]:hover:active, input[type="button"]:hover:active, .button:hover:active {
	border-color: #111;
}
input[type="submit"]:hover:active:after, input[type="button"]:hover:active:after, .button:hover:active:after {
	opacity: 0.1;
}

/* ButtonTop */
.buttonTop {
	background-color: transparent;
	border: solid 1px;
	border-color: rgba(255, 255, 255, 0.7);
	border-radius: 0.2em;
	color: rgb(255, 255, 255);
	cursor: pointer;
	display: inline-block;
	font-size: 1em;
	font-weight: bold;
	height: calc(3em + 2px);
	letter-spacing: 0.1em;
	line-height: 3em;
	outline: 0;
	padding: 0 2.5em;
	position: relative;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}
.buttonTop:after {
	-moz-transform: scale(0.25);
	-webkit-transform: scale(0.25);
	-ms-transform: scale(0.25);
	transform: scale(0.25);
	-moz-pointer-events: none;
	-webkit-pointer-events: none;
	-ms-pointer-events: none;
	pointer-events: none;
	-moz-transition: opacity 0.2s ease, -moz-transform 0.2s ease;
	-webkit-transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
	-ms-transition: opacity 0.2s ease, -ms-transform 0.2s ease;
	transition: opacity 0.2s ease, transform 0.2s ease;
	background: #fff;
	border-radius: 0.2em;
	content: '';
	height: 100%;
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
.buttonTop:hover {
	border-color: rgba(5, 177, 249, 0.8);
}
.buttonTop:hover:after {
	opacity: 0.1;
	-moz-transform: scale(1);
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}
.buttonTop:hover:active {
	border-color: #111;
}
.buttonTop:hover:active:after {
	opacity: 0.1;
}
.mb-3{
	margin-bottom: -3px;
	margin-right: 8px;
}

/* Form */
form {
	margin: 0 0 3em;
}
form .field {
	margin: 0 0 1em 0;
}
	form .field.half {
		width: 50%;
		float: left;
		padding: 0 0 0 0.75em;
	}
	form .field.half.first {
		padding: 0 0.75em 0 0;
	}
form > .actions {
	margin: 2em 0 0 0;
}
@media screen and (max-width: 960px) {
	form .field.half {
		width: 100%;
		float: none;
		padding: 0;
	}
	form .field.half.first {
		padding: 0;
	}
}

label {
	color: #111;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 0.8em 0;
	display: block;
	font-size: 1.2em;
}
input[type="text"], input[type="email"], textarea {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
	background: rgba(255, 255, 255, 0.05);
	border-radius: 0.2em;
	border: none;
	border: solid 1px rgba(34, 34, 34, 0.15);
	color: inherit;
	display: block;
	outline: 0;
	padding: 0 1em;
	text-decoration: none;
	width: 100%;
}
input[type="text"]:invalid, input[type="email"]:invalid, textarea:invalid {
	box-shadow: none;
}

input[type="text"]:focus, input[type="email"]:focus, textarea:focus {
	border-color: rgba(255, 255, 255, 0.7);
	box-shadow: 0 0 0 1px rgba(5, 177, 249, 0.5);
}
input[type="text"], input[type="email"] {
	height: 2.6em;
}
textarea {
	padding: 0.75em 1em;
}

::-webkit-input-placeholder {
	color: rgba(80, 80, 80, 0.35);
	opacity: 1.0;
}
:-moz-placeholder {
	color: rgba(80, 80, 80, 0.35);
	opacity: 1.0;
}
::-moz-placeholder {
	color: rgba(80, 80, 80, 0.35);
	opacity: 1.0;
}
:-ms-input-placeholder {
	color: rgba(80, 80, 80, 0.35);
	opacity: 1.0;
}
.formerize-placeholder {
	color: rgba(80, 80, 80, 0.35);
	opacity: 1.0;
}

/* Image */
.image {
	border-radius: 0.2em;
	border: 0;
	display: inline-block;
	position: relative;
}
	.image.fit img {
		width: 100%;
	}

/* List */
ul {
	list-style: square;
}
	/* 会社概要 中身のリスト */
	ul.alt {
		list-style: none;
		padding-left: 0;
	}
		ul.alt li {
			font-size:0.9em;
			float:left;
		}
	/* ボタン */
	ul.actions {
		cursor: default;
	}
		ul.actions li {
			display: inline-block;
			vertical-align: middle;
		}

@media screen and (max-width: 960px) {
	ul.actions {
		margin: 0 0 2em 0;
	}
	ul.actions li {
		display: block;
	}
	ul.actions li > * {
		width: 100%;
	}
	/* フッター部 */
	ul.menu > li {
		display: block;
		line-height: inherit;
		margin: 0.5em 0 0 0;
	}
}

/* Split お問い合わせ */
.split {
	display: -moz-flex;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	width: 100%;
}
.split.style1 > :nth-child(2n - 1) {
	width: 100%;
}
@media screen and (max-width: 960px) {
	.split {
		display: block;
	}
}

/* Spotlights */
/* 音響 */
.spotlights > section {
	display: -moz-flex;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	-moz-flex-direction: row;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	height: 25vh;
}
	.spotlights > section > .image {
		background-position: center center;
		background-size: cover;
		border-radius: 0;
		display: block;
		position: relative;
		width: 40em;
		height: 25vh;
	}
	.spotlights > section > .image:before {
		-moz-transition: opacity 1s ease;
		-webkit-transition: opacity 1s ease;
		-ms-transition: opacity 1s ease;
		transition: opacity 1s ease;
		background: rgba(255, 255, 255, 0.5);
		content: '';
		display: block;
		height: 100%;
		left: 0;
		opacity: 0;
		position: absolute;
		top: 0;
		width: 100%;		
	}

	/* トップページ部署 */
	.spotlights > section > .content {
		padding: 2em 1em 2em 3em;
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-moz-justify-content: center;
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		width: 50em;
	}
		/* トップページ部署 中身 */
		.spotlights > section > .content > .inner {
			-moz-transform: translateX(0) translateY(0);
			-webkit-transform: translateX(0) translateY(0);
			-ms-transform: translateX(0) translateY(0);
			transform: translateX(0) translateY(0);
			-moz-transition: opacity 1s ease, -moz-transform 1s ease;
			-webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
			-ms-transition: opacity 1s ease, -ms-transform 1s ease;
			transition: opacity 1s ease, transform 1s ease;
			opacity: 1;
		}
/* 照明・舞台・配信 */
	.spotlights > section:nth-child(2) {
		background-color: rgba(0, 0, 0, 0.01);
	}
	.spotlights > section:nth-child(3) {
		background-color: rgba(0, 0, 0, 0);
	}
	.spotlights > section:nth-child(4) {
		background-color: rgba(0, 0, 0, 0.01);
	}
	.spotlights > section.inactive > .image:before, body.is-loading .spotlights > section > .image:before {
		opacity: 1;
	}
	.spotlights > section.inactive > .content > .inner, body.is-loading .spotlights > section > .content > .inner {
		-moz-transform: translateX(-1em);
		-webkit-transform: translateX(-1em);
		-ms-transform: translateX(-1em);
		transform: translateX(-1em);
		opacity: 0;
	}
@media screen and (max-height: 400px) {
	.spotlights > section {
		height: 40vh;
	}	
	.spotlights > section > .image {
		height: 40vh;
	}
	.spotlights > section > .content {
		height: 50vh;
		padding: 1.5em 0.8em 0.1em;
	}
}
@media screen and (max-width: 550px) {
	.spotlights > section {
		display: block;
		height: 25vh;
	}	
	.spotlights > section .image{
		display: none;
	}
	.spotlights > section > .content {
		width: 100%;
		padding: 0.8em;
		text-align: center;
	}
	.spotlights > section.inactive > .content > .inner, body.is-loading .spotlights > section > .content > .inner {
		-moz-transform: translateY(1em);
		-webkit-transform: translateY(1em);
		-ms-transform: translateY(1em);
		transform: translateY(1em);
	}
}

/* Table */
table {
	margin: 0 0 1em 0;
	width: 100%;		
}
tr {
	border: solid 1px rgba(32, 32, 32, 0.2);
	border-left: 0;
	border-right: 0;
}
td {
	padding: 0.55em 0.4em;
	color: #111;
	font-size: 1.2em;
	vertical-align:middle;
}
th {
	color: #111;
	font-size: 1.4em;
	font-weight: bold;
	text-align:left;
	vertical-align:middle;
}
th.nowrap, td.nowrap {
	white-space: nowrap;
	}

@media screen and (max-width: 960px) {
	#table {font-size:0.8em;}
}
@media screen and (max-width: 480px) {
	#table {font-size:0.5em;}
}

/* Wrapper */
/* 1280以上 */
.wrapper {
	position: relative;
	margin-left: 240px;
}
.wrapper > .inner {
	padding:  2em 3em 5em ;
	max-width: 100%;
	width: 1680px;
}	
@media screen and (max-width: 1280px) {
	.wrapper {
		margin-left: 0;
	}
	.wrapper  > .inner{
		padding: 2em 1em 7em;
	}
}

.wrapper.style {
	background-color: #000;
}

.wrapper.styleSection {
padding-bottom: 8em;
}
.wrapper.fullscreen {
	display: -moz-flex;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	min-height: 100vh;
}
.wrapper.fullscreen.center{
	-moz-justify-content: center;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
}

@media screen and (max-width: 1280px) {
	.wrapper.fullscreen {
		margin-top: 56px;
		margin-bottom: -56px;		
	}
}
@media screen and (max-width: 960px) {
	.wrapper.fullscreen {
		margin-top: 0px;
		margin-bottom: 0px;
	}
}
.wrapper.fade-up > .inner {
	-moz-transform: translateY(0);
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
	-moz-transition: opacity 1s ease, -moz-transform 1s ease;
	-webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
	-ms-transition: opacity 1s ease, -ms-transform 1s ease;
	transition: opacity 1s ease, transform 1s ease;
	opacity: 1.0;
}
.wrapper.fade-up.inactive > .inner, body.is-loading .wrapper.fade-up > .inner {
	opacity: 0;
	-moz-transform: translateY(1em);
	-webkit-transform: translateY(1em);
	-ms-transform: translateY(1em);
	transform: translateY(1em);
}

/* Footer */
#footer > .inner{
	padding: 5em 1em;
}
#footer > .inner a {
	border-bottom-color: rgba(255, 255, 255, 0.15);
}
	#footer > .inner a:hover {
		border-bottom-color: transparent;
	}
#footer > .inner .menu {
	color: rgba(255, 255, 255, 0.8);
}
/* フッター部分 */
ul.menu {
	list-style: none;
	padding: 0;
	display: block;
}
	ul.menu > li {
		font-size: 0.6em;
		border-left: solid 1px rgba(255, 255, 255, 0.15);
		line-height: 1;
	}
		ul.menu > li:first-child {
			font-size: 1em;
			border-left: 0;
			margin: 0;
			padding: 2em 0;
		}
@media screen and (max-width: 1280px) {
	#footer {
		margin-top: 56px;
	}
}

/* Sidebar */
/* 1280以上 */
#sidebar {
	padding: 30px 1em 0.5em 2em ;
	background: #000000;
	cursor: default;
	height: 100vh;
	left: 0;
	overflow-x: hidden;
	overflow-y: auto;
	position: fixed;
	text-align: right;
	top: 0;
	width: 240px;
	z-index: 1000;
}
	#sidebar > .inner {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-moz-justify-content: center;
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		-moz-transform: translateY(0);
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
		-moz-transition: opacity 1s ease;
		-webkit-transition: opacity 1s ease;
		-ms-transition: opacity 1s ease;
		transition: opacity 1s ease;
		min-height: 100%;
		opacity: 1;
		width: 99%;
	}
	body.is-ie #sidebar > .inner {
		height: 100%;
	}
#sidebar .logo {
	position: absolute;
	bottom:0;
}
#sidebar nav > ul {
	list-style: none;
	padding: 0;
	position:absolute;
	right:0;
	top:0;
}
#sidebar nav > ul > li {
	-moz-transform: translateY(0);
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
	transform: translateY(0);
	-moz-transition: opacity 0.15s ease, -moz-transform 0.75s ease;
	-webkit-transition: opacity 0.15s ease, -webkit-transform 0.75s ease;
	-ms-transition: opacity 0.15s ease, -ms-transform 0.75s ease;
	transition: opacity 0.15s ease, transform 0.75s ease;
	margin: 1.5em 0 0 0;
	opacity: 1;
	padding: 0;
	position: relative;
}
	#sidebar nav > ul > li:first-child {
		margin: 0;
	}
	#sidebar nav > ul > li:nth-child(1) {
		-moz-transition-delay: 0.4s;
		-webkit-transition-delay: 0.4s;
		-ms-transition-delay: 0.4s;
		transition-delay: 0.4s;
	}
	#sidebar nav > ul > li:nth-child(2) {
		-moz-transition-delay: 0.6s;
		-webkit-transition-delay: 0.6s;
		-ms-transition-delay: 0.6s;
		transition-delay: 0.6s;
	}
	#sidebar nav > ul > li:nth-child(3) {
		-moz-transition-delay: 0.8s;
		-webkit-transition-delay: 0.8s;
		-ms-transition-delay: 0.8s;
		transition-delay: 0.8s;
	}
	#sidebar nav > ul > li:nth-child(4) {
		-moz-transition-delay: 1.0s;
		-webkit-transition-delay: 1.0s;
		-ms-transition-delay: 1.0s;
		transition-delay: 1.0s;
	}
	#sidebar nav > ul > li:nth-child(5) {
		-moz-transition-delay: 1.2s;
		-webkit-transition-delay: 1.2s;
		-ms-transition-delay: 1.2s;
		transition-delay: 1.2s;
	}
	#sidebar nav > ul > li:nth-child(6) {
		-moz-transition-delay: 1.4s;
		-webkit-transition-delay: 1.4s;
		-ms-transition-delay: 1.4s;
		transition-delay: 1.4s;
	}
	
#sidebar a {
	border: 0;
}
#sidebar nav a {
	-moz-transition: color 0.2s ease;
	-webkit-transition: color 0.2s ease;
	-ms-transition: color 0.2s ease;
	transition: color 0.2s ease;
	border: 0;
	color: rgba(255, 255, 255, 0.9);
	display: block;
	font-size: 1em;
	font-weight: bold;
	letter-spacing: 0.16em;
	line-height: 1;
	outline: 0;
	padding: 1em 0;
	position: relative;
	text-decoration: none;
}
	/* メニュー下線 非選択時(透明) */
	#sidebar nav a:before {
		background: transparent;
	}
	/* メニュー下線 選択時 */
	#sidebar nav a:before, #sidebar nav a:after {
		border-radius: 0.2em;
		bottom: 0;
		content: '';
		height: 0.15em;
		position: absolute;
		right: 0;
		width: 100%;	
	}
	#sidebar nav a:after {
		background-image: -moz-linear-gradient(to right,#05b1f9, #fff);
		background-image: -webkit-linear-gradient(to right, #05b1f9, #fff);
		background-image: -ms-linear-gradient(to right, #05b1f9, #fff);
		background-image: linear-gradient(to right,#05b1f9, #fff);
		-moz-transition: max-width 0.2s ease;
		-webkit-transition: max-width 0.2s ease;
		-ms-transition: max-width 0.2s ease;
		transition: max-width 0.2s ease;
		max-width: 0;
	}
	#sidebar nav a:hover {
		color: rgba(255, 255, 255, 0.7);
	}
	#sidebar nav a.active {
		color: #fff;
	}
		#sidebar nav a.active:after {
			max-width: 100%;
		}
	/* ロード時の色 (透明) */
	body.is-loading #sidebar > .inner {
		opacity: 0;
	}
	body.is-loading #sidebar nav ul li {
		-moz-transform: translateY(2em);
		-webkit-transform: translateY(2em);
		-ms-transform: translateY(2em);
		transform: translateY(2em);
		opacity: 0;
	}

#top-head {
		display: none;
	}	
@media screen and (max-width: 1280px) {
	#sidebar {
		height: 56px;
		left: 0;
		line-height: 56px;
		overflow: hidden;
		padding: 0;
		text-align: center;
		top: 0;
		width: 100%;
		margin: 0;
	}
		#sidebar > .inner {
			-moz-flex-direction: row;
			-webkit-flex-direction: row;
			-ms-flex-direction: row;
			flex-direction: row;
			-moz-align-items: stretch;
			-webkit-align-items: stretch;
			-ms-align-items: stretch;
			align-items: stretch;
			height: inherit;
			line-height: inherit;
		}
	#sidebar .logo {
		position: absolute;
		left: 10px;
		margin-bottom:-35px;
		width:220px;
	}
		#sidebar nav ul {
			display: -moz-flex;
			display: -webkit-flex;
			display: -ms-flex;
			display: flex;
			height: inherit;
			line-height: inherit;
		}
		#sidebar nav ul li {
			display: block;
			height: inherit;
			line-height: inherit;
			margin: 0 0 0 1.4em;
			padding: 0;

		}
		#sidebar nav a {
			height: inherit;
			line-height: inherit;
			padding: 0;
			letter-spacing: 0.14em;
		}
			#sidebar nav a:after {
				background-image: none;
				background-color:#05b1f9;
			}
}

@media screen and (max-width: 960px) {
	#sidebar {
		display: none;
	}
	/* Header */
	#top-head {
		position: fixed;
		width: 100%;
		z-index: 1000;
		display: block;
		top:0;
		left:0;	
	}
	#top-head #global-nav ul li a, #top-head.fixed #global-nav ul li a {
		-moz-transition: color 0.2s ease;
		-webkit-transition: color 0.2s ease;
		-ms-transition: color 0.2s ease;
		transition: color 0.2s ease;
		border: 0;
		color:#fff;
		display: block;
		font-size: 1.1em;
		font-weight: bold;
		letter-spacing: 0.1em;
		line-height: 0.5em;
		outline: 0;
		padding: 1.1em 0;
		position: relative;
		text-decoration: none;
	}
	#global-nav {
		position: absolute;
		/* 開いてないときは画面外に配置 */
		top: -100em;
		background: #000000e0;
		width: 100%;
		text-align: center;
		padding: 1em 0;
		-webkit-transition: .2s ease-in-out;
		-moz-transition: .2s ease-in-out;
		transition: .2s ease-in-out;
	}
	#mobile-head {
		width: 100%;
		height: 0px;
		z-index: 1000;
		position: relative;
		display: block;
	}
	/* 3本線 */
	#nav-toggle {
		display: block;
		position: absolute;
		right: 1em;
		top: 0.8em;
		width: 2.4em;
		height: 33px;
		cursor: pointer;
		z-index: 101;
	}
	#nav-toggle div {
		position: relative;	
	}
	#nav-toggle span {
		display: block;
		position: absolute;
		height: 0.35em;
		width: 100%;
		background: #05b1f9;
		left: 0;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;	
	}
	#nav-toggle span:nth-child(1) {
		top: 0;
	}
	#nav-toggle span:nth-child(2) {
		top: 11px;
	}
	#nav-toggle span:nth-child(3) {
		top: 22px;
	}
	#nav-toggle span:nth-child(4) {
		top: 28px;
		background: transparent;
	}	
	/* #nav-toggle 切り替えアニメーション */
	.open #nav-toggle span:nth-child(1) {
		top: 11px;
		-webkit-transform: rotate(135deg);
		-moz-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	.open #nav-toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.open #nav-toggle span:nth-child(3) {
		top: 11px;
		-webkit-transform: rotate(-135deg);
		-moz-transform: rotate(-135deg);
		transform: rotate(-135deg);
	}
	/* #global-nav スライドアニメーション */
	.open #global-nav {
		/* #global-nav top + #mobile-head height */
		-moz-transform: translateY(100em);
		-webkit-transform: translateY(100em);
		transform: translateY(100em);
	}
}

/* Profile */
#profile {
	background-attachment: fixed;
	background-image: url("images/intro.svg");
	background-position: top right;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 100vh;
}
#profile p ,#footer p{
	color: #fff;
	font-size: 1.2em;
	text-align:center;
	padding:2em 0 3em;
}
#profile a , #footer a{
	color: #fff;
}
@media screen and (max-width: 960px) {
	#profile p {
		font-size: 1.1em;
		padding:2em 0 6em;
	}
}

/*Google Map*/
.gmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

.arrow-gray{color: rgba(255, 255, 255, 0.5);}
.bottom{
	bottom: 20px;
	}