@charset "UTF-8";
/* CSS Document */

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

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: inherit;
	font-size: 100%;
}
html {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
strong {
	font-weight: bold;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}
q, blockquote {
	quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
	content: "";
	content: none;
}
img, a {
	vertical-align: top;
}
a img {
	border: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
	display: block;
}
*, *:before, *:after {
	box-sizing: border-box;
}
img {
	width: auto;
	height: auto;
	max-width: 100%;
}
/* --------------------------------------------------

clearfix

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

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
/* --------------------------------------------------

html

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

html {
	font-size: 62.5%;
	height: 100%;
}
/* --------------------------------------------------

body

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

body {
	font-family: a-otf-ryumin-pr6n, "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	line-height: 1.6;
	font-size: 1.5rem;
	height: 100%;
	min-height: 100%;
	font-weight: 500;
	color: #303030;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	position: relative;
	letter-spacing: .1rem;
}
.h-fixed {
		position: fixed;
		width: 100%;
		height: 100%;
		overflow: hidden;
}

@media screen and (max-width: 600px) {
body {
	font-size: 1.3rem; /* 1.3rem */
}
}

@media screen and (max-width: 420px) {
body {
	font-size: 1.25rem; /* 1.2rem */
}
}
/* --------------------------------------------------

link

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


a:link {
	color: #303030;
	text-decoration: none;
}
a:visited {
	color: #303030;
	text-decoration: none;
}
a:hover {
	color: #303030;
	text-decoration: none;/*	opacity: 0.8;
*/
}
a:active {
	color: #303030;
	text-decoration: none;
}
* a {
	transition-duration: 0.3s;
	transition-property: opacity, background, color, background-image, transform;
	transition-timing-function: ease-in-out;
}
/* --------------------------------------------------

form

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

button, fieldset, form, input, label, legend, select, textarea {
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	padding: 0;
	vertical-align: middle;
}
fieldset {
	border: none;
	display: block;
}
legend {
	display: none;
}
label {
	cursor: pointer;
	display: none;
}
textarea {
	overflow: auto;
	vertical-align: middle;
	width: 100%;
	border: 1px solid #CECEBF;
	padding: 5px 10px;
	font-size: 1.6rem;
	line-height: 1.8;
	margin: 10px 0;
	box-sizing: border-box;
	border-radius: 5px;
}
input::-webkit-input-placeholder {
 color: #747484;
}
input:-ms-input-placeholder {
 color: #747484;
}
input::-moz-placeholder {
 color: #747484;
}
select {
	padding: 8px;
	border: 1px solid #D1D1D1;
}
input[type="checkbox"], input[type="radio"] {
	margin-right: .5rem;
}
input[type="checkbox"] + label, input[type="radio"] + label {
	display: inline-block;
	margin-right: 1rem;
}
input[type="text"], input[type="tel"], input[type="email"], input[type="password"] {
	vertical-align: middle;
	border: 1px solid #CECEBF;
	padding: 7px 10px;
	font-size: 1.5rem;
	line-height: 1.8;
	box-sizing: border-box;
	border-radius: 5px;
}
input[type="file"] {
	padding: 5px 0;
}
select.text-ss {
	padding: 5px;
	background: #FFF;
}
.label-name {
	margin: 0px 7px 0 0;
	display: inline-block;
}
.legend-name {
	margin: 0px 7px 0 0;
	display: inline-block;
}
.label-name-2em {
	margin: 0px 7px 0 0;
	display: inline-block;
	width: 2em;
}
.label-name-behind {
	margin: 0px 8px 0 4px;
	display: inline-block;
}
.text-ss {
	width: 10%;
	margin: 10px 7px 10px 0;
}
.text-s, .text-s-sp-harf {
	width: 30%;
	margin: 10px 7px 10px 0;
}
.text-m {
	width: 58%;
	margin: 10px 7px 10px 0;
}
.text-l {
	width: 100%;
	margin: 10px 0;
}

/* for TABLET */
@media screen and (max-width: 800px) {
.text-s {
	width: 100%;
	margin: 10px 7px 10px 0;
}
.text-s-sp-harf {
	width: 70%;
	margin: 10px 7px 10px 0;
}
.text-m {
	width: 100%;
	margin: 10px 7px 10px 0;
}
}
/* table-form */
.table-form {
	width: 70%;
	margin: 15px auto 30px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.table-form dt {
	width: 25%;
	display: flex;
	padding: 20px 10px;
	letter-spacing: .2rem;
	text-indent: .2rem;
	align-items: flex-start;
}
.table-form dd {
	width: 75%;
	padding: 0 20px 10px;
	word-break: break-all;
	word-wrap: break-word;
}

/* for TABLET */
@media screen and (max-width: 800px) {
.table-form {
	width: 100%;
	margin: 15px 0 30px;
	border-top: none;
}
.table-form dt {
	width: 100%;
	padding: 0 10px;
	border-bottom: none;
}
.table-form dd {
	width: 100%;
	background: #FFF;
	padding: 0 10px;
	border-bottom: none;
}
}
/* essential */
.essential {
	display: inline-block;
	color: #FFF;
	margin-left: 10px;
	vertical-align: middle;
	font-weight: normal;
	background: #B02635;
	font-size: 70%;
	padding: 2px 6px;
}
/* form-description */
.form-description {
	line-height: 1.4;
}
/* error-message */
.error-message {
	color: #f00;
	line-height: 1.4;
	margin-bottom: 1rem;
}
.confirm-txt {
	margin-top: 20px;
}
/* form-caption */
.form-caption {
	font-size: 1.3rem;
	line-height: 1.4;
}
.form-caption-behind {
	font-size: 1.3rem;
	line-height: 1.4;
	padding-left: 3em;
}
/* sp-block */
.form-group .sp-block {
	display: inline;
}

/* for TABLET */
@media screen and (max-width: 800px) {
.form-group .sp-block, .form-group .sp-block-3col {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.form-group .sp-block label {
	width: 15%;
}
.form-group .sp-block input {
	width: 82%;
}
.form-caption-behind {
	padding-left: 17%;
}
.form-group .sp-block-3col label {
	width: 10%;
}
.form-group .sp-block-3col input {
	width: 60%;
}
.form-group .sp-block-3col p {
	width: 30%;
}
input[type=text], input[type="password"] {
	font-size: 1.6rem;
}
select {
	font-size: 1.6rem;
}
 input::-webkit-input-placeholder {
 font-size: 1.5rem;
}
input:-ms-input-placeholder {
 font-size: 1.5rem;
}
input::-moz-placeholder {
 font-size: 1.5rem;
}
}
/* pc-block */
.form-group.pc-block {
	display: flex;
	align-items: center;
}
.form-group.pc-block label {
	width: 20%;
}
.form-group.pc-block fieldset {
	width: 80%;
}

/* for TABLET */
@media screen and (max-width: 800px) {
.form-group.pc-block label {
	width: 30%;
}
.form-group.pc-block fieldset {
	width: 70%;
}
}
/* form-list */
.form-list, .form-list-date {
	margin: 5px 0;
	display: flex;
	flex-wrap: wrap;
}
.form-list li {
	margin: 5px 0 5px 0;
	width: calc(100% / 3);
}
.form-list-date li {
	margin: 5px 0 5px 0;
	width: calc(100% / 7);
}

/* for TABLET */
@media screen and (max-width: 800px) {
.form-list li, .form-list-date li {
	width: 100%;
}
}
/* form-list-sp-row */
.form-list-sp-row {
	margin: 5px 0;
	display: flex;
	flex-wrap: wrap;
}
.form-list-sp-row li {
	margin: 5px 0 5px 0;
	width: calc(100% / 3);
}
/* check-list */
.check-list {
	padding-top: 50px;
	margin-bottom: 50px;
	text-align: center;
	border-top: 1px solid #E4E1CF;
}

/* for TABLET */
@media screen and (max-width: 800px) {
.check-list {
	padding-top: 20px;
	margin-bottom: 20px;
	border-top: 1px solid #E4E1CF;
}
.check-list li label {
	margin-left: 1em;
}
}
.check-list a {
	text-decoration: underline;
}
/* scroll-box */
.scroll-box {
	border: 1px solid #cccccc;
	background: #FFF;
	height: 100px;
	overflow-y: scroll;
	padding: 10px;
}
/* form-btn */
.form-btn, .form-btn-delete {
	display: inline-block;
	margin-top: 5px;
	color: #fff;
	vertical-align: middle;
}
.form-btn a:link {
	background-color: #333;
}
.form-btn-delete a:link {
	background-color: #B4B4B4;
}
.form-btn a:link, .form-btn-delete a:link {
	border-radius: 3px;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	margin: 0 3px 3px;
	padding: 2px 8px;
	text-decoration: none;
}
.form-btn a:visited, .form-btn a:hover, .form-btn-delete a:visited, .form-btn-delete a:hover {
	color: #fff;
}
/* --------------------------------------------------
font
-------------------------------------------------- */
.wf-notoserif {
	font-family: 'Noto Serif JP', serif;
}
/* --------------------------------------------------
header
-------------------------------------------------- */

#header {
	width: 100%;
	background: #000;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
}
#header.fixed {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
	padding-bottom: 0;
	height: 70px;
}

