@charset "UTF-8";
/* 1 トップページ
------------------------------------------------------------------------------------------ */
/* 要素の中から文字だけを飛ばす */
/* 要素を天地中央で表示する */
/* 要素を天地中央で表示する（サイズを指定しない） */
/* 擬似要素を作成するときに・・・ */
/* フロートの解除用・・・ */
/* box-sizing: border-box */
/* Reset
------------------------------------------------------------------------------------------ */
body, div, p, h1, h2, h3, h4, h5, h6, ol, ul, li, dt, dd, form, nav, header, footer, main, article, section, aside, figure, figcaption {
  margin: 0;
  padding: 0;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
}

ol, ul, li {
  list-style: none;
}

main {
  display: block;
}

main, nav, aside, header, article, section, footer, figure, ul, li, div, p, a, span {
  box-sizing: border-box;
}

img {
  border: 0;
}

a {
  color: #111;
  text-decoration: none;
}
a:hover {
  opacity: 0.9;
}

a > img {
  vertical-align: bottom;
}

* {
  box-sizing: border-box;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}
table td, table th {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

.noto100 {
  font-weight: 100;
}

.noto200 {
  font-weight: 200;
}

.noto300 {
  font-weight: 300;
}

.noto400 {
  font-weight: 400;
}

.noto500 {
  font-weight: 500;
}

.noto600 {
  font-weight: 600;
}

.noto700 {
  font-weight: 700;
}

.noto800 {
  font-weight: 800;
}

.noto900 {
  font-weight: 900;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
* {
  box-sizing: border-box;
}

.xxx-large {
  font-size: 2.7em;
}

/*	2.7em  = 32px */
.xx-large {
  font-size: 1.75em;
}

/*	1.75em = 21px */
.x-large {
  font-size: 1.5em;
}

/*	1.5em  = 18px */
.large {
  font-size: 1.3em;
}

/*	1.3em  = 16px */
.s-large {
  font-size: 1.15em;
}

/*	1.15em = 14px */
.mid {
  font-size: 1em;
}

/*	1em    = 12px */
.small {
  font-size: 0.92em;
}

/*	0.92em = 11px */
.x-small {
  font-size: 0.87em;
}

/*	0.87em = 10px */
.c_red {
  color: red;
}

.c_purple {
  color: purple;
}

.c_blue {
  color: blue;
}

.c_green {
  color: green;
}

.c_yellow {
  color: yellow;
}

.c_orange {
  color: orange;
}

.c_brown {
  color: #523932;
}

.pdt0 {
  padding-top: 0 !important;
}

.pdb0 {
  padding-bottom: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.overflowx {
  width: 100%;
  overflow-x: auto;
}