@charset "UTF-8";
/* CSS Document */
html,
body {
	font-size: 16px;/*1rem*/
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, Times, "Times New Roman", serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-weight: normal;
	line-height: 1.5;
	font-feature-settings: "palt";
}

@media screen and (max-width: 460px) {
html,
body {
	font-size: 14px;/*1rem*/
}
}
body {
	background: #000;
	color: #fff;
}
#container {
	position: relative;
	overflow: hidden;
}
#container::before {
	content: url(../img/common/bg_item_momijiLeft.png);
	position: absolute;
	bottom: 5em;
	left: 0;
}
#container::after {
	content: url(../img/common/bg_item_momijiRight.png);
	position: absolute;
	bottom: 20em;
	right: -10em;
	z-index: -1;
}

@media screen and (max-width: 895px) {
#container::before {
	width: 100%;
	content: url(../img/common/bg_item_momijiLeft.png);
	position: absolute;
	bottom: 0;
	left: -5em;
	z-index: -10;
}
#container::after {
	display: none;
}
}
/*webフォント指定*/
.font_NS {
	font-family: 'Noto Serif', serif;
	font-weight: 400;
}
.font_NS_jp {
	font-family: 'Noto Serif JP', serif;
	font-weight: normal;
}
.font_Itali {
	font-family: 'Italianno', cursive;
	font-weight: normal;
}
p {
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: normal;
}
/*スタイル*/
h1 {
	color: #fff;
}
li {
	list-style: none;
}
address {
	font-style: normal;
}
/*メイン*/
#main {
	background: black;
	position: relative;
	z-index: 1;
	background: none;
}
/*haeder*/
#header {
	width: 1280px;
	margin: auto;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	position: relative;
}

@media screen and (min-width: 896px) and (max-width: 1280px) {
#header {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
}

@media screen and (max-width: 895px) {
#header {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
}
#header h1 {
	color: #ccc;
	margin: 0;
	padding: .5em 1em;
	color: #ccc;
	background: #6b00a3;
	background: -moz-linear-gradient(left, #6b00a3 0%, #9f1815 12em);
	background: -webkit-linear-gradient(left, #6b00a3 0%, #9f1815 12em);
	background: linear-gradient(to right, #6b00a3 0%, #9f1815 12em);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6b00a3', endColorstr='#9f1815', GradientType=1 );
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	transition: ease-in-out 1s;
}
#header h1 a {
	text-decoration: none;
}
#header h1 a:hover {
	text-decoration: none;
	background: -moz-linear-gradient(right, #6b00a3 0%, #9f1815 12em);
	background: -webkit-linear-gradient(right, #6b00a3 0%, #9f1815 12em);
	background: linear-gradient(to left, #6b00a3 0%, #9f1815 12em);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9f1815', endColorstr='#6b00a3', GradientType=1 );
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

@media screen and (max-width: 895px) {
#header h1 {
	font-size: 1.5rem;
}
}
#header nav {
	position: absolute;
	right: 0;
	top: 1.5em;
	padding-right: 1em;
}
#header nav ul {
	display: -webkit-flex;
	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;
	list-style: none;
	height: 100%;
}

@media screen and (max-width: 895px) {
#header nav ul {
	display: none;
}
}
#header nav ul li {
	padding-right: 3em;
	font-size: 1.3125rem;
}
#header nav ul li:last-of-type {
	padding-right: 0;
}

@media screen and (min-width: 896px) and (max-width: 1280px) {
#header nav ul li {
	padding-right: 1em;
	font-size: 1.3125rem;
}
#header nav ul li:last-of-type {
	padding-right: 3em;
}
}
#header nav ul li a {
	color: #d8d8d8;
	text-decoration: none;
	transition: 0.2s;
}
#header nav ul li a:hover {
	color: #53007f;
	text-decoration: none;
}
/*フッター*/
#footer {
	width: 100%;
	position: relative;
	min-height: 100%;
	background: radial-gradient(circle farthest-side at center 15em, rgba(107,0,163,1) 0%, rgba(0,0,0,0) 35%);
	overflow: hidden;
}

@media screen and (max-width: 895px) {
#footer {
	width: 100%;
	position: relative;
	min-height: 100%;
	background: radial-gradient(circle farthest-side at center 13em, rgba(107,0,163,1) 0%, rgba(0,0,0,0) 50%);
	overflow: hidden;
}
}

@media screen and (max-width: 895px) {
#container::before {
	width: 100%;
	content: url(../img/common/bg_item_momijiLeft.png);
	position: absolute;
	bottom: 0;
	left: -5em;
	z-index: -10;
}
#container::after {
	display: none;
}
}
#footer h3 {
	font-size: 3em;
	color: #d8d8d8;
	text-align: center;
	padding: 1em 0;
}

@media screen and (max-width: 895px) {
#footer h3 {
	font-size: 2em;
	color: #d8d8d8;
	text-align: center;
	padding: 1em 0;
}
}
#link {
	position: relative;
	z-index: 1;
}
#link ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
#link ul li {
	padding-right: 1em;
}

