@charset "UTF-8";
/* # =================================================================
	# top
	# ================================================================= */
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 100;
}

@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 200;
}

@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 300;
}

@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 400;
}

@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}

@-webkit-keyframes blink {
	0%,
	10%,
	20%,
	30%,
	40%,
	50%,
	60%,
	70%,
	80%,
	90%,
	100% {
		opacity: 1;
	}
	5%,
	15%,
	25%,
	35%,
	45%,
	55%,
	65%,
	75%,
	85%,
	95% {
		opacity: 0;
	}
}

@keyframes blink {
	0%,
	10%,
	20%,
	30%,
	40%,
	50%,
	60%,
	70%,
	80%,
	90%,
	100% {
		opacity: 1;
	}
	5%,
	15%,
	25%,
	35%,
	45%,
	55%,
	65%,
	75%,
	85%,
	95% {
		opacity: 0;
	}
}

@-webkit-keyframes shake {
	0%,
	100% {
		-webkit-transform: rotate(0);
						transform: rotate(0);
	}
	20% {
		-webkit-transform: rotate(10deg);
						transform: rotate(10deg);
	}
	40% {
		-webkit-transform: rotate(-10deg);
						transform: rotate(-10deg);
	}
	60% {
		-webkit-transform: rotate(5deg);
						transform: rotate(5deg);
	}
	80% {
		-webkit-transform: rotate(-5deg);
						transform: rotate(-5deg);
	}
}

@keyframes shake {
	0%,
	100% {
		-webkit-transform: rotate(0);
						transform: rotate(0);
	}
	20% {
		-webkit-transform: rotate(10deg);
						transform: rotate(10deg);
	}
	40% {
		-webkit-transform: rotate(-10deg);
						transform: rotate(-10deg);
	}
	60% {
		-webkit-transform: rotate(5deg);
						transform: rotate(5deg);
	}
	80% {
		-webkit-transform: rotate(-5deg);
						transform: rotate(-5deg);
	}
}

::-moz-selection {
	background: #1d6451;
	color: #fff;
}

::selection {
	background: #1d6451;
	color: #fff;
}

::-moz-selection {
	background: #1d6451;
	color: #fff;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
p,
h1,
h2,
h3,
h4,
h5,
h6,
th,
td,
pre,
code,
blockquote,
form,
fieldset,
legend,
input,
textarea,
figcaption,
figure {
	margin: 0;
	padding: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

fieldset,
img {
	border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
th,
var {
	font-style: normal;
	font-weight: normal;
}

li {
	list-style: none;
}

caption,
th {
	text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
}

q:before,
q:after {
	content: '';
}

abbr,
acronym {
	border: 0;
	font-variant: normal;
}

sup {
	vertical-align: text-top;
}

sub {
	vertical-align: text-bottom;
}

input,
textarea,
select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

input,
textarea,
select {
	*font-size: 100%;
}

legend {
	color: #FFF;
}

hr {
	display: none;
}

img {
	vertical-align: bottom;
}

select,
input,
button,
textarea {
	font-size: 99%;
}

table {
	font-size: inherit;
	font: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

pre,
code,
kbd,
samp,
tt {
	font-family: monospace;
	*font-size: 108%;
	line-height: 100%;
}

.hd {
	display: block;
	width: 0;
	height: 0;
	overflow: hidden;
}

.cf:before,
.cf:after {
	content: "";
	display: table;
}

.cf:after {
	clear: both;
}

.cf {
	*zoom: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
hr,
menu,
nav,
section,
main {
	display: block;
}

* {
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
					box-sizing: border-box;
	max-height: 999999px;
	outline: none;
}

*:focus {
	outline: none;
}

button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
}

body {
	-webkit-text-size-adjust: 100%;
	background-color: #fff;
	color: #fff;
	font-family: "Yu Gothic", YuGothic, sans-serif;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.07em;
	line-height: 1.8;
	word-wrap: break-word;
}

a {
	color: #1d6451;
}

a:hover {
	text-decoration: none;
}

.ah {
	-webkit-transition: opacity .3s ease;
	transition: opacity .3s ease;
}

.ah:hover {
	opacity: .7;
}

.cr {
	font-family: 'Courier Prime', monospace !important;
	font-weight: 400 !important;
}

.os {
	font-family: 'Oswald', sans-serif;
	font-weight: 500;
}

#fullWrap {
	position: absolute;
	overflow: hidden;
	width: 100%;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	min-width: 1200px;
	min-height: 620px;
}

@media screen and (min-width: 769px) {
	.sp {
		display: none !important;
	}
}

@media screen and (max-width: 768px) {
	body {
		font-size: 22px;
	}
	.pc {
		display: none !important;
	}
	.ah:hover {
		opacity: 1;
	}
	#fullWrap {
		min-width: 100%;
		width: 750px;
		margin: 0 auto;
		min-height:100vh;
		height:100vh;
		height: -webkit-fill-available;
	}
}

.ldbg {
	pointer-events: none;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	z-index: 1;
	overflow: hidden;
	min-width: 1200px;
	min-height: 620px;
}

.ldbg__light,
.ldbg__dark {
	font-size: 18px;
	position: absolute;
	top: -10%;
	bottom: -10%;
	width: 25px;
	letter-spacing: 0.3em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	left: 50%;
}

@media screen and (max-width: 768px) {
	.ldbg {
		min-width: 100%;
		min-height: 100%;
	}
	.ldbg__light,
	.ldbg__dark {
		width: 35px;
	}
}

.ldbg__light {
	background: #39dfb2;
	margin-left: 5px;
	-webkit-transform: translateY(120%);
					transform: translateY(120%);
}

.ldbg__dark {
	background: #00c992;
	margin-left: -30px;
	-webkit-transform: translateY(-120%);
					transform: translateY(-120%);
}

.ldbg.a1 .ldbg__light {
	-webkit-transform: translateY(0);
					transform: translateY(0);
	-webkit-transition: all 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: all 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
}

.ldbg.a1 .ldbg__dark {
	-webkit-transform: translateY(0);
					transform: translateY(0);
	-webkit-transition: all 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: all 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
}

.ldbg__light--text,
.ldbg__dark--text {
	height: 480px;
	width: 18px;
}

.ldbg__dark--text {
	width: 16px;
}

@media screen and (max-width: 768px) {
	.ldbg__light--text,
	.ldbg__dark--text {
		height: 720px;
		width: 24px;
	}
}

.ldbg.a2 .ldbg__light {
	-webkit-transform: translateY(0) translateX(320px);
					transform: translateY(0) translateX(320px);
	-webkit-transition: -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99), -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	top: -200%;
	bottom: -200%;
}

.ldbg.a2 .ldbg__dark {
	-webkit-transform: translateY(0) translateX(-330px);
					transform: translateY(0) translateX(-330px);
	-webkit-transition: -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99), -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	top: -200%;
	bottom: -200%;
}

.ldbg__light--text {
	background: url(../img/common/loading_text1_2.svg) no-repeat center center/contain;
}

.ldbg__dark--text {
	background: url(../img/common/loading_text2_3.svg) no-repeat center center/contain;
}

.ldbg.a3 .ldbg__light--text,
.ldbg.a3 .ldbg__dark--text {
	opacity: 0;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.ldbg__logo {
	width: 400px;
	height: 206px;
	opacity: 0;
	background: url(../img/common/logo.png) no-repeat center center/auto 100%;
}

.ldbg.a2 .ldbg__logo {
	width: 400px;
	-webkit-transition: all .6s linear;
	transition: all .6s linear;
	-webkit-transition-delay: .3s;
					transition-delay: .3s;
	opacity: 1;
	z-index: 101;
}

/*.ldbg.a3 .ldbg__logo {
	opacity:0;
	transition:all 0.3s linear;
	transition-delay: 0;
}
*/
.ldbg.a3 .ldbg__light {
	margin: 0;
	-webkit-transform: rotate(90deg);
					transform: rotate(90deg);
	-webkit-transition: -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99), -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	-webkit-transform-origin: left center;
					transform-origin: left center;
}

.ldbg.a3 .ldbg__dark {
	/*margin-right:-2px;*/
	-webkit-transform: rotate(90deg);
					transform: rotate(90deg);
	-webkit-transform-origin: right center;
					transform-origin: right center;
	-webkit-transition: -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99), -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
}

.ldbg.a4 .ldbg__light {
	margin: 0;
	left: 0;
	top: 50%;
	right: 0;
	bottom: auto;
	height: 25px;
	width: 100%;
	-webkit-transform-origin: center top;
					transform-origin: center top;
	-webkit-transform: skewY(0deg);
					transform: skewY(0deg);
	-webkit-transition: none;
	transition: none;
}

.ldbg.a4 .ldbg__dark {
	margin: 0;
	left: 0;
	bottom: 50%;
	right: 0;
	top: auto;
	height: 25px;
	width: 100%;
	-webkit-transform: skewY(0deg);
					transform: skewY(0deg);
	-webkit-transform-origin: center bottom;
					transform-origin: center bottom;
	-webkit-transition: none;
	transition: none;
}

@media screen and (max-width: 768px) {
	.ldbg.a4 .ldbg__light,
	.ldbg.a4 .ldbg__dark {
		height: 35px;
	}
}

.ldbg.a5 .ldbg__light {
	margin: 0;
	left: 0;
	top: 0;
	right: 0;
	height: 150%;
	width: 100%;
	/*	transform:skewY(-15deg);*/
	-webkit-transform-origin: center top;
					transform-origin: center top;
	-webkit-transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
	transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
}

.ldbg.a5 .ldbg__dark {
	margin: 0;
	left: 0;
	bottom: 50%;
	right: 0;
	height: 150%;
	width: 100%;
	-webkit-transform: skewY(-15deg);
					transform: skewY(-15deg);
	-webkit-transform-origin: center bottom;
					transform-origin: center bottom;
	-webkit-transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
	transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
}

.ldbg__mv {
	position: absolute;
	z-index: 100;
	left: 50%;
	top: 0;
	bottom: 0;
	opacity: 0;
	-webkit-transform: translateX(-50%);
					transform: translateX(-50%);
}

.ldbg__mv img {
	height: 100%;
	display: block;
}

@media screen and (max-width: 768px) {
	.ldbg__mv {
		width: 100%;
		text-align: center;
		left: 0;
		right: 0;
		top: 50%;
		bottom: auto;
		-webkit-transform: translateY(-50%);
						transform: translateY(-50%);
		z-index: 102;
	}
	.ldbg__mv img {
		height: auto;
		display: block;
		width: 100%;
	}
}

.ldbg.a6 .ldbg__mv {
	opacity: 1;
	-webkit-transition: all .6s ease;
	transition: all .6s ease;
	z-index: 102;
}

.ldbg__mv--text1 {
	position: absolute;
	right: 0;
	top: 0;
	width: 25px;
	height: 0;
	background: #1d6451;
	padding-top: 6px;
	overflow: hidden;
	z-index: 300;
	opacity: 0;
}

.ldbg__mv--text1 strong {
	display: block;
	width: 16px;
	height: auto;
	margin: 0 auto;
	background: url(../img/common/loading_text1_2.svg) no-repeat center top/100% auto;
}

.ldbg__mv--text2 {
	position: absolute;
	right: 32px;
	top: 0;
	width: 25px;
	height: 0;
	background: #1d6451;
	padding-top: 8px;
	overflow: hidden;
	z-index: 300;
	opacity: 0;
}

.ldbg__mv--text2 strong {
	display: block;
	width: 14px;
	height: auto;
	margin: 0 auto;
	background: url(../img/common/loading_text2_3.svg) no-repeat center top/100% auto;
}

