@charset "UTF-8";

html {
  overflow:hidden;
  height: 100%;
  background-image:url(/lib/cmn_img/bg.gif);
}
body.drawer-open{
 overflow: hidden;
     height: 100%;
 }

body, h1, h2, h3, h4, h5, h6, pre, ul, ol, li, dl, dt, dd, p, img {
 margin: 0;
 padding: 0;
 color: #111;
 overflow:hidden;
}
img {
 vertical-align: bottom !important;
}
body {
 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
 color: #333;
 line-height: 100%;
 -webkit-text-size-adjust: 100%;
 position: relative;
 background-color:#111;
  background-image:url(/lib/cmn_img/bg.png);
 background-repeat:no-repeat;
 background-size:contain;
 background-position:10% 0;
  overflow-x:hidden;
}
a {
 color: #fff;
 text-decoration: none;
 cursor: pointer;
 outline: none;
}
a:link {
 text-decoration: none;
 outline: none;
}
a:hover {
 color: #fff;
 text-decoration: none;
 outline: none;
 transition: all 0.3s ease-in-out 0s;
}
ul, ol {
 list-style-type: none;
}
ul li, ol li, dl {
 line-height: 1.6;
}
a:focus {
 outline: none;
}
::selection {
 background-color: #e60012;
 color: #fff;
}
::-moz-selection {
background-color: #e60012;
 color: #fff;
}
h1, h2, h3, h4, h5, h6, pre, li, dt, dd, th, td, p {
 font-size: 15px;
 line-height: 1.6;
  letter-spacing:0.1rem;
}

.bordernon {
 border: none !important;
}


.mdSpan {
 position: relative;
}
.mdSpan i {
 display: block;
 left: 0;
 line-height: 0;
 margin-top: -75px;
 padding-top: 75px;
 position: absolute;
 text-indent: -9999px;
 top: 0;
}


.blue:hover {
 color: #00036a;
 text-decoration: underline;
}

ul.ddul li {
 list-style-type: circle !important;
 padding-left: 1.3em;
 text-indent: -1em;
 list-style-position: inside;
}



.opacty08{
 opacity:0.9;
}

/*-
/*----------------------------------------------------
	☆Crearfix
----------------------------------------------------*/


.clearfix:after {
 content: ".";
 height: 0;
 clear: both;
 display: block;
 font-size: 0.1em;
 line-height: 0;
 visibility: hidden;
}
.clearfix {
 display: inline-block;
 min-height: 1%;
}
/* Hides from IE-mac \*/
* html .clearfix {
 height: 1%;
}
/* End hide from IE-mac */
/*----------------------------------------------------
	☆br clear
----------------------------------------------------*/


br.clear_noie {
 display: inline !important;
 display: none;
 clear: both;
 line-height: 0px;
}
br.clear_all {
 clear: both;
 line-height: 0px;
}
.mdSpan {
 position: relative;
}
.mdSpan i {
 display: block;
 left: 0;
 line-height: 0;
 margin-top: -107px;
 padding-top: 107px;
 position: absolute;
 text-indent: -9999px;
 top: 0;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
br.clear_noie {
 display: block!important;
 content: " ";
}
}
div.clear_noie {
 clear: both;
 line-height: 0px;
}
/*----------------------------------------------------
	☆topcontrol
----------------------------------------------------*/
#topcontrol {
 z-index: 9999;
}
#topcontrol a {
 background: url(../cmn_js/scrolltop/scrollup.png) center center no-repeat;
 background : url(../cmn_js/scrolltop/scrollup.gif) center center no-repeat\9; /* IE8 and below */
 *background : url(../cmn_js/scrolltop/scrollup.gif) center center no-repeat; /* IE7 and below */
 _background : url(../cmn_js/scrolltop/scrollup.gif) center center no-repeat; /* IE6 */
 font-size: 0;
 display: block;
 height: 60px;
 width: 60px;
 background-size: 50px 50px;
 opacity: 0.7;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
 -webkit-transition: all .15s ease-in-out;
 transition: all .15s ease-in-out;
}
#topcontrol a:hover {
 background-size: 55px 55px;
 opacity: 1;
}
/*----------------------------------------------------
	☆header
----------------------------------------------------*/


header {
 position: fixed;
 width: 100%;
 top: 0;
 z-index: 999;
 transition: 0.5s ease-in-out;
 -moz-transition: 0.5s ease-in-out;
 -webkit-transition: 0.5s ease-in-out;
 -o-transition: 0.5s ease-in-out;
 background: #111;
 border-bottom:1px solid #353535;
}
header .boxL {
 float: left;
 width: auto;
}
header .boxR {
 transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
 float: right;
 width:auto;
 margin-right: 25px;
 margin-top:16px;
}
header .boxR a {
 font-size:14px;
 font-size:1.4rem;
 color: #fff;
 letter-spacing: 0.1rem;
 padding: 5px;
 display: block;
 transition: 0.5s ease-in-out;
 -moz-transition: 0.5s ease-in-out;
 -webkit-transition: 0.5s ease-in-out;
 -o-transition: 0.5s ease-in-out;
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 width: 100%;
 text-align: center;
}
header .boxR a i{
 margin-right:10px;
  transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;

}