/* for TABLET */
@media screen and (max-width: 800px) {
#header {
	background: #FFF;
	position: relative;
	padding-top: 74px;
}

}
/* --------------------------------------------------
h-logo
-------------------------------------------------- */

.h-logo {
}
.h-logo a {
	display: block;
	position: absolute;
	z-index: 20;
	top: 3rem;
	left: 5%;
	max-width: 50px;
}
.h-logo a img {
	height: auto;
	vertical-align: middle;
}
.h-logo a:hover {
	opacity: .7;
}
#header.fixed .h-logo {
	display: none;
}
#logo-s {
	fill: #FFF;
}
#header .fixed-logo {
	display: none;
}
#header.fixed .fixed-logo {
	position: absolute;
	display: flex;
	align-items: center;
	height: 70px;
	width: 140px;
	left: 3%;
	top: 0;
	z-index: 1;
}
#header.fixed .fixed-logo img {
	width: 100%;
}

/* for TABLET */
@media screen and (max-width: 800px) {
.h-logo {
	display: none;
}
}
/* --------------------------------------------------
sp-nav
-------------------------------------------------- */
#sp-nav {
	display: none;
	background: #FFF;
	height: 74px;
	position: relative;
}

/* for TABLET */
@media screen and (max-width: 800px) {
#sp-nav {
	padding: 10px;
	display: block;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 99;
	width: 100%;
	background: #000;
}
}
/* --------------------------------------------------
sp-logo
-------------------------------------------------- */
.sp-logo {
	display: none;
}

/* for TABLET */
@media screen and (max-width: 800px) {
.sp-logo {
	display: flex;
	align-items: center;
	margin: 0 auto;
}
.sp-logo img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 130px;
}
}

/* for TABLET */
@media screen and (max-width: 420px) {
}
/* --------------------------------------------------
go-contents
-------------------------------------------------- */
.go-contents {
	left: -999px;
	position: absolute;
	top: -999px;
}
/* --------------------------------------------------
h-menu
-------------------------------------------------- */
.h-menu {
	padding-top: 2.5rem;
	padding-right: 2.5vw;
	display: flex;
	justify-content: flex-end;
	padding-bottom: 5px;
	flex-wrap: wrap;
	margin-left: auto;
	width: 100%;
	color: #FFF;
	font-size: 90%;
}
#header.fixed .h-menu {
	display: none;
}

/* for TABLET */
@media screen and (max-width: 800px) {
	.h-menu {
		justify-content: center;
		flex-direction: column;
		width: 80%;
		margin: 0 auto;
		padding-top: 0;
		font-size: 90%;
		padding-right: 0;
	}
	
	#header.fixed .h-menu {
		display: block;
	}
}
/* bnt-access */

.bnt-grandunveiling a {
	background: #B39B2F;
	display: block;
	text-align: center;
	color: #FFF;
	padding: 10px 40px;
	transition: all 0.3s;
	overflow: hidden;
	position: relative;
	font-size: 110%;
	letter-spacing: .2rem;
	z-index: 90;
}
.bnt-grandunveiling a span {
	display: block;
	font-size: 50%;
}
.bnt-grandunveiling a:hover {
	background: #C4B15D;
}


.bnt-webket a {
	background: #70C4BF;
	display: block;
	text-align: center;
	color: #000;
	padding: 10px 40px;
	transition: all 0.3s;
	overflow: hidden;
	position: relative;
	font-size: 130%;
	letter-spacing: .2rem;
	z-index: 90;
    margin-top: .5em;
}

.bnt-webket p .red{ 
	color: #E29595;
}
.bnt-webket p .blue{ 
	color: #C0E5FF;
}
.bnt-webket a span {
	display: block;
	font-size: 50%;
}
.bnt-webket a:hover {
	background: #77D1CB;
}

.bnt-webket a::before {
  display: inline-block;
  content: "";
  width: .7em;
  height: .7em;
  margin-right: 0.5em;
  background: url(../img/related-link.svg) no-repeat center;
    background-size: auto;
  background-size: contain;
}

.bnt-schedule a {
	background: #D7C266;
	display: block;
	text-align: center;
	color: #000;
	padding: 10px 20px;
	transition: all 0.3s;
	overflow: hidden;
	position: relative;
	font-size: 100%;
	letter-spacing: 0;
	z-index: 90;
    margin-top: 1em;
}
.bnt-schedule a span {
	display: block;
	font-size: 50%;
}
.bnt-schedule a:hover {
	background: #E0D085;
}



/* lang */
.h-menu .lang {
	position: relative;
	letter-spacing: .2rem;
	margin: 0 10px;
}
.h-menu .lang dt {
	cursor: pointer;
	position: relative;
}
.h-menu .lang dt a {
	color: #FFF;
	font-weight: bold;
	padding: 10px 20px;
	display: block;
	min-width: 5em;
	;
	margin: 0 auto;
	transition: color .3s, background-color .3s, border-color .3s;
	text-decoration: none;
	text-align: center;
	position: relative;
	font-size: 85%;
}
.h-menu .lang dt a:hover {
	opacity: .5;
}
.h-menu .lang dt a:before {
	content: '';
	display: block;
	position: absolute;
	left: -5px;
	transform: rotate(135deg) translateY(-50%);
	width: 8px;
	height: 8px;
	border-top: 1px solid #DFBD37;
	border-right: 1px solid #DFBD37;
	transition: border-color .3s;
}
a.box:hover::after {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
.h-menu .lang dd {
	width: 100%;
	position: absolute;
	display: none;
	top: auto;
	left: 0;
	border: #000 solid 1px;
	z-index: 100;
}
.h-menu .lang dd a {
	width: 100%;
	display: block;
	min-width: 5em;
	padding: 10px;
	color: #FFF;
	background: #231F20;
	text-align: center;
	border-bottom: #000 solid 1px;
}
.h-menu .lang dd a:hover {
	background: #3D3E3D;
}
.h-menu .lang dd a:last-of-type {
	border-bottom: none;
}

/* for TABLET */
@media screen and (max-width: 800px) {
.h-menu .lang {
	margin-bottom: 20px;
}

	.bnt-grandunveiling{
		margin-bottom: 3rem;
	}

}
/* --------------------------------------------------
#gnav
-------------------------------------------------- */
#gnav {
	display: flex;
	justify-content: flex-end;
	padding: 3.5rem 20px 1rem 200px;
	width: 100%;
	font-size: 95%;
}
#gnav ul {
	display: flex;
	justify-content: flex-end;
	width: 100%;
}
#gnav ul li {
	display: flex;
	align-content: center;
	justify-content: center;
	line-height: 1;
	margin-right: 1.5%;
}
#gnav ul li a {
	font-size: .9vw;
}

/* for TABLET */
@media screen and (min-width: 1550px) {
	#gnav ul li {
		margin-right: 2%;
	}
	#gnav ul li a {
		font-size: 1.4rem;
	}
	
}


#header.fixed #gnav {
	margin-top: 1rem;
	height: 70px;
	align-items: center;
}

#gnav a {
	position: relative;
	display: inline-block;
	text-decoration: none;
	color: #FFF;
	padding-bottom: 2rem;
}

#gnav li a:after {
	content: '';
	display: block;
	width: 15px;
	height: 0;
	background-color: #DFBD37;
	position: absolute;
	bottom: -3px;
	left: 50%;
	margin-left: -10px;
	opacity: 0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	-webkit-transform: translate3d(0, -6px, 0);
	transform: translate3d(0, -6px, 0);
	transition: all 400ms cubic-bezier(.455, .03, .515, .955)
}
#gnav li a:hover {
	opacity: .7;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"
}
#gnav li a:hover:after {
	opacity: 1;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	height: 1px;
	-webkit-transform: translate3d(0, -10px, 0);
	transform: translate3d(0, -10px, 0);
	transition: opacity 400ms cubic-bezier(.455, .03, .515, .955), -webkit-transform 400ms cubic-bezier(.455, .03, .515, .955);
	transition: opacity 400ms cubic-bezier(.455, .03, .515, .955), transform 400ms cubic-bezier(.455, .03, .515, .955);
	transition: opacity 400ms cubic-bezier(.455, .03, .515, .955), transform 400ms cubic-bezier(.455, .03, .515, .955), -webkit-transform 400ms cubic-bezier(.455, .03, .515, .955)
}
#gnav li a.selected::after {
	background: #DFBD37;
	opacity: 1;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	height: 1px;
	-webkit-transform: translate3d(0, -10px, 0);
	transform: translate3d(0, -10px, 0);
}

#gnav ul li.sp-show {
	display: none;
}
.btn-menu {
	display: none;
}


/* for TABLET */
@media screen and (max-width: 800px) {
	#gnav {
		width: 100%;
		justify-content: space-between;
		margin: 0 auto;
		padding-top: 0;
		padding-bottom: 10px;
	}
	#gnav ul {
		flex-wrap: wrap;
		flex-direction: column;
		justify-content: center;
		margin: 10px auto;
		width: 80%;
	}
	#gnav ul li {
		margin: 0;
		width: 100%;
		padding: 0 0;
		border-bottom: 1px solid #E0E0E0;
		font-size: 100%;
	}
	#gnav ul li a {
		padding: 2rem 0;
		width: 100%;
		display: block;
	}
	#gnav a::after {
		content: none;
	}
	#gnav li a.selected::after {
		content: none;
	}
	#gnav li a:hover:after {
		opacity: 0;
	}
	#header.fixed #gnav {
		height: auto;
	}