@media screen and (max-width: 768px) {
	.ldbg__mv--text1 {
		width: 35px;
	}
	.ldbg__mv--text1 strong {
		width: 24px;
		height: 550px;
	}
	.ldbg__mv--text2 {
		width: 35px;
	}
	.ldbg__mv--text2 strong {
		display: block;
		width: 22px;
		height: auto;
		margin: 0 auto;
		background: url(../img/common/loading_text2_3.svg) no-repeat center top/100% auto;
	}
}

.ldbg.a6 .ldbg__mv--text1 {
	display: none;
	-webkit-transition: all 0.35s cubic-bezier(0.57, 0.28, 0, 0.99);
	transition: all 0.35s cubic-bezier(0.57, 0.28, 0, 0.99);
	height: 376px;
	-webkit-transition-delay: 0.2s;
					transition-delay: 0.2s;
	opacity: 1;
}

.ldbg.a6 .ldbg__mv--text2 {
	display: none;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
	height: 244px;
	-webkit-transition-delay: 0.35s;
					transition-delay: 0.35s;
	opacity: 1;
}

@media screen and (max-width: 768px) {
	.ldbg.a6 .ldbg__mv--text1 {
		height: 560px;
		padding-top: 10px;
	}
	.ldbg.a6 .ldbg__mv--text2 {
		height: 380px;
		padding-top: 12px;
	}
}

.ldbg.a7 .ldbg__mv {
	opacity: 0;
	-webkit-transition: all .6s ease;
	transition: all .6s ease;
}

.ldbg.a7 .ldbg__logo {
	display: none;
}

@media screen and (max-width: 768px) {
	#top .ldbg__dark {
		z-index: 101;
	}
	#top .ldbg__mv.b p {
		display: none;
	}
	#top .ldbg__mv.b {
		opacity: 1;
		position: absolute;
		top: auto;
		bottom:0;
		transform:none;
		-webkit-transition: opacity 0.5s ease;
		transition: opacity 0.5s ease;
		z-index: 100;
		transition-delay: 0.5s
	}
	#top .ldbg__mv.b img {
		-webkit-transition: none;
		transition: none;
	}
}

.ldbg.ax .ldbg__light {
	position: absolute;
	bottom: 0;
	top: 0;
	left: 0;
	right: 0;
	background: #39dfb2;
	margin: 0;
	padding: 0;
	width: auto;
	height: auto;
	-webkit-transform: translate(0);
					transform: translate(0);
}

.ldbg.ax .ldbg__dark {
	position: absolute;
	bottom: 50%;
	top: -100%;
	left: 0;
	right: 0;
	background: #00c992;
	-webkit-transform-origin: center bottom;
					transform-origin: center bottom;
	-webkit-transform: skewY(-10deg);
					transform: skewY(-10deg);
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
}

.ldbg.ax .ldbg__light * {
	display: none;
}

.ldbg.ax .ldbg__dark * {
	display: none;
}

.main__l0 {
	z-index: 100;
	pointer-events: none;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	overflow: hidden;
}

.main__l0--title {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	width: 100%;
	right: 0;
	padding-top: 6.3vh;
}

.main__l0--title svg {
	width: 100%;
}

.main__l0--seagull {
	position: absolute;
	top: 16.12%;
	left: 11.8333%;
	width: 13.6666%;
	height: 14.5161%;
}

.main__l2--pagetitle {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	position: absolute;
	left: 20px;
	top: 90px;
	height: 40px;
	font-size: 22px;
	letter-spacing: 0.1em;
	line-height: 1.81;
	-webkit-transform: translateX(200px);
					transform: translateX(200px);
	opacity: 0;
	-webkit-transition: none !important;
	transition: none !important;
	display: none;
	z-index: 200;
	display: none;
}

.main__l2--pagetitle.active {
	opacity: 1;
	-webkit-transform: translateX(0);
					transform: translateX(0);
	-webkit-transition: all 0.2s ease !important;
	transition: all 0.2s ease !important;
}

.main__l2--pagetitle.white {
	color: #FFF !important;
}

.main__l0--character {
	position: absolute;
	right: 0;
	bottom: 0;
	top: 47.4193%;
	opacity: 0;
}

.main__l0--character img {
	height: 100%;
	display: block;
	margin-left: auto;
}

.main__l0--startdate {
	position: absolute;
	bottom: 17px;
	left: 20px;
	width: 50%;
}

.main__l0--startdate svg {
	height: 100%;
	-o-object-fit: contain;
		 object-fit: contain;
	-o-object-position: 0 100%;
		 object-position: 0 100%;
	display: block;
}

#sub .main__l2--pagetitle {
	z-index: 500;
	display: block;
	-webkit-transform: none;
					transform: none;
	opacity: 1;
}

@media screen and (max-width: 768px) {
	.main__l0 {
		height: 100%;
		min-width: 750px;
		min-height: 100%;
	}
	.main__l0--title {
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		width: 100%;
		right: 0;
		padding-bottom: 10.3vh;
	}
	.main__l0--seagull {
		top: 217px;
		left: 253px;
		width: 206px;
		height: 98px;
	}
	.main__l2--pagetitle {
		right: 24px;
		left: 24px;
		top: 180px;
		height: 40px;
		font-size: 24px;
	}
	.main__l0--character {
		height: 400px;
		top: auto;
		right: -30px;
		bottom: -100px;
	}
	.main__l0--character img {
		height: 100%;
		display: block;
		margin-left: auto;
	}
	.main__l0--startdate {
		position: absolute;
		top: 25px;
		right: 20px;
		left: auto;
		width: 132px;
		height: auto;
	}
	.main__l0--startdate svg {
		height: auto;
		width: 100%;
		-o-object-fit: none;
			 object-fit: none;
		-o-object-position: 0 100%;
			 object-position: 0 100%;
		display: block;
	}
	#sub .main__l0--pagetitle {
		text-align: center;
		font-size: 38px;
		right: 24px;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
	}
}

.main__l1 {
	z-index: 200;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

.main__l1--menus {
	height: 100%;
}

@media screen and (min-width: 769px) {
	.main__l1--menulists {
		-webkit-transition: -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
		transition: -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
		transition: transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
		transition: transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99), -webkit-transform 0.6s cubic-bezier(0.57, 0.28, 0, 0.99);
	}
}

.main__l1--menulist {
	height: 60%;
}

.main__l1--menuonce {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	height: 100%;
}

.main__l1--mainbtn {
	position: absolute;
	left: 50%;
	top: 50%;
	max-height: 65%;
	max-width: 65%;
	border-radius: 50%;
	-webkit-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	-webkit-transition: all 0.3s ease !important;
	transition: all 0.3s ease !important;
	z-index: 4;
	pointer-events: none;
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
}

