@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;700&display=swap');



/* 共通 */
html{ scroll-behavior: smooth; }
body{ height: 100%; background: #121212; -webkit-text-size-adjust: 100%; }
/* 共通 フォント */
*{
font-family: "Zen Kaku Gothic New", sans-serif;
font-weight: 400;
color: #fff;
/*text-shadow: 0px 0px 10px rgb(215, 167, 255);*/
-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
}
.mey{ font-family: 'メイリオ','Meiryo', serif; line-height: 1.2em; }
::selection{ background: rgba(125,125,125, 0.5); color: #fff; text-shadow: none; }
.T-ac{ color: #f48a00; }
/* 共通 リンク */
.bt-link,
.bt-link-img{ transition: all 0.4s ease; animation: all 0.4s ease; }
.bt-link:hover{
z-index: 1;
opacity: 0.4;
-webkit-animation-name: pulse;
animation-name: pulse;
}
.no-link{ opacity: 0.3; }
/* テキストテクスチャ */
.text_tex{
background-image: url(../img/_/font_tex_w.jpg);
background-clip: text;
-webkit-background-clip: text;
color: transparent;
}


/* ローディング */
#loading{
width: 100%;
height: 100%;
z-index: 9999;
background: #121212 url(../img/_/bg_tex_100.png) top center;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
position: fixed;
top: 0;
left: 0;
padding: 40px;
}
#loading .item{
width: 100%;
max-width: 650px;
position: relative;
}
#loading .item img{
width: 100%;
position: relative;
margin: 0 0 30px;
}
#loading .item #loading_text{
width: 100%;
text-align: center;
font-size: 14px;
line-height: 1.0em;
color: #242424;
position: relative;
margin: 0;
}
.content-load{
width: 100%;
height: 100%;
display: none;
position: relative;
}


/* ナビ */
header{
width: 100%;
height: 100%;
z-index: 999;
display: none;
position: fixed;
top: 0;
left: 0;
padding: 20%;
}
header .bg{
width: 100%;
height: 100%;
opacity: 0.95;
background: #121212 url(../img/_/bg_tex_100.png) center;
position: absolute;
top: 0;
left: 0;
}
header .box{
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
position: relative;
}
header nav{
width: 100%;
max-width: 700px;
position: relative;
}
header nav > a{
width: 100%;
display: flex;
justify-content: center;
font-size: 22px;
line-height: 1em;
text-decoration: none;
position: relative;
padding: 30px 50px;
}
header nav .sns{
width: 100%;
display: flex;
justify-content: center;
position: relative;
margin: 30px 0;
}
header nav .sns a{
width: 26px;
position: relative;
margin: 0 10px;
}
header nav .sns a img{ width: 100%; }
.nav-bt{
width: 90px;
z-index: 999;
position: fixed;
top: 20px;
right: 20px;
}
header nav .bt-base a{ width: 50%; }
.nav-bt img{
width: 100%;
position: relative;
cursor: pointer;
} 
.nav-bt .close{
display: none;
position: absolute;
top: 0;
left: 0;
}


/* SNSボタン */
#sns-bt{
width: 35px;
z-index: 888;
position: fixed;
bottom: 20px;
right: 20px;
/*mix-blend-mode: difference;*/
}
#sns-bt a{
width: 35px;
height: 35px;
display: block;
overflow: hidden;
position: relative;
margin: 10px 0 0 0;
padding: 30%;
border-radius: 100%;
}
#sns-bt a img{
width: 100%;
position: relative;
}
#sns-bt a .bg{
width: 100%;
height: 100%;
background: rgba(50,50,50,0.5);
position: absolute;
top: 0;
left: 0;
filter: blur(6px);
}