/* --------------------------------------------------
	btn-menu
	-------------------------------------------------- */
.sp-wrap {
	position: fixed;
	width: 100%;
	height: 100%;
	min-height: 100%;
	top: 74px;
	left: 0;
	/*background-color: #F4F4F2;*/
	z-index: 100;
	text-align: center;
	overflow: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	display: none;
	/*margin-top: 100vh;*/
}
.sp-wrap.on {
	display: block;
}
.sp-wrap-inner {
	display: flex;
	flex-direction: column-reverse;
	height: 150%;
	justify-content: flex-end;
	background: rgba(0,0,0,0.9);
	overflow-y: scroll;
}
.btn-menu {
	display: block;
	background: none;
	border: none;
	padding: 0;
	width: 35px;
	letter-spacing: 0.1em;
	cursor: pointer;
	position: absolute;
	top: 8px;
	right: 15px;
	z-index: 1001;
	text-align: center;
	outline: none;
}
.btn-menu .drawer-bar {
	background-color: #C4B15D;
}
.btn-menu.open .drawer-bar {
	width: 46px;
}
.btn-menu.open .drawer-bar1 {
	transform: rotate(36deg);
}
.btn-menu.open .drawer-bar2 {
	opacity: 0;
}
.btn-menu.open .drawer-bar3 {
	transform: rotate(-36deg);
}
.btn-menu.open .drawer-menu_text {
	display: none;
}
.btn-menu.open .drawer-close {
	display: none;
}
.drawer-bar {
	display: block;
	height: 1px;
	margin: 13px 0;
	transition: all 0.2s;
	transform-origin: 0 0;
}
.drawer-text {
/*	text-align: center;
	font-size: .9rem;
	color: #DFBD37;
	position: absolute;
	width: 100%;
	left: 0;
	bottom: -6px;*/
	display: none;
}
.drawer-close {
	letter-spacing: 0.08em;
	display: none;
}
.drawer-menu-text {
	/*display: block;*/
	display: none;
}
}
/* --------------------------------------------------
breadCrumbs
-------------------------------------------------- */

.breadCrumbs {
	width: 100%;
	display: flex;
	margin-left: auto;
	padding: 2em;
	border-top: 1px solid #DDDDDD;
	border-bottom: 1px solid #DDDDDD;
	font-size: 90%;
}
.breadCrumbs ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-right: 2%;
}
.breadCrumbs li {
	margin-left: 1.8em;
}
.breadCrumbs a {
	align-items: center;
	position: relative;
}
.breadCrumbs a:hover {
	text-decoration: none;
}
.breadCrumbs li a:after {
	content: "";
	width: 7px;
	  height: 7px;
	  border-top: 1px solid #AFAFAF;
	  border-right: 1px solid #AFAFAF;
	  transform: rotate(45deg);
	position: absolute;
	top: 35%;
	right: -15px;
	padding: 0;
}
.breadCrumbs li:last-of-type:after {
	content: none;
}


/* for TABLET */
@media screen and (max-width: 800px) {
	.breadCrumbs {
		width: 100%;
		margin-top: 5px;
	}
	.breadCrumbs ul {
		padding: 10px 0;
	}
}

/* for TABLET */
@media screen and (max-width: 420px) {
		.breadCrumbs {
			padding: 1em;
		}
}
/* --------------------------------------------------

pagetop

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

#page-top {
	position: fixed;
	bottom: 100px;
	right: 40px;
	z-index: 10;
}
#page-top a {
	font-size: 1.1rem;
	font-weight: 400;
	padding: 2em 0 0;
	display: inline-block;
	position: absolute;
	right: 0;
	bottom: 0;
	height: 9em;
	line-height: 1;
}
#page-top span {
	transform: rotate(90deg);
	letter-spacing: .1em;
	display: inline-block;
	margin-top: 2rem;
	margin-right: -1.5rem;
}
#page-top a:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	height: 16px;
	width: 1px;
	transform: rotate(-25deg);
	transform-origin: top left;
	background: #000;
	transition: all .25s ease-in-out;
}
#page-top a:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	width: 1px;
	background: #000;
	transition: all .25s ease-in-out;
}
#page-top a:hover:before {
	top: -10%;
}
#page-top a:hover:after {
	top: -10%;
	height: 110%;
}

/* for TABLET */
@media screen and (max-width: 800px) {

	#page-top {
		position: fixed;
		bottom: 2%;
		right: 10px;
		z-index: 10;
	}
}


/* for MOBILE */
@media screen and (max-width: 420px) {
		#page-top {
		position: fixed;
		bottom: 2%;
		right: 10px;
		z-index: 10;
	}

	#page-top a {
		font-size: 0.8rem;
		padding: 0 0 0;
		right: 0;
		bottom: 0;
		height: 6em;
		line-height: 1;
	}
	
}
/* --------------------------------------------------

footer

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

.footer {
	padding-top: 2rem;
	font-size: 90%;
}

@media screen and (max-width: 420px) {
	.footer {
		font-size: 1.4rem;
	}
}
/* sns-btn */

.sns-btn ul {
	display: flex;
	justify-content: center;
	margin-bottom: 3em;
}
.sns-btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #000;
	font-size: 3rem;
	margin: 0 .2em;
	height: 2em;
	width: 2em;
}
.sns-btn a:hover {
	opacity: .5;
}

@media screen and (max-width: 420px) {
	.sns-btn a {
		font-size: 2.5rem;
	}
	.sns-btn ul {
	margin-bottom: 1em;
}
}
/* footer-block */

.footer-block.inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 4em;
}

@media screen and (max-width: 800px) {
.footer-block.inner {
	width: 100%;
	flex-direction: column-reverse;
	padding-bottom: 0;
}
}



.footer-address-col{
	display: flex;
	width: 70%;
}
.view-address{
	margin-right: 30px;
}

.view-address h3{
	font-size: 120%;
}

.view-address h3:nth-of-type(2){
    margin-top: .8em; 
}

@media screen and (max-width: 800px) {
	.footer-address-col{
		width: 100%;
		display: block;
		background: url(../img/bg_footer.jpg);
		margin-top: 3rem;
		padding-top: 3rem;
	}
	.view-address{
		margin-right: 0;
		text-align: center;
	}
}
/* footer-address */

.footer-address {
	align-items: center;
	padding-right: 5rem;
}

.footer-address h3{
	font-size: 120%;
}
.footer-logo {
	width: 4%;
	min-width: 3rem;
	margin-right: 2em;
}
.footer-logo a {
	display: block;
	background: url(../img/logo_foot.svg) no-repeat;
	background-size: cover;
	padding-top: 347%;
}
.footer-logo img {
	display: none;
}
.footer-address address {
	line-height: 2;
}
.footer-address address span {
	display: inline-block;
	font-size: 1.5rem;
	margin-bottom: .3em;
}
.f-menu {
	height: 100%;
	width: 18rem;
	justify-content: center;
	margin-bottom: 3em;
}
.f-menu li + li {
	margin-top: .5em;
}
.f-menu a {
	position: relative;
}
.f-menu a::before {
	content: '';
	display: block;
	position: absolute;
	left: -3rem;
	top: 50%;
	transform: translateY(-50%);
	width: 1rem;
	border-top: 1px solid #222;
	border-right: 1px solid #222;
	transition: border-color .3s;
	transition: all .25s ease-in-out;
}
.f-menu a:hover::before {
	left: -2.5rem;
}

.f-menu button{
	background-color: transparent;
	border: none;
	cursor: pointer;
	position: relative;
}

.f-menu button::before {
	content: '';
	display: block;
	position: absolute;
	left: -3rem;
	top: 50%;
	transform: translateY(-50%);
	width: 1rem;
	border-top: 1px solid #222;
	border-right: 1px solid #222;
	transition: border-color .3s;
	transition: all .25s ease-in-out;
}

.f-menu button:hover::before {
	left: -2.5rem;
}

#ot-sdk-btn.ot-sdk-show-settings, #ot-sdk-btn.optanon-show-settings{
	border: none !important;
	color: #303030 !important;
	padding: 0 !important;
	font-size: 1em !important;
}

#ot-sdk-btn.ot-sdk-show-settings:hover, #ot-sdk-btn.optanon-show-settings:hover{
	background: none !important;
	color: #303030 !important;
}

@media screen and (max-width: 800px) {
.footer-address h3,
.footer-address p{
	text-align: center;
}
.footer-address {
	flex-direction: column;
	padding: 2em 2em 0 2em;
	justify-content: center;
	
	width: 100%;
	flex: 0 1 auto;
}
.footer-address address {
	text-align: center;
}
.footer-logo {
	width: 30%;
	margin: 0 auto;
	margin-bottom: 2em;
	text-align: center;
}
.footer-logo a {
	background: none;
	padding-top: 0;
}
.footer-logo img {
	display: block;
}
.f-menu {
	height: auto;
	width: 100%;
	display: flex;
}
.f-menu li + li {
	margin-top: .0;
	margin-left: 1em;
}
.f-menu a::before,
.f-menu button::before{
	display: none;
}
}

@media screen and (max-width: 420px) {
	.footer-address {
		flex-direction: column;
		padding: 3em 1em 0 1em;
		justify-content: center;
		background: url(../img/bg_footer.jpg);
		width: 100%;
		flex: 0 1 auto;
		font-size: 80%;

	}
}
/* copy-blocks */

