@charset 'utf-8';

/*-------------------------------------------------------------------
## Base
-------------------------------------------------------------------*/
html, body, div, ul, ol, dl, li, dt, dd, p, h1, h2, h3, h4, h5, h6, table, th, td, caption, address, article, aside,
canvas, details, figure, figcaption, footer, header, menu, nav, section,
button, select, textarea, input, fieldset, legend, a, span, strong, em, address, dfn, small, i, b {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
  font-size: 100%;
  font-weight: inherit;
  font-family: inherit;
  line-height: inherit;
  word-break: inherit;
  word-wrap: inherit;
  box-sizing: inherit;
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  -o-box-sizing: inherit;
  color: inherit;
}

:before, :after {
  box-sizing: inherit;
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  -o-box-sizing: inherit;
}

article, aside, canvas, details, figure, figcaption, footer, header, menu, nav, section {
  display: block;
}

html {
  font-size: 10px;
}

body {
  font-size: 1.6rem;
  line-height: 1;
  word-break: keep-all;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
}

html[lang=ja] body, html[lang=zh] body {
  word-break: normal;
}

[hidden], hr {
  display: none;
}

img {
  max-width: 100%;
  vertical-align: middle;
  height: auto;
}

button {
  background-color: transparent;
  cursor: pointer;
}

b, strong {
  font-weight: normal;
}

fieldset, iframe {
  width: 100%;
}

img, a, frame, iframe, fieldset {
  border: 0;
}

a {
  text-decoration: none;
}

table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
}

caption {
  display: block;
  position: absolute;
  left: -9999px;
}

legend {
  position: absolute;
  left: -9999em;
  top: -9999em;
}

button {
  overflow: hidden;
  background-color: transparent;
  cursor: pointer;
}

button::-moz-focus-inner {
  border: 0px;
  padding: 0px;
}

/*button:focus,input:focus{*/
/*    outline:none;*/
/*}*/
/*-------------------------------------------------------------------
## General
-------------------------------------------------------------------*/
/* IR */
.is_hide {
  display: none !important;
}

.is_show {
  display: block !important;
}

.hide_wrap {
  position: relative;
}

.hide_area {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
}

/* Page Scroll */
.is_scrollFix {
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  overflow: hidden;
}

/*-------------------------------------------------------------------
## ui
-------------------------------------------------------------------*/
.clearFix::after {
	content: '';
	clear: both;
	display: block;
}

.img_cover {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

/* Default */
p {
	line-height: 1.4em;
}

.fn_han {

}

/* Common */
h1.ttl {
}

h2.ttl {
	font-size: 5.6rem;
	font-weight: bold;
}

h3.ttl {
	font-size: 3.6rem;
	font-weight: bold;
	margin-bottom: 20px;
}

h4.ttl {
	font-size: 4.0rem;
}

h5.ttl {
	font-size: 2.8rem;
}

h5.sub {
	font-size: 3.6rem;
	font-weight: bold;
	margin-bottom: 40px;
}

h6.ttl {
	font-size: 2.4rem;
}

.ttl_area > h2.ttl {
	line-height: 1.4;
	margin-bottom: 50px;
}

.no_pad {
	padding: 0 !important;
}
.fw_m{
	font-weight: 500;
}