@import url(reset.css);
/* CSS Document */
/*------------------------------------------------------

COMMON

------------------------------------------------------*/
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

html {
  height: 100%;
  font-size: 62.5%;
  overflow-y: scroll; }

body {
  background-color: #fff;
  color: #000;
  font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
  font-size: 1.4rem;
  font-weight: normal;
  letter-spacing: 0.1rem;
  line-height: 1.75;
  -webkit-text-size-adjust: 100%; }

a {
  color: #000;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease; }

a:hover {
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7; }
  a:hover img {
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7; }

@font-face {
  font-family: 'iconFont';
  src: url("../asset/fonts/iconFont.eot?#iefix") format("eot");
  src: url("../asset/fonts/iconFont.woff") format("woff"), url("../asset/fonst/iconFont.ttf") format("truetype"), url("../asset/fonts/iconFont.otf") format("opentype"); }

@font-face {
  font-family: 'FontAwesome';
  font-style: normal;
  font-weight: normal;
  src: url("../asset/fonts/fontawesome-webfont.eot?v=4.7.0");
  src: url("../asset/fonts/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("../asset/fonts/fontawesome-webfont.woff2?v=4.7.0") format("woff2"), url("../asset/fonts/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("../asset/fonts/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("../asset/fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg"); }

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: auto; }

.blank:after {
  content: '\e600';
  font-family: 'iconFont';
  font-size: 80%;
  font-weight: normal;
  margin: 0 0 0 5px;
  vertical-align: middle; }

/*------------------------------------------------------

	PAGE TOP

------------------------------------------------------*/
/*
#pageTop {
	bottom: 30px;
	position: fixed;
	right: 0;
}
#pageTop a {
	background: #888;
	color: #eee;
	display: block;
	font-size: 12px;
	font-weight: bold;
	height: 40px;
	line-height: 40px;
	opacity: 0.9;
	text-align: center;
	text-decoration: none;
	width: 40px;
	z-index: 999;
}
#pageTop a:hover {
	opacity: 0.7;
	text-decoration: none;
}
*/
/*------------------------------------------------------

	GRID

------------------------------------------------------*/
.row:after {
  clear: both;
  content: '';
  display: table; }

.spDiv01, .spDiv02, .spDiv03, .spDiv04 {
  display: block;
  float: left;
  margin: 5px 0;
  padding: 0 15px; }

.spDiv01 {
  width: 100%; }

.spDiv02 {
  width: 50%; }

.spDiv03 {
  width: 33.33333333%; }

.spDiv04 {
  width: 25%; }

@media only screen and (min-width: 600px) {
  .pcDiv01, .pcDiv02, .pcDiv03, .pcDiv04 {
    display: block;
    float: left;
    margin: 0;
    padding: 0; }
  .pcDiv01 {
    width: 100%; }
  .pcDiv02 {
    width: 50%; }
  .pcDiv03 {
    width: 33.33333333%; }
  .pcDiv04 {
    width: 25%; } }

/*------------------------------------------------------

	LOADING

------------------------------------------------------*/
#pageloader {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: white;
  z-index: 99999; }

#pageloader .loader-container {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -30px;
  margin-top: -60px;
  text-align: center; }

.loader {
  position: relative;
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
  border-bottom: 1.1em solid rgba(0, 0, 0, 0.2);
  border-left: 1.1em solid #fff;
  border-right: 1.1em solid rgba(0, 0, 0, 0.2);
  border-top: 1.1em solid rgba(0, 0, 0, 0.2);
  font-size: 10px;
  margin: 60px auto;
  text-indent: -9999em;
  -webkit-transform: translateZ(0);
  transform: translateZ(0); }

.loader, .loader:after {
  width: 60px;
  height: 60px;
  border-radius: 50%; }

@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

/*------------------------------------------------------

	HEADER

------------------------------------------------------*/
header {
  position: relative;
  width: 100%;
  height: 44px;
  background: #fff;
  z-index: 99; }
  header #jvc {
    float: left;
    padding: 12px 0 0 10px; }
    header #jvc img {
      height: 23px; }

#siteTtl a {
  display: none;
  font-size: 15px;
  font-weight: normal; }

#toptitle {
	margin:0px;
	padding:18px;
	color:#ffffff;
	background-color:#000000;
}

#toptitle p {
	font-size:240%;
	font-weight:bold;
	text-align:center;
}

@media only screen and (min-width: 740px) {
  #siteTtl a {
    position: absolute;
    right: 10px;
    display: block;
    letter-spacing: 0.4px;
    line-height: 60px;
    padding: 0 20px; }
  header {
    height: 60px; }
    header #jvc {
      float: left;
      padding: 15px 0 0 20px; }
    header #jvc img {
      height: 30px; } }

#toptitle {
	padding:14px;
}

#toptitle p {
	font-size:160%;
}