.copy-block {
	padding: 1.5em 0;
	background: #000000;
	color: #FFF;
	font-size: 80%;
}
.copy-block > .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.copy-block ul {
	flex: 1;
	padding-right: 2rem;
}
.copyright {
	width: 18rem;
	text-align: center;
}

@media screen and (max-width: 800px) {
.copy-block {
	background: url(../img/bg_footer.jpg);
	color: #000;
	padding: 0;
}
.copy-block ul {
	padding: 2em 2em 3em 2em;
}
.copy-block li + li {
	margin-top: 1em;
}
.copy-block > .inner {
	display: block;
	width: 100%;
}
.copyright {
	width: 100%;
	padding: 1.5em 0;
	background: #000000;
	color: #FFF;
	text-align: center;
}
}

@media screen and (max-width: 800px) {
.copy-block {
	font-size: 80%;
	}
}

@media screen and (max-width: 420px) {
	.f-menu {
		font-size: 80%;
		height: auto;
		width: 100%;
		display: flex;
		justify-content: center;
		flex-direction: column;
		align-items: center;
		margin-bottom: 0;
	}
	.f-menu li {
		padding-bottom: 5px;
		width: 100%;
		text-align: center;
		border-top: 1px solid #F0F0F0;
		padding-top: 5px;
	}
}
/* --------------------------------------------------

inner

-------------------------------------------------- */
.inner {
	max-width: 1140px;
	margin: 0 auto;
	position: relative;
	width: 94%;
}

/* for TABLET */
@media screen and (max-width: 800px) {
	.inner {
	width: 90%;
}
}
/* --------------------------------------------------

contents

-------------------------------------------------- */
#contents {
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	padding-top: 215px;
}

/* for MOBILE */
@media screen and (max-width: 800px) {
#contents {
	padding-top: 0;
}
}
/* --------------------------------------------------

icon

-------------------------------------------------- */
.icon-new {
	background: #000;
	color: #E1D28A;
	font-size: 85%;
	letter-spacing: .2rem;
	padding: .1em .5em;
	margin-left: 1em;
}
/* --------------------------------------------------

ttl

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

/* ttl-vertical */

.ttl-vertical {
	-moz-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	letter-spacing: .2rem;
	line-height: 1.8;
	display: inline-block;
}
.ttl-vertical span {
	display: block;
	position: relative;
	font-size: 1.2rem;
	color: #AC922C;
	padding-top: 3rem;
}
.ttl-vertical span::before {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	top: 0;
	height: 2rem;
	border-bottom: 1px solid #AC922C;
	border-right: 1px solid #AC922C;
	transition: border-color .3s;
	transition: all .25s ease-in-out;
}
.ttl-vertical h2 {
	font-size: 3rem;
}

@media screen and (max-width: 800px) {
.ttl-vertical h2 {
	font-size: 2.5rem;
}
.ttl-vertical span {
	font-size: 1rem;
}
/*	.ttl-vertical span{
		padding-top:0;
		padding-left: 2.5rem;
	}*/
	
/*	.ttl-vertical span::before {
		left: 0;
		top: 50%;
		width: 2rem;
		height:  0;
		border-bottom: 1px solid #AC922C;
		border-right: 1px solid #AC922C;
	}
	*/
}
/* ttl-horizontal */

.ttl-horizontal {
	text-align: center;
	padding: 6rem 0 0 0;
}
.ttl-horizontal h2 {
	font-size: 2.5rem;
	letter-spacing: .2rem;
	position: relative;
}
.ttl-horizontal h2::before {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	top: 2rem;
	height: 3rem;
	border-bottom: 1px solid #AC922C;
	border-right: 1px solid #AC922C;
	transition: border-color .3s;
	transition: all .25s ease-in-out;
	transform: translateY(-200%);
}
a:hover .ttl-horizontal h2::before {
	transform: translateY(-150%);
}
.ttl-horizontal span {
	margin: 0 0 2rem;
	display: block;
	color: #AC922C;
	letter-spacing: .2rem;
	font-size: 1.2rem;
}

@media screen and (max-width: 800px) {
	.ttl-horizontal {
		padding: 4em 0 0 0;
	}
	.ttl-horizontal h2::before {
		top: 2rem;
	}
}
@media screen and (max-width: 420px) {
	.ttl-horizontal {
		padding: 2em 0 3em 0;
	}
	
	.ttl-horizontal h2{
		font-size: 2rem;
	}
	.ttl-horizontal span {
		margin: 0 0 2rem;
	}
	.ttl-horizontal h2::before {
		top: 2rem;
		height: 3rem;
	}
}
/* ttl-underbar */
.ttl-underbar {
	text-align: center;
	font-size: 2.8rem;
	margin-bottom: 4%;
	padding-bottom: 2rem;
	position: relative;
}
.ttl-underbar:before {
	content: " ";
	width: 28px;
	height: 2px;
	background: #C9B97A;
	position: absolute;
	bottom: -0.5em;
	left: 50%;
	margin-left: -14px;
}

@media screen and (max-width: 800px) {
	/* ttl-underbar */
	.ttl-underbar {
		font-size: 2.4rem;
	}
	.ttl-underbar:before {
		bottom: -0.1em;
	}
}

@media screen and (max-width: 420px) {
	/* ttl-underbar */
	.ttl-underbar {
		font-size: 1.8rem;
	}
	.ttl-underbar:before {
		bottom: 0;
	}
}

@media screen and (max-width: 420px) {
}
/* sttl-events */

.sttl-events {
	text-align: center;
	margin-bottom: 5%;
}
.sttl-events .ttl-vertical h3 {
	font-size: 1.8rem;
	border-left: none;
	border-right: none;
	position: relative;
	text-align: left;
	padding: 1rem 0;
	letter-spacing: .28em;
	-moz-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.sttl-events .ttl-vertical h3:before, .sttl-events .ttl-vertical h3:after {
	content: "";
	background: #D2C591;
	width: 1px;
	height: 0;
	position: absolute;
}
.sttl-events .ttl-vertical h3:before {
	bottom: 0;
	left: -1.5em;
}
.sttl-events .ttl-vertical h3:after {
	top: 0;
	right: -1.5em;
}
.sttl-events.fx-down .ttl-vertical h3:before {
	animation: v-border 2s ease-in forwards;
}
.sttl-events.fx-down .ttl-vertical h3:after {
	animation: v-border 2s ease-in forwards;
}
@keyframes v-border {
 0% {
 height: 0;
}
 100% {
 height:40%;
}
}

@media screen and (max-width: 800px) {
	.sttl-events .ttl-vertical h3 {
		font-size: 1.8rem;
		letter-spacing: .2rem;
		word-break: keep-all;
		white-space: nowrap;
	}
}

@media screen and (max-width: 420px) {
	.sttl-events .ttl-vertical h3 {
		font-size: 1.6rem;
		margin-bottom: 2rem;
	}
}



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

page-ttl-slider 

-------------------------------------------------- */
.page-ttl-slider .swiper-slide{
	opacity: 0;
	width: 100%;
}

.page-ttl-slider img{
	width: 100%;
}

.page-ttl-slider .swiper-slide-active img{
	animation: fadein 3s ease  0s 1;
	-webkit-animation: fadein 3s ease  0s 1;
  -webkit-animation-fill-mode: forwards;
	-ms-animation: fadein 3s ease  0s 1;
  -ms-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
@keyframes 
fadein { 
	0%{ opacity:0; }
	30%{ opacity:0; }
	100% { opacity:1; } 
}
@-webkit-keyframes 
fadein { 
	0%{ opacity:0; }
	30%{ opacity:0; }
	100% { opacity:1; } 
}

@-ms-keyframes
fadein { 
	0%{ opacity:0; }
	30%{ opacity:0; }
	100% { opacity:1; } 
}

@media screen and (max-width: 420px) {
	.page-ttl-slider{ 
		
		overflow: hidden;
		margin: 0 auto;
			text-align: center;
}
	
		.page-ttl-slider img{ 
			height: 200px !important;
width: auto !important;
			max-width: none !important;
			margin: 0 auto;
			text-align: center;
			transform: translateX(-150px);
		
		
}
}


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

tab

-------------------------------------------------- */
/* tab-area */

.tab-area {
	max-width: 1140px;
	margin: 0 auto 5%;
	position: relative;
	width: 94%;
	z-index: 10;
}
.tab-area ul {
	display: flex;
	justify-content: center;
	border-top: 1px solid #EBE2D3;
	border-bottom: 1px solid #EBE2D3;
}
.tab-area ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.tab-area ul li {
}
.tab-area ul li a {
	padding: 25px 20px;
	display: block;
	position: relative;
	min-width: 250px;
	text-align: center;
}
.tab-area ul li.active a:before {
	content: " ";
	display: inline-block;
	text-align: center;
	width: 30%;
	height: 7px;
	background: #C9B97A;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -15%;
}

@media screen and (max-width: 800px) {
.tab-area {
	margin: 0 auto 9%;
	z-index: 10;
}
.tab-area ul li {
	width: 50%;
	text-align: center;
}
.tab-area ul li a {
	min-width: auto;
	padding: 10px 10px;
}
}
/* --------------------------------------------------

btn

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

.btn-more {
	display: flex;
	flex-direction: row-reverse;
	padding-bottom: 2em;
}
.btn-more a {
	letter-spacing: .1em;
	display: block;
	position: relative;
	padding-right: 8em;
}
.btn-more a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	height: 1px;
	width: 16px;
	transform: rotate(25deg);
	transform-origin: top right;
	background: #000;
	transition: all .25s ease-in-out;
}
.btn-more a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	height: 1px;
	width: 7em;
	background: #000;
	transition: all .25s ease-in-out;
}
.btn-more a:hover:before {
	right: -10%;
}
.btn-more a:hover:after {
	right: -10%;
}
/* btn-postback */

.btn-postback {
	display: flex;
	justify-content: center;
	padding-top: 2em;
	margin: 50px 0;
}
.btn-postback a {
	letter-spacing: .1em;
	display: block;
	position: relative;
	padding-left: 10em;
}
.btn-postback a:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	height: 1px;
	width: 16px;
	transform: rotate(-25deg);
	transform-origin: top left;
	background: #000;
	transition: all .25s ease-in-out;
}
.btn-postback a:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	height: 1px;
	width: 7em;
	background: #000;
	transition: all .25s ease-in-out;
}
.btn-postback a:hover:before {
	left: -10%;
}
.btn-postback a:hover:after {
	left: -10%;
}
/* btn-file */

