@charset "UTF-8";

/*CSSDocument*/


/* html body base
===============================================================*/


/*
html ----------------------------------------------------------*/

*{ margin:0px; padding:0px;}

body{
display:none;
color:#000000;
margin:0;
padding:0;
background:#FFFFFF; /* fcfcfa */
/* font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; */
/*  font-family: 'NotoSansCJKjp', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; */
font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
text-align:center;
font-size:100%;
 -webkit-text-size-adjust: none;
 	position:relative;
}
iframe{
  pointer-events:none;
}
a:link{ color:#000;text-decoration:none;}
a:visited{ color:#000;text-decoration:none;}
a:hover{ color:#000;text-decoration:none;}
a:active{ color:#000;text-decoration:none;}

ul{ list-style:none;}

img {
	padding:0px;
	margin:0px;
	vertical-align:bottom;
}
a {
 	-webkit-transition: all 0.5s ease-out;
	-moz-transition: all 0.5s ease-out;
	-o-transition: all 0.5s ease-out;
	transition: all 0.5s ease-out;
} /*
a:hover {
	opacity:0.8;
} */

/*
html ----------------------------------------------------------*/

@media screen and (max-width: 1200px) {
	
}

/* body base
===============================================================*/

img {
	max-width: 100%;
	height: auto;
}
.l-inner {
	max-width: 1200px;
	box-sizing: content-box;
	padding: 0 20px;
	margin: 0 auto;
}

.l-floatArea {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 10000;
}

.l-wrap {
	padding-top: 60px;
}
@media screen and (max-width: 840px) {
	.l-wrap {
		padding-top: 60px;
	}	
}

/* header
===============================================================*/


.c-header {
	background: #000;
/*	position: fixed;
	top: 0;
	left: 0; */
	width: 100%;
	z-index: 10000;
  border-bottom: #FFF 1px solid;
}
.c-headerWrap {
	position: relative;
	display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
	min-height: 60px;
	padding: 0 14px;
}
.c-header__logo {
	width: 159px;
}
.c-header__txtOuter {
	text-align: center;
}
.c-header__txt {
	color: #FFF;
	font-size: 16px;
	line-height: 1.4;
	text-align: left;
	display: inline-block;
	position: relative;
	padding-left: 45px;
}
.c-header__txt span {
	display: inline-block;
	font-size: 11px;
	line-height: 1;
	color: #000;
	background: #FFF;
	padding: 4px 6px 3px 6px;
	border-radius: 3px;
	vertical-align: middle;
	position: absolute;
	top:2px;
	left: 0;
}
.c-header__menuBtnOuter {
	width: 159px;
}

.c-header__menuOuter {
	background: #e5e5e5;
}

.c-header__snsOuter {
	position: absolute;
	top:9px;
	right: 9px;
}
.c-header__snsOuter .p-snsParts {
	display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;	
}
.c-header__snsOuter .p-snsParts li {
	margin-left: 14px;
}
.c-header__snsOuter .p-snsParts__icon {
	color: #FFF;
	display: block;
	border: #FFF 1px solid;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	box-sizing: border-box;
	line-height: 38px;
	font-size: 20px;
}
.c-header__snsOuter .p-snsParts__pixiv {
	display: block;
	width: 240px;
}
.c-header__snsOuter .p-snsParts__pixiv {
	
}

@media screen and (min-width:841px) and ( max-width:1400px) {
	.c-headerWrap {
		-webkit-justify-content: flex-start;
		-ms-justify-content: flex-start;
		justify-content: flex-start;
		padding: 0 14px;
	}
	.c-header__txtOuter {
		text-align: left;
		width: calc(100% - 575px);
		box-sizing: border-box;
		padding: 0 0 0 30px;
	}
	.c-header__menuBtnOuter {
		width: 416px;
	}	
}

@media screen and (max-width: 1000px) {
	.c-header__txt {
		font-size: 12px;
		line-height: 1.4;
		padding-left: 40px;
	}
	.c-header__txt span {
		font-size: 10px;
		line-height: 1;
		padding: 2px 6px 3px 6px;
		border-radius: 3px;
		top:1px;
		left: 0;
	}	
}
@media screen and (max-width: 840px) {
	.c-header__txtOuter {
		text-align: left;
		width: calc(100% - 159px);
		box-sizing: border-box;
		padding: 0 75px 0 30px;
	}
	.c-header__menuBtnOuter {
		width: 40px;
	}	
	.c-header__snsOuter {
		display: none;
	}
	.c-header__menuBtnOuter {
		position: absolute;
		z-index: 110;
		top:0;
		right: 0;
		width: 60px;
		height: 60px;
	}
	.c-header__menuBtn {
		display : -webkit-box;
		display : -webkit-flex;
		display : -ms-flexbox;
		display : flex;
		-webkit-align-items: center;
		-ms-align-items: center;
		align-items: center;
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;		
		width: 60px;
		height: 60px;
		cursor: pointer;
	}
	.c-header__menuBtnInner,
	.c-header__menuBtnInner span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.c-header__menuBtnInner {
		position: relative;
		width: 40px;
		height: 30px;
	}
	.c-header__menuBtnInner span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #fff;
	}
	.c-header__menuBtnInner span:nth-of-type(1) {
		top: 0;
	}
	.c-header__menuBtnInner span:nth-of-type(2) {
		top: 14px;
	}
	.c-header__menuBtnInner span:nth-of-type(3) {
		bottom: 0;
	}
	.c-header__menuBtnOuter.is--open .c-header__menuBtnInner {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
	.c-header__menuBtnOuter.is--open .c-header__menuBtnInner span:nth-of-type(1) {
		-webkit-transform: translateY(14px) rotate(-45deg);
		transform: translateY(14px) rotate(-45deg);
	}
	.c-header__menuBtnOuter.is--open .c-header__menuBtnInner span:nth-of-type(2) {
		-webkit-transform: translateY(0) rotate(45deg);
		transform: translateY(0) rotate(45deg);
	}
	.c-header__menuBtnOuter.is--open .c-header__menuBtnInner span:nth-of-type(3) {
		opacity: 0;
	}	
	
}

@media screen and (max-width: 640px) {
	.c-header__logo {
		width: 140px;
	}
	.c-header__txtOuter {
		display: none;
	}	
}


.c-header__menuLogo,
.c-header__menuSns {
	display: none;
}
.c-gNav {
	font-family: 'Graduate', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
	max-width: 1200px;
	margin: 0 auto;
}
.c-gNav a {
	display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
	height: 40px;
	padding: 0 5px;
	width: 12.5%;
	font-size: 14px;
	line-height: 1.4;
	color: #000;
	box-sizing: border-box;
	position: relative;
	font-weight: bold;
}
.c-gNav a:before ,
.c-gNav a:after {
	content: '';
	display: block;
	background: #FFF;
	height: 100%;
	width: 1px;
	position: absolute;
	top:0;
}
.c-gNav a:before {
	left: 0;
}
.c-gNav a:nth-child(n + 2):before {
	display: none;
}
.c-gNav a:after {
	right: 0;
}


@media screen and (max-width: 840px) {
	.c-header__menuOuter {
		display: block;
		position: fixed;
		top: 0;
		right: -100%;
		height: 100%;
		width: 100%;
		background: #000;
		z-index: 100;
		display : -webkit-box;
		display : -webkit-flex;
		display : -ms-flexbox;
		display : flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-align-items: center;
		-ms-align-items: center;
		align-items: center;
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		transition: all 0.5s ease-out;
	}
	.c-header__menuOuter.is--open {
		right: 0;
	}
	.c-header__menuLogo {
		display: block;
		margin: 0 auto 30px auto;
		width: 200px;
	}
	.c-header__menuOuter.is--open .c-header__menuLogo {
		 animation: menuLogo 0.5s 0.5s ease-in-out 1 both;
		 -webkit-animation: menuLogo 0.5s 0.5s ease-in-out 1 both;	
	}
	.c-header__menuSns {
		display: block;
	}
	.c-header__menuInner {
		max-width: 480px;
		width: 100%;
		margin: 0 auto;
	}
	.c-gNav {
		display : block;
		border-bottom: #323232 1px solid;
	}
	.c-gNav a {
		height: 40px;
		padding: 0 5px;
		width: 100%;
		font-size: 14px;
		line-height: 1.4;
		color: #FFF;
		box-sizing: border-box;
		position: relative;
		font-weight: bold;
		border-top: #323232 1px solid;
	}
	.c-header__menuOuter.is--open .c-gNav a:nth-child(1) {
	  animation: menuLink 0.5s 0.2s ease-in-out 1 both;
	  -webkit-animation: menuLink 0.5s 0.2s ease-in-out 1 both;
	}
	.c-header__menuOuter.is--open .c-gNav a:nth-child(2) {
	  animation: menuLink 0.5s 0.3s ease-in-out 1 both;
	  -webkit-animation: menuLink 0.5s 0.3s ease-in-out 1 both;
	}
	.c-header__menuOuter.is--open .c-gNav a:nth-child(3) {
	  animation: menuLink 0.5s 0.4s ease-in-out 1 both;
	  -webkit-animation: menuLink 0.5s 0.4s ease-in-out 1 both;
	}
	.c-header__menuOuter.is--open .c-gNav a:nth-child(4) {
	  animation: menuLink 0.5s 0.5s ease-in-out 1 both;
	  -webkit-animation: menuLink 0.5s 0.5s ease-in-out 1 both;
	}
	.c-header__menuOuter.is--open .c-gNav a:nth-child(5) {
	  animation: menuLink 0.5s 0.6s ease-in-out 1 both;
	  -webkit-animation: menuLink 0.5s 0.6s ease-in-out 1 both;
	}
	.c-header__menuOuter.is--open .c-gNav a:nth-child(6) {
	  animation: menuLink 0.5s 0.7s ease-in-out 1 both;
	  -webkit-animation: menuLink 0.5s 0.7s ease-in-out 1 both;
	}
	.c-header__menuOuter.is--open .c-gNav a:nth-child(7) {
	  animation: menuLink 0.5s 0.8s ease-in-out 1 both;
	  -webkit-animation: menuLink 0.5s 0.8s ease-in-out 1 both;
	}
	.c-header__menuOuter.is--open .c-gNav a:nth-child(8) {
	  animation: menuLink 0.5s 0.9s ease-in-out 1 both;
	  -webkit-animation: menuLink 0.5s 0.9s ease-in-out 1 both;
	}
	.c-gNav a:before ,
	.c-gNav a:after {
		display: none;
	}
	.c-gNav a:nth-child(n + 2):before {
		display: block;
	}	
	.c-gNav a:before,
	.c-gNav a:after{
		display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
		left: auto;
    margin: auto;
    content: '';
    vertical-align: middle;
	}	
	.c-gNav a:before {
		right: 10px;
    width: 10px;
    height: 1px;
    background: #FFF;
	}
	.c-gNav a:after{
    width: 6px;
    height: 6px;
    border-top: 1px solid #FFF;
    border-right: 1px solid #FFF;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
		background: none;
	}
	.c-header__menuSns {
		max-width: 240px;
		margin: 0 auto;
	}
	.c-header__menuOuter.is--open .c-header__menuSns {
		 animation: menuLogo 0.5s 1.2s ease-in-out 1 both;
		 -webkit-animation: menuLogo 0.5s 1.2s ease-in-out 1 both;	
	}	
	.c-header__menuSns .p-snsParts {
		display : -webkit-box;
		display : -webkit-flex;
		display : -ms-flexbox;
		display : flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;		
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;		
		-webkit-align-items: center;
		-ms-align-items: center;
		align-items: center;
		margin-top: 20px;
	}
	.c-header__menuSns .p-snsParts li {
		margin-left: 14px;
	}
	.c-header__menuSns .p-snsParts li:nth-child(1),
	.c-header__menuSns .p-snsParts li:nth-child(4) {
		margin-left: 0;
	}
	.c-header__menuSns .p-snsParts li:nth-child(4) {
		margin-top: 20px;
	}
	.c-header__menuSns a.p-snsParts__icon {
		color: #FFF;
		display: block;
		border: #FFF 1px solid;
		border-radius: 50%;
		width: 40px;
		height: 40px;
		box-sizing: border-box;
		line-height: 38px;
		font-size: 20px;
	}
	.c-header__menuSns a.p-snsParts__pixiv {
		display: block;
		width: 240px;
	}
	.c-header__menuSns .p-snsParts__pixiv {

	}	
}




/*
.c-header__menu {
	font-family: 'Anton', sans-serif;
	font-size: 20px;
	line-height: 1.3;
	text-align: center;
	margin: 0 auto;
	display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-justify-content: flex-end;
  -ms-justify-content: flex-end;
  justify-content: flex-end;	
}
.c-header__menu a {
	display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;	
	height: 80px;
	color: #FFF;
	padding: 0 25px;
}
.c-header__menu a.c-header__menu--recruit {
	padding: 0 30px;
	background: #FFF;
	color: #000;
}
.c-header__menu a:hover ,
.c-header__menu a.is-select {
	background: #2c54c6;
	opacity: 1;
}
.c-header__menu a.c-header__menu--recruit:hover ,
.c-header__menu a.c-header__menu--recruit.is-select {
	background: #2c54c6;
	color: #FFF;
}
.c-header__menuBtn {
	display: none;
}
*/


@keyframes menuLogo {
 0% { opacity: 0;}
 100% { opacity: 1;}
}
@-webkit-keyframes menuLogo {
 0% { opacity: 0;}
 100% { opacity: 1;}
}
@keyframes menuLink {
 0% { -webkit-transform: translate(100px, 0); transform: translate(100px, 0); opacity: 0}
 100% { -webkit-transform: translate(0, 0); transform: translate(0, 0); opacity: 1}
}
@-webkit-keyframes menuLink {
 0% { -webkit-transform: translate(100px, 0); transform: translate(100px, 0); opacity: 0}
 100% { -webkit-transform: translate(0, 0); transform: translate(0, 0); opacity: 1}
}





.c-reTop {
	
}
.c-reTop a {
	width: 80px;
	height: 80px;
	background: #8c97cb;
	position: fixed;
	font-size: 40px;
	line-height: 1;
	right: 0;
	bottom: 0;
	display : -webkit-box;
	display : -webkit-flex;
	display : -ms-flexbox;
	display : flex;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;		
	-webkit-align-items: center;
	-ms-align-items: center;
	align-items: center;	
	color: #FFF;
	z-index: 1000;
}
@media screen and (max-width: 640px) {
	.c-reTop {

	}
	.c-reTop a {
		font-size: 30px;
		width: 60px;
		height: 60px;
	}	
}


.c-footer {
	background: #000;
}
.c-footerWrap {
	padding: 0 90px;
}
.c-footerCopy {
	font-family: 'Graduate', cursive;
	font-size: 18px;
	line-height: 1.4;
	color: #FFF;
	display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;	
	height: 80px;
}


@media screen and (max-width: 640px) {
	.c-footer {
	}
	.c-footerWrap {
		padding: 0 70px;
	}
	.c-footerCopy {
		font-size: 12px;
		line-height: 1.4;
		height: 60px;
	}
}

.mfp-bg {
	z-index: 10420;
}
.mfp-wrap {
	z-index: 10430;
}