.main__l1--mainbtnBack {
	position: absolute;
	left: 50%;
	top: 50%;
	height: 65%;
	border-radius: 50%;
	-webkit-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	-webkit-box-shadow: 24px 37px 80px 0px rgba(0, 0, 0, 0.4);
					box-shadow: 24px 37px 80px 0px rgba(0, 0, 0, 0.4);
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__l1--mainbtnBack img {
	height: 100%;
	width: 100%;
}

.main__l1--mainbtn a {
	border-radius: 50%;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	position: relative;
	z-index: 50;
	display: block;
	-webkit-box-shadow: 24px 37px 80px 0px rgba(0, 0, 0, 0.4);
					box-shadow: 24px 37px 80px 0px rgba(0, 0, 0, 0.4);
}

.swiper-slide-active .main__l1--mainbtn {
	max-height: 65%;
	max-width: 65%;
	pointer-events: auto;
	-webkit-transform: translate(-50%, -50%) scale(1.18);
					transform: translate(-50%, -50%) scale(1.18);
}

.swiper-slide-active .main__l1--mainbtnBack {
	height: 77%;
}

.main__l1--mainbtn a img {
	display: block;
	height: 100%;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border-radius: 50%;
	width: 100%;
}

.main__l1--mainbtn a:hover img {
	-webkit-transform: scale(1.1);
					transform: scale(1.1);
}

.conttitleGroup {
	opacity: 0;
}

.swiper-slide-active .main__l1--mainbtnBack .conttitleGroup {
	-webkit-animation: blink 0.1s linear forwards;
					animation: blink 0.1s linear forwards;
	-webkit-animation-delay: 0.6s;
					animation-delay: 0.6s;
}

.slashLiner {
	position: absolute;
	left: 50%;
	top: 50%;
	height: 71.2%;
	width: 2px;
	margin-left: -1px;
	-webkit-transform-origin: left top;
					transform-origin: left top;
	-webkit-transform: rotate(-45deg);
					transform: rotate(-45deg);
	background: #FFF;
	z-index: 2;
}

.horizontalLiner {
	position: absolute;
	left: 100%;
	top: 100%;
	height: 2px;
	width: 12%;
	background: #FFF;
	z-index: 2;
	margin-top: -1px;
}

.horizontalLiner:before {
	content: '';
	position: absolute;
	right: -6px;
	width: 4px;
	height: 4px;
	bottom: -3px;
	border: 2px solid #FFF;
	border-radius: 50%;
}

.conttitle {
	position: absolute;
	left: 113%;
	top: 100%;
	margin-top: -1em;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.1em;
	white-space: nowrap;
	padding-left: 10px;
}

.conttitle span {
	display: block;
	font-size: 11px;
	line-height: 1.4545;
	letter-spacing: 0.04em;
	font-family: "Yu Gothic", YuGothic, sans-serif;
	font-weight: 600;
}

@media screen and (max-width: 768px) {
	.main__l1 {
		min-width: 100%;
		min-height: 100%;
	}
	.swiper-slide-active .main__l1--mainbtnBack .conttitleGroup {
		-webkit-animation: none;
						animation: none;
	}
	/*	.main__l1--menulists {
		transition:all 0.6s ease-in-out;
	}*/
	.main__l1--menulist {
		height: 50%;
	}
	.main__l1--mainbtn {
		height: 46%;
		-webkit-transition: -webkit-transform 0.2s ease !important;
		transition: -webkit-transform 0.2s ease !important;
		transition: transform 0.2s ease !important;
		transition: transform 0.2s ease, -webkit-transform 0.2s ease !important;
	}
	.main__l1--mainbtnBack {
		height: 46%;
		z-index: -1;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.main__l1--mainbtnBack img {
		display: block;
	}
	.swiper-slide-active .main__l1--mainbtn {
		height: 70%;
		pointer-events: auto;
		width: 100%;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		-webkit-transform: translate(-50%, -50%) scale(1.5);
						transform: translate(-50%, -50%) scale(1.5);
	}
	.swiper-slide-active .main__l1--mainbtnBack {
		height: 70%;
		-webkit-transform: translate(-50%, -50%) scale(1.5);
						transform: translate(-50%, -50%) scale(1.5);
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.conttitleGroup {
		opacity: 0;
	}
	.swiper-slide-active .conttitleGroup {
		opacity: 1;
	}
	.slashLiner {
		position: absolute;
		left: 10%;
		top: 50%;
		height: 80%;
		width: 2px;
		margin-left: -1px;
		-webkit-transform-origin: left top;
						transform-origin: left top;
		-webkit-transform: rotate(-45deg);
						transform: rotate(-45deg);
		background: #FFF;
		z-index: 2;
	}
	.horizontalLiner {
		position: absolute;
		left: 66.5%;
		top: 106.5%;
		height: 2px;
		width: 8%;
		background: #FFF;
		z-index: 2;
		margin-top: -1px;
	}
	.horizontalLiner:before {
		content: '';
		position: absolute;
		right: -6px;
		width: 4px;
		height: 4px;
		bottom: -3px;
		border: 2px solid #FFF;
		border-radius: 50%;
	}
	.conttitle {
		position: absolute;
		left: 77%;
		top: 106.5%;
		font-size: 20px;
	}
}

.main__l2 {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: 600;
	pointer-events: none;
}

.main__l2--topics {
	position: absolute;
	left: 17%;
	bottom: 13%;
	width: 7.5%;
}

.main__l2--topicsback {
	width: 100%;
	padding-top: 100%;
	border-radius: 50%;
	-webkit-box-shadow: 24px 37px 80px 0px rgba(0, 0, 0, 0.4);
					box-shadow: 24px 37px 80px 0px rgba(0, 0, 0, 0.4);
	position: relative;
}

.main__l2--topicsmain {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
}

.main__l2--topicsmain a {
	display: block;
	height: 100%;
	border-radius: 50%;
	overflow: hidden;
	pointer-events: auto;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__l2--topicsmain a:hover {
	-webkit-transform: scale(1.1);
					transform: scale(1.1);
}

.main__l2--topicsmain a img {
	width: 100%;
}

.subConttitleGroup {
	opacity: 0;
}

.main__l2--topicsback.hover .subConttitleGroup,
.main__l2--topicsback.show .subConttitleGroup {
	-webkit-animation: blink 0.1s linear forwards;
					animation: blink 0.1s linear forwards;
}

.main__l2--teaser {
	position: absolute;
	left: 10%;
	bottom: 50%;
	width: 9.2%;
	opacity: 1;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__l2--teaserback {
	width: 100%;
	padding-top: 100%;
	border-radius: 50%;
	-webkit-box-shadow: 24px 37px 80px 0px rgba(0, 0, 0, 0.4);
					box-shadow: 24px 37px 80px 0px rgba(0, 0, 0, 0.4);
	position: relative;
}

.main__l2--teasermain {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
}

.main__l2--teasermain a {
	display: block;
	height: 100%;
	border-radius: 50%;
	overflow: hidden;
	pointer-events: auto;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__l2--teasermain a:hover {
	-webkit-transform: scale(1.1);
					transform: scale(1.1);
}

.main__l2--teasermain a img {
	width: 100%;
}

.main__l2--teaserback.hover .subConttitleGroup,
.main__l2--teaserback.show .subConttitleGroup {
	-webkit-animation: blink 0.1s linear forwards;
					animation: blink 0.1s linear forwards;
}

.main__l2--teaser .slashLiner {
	height: 72%;
}

.main__l2--movie {
	position: absolute;
	right: 6.6666%;
	top: 8.87%;
	width: 10.84%;
	opacity: 1;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__l2--movieback {
	width: 100%;
	padding-top: 100%;
	border-radius: 50%;
	-webkit-box-shadow: 24px 37px 80px 0px rgba(0, 0, 0, 0.4);
					box-shadow: 24px 37px 80px 0px rgba(0, 0, 0, 0.4);
	position: relative;
}

.main__l2--moviemain {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
}

.main__l2--moviemain a {
	display: block;
	height: 100%;
	border-radius: 50%;
	overflow: hidden;
	pointer-events: auto;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__l2--moviemain a:hover {
	-webkit-transform: scale(1.1);
					transform: scale(1.1);
}

.main__l2--moviemain a img {
	width: 100%;
}

.main__l2--movieback.hover .subConttitleGroup,
.main__l2--movieback.show .subConttitleGroup {
	-webkit-animation: blink 0.1s linear forwards;
					animation: blink 0.1s linear forwards;
}

.main__l2--movie .slashLiner {
	position: absolute;
	left: 50%;
	top: 50%;
	height: 71.2%;
	width: 2px;
	margin-left: -3px;
	-webkit-transform-origin: right top;
					transform-origin: right top;
	-webkit-transform: rotate(45deg);
					transform: rotate(45deg);
}

.main__l2--movie .horizontalLiner {
	position: absolute;
	right: 100%;
	left: auto;
	top: 100%;
	height: 2px;
	width: 12%;
	margin-right: 1px;
}

.main__l2--movie .horizontalLiner:before {
	content: '';
	position: absolute;
	left: -6px;
	width: 4px;
	height: 4px;
	bottom: -3px;
	border-radius: 50%;
}

.main__l2--movie .conttitle {
	position: absolute;
	right: 112%;
	left: auto;
	top: 100%;
	margin-top: -1em;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.1em;
	white-space: nowrap;
	padding-left: 0;
	margin-right: 15px;
}

@media screen and (max-width: 768px) {
	.main__l2 {
		height: 100%;
		min-width: 100%;
		min-height: 100%;
	}
	.main__l2--topics {
		position: absolute;
		left: 50px;
		bottom: 18.3333%;
		width: 90px;
	}
	.main__l2--topicsmain a {
		display: block;
		height: 100%;
		border-radius: 50%;
		overflow: hidden;
		pointer-events: auto;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		position: relative;
		z-index: 10;
	}
	.subConttitleGroup {
		opacity: 1;
		z-index: -1;
	}
	.main__l2--topics .slashLiner {
		position: absolute;
		left: 50%;
		top: 50%;
		height: 71.2%;
		width: 2px;
		margin-left: -1px;
		-webkit-transform-origin: left top;
						transform-origin: left top;
		-webkit-transform: rotate(-45deg);
						transform: rotate(-45deg);
		background: #FFF;
		z-index: 2;
	}
	.main__l2--topics .horizontalLiner {
		position: absolute;
		left: 100%;
		top: 100%;
		height: 2px;
		width: 12%;
		background: #FFF;
		z-index: 2;
		margin-top: -1px;
	}
	.main__l2--topics .horizontalLiner:before {
		content: '';
		position: absolute;
		right: -6px;
		width: 4px;
		height: 4px;
		bottom: -3px;
		border: 2px solid #FFF;
		border-radius: 50%;
	}
	.main__l2--topics .conttitle {
		position: absolute;
		left: 125%;
		top: 100%;
		margin-top: -1em;
		font-size: 20px;
		font-weight: 500;
		letter-spacing: 0.1em;
		white-space: nowrap;
		padding-left: 10px;
	}
	.main__l2--teaser {
		position: absolute;
		left: 40px;
		bottom: auto;
		top: 250px;
		width: 120px;
		opacity: 1;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.main__l2--teasermain a {
		position: relative;
		z-index: 500;
	}
	.main__l2--teaser .slashLiner {
		position: absolute;
		left: 50%;
		top: 50%;
		height: 71.2%;
		width: 2px;
		margin-left: -1px;
		-webkit-transform-origin: left top;
						transform-origin: left top;
		-webkit-transform: rotate(-45deg);
						transform: rotate(-45deg);
		background: #FFF;
		z-index: 2;
	}
	.main__l2--teaser .horizontalLiner {
		position: absolute;
		left: 100%;
		top: 100%;
		height: 2px;
		width: 12%;
		background: #FFF;
		z-index: 2;
		margin-top: -1px;
	}
	.main__l2--teaser .conttitle {
		position: absolute;
		left: 125%;
		top: 100%;
		margin-top: -1em;
		font-size: 20px;
		font-weight: 500;
		letter-spacing: 0.1em;
		white-space: nowrap;
		padding-left: 10px;
	}
	.conttitle span {
		font-size: 16px;
	}
	.main__l2--movie {
		position: absolute;
		right: 40px;
		top: 200px;
		width: 130px;
		opacity: 1;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.main__l2--moviemain a {
		position: relative;
		z-index: 300;
	}
	.main__l2--movie .conttitle {
		position: absolute;
		right: 112%;
		left: auto;
		top: 100%;
		margin-top: -1em;
		font-size: 20px;
		font-weight: 500;
		letter-spacing: 0.1em;
		white-space: nowrap;
		padding-left: 0;
		margin-right: 15px;
	}
}

.copyright {
	position: absolute;
	right: 28px;
	bottom: 17px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
			-ms-flex-direction: row-reverse;
					flex-direction: row-reverse;
	pointer-events: auto;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.copyright__text {
	margin-right: 10px;
	font-size: 10px;
}

.copyright a {
	display: block;
}

.copyright a:hover {
	opacity: 0.7;
}

.bnp__banner {
	width: 100px;
}

.bnp__banner img {
	width: 100px;
	display: block;
}

.share {
	position: absolute;
	right: 14px;
	top: 8px;
	width: 102px;
	height: 34px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	pointer-events: auto;
}

.share li {
	width: 34px;
	height: 34px;
}

.share li a {
	display: block;
	height: 34px;
	background-size: auto 16px;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.share li a:hover {
	-webkit-transform: translateY(-5px);
					transform: translateY(-5px);
}

.shareList__twitter {
	background: url(../img/share/share_tw.svg) no-repeat center center;
}

.shareList__facebook {
	background: url(../img/share/share_fb.svg) no-repeat center center;
}

.shareList__line {
	background: url(../img/share/share_line.svg) no-repeat center center;
}

.main__l2--logo {
	position: absolute;
	width: 112px;
	height: 57px;
	top: 18px;
	left: 313px;
}

.main__l2--logo a {
	display: block;
	pointer-events: auto;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__l2--logo a:hover {
	-webkit-transform: scale(1.1);
					transform: scale(1.1);
}

.main__l2--logo a img {
	display: block;
	width: 100%;
}

@media screen and (max-width: 768px) {
	.share {
		display: none;
	}
	.copyright {
		display: none;
	}
	.main__l2--logo {
		position: absolute;
		width: 160px;
		height: 83px;
		top: 85px;
		left: 19px;
	}
}

.main__l3 {
	position: absolute;
	left: 0;
	z-index: 800;
	top: 0;
	width: 100%;
	pointer-events: none;
	height: 100%;
	min-height: 620px;
}

.main__l3--holeNumber {
	width: 60px;
	height: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-line-pack: center;
			align-content: center;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	position: absolute;
	left: 20px;
	top: 20px;
	border-radius: 50%;
	font-size: 12px;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	line-height: 1;
	padding-bottom: 4px;
	z-index: 30;
}

.main__l3--holeNumber span {
	display: block;
	font-size: 26px;
	width: 100%;
	text-align: center;
	height: 32px;
	line-height: 1.23;
}

.main__l3--holeYard {
	position: absolute;
	left: 100px;
	top: 28px;
	width: 60px;
	height: 44px;
	font-size: 18px;
	letter-spacing: 0.1em;
	z-index: 30;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__l3--holeYard.active {
	color: #FFF !important;
}

.main__l3--holeYard span {
	display: block;
	height: 22px;
	line-height: 1.2222em;
}

.main__l3--menuBtn {
	position: absolute;
	left: 179px;
	top: 29px;
	width: 100px;
	height: 50px;
	z-index: 30;
}

.main__l3--menuBtn:before,
.main__l3--menuBtn:after {
	content: '';
	position: absolute;
	width: 3px;
	height: 3px;
	left: -17px;
	border-right: 1px solid #FFF;
	border-bottom: 1px solid #FFF;
	-webkit-transform: rotate(45deg);
					transform: rotate(45deg);
	-webkit-transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
	transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
}

.main__l3--menuBtn:before {
	top: 16px;
}

.main__l3--menuBtn:after {
	top: 19px;
}

.main__l3--menuBtn.active:before,
.main__l3--menuBtn.active:after {
	border-color: #FFF !important;
}

.main__l3--menuBtn a {
	display: block;
	height: 50px;
	position: relative;
	pointer-events: auto;
	padding-left: 10px;
	padding-top: 31px;
	text-decoration: none;
	font-size: 10px;
	line-height: 1.3;
	color: #FFF;
	-webkit-transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
	transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
}

.main__l3--menuBtn a:before,
.main__l3--menuBtn a:after {
	content: '';
	width: 80px;
	height: 3px;
	position: absolute;
	left: 10px;
	background: #FFF;
	-webkit-transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
	transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
}

.main__l3--menuBtn a:before {
	top: 11px;
}

.main__l3--menuBtn a:after {
	top: 21px;
}

.main__l3--menuBtn a.active {
	color: #FFF !important;
}

.main__l3--menuBtn a.active:before {
	-webkit-transform: translateY(5px) rotate(15deg);
					transform: translateY(5px) rotate(15deg);
	background: #FFF !important;
}

.main__l3--menuBtn a.active:after {
	-webkit-transform: translateY(-5px) rotate(-15deg);
					transform: translateY(-5px) rotate(-15deg);
	background: #FFF !important;
}

.main__l3--logo {
	width: 200px;
	height: 103px;
	margin-bottom: 35px;
}

.main__l3--logo a {
	display: block;
	height: 103px;
	background: url(../img/common/logo.png) no-repeat center center/contain;
}

.main__l3--nav {
	background: rgba(0, 0, 0, 0.6);
	overflow: auto;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	pointer-events: auto;
	-webkit-transform: translateX(-100%);
					transform: translateX(-100%);
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

.main__l3--nav.active {
	-webkit-transform: translateX(0);
					transform: translateX(0);
}

.main__l3--navin {
	padding: 130px 0 20px 45px;
	min-height: 100%;
	position: relative;
}

.main__l3--navin ul {
	counter-reset: number -1;
}

@media screen and (max-width: 767px) {
	.main__l3--navin .main__l3--navItem li a {
		position: relative;
	}
}

@media screen and (max-width:768px) {
#top .main__l3--navin .main__l3--navItem li a:after {
		font-size: 16px;
		padding: 0 5px 0 3px;
		background-color: #fff;
		color: #035e46;
		font-weight: 600;
		letter-spacing: -.005em;
		font-style: italic;
		line-height: 1.4;
		position: absolute;
		left: 60px;
		top: 44px;
}
}

.main__l3--navin li a {
	color: #FFF;
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
  position: relative;
}

#top .main__l3--navin li:nth-child(n+2) a{
  color: #fff;
}


.main__l3--navin ul.main__l3--navItem li a:before {
	width: 32px;
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero) " -";
	font-family: 'Oswald', sans-serif;
	font-weight: 500;
	text-align: right;
	display: inline-block;
	margin-right: 4px;
}

.main__l3--contentsIn {
	min-height: 300px;
}

/*------------------------------------
	** main__l3--bnr
	**-----------------------------------*/
.main__l3--bnr {
	width: 710px;
	margin: 24px auto;
}

@media screen and (max-width: 767px) {
	.main__l3--bnr {
		width: 100%;
		-ms-flex-item-align: end;
				align-self: flex-end;
		margin: 50px auto;
	}
}

/*.main__l3--bnr ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}*/
.main__l3--bnr ul {
	display: block;
	position: absolute;
	right:20px;
	bottom:20px;
	width:300px;
}
.main__l3--bnr ul li {
	width: 100%;
	margin-top: 24px;
}

@media screen and (max-width: 767px) {
	.main__l3--bnr ul {
		display: block;
		position: absolute;
		right:0;
		bottom:170px;
		width:50%;
	}
	.main__l3--bnr ul li {
		margin: 10px;
	}
	.main__l3--bnr .nav__bnr {
		bottom:340px;
	}
	.main__l3--bnr .nav__bnr li {
		margin:0;
	}
}

.main__l3--bnr ul li a {
	display: block;
}

.main__l3--bnr ul li img {
	max-width: 300px;
	height: auto;
	display: block;
	margin: 0 auto;
	width:100%;
}

.main__l3--news {
	width: 100%;
	padding: 130px 0 20px 0px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-line-pack: start;
			align-content: flex-start;
	height: 100%;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
}

.main__l3--news .newsList {
	width: 100%;
	margin: 0;
	padding-bottom: 0;
}

.main__l3--news .newsList a {
	color: #fff !important;
}

@media screen and (max-width: 768px) {
	.main__l3 {
		position: absolute;
		left: 0;
		z-index: 800;
		top: 0;
		width: 100%;
		pointer-events: none;
		height: 100%;
		min-height: 100%;
	}
	.main__l3--menuBtn {
		left: auto;
		left: 20px;
		top: 90px;
		width: 140px;
		height: 70px;
	}
	.main__l3--menuBtn:before,
	.main__l3--menuBtn:after {
		left: -422px;
	}
	.main__l3--menuBtn a {
		display: block;
		height: 70px;
		position: relative;
		pointer-events: auto;
		padding-left: 11px;
		padding-top: 43px;
		text-decoration: none;
		font-size: 12px;
		line-height: 1.3;
		color: #FFF;
		-webkit-transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
		transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
	}
	.main__l3--menuBtn a:before,
	.main__l3--menuBtn a:after {
		content: '';
		width: 112px;
		height: 3px;
		position: absolute;
		left: 12px;
		background: #FFF;
		-webkit-transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
		transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
	}
	.main__l3--menuBtn a:before {
		top: 18px;
	}
	.main__l3--menuBtn a:after {
		top: 30px;
	}
	.main__l3--menuBtn a.active:before {
		-webkit-transform: translateY(6px) rotate(15deg);
						transform: translateY(6px) rotate(15deg);
		background: #FFF !important;
	}
	.main__l3--menuBtn a.active:after {
		-webkit-transform: translateY(-6px) rotate(-15deg);
						transform: translateY(-6px) rotate(-15deg);
		background: #FFF !important;
	}
	.main__l3--nav {
		background: #1d6451;
		overflow: auto;
		position: fixed;
		left: 0;
		top: 0;
		bottom: 0;
		pointer-events: auto;
		-webkit-transform: translateX(-750px);
						transform: translateX(-750px);
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
	.main__l3--navin::after {
		content: '';
		display: block;
		background-color: #589585;
		position: absolute;
		top: 0;
		right: 0;
		width: 50%;
		bottom:0;
		z-index: -1;
	}
	.main__l3--navin {
		padding: 140px 0 20px;
		display: block;
		min-height: 100%;
		width: 100%;
	}
	.main__l3--navin ul {
		padding: 0 0 0 30px;
	}
	.main__l3--navin li {
		margin-bottom: 35px;
	}
	.main__l3--navin li a {
		white-space: nowrap;
		font-size: 31px;
		-webkit-font-feature-settings: "palt";
						font-feature-settings: "palt";
	}
	.main__l3--navin ul.main__l3--navItem li a:before {
		width: 65px;
		counter-increment: number 1;
		content: counter(number, decimal-leading-zero) " -";
		font-family: 'Oswald', sans-serif;
		font-weight: 500;
		text-align: right;
		display: inline-block;
		margin-right: 4px;
	}
	.main__l3--navin .nav__share {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
		-webkit-box-pack: end;
				-ms-flex-pack: end;
						justify-content: flex-end;
		width: 100%;
		height: 100px;
		margin: 0 auto;
		padding: 0 0 150px;
	}
	.main__l3--navin .nav__share li {
		height: 100px;
		width: 100px;
	}
	.main__l3--navin .nav__share li a {
		display: block;
		height: 100px;
		width: 100px;
		background-size: auto 50px;
	}
	.main__l3--navin .nav__share li a:before {
		display: none;
	}
	.main__l3--logo {
		width: 232px;
		height: 120px;
		margin: 0 auto 35px;
	}
	.main__l3--logo a {
		display: block;
		height: 120px;
		background: url(../img/common/logo.png) no-repeat center center/contain;
	}
	.nav__copyright {
		/* position: fixed;
		right: 300px;
		left: 0;
		bottom: 0;
		padding-top: 10px;
		background: #1d6451;
		transform: translateX(-450px);
		transition: all 0.3s ease-in-out;
		z-index: 500;
		pointer-events: auto */
	}
	.nav__copyright img {
		width: 50%;
		display: block;
		margin: 0 auto;
	}
	.main__l3--nav.active + .nav__copyright {
		-webkit-transform: translateX(0);
						transform: translateX(0);
	}
	.nav__copyright--text {
		color: #FFF;
		padding: 20px;
		line-height: 1.6;
		font-size: 18px;
		text-align: center;
	}
	.main__l3--contentsIn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
				-ms-flex-pack: justify;
						justify-content: space-between;
		min-height: 300px;
	}
	/*------------------------------------
		** main__l3--bnr
		**-----------------------------------*/
	.main__l3--navItem {
		width: 50%;
	}
	.main__l3--bnr {
		width: 50%;
		-ms-flex-item-align: end;
				align-self: flex-end;
	}
	.main__l3--bnr ul {
		padding: 0;
	}
	.main__l3--bnr ul li:not(:last-child) {
		margin-bottom: 10px;
	}
	.main__l3--bnr ul li img {
		width: 100%;
		max-width: 100%;
	}
	.main__l3--news {
		width: 100%;
		position: absolute;
		bottom: 0;
		left: 0;
	}
	.main__l3--news .newsList {
		width: 100%;
		margin: 0;
		padding: 0;
	}
	.main__l3--news .newsList a {
		color: #1d6451 !important;
		background: #fff;
	}
}

.modal__l0,
.modal__lt {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	min-width: 1200px;
	min-height: 620px;
	z-index: 1000;
	-webkit-transform: translateX(100%);
					transform: translateX(100%);
	-webkit-transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
	transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
}

.modal__l1 {
	position: absolute;
	left: calc(100% - 900px);
	top: 0;
	width: 900px;
	height: 100%;
	min-width: 900px;
	min-height: 620px;
	z-index: 1001;
	-webkit-transform: translateX(100%);
					transform: translateX(100%);
	-webkit-transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
	transition: all 0.6s cubic-bezier(0.5, 0.3, 0, 1);
}

.modal__lv {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	min-width: 1200px;
	min-height: 620px;
	z-index: 1000;
	background: rgba(255, 255, 255, 0.95);
	display: none;
}

.modal__l0.active,
.modal__lt.active,
.modal__l1.active {
	-webkit-transform: translateX(0);
					transform: translateX(0);
}

.modal__l0--inner,
.modal__lt--inner {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	background: #FFF;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.modal__l1--inner {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	background: #1d6451;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.modal__lv--inner {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 10;
	background: url(../img/top/mv_1i.jpg) no-repeat center center/contain;
}

.modal__l0--closearea,
.modal__lt--closearea,
.modal__l1--closearea,
.modal__lv--closearea {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}

.modal__l0--closebtn,
.modal__lt--closebtn,
.modal__l1--closebtn {
	cursor: pointer;
	z-index: 150;
	position: absolute;
	left: -35px;
	top: 50%;
	margin-top: -35px !important;
	border: 2px solid #36a789;
	background: #FFF;
	border-radius: 50%;
	width: 70px;
	height: 70px;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.modal__lv--closebtn {
	cursor: pointer;
	z-index: 150;
	position: absolute;
	left: 20px;
	top: 20px;
	border: 2px solid #36a789;
	background: #FFF;
	border-radius: 50%;
	width: 70px;
	height: 70px;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.modal__l0--closebtn:hover,
.modal__lt--closebtn:hover,
.modal__l1--closebtn:hover,
.modal__lv--closebtn:hover {
	-webkit-transform: scale(1.1);
					transform: scale(1.1);
}

.modal__l0--closebtn:before,
.modal__l0--closebtn:after,
.modal__lt--closebtn:before,
.modal__lt--closebtn:after,
.modal__l1--closebtn:before,
.modal__l1--closebtn:after,
.modal__lv--closebtn:before,
.modal__lv--closebtn:after {
	content: '';
	position: absolute;
	width: 28px;
	height: 2px;
	left: 50%;
	top: 50%;
	margin-top: -1px;
	margin-left: -14px;
	background: #36a789;
}

.modal__l0--closebtn:before,
.modal__lt--closebtn:before,
.modal__l1--closebtn:before,
.modal__lv--closebtn:before {
	-webkit-transform: rotate(40deg);
					transform: rotate(40deg);
}

.modal__l0--closebtn:after,
.modal__lt--closebtn:after,
.modal__l1--closebtn:after,
.modal__lv--closebtn:after {
	-webkit-transform: rotate(-40deg);
					transform: rotate(-40deg);
}

@media screen and (max-width: 768px) {
	.modal__l0,
	.modal__lt {
		min-width: 100%;
		min-height: 100%;
		-webkit-transform: translateY(-100%);
						transform: translateY(-100%);
	}
	.modal__l1 {
		left: 0;
		top: 0;
		width: 100%;
		height: calc(100% - 140px);
		min-width: 100%;
		min-height: calc(100% - 140px);
		z-index: 1001;
		-webkit-transform: translateY(-100%);
						transform: translateY(-100%);
	}
	.modal__lv {
		min-width: 100%;
		min-height: 100%;
	}
	.modal__lv--inner {
		position: absolute;
		top: 130px;
		bottom: 130px;
	}
	.modal__l0.active,
	.modal__lt.active,
	.modal__l1.active {
		-webkit-transform: translateY(0);
						transform: translateY(0);
	}
	.modal__l0--inner,
	.modal__lt--inner {
		position: absolute;
		right: 0;
		top: 0;
		bottom: auto;
		left: 0;
		background: #FFF;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		max-height: calc(100% - 100px);
	}
	.modal__l1--inner {
		position: absolute;
		right: 0;
		top: 0;
		bottom: auto;
		left: 0;
		background: #1d6451;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		max-height: calc(100% - 200px);
	}
	.modal__l0--closebtn,
	.modal__lt--closebtn,
	.modal__l1--closebtn {
		cursor: pointer;
		z-index: 150;
		position: absolute;
		left: 50%;
		top: auto;
		bottom: -50px;
		margin-top: 0;
		margin-left: -50px;
		border: 2px solid #36a789;
		background: #FFF;
		border-radius: 50%;
		width: 100px;
		height: 100px;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.modal__l0--closebtn:before,
	.modal__l0--closebtn:after,
	.modal__lt--closebtn:before,
	.modal__lt--closebtn:after,
	.modal__l1--closebtn:before,
	.modal__l1--closebtn:after {
		width: 40px;
		margin-left: -20px;
	}
}

.modal__mv {
	height: 100%;
	width: calc(100vh * 0.712903);
}

.modal__mv img {
	height: 100%;
}

.modal__mv--text1 {
	position: absolute;
	right: 0;
	top: 0;
	width: 25px;
	height: 140px;
	background: #1d6451;
	padding-top: 5px;
	overflow: hidden;
	z-index: 300;
}

.modal__mv--text1 strong {
	display: block;
	width: 16px;
	height: auto;
	margin: 0 auto;
	background: url(../img/common/loading_text1_2.svg) no-repeat center top/100% auto;
}

.modal__mv--text2 {
	position: absolute;
	right: 32px;
	top: 0;
	width: 25px;
	height: 238px;
	background: #1d6451;
	padding-top: 4px;
	overflow: hidden;
	z-index: 300;
}

.modal__mv--text2 strong {
	display: block;
	width: 16px;
	height: auto;
	margin: 0 auto;
	background: url(../img/common/loading_text2_3.svg) no-repeat center top/100% auto;
}

@media screen and (max-width: 768px) {
	.modal__mv {
		height: auto;
		width: 100%;
	}
	.modal__mv img {
		height: auto;
		width: 100%;
	}
	.modal__mv--text1 {
		position: absolute;
		right: 0;
		top: 0;
		width: 35px;
		height: 560px;
		background: #1d6451;
		padding-top: 10px;
		overflow: hidden;
		z-index: 300;
	}
	.modal__mv--text1 strong {
		display: block;
		width: 24px;
		height: 550px;
		margin: 0 auto;
		background: url(../img/common/loading_text1_2.svg) no-repeat center top/100% auto;
	}
	.modal__mv--text2 {
		position: absolute;
		right: 32px;
		top: 0;
		width: 35px;
		height: 380px;
		background: #1d6451;
		padding-top: 12px;
		overflow: hidden;
		z-index: 300;
	}
	.modal__mv--text2 strong {
		display: block;
		width: 22px;
		height: 380px;
		margin: 0 auto;
		background: url(../img/common/loading_text2_3.svg) no-repeat center top/100% auto;
	}
}

.modal__newsListWrap {
	min-width: 1010px;
	width: 40vw;
	height: 100%;
	overflow: auto;
}

.modal__newsListWrap--head {
	height: 90px;
	padding: 0 28px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.modal__newsListWrap--head:after {
	font-size: 22px;
	letter-spacing: 0.1em;
	content: 'News';
	display: block;
	opacity: 0;
}

.modal__newsListWrap--head h2 {
	font-size: 22px;
	letter-spacing: 0.1em;
	color: #1d6451;
}

.modal__inner--logo {
	width: 132px;
	height: 69px;
	background: url(../img/common/logo.png) no-repeat center center/contain;
}

.modal__newsList--titlehead {
	margin: 0 56px 2px;
	background: #2b2b2b;
	position: relative;
	height: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
}

.modal__newsList--titlehead span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 50px;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.nl__date {
	width: 140px;
	padding-left: 30px;
	position: relative;
	text-align: left;
}

.nl__title {
	position: absolute;
	left: 140px;
	right: 80px;
	top: 0;
	bottom: 0;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size: 15px;
}

@media screen and (max-width: 767px) {
	.nl__title {
		width: 76% !important;
	}
}

.nl__link {
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	width: 50px;
	position: relative;
}

.newsList {
	margin: 0 56px;
	padding-bottom: 30px;
}

.newsList li {
	height: 100px;
	margin-bottom: 10px;
}

.newsList li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 100px;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	position: relative;
	background: #1d6451;
	text-decoration: none;
	color: #FFF;
}

.newsList li a:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 0;
	background: #062f24;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.newsList li a:hover:before {
	width: 100%;
}

.newsList li a span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 100px;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	line-height: 1.8;
}

.newsList li a .nl__link {
	background: #a10000;
	height: 100%;
}

.newsList li a .nl__link:before {
	content: '';
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #FFF;
	position: absolute;
	left: 17px;
	top: 50%;
	margin-top: -8px;
}

.newsList li a .nl__link:after {
	content: '';
	position: absolute;
	width: 4px;
	height: 4px;
	border-top: 2px solid #a10000;
	border-right: 2px solid #a10000;
	-webkit-transform: rotate(45deg);
					transform: rotate(45deg);
	left: 50%;
	top: 50%;
	margin-top: -3px;
	margin-left: -4px;
}

.twitterin__head {
	height: 90px;
	padding-left: 28px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.twitterin__head h2 {
	font-size: 22px;
	color: #1d6451;
	letter-spacing: 0.1em;
}

.twitter__widget {
	width: 25vw;
	min-width: 450px;
	height: calc(100% - 90px);
	padding: 0 47px 33px 47px;
}

.twitter__widget--inner {
	padding: 10px;
	height: 100%;
	background: #0e3c30;
	border-radius: 15px;
}

@media screen and (max-width: 768px) {
	.modal__newsListWrap {
		min-width: 750px;
		width: 750px;
		height: calc(100% - 100px);
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	.modal__newsListWrap--head {
		height: 120px;
		padding: 0 240px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
		-ms-flex-line-pack: center;
				align-content: center;
		-ms-flex-wrap: wrap;
				flex-wrap: wrap;
	}
	.modal__newsList--titlehead .nl__title {
		height: 50px !important;
		line-height: 50px !important;
	}
	.modal__newsListWrap--head:after {
		display: none;
	}
	.modal__newsListWrap--head h2 {
		font-size: 38px;
		letter-spacing: 0.1em;
		color: #1d6451;
		-webkit-box-ordinal-group: 2;
				-ms-flex-order: 1;
						order: 1;
		width: 100%;
		text-align: center;
	}
	.modal__inner--logo {
		width: 280px;
		height: 144px;
		background: url(../img/common/logo.png) no-repeat center center/contain;
		-webkit-box-ordinal-group: 1;
				-ms-flex-order: 0;
						order: 0;
	}
	.modal__newsList--titlehead {
		margin: 0 56px 2px;
		background: #2b2b2b;
		position: relative;
		height: 50px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
				-ms-flex-pack: justify;
						justify-content: space-between;
		font-size: 12px;
	}
	.modal__newsList--titlehead span {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		height: 50px;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
	}
	.nl__date {
		width: 170px;
		padding-left: 20px;
		position: relative;
		padding-right: 0 !important;
	}
	.nl__title {
		position: static;
		left: 170px;
		right: 65px;
		min-height: 120px !important;
		line-height: 1.81 !important;
		top: 10px;
		bottom: 0;
		height: auto;
		white-space: normal;
		font-size: 22px;
		width: 470px;
		/*width:calc(100% - 190px);*/
	}
	.nl__link {
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
		width: 50px;
		position: relative;
	}
	.newsList {
		margin: 0 56px;
		padding-bottom: 60px;
	}
	.newsList li {
		min-height: 140px;
		height: auto;
		padding: 30px 0;
	}
	.newsList li a {
		height: auto;
		padding: 20px 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		min-height: 140px;
		-webkit-box-pack: justify;
				-ms-flex-pack: justify;
						justify-content: space-between;
		position: relative;
		background: #1d6451;
		text-decoration: none;
		color: #FFF;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
	}
	.newsList li a:before {
		display: none;
	}
	.newsList li a:hover:before {
		width: 100%;
	}
	.newsList li a span {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		line-height: 1.81;
		height: auto;
		padding-right: 65px;
	}
	.newsList li a .nl__link {
		background: #a10000;
		height: 100%;
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		width: 50px;
		padding: 0;
	}
	.newsList li a .nl__link:before {
		content: '';
		width: 16px;
		height: 16px;
		border-radius: 50%;
		background: #FFF;
		position: absolute;
		left: 17px;
		top: 50%;
		margin-top: -8px;
	}
	.newsList li a .nl__link:after {
		content: '';
		position: absolute;
		width: 4px;
		height: 4px;
		border-top: 2px solid #a10000;
		border-right: 2px solid #a10000;
		-webkit-transform: rotate(45deg);
						transform: rotate(45deg);
		left: 50%;
		top: 50%;
		margin-top: -3px;
		margin-left: -4px;
	}
	.modal__lt--cont {
		width: 100%;
	}
	.twitter__widget {
		min-width: 100%;
		width: 100%;
		height: calc(100vh - 470px);
		padding: 0 50px 50px;
	}
	.twitter__widget--inner {
		padding: 10px;
		height: 100%;
		background: #1d6451;
		border-radius: 15px;
		overflow: hidden;
	}
	.twitterin__head {
		height: 120px;
		padding: 0 28px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		width: 100%;
	}
	.twitterin__head h2 {
		font-size: 38px;
		color: #1d6451;
		letter-spacing: 0.1em;
		text-align: center;
		width: 100%;
		margin-bottom: 0px;
	}
}

.modal__contact {
	width: 25vw;
	min-width: 450px;
	padding: 38px;
}

.modal__contact h2 {
	color: #1d6451;
	font-size: 22px;
	line-height: 1;
	margin-bottom: 35px;
}

.contact__bnr {
	width: 320px;
	margin: 0 auto 20px;
}

.contact__bnr img {
	max-width: 100%;
}

.contact__bnr a {
	display: block;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.contact__bnr a:hover {
	opacity: 0.7;
}

.contact__text {
	font-size: 14px;
	line-height: 1.65;
	color: #000;
}

@media screen and (max-width: 768px) {
	.modal__contact {
		width: 100%;
		min-width: 100%;
		padding: 55px 55px 100px;
	}
	.modal__contact h2 {
		color: #1d6451;
		font-size: 41px;
		line-height: 1;
		margin-bottom: 45px;
		text-align: center;
	}
	.modal__l0--cont {
		width: 100%;
		overflow: hidden;
		position: relative;
		z-index: 1;
	}
	.contact__bnr {
		margin-bottom: 25px;
		text-align: center;
	}
	.contact__bnr a {
		display: block;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.contact__bnr a:hover {
		opacity: 0.7;
	}
	.contact__text {
		font-size: 22px;
		line-height: 1.65;
		color: #000;
		text-align: center;
	}
}

.modal__staffcast {
	min-width: 1010px;
	width: 40vw;
	height: 100%;
	overflow: auto;
}

@media screen and (max-width: 767px) {
	.modal__staffcast {
		padding-bottom: 150px;
	}
}

.modal__staffcastin {
	min-height: 620px;
}

.staffcastin__head {
	height: 90px;
	padding-left: 28px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.staffcastin__head h2 {
	font-size: 22px;
	color: #1d6451;
	letter-spacing: 0.1em;
}

.staffcast__lists {
	padding: 0 0 30px 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
			-ms-flex-pack: start;
					justify-content: flex-start;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	position: relative;
	z-index: 10;
}

.staffcast__listsgroup {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 30px;
}

.staffcast__lists--title {
	font-size: 22px;
	color: #1d6451;
	width: 100px;
	letter-spacing: 0.1em;
	line-height: 1;
}

.staffcast__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	width: 830px;
}

.staffcast__listgroup {
	margin: 5px 60px 25px 0;
}

.staffcast__list--title {
	font-size: 14px;
	color: #666;
	margin-bottom: 10px;
	line-height: 1;
	letter-spacing: 0.1em;
}

.staffcast__list--name {
	font-size: 24px;
	color: #1d6451;
	line-height: 1;
	display: table;
	padding-right: 30px;
	margin-bottom: 10px;
	font-weight: 700;
	letter-spacing: 0.1em;
	position: relative;
}

.staffcast__list--works {
	font-size: 12px;
	color: #666;
	line-height: 1;
	letter-spacing: 0.2em;
	-webkit-font-feature-settings: "palt";
					font-feature-settings: "palt";
}

.staffcast__list--subtitle {
	font-size: 14px;
	color: #666;
	line-height: 1;
	position: relative;
	letter-spacing: 0.1em;
}

.staffcast__list--commentBtn {
	position: absolute;
	right: 7px;
	top: -7px;
	width: 20px;
	height: 20px;
	background: url(../img/common/btn_comment.svg) no-repeat center top/contain;
}

.staffcast__list--commentBtn:hover {
	-webkit-transform-origin: left bottom;
					transform-origin: left bottom;
	-webkit-animation: shake 0.5s ease;
					animation: shake 0.5s ease;
}

.staffcast__list--cv {
	width: 600px;
}

.staffcast__list--cv .staffcast__listgroup {
	width: 190px;
}

.staffcast__listgroup:nth-child(4n) {
	width: 50%;
}

@media screen and (max-width: 768px) {
	.modal__staffcast {
		min-width: 100%;
		width: 100%;
		height: calc(100vh - 100px);
		overflow: scroll;
		-webkit-overflow-scrolling: touch;
	}
	.modal__staffcastin {
		min-height: 100%;
		padding: 55px;
	}
	.staffcastin__head {
		height: 90px;
		padding-left: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		width: 100%;
	}
	.staffcastin__head h2 {
		font-size: 38px;
		color: #1d6451;
		letter-spacing: 0.1em;
		text-align: center;
		width: 100%;
		margin-bottom: 40px;
	}
	.staffcast__lists {
		padding: 0 0 30px;
	}
	.staffcast__listsgroup {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		margin-bottom: 30px;
		-ms-flex-wrap: wrap;
				flex-wrap: wrap;
	}
	.staffcast__lists--title {
		font-size: 38px;
		color: #1d6451;
		width: 100%;
		letter-spacing: 0.1em;
		line-height: 1;
		text-align: center;
		margin-bottom: 40px;
	}
	.staffcast__list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
				flex-wrap: wrap;
		width: 640px;
	}
	.staffcast__listgroup {
		margin: 5px auto 35px;
		min-width: 50%;
	}
	.staffcast__list--title {
		font-size: 20px;
		color: #666;
		margin-bottom: 15px;
		line-height: 1;
		letter-spacing: 0.1em;
		text-align: center;
	}
	.staffcast__list--name {
		font-size: 27px;
		color: #1d6451;
		line-height: 1;
		display: table;
		font-weight: 700;
		letter-spacing: 0;
		position: relative;
		margin: 0 auto 15px;
	}
	.staffcast__list--works {
		font-size: 18px;
		color: #666;
		line-height: 1.5;
		letter-spacing: 0.2em;
		-webkit-font-feature-settings: "palt";
						font-feature-settings: "palt";
		text-align: center;
	}
	.staffcast__list--subtitle {
		font-size: 20px;
		color: #666;
		line-height: 1.5;
		position: relative;
		letter-spacing: 0.1em;
		text-align: center;
	}
	.staffcast__list--commentBtn {
		position: absolute;
		right: -14px;
		top: -14px;
		width: 36px;
		height: 36px;
		background: url(../img/common/btn_comment.svg) no-repeat center top/contain;
	}
	.staffcast__list--commentBtn:hover {
		-webkit-transform-origin: left bottom;
						transform-origin: left bottom;
		-webkit-animation: shake 0.5s ease;
						animation: shake 0.5s ease;
	}
}

.modal__comment {
	width: 442px;
	height: 100%;
	overflow: auto;
}

.modal__commentin {
	padding: 45px;
}

.modal__commentin h3 {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.5;
	margin-bottom: 30px;
}

.modal__comment--picture {
	margin: 0 auto 30px;
	background: #FFF;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	overflow: hidden;
}

.modal__comment--picture.non-trimming {
	width: 220px;
	height: 330px;
	border-radius: 0% !important;
}

.modal__comment--picture img {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
		 object-fit: cover;
}

.modal__comment--text {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.9;
	margin-bottom: 1.5em;
}

@media screen and (max-width: 768px) {
	.modal__comment {
		width: 100%;
		height: 100%;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	.modal__commentin {
		padding: 55px;
	}
	.modal__commentin h3 {
		font-size: 30px;
		font-weight: 700;
		letter-spacing: 0.1em;
		line-height: 1.5;
		margin-bottom: 45px;
	}
	.modal__comment--picture {
		margin: 0 auto 45px;
		background: #FFF;
		width: 400px;
		height: 400px;
		border-radius: 50%;
		overflow: hidden;
	}
	.modal__comment--text {
		font-size: 24px;
		font-weight: 500;
		line-height: 1.72;
		margin-bottom: 1.5em;
	}
}

.pagenavi {
	padding-bottom: 55px;
	width: 800px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
}

.pagenavi p {
	height: 32px;
	width: 80px;
	margin: 0 10px;
}

.pagenavi p a {
	display: block;
	height: 32px;
	border: 2px solid #94952C;
	line-height: 30px;
	text-align: center;
	font-size: 16px;
	color: #94952C;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	text-decoration: none;
}

.pagenavi p a.disable {
	border: 2px solid #ccc;
	color: #ccc;
	pointer-events: none;
}

.pagenavi p a:hover {
	background: #94952C;
	color: #FFF;
}

.pagenavi__prev {
	-webkit-box-ordinal-group: 2;
			-ms-flex-order: 1;
					order: 1;
}

.pagenavi__latest {
	-webkit-box-ordinal-group: 3;
			-ms-flex-order: 2;
					order: 2;
}

.pagenavi__next {
	-webkit-box-ordinal-group: 4;
			-ms-flex-order: 3;
					order: 3;
}

.pagenavi .disable {
	opacity: 0.5;
	-webkit-filter: grayscale(1);
					filter: grayscale(1);
	pointer-events: none;
}

@media screen and (max-width: 768px) {
	.pagenavi {
		padding-bottom: 55px;
		width: 640px;
		margin: 0 auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
	}
	.pagenavi p {
		height: 60px;
		width: 120px;
	}
	.pagenavi p a {
		display: block;
		height: 60px;
		line-height: 58px;
		text-align: center;
		font-size: 26px;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		text-decoration: none;
	}
	.pagenavi p a.disable {
		border: 2px solid #ccc;
		color: #ccc;
		pointer-events: none;
	}
	.pagenavi p a:hover {
		color: #FFF;
	}
	.pagenavi__prev {
		-webkit-box-ordinal-group: 2;
				-ms-flex-order: 1;
						order: 1;
	}
	.pagenavi__latest {
		-webkit-box-ordinal-group: 3;
				-ms-flex-order: 2;
						order: 2;
	}
	.pagenavi__next {
		-webkit-box-ordinal-group: 4;
				-ms-flex-order: 3;
						order: 3;
	}
}

.main__ls {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 99;
	width: 100%;
	height: 100%;
	min-width: 1200px;
	min-height: 620px;
	z-index: 150;
}

.main__ls--logo {
	position: absolute;
	width: 132px;
	height: 69px;
	top: 10px;
	left: 50%;
	margin-left: -66px;
	z-index: 500;
}

.main__ls--logo a {
	display: block;
	pointer-events: auto;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__ls--logo a:hover {
	-webkit-transform: scale(1.1);
					transform: scale(1.1);
}

.main__ls--logo a img {
	display: block;
	width: 100%;
}

.main__ls--inner {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	overflow: auto;
}

.main__ls--innerWrap {
	padding-top: 91px;
	width: 900px;
	margin: 0 auto;
	padding-bottom: 60px;
	position: relative;
}

.main__ls--innerWrap h3 {
	font-weight: 700;
	text-align: center;
	margin-bottom: 1.5em;
}

.newsList__titlehead {
	margin: 0 auto 2px;
	background: #2b2b2b;
	position: relative;
	height: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	line-height: 50px;
}

.main__ls--innerWrap .newsList {
	width: 900px;
	margin: 0 auto;
}

.main__ls--innerWrap .newsList li {
	height: 100px;
	margin-bottom: 2px;
}

.main__ls--innerWrap .newsList li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 100px;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	position: relative;
	background: #FFF;
	text-decoration: none;
	color: #000;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__ls--innerWrap .newsList li a:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 0;
	background: #94952C;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.main__ls--innerWrap .newsList li a:hover:before {
	width: 100%;
}

.main__ls--innerWrap .newsList li a:hover {
	color: #FFF;
}

.newsarticle--titlehead {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
			-ms-flex-pack: start;
					justify-content: flex-start;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	min-height: 50px;
	background: #2b2b2b;
	margin-bottom: 2px;
}

.nl__articletitle {
	width: calc(100% - 140px);
	line-height: 1.68;
	text-align: left;
	padding-right: 40px;
	/*width:calc(100% - 190px);*/
	font-size: 15px;
}

.main__ls--innerWrap article h3 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
			-ms-flex-pack: start;
					justify-content: flex-start;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	height: 100px;
	font-weight: 700;
	background: #FFF;
	color: #000;
}

.article__categories {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
			-ms-flex-pack: end;
					justify-content: flex-end;
	margin-bottom: 1px;
}

.article__categories a {
	display: block;
	padding: 0 10px;
	text-decoration: none;
	line-height: 2;
	background: #FFF;
	color: #096181;
	font-size: 12px;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	margin-right: 1px;
}

.article__categories a:hover {
	opacity: 0.7;
}

.article__content {
	padding: 50px 25px;
	color: #000;
}

.article__content p {
	font-size: 15px;
	line-height: 32px;
	word-break: break-all;
}

.article__content iframe {
	max-width: 850px;
	max-height: 478px;
}

.article__content img {
	max-width: 100%;
	margin-bottom: 2em;
}

.article__content a {
	color: #000;
}

.article__content a:hover {
	text-decoration: underline;
}

.article__content p.link {
	padding-left: 20px;
	position: relative;
}

.article__content p.link:before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 0 8px 13.9px;
	border-color: transparent transparent transparent #000;
	left: 0;
	top: 4px;
}

.article__back {
	padding-bottom: 55px;
	width: 800px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
}

#about .article__back {
	padding: 30px 0 24px;
}

.article__back p {
	height: 32px;
	width: 80px;
}

.article__back p a {
	display: block;
	height: 32px;
	border: 2px solid #94952C;
	line-height: 30px;
	text-align: center;
	font-size: 16px;
	color: #94952C;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	text-decoration: none;
}

.article__back p a:hover {
	background: #94952C;
	color: #FFF;
}

@media screen and (max-width: 768px) {
	.main__ls {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		min-width: 100%;
		min-height: 100%;
		z-index: 150;
	}
	.main__ls--logo {
		position: absolute;
		width: 280px;
		height: 143px;
		top: 25px;
		left: 50%;
		margin-left: -140px;
		z-index: 500;
	}
	.main__ls--logo a {
		display: block;
		pointer-events: auto;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.main__ls--logo a:hover {
		-webkit-transform: scale(1.1);
						transform: scale(1.1);
	}
	.main__ls--logo a img {
		display: block;
		width: 100%;
	}
	.main__ls--inner {
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	.main__ls--innerWrap {
		padding-top: 250px;
		width: 640px;
		margin: 0 auto;
		padding-bottom: 60px;
		position: relative;
	}
	.newsList__titlehead {
		margin: 0 auto 2px;
		background: #2b2b2b;
		position: relative;
		height: 50px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
				-ms-flex-pack: justify;
						justify-content: space-between;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		line-height: 50px;
	}
	.newsList__titlehead span {
		font-size: 12px;
		line-height: 50px !important;
		height: 50px !important;
		top: 0 !important;
	}
	.newsList__titlehead .nl__link {
		height: 100%;
	}
	.main__ls--innerWrap .newsList {
		width: 640px;
		margin: 0 auto;
	}
	.main__ls--innerWrap .newsList li {
		min-height: 140px;
		margin-bottom: 0px;
		height: auto;
	}
	.main__ls--innerWrap .newsList li a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		min-height: 140px;
		-webkit-box-pack: justify;
				-ms-flex-pack: justify;
						justify-content: space-between;
		position: relative;
		background: #FFF;
		text-decoration: none;
		color: #000;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		height: auto;
		padding: 20px 0;
	}
	.main__ls--innerWrap .newsList li a:before {
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		width: 0;
		background: #46a3c4;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.main__ls--innerWrap .newsList li a:hover {
		color: #000;
	}
	.newsarticle--titlehead {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: start;
				-ms-flex-pack: start;
						justify-content: flex-start;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		min-height: 50px;
		background: #2b2b2b;
		margin-bottom: 2px;
		height: auto;
	}
	.nl__articletitle {
		width: calc(100% - 170px);
		line-height: 1.68;
		/*width:calc(100% - 190px);*/
		font-size: 22px;
		padding-right: 30px;
		min-height: 120px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
	}
	.main__ls--innerWrap article h3 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: start;
				-ms-flex-pack: start;
						justify-content: flex-start;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		min-height: 140px;
		padding: 20px 0;
		font-weight: 700;
		background: #FFF;
		color: #000;
		height: auto;
	}
	.article__categories {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: end;
				-ms-flex-pack: end;
						justify-content: flex-end;
		margin-bottom: 1px;
	}
	.article__categories a {
		display: block;
		padding: 0 10px;
		text-decoration: none;
		line-height: 2;
		background: #FFF;
		color: #096181;
		font-size: 18px;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.article__categories a:hover {
		opacity: 0.7;
	}
	.article__content {
		padding: 50px 25px;
		color: #000;
	}
	.article__content iframe {
		max-width: 590px;
		max-height: 332px;
	}
	.article__content p {
		font-size: 24px;
		line-height: 2;
		word-break: break-all;
	}
	.article__content a {
		color: #000;
		text-decoration: underline;
	}
	.article__content p.link {
		padding-left: 20px;
		position: relative;
	}
	.article__content p.link:before {
		content: '';
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 12px 0 12px 21px;
		border-color: transparent transparent transparent #000;
		left: 0;
		top: 6px;
	}
	.article__back {
		padding-bottom: 55px;
		width: 640px;
		margin: 0 auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
	}
	#about .article__back {
		padding: 30px 0 24px;
	}
	.article__back p {
		height: 60px;
		width: 120px;
	}
	.article__back p a {
		display: block;
		height: 60px;
		line-height: 56px;
		text-align: center;
		font-size: 24px;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		text-decoration: none;
	}
	.article__back p a:hover {
		color: #FFF;
	}
}

#scene,
#scene2 {
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	overflow: hidden;
}

.layer {
	display: block;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	position: relative;
}

.main {
	display: none;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
}

.mainWrap {
	position: relative;
	-webkit-box-ordinal-group: 1;
			-ms-flex-order: 0;
					order: 0;
	width: 100%;
	height: 100vh;
}

.kvWrap {
	-webkit-box-ordinal-group: 2;
			-ms-flex-order: 1;
					order: 1;
	z-index: 500;
}

.kv {
	height: 100%;
	width: calc(100vh * 0.712903);
	display: flex;
	justify-content: flex-end;
}

.kv img {
	height: 100%;
	display: block;
}

/* common */
.commonIframe {
	width: 100%;
	height: 100%;
	display: block;
}

/* youtube */
.youtubeIframeWrap {
	width: 85vw;
	height: 100vh;
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
	.modal_afterFirstAnime--inner {
		top: calc(50% - 280px);
		width: 100%;
		height: auto;
		padding-top: 56.25%;
		position: relative;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
				-ms-flex-pack: center;
						justify-content: center;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
	}
	.youtubeIframeWrap {
		width: 100%;
		height: auto;
	}
	.youtubeIframe {
		position: absolute;
		top: 0;
		left: 0;
	}
}

/* js-modal_afterFirstAnime */
.js-modal_afterFirstAnime {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	min-width: 100%;
	min-height: 620px;
	z-index: 1000;
	background: rgba(255, 255, 255, 0.95);
	display: none;
}

.modal_afterFirstAnime--inner {
	background: none;
}

/* modal__rightIn. */
.modal__rightIn {
	min-width: 1010px;
	width: 40vw;
	height: 100%;
	overflow: auto;
}

.modal__rightIn-wrap {
	min-height: 620px;
}

.rightIn__head {
	height: 90px;
	padding-left: 28px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
}

.rightIn__head h2 {
	font-size: 22px;
	color: #1d6451;
	letter-spacing: 0.1em;
}

.rightIn__lists {
	padding: 0 0 30px 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
			-ms-flex-pack: start;
					justify-content: flex-start;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	position: relative;
	z-index: 10;
}

@media screen and (max-width: 768px) {
	.modal__rightIn {
		min-width: 100%;
		width: 100%;
		height: calc(100vh - 100px);
		overflow: scroll;
		-webkit-overflow-scrolling: touch;
		background-color: #fff !important;
	}
	.modal__rightIn-wrap {
		min-height: 100%;
		padding: 55px;
		padding-bottom: 200px;
	}
	.rightIn__head {
		height: 90px;
		padding-left: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
				-ms-flex-align: center;
						align-items: center;
		width: 100%;
	}
	.rightIn__head h2 {
		font-size: 38px;
		color: #1d6451;
		letter-spacing: 0.1em;
		text-align: center;
		width: 100%;
		margin-bottom: 40px;
	}
	.rightIn__lists {
		padding: 0 0 30px;
	}
}

/* modal__rightIn - intro */
.modal__rightIn.intro .intro__imgIn--list {
	margin: 0px 0 40px 0;
}

.modal__rightIn.intro .intro__imgIn--catch {
	left: 80px;
	bottom: 70px;
	color: #1d6451;
	text-shadow: 2px 2px 0 #FFF;
}

@media screen and (max-width: 767px) {
	.modal__rightIn.intro .intro__imgIn--catch {
		left: 40px;
	}
}

.modal__rightIn.intro .intro__txtIn--txt {
	width: 960px;
	padding: 0 0 80px 80px;
	color: #666;
}

@media screen and (max-width: 767px) {
	.modal__rightIn.intro .intro__txtIn--txt {
		width: 100%;
		padding: 30px 0 0 0;
	}
}

/* modal__rightIn - intro */
@media screen and (min-width: 768px) {
	.modal__rightIn.chara .chara__listIn {
		width: 660px;
		margin: 40px auto 0;
	}
}

@media screen and (max-width: 767px) {
	.modal__rightIn.chara .chara__item--bg {
		width: 280px;
		height: 280px;
	}
}

/* modal__rightIn - movie */
.modal__rightIn.movie .movie__title {
	color: #1d6451;
}

/*-----------------------------------------------
 * 02. Modal
-------------------------------------------------*/
.modalBox {
	-webkit-overflow-scrolling: touch;
	background: #fff;
	display: none;
	width: 100%;
	height: 100%;
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
}

.oneModal {
	display: none;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}

.oneModalIn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
					align-items: center;
	height: auto;
	width: 100%;
	/* min-width: 1200px; */
	min-height: 100%;
	margin: 0 auto;
	position: relative;
}

@media screen and (max-width: 768px) {
	.oneModalIn {
		min-width: 100%;
	}
	.oneModal {
		max-height: 500px;
		position: absolute;
		top: 50%;
		left: 50%;
		margin-right: -50%;
		-webkit-transform: translate(-50%, -50%);
		/* Safari用 */
		transform: translate(-50%, -50%);
	}
	.oneModalIn__cont {
		width: 100%;
		padding: 30px 0;
	}
	.modal__lv--closebtn {
		cursor: pointer;
		z-index: 150;
		border: 2px solid #36a789;
		background: #FFF;
		border-radius: 50%;
		width: 74px;
		height: 74px;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translateY(360%) translateX(-50%) !important;
						transform: translateY(360%) translateX(-50%) !important;
	}
}

/* closeBtn */
.closeBtn {
	width: 120px;
	height: 54px;
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
}

.closeBtn a {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}

.closeBtn a:after {
	content: "CLOSE";
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
					transform: translateX(-50%);
	text-shadow: 0px 0px 10px #2e89e4;
}

.closeBtn a span {
	background-color: #fff;
	display: block;
	width: 120px;
	height: 1px;
	position: absolute;
	top: 16px;
	left: 0;
}

.closeBtn a span:first-child {
	-webkit-transform: rotate(15deg);
					transform: rotate(15deg);
}

.closeBtn a span:last-child {
	-webkit-transform: rotate(-15deg);
					transform: rotate(-15deg);
}

.closeBtn a span:first-child:before,
.closeBtn a span:last-child:before {
	content: "";
	background-color: #b60005;
	width: 0;
	height: 100%;
	position: absolute;
	top: 0;
	-webkit-transition: all .1s ease-in-out;
	transition: all .1s ease-in-out;
}

.closeBtn a span:first-child:before {
	right: 0;
}

.closeBtn a span:last-child:before {
	left: 0;
}

.closeBtn a:hover span:first-child:before {
	width: 100%;
}

.closeBtn a:hover span:last-child:before {
	-webkit-transition-delay: .1s;
					transition-delay: .1s;
	width: 100%;
}

@media screen and (max-width: 768px) {
	.closeBtn {
		width: 80px;
		height: 50px;
		position: fixed;
	}
	.closeBtn a span:first-child,
	.closeBtn a span:last-child {
		width: 100%;
	}
	.closeBtn a:after {
		font-size: 1rem;
	}
}

@media screen and (max-width: 767px) {
	.hole1 .modal__lv--closebtn {
		top: 2%;
		left: 4%;
		-webkit-transform: translateY(0%) translateX(0%) !important;
						transform: translateY(0%) translateX(0%) !important;
	}
}

/* js-newsBtn */
.js-newsBtn {
	position: absolute;
	right: 16px;
	bottom: 10px;
	z-index: 790;
}

@media screen and (max-width: 767px) {
	.js-newsBtn {
		right: 20px;
		bottom: 0px;
	}
}

.js-newsBtn a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	width: 120px;
	height: 170px;
	color: #fff;
	font-size: 16px;
	text-decoration: none;
	position: relative;
}

@media screen and (max-width: 767px) {
	.js-newsBtn a {
		width: 150px;
		font-size: 24px;
		color: #fff;
	}
}

.js-newsBtn__ball {
	width: 50px;
	height: 50px;
	display: block;
	margin: 0 auto;
	-webkit-box-shadow: 0 37px 81px rgba(0, 0, 0, 0.4);
					box-shadow: 0 37px 81px rgba(0, 0, 0, 0.4);
	border-radius: 30px;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	background: url(../../assets/img/common/navopen_ball.png) no-repeat center center/contain;
	-webkit-animation: animeFloat 2s infinite;
					animation: animeFloat 2s infinite;
	cursor: pointer;
	z-index: 101;
	position: relative;
	top: 0;
}

@media screen and (max-width: 767px) {
	.js-newsBtn__ball {
		width: 60px;
		height: 60px;
	}
}

.js-newsBtn__linkText {
	display: block;
	width: 45px;
	text-align: right;
}

@media screen and (max-width: 767px) {
	.js-newsBtn__linkText {
		width: 85px;
		margin-right: 10px;
	}
}

@-webkit-keyframes animeFloat {
	0% {
		top: 50px;
		-webkit-animation-timing-function: ease-out;
						animation-timing-function: ease-out;
	}
	25% {
		top: 25px;
		height: 60px;
		-webkit-animation-timing-function: ease-in;
						animation-timing-function: ease-in;
	}
	50% {
		top: 100px;
		height: 50px;
		-webkit-animation-timing-function: ease-out;
						animation-timing-function: ease-out;
	}
	75% {
		top: 25px;
		height: 60px;
		-webkit-animation-timing-function: ease-in;
						animation-timing-function: ease-in;
	}
	100% {
		top: 50px;
	}
}

@keyframes animeFloat {
	0% {
		top: 50px;
		-webkit-animation-timing-function: ease-out;
						animation-timing-function: ease-out;
	}
	25% {
		top: 25px;
		height: 60px;
		-webkit-animation-timing-function: ease-in;
						animation-timing-function: ease-in;
	}
	50% {
		top: 100px;
		height: 50px;
		-webkit-animation-timing-function: ease-out;
						animation-timing-function: ease-out;
	}
	75% {
		top: 25px;
		height: 60px;
		-webkit-animation-timing-function: ease-in;
						animation-timing-function: ease-in;
	}
	100% {
		top: 50px;
	}
}

/* Newsモーダルが開いた時のグロナビ制御 */
.main__l3.mains.js-mains.active {
	z-index: 780;
}

.disable {
	pointer-events: none;
	opacity: 0;
}

.cp_keyframes {
	margin: 0 auto;
	background: url(../../assets/img/common/navopen_ball.png) no-repeat center center/contain;
	border-radius: 50%;
	position: relative;
	width: 50px;
	height: 50px;
	-webkit-animation: keyframes 2s infinite;
	animation: keyframes 2s infinite;
	margin-bottom: 120px;
}

@-webkit-keyframes keyframes {
	0% {
		top: 50px;
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	25% {
		top: 25px;
		height: 50px;
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	50% {
		top: 75px;
		height: 40px;
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	75% {
		top: 25px;
		height: 50px;
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	100% {
		top: 50px;
	}
}

@keyframes keyframes {
	0% {
		top: 50px;
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	25% {
		top: 25px;
		height: 50px;
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	50% {
		top: 75px;
		height: 40px;
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	75% {
		top: 25px;
		height: 50px;
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	100% {
		top: 50px;
	}
}

#fullWrap.js-access_second {
	opacity: 0;
}

/* 画面遷移アニメーション */
.ani-splash {
	display: none;
}

/*bodyにappearクラスがついたら出現*/
body.appear .ani-splash {
	display: none;
	content: "";
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	-webkit-transform: scaleX(0);
					transform: scaleX(0);
	-webkit-animation-name: ani-splash;
					animation-name: ani-splash;
	-webkit-animation-duration: .8s;
					animation-duration: .8s;
	-webkit-animation-timing-function: ease-in-out;
					animation-timing-function: ease-in-out;
	-webkit-animation-fill-mode: forwards;
					animation-fill-mode: forwards;
}

@-webkit-keyframes ani-splash {
	0% {
		-webkit-transform-origin: left;
						transform-origin: left;
		-webkit-transform: scaleX(0);
						transform: scaleX(0);
	}
	50% {
		-webkit-transform-origin: left;
						transform-origin: left;
		-webkit-transform: scaleX(1);
						transform: scaleX(1);
	}
	50.001% {
		-webkit-transform-origin: right;
						transform-origin: right;
	}
	100% {
		-webkit-transform-origin: right;
						transform-origin: right;
		-webkit-transform: scaleX(0);
						transform: scaleX(0);
	}
}

@keyframes ani-splash {
	0% {
		-webkit-transform-origin: left;
						transform-origin: left;
		-webkit-transform: scaleX(0);
						transform: scaleX(0);
	}
	50% {
		-webkit-transform-origin: left;
						transform-origin: left;
		-webkit-transform: scaleX(1);
						transform: scaleX(1);
	}
	50.001% {
		-webkit-transform-origin: right;
						transform-origin: right;
	}
	100% {
		-webkit-transform-origin: right;
						transform-origin: right;
		-webkit-transform: scaleX(0);
						transform: scaleX(0);
	}
}

/*bodyにappearクラスがついたら出現*/
body.appear #fullWrap {
	-webkit-animation-name: ani-page-appear;
					animation-name: ani-page-appear;
	-webkit-animation-duration: .8s;
					animation-duration: .8s;
	-webkit-animation-fill-mode: forwards;
					animation-fill-mode: forwards;
	opacity: 0;
}

@-webkit-keyframes ani-page-appear {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes ani-page-appear {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.ani-splash_bg {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: 10;
	background: #035e46;
}

/* icon_arrow */
.icon_arrow {
	position: absolute;
	left: 50%;
	bottom: 14%;
	-webkit-transform: translate(-50%, -50%);
					transform: translate(-50%, -50%);
	z-index: 1000;
	-webkit-animation-name: ani-icon-arrow;
					animation-name: ani-icon-arrow;
	-webkit-animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
					animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	-webkit-animation-iteration-count: infinite;
					animation-iteration-count: infinite;
	-webkit-animation-direction: alternate;
					animation-direction: alternate;
	-webkit-animation-duration: 1s;
					animation-duration: 1s;
	-webkit-animation-delay: .5s;
					animation-delay: .5s;
	display: none;
}

@media screen and (max-width: 767px) {
	.icon_arrow {
		bottom: 18%;
	}
}

.icon_arrow svg {
	width: 40px;
	height: 40px;
}

@media screen and (max-width: 767px) {
	.icon_arrow svg {
		width: 50px;
		height: 50px;
	}
}

@-webkit-keyframes ani-icon-arrow {
	0% {
		-webkit-transform: translate(-50%, -50%);
						transform: translate(-50%, -50%);
	}
	1% {
		opacity: 1;
	}
	100% {
		-webkit-transform: translate(-50%, 0%);
						transform: translate(-50%, 0%);
	}
}

@keyframes ani-icon-arrow {
	0% {
		-webkit-transform: translate(-50%, -50%);
						transform: translate(-50%, -50%);
	}
	1% {
		opacity: 1;
	}
	100% {
		-webkit-transform: translate(-50%, 0%);
						transform: translate(-50%, 0%);
	}
}

.nav-update{
  display: inline-block;
  font-size: 10px;
  padding: 0 5px 0 3px;
  background-color: #fff;
  color: #035e46;
  margin-left: 10px;
  font-weight: 600;
  letter-spacing: -.005em;
  font-style: italic;
  line-height: 1.4;
  position: absolute;
  top: 0;
}

@media screen and (max-width:768px) {
  .nav-update{
    font-size: 16px;
    padding: 0 5px 0 3px;
    background-color: #fff;
    color: #035e46;
    font-weight: 600;
    letter-spacing: -.005em;
    font-style: italic;
    line-height: 1.4;
    position: absolute;
    left: 60px;
    top: 44px;
  }
}

.main__l3--navin li:nth-child(1) a:hover,
.main__l3--navin li:nth-child(2) a:hover,
.hole1 .main__l3--navin li:nth-child(1) a {
  color: #00c992 !important;
}

.main__l3--navin li:nth-child(3) a:hover,
.hole2 .main__l3--navin li:nth-child(1) a {
  color: #EAEE69 !important;
}

.hole3 .main__l3--navin li:nth-child(1) a,
.main__l3--navin li:nth-child(4) a:hover {
  color: #FEC670 !important;
}
.hole4 .main__l3--navin li:nth-child(1) a,
.main__l3--navin li:nth-child(5) a:hover {
  color: #7575e6 !important;
}

.hole5 .main__l3--navin li:nth-child(1) a,
.main__l3--navin li:nth-child(6) a:hover {
  color: #edb3b3 !important;
}

.main__l3--navin li:nth-child(7) a:hover,
.hole6 .main__l3--navin li:nth-child(1) a {
  color: #B5B5B5 !important;
}

.main__l3--navin li:nth-child(8) a:hover,
.hole7 .main__l3--navin li:nth-child(1) a {
  color: #c280b5 !important;
}

.hole8 .main__l3--navin li:nth-child(1) a,
.main__l3--navin li:nth-child(9) a:hover {
  color: #edb3b3 !important;
}
.main__l3--navin li:nth-child(10) a:hover,
.hole9 .main__l3--navin li:nth-child(1) a {
  color: #B5B5B5 !important;
}
.main__l3--navin li:nth-child(12) a:hover,
.hole10 .main__l3--navin li:nth-child(1) a {
  color: #FEC670 !important;
}

.main__l3--navin li:nth-child(13) a:hover,
.hole11 .main__l3--navin li:nth-child(1) a {
  color: #7575e6 !important;
}
.main__l3--navin li:nth-child(14) a:hover,
.hole12 .main__l3--navin li:nth-child(1) a {
  color: #2493bc !important;
}
.main__l3--navin li:nth-child(11) a:hover,
.hole10 .main__l3--navin li:nth-child(1) a {
  color: #edb3b3 !important;
}
.main__l3--navin li:nth-child(15) a:hover,
.hole14 .main__l3--navin li:nth-child(1) a {
  color: #c280b5 !important;
}