.btn-file {
	margin: 20px auto;
}
.btn-file a {
	width: 100%;
	display: block;
	border: 1px solid #000;
	border-radius: 10px;
	text-align: center;
	letter-spacing: .1em;
	position: relative;
	padding: 1rem;
}
.btn-file a span {
	min-width: 380px;
	display: inline-block;
	text-align: center;
	padding-left: 8rem;
	padding-right: 8rem;
	position: relative;
}
.btn-file a span:before {
	content: "";
	background: url("../img/file_icon.svg") no-repeat;
	width: 33px;
	height: 19px;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	background-size: contain;
}

@media screen and (max-width: 1024px) {
.btn-file {
	margin-bottom: 5%;
}
.btn-file a {
	padding-left: 4em;
	padding-right: 4.5em;
}
.btn-file a span {
	min-width: 400px;
	padding-left: 0;
	padding-right: 0;
}
.btn-file a span:before {
	margin-right: 13px;
	margin-left: -46px;
}
}

@media screen and (max-width: 800px) {
	.btn-file a {
		width: 100%;
		font-size: 105%;
	}
	.btn-file a span {
		min-width: 180px;
	}
}

@media screen and (max-width: 420px) {
	.btn-file a span:before {
		width: 18px;
		left: 10px;
	}
	.btn-file a {
		padding-left: 4em;
		padding-right: 2em;
	}
}
/* btn-page */


.btn-page {
	margin: 5% auto;
}
.btn-page a {
	width: 100%;
	display: block;
	border: 1px solid #000;
	border-radius: 10px;
	font-size: 105%;
	text-align: center;
	letter-spacing: .1em;
	position: relative;
	padding: 1rem;
	padding-right: 7%;
}
.btn-page a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 9%;
	height: 1px;
	width: 16px;
	transform: rotate(25deg);
	transform-origin: top right;
	background: #000;
	transition: all .25s ease-in-out;
}
.btn-page a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 9%;
	height: 1px;
	width: 5em;
	background: #000;
	transition: all .25s ease-in-out;
}
.btn-page a:hover:before {
	right: 6%;
}
.btn-page a:hover:after {
	right: 6%;
}
.btn-page a span {
	min-width: 380px;
	display: inline-block;
	text-align: center;
	padding-left: 8rem;
	padding-right: 8rem;
	position: relative;
}
.btn-page a span:before {
	content: "";
	background: url("../img/icon-link.svg") no-repeat;
	width: 33px;
	height: 17px;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	background-size: contain;
  vertical-align: middle;
}

@media screen and (max-width: 420px) {
	.btn-page a span:before {
		width: 20px;
		top: 5px;
		left: 5px;
	}
	
}
/* btn-link */
.btn-link {
	margin: 5% auto;
}
.btn-link a {
	width: 100%;
	display: block;
	border: 1px solid #000;
	border-radius: 10px;
	font-size: 2rem;
	text-align: center;
	letter-spacing: .1em;
	position: relative;
	padding: 1rem;
	padding-right: 7%;
}
.btn-link a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 9%;
	height: 1px;
	width: 16px;
	transform: rotate(25deg);
	transform-origin: top right;
	background: #000;
	transition: all .25s ease-in-out;
}
.btn-link a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 9%;
	height: 1px;
	width: 5em;
	background: #000;
	transition: all .25s ease-in-out;
}
.btn-link a:hover:before {
	right: 6%;
}
.btn-link a:hover:after {
	right: 6%;
}
.btn-link a span {
	min-width: 380px;
	display: inline-block;
	text-align: center;
	padding-left: 8rem;
	padding-right: 8rem;
	position: relative;
}
.btn-link a span:before {
	content: "";
	width: 1em;
	height: 1em;
	margin-right: 0.5em;
	background: url(../img/related-file.svg) no-repeat center;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}


.link-simple {
	padding: 1rem 0;
	text-align: right;
	padding-bottom: 2rem;
	margin-left:auto;
	margin-right:0px;
}
.link-simple span {
	border-bottom: 1px solid #000;
	padding-bottom: 2rem;
	display: inline-block;
}

.link-simple a {
	letter-spacing: .1em;
	display: inline-block;
	position: relative;
	padding-right: 4em;
}
.link-simple a:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	height: 1px;
	width: 8px;
	transform: rotate(25deg);
	transform-origin: top right;
	background: #000;
	transition: all .25s ease-in-out;
}
.link-simple a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	height: 1px;
	width: 5rem;
	background: #000;
	transition: all .25s ease-in-out;
}
.link-simple a:hover:before {
	right: -2%;
}
.link-simple a:hover:after {
	right: -2%;
}
@media screen and (max-width: 420px) {
		.link-simple a {
			padding-right: 3em;
		}
		.link-simple a:after {
			width: 3rem;
		}
		.link-simple span {
			padding-bottom: 1rem;
	}
}

@media screen and (max-width: 1024px) {
.btn-page {
	margin-bottom: 5%;
}
.btn-page a {
	padding-left: 4em;
	padding-right: 4.5em;
}
.btn-page a:before {
	right: 5%;
}
.btn-page a:after {
	width: 2.5em;
	right: 5%;
}
.btn-page a:hover:before {
	right: 3%;
}
.btn-page a:hover:after {
	right: 3%;
}
.btn-page a span {
	min-width: 400px;
	padding-left: 0;
	padding-right: 0;
}
.btn-page a span:before {
	margin-right: 13px;
	margin-left: -46px;
}
}

@media screen and (max-width: 800px) {
	.btn-page a {
		width: 100%;
	}
	.btn-page a span {
		min-width: 180px;
	}
}

@media screen and (max-width: 420px) {
	.btn-page a {
		padding-left: 0;
		padding-right: 0;
	}
	.btn-page a span {
		min-width: none;
		max-width: 150px;
	}
	.btn-page a span:before {
		margin-right: 0;
		margin-left: 0;
		left: -15%;
	}
	.btn-page a:after {
		width: 2em;
	}
	.btn-page a:before {
		width: 12px;
	}
}
/* --------------------------------------------------

table-area

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


.table-area {
	margin-bottom: 10%;
}
.table-area table {
	width: 100%;
}
.table-area table th {
	background: #E4DDC1;
	text-align: center;
	padding: 10px;
	border-bottom: 1px solid #fff;
	border-left: 1px solid #fff;
}
.table-area table tr:last-child th {
	border-bottom: 1px solid #E4DDC1;
}
.table-area table td {
	text-align: center;
	border-bottom: 1px solid #BDBDAE;
	border-right: 1px solid #BDBDAE;
	padding: 10px;
}
/* --------------------------------------------------

flame-box

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

.flame-box {
	padding: 40px 60px 6% 80px;
	position: relative;
	margin-bottom: 10%;
	width: calc(100% - 20px);
}
.flame-box:before {
	content: " ";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0px;
	border: 1px solid #000;
	z-index: -1;
}
.flame-box:after {
	content: " ";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: -20px;
	left: 20px;
	border: 1px solid #000;
	z-index: -1;
}
.flame-box .flame-ttl {
	text-align: center;
	margin-bottom: 7rem;
}

.flame-ttl span {
	font-size: 2.5rem;
	position: relative;
	background: linear-gradient(transparent 80%, #EBE1B1 0%);
  display: inline;
  padding: 0 2px 4px;
}
/*.flame-ttl span:after {
	content: "";
	display: inline-block;
	width: 100%;
	height: 7px;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
	background-color: #EBE1B1;
}*/

.flame-box .flame-txt {
	margin-bottom: 2em;
}
.flame-box ul {
	margin-left: 3em;
	margin-bottom: 2em;
}
.shuttlebus {
	margin: 2% 0 0;
	line-height: 3;
}