header .boxR a:hover {
 color: #fff;
}



header .boxR a:hover i.fa-twitter {
	color:red;
}


header .boxR a:hover i.fa-twitter{
	color:#55ACEE;
}

header .boxR a:hover i.fa-facebook:hover{
	color:#305097;
}

header .boxR a:hover i.fa-instagram:hover{
	color:#fd1d1d;
}



header .boxR p.contact{
 display:inline-block;
}

header .boxR p.contact a{
 background: #af0001;
 letter-spacing: 0.3rem;
 padding: 15px 30px;
font-family: 'Teko', sans-serif;
}


header .boxR p.contact a:hover{
 background: #790001;
}


header .boxR .lang{
 width:100px;
 display:inline-block;
}



ul.headerlist {
 font-size: 0;
}
ul.headerlist li {
 width: auto;
 display: inline-block;
 vertical-align: middle;
}
ul.headerlist li.last{
}

ul.headerlist li.logo{
 margin:0 20px;
 border:none;
}

ul.headerlist li.logo a img{
 width:150px;
}

ul.headerlist li.logo a:hover {
 background:none !important;
}


ul.headerlist li a {
font-family: 'Teko', sans-serif;
 color:#fff;
 display: block;
 font-size: 14px;
 font-size: 1.4rem;
 text-align: center;
 transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
  padding: 25px 15px 25px;
 font-weight: normal;
 letter-spacing: 0.3rem;
 line-height:3.1;

}
ul.headerlist li a:hover {
 color:#af0001;
}


ul.headerlist li a {
display: block;
  position: relative;
  text-decoration: none;
  margin: 0 20px;}
ul.headerlist li a::before,
ul.headerlist li a::after {
  border-bottom: solid 1px #e60012;
  bottom: 0;
  content: "";
  display: block;
  position: absolute;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  width: 0;
}
ul.headerlist li a::before {
  left: 50%;
}
ul.headerlist li a::after {
  right: 50%;
}
ul.headerlist li a:hover::before,
ul.headerlist li a:hover::after {
  width: 50%;
}



h1.maincopy {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%) scale(0.95, 0.95);
    transform: translate(-50%, -50%) scale(0.95, 0.95);
    -webkit-transform: translate(-50%, -50%) scale(0.95, 0.95);
    -moz-transform: translate(-50%, -50%) scale(0.95, 0.95);
    width: auto;
    transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -webkit-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
}


h1.maincopy img{
 width:50%;
}
/*----------------------------------------------------
	☆footer
----------------------------------------------------*/

#footer {
 background: #ffffff;
 border-top: 2px solid #e60012;
}

