@charset "UTF-8";
/*----------------------------------------

	Default CSS

	- default setting
	- font setting
	- line-height setting
	- indent setting
	- link setting
	- color setting
	- common setting
	- clearfix
	- header
	- content
	- footer
	- print

-----------------------------------------*/

:root {
  scroll-behavior: auto;
}

/*----------------------------------------
	default setting
-----------------------------------------*/
th,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: normal;
}

p,
dl,
dd,
ol,
ul,
figure {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: separate;
}

body {
  position: relative;
  color: #000000;
  font-family: 'Noto Sans JP', YuGothic, YuGothicM, Yu Gothic, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", "MS Pゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
  -webkit-font-smoothing: antialiased;
  /* Safari フォント表示補正 */
  -moz-osx-font-smoothing: grayscale;
  /* Firefox フォント表示補正 */
  -webkit-user-drag: none;
  -webkit-touch-callout: none;
  line-height: 2;
  font-size: 15px;
  //font-weight: 500;
}

@media screen and (min-width: 768px) {
  body {
    font-size: 24px;
    //line-height: 1.8;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1199px) {
  body {
    font-size: 16px;
  }
}

/*html,
body {
  height: 100%;
}*/

img {
  vertical-align: bottom;
  max-width: 100%;
  width: 100%;
  height: auto;
}

em {
  font-style: normal;
  font-weight: bold;
}

li,
dt,
dd {
  list-style: none;
  vertical-align: bottom;
}

li img,
dt img,
dd img {
  vertical-align: top;
}

small {
  font-size: 100%;
}

input,
textarea,
select {
  outline: none;
}

/* 英語フォント */
[class^="en"],
[class*=" en"] {
  //font-family: "Courier Prime", monospace;
  //font-weight: 400;
  //letter-spacing: 0.06em;
}

@media screen and (min-width: 768px) {

  /* pc  768 - # */
  .pcObj {}

  .spObj {
    display: none;
  }
}

@media screen and (max-width: 767px) {

  /* sp  # - 767 */
  .pcObj {
    display: none;
  }

  .spObj {}
}

.en_sbold01 {
  font-weight: 600;
}

.en_bold01 {
  font-weight: 700;
}

#fb-root {
  display: none;
}

.over,
.modal {}

/*----------------------------------------
	line-height setting（default/2）
-----------------------------------------*/
.clearlh {
  line-height: 0;
}

.lh1 {
  line-height: 1;
}

ol#breadcrumb,
.lh12 {
  line-height: 1.2;
}

h1,
h2,
h3,
h4,
h5,
h6,
small,
[class^="en_"],
[class*=" en_"],
.lh15 {
  line-height: 1.5;
}

.lh2,
.lh2_15 {
  line-height: 2;
}

.lh17 {
  line-height: 1.75;
}

@media screen and (max-width: 768px) {

  /* sp  # - 768 */
  .lh2_15 {
    line-height: 1.5;
  }
}

.vr {
  writing-mode: vertical-rl;
}


/*----------------------------------------
	indent setting
-----------------------------------------*/
.indent00 {
  display: block;
}

.indent01 {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}

.indentVar>span {
  display: table-cell;
  vertical-align: top;
}

/*----------------------------------------
	link setting
-----------------------------------------*/
a,
a:focus {
  outline: none;
}

a:link,
a:visited {
  color: #333333;
  text-decoration: none;
}

a:hover,
a:active {
  color: #333333;
  text-decoration: none;
}

@media screen and (max-width: 768px) {

  /* sp  # - 768 */
  a:hover,
  a:active {
    text-decoration: none;
  }
}

body.pc img.rOver:hover,
body.pc a.rOver:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
  -moz-opacity: 0.7;
  -khtml-opacity: 0.7;
}

/*----------------------------------------
	color setting
-----------------------------------------*/
.white01,
a.white01 {
  color: #ffffff;
}

.red01,
a.red01 {
  color: #660000;
}

/*----------------------------------------
	common setting
-----------------------------------------*/

#wrapper {
  width: 100%;
  position: relative;
  height: auto !important;
  /*IE6対策*/
  height: 100%;
  /*IE6対策*/
  min-height: 100%;
}

.clearfsize {
  font-size: 0;
  line-height: 0;
}

.bold00 {
  font-weight: normal;
}

.bold01 {
  font-weight: bold;
}

.bold01_00 {
  font-weight: bold;
}

.bold02 {
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .bold00_01 {
    font-weight: bold;
  }

  .bold01_00 {
    font-weight: normal;
  }
}

.taC,
.taC_R,
.taC_L {
  text-align: center;
}

.taL,
.taL_C,
.taL_R {
  text-align: left;
}

.taR,
.taR_C,
.taR_L {
  text-align: right;
}

@media screen and (max-width: 768px) {

  /* sp  # - 768 */
  .taL_C,
  .taR_C {
    text-align: center;
  }

  .taC_R,
  .taL_R {
    text-align: right;
  }

  .taC_L,
  .taR_L {
    text-align: left;
  }
}

/* リストマーク */
.square01 {
  display: block;
  padding-left: 1em;
  text-indent: -2em;
}

.square01:before {
  content: "\025a0";
  width: 1em;
  padding-left: 1em;
  color: #cccccc;
}

.disc01 {
  display: block;
  padding-left: 1.5em;
  text-indent: -2em;
}

.disc01:before {
  content: "\030fb";
  width: 1em;
  padding-left: 1em;
  color: #333333;
}

.rpimg {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 768px) {

  /* pc  768 - # */
  .pcimg {
    width: 100%;
    height: auto;
  }
}

@media screen and (max-width: 768px) {

  /* sp  # - 768 */
  .spimg {
    width: 100%;
    height: auto;
  }
}

/*----------------------------------------
	clearfix
-----------------------------------------*/
.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

/*----------------------------------------
	z-index
-----------------------------------------*/

/* tb  768 - # */
@media screen and (min-width: 768px) {}

/* pc  1200 - # */
@media screen and (min-width: 1200px) {}

/*----------------------------------------
	header
-----------------------------------------*/

/* tb  768 - # */
@media screen and (min-width: 768px) {}

/* pc  1200 - # */
@media screen and (min-width: 1200px) {}

/*----------------------------------------
	content
-----------------------------------------*/

/* tb  768 - # */
@media screen and (min-width: 768px) {}

/* pc  1200 - # */
@media screen and (min-width: 1200px) {}

/*----------------------------------------
	footer
-----------------------------------------*/

/* tb  768 - # */
@media screen and (min-width: 768px) {}

/* pc  1200 - # */
@media screen and (min-width: 1200px) {}

/*----------------------------------------
	print
-----------------------------------------*/
@media print {}