@charset "utf-8";
/* ---------------------------------------------------------------------- HTML NORMALIZE
----------------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
html {
  -webkit-text-size-adjust: none;
  height: 100%;
  line-height: 1.84615em;
}
body, div, span, applet, object, iframe {
	font-size: 100%;
}
body {
	font-size: 20px;
	line-height: 1;
}
body {
  color: #000;
  font-family: arial, Helvetica sans-serif;
  background-color: #fff;
  height: 100%;
  -webkit-text-size-adjust: 100%;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6, strong {
  font-weight: bold;
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  vertical-align: super;
}
sub {
  vertical-align: sub;
}
i {
  font-style: italic;
}
b {
  font-weight: bold !important;
}
u {
  text-decoration: underline;
}
button, input, select, textarea {
  margin: 0;
  vertical-align: baseline;
  *vertical-align: middle;
}
button, input {
  line-height: normal;
}
caption, th, td {
  text-align: left;
  vertical-align: middle;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
a:hover {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
/* ---------------------------------------------------------------------- CONTAINER
----------------------------------------------------------------------*/
a {
  color: #0000FF;
  text-decoration: none;
  line-height: 1.4;
	position: relative;
	z-index: 2;
}
a:hover {
  text-decoration: underline;
}
img {
  border: none;
  vertical-align: middle;
  height: auto;
  width: auto;
}
.img img {
  width: 100%;
}
img.img-inline {
  vertical-align: middle;
  text-align: center;
  height: 1.3em;
  margin: 0px 3px;
}
ul li {
  list-style: none;
}
.clear {
  clear: both;
}
.red {
  color: #C00;
}
.orange {
  color: #ff9100;
}
.js_text {
  padding: 10px;
  text-align: center;
  border: 1px solid #F00;
  color: #FF0000;
  box-shadow: 0px 0px 0px 10px rgba(200, 200, 200, 1);
  line-height: 1.4;
  font-size: 16px;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 1000px;
  max-height: 35px;
  margin: auto;
  z-index: 9999;
  background: #fff;
  display: table;
  vertical-align: middle;
  box-sizing: border-box;
}
p {
  line-height: 1.4;
}
.caption_text p {
  overflow: inherit;
}
h1 {font-size: 2em; line-height: 1.2;}
h2 {font-size: 30px; line-height: 1.2;}
.title h2 {font-size: 26px;}
.visual_content h1{font-size: 62px;}
.visual_content h2 {font-size: 18px;}
.lang {font-size: 14px;}
h3 {font-size: 22px; line-height: 1.2;}
h4 {font-size: 22px; line-height: 1.2;}
h5 {font-size: 20px; line-height: 1.2;}
header #header_main #logo .cover_title {font-size: 20px;}
#header #header_main select {font-size: 18px;}
#header #header_main #language .langsel {font-size: 18px;}
#searchText {font-size: 20px;}
#app > div a.i_App {color: #000;}
#toc_i .tocbox > div a {color: #000;}
#site_map ul li a {color: #000;}
#toc_turners li a {color: #000;}
#app ul li a {color: #000; font-size: 20px;}
#app ul li a span{font-size: 16px;}
#menu ul > li a{color: #000; font-size: 22px;}
#menu ul ul div > li a {font-size: 18px;}
#menu ul ul ul > li a {font-size: 15px;}
#site_map ul ul > li p, #site_map ul ul > li a {font-size: 15px;}
.memo .col p, .memo .col li{font-size: 16px;}
#bread p{font-size: 14px;}
#in_info p{font-size: 16px;}
footer #footer_main #copyright,
footer #footer_main_custom #copyright {font-size: 14px; font-weight: bold;}
footer #footer_main #ft_fNavi a,
footer #footer_main_custom #ft_fNavi a {color: #000; font-size: 14px;}
.font_s{font-size: 50%;}
.font_m{font-size: 50%;}
.font_l{font-size: 70%;}
/*------------------------------------------------------------
	math
------------------------------------------------------------*/
.mjx-mtext .mjx-char.MJXc-TeX-main-R,
.mjx-mtext.MJXc-TeX-main-R,
.mjx-mfrac .mjx-char.MJXc-TeX-main-R,
.mjx-mn .mjx-char.MJXc-TeX-main-R,
.mjx-mi .mjx-char.MJXc-TeX-main-I,
mjx-mn mjx-c,
mjx-mtext mjx-c,
mjx-mtext.mjx-n mjx-utext/*240806*/,
mjx-sqrt mjx-box mjx-msub mjx-mi.mjx-n mjx-utext/*240820*/,
mjx-math.MJX-TEX mjx-mi.mjx-n mjx-utext/*240822*/{
	font-family: arial, Helvetica !important;
	font-size: 90% !important;
}
.mjx-root,
mjx-root{
	vertical-align: 0.5em !important;
}
.mjx-numerator .mjx-mtext .mjx-char{
	padding-top: 0.5em !important;
}
mjx-sqrt mjx-box mjx-mn mjx-c::before,
mjx-sqrt mjx-box mjx-mtext mjx-c::before{
  padding-top: 0.366em !important;
}
mjx-c.mjx-cA0::before /*ルート*/{
  padding: 0.2em 0.25em 0 0 !important;
}
/*mjx-math mjx-msqrt mjx-sqrt mjx-box/*240820*//*{
	padding-top: 0 !important;
}*/
mjx-mover mjx-over{
  padding-bottom: 0 !important;
}
mjx-math.MJX-TEX mjx-mi.mjx-i mjx-utext{
  font-style: italic !important;/*240806*/
}
mjx-utext {
  font-style: normal !important;
}
.TEX-B{
  font-weight: bold;
}
/* ---------------------------------------------------------------------- FONT
----------------------------------------------------------------------*/
.font_TimesNewRoman{
  font-family: 'Times New Roman',serif;
}
.font_NewColorGraphe{
  font-family: 'NewColorGraphe',serif;
  font-weight: normal;
  word-break: break-all;
}
@font-face {
  font-family: 'NewColorGraphe';
  font-style: normal;
  font-weight: normal;
  src: url('../font/NewColorGraphe-Regular.woff') format('woff'),
url('../font/NewColorGraphe-Regular.woff2') format('woff2'),
  url('../font/NewColorGraphe-Regular.otf')  format('opentype');
}
.font_sanwaitem{
  font-family: 'SANWAITEMREGULAR',serif;
  font-weight: normal;
  word-break: break-all;
}
@font-face {
  font-family: 'SANWAITEMREGULAR';
  font-style: normal;
  font-weight: normal;
  src: url('../font/SANWAITEMREGULAR.woff') format('woff'),
url('../font/SANWAITEMREGULAR.woff2') format('woff2'),
  url('../font/SANWAITEMREGULAR.TTF')  format('truetype');
}
.font_Symbolfont{
  font-family: 'SYMBOL',serif;
  font-weight: normal;
  word-break: break-all;
}
@font-face {
  font-family: 'SYMBOL';
  font-style: normal;
  font-weight: normal;
  src: url('../font/SYMBOL.woff') format('woff'),
url('../font/SYMBOL.woff2') format('woff2'),
  url('../font/SYMBOL.TTF')  format('truetype');
}

.font_Math{
  font-family:'Mathzero', 'Math_i';
  letter-spacing:-0.1em;
  margin-right: 0.1em;
}
@font-face {
  font-family: 'Mathzero';
  font-style: normal;
  font-weight: normal;
  src: url('../font/MathJax_Zero.woff') format('woff'),
url('../font/MathJax_Zero.woff2') format('woff2');
}
@font-face {
  font-family: 'Math_i';
  font-style: italic;
  font-weight: normal;
  src: url('../font/MathJax_Math-Italic.woff') format('woff'),
url('../font/MathJax_Math-Italic.woff2') format('woff2');
}

@font-face {
  font-family: 'NotoSerif-BoldItalic';
  font-style: italic;
  font-weight: bold;
  src: url('../font/NotoSerif-BoldItalic.woff') format('woff'),
url('../font/NotoSerif-BoldItalic.woff2') format('woff2'),
  url('../font/NotoSerif-BoldItalic.ttf')  format('truetype');
}