#footer .footerin .box01 {
 width: 30%;
}
#footer .footerin .box02 {
 width: 67%;
}
#footer .footerin .box01 p.logo {
 font-weight: bold;
 line-height: 1;
}
#footer .footerin .box01 p.logo a {
 width: 205px;
 height: 39px;
 display: block;
}
#footer .footerin .box02 .rbox01 {
 border-bottom: 2px solid #505050;
 padding-bottom: 25px;
}
#footer .footerin .box02 .rbox01 .box01 {
 width: 75%;
}
#footer .footerin .box02 .rbox01 .box01 p.tx {
 font-family: 'Open Sans', sans-serif;
 margin-top: 5px;
}
#footer .footerin .box02 .rbox01 .box01 p.tx a {
 margin-right: 2%;
 transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
}
#footer .footerin .box02 .rbox01 .box01 p.tx a:hover {
 color: #e60012;
}
#footer .footerin .box02 .rbox01 .box02 {
 border: none;
 width: 25%;
}
#footer .footerin .box02 .rbox02 ul {
 font-size: 0;
 line-height: 0;
}
#footer .footerin .box02 .rbox02 ul li {
 display: inline-block;
 vertical-align: top;
 margin-right: 1.3%;
 width: 32%;
}
#footer .footerin .box02 .rbox02 ul li.last {
 margin-right: 0;
}
#footer .footerin .box02 .rbox02 ul li p.kaiso1 {
 font-weight: bold;
}
#footer .footerin .box02 .rbox02 ul li p.kaiso1 a {
  color:#111;
 transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
}
#footer .footerin .box02 .rbox02 ul li p.kaiso1 a:hover {
 color: #e60012;
}
#footer .footerin .box02 .rbox02 ul li p.kaiso2 {
 line-height: 2;
 font-size: 12px;
 font-size: 1.2rem;
 padding-left: 2%;
 padding-top: 5%;
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
}
#footer .footerin .box02 .rbox02 ul li p.kaiso2 a {
 color: #404040;
 transition: all 0.5s ease-in-out 0s;
 -moz-transition: all 0.5s ease-in-out 0s;
 -webkit-transition: all 0.5s ease-in-out 0s;
 -o-transition: all 0.5s ease-in-out 0s;
}
#footer .footerin .box02 .rbox02 ul li p.kaiso2 a:hover {
 color: #e60012;
}
p.copyright {
 background:#e60012;
}
/*----------------------------------------------------
	☆move
----------------------------------------------------*/
.graymove {
 text-align: center;
}
.graymove .graymovein {
 display: inline-block;
 line-height: 0;
 position: relative;
 overflow: hidden;
 width: auto;
}
.graymove .graymovein {
 display: block;
 line-height: 0;
 position: relative;
 overflow: hidden;
 width: auto;
}
.graymove .graymovein:before {
 background-color: rgba(0,3,106,1);
 width: 100%;
 height: 100%;
 content: "";
 position: absolute;
 top: 0;
 left: 0%;
 z-index: 2;
}
.graymove .graymovein:after {
 background-color: rgba(0,4,157,1);
 width: 100%;
 height: 100%;
 content: "";
 position: absolute;
 top: 0;
 left: 0%;
 z-index: 1;
}
.showTime .graymovein:before {
 left: 100%;
}
.showTime .graymovein:after {
 left: 100%;
}
.showTime .graymovein:before {
 transition: all 0.8s ease-in-out 0.2s;
 -webkit-transition: all 0.8s ease-in-out 0.2s;
}
.showTime .graymovein:after {
 left: 100%;
 transition: all 1.2s ease-in-out 0.6s;
 -webkit-transition: all 1.2s ease-in-out 0.6s;
}
.redmove {
 text-align: center;
}
.redmove .redmovein {
 display: inline-block;
 line-height: 0;
 position: relative;
 overflow: hidden;
 width: auto;
}
.redmove .redmovein:before {
 background-color: rgba(248,248,248,1);
 width: 100%;
 height: 100%;
 content: "";
 position: absolute;
 top: 0;
 left: 0%;
 z-index: 2;
}
.redmove .redmovein:after {
 background-color: rgba(230,0,18,1);
 width: 100%;
 height: 100%;
 content: "";
 position: absolute;
 top: 0;
 left: 0%;
 z-index: 1;
}
.showTime .redmovein:before {
 left: 100%;
}
.showTime .redmovein:after {
 left: 100%;
}
.showTime .redmovein:before {
 transition: all 0.8s ease-in-out 0s;
 -webkit-transition: all 0.8s ease-in-out 0s;
}
.showTime .redmovein:after {
 left: 100%;
 transition: all 0.8s ease-in-out 0.3s;
 -webkit-transition: all 0.8s ease-in-out 0.3s;
}
.blackmove {
 text-align: center;
}
.blackmove .blackmovein {
 display: inline-block;
 line-height: 0;
 position: relative;
 overflow: hidden;
 width: auto;
}
.blackmove .blackmovein:before {
 background-color: rgba(248,248,248,1);
 width: 100%;
 height: 100%;
 content: "";
 position: absolute;
 top: 0;
 left: 0%;
 z-index: 2;
}
.blackmove .blackmovein:after {
 background-color: rgba(17,17,17,1);
 width: 100%;
 height: 100%;
 content: "";
 position: absolute;
 top: 0;
 left: 0%;
 z-index: 1;
}
.showTime .blackmovein:before {
 left: 100%;
}
.showTime .blackmovein:after {
 left: 100%;
}
.showTime .blackmovein:before {
 transition: all 0.8s ease-in-out 0.5s;
 -webkit-transition: all 0.8s ease-in-out 0.5s;
}
.showTime .blackmovein:after {
 left: 100%;
 transition: all 0.8s ease-in-out 0.8s;
 -webkit-transition: all 0.8s ease-in-out 0.8s;
}

/*----------------------------------------------------
	☆table
----------------------------------------------------*/

.tablebox {
 width: 100%;
}
.tablebox th, .tablebox td {
 background: #fafafa;
 color: #111;
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 border: 1px solid #dbdbdb;
 padding: 15px 10px;
 width: 25%;
}
.tablebox td {
 background: #fff;
 width: 75%;
}
.tableintable {
 width: 95%;
}
.tableintable th, .tableintable td {
 background: #fff !important;
 color: #111;
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 text-align: left !important;
 border: none !important;
 padding: 10px;
 width: 25%;
 font-weight: normal !important;
}
.tableintable td {
 width: 75% !important;
}
.historytable th, .historytable td {
 width: 7% !important;
}
.historytable td {
 width: 93% !important;
}