/* for MOBILE */
@media screen and (max-width: 800px) {
/* flame-box*/
.flame-box {
	padding: 20px 20px 6% 30px;
	position: relative;
	margin-bottom: 10%;
	width: calc(100% - 10px);
}
.flame-box:after {
	top: -10px;
	left: 10px;
}
.flame-box .flame-ttl {
	margin-bottom: 4rem;
}
.flame-ttl span {
	font-size: 110%;
	position: relative;
}
.flame-box .flame-txt {
	margin-bottom: 2em;
}
.flame-box ul {
	margin-left: 0em;
	margin-bottom: 1em;
}
}
@media screen and (max-width: 420px) {
		.flame-box .flame-ttl {
			margin-bottom: 2rem;
		}
}
/* --------------------------------------------------

view

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

.pc-view {
	display: block;
}
.sp-view {
	display: none;
}

@media screen and (max-width: 800px) {
.pc-view {
	display: none;
}
.sp-view {
	display: block;
}
}
/* --------------------------------------------------

element

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

/* --------------------------------------------------
ttl
-------------------------------------------------- */
.page-ttl-bg img {
	width: 100%;
}
/* ttl */

.ttl {
	font-size: 4rem;
	font-weight: 400;
	position: relative;
	text-align: center;
	margin-bottom: 5%;
	margin-top: 5rem;
	letter-spacing: .5rem;
}
.ttl span {
	font-size: 1.3rem;
	font-weight: normal;
	display: block;
	color: #AC922C;
}

@media screen and (max-width: 800px) {
	.ttl {
		min-height: 0;
		font-size: 2.5rem;
	}
	.ttl span {
		font-size: 1.5rem;
	}
}

@media screen and (max-width: 420px) {
	.ttl {
		min-height: 0;
		font-size: 1.8rem;
		margin-bottom: 3.5rem;
		margin-top: 3.5rem;
	}
	.ttl span {
		font-size: 1rem;
		letter-spacing: .1rem;
		margin-bottom: 1rem;
	}
	.page-ttl-bg{
		overflow: hidden;
	}
	.page-ttl-bg img {
		width: 160%;
		max-width: none;
		text-align: center;
	}
}

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

cms

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

/* --------------------------------------------------
main
-------------------------------------------------- */

#main {
	width: 100%;
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
/* --------------------------------------------------
side-area
-------------------------------------------------- */

.side-area {
	width: 20%;
	order: -1;
	box-sizing: border-box;
}
.side-list {
	margin-bottom: 2rem;
}
.side-list h3 {
	font-size: 1.7rem;
	padding: 15px;
	text-align: center;
	background: #404040;
	color: #FFF;
}
.side-list li {
	background: #000;
}
.side-list li a {
	display: block;
	background: #F2F2F2;
	text-align: center;
	padding: 1.5em 0;
	border-bottom: 1px solid #E8E8E8;
}
.side-list li a:hover {
	opacity: .9;
	color: #308A9F;
}
.side-list li:first-child a {
	background: #E8E8E8;
}
/* --------------------------------------------------
main-area
-------------------------------------------------- */

.main-area {
	width: 75%;
	position: relative;
}

@media screen and (max-width: 800px) {
/* --------------------------------------------------
		main
-------------------------------------------------- */
	
#main {
	display: block;
}
/* --------------------------------------------------
		side-area
-------------------------------------------------- */
		
.side-area {
	width: 100%;
}
/* --------------------------------------------------
		main-area
-------------------------------------------------- */
		
.main-area {
	width: 100%;
}
}
/* --------------------------------------------------
conditions
-------------------------------------------------- */

.conditions {
	position: relative;
	overflow: hidden;
	padding: 10px 0;
	margin-bottom: 20px;
}
.conditions .btn-delete {
	float: right;
}
.conditions dl {
	width: 80%;
	float: left;
}
.conditions dt {
	display: inline;
	vertical-align: middle;
	margin-right: 1rem;
}
.conditions dd {
	display: inline-block;
}
.conditions dd a {
	border: #D0D0D0 solid 1px;
	background: #fff;
	display: inline-block;
	line-height: 1;
	padding: 5px 15px;
	border-radius: 20px;
	cursor: pointer;
	margin: .2rem;
	vertical-align: middle;
	color: #272727;
}
.conditions dd a:before {
	content: "\f00d";
	font-family: fontawesome;
	margin-right: .5rem;
}

@media screen and (max-width: 800px) {
.conditions .btn-delete {
	float: none;
	text-align: right;
	margin-top: 10px;
	display: block;
}
.conditions dl {
	width: 100%;
	float: none;
}
}
/* --------------------------------------------------
paging-sort
-------------------------------------------------- */

.paging-sort {
	width: 100%;
	margin: 5% 0;
	text-align: center;
}
.paging-sort form {
	display: inline-block;
}
.paging-result {
	letter-spacing: .2rem;
}
.paging-result strong {
	margin: 0 .5rem;
}
.paging-display {
	width: 70%;
	text-align: right;
	display: inline-block;
}
.paging-display ul {
	display: inline-block;
}
.paging-display li {
	display: inline-block;
	padding: 7px 15px;
	border-radius: 3px;
	border: #fff solid 1px;
}
.paging-display li.active {
	background: #efefef;
	border: #efefef solid 1px;
}
.paging-display li:hover {
	border: #efefef solid 1px;
}

@media screen and (max-width: 800px) {
.paging-sort {
	display: block;
}
.paging-result {
	width: 100%;
	text-align: right;
	margin-bottom: 1rem;
}
.paging-display {
	width: 100%;
}
}
/* --------------------------------------------------
paging
-------------------------------------------------- */

.paging {
	display: flex;
	justify-content: center;
	text-align: center;
	margin-bottom: 5%;
}
.paging .paging-sort {
	margin-right: 1rem;
}
.paging .paging-sort select {
	padding: 5px 10px;
	line-height: 1;
	vertical-align: middle;
}
.paging .paging-result {
	display: inline-block;
	line-height: 2;
	vertical-align: middle;
}
.paging span {
	display: inline-block;
	vertical-align: middle;
	margin-bottom: .5rem;
}
.paging a {
	line-height: 1;
	letter-spacing: normal;
	display: inline-block;
	padding: 1rem 1.2rem;
	text-decoration: none;
	color: #272727;
	background: #F8F7F5;
}
.paging a:hover {
	opacity: 1;
	color: #FFF;
	background: #404040;
}
.paging .current {
	line-height: 1;
	letter-spacing: normal;
	display: inline-block;
	padding: 1rem 1.2rem;
	text-decoration: none;
	border: #E8E8E8 solid 1px;
	background: #E8E8E8;
}
/* --------------------------------------------------
news-list
-------------------------------------------------- */

.news-list li {
	border-bottom: #DDDDDD solid 1px;
	padding: 1.5rem 0 1.5rem;
	display: flex;
	align-items: center;
}
.news-list .post-date {
	width: 10%;
	padding-bottom: 0;
	text-align: left;
}
.news-list li p {
	flex: 1;
}
.news-list .post-date {
	width: 11em;
}
.news-list .post-date:before {
	display: none;
}
.news-list a {
	display: inline-block;
	vertical-align: middle;
}
.news-list a:hover {
	opacity: .5;
}
.news-list .ico-new {
	margin-left: 1em;
	vertical-align: middle;
}

@media screen and (max-width: 800px) {
	.news-list li {
		flex-flow: column;
		align-items: center;
		align-items: flex-start;
	}
	.news-list .post-date {
		width: 100%;
	}
}

/* --------------------------------------------------
complete-message
-------------------------------------------------- */
.complete-message{
	text-align: center;
}

.complete-message .btn-postback{
	margin-left: -10rem;
}

@media screen and (max-width: 800px) {
		.complete-message .btn-postback{
		margin-left: 0;
	}
}
/* --------------------------------------------------
post-content
-------------------------------------------------- */

.post-content {
	overflow: hidden;
}
/* post-ttl */

.post-ttl {
	line-height: 1.4;
	font-size: 2.7rem;
	padding: 1em 0;
	border-bottom: 1px solid #DDD;
	margin-bottom: 1em;
	color: #000;
}
.post-ttl span {
	margin-left: 1em;
	margin-top: -0.5em;
}
.post-ttl .icon-new {
	font-size: 50%;
}
/* post-date */

.post-date {
	display: block;
	padding: 0 0 1em;
}
/* post-sttl-large */

.post-sttl-large {
	line-height: 1.2;
	margin-top: 4em;
	margin-bottom: 1em;
	font-size: 2.4rem;
	padding: 0.5em;
}
.post-sttl-large:first-of-type {
	margin-top: 0;
}
/* post-sttl-small */

.post-sttl-small {
	line-height: 1.2;
	margin-top: 3em;
	margin-bottom: 1em;
	font-size: 2.0rem;
	padding: 0.5em;
}
.post-sttl-large + .post-sttl-small {
	margin-top: 0;
}
/* post-pht */

.post-pht {
	margin-bottom: 5em;
}
.post-pht div {
	width: 100%;
	height: auto;
	max-height: 600px;
	text-align: center;
}
.post-pht img {
	height: auto;
	max-height: 600px;
	max-width: 100%;
	width: auto;
}
.post-pht figcaption {
	display: block;
	font-size: 1.2rem;
	padding: 5px;
	line-height: 1.2;
	text-align: center;
}
/* two-post-pht */

.two-post-pht {
	display: flex;
	justify-content: space-between;
}
.two-post-pht .post-pht {
	width: 48%;
	font-size: 1.6rem;
	vertical-align: top;
}