/* メイン */
main{
width: 100%;
max-width: 2560px;
min-width: 1200px;
/*overflow: hidden;*/
display: block;
/*background: #121212 url(../img/_/bg_tex_100.png) top center;*/
position: relative;
margin: 0 auto;
}
main > .bg{
width: 100%;
height: 100vh;
background: #121212 url(../img/_/bg_tex_100.png) top center;
position: fixed;
top: 0;
left: 0;
}
main > .glad{
width: 100%;
height: 100%;
background: -webkit-linear-gradient(left, rgba(223,87,2,0.1) 0%, rgba(223,87,2,0) 30%, rgba(223,87,2,0) 70%, rgba(223,87,2,0.1) 100%);
background: linear-gradient(left, rgba(223,87,2,0.1) 0%, rgba(223,87,2,0) 30%, rgba(223,87,2,0) 70%, rgba(223,87,2,0.1) 100%);
position: fixed;
top: 0;
left: 0;
}
.cov{
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
/* デザインライン */
.line{
width: 100%;
border-bottom: 1px rgba(255,255,255, 0.15) solid;
position: relative;
margin: 0 auto;
}
.lines_bg{
width: 100%;
height: 51px;
opacity: 0.3;
background: url(../img/_/hr_fude.png) repeat-x center;
position: relative;
}
.lines_bg.rev{
transform: scale(1, -1);
background-position: 500px 0;
}


/* 見出し */
h2{
width: 100%;
position: relative;
text-align: center;
margin: 0 auto 50px;
}
h2 p{
width: 100%;
font-size: 56px;
font-weight: 700;
line-height: 1.4em;
position: relative;
background-image: url(../img/_/font_tex_w.jpg);
background-clip: text;
-webkit-background-clip: text;
color: transparent;
}
h2 .eg{
width: auto;
display: inline-block;
font-size: 18px;
line-height: 1.0em;
font-weight: 700;
position: relative;
margin: 7px 0 0;
padding: 11px 20px 15px;
border: 2px rgba(255, 255, 255, 0.15)  solid;
}


/* ボタンベース */
.bt-base{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: center;
position: relative;
}
.bt-base a{
width: auto;
min-width: 100px;
background: #242424 url(../img/_/bg_tex_100.png) center;
overflow: hidden;
display: inline-block;
line-height: 1;
text-decoration: none;
text-shadow: none;
position: relative;
padding: 20px;
border-radius: 8px;
box-shadow: 0 10px 15px rgba(0, 0, 0, 0.3);
}
  .bt-base a.wt{ background: #eee url(../img/_/bg_tex_20.png) center; }
.bt-base a.ac::before{
content: ' ';
width: 100%;
height: 100%;
background: -moz-linear-gradient(left, rgba(190,124,0,0.0) 0%, rgba(223,87,2,0.3) 50%, rgba(190,124,0,0.0) 100%);
background: -webkit-linear-gradient(left, rgba(190,124,0,0.0) 0%, rgba(223,87,2,0.3) 50%, rgba(190,124,0,0.0) 100%);
background: linear-gradient(left, rgba(190,124,0,0.0) 0%, rgba(223,87,2,0.3) 50%, rgba(190,124,0,0.0) 100%);
position: absolute;
top: 0;
left: 0;
}
.bt-base a p{
width: 100%;
text-align: center;
font-size: 18px;
font-weight: bold;
position: relative;
}
.bt-base a.wt p{ color: #121212; }


/* ミニスクロールバー */
.min_sc::-webkit-scrollbar{ width: 5px; }
.min_sc::-webkit-scrollbar-track{
background: rgba(255,255,255,0.2);
border-radius: 5px;
}
.min_sc::-webkit-scrollbar-thumb{
background: #fff;
border-radius: 5px;
}


/* フッター */
footer{
width: 100%;
max-width: 2560px;
background: #000;
position: relative;
margin: 0 auto;
padding: 100px 10%;
}
/* フッター navi */
footer ul{
width: 100%;
max-width: 1400px;
display: flex;
justify-content: center;
position: relative;
margin: 0 auto 50px;
}
footer ul li{
width: auto;
display: inline-block;
position: relative;
margin: 0 20px;
}
footer ul li a{
text-decoration: none;
font-size: 18px;
font-family: 'メイリオ','Meiryo', serif;
color: #eee;
}
/* フッター  SNS */
footer .sns{
width: 100%;
max-width: 1200px;
display: flex;
justify-content: center;
margin: 0 auto 50px;
}
footer .sns a{
width: 50px;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
position: relative;
margin: 0 10px;
padding: 10px;
border-radius: 100%;
}
footer .sns .tw{ background: #111; }
footer .sns .yt{ background: #CD201F; }
footer .sns a img{ width: 100%; }
/* フッター TOPへ */
footer .top-bt{
width: 100%;
max-width: 130px;
display: block;
color: #fff;
position: relative;
margin: 0 auto 30px auto;
}
footer .top-bt img{ width: 100%; }
/* フッター テキスト */
footer .text{
width: 100%;
max-width: 1400px;
font-size: 12px;
text-align: center;
color: #757575;
font-family: 'メイリオ','Meiryo', serif;
text-shadow: none;
position: relative;
margin: 0 auto;
}


/* レスポンシブ */


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

  /* 見出し */
  h2{ margin: 0 auto 50px; }
  footer{ padding: 100px 5%; }

}


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



}


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



}


/* IE対応 */
@media all and (-ms-high-contrast:none){



}


/* end */
