@charset "utf-8";
/*
Wallpoet
Regular 400
font-family: 'Wallpoet', cursive;

Montserrat
SemiBold 600
font-family: 'Montserrat', sans-serif;

蛍光イエロー　
#dcff00  
220,255,0

蛍光ブルー　
#00fcff  
0,252,255


/*--------------------------------------------------------
	reset 
---------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { margin: 0; padding: 0; }
address,caption,cite,code,dfn,em,strong,th,var { font-style: normal; }
ul,ol { list-style-type: none; }
em,strong,th,address { font-style: normal; font-weight: normal; text-align: left; }
h1,h2,h3,h4,h5,h6 { font-weight: normal; font-size: 100%; }
img,
object,
embed { border: 0; vertical-align: top; }
img { max-width: 100%; height: auto; vertical-align: bottom; }
a{ outline: none;}
hr { border: none;}
table { border-collapse: collapse; border-spacing: 0; font-size: 100%; }
li { list-style-type: none; }
strong { font-weight: bold; }

/*-------------------------------------------------
	base
--------------------------------------------------*/
body {position: relative; background: #333; color: #000; font-family:'メイリオ', 'Meiryo', sans-serif; font-weight: bold; font-size: 16px; line-height: 1.6; -webkit-text-size-adjust: 100%; }
/*txt img 選択時*/
::selection { background:#dcff00; color: #000; }
::-moz-selection { background:#dcff00; color: #000; }/*Firefox*/
img::selection { background:none; }
img::-moz-selection { background:none; }/*Firefox*/


/*-------- text-align --------*/
.cn{ text-align: center;}
.le{ text-align: left;}
.ri{ text-align: right;}

.bg_y{ background: #dcff00 !important;}

/*-------------------------------------------------
	header
--------------------------------------------------*/
header { width: 100%; height: 100px; background: rgba(0,0,0,0); position: fixed; left: 0; top: 0; z-index: 1000; transition: 0.5s; }
header.header_move{ height: 60px !important; background: rgba(0,0,0,0.8);}
@media screen and ( max-width: 1200px) {
header { height: 60px; }
}/*END*/
header .inner {  margin: 0 auto; width: 95%; height: 100%; display: flex; justify-content: space-between; align-items: center; position: relative;}
header .inner .head_logo{ width: 455px;  transition: 0.5s; }
header.header_move  .inner .head_logo{  width: 355px;}
@media screen and ( max-width: 600px) {
header .inner .head_logo,
header.header_move  .inner .head_logo{ width: 65%; max-width: 250px; margin-left: 2%;}
}/*END*/
header .inner nav.head_nav ul{ display: flex; }
header .inner nav.head_nav ul li a{ font-size:15px; letter-spacing: 1px; line-height: 1; color: #fff; text-decoration: none; padding:0 20px; transition: 0.3s; }
header.header_move .inner nav.head_nav ul li a{ font-size:12px;}
@media screen and ( max-width: 1300px) {
header .inner nav.head_nav ul li a{ font-size:14px; }
}/*END*/
header .inner nav.head_nav ul li a span{ display: inline-block; position: relative;}
header .inner nav.head_nav ul li a span::after{ content: ''; display: block; position: absolute; bottom: -1px; left: 0px; width: 100%; height: 1px; background: #fff; opacity: 0; transition: 0.3s; }
header .inner nav.head_nav ul li a:hover span::after,
header .inner nav.head_nav ul li a.active span::after{ width: 100%; bottom: -5px; opacity: 1; }
@media screen and (max-width:1200px)  {
header .inner nav.head_nav{display: none;}
}/*END*/
/* on / off */
.logo_m{display: block;}
.logo_s{display: none;}
@media screen and ( max-width: 600px) {
.logo_m{display: none;}
.logo_s{display: block;}
}/*END*/

/*-------------------------------------------------
	sp nav
--------------------------------------------------*/
/* hamburger [ = ]
-------------------------------*/
header .btn_drawer,
header .drawer-nav{ display: none; font-size:100% !important; padding: 0; margin: 0; }
@media screen and ( max-width: 1200px) {
header .btn_drawer{ display:block; position: absolute; right: 0px; top:0px; z-index: 101; }
header .btn_drawer button { padding: 13px 10px; max-height: 60px !important; }
header.header_move .btn_drawer button { padding: 13px 10px; max-height: 60px !important; }
/*menu_txt*/
.menu_txt,
.menu_txt_x{ width: 34px; color: #fff; font-size: 9px; line-height: 1; padding: 0; margin: 0 0 0 -3px; position: relative; top: 3px; font-weight: normal; text-align: center; font-family:'メイリオ', 'Meiryo', sans-serif;}
.menu_txt{ letter-spacing: 0.5px;}
.menu_txt_x{letter-spacing: 0.5px;}
.menu_txt{ display: block; }
.drawer-open .menu_txt{ display: none;}
.menu_txt_x{ display: none;}
.drawer-open .menu_txt_x{ display: block;}
/*.drawer-hamburger*/
.drawer-hamburger { top:5px !important; right:0px !important; margin: 0; padding: 0; }/*バンバーガー ナビ 位置 CLOSE*/
.drawer-open .drawer-hamburger { top:5px !important; right:0px !important; }/*バンバーガー ナビ 位置 OPEN*/
}/*END*/

/* sp nav open 
-------------------------------*/
@media screen and ( max-width: 1200px) {
.sp_nav_inner{ padding-top: 60px; background: #000; }
.drawer-nav .sp_nav > ul{ border-bottom: solid 1px #222; }
.drawer-nav .sp_nav ul > li > a { outline:none; }
/*sp_nav*/
.drawer-nav .sp_nav ul > li > a {  padding: 30px 0 30px 5vh; font-size: 14px; line-height: 1; letter-spacing: 2px; font-weight: bold; text-align: left; color: #fff; border-top: solid 1px #222; display: block; position: relative; text-decoration: none; }
.drawer-nav .sp_nav ul > li > a span{ display: block; font-size: 12px; line-height: 1; letter-spacing: 1px; margin-top: 5px; font-weight: 700; }
}/*END*/

/*-------------------------------------------------
	co
--------------------------------------------------*/
.co{ padding: 80px 0 90px;}
@media screen and ( max-width: 1200px) {
.co{ padding: 70px 0 80px;}
}/*END*/
@media screen and ( max-width: 850px) {
.co{ padding: 8vw 0 9vw;}
}/*END*/
@media screen and ( max-width: 640px) {
.co{ padding: 12vw 0 14vw;}
}/*END*/
@media screen and ( max-width: 500px) {
.co{ padding: 12vw 0 14vw;}
}/*END*/

/*
.co2{ padding: 60px 0 70px;}
@media screen and ( max-width: 1200px) {
.co2{ padding: 70px 0 80px;}
}/*END*//*
@media screen and ( max-width: 850px) {
.co2{ padding: 8vw 0 9vw;}
}/*END*//*
@media screen and ( max-width: 640px) {
.co2{ padding: 12vw 0 14vw;}
}/*END*//*
@media screen and ( max-width: 500px) {
.co2{ padding: 12vw 0 14vw;}
}/*END*/





#newslist h2,
.co2 h1,
.co h2{ font-size: 90px; line-height: 1; font-family: 'Wallpoet', cursive; text-align: center; font-weight: normal; }
#newslist h2 small,
.co2 h1 small,
.co h2 small{ margin-top: 10px; font-size: 20px; letter-spacing: 1px; line-height: 1; display: block; font-weight: bold; font-family:'メイリオ', 'Meiryo', sans-serif; }
@media screen and ( max-width: 1200px) {
#newslist h2,
.co2 h1,
.co h2{ font-size: 80px; }
#newslist h2 small,
.co2 h1 small,
.co h2 small{ margin-top: 10px; font-size: 18px; letter-spacing: 1px;}
}/*END*/
@media screen and ( max-width: 850px) {
#newslist h2,
.co2 h1,
.co h2{ font-size: 9.4vw; }
#newslist h2 small,
.co2 h1 small,
.co h2 small{ margin-top: 2vw; font-size: 3vw; letter-spacing: 1px;}
}/*END*/
@media screen and ( max-width: 640px) {
#newslist h2,
.co2 h1,
.co h2{ font-size: 11vw; }
#newslist h2 small,
.co2 h1 small,
.co h2 small{ margin-top: 2vw; font-size: 3.6vw; letter-spacing: 1px;}
#challenger.co h2{ font-size: 10vw; }
}/*END*/
@media screen and ( max-width: 500px) {
#newslist h2,
.co2 h1,
.co h2{ font-size: 14vw; }
#newslist h2 small,
.co2 h1 small,
.co h2 small{ margin-top: 2vw; font-size: 4vw; letter-spacing: 1px;}
}/*END*/
 



.txt{ font-size: 16px;}
@media screen and ( max-width: 640px) {
.txt{ font-size: 14px;}
}/*END*/

.txt20{ font-size: 20px; line-height: 2; }
@media screen and ( max-width: 640px) {
.txt20{ font-size: 18px;}
}/*END*/
@media screen and ( max-width: 500px) {
.txt20{ font-size: 17px;}
}/*END*/
@media screen and ( max-width: 400px) {
.txt20{ font-size: 16px;}
}/*END*/

.txt18{ font-size: 18px; line-height: 2; }
@media screen and ( max-width: 640px) {
.txt18{ font-size: 17px;}
}/*END*/
@media screen and ( max-width: 500px) {
.txt18{ font-size: 16px;}
}/*END*/
@media screen and ( max-width: 400px) {
.txt18{ font-size: 15px;}
}/*END*/





/*-------------------------------------------------
	common
--------------------------------------------------*/

/*-------- sns --------*/
.sns p { font-size: 12px; line-height: 1; font-weight: normal; letter-spacing: 2px; }
.sns ul { display: flex; align-items: center;}
.sns ul li a { padding: 0 7px; vertical-align: middle; display: flex; transition: 0.3s;  }
.sns ul li a:hover { opacity: 0.5; }
.sns ul li:nth-child(1) a img{ height: 20px; }
.sns ul li:nth-child(2) a img{ height: 25px; }
.sns p { font-size: 12px; line-height: 1; font-weight: normal; letter-spacing: 2px; }



/*-------------------------------------------------
  btn
--------------------------------------------------*/
.btn { margin: 0px;}
.btn a{ display: inline-block; min-width: 150px; font-size: 15px;letter-spacing: 4px; padding: 22px 50px; line-height: 1; background: #000; color: #fff; text-decoration: none; border-radius: 4px; transition: 0.3s; }
.btn a:hover{ opacity: 0.6;}
@media screen and ( max-width: 640px) {
.btn a{ display: inline-block; min-width: 120px; font-size: 14px;letter-spacing: 3px;  padding: 22px 35px; }
}/*END*/
@media screen and ( max-width: 400px) {
.btn a{ display: inline-block; min-width: 120px; font-size: 12px;letter-spacing: 3px;  padding: 20px 32px; }
}/*END*/

#news .btn { margin-top: 10px; }
@media screen and ( max-width: 1000px) {
#news .btn { margin-top: 2vw; }
}/*END*/
@media screen and ( max-width: 640px) {
#news .btn { margin-top: 2vw; }
}/*END*/

#news .btn a{background: #000; color: #fff; display: inline-block; max-width: 150px; width: 100%;}

#content .btn{background: #000;display: inline-block; margin: 50px auto 0;  text-align: center; }
#content .btn a{ color: #fff; text-align: center; margin: 0 auto; }







/*-------------------------------------------------
	pankuzu
--------------------------------------------------*/
#content .pankuzu{font-size: 12px; max-width: 1100px; width: 95%; padding:15px 0; margin: 0 auto;}
#content .pankuzu a{ padding: 5px 10px; color: #000;}
#content .pankuzu .ti{color: #919191; padding: 0 10px;}
#content .pankuzu{ display: flex; }
#content .pankuzu li::after { content: ">"; }
#content .pankuzu li:last-child::after { content: "";}




/*-------------------------------------------------
	gotop
--------------------------------------------------*/
.gotop { position:absolute; bottom:0px; right:20px;width:50px; height:70px; box-sizing:border-box; border-radius: 0%; z-index: 2000!important; }
.gotop a{ position: relative; display:block; background:#000; text-decoration:none;width:50px; height:50px; box-sizing:border-box; border-radius: 0%; z-index: 11; transition: 0.3s; }
.gotop a::after { position:absolute; top:50%; left:50%; content: ''; width: 16px; height: 16px; margin: -8px 0 0 -8px; background: url("../img/page_top.svg") no-repeat ; background-size: cover;}
.gotop a:hover { background:#444; }
@media (max-width: 500px) {
.gotop { position:absolute; bottom:0px; right:10px; width:40px; height:50px; }
.gotop a{ width:40px; height:40px; }
.gotop a::after { width: 14px; height: 14px; margin: -7px 0 0 -7px; }
}/*END*/


/*-------------------------------------------------
	footer
--------------------------------------------------*/
footer{ background: #000; width: 100%; height: 150px; display: block; }
.footer_inner{ width: 100%; height: 100%; padding: 0 50px; box-sizing: border-box; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; flex-direction : row-reverse;}
.footer_inner .copyright{ font-size: 12px; line-height: 1; letter-spacing: 2px; color: #fff; font-family: Helvetica, Arial, sans-serif; font-weight: normal;}
.footer_inner .sns{ color: #fff; display: flex; align-items: center; z-index: 5; }

.foot_logo{ display: none;}

@media screen and (max-width: 750px) {
footer{width: 100%; height: auto; }
.footer_inner{ padding: 50px 0; width: 100%; height: auto !important; margin: 0 auto; display: inline-block; text-align: center;}
.foot_logo{ display: block; width: 55%; max-width: 220px; margin: 0 auto 50px;}

.footer_inner .sns{ width: 100%; color: #fff; display: block; align-items: center; z-index: 5; margin: 0 auto; text-align: center; }
.footer_inner .sns ul{ display: flex; align-items: center; justify-content: center;}
.footer_inner .sns p { margin-bottom: 18px; font-size: 12px; font-family: Helvetica, Arial, sans-serif; font-weight: normal;}
.footer_inner .sns p { display: none; }
.footer_inner .sns ul li a { padding: 0 10px; }
.footer_inner .sns ul li:nth-child(1) a img{ height: 30px; }
.footer_inner .sns ul li:nth-child(2) a img{ height: 35px; }
.footer_inner .copyright{ margin-top: 50px; font-size: 12px; color: #fff; font-weight: normal;}
}/*END*/











/*-------------------------------------------------
	[link] fade out in
--------------------------------------------------*//*
body::after {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color:#eee; 
  z-index: 9999; 
  pointer-events: none; 
  opacity: 0; 
  -webkit-transition: opacity .8s ease; 
 -ms- transition: opacity .8s ease;
 -moz- transition: opacity .8s ease;
  transition: opacity .8s ease;
}
 
 
 
body.fadeout::after {
  opacity: 1;
}
 

 
body.fadeout article{
  -webkit-transform:scale(1.2);
  transform:scale(1.2);
}

/**/