@media screen and (max-width: 895px) {
#link ul {
	display: block;
	text-align: center;
}
#link ul li {
	padding-right: 0;
	padding-bottom: 1em;
}
#link ul li img {
	width: 50%;
}
}
#link ul li:last-of-type {
	padding-right: 0
}
#link ul li a {
	transition: .2s;
}
#link ul li a:hover {
	opacity: .8;
}
#footer_nav ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 90%;
	margin: auto;
}
#footer_nav ul:first-child {
	padding: 10em 0 1.5em 0;
	border-bottom: 1px solid #ccc;
}
#footer_nav ul:last-child {
	padding: 1.5em 0 3em 0;
}
#footer_nav ul li {
	padding-right: 3em;
}
@media screen and (max-width: 895px) {
#footer_nav ul li {
	padding-right: 1.5em;
}
}
@media screen and (max-width: 460px) {
#footer_nav ul li {
	padding-right: 1em;
}
}
#footer_nav ul li:last-of-type {
	padding-right: 0;
}
#footer_nav ul li a {
	color: #d8d8d8;
	text-decoration: none;
	transition: 0.2s;
}
#footer_nav ul li a:hover {
	color: #53007f;
	text-decoration: none;
}
#footer_nav ul:last-of-type li a:hover {
	opacity: .6;
}
#footer div {
	background: #fff;
	text-align: right;
	padding-right: 3em;
}
#footer div small {
	width: 100%;
	line-height: 5;
	color: #979797;
	font-size: .8rem
}

@media screen and (max-width: 895px) {
#footer div {
	text-align: center;
	padding-right: 0;
}
}

/*------------------------------------------------------------ハンバーガーメニュー　*/
@media screen and (min-width: 896px) {
#nav-drawer {
	display: none;
}
}

@media screen and (max-width: 895px) {
#nav-drawer {
	position: relative;
}
.nav-unshown {
	display: none;
}
#nav-open,
#nav-close {
	width: 30px;
	height: 30px;
}
#nav-open span,
#nav-open span:before,
#nav-open span:after,
#nav-close span:before,
#nav-close span:after {
	position: absolute;
	height: 2px;
	width: 30px;
	background: #d8d8d8;
	display: block;
	content: ' ';
	cursor: pointer;
}
#nav-open {
	position: absolute;
	right: 1.5em;
	top: 1.3em;
	display: block;
}
#nav-open span:before {
	bottom: -8px;
}
#nav-open span:after {
	bottom: -16px;
}
#nav-close span:before {
	top: 18px;
	transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}
#nav-close span:after {
	top: 18px;
	transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#nav-close {
	display: none;
	position: absolute;
	top: 10px;
	right: 2em;
	padding: 10px;
	display: inline-block;
}
/*中身*/
#nav-content {
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100%;
	height: 100%;
	background-image: url(../img/common/bg_titleBack.png);
	background-repeat: repeat;
	transition: .3s ease-in-out;
	-webkit-transform: translateY(-105%);
	transform: translateY(-105%);
}
.nav-content_inner {
	min-height: 100%;
}
#nav-content h1 {
	color: #ccc;
	width: 100%;
	margin: 0;
	padding-left: 1em;
	color: #ccc;
	background: #6b00a3;
	background: -moz-linear-gradient(left, #6b00a3 0%, #9f1815 12em);
	background: -webkit-linear-gradient(left, #6b00a3 0%, #9f1815 12em);
	background: linear-gradient(to right, #6b00a3 0%, #9f1815 12em);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6b00a3', endColorstr='#9f1815', GradientType=1 );
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
#nav-content div.black {
	background: black;
}
#nav-content .nav-content_inner {
	position: relative;
}
#nav-content .nav-content_inner > ul {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}
#nav-content .nav-content_inner > ul li {
	font-size: 2rem;
	color: #f0a669;
	font-family: 'Noto Serif', serif;
	font-weight: normal;
	list-style: none;
	text-align: center;
	padding: 1em 0 .2em 0;
}
#nav-content .nav-content_inner > ul li a {
	color: #d8d8d8;
	text-decoration: none;
	transition: 0.2s;
}
#nav-content .nav-content_inner > ul li a:hover {
	color: #9f1815;
	text-decoration: none;
}
#nav-input:checked ~ #nav-close {
	display: block;
	opacity: .5;
}
#nav-input:checked ~ #nav-content {
	-webkit-transform: translateY(0%);
	transform: translateY(0%);
}
.sns {
	text-align: center;
	padding-top: 24px;
}
.sns li {
	display: inline-block;
}
.sns li span {
	position: relative;
	top: -15px;
}
}
/*ページタイトル*/
#pageTitle {
	width: 100%;
	height: 120px;
	background: url(../img/common/bg_titleBack.png) repeat;
	overflow: hidden;
}
.pageTitle_box {
	position: relative;
	background: radial-gradient(circle farthest-side at center 10em, rgba(0,0,0,0) 0%, rgba(0,0,0,.5) 100%);
	z-index: 999;
}
.pt_inner {
	position: relative;
	min-height: 100%;
	background: radial-gradient(circle farthest-side at right 20em, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 50%);
	z-index: 999;
}
.pt_content {
	width: 1280px;
	margin: auto;
	padding: 0 1em;
}
.pt_content h2 {
	position: absolute;
	top: 1em;
	z-index: 10;
	line-height: 1;
	font-size: 2rem;
	top: 1.2em;
	font-weight: normal;
	color: #dadada;
}
.pt_content h2 span:first-of-type {
	display: block;
	line-height: .5;
	color: #999999;
}
.pt_content h2 span:nth-of-type(2) {
	font-size: 1.5rem;
}

@media screen and (max-width: 895px) {
#pageTitle {
	height: 90px;
}
.pt_content h2 {
	font-size: 1.5rem;
}
}
/*キャンバス　紙吹雪*/
#canvas {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: -10;
}
/*電話リンク*/
a[href^="tel:"] {
	pointer-events: none;
}
/*clearfix*/
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}