/*------------------------------------------------------

	FOOTER

------------------------------------------------------*/
footer {
  width: 100%;
  background: #000;
  border-top: #fff 1px solid;
  clear: both;
  color: #fff;
  font-size: 12px;
  overflow: hidden;
  text-align: center; }
  footer a {
    color: #fff;
    padding: 2px 0; }
  footer a:hover img {
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7; }
  footer small {
    font-size: 12px; }

#termLink {
  font-size: 12px;
  line-height: 30px;
  margin-bottom: 30px;
  padding: 50px 0 0; }
  #termLink a {
    display: block; }
    #termLink a:after {
      content: '\e600';
      font-family: 'iconFont';
      margin: 0 0 0 5px; }

.footerInner {
  padding-bottom: 10px; }

#footermenu {
  width: 100%;
  margin: 0;
  padding-bottom: 15px;
  padding-top: 30px;
  text-align: left; }
  #footermenu p {
    border-bottom: 1px solid #666;
    color: #999;
    margin: 7px 0; }
  #footermenu ul li {
    line-height: 42px; }
    #footermenu ul li a {
      width: 100%;
      height: 100%;
      display: block;
      margin: 0;
      padding: 12px 0; }
  #footermenu div:first-child div {
    background: #222;
    font-size: 1.5rem;
    margin: 0;
    padding: 20px 20px 20px 30px;
    text-align: center; }
    #footermenu div:first-child div ul li a {
      line-height: 25px;
      padding: 5px 0; }
    #footermenu div:first-child div ul li img {
      width: 60px;
      padding: 0 0 3px 0; }
  #footermenu div:not(:first-child) {
    padding: 0 15px; }
    #footermenu div:not(:first-child) ul li a {
      border-bottom: 1px dotted #666;
      line-height: 18px; }
      #footermenu div:not(:first-child) ul li a:after {
        content: '\e600';
        float: right;
        font-family: 'iconFont';
        margin: 0 0 0 5px; }
    #footermenu div:not(:first-child) br {
      display: none; }

.footerLink .inline-menu {
  display: block;
  font-size: 12px;
  line-height: 0;
  padding-bottom: 5px; }

.footerLink .sublist {
  font-size: 14px;
  font-weight: 400; }

.footersocial {
  background: #222; }

.footerbnr {
  margin-top: 10px;
  padding: 10px 0; }
  .footerbnr img {
    height: 40px;
    margin: 15px; }

#navArea {
  border-bottom: 1px solid #666;
  border-top: 1px solid #666;
  padding: 10px; }

#snsArea {
  display: inline-block;
  margin: 0 auto;
  overflow: hidden;
  vertical-align: middle; }

.blank:after {
  content: '\e600';
  font-family: 'iconFont';
  font-size: 80%;
  font-weight: normal;
  margin: 0 0 0 5px;
  vertical-align: middle; }

.onlypc, .onlypc600 {
  display: none; }

@media only screen and (min-width: 1100px) {
  footer small {
    width: auto !important;
    float: left;
    margin: 40px 20px 0; }
  #termLink {
    width: auto !important;
    float: right;
    line-height: inherit;
    margin: 40px 20px 0;
    padding: 0; }
  .footerInner {
    width: 100%;
    text-align: center; }
  #footermenu {
    width: 1100px;
    margin: 0 auto; }
    #footermenu div:first-child {
      border-right: 1px solid #666; }
      #footermenu div:first-child div {
        border: none;
        margin: 0 50px 0 0; }
    #footermenu div:not(:first-child) {
      padding: 0 0 0 50px; } }

@media only screen and (min-width: 800px) {
  footer small {
    width: 100%;
    margin: 40px 20px 0; }
  #termLink {
    width: 100%; }
    #termLink a {
      display: inline-block; }
      #termLink a:before {
        content: '|';
        margin: 0 10px; }
      #termLink a:first-child:before {
        content: none; }
    #termLink:first-child {
      float: right;
      font-size: 12px; }
    #termLink:last-child {
      float: left;
      font-size: 11px; }
  #footermenu div:not(:first-child) br {
    display: inherit; }
  #navArea {
    height: 40px; }
  .onlysp {
    display: none; }
  .onlypc {
    display: inline-block; } }

@media only screen and (min-width: 600px) {
  #footermenu div:first-child div {
    margin: 0;
    padding: 20px 0 20px 30px;
    text-align: left; }
  #footermenu p {
    margin: 0 0 1rem; }
  .onlysp600 {
    display: none; }
  .onlypc600 {
    display: inline-block; } }

/*------------------------------------------------------

	 ANIMATION

------------------------------------------------------*/
.fadein {
  opacity: 0;
  -webkit-transform: translate(0, 60px);
  transform: translate(0, 60px);
  -webkit-transition: all 600ms;
  transition: all 600ms; }

.fadein.scrollin {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0); }

/*------------------------------------------------------

	 CLEAR FIX

------------------------------------------------------*/
.cf:after {
  height: 0;
  clear: both;
  content: '.';
  display: block;
  font-size: 0;
  visibility: hidden; }

* html .cf {
  height: 1%; }
