@charset "UTF-8";
/*----------------- reset CSS-----------------*/

@font-face {
	font-family: 'Century Gothic';
	font-weight: 500;
	src: url('../font/CenturyGothicStdRegular.woff');
}


html, body {
	margin:0;
	padding:0;
}
/* @import url(//db.onlinewebfonts.com/c/9fa16898e34679af52e872d6f6b553a4?family=Arkhip); */
body  {
	font-family: 'Noto Sans Japanese', "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.6;
	font-size: 16px;
	color: #333;
	clear: both;
}

.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}

.ha{
	height: auto !important;
}

/*----------------- ローディング用 CSS-----------------*/

.backdrop{
width: 100%;
height: 100%;
background-color: rgba(255, 255, 255, 1);
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 100;
}

.spinner{
position: absolute;
top: calc(50% - 50px);
left: calc(50% - 50px);

width: 100px;
height: 100px;
border-top: 10px solid #999;
border-right: 10px solid #999;
border-bottom: 10px solid #999;
border-left: 10px solid #c00202;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
border-radius: 50%;

animation-name: spin;
animation-duration: 0.8s;
animation-iteration-count: infinite;
animation-timing-function: linear;
}

@keyframes spin{
0%{
transform: rotate(0deg);
}
100%{
transform: rotate(360deg);
}
}



/*----------------- リセット追加部分 CSS-----------------*/

html,body{
    width: 100%;
}

img{
	vertical-align:bottom;
}
.wrap {
    overflow: hidden;
}

html{
	margin: 0 !important;
	overflow:auto !important;
}
body {
    line-height: 1;
	min-width: 1100px;
	overflow-x: hidden;
}

* {
    margin: 0;
    padding: 0;
}

ol, ul {
    list-style: none;
}

h1, #logo{
	display: inline-block;
	font-size: 2em;
  margin: 0.67em 0;
}

	
p {	
	letter-spacing: 0.2px;
	line-height: 1.6;
font-family: 'Noto Sans Japanese', "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
font-weight: 400;
}

input[type="button"],input[type="text"],input[type="submit"] {
   -webkit-appearance: none;
   border-radius: 0 !important;
}

input[type=text]  {
    -webkit-border-radius : 0;
    -webkit-appearance : none;
    -webkit-tap-highlight-color : rgba(0,0,0,0);
}

input, button, textarea, select {
    -webkit-border-radius : 0;
    -webkit-appearance : none;
    -webkit-tap-highlight-color : rgba(0,0,0,0);
}

#page_top{
	z-index: 2000 !important;
}

#container{
overflow: hidden;
width: 100%;
}

a{
    color: #333;
	text-decoration: none;
	-webkit-transition: .6s ease-in-out;
	transition: .6s ease-in-out;
}
a:hover {
    color: #c00202;
}

.active{
display: block !important;
background: #c00202 !important;
}

ul.lang {
	display:block;
  text-align: right;
}
ul.lang li {
  display: inline-block;
  padding-right: 5px;
}
ul.lang li a{
	display: inline-block;
	padding: 0 10px;
}

.fl{float:left;}
.fr{float:right;}

.lang_cn{
	letter-spacing: 0.5em;
}

/*----------------- Header CSS-----------------*/

header{
margin: 0 auto;
padding: 0 30px;
position: relative;
}

ul.lang {
display:block;
text-align: right;
float: right;
font-size: 14px;
position: absolute;
top: 36px;
right: 100px;
}
ul.lang li {
display: inline-block;
padding-right:5px;
}
ul.lang li a{
display: inline-block;
padding: 0 10px;
}
ul.lang li a:hover{
font-weight: 800;
}

/*----------------- nav CSS-----------------*/

.menu-btn {
    position: fixed;
    top: 8px;
    right: 20px;
    line-height: 50px;
    font-size: 12px;
    text-align: center;
    cursor: pointer;
	z-index:501;}
	
.menu-btn span {
    color: #bbb;
}

/*.menu-btn span:after {
    content: attr(data-txt-menu);
}

.open .menu-btn span:after {
    content: attr(data-txt-close);
}*/

.menu {
    position: fixed;
    display: table;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.9);
    -webkit-transition: all .5s;
    transition: all .5s;
    visibility: hidden;
    opacity: 0;
	z-index:500;
}
.menu ul {
    padding-top: 60px;
    display: table-cell;
    vertical-align: middle;
}
#menu_logo {
	margin-bottom:100px;
}
.menu li {
    min-width: 500px;
    margin: 0 auto;
    text-align: center;
	padding-bottom: 10px;
}
.menu li a {
    display: block;
    font-size: 36px;
    color: #fff;
	letter-spacing:0.25em;
	font-family: 'Century Gothic' , sans-serif;
}

.menu li a span{
	display: block;
	font-size: 16px;
    padding: 8px 0 30px;
font-family: 'Noto Sans Japanese', "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
letter-spacing:0.2em;
}

.menu li a:hover {
    color: #c00202;
    opacity: 1;
}
.menu li.menu_sns a {
	display:inline-block;
	font-size:18px;
}
.open .menu {
    cursor: url(../images/cross.png);
    -webkit-transition: all .5s;
    transition: all .5s;
    visibility: visible;
	opacity: 1;
}
#menu {
	position:relative;
    top: -20px;
}
#nav_icon {
    width: 78px;
    height: 78px;
	position:relative;
	background: rgba(255,255,255,0.5);
}
body.open #nav_icon{
background: none;
}
#panel-btn{
  display: inline-block;
  position: relative;
  width: 40px;
  height: 40px;
  margin: 20px 0 10px;
  border-radius: 50%;
  background: #fff;
}
#panel-btn:hover{
  background: #fafafa;
}
#panel-btn-icon{
    display: block;
    position: absolute;
    top: 35px;
    left: 35px;
    width: 40px;
    height: 4px;
    margin: 0 0 0 -15px;
    background: #333;
    transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 40px;
  height: 4px;
  background: #333;
  transition: .3s;
}
#panel-btn-icon:before{
  margin-top: -15px;
}
#panel-btn-icon:after{
  margin-top: 11px;
}

body.open #panel-btn-icon {
  background: transparent;
}
body.open #panel-btn-icon:before, body.open #panel-btn-icon:after{
  margin-top: 0;
}
body.open #panel-btn-icon:before{
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
 background: #fff;
}
body.open #panel-btn-icon:after{
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  background: #fff;
}

.menu #js__nav a ul li{
	font-size: 36px;
}

.menu #js__nav a ul li span{
	font-size: 16px;
	display: block !important;
	
}

table tr th, table tr td{
	vertical-align:top;
}


/*----------------- footer CSS-----------------*/
footer{
background:#1f1f1f;
}

footer nav{
margin: 0 auto;
padding: 70px 0;
width:80%;
max-width: 980px !important;
min-width: auto;
}

footer ul {
display:block;
text-align: left;
}
footer li {
display: inline-block;
padding-right:35px;
}
footer li a:hover{
opacity:0.7;
}
footer li:last-child {
padding-right:0;
}

footer p{
text-align:center;
padding: 20px;
color:#FFF;
}

#footer_inner {
margin: 0 auto;
padding: 25px 0;
width: 90%;
min-width: auto;
}

#fb_icon{
display: inline-block;
}

.copyright{
    display: inline-block;
    float: right;
	padding: 10px 0;
}