@charset "UTF-8";
/* ====================================================
reset style
==================================================== */

body{ 
  font-family: 'Noto Sans JP', sans-serif;
  font-weight:400;}

html {
  overflow-y: scroll;
  font-size: 16px;
  /* Base font size, change to 14px or 16px if needed */
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
	background:#F4FAFD;
}

@media screen and (max-width: 768px) {
html {
  overflow-y: scroll;
  font-size: 14px;
  /* Base font size, change to 14px or 16px if needed */
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
	background:#F4FAFD;
}
}



body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

* {
  box-sizing: border-box;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

img {
  vertical-align: middle;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

li {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: '';
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

/*to enable resizing for IE*/
input, textarea, select {
  *font-size: 100%;
}

/*because legend doesn't inherit in IE */
legend {
  color: #000;
}

del, ins {
  text-decoration: none;
}


html {
  overflow-x: hidden;
}

body {
  color: #111111;
  font-weight: 400;
  font-size: 100%;
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
}

a {
  color: #111111;
  text-decoration: none;
}

a.rollover {
  transition: all .3s ease;
}

a.rollover:hover {
  opacity: 0.5;
  filter: alpha(opacity=50);
  /* ie lt 8 */
  -ms-filter: "alpha(opacity=50)";
  /* ie 8 */
  -moz-opacity: 0.5;
  /* FF lt 1.5, Netscape */
  -khtml-opacity: 0.5;
  /* Safari 1.x */
  zoom: 1;
}

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


@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}


@media screen and (min-width: 769px) {
  .sp {
    display: none;
  }
}


@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }


  .pc {
    display: block;
  }
}


@media screen and (min-width: 769px) {
  .sp {
    display: none;
  }
	
	  .pc {
    display: block;
  }

}




.flex-box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.flex-box.content-fs {
  -ms-flex-pack: start;
      justify-content: flex-start;
}

.flex-box.content-fe {
  -ms-flex-pack: end;
      justify-content: flex-end;
}

.flex-box.content-bw {
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.flex-box.content-c {
  -ms-flex-pack: center;
      justify-content: center;
}

.flex-box.align-fs {
  -ms-flex-align: start;
      align-items: flex-start;
}

.flex-box.align-fe {
  -ms-flex-align: end;
      align-items: flex-end;
}

.flex-box.align-c {
  -ms-flex-align: center;
      align-items: center;
}

.flex-box .col-2 {
  width: 50%;
}

@media screen and (min-width: 769px) {
  .flex-box .order1 {
    -ms-flex-order: 1;
        order: 1;
  }
  .flex-box .order2 {
    -ms-flex-order: 2;
        order: 2;
  }
}

/* ====================================================
Float & clear
==================================================== */
.clearfix {
  *zoom: 1;
}

.clearfix:before {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
  content: "";
  display: table;
}