@media screen and (max-width: 420px) {
.post-pht div {
	max-height: 300px;
}
.post-pht img {
	max-height: 300px;
}
}
/* --------------------------------------------------
block
-------------------------------------------------- */

/* block-center */
.block-center .pht {
	display: block;
}
/* block-right */
.block-right {
	position: relative;
	overflow: hidden;
	margin-bottom: 20px;
}
.block-right .pht {
	max-width: 50%;
	float: right;
	margin-left: 20px;
}
/* block-left */
.block-left {
	position: relative;
	overflow: hidden;
	margin-bottom: 20px;
}
.block-left .pht {
	max-width: 50%;
	float: left;
	margin-right: 20px;
}
/* block-2col */
.block-2col {
	position: relative;
	overflow: hidden;
	margin-bottom: 20px;
	margin-right: -1%;
}
.block-2col .pht {
	max-width: 49%;
	margin-right: 1%;
	float: left;
}
/* block-3col */
.block-3col {
	position: relative;
	overflow: hidden;
	margin-bottom: 20px;
	margin-right: -2%;
}
.block-3col .pht {
	max-width: 32%;
	margin-right: 1%;
	float: left;
}
/* col-left col-right */
.col-left {
	float: left;
	padding-right: 3%;
	width: 50%;
}
.col-right {
	float: right;
	padding-left: 3%;
	width: 50%;
}
/* iframe-area */
.iframe-area {
	display: block;
	position: relative;
	margin-bottom: 5em;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
}
.iframe-area iframe {
	position: absolute;
	top: -200%;
	bottom: -200%;
	left: -200%;
	right: -200%;
	margin: auto;
	max-height: 100%;
	max-width: 100%;
}
/* wysiwyg */

