@charset "utf-8";
/* CSS Document */
img{
	max-width: 100%;
}
body {
	position: relative;
	overflow-x: hidden;
}
.body-wrap{
	overflow-x: hidden;
}
.header{
	background:#001947;
	border-bottom: 4px solid #181c21;
	position: fixed;
	top:0;
	width: 100%;
	z-index: 999999;
}
.footer{
	background:#001947;
}
.footer,.footcontact a{
	color:#fff;
}
.wrap{
	width:100%;
	max-width:980px;
	margin-left:auto;
	margin-right:auto;
}
.f_bnr-area{
	position: relative;
	background:#f4e10e;
}
.f_bnr-area .close{
	display: none;
}
@media screen and (min-width: 768px) {
	.header .wrap{
		max-width: 1200px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.header .logo{
		width: 214px;
		float: left;
		padding-left: 30px;
		padding-top: 20px;
	}
	.header .gnav{
		width: 755px;
		float: right;
		padding-top: 25px;
		padding-bottom: 25px;
	}
	.header .gnav li{
		width: 125px;
		float: left;
		text-align: center;
		border-left:1px solid #414245;
	}
	.header .gnav li .title{
		margin: 5px 0 7px;
		color:#fff;
		font-size:14px;
		line-height: 14px;
	}
	.header .gnav li .mini{
		color:#fff;
		opacity: 0.5;
		font-size:9px;
		line-height: 9px;
	}
	/*.header .gnav li:nth-child(4) .title{
		margin-top: -3px;
		margin-bottom: 2px;
	}
	.header .gnav li:nth-child(2){
		width: 160px;
	}*/
	.footcontact {
		padding: 30px 0 12px;
		width: 976px;
		margin: auto;
	}
	.footer .wrap{
		width: 976px;
		margin: auto;
	}
	.footcontact .footlogo{
		width: 145px;
		float: left;
		margin-right: 60px;
	}
	.footcontact .footlist-box {
		color: #fff;
		margin-right: 0px;
		float: left;
		width: 700px;
	}
	.footcontact .footlist-box .footlist{
		display: block;
		margin-bottom: 10px;
	}
	.footcontact .footlist .listttl {
		font-size: 15px;
		font-weight: bold;
		letter-spacing: 1px;
		display: inline-block;
		margin-right: 15px;
		width:125px;
	}
	.footcontact .footlist ul{
		display: inline-block;
	}
	.footcontact .footlist ul li {
		font-size: 12px;
		line-height: 20px;
		/*padding-left: 15px;*/
		padding-left: 5px;
		border-right: 1px solid #fff;
		padding-right: 10px;
		display: inline-block;
	}
	.footcontact .footlist ul li:last-child{
		border-right:none;
	}
	.footer .copy{
		font-size:11px;
		clear: both;
	}
	.f_bnr-area{
		position:fixed;
		top:150px;
		right:0;
		width: 220px;
		padding-top: 20px;
		padding-left: 10px;
		padding-bottom: 10px;
		z-index:999997;
	}
	.f_bnr .fl_txt{
		font-size: 30px;
		line-height: 38px;
		letter-spacing: 1px;
		text-align: center;
		color: #252525;
	}
	.f_bnr .fl_txt span{
		font-size:20px;
		line-height: 24px;
		letter-spacing: 0;
		display: block;
	}
	.f_bnr .fl_link{
		background: #2a2a2a;
		padding-top: 3%;
		padding-bottom: 3%;
		margin-top: 10px;
		position: relative;
	}
	.f_bnr .fl_link img{
		display: block;
		width: 40%;
		margin-left: auto;
		margin-right: auto;
	}
	.f_bnr-area .close{
		position:absolute;
		top:0px;
		right:0px;
		cursor: pointer;
		z-index:999998;
	}
	.f_bnr .fl_link::after{
		/* 要素自体の大きさは不要のため、0に設定する */
		content: "";
		width: 0px;
		/* border-topとborder-bottomの太さを同一にすると、三角形の頂点が真ん中になる */
		border-top: 5px solid transparent;
	  border-bottom: 5px solid transparent;
	  /* border-leftの大きさを大きくすると、三角形は横に大きくなる */
	  border-left: 6px solid #ffff;
	  border-right: 0px solid transparent;
		margin-left: 0px;
		top:6px;
		right: 2%;
		position: absolute;
		z-index: 3;
	}
	#contents,.contents{
		/*padding-top: 76px;*/
	}
}
@media (min-width : 768px) and (max-width : 980px)  {
	.header .gnav{
		width: 440px;
		float: right;
		padding-top: 25px;
		padding-bottom: 25px;
	}
	.header .gnav li{
		width: 140px;
		float: left;
		text-align: center;
		border-left:1px solid #414245;
	}
	/*.header .gnav li:nth-child(4){
		margin-left: 160px;
	}*/
	.header .gnav li:nth-child(4),.header .gnav li:nth-child(5),.header .gnav li:nth-child(6){
		margin-top: 5%;
	}
	.header .logo {
		padding-top: 37px;

	}
	#contents,.contents{
		/*padding-top: 120px;*/
	}
	
}
@media only screen and (max-width : 768px) {
	.header .logo {
		padding: 20px 0 0 0px;
		width: 214px;
	}
	.header{
		height: 75px;
		position: fixed;
		top:0;
		width: 100%;
	}
	.header .logo {
		padding: 20px 0 0 0px;
		width: 214px;
	}

	/*メニューバー*/

	.menu-btn{
		position:absolute;
		top:15px;
		right:5%;
		z-index: 99999;
		display: block;
	}
	.menu-trigger,
	.menu-trigger span {
	  display: inline-block;
	  transition: all .4s;
	  box-sizing: border-box;
		cursor: pointer;
	}
	.menu-trigger {
	  position: relative;
	  height: 32px;
	  width: 40px;
		z-index: 9998;
	}
	.menu-trigger span {
	  position: absolute;
	  left: 0;
	  height: 4px;
	  width: 100%;
	  background-color: #ffffff;
	  border-radius: 0px;
	  display: inline-block;
	  box-sizing: border-box;
	}
	.top .menu-trigger span {
	  position: absolute;
	  left: 0;
	  height: 4px;
	  width: 100%;
	  background-color: #ffffff;
	  border-radius: 0px;
	  display: inline-block;
	  box-sizing: border-box;
	}
	.menu-trigger span:nth-of-type(1) {
	  top: 0px;
	  width: 40px;
	  height: 4px;
	}
	.menu-trigger span:nth-of-type(2) {
	  top: 14px;
	  width: 40px;
	  height: 4px;
	}
	.menu-trigger span:nth-of-type(3) {
	  top:28px;
	  width: 40px;
	  height: 5px;
	}
	.menu-trigger span:nth-of-type(1) {
	  -webkit-animation: menu-bar01 .50s forwards;
	  animation: menu-bar01 .50s forwards;
	}
	.menu-trigger span:nth-of-type(1) {
	  -webkit-animation: menu-bar01 .50s forwards;
	  animation: menu-bar01 .50s forwards;
	}
	.menu-texbox .menu-tex,.menu-texbox .menu-tex2{
		text-align: center;
		color:#fff;
	}
	.menu-texbox .menu-tex{
		display: block;
	}
	.menu-texbox .menu-tex2{
		display: none;
	}
	.menu-texbox.close .menu-tex{
		display: none;
	}
	.menu-texbox.close .menu-tex2{
		display: block;
	}
	@-webkit-keyframes menu-bar01 {
	  0% {
		-webkit-transform: translateY(14px) rotate(45deg);
	  }
	  50% {
		-webkit-transform: translateY(14px) rotate(0);
	  }
	  100% {
		-webkit-transform: translateY(0) rotate(0);
	  }
	}
	@keyframes menu-bar01 {
	  0% {
		transform: translateY(14px) rotate(45deg);
	  }
	  50% {
		transform: translateY(14px) rotate(0);
	  }
	  100% {
		transform: translateY(0) rotate(0);
	  }
	}
	.sp-menu{
		background:rgba(21,24,28,1.0);
		width: 84%;
		min-height: 100vh;
		overflow-y: auto;
		position: absolute;
		transition: all  0.3s ease;
		top:0;
		bottom: 0;
		z-index: 10000;
		padding-left: 0%;
		padding-top:10%;
		padding-bottom: 10%;
		right:-84%;
	}
	.sp-menu.open{
		right:0;
	}
	.menu-trigger span:nth-of-type(2) {
	  transition: all .25s .25s;
	  opacity: 1;
	}
	.menu-trigger span:nth-of-type(3) {
	  -webkit-animation: menu-bar02 .50s forwards;
	  animation: menu-bar02 .50s forwards;
	}
	@-webkit-keyframes menu-bar02 {
	  0% {
		-webkit-transform: translateY(-14px) rotate(-45deg);
	  }
	  50% {
		-webkit-transform: translateY(-14px) rotate(0);
	  }
	  100% {
		-webkit-transform: translateY(0) rotate(0);
	  }
	}
	@keyframes menu-bar02 {
	  0% {
		transform: translateY(-14px) rotate(-45deg);
	  }
	  50% {
		transform: translateY(-14px) rotate(0);
	  }
	  100% {
		transform: translateY(0) rotate(0);
	  }
	}
	.menu-trigger.active span:nth-of-type(1) {
	  -webkit-animation: active-menu-bar01 .50s forwards;
	  animation: active-menu-bar01 .50s forwards;
	}
	@-webkit-keyframes active-menu-bar01 {
	  0% {
		-webkit-transform: translateY(0) rotate(0);
	  }
	  50% {
		-webkit-transform: translateY(14px) rotate(0);
	  }
	  100% {
		-webkit-transform: translateY(14px) rotate(45deg);
	  }
	}
	@keyframes active-menu-bar01 {
	  0% {
		transform: translateY(0) rotate(0);
	  }
	  50% {
		transform: translateY(14px) rotate(0);
	  }
	  100% {
		transform: translateY(14px) rotate(45deg);
	  }
	}
	.menu-trigger.active span:nth-of-type(2) {
	  opacity: 0;
	}
	.menu-trigger.active span:nth-of-type(3) {
	  -webkit-animation: active-menu-bar03 .50s forwards;
	  animation: active-menu-bar03 .50s forwards;
	}
	@-webkit-keyframes active-menu-bar03 {
	  0% {
		-webkit-transform: translateY(0) rotate(0);
	  }
	  50% {
		-webkit-transform: translateY(-14px) rotate(0);
	  }
	  100% {
		-webkit-transform: translateY(-14px) rotate(-45deg);
	  }
	}
	@keyframes active-menu-bar03 {
	  0% {
		transform: translateY(0) rotate(0);
	  }
	  50% {
		transform: translateY(-14px) rotate(0);
	  }
	  100% {
		transform: translateY(-14px) rotate(-45deg);
	  }
	}
	.nav-area {
		position: fixed;
		width: 100%;
		background: #121519;
		z-index: 9999;
		top:0;
		height: 77px;
		padding-top: 0px;
	}
	.menu-box{
		padding-top: 7%;
	}
	.menu-area,.menu-area2,.menu-area3{
		clear: both;
		width: 0%;
		height: 0%;
		position: absolute;
		display: none;
		z-index: 999;
		transition: 0.0s;
		transition-delay:2.0s;
		-webkit-transition: 0.0s;
		-webkit-transition-delay: 2.0s;
	}
	.menu-area.select,.menu-area2.select,.menu-area3.select{
		display: block;
		width: 100%;
		height: 100%;
		position: relative;
	}
	.back-menu{
		padding-left: 2.5%;
		cursor: pointer;
	}
	.main-menu li{
		font-size:14px;
		border-top:2px solid #fff;	
	}
	.main-menu li:last-child{
		border-bottom:2px solid #fff;
	}
	.main-menu li a{
		display: block;
		width: 100%;
		height: 100%;
		padding:2.8% 6% 2.8% 6%;
		cursor: pointer;
		color:#fff;
	}
	.sp-menu h2{
		text-align: center;
		font-size:22px;
		line-height: 16px;
		color:#fff;
	}
	.header .wrap{
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	
	.footer{
		background: #15181c url(../images/common/foot_bg.png) no-repeat center top;
		background-size:100%;
		width: 100%;
		padding-bottom: 23%;
	}
	.footer dl{
		border-top:1px solid #fff;
		font-size:1.8rem;
		text-align: center;
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	.footer dl dt{
		border-left:1px solid #fff;
		border-right:1px solid #fff;
		border-bottom:1px solid #fff;
		padding-top: 15px;
		padding-bottom: 15px;
		letter-spacing: 3px;
		position: relative;
		cursor: pointer;
	}
	
	.footer dl dt span::after{
		/* 要素自体の大きさは不要のため、0に設定する */
		content: "";
		width: 0px;
		height: 0px;
		/* border-topとborder-bottomの太さを同一にすると、三角形の頂点が真ん中になる */
		border-top: 10px solid transparent;
		border-bottom: 10px solid transparent;
		/* border-leftの大きさを大きくすると、三角形は横に大きくなる */
		border-left: 12px solid #fff;
		border-right: 0px solid transparent;
		position: absolute;
		top: 15px;
		right: 20px;
		z-index: 3;
	}
	.footer dl dt.open span::after{
		border-top: 12px solid #15181c;
		border-bottom: 0px solid transparent;
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		margin-left: 20px;
		top:20px;
		right: 17px;
	}
	.footer dl dt.open{
		background: #ffffff;
		color:#15181c;
	}
	.footer dl dd li{
		border-left:1px solid #fff;
		border-right:1px solid #fff;
		border-bottom:1px solid #fff;
		background: #e5e5e5;
		letter-spacing: 3px;
	}
	.footer dl dd li a{
		color:#15181c;
		display: block;
		padding-top: 15px;
		padding-bottom: 15px;
		width: 100%;
		height: 100%;
	}
	.footer dl dd{
		display: none;
	}
	.footer .footlogo{
		width: 42%;
		margin-left: auto;
		margin-right: auto;
	}
	.footer .copy{
		font-size:0.9rem;
	}
	.wrap {
		width:100%;
		max-width:728px;
		margin-left: auto;
		margin-right: auto;
	}
	.f_bnr-area{
		position:fixed;
		bottom:0;
		right:0;
		width: 100%;
		padding-top: 10px;
		padding-left: 3%;
		padding-bottom: 3%;
		padding-right: 3%;
		z-index:999997;
		top:auto;
	}
	.f_bnr .fl_txt{
		font-size:12px;
		line-height: 14px;
		letter-spacing: 1px;
		text-align: center;
		color:#252525;
	}
	.f_bnr .fl_link{
		background: #2a2a2a;
		padding-top: 3%;
		padding-bottom: 3%;
		margin-top: 10px;
		position: relative;
		text-align: center;
	}
	.f_bnr-area .close{
		position:absolute;
		top:0px;
		right:0px;
		z-index:999996;
		cursor: pointer;
	}
	.f_bnr .fl_link::after{
		/* 要素自体の大きさは不要のため、0に設定する */
		content: "";
		width: 0px;
		/* border-topとborder-bottomの太さを同一にすると、三角形の頂点が真ん中になる */
		border-top: 5px solid transparent;
	    border-bottom: 5px solid transparent;
	    /* border-leftの大きさを大きくすると、三角形は横に大きくなる */
	    border-left: 6px solid #ffff;
	    border-right: 0px solid transparent;
		margin-left: 0px;
		top:35%;
		right: 2%;
		position: absolute;
		z-index: 3;
	}
	.f_bnr .fl_link{
		background: #2a2a2a;
		padding-top: 1%;
		padding-bottom: 3%;
		margin-top: 10px;
		position: relative;
	}
	#contents,.contents{
		/*padding-top: 75px;*/
	}
	.f_bnr .fl_link img {
		display: block;
		width: 20%;
		padding-top: 3%;
		margin-left: auto;
		margin-right: auto;

	}
}

@media screen and (max-width:420px) {
	.header {
		height: 55px;
	}
	.header .logo {
		padding: 14px 0 0 0px;
		width: 150px;
	}
	.footer dl {
		font-size: 1.4rem;
	}
	/*メニューバー*/

	.menu-btn{
		position:absolute;
		top:15px;
		right:5%;
		z-index: 99999;
		display: block;
	}
	.menu-trigger,
	.menu-trigger span {
	  display: inline-block;
	  transition: all .4s;
	  box-sizing: border-box;
		cursor: pointer;
	}
	.menu-trigger {
	  position: relative;
	  height: 22px;
	  width: 28px;
		z-index: 9998;
	}
	.menu-trigger span {
	  position: absolute;
	  left: 0;
	  height: 3px;
	  width: 100%;
	  background-color: #ffffff;
	  border-radius: 0px;
	  display: inline-block;
	  box-sizing: border-box;
	}
	.top .menu-trigger span {
	  position: absolute;
	  left: 0;
	  height: 3px;
	  width: 100%;
	  background-color: #ffffff;
	  border-radius: 0px;
	  display: inline-block;
	  box-sizing: border-box;
	}
	.menu-trigger span:nth-of-type(1) {
	  top: 0px;
	  width: 28px;
	  height: 3px;
	}
	.menu-trigger span:nth-of-type(2) {
	  top: 10px;
	  width: 28px;
	  height: 3px;
	}
	.menu-trigger span:nth-of-type(3) {
	  top:19px;
	  width: 28px;
	  height: 3px;
	}
	.menu-trigger span:nth-of-type(1) {
	  -webkit-animation: menu-bar01 .50s forwards;
	  animation: menu-bar01 .50s forwards;
	}
	.menu-trigger span:nth-of-type(1) {
	  -webkit-animation: menu-bar01 .50s forwards;
	  animation: menu-bar01 .50s forwards;
	}
	.menu-texbox .menu-tex,.menu-texbox .menu-tex2{
		text-align: center;
		color:#fff;
	}
	.menu-texbox .menu-tex{
		display: block;
	}
	.menu-texbox .menu-tex2{
		display: none;
	}
	.menu-texbox.close .menu-tex{
		display: none;
	}
	.menu-texbox.close .menu-tex2{
		display: block;
	}
	.menu-texbox{
		font-size:10px;
		line-height: 12px;
	}
	@-webkit-keyframes menu-bar01 {
	  0% {
		-webkit-transform: translateY(9px) rotate(45deg);
	  }
	  50% {
		-webkit-transform: translateY(9px) rotate(0);
	  }
	  100% {
		-webkit-transform: translateY(0) rotate(0);
	  }
	}
	@keyframes menu-bar01 {
	  0% {
		transform: translateY(9px) rotate(45deg);
	  }
	  50% {
		transform: translateY(9px) rotate(0);
	  }
	  100% {
		transform: translateY(0) rotate(0);
	  }
	}
	.sp-menu{
		background:rgba(21,24,28,1.0);
		width: 84%;
		min-height: 100vh;
		overflow-y: auto;
		position: absolute;
		transition: all  0.3s ease;
		top:0;
		bottom: 0;
		z-index: 10000;
		padding-left: 0%;
		padding-top:10%;
		padding-bottom: 10%;
		right:-84%;
	}
	.sp-menu.open{
		right:0;
	}
	.menu-trigger span:nth-of-type(2) {
	  transition: all .25s .25s;
	  opacity: 1;
	}
	.menu-trigger span:nth-of-type(3) {
	  -webkit-animation: menu-bar02 .50s forwards;
	  animation: menu-bar02 .50s forwards;
	}
	@-webkit-keyframes menu-bar02 {
	  0% {
		-webkit-transform: translateY(-9px) rotate(-45deg);
	  }
	  50% {
		-webkit-transform: translateY(-9px) rotate(0);
	  }
	  100% {
		-webkit-transform: translateY(0) rotate(0);
	  }
	}
	@keyframes menu-bar02 {
	  0% {
		transform: translateY(-9px) rotate(-45deg);
	  }
	  50% {
		transform: translateY(-9px) rotate(0);
	  }
	  100% {
		transform: translateY(0) rotate(0);
	  }
	}
	.menu-trigger.active span:nth-of-type(1) {
	  -webkit-animation: active-menu-bar01 .50s forwards;
	  animation: active-menu-bar01 .50s forwards;
	}
	@-webkit-keyframes active-menu-bar01 {
	  0% {
		-webkit-transform: translateY(0) rotate(0);
	  }
	  50% {
		-webkit-transform: translateY(9px) rotate(0);
	  }
	  100% {
		-webkit-transform: translateY(9px) rotate(45deg);
	  }
	}
	@keyframes active-menu-bar01 {
	  0% {
		transform: translateY(0) rotate(0);
	  }
	  50% {
		transform: translateY(9px) rotate(0);
	  }
	  100% {
		transform: translateY(9px) rotate(45deg);
	  }
	}
	.menu-trigger.active span:nth-of-type(2) {
	  opacity: 0;
	}
	.menu-trigger.active span:nth-of-type(3) {
	  -webkit-animation: active-menu-bar03 .50s forwards;
	  animation: active-menu-bar03 .50s forwards;
	}
	@-webkit-keyframes active-menu-bar03 {
	  0% {
		-webkit-transform: translateY(0) rotate(0);
	  }
	  50% {
		-webkit-transform: translateY(-9px) rotate(0);
	  }
	  100% {
		-webkit-transform: translateY(-9px) rotate(-45deg);
	  }
	}
	@keyframes active-menu-bar03 {
	  0% {
		transform: translateY(0) rotate(0);
	  }
	  50% {
		transform: translateY(-9px) rotate(0);
	  }
	  100% {
		transform: translateY(-9px) rotate(-45deg);
	  }
	}
	#contents,.contents{
		/*padding-top: 55px;*/
	}
}
#modal-content{
width:80%;
margin:0;
padding:0;
background:#000;
position:fixed;
display:none ;
z-index:99999;
}

#modal-content .inner{
position:relative;
width:100%;
padding-top:56.25%;
overflow:hidden;
}

#modal-content .inner #player{
position:absolute;
top:0;
right:0;
width:100%;
height:100%;
}

#modal-overlay{
z-index:9999;
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:120%;
background-color:rgba( 0,0,0, 0.75 );
}
.box_youtube a{cursor:pointer}
