@charset "UTF-8";
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url("https://fonts.googleapis.com/css?family=Roboto:400,500,700&display=swap");
/* ==================================================

	※このファイルは基本的に編集しない。他のCSSで設定上書きでの対処を推奨。

================================================== */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, footer, header, main, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  -webkit-text-size-adjust: 100%;
  /* 画面回転時の自動文字サイズ調整機能OFF */ }

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

img {
  vertical-align: top;
  font-size: 0;
  -ms-interpolation-mode: bicubic;
  /* IE系での画像リサイズ時のリサンプリング設定 */ }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: top;
  background: transparent; }

a:link {
  text-decoration: none; }

a:focus {
  outline: none; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

em {
  font-style: normal; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  word-wrap: break-word;
  word-break: break-all; }

table th,
table td {
  text-align: left;
  vertical-align: middle; }

input {
  vertical-align: middle; }

input[type="submit"] {
  cursor: pointer; }

select, optgroup {
  vertical-align: middle; }

select {
  padding-right: 1px; }

textarea {
  font-size: 100%; }

pre, code, kbd, samp, var {
  font-family: Consolas, 'Courier New', Courier, Monaco, monospace; }

sub, sup {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0; }

@media print {
  body {
    -webkit-print-color-adjust: exact;
    /* 印刷時の背景印刷 */ } }

@media print {
  body {
    -webkit-print-color-adjust: exact;
    /* 印刷時の背景印刷 */ }
  .hidden_pc {
    display: none; } }

@page {
  size: A4;
  margin: 0; }

html, body {
  margin: 0; }

html {
  overflow-y: auto;
  line-height: normal; }

body {
  color: #333333;
  font-size: 14px;
  font-family: "Noto Sans Japanese","Meiryo","メイリオ","MS PGothic","MS Pゴシック",sans-serif;
  line-height: 1.7;
  font-weight: 300; }

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -webkit-flex;
  /* Safari */
  display: -moz-flex;
  /* Firefox */
  display: -ms-flex;
  /* IE */ }

/*justify-content*/
.flex_jus_start {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
  -moz-justify-content: flex-start;
  -ms-justify-content: flex-start; }

.flex_jus_end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-justify-content: flex-end;
  -moz-justify-content: flex-end;
  -ms-justify-content: flex-end; }

.flex_jus_center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center; }

.flex_jus_between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between; }

.flex_jus_around {
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -webkit-justify-content: space-around;
  -moz-justify-content: space-around;
  -ms-justify-content: space-around; }

.flex_jus_ini {
  -webkit-box-pack: initial;
  -ms-flex-pack: initial;
  justify-content: initial;
  -webkit-justify-content: initial;
  -moz-justify-content: initial;
  -ms-justify-content: initial; }

/*align-items*/
.flex_align_item_start {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start; }

.flex_align_item_end {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-align-items: flex-end;
  -moz-align-items: flex-end;
  -ms-align-items: flex-end; }

.flex_align_item_stretch {
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-align-items: stretch;
  -moz-align-items: stretch;
  -ms-align-items: stretch; }

.flex_align_item_baseline {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -webkit-align-items: baseline;
  -moz-align-items: baseline;
  -ms-align-items: baseline; }

.flex_align_item_center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center; }

.flex_align_item_ini {
  -webkit-box-align: initial;
  -ms-flex-align: initial;
  align-items: initial;
  -webkit-align-items: initial;
  -moz-align-items: initial;
  -ms-align-items: initial; }

.flex_container {
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.text-normal {
  font-weight: normal; }

.text-bold {
  font-weight: bold; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.text-underline {
  text-decoration: underline !important; }

.text-none-underline {
  text-decoration: none !important; }

.pull-left {
  float: left; }

.pull-right {
  float: right; }

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.relative {
  position: relative; }

.inline_block {
  display: inline-block;
  width: 100%; }

.asb {
  position: absolute; }

.asb_full {
  width: 100%;
  height: 100%;
  z-index: 6;
  top: 0;
  left: 0; }

.container {
  width: 1200px;
  max-width: 100%;
  margin: 0 auto; }

#wrapper {
  max-width: 1920px;
  width: 100%;
  position: relative;
  margin: 0 auto; }

a.link {
  color: #333333;
  text-decoration: none !important; }

img {
  max-width: 100%; }

.hover:hover {
  opacity: 0.7; }

.roboto {
  font-family: 'Roboto', sans-serif; }