.wysiwyg {
	word-wrap : break-word;
	overflow-wrap : break-word;
	margin-bottom: 4%;
}
/* h1 */
.wysiwyg h1 {
	line-height: 1.2;
	margin-top: 4em;
	margin-bottom: 2em;
	font-size: 2.4rem;
	padding: 0.5em;
	background: #DBD1A9;
}
.wysiwyg h1:first-child {
	margin-top: 0;
}
.wysiwyg p + h1, .wysiwyg ul + h1, .wysiwyg ol + h1, .wysiwyg table + h1, .wysiwyg dl + h1 {
	margin-top: 4em;
}
/* h2 */
.wysiwyg h2 {
	line-height: 1.2;
	margin-top: 3em;
	margin-bottom: 2em;
	font-size: 2.0rem;
	padding: 0.5em;
	background: #DBD1A9;
}
/* h3 */
.wysiwyg h3 {
	line-height: 1.2;
	margin-top: 2em;
	margin-bottom: 1.5em;
	font-size: 1.8rem;
	background: #EEE;
	padding: 0.5em;
	border: 2px solid #AC922C;
}
/* h4 */
.wysiwyg h4 {
	line-height: 1.2;
	margin-top: 2em;
	margin-bottom: 1.5em;
	font-size: 1.8rem;
	padding: 0.5em;
	padding-left: 0.5em;
	border-left: 5px solid #AC922C;
	border-bottom: 2px solid #AC922C;
}
/* h5 */
.wysiwyg h5 {
	line-height: 1.2;
	margin-top: 1.5em;
	margin-bottom: 1em;
	font-size: 1.6rem;
	padding: 0.25em;
	padding-left: 0.5em;
	border-left: 5px solid #AC922C;
}
/* h6 */
.wysiwyg h6 {
	line-height: 1.2;
	margin-top: 1.5em;
	margin-bottom: 1em;
	font-size: 1.6rem;
}
.wysiwyg h1 + h2, .wysiwyg h1 + h3, .wysiwyg h2 + h3, .wysiwyg h1 + h4, .wysiwyg h2 + h4, .wysiwyg h3 + h4, .wysiwyg h1 + h5, .wysiwyg h2 + h5, .wysiwyg h3 + h5, .wysiwyg h4 + h5, .wysiwyg h1 + h6, .wysiwyg h2 + h6, .wysiwyg h3 + h6, .wysiwyg h4 + h6, .wysiwyg h5 + h6 {
	margin-top: 0;
}
/* 段落 <p> */
.wysiwyg p {
	margin-bottom: 1em;
}
/* 太字赤文字 <strong> */
.wysiwyg strong {
	font-weight: bold;
	color: #F00;
}
/* 太字 <em> */
.wysiwyg em {
	font-weight: bold;
}
/* 斜体 <i> */
.wysiwyg i {
	font-style: italic;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
/* 下線 <u> */
.wysiwyg u {
	text-decoration: underline;
}
/* 打ち消し線 <s> */
.wysiwyg s {
	text-decoration: line-through;
}
/* 下付き <sub> */
.wysiwyg sub {
	font-size: 0.8rem;
	vertical-align: bottom;
}
/* 上付き <sup> */
.wysiwyg sup {
	font-size: 0.8rem;
	vertical-align: top;
}
/* 順序のないリスト <ol> */
.wysiwyg ol {
	margin: 0.5em 0 1em;
	list-style-position: inside;
	list-style-type: none;
}
.wysiwyg ol > li {
	text-indent: -1em;
	padding-left: 1em;
}
/*順序のないリスト <ul> */
.wysiwyg ul {
	margin: 0.5em 0 1em;
  list-style-type: none;
  padding-left: 0;
}


ul.arrange-list-01 {
  list-style-type: none;
  padding-left: 0;
}
.wysiwyg li {
  padding-left: 1em;
  position: relative;
}
.wysiwyg li:before {
 position: absolute;
  top: 0.5em; /* 要素によって要調整 */
  left: 0;
  content: '';
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  background: #AC922C;
  border-radius: 50%;
  vertical-align: middle;
  margin-right: 0.5em;
}
/*横並びリスト <ol><ul> */

.wysiwyg ol.horizontal-list, .wysiwyg ul.horizontal-list {
	display: flex;
}
.wysiwyg .horizontal-list li {
	margin-right: 1.5em;
}
/*定義リスト <dl> */

/*.wysiwyg dl {
	margin: 0.5em 0 1em;
}
.wysiwyg dl dt {
	font-weight: bold;
	background: #f6f6f6;
	display: inline-block;
	padding: 0 .5em;
}
.wysiwyg dl dd {
	margin-bottom: 0.5em;
}*/


.wysiwyg dt {
	border-top: 1px solid #E5E5E4;
	align-self: stretch;
	display: flex;
	align-items: center;
	justify-content: center;
	
	letter-spacing: .2rem;
	text-indent: .2rem;
    text-align: center;
    font-size: 130%;
}

.wysiwyg dd {
	border-top: 1px solid #E5E5E4;
	padding: 1.5em 0;
	text-align: left;
    
}

.wysiwyg dd a:link{
    color: #000;
}

.wysiwyg dd a:hover{
    opacity: .7;
}

.wysiwyg dt:last-of-type,
.wysiwyg dd:last-of-type{
	border-bottom: 1px solid #E5E5E4;
}

/*横並び定義リスト <dl> */

.wysiwyg dl.horizontal-list dt {
	float: left;
	margin-right: .5em;
}
/* インデント <p class="txt-indent"> */
.wysiwyg .txt-indent {
	text-indent: 1em;
}
/* ブロック引用文 <blockquote> */
.wysiwyg blockquote {
	position: relative;
	padding: 1em 2em;
	box-sizing: border-box;
	font-style: italic;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background: #DBD1A9;
	margin: 0.5em 1em;
}
/* 中央揃え <p class="txt-center"> */
.wysiwyg .txt-center {
	text-align: center;
}
/* 右揃え <p class="txt-right"> */
.wysiwyg .txt-right {
	text-align: right;
}
/* 両端揃え <p class="txt-justify"> */
.wysiwyg .txt-justify {
	text-align: justify;
}
/* ハイパーリンク <a href=""> */
.wysiwyg a[href] {
	text-decoration: underline;
	color: #03F;
}
/* アンカー挿入 <a id="" name=""> */
.wysiwyg a {
	text-decoration: none;
	color: inherit;
}
/* テーブル <table> */
.wysiwyg table {
	width: auto;
	max-width: 100%;
	margin: 1em 0 2em;
	border-collapse: collapse;
	border: 1px solid #DDD;
	word-break: break-word;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.wysiwyg table caption {
	text-align: center;
	margin-bottom: 0.5em;
}
.wysiwyg table tr th {
	background: #f6f6f6;
	padding: 0.5em 0.5em;
	border: 1px solid #DDD;
}
.wysiwyg table tr td {
	background: #FFFFFF;
	padding: 0.5em 0.5em;
	border: 1px solid #DDD;
}
.wysiwyg table .txt-justify {
	-moz-text-align-last: justify;
	text-align-last: justify;
}
.wysiwyg .table-center {
	margin: auto;
}
.wysiwyg .table-right {
	margin-left: auto;
}
.wysiwyg .table-left {
	margin-right: auto;
}
.wysiwyg .table-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	margin: 1em 0 2em;
	max-width: none;
}
 .wysiwyg .table-scroll::-webkit-scrollbar {
 height: 5px;
}
.wysiwyg .table-scroll::-webkit-scrollbar-track {
 border-radius: 5px;
 background: #eee;
}
.wysiwyg .table-scroll::-webkit-scrollbar-thumb {
 border-radius: 5px;
 background: #CCC;
}
.wysiwyg .table-scroll table {
	margin: 0;
	max-width: none;
}
.wysiwyg .table-scroll table caption {
	text-align: left;
}

@media screen and (max-width: 414px) {
.wysiwyg .table-scroll table {
	min-width: 100%;
}
}
/* フォントサイズ小 <span class="font-size-small"> */
.wysiwyg .font-size-small {
	font-size: 0.6em;
}
/* フォントサイズ大 <span class="font-size-large"> */
.wysiwyg .font-size-large {
	font-size: 1.75em;
}
/* 文字の間隔0.5em <span class="font-space-small"> */
.wysiwyg .font-space-small {
	letter-spacing: 0.5em;
	margin-left: 0.5em;
}
/* 文字の間隔1.0em <span class="font-space-medium"> */
.wysiwyg .font-space-medium {
	letter-spacing: 1.0em;
	margin-left: 1.0em;
}
/* 文字の間隔1.5em <span class="font-space-large"> */
.wysiwyg .font-space-large {
	letter-spacing: 1.5em;
	margin-left: 1.5em;
}
/* 文字の間隔2.0em <span class="font-space-xlarge"> */
.wysiwyg .font-space-xlarge {
	letter-spacing: 2.0em;
	margin-left: 2.0em;
}
/* アドレス */
.wysiwyg address {
	position: relative;
	padding: 1em 2em;
	box-sizing: border-box;
	font-style: italic;
	background: #FBFBFB;
	margin: 0.5em 1em;
}
/* 短い引用 */
.wysiwyg q:before {
	content: '"';
	display: inline-block;
}
.wysiwyg q:after {
	content: '"';
	display: inline-block;
}
.wysiwyg q q:before {
	content: "'";
	display: inline-block;
}
.wysiwyg q q:after {
	content: "'";
	display: inline-block;
}
.wysiwyg q:lang(ja):before {
	content: '『';
	display: inline-block;
}
.wysiwyg q:lang(ja):after {
	content: '』';
	display: inline-block;
}
.wysiwyg q q:lang(ja):before {
	content: "「";
	display: inline-block;
}
.wysiwyg q q:lang(ja):after {
	content: "」";
	display: inline-block;
}
/* 出典 */
.wysiwyg cite {
	font-style: italic;
	font-family: Times New Roman, "ＭＳ Ｐゴシック";
}
/* post-pht-txt */

.post-pht-txt {
}
.post-pht-txt:after {
	content: "";
	display: block;
	clear: both;
}
.post-pht-txt .post-pht {
	float: right;
	width: 48%;
	margin: 0 0 2% 2%;
	z-index: 10;
	position: relative;
}
.post-pht-txt .wysiwyg {
	margin-bottom: 5em;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.post-pht-txt .wysiwyg h1, .post-pht-txt .wysiwyg h2, .post-pht-txt .wysiwyg h3, .post-pht-txt .wysiwyg h4, .post-pht-txt .wysiwyg h5, .post-pht-txt .wysiwyg h6, .post-pht-txt blockquote {
	display: flex;
}
/* related-file */

.related-file {
	line-height: 1.2;
	margin-bottom: -1px;
	padding: 1em 0;
	position: relative;
}
.related-file:before {
	display: inline-block;
	content: "";
	width: 1em;
	height: 1em;
	margin-right: 0.5em;
	background: url(../img/related-file.svg) no-repeat center;
	background-size: contain;
}
/* related-link */

.related-link {
	line-height: 1.2;
	margin-bottom: -1px;
	padding: 1em 0;
}
.related-link:before {
	display: inline-block;
	content: "";
	width: 1em;
	height: 1em;
	margin-right: 0.5em;
	background: url(../img/related-link.svg) no-repeat center;
	background-size: contain;
}
.related-file a, .related-link a {
	text-decoration: underline;
}

/* --------------------------------------------------
animation
-------------------------------------------------- */

/* --------------------------------------------------
animation for PC
-------------------------------------------------- */


@media screen and (min-width: 769px) {
/* --------------------------------------------------
	js-style
	-------------------------------------------------- */
	
.fx-col-in li {
	opacity: 0;
}
.fx-in,  .fx-down,  .fx-up,  .fx-left,  .fx-right {
	visibility: hidden;
}
}
/* --------------------------------------------------
animate
-------------------------------------------------- */


.fadeIn {
	animation-fill-mode: both;
	animation-duration: 2s;
	animation-name: fadeIn;
	visibility: visible !important;
}
 @keyframes fadeIn {
 0% {
opacity: 0;
}
 100% {
opacity: 1;
}
}
.fadeInDown {
	animation-fill-mode: both;
	animation-duration: 1s;
	animation-name: fadeInDown;
	visibility: visible !important;
}
 @keyframes fadeInDown {
 0% {
opacity: 0;
-webkit-transform: translateY(-20px);
-ms-transform: translateY(-20px);
transform: translateY(-20px);
}
 100% {
opacity: 1;
-webkit-transform: translateY(0);
-ms-transform: translateY(0);
transform: translateY(0);
}
}
.fadeInUp {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1.8s;
	-ms-animation-duration: 1.8s;
	animation-duration: 1.8s;
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
	visibility: visible !important;
	animation-timing-function: ease-out;
}
@keyframes fadeInUp {
 0% {
opacity: 0;
-webkit-transform: translateY(70px);
-ms-transform: translateY(70px);
transform: translateY(70px);
}
 100% {
opacity: 1;
-webkit-transform: translateY(0);
-ms-transform: translateY(0);
transform: translateY(0);
}
}
.fadeInLeft {
	animation-fill-mode: both;
	animation-duration: 1s;
	animation-name: fadeInLeft;
	visibility: visible !important;
}
 @keyframes fadeInLeft {
 0% {
opacity: 0;
-webkit-transform: translateX(50px);
-ms-transform: translateX(50px);
transform: translateX(50px);
}
 100% {
opacity: 1;
-webkit-transform: translateX(0);
-ms-transform: translateX(0);
transform: translateX(0);
}
}
.fadeInRight {
	animation-fill-mode: both;
	animation-duration: 1s;
	animation-name: fadeInRight;
	visibility: visible !important;
}
@-webkit-keyframes fadeInRight {
 0% {
opacity: 0;
-webkit-transform: translateX(-20px);
}
 100% {
opacity: 1;
-webkit-transform: translateX(0);
}
}
@keyframes fadeInRight {
 0% {
opacity: 0;
-webkit-transform: translateX(-20px);
-ms-transform: translateX(-20px);
transform: translateX(-20px);
}
 100% {
opacity: 1;
-webkit-transform: translateX(0);
-ms-transform: translateX(0);
transform: translateX(0);
}
}
.fx-swing {
	animation: swing linear 2s infinite;
	transform-origin: center 70% 0;
}
 @keyframes swing {
 0% {
transform: rotate(0deg);
}
 25% {
transform: rotate(2deg);
}
 50% {
transform: rotate(0deg);
}
 75% {
transform: rotate(-2deg);
}
 100% {
transform: rotate(0deg);
}
}
.fade-slow-left::before {
	background-color: #FFF;
	transition: all .8s ease;
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: -1;
}
.fade-slow-left.is-inviewed::before {
	left: 100%;
}
.fade-slow-right::before {
	background-color: #FFF;
	transition: all .8s ease;
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	right: 0;
	top: 0;
	z-index: -1;
}
.fade-slow-right.is-inviewed::before {
	right: 100%;
}

@media screen and (max-width: 800px) {
.fade-slow-left::before {
	content: none;
}
.fade-slow-right::before {
	content: none;
}
}
.fx-panel-left, .fx-panel-right {
	position: relative;
	overflow: hidden;
}
.fx-panel-left img, .fx-panel-right img {
	opacity: 0;
}
.fadePanelAnim-l img, .fadePanelAnim img {
	animation-fill-mode: both;
	animation-duration: 1s;
	animation-timing-function: ease-in;
	animation-name: imgfade;
	visibility: visible !important;
}
 @keyframes imgfade {
 0% {
opacity: 0;
}
 50% {
opacity: 0;
}
 51% {
opacity: 1;
}
 100% {
opacity: 1;
}
}
.fadePanelAnim::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 150;
	left: -100%;
	background: #000;
	animation-fill-mode: both;
	animation-duration: 1s;
	animation-timing-function: ease-in;
	animation-name: blackPanel;
	visibility: visible !important;
}
 @keyframes blackPanel {
 0% {
left: -100%;
}
 5% {
left: -95%;
}
 25% {
left: 0%;
}
 75% {
left: 0%;
}
 80% {
left: 5%;
}
 100% {
left: 100%;
}
}
.fadePanelAnim-l::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 150;
	right: -100%;
	background: #000;
	animation-fill-mode: both;
	animation-duration: 1s;
	animation-timing-function: ease-in;
	animation-name: blackPanel-l;
	visibility: visible !important;
}
 @keyframes blackPanel-l {
 0% {
right: -100%;
}
 5% {
right: -95%;
}
 25% {
right: 0%;
}
 75% {
right: 0%;
}
 80% {
right: 5%;
}
 100% {
right: 100%;
}
}

@media screen and (max-width: 800px) {
.fx-panel-left img, .fx-panel-right img {
	opacity: 1;
}
}