/*----------------------------------------------------
	☆svg
----------------------------------------------------*/


@media all and (-ms-high-contrast: none) {
p.ieimg {
 display: block;
 position: absolute;
 left: 50%;
 top: 50%;
 transform: translate(-50%, -50%);
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
}
}

@media only screen and (max-width: 740px) {
@media all and (-ms-high-contrast: none) {
 p.ieimg {
 width:100%;
}
 p.ieimg img {
 width:300px;
 text-align:center;
}
}
}
#loading {
 position: absolute;
 left: 50%;
 top: 50%;
 transform: translate(-50%, -50%);
 -webkit-transform: translate(-50%, -50%);
 -moz-transform: translate(-50%, -50%);
 z-index: 999999;
}
#loader-bg {
 position: fixed;
 width: 100%;
 height: 100%;
 top: 0px;
 left: 0px;
 background: #e60012;
 z-index: 99999999999999;
}

h1, p, h2, h3, h4, ul, li, div {
  margin: 0;
  padding: 0;
}

body {
  padding: 0;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  display: flex;
}

.loading-page {
  background-color: #0d0d0d;
    background-image:url(/lib/cmn_img/bgloading.png) !important;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:660px 497px;
  width: 100vw;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}
.loading-page .counter {
  text-align: center;
}
.loading-page .counter p {
	font-size:30px;
  font-size: 3.0rem;
font-family: 'Teko', sans-serif;
  font-weight: 100;
  text-align:center;
  color: #ce0414;
  letter-spacing:1rem;
}
.loading-page .counter h1 {
  color: white;
  font-size: 60px;
  margin-top: -10px;
  font-family: 'Teko', sans-serif;
  font-weight:normal;

}
.loading-page .counter hr {
  background: #ce0414;
  border: none;
  height: 1px;
}
.loading-page .counter {
  position: relative;
  width: 200px;
}
.loading-page .counter h1.abs {
  position: absolute;
  top: 0;
  width: 100%;
}
.loading-page .counter .color {
  width: 0px;
  overflow: hidden;
  color: #f60d54;
}


/*--topheader--*/




 /*デバイスの横幅が1300px以下の場合*/
@media only screen and (max-width: 1300px) {



/*----------------------------------------------------
	☆header
----------------------------------------------------*/


ul.headerlist li.logo{
 margin:0 5px;
}




ul.headerlist li.logo a img{
 width:150px;
}



ul.headerlist li a {
 font-size: 14px;
 font-size: 1.4rem;
  padding: 25px 0;

}
ul.headerlist li a:hover {
 color:#fff;
 background:#e60012;
}



header .boxR p.contact a{
 padding: 15px 15px;
}


#dropmenu li ul.no1 {
  left:280px;
}
#dropmenu li ul.no2 {
  left: 585px;
}








}

/*デバイスの横幅が1024px以下の場合*/
@media only screen and (max-width: 1024px) {

}

/*デバイスの横幅が960px以下の場合*/
@media only screen and (max-width: 960px) {
 
 .loading-page {
	background-size:280px 211px;
}
 
 .mdSpan i {
 margin-top: -60px;
 padding-top: 60px;
}

/*----------------------------------------------------
	☆header
----------------------------------------------------*/


.spcompanyname {
 border-bottom:1px solid #353535;
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 -o-box-sizing: border-box;
 -ms-box-sizing: border-box;
 position: fixed;
 left: 0;
 top: 0;
 background: #111;
 z-index: 999;
 min-height: 61px;
 padding-top: 12px;
 padding-left: 10px;
 width: 100%;
}


.spcompanyname a img {
 width:140px;
}


h1.maincopy img{
 width:95%;

}

/*----------------------------------------------------
	☆footer
----------------------------------------------------*/

#footer .footerin {
 max-width:inherit;
 padding: 50px 0 20px;
 width: 95%;
}
#footer .footerin .box01 {
 width: 100%;
 display:block;
 text-align:center;
}
#footer .footerin .box02 {
 width: 100%;
 display:block;
}
#footer .footerin .box01 p.logo {
 font-weight: bold;
 line-height: 1;
 text-align:center;
}
 #footer .footerin .box01 p.logo a {
 margin:0 auto;
}
#footer .footerin .box02 .rbox01 {
 border-bottom:none;
 padding-bottom: 25px;
}
#footer .footerin .box02 .rbox01 .box01 {
 width: 100%;
}
#footer .footerin .box02 .rbox01 .box01 p.tx {
 text-align:center;
 margin-bottom:25px;
}
 #footer .footerin .box02 .rbox01 .box02 {
 border: none;
 width: 100%;
}
 p.address {
 text-align: center;
 margin-top:0;
}


}