
a {
outline: none;
}

html,body {
scroll-behavior: smooth;
scroll-padding-top: 40px;
}


body {
font-size: 15px;
line-height: 1.35;
font-family: "Lucida Grande","segoe UI","ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN",Meiryo,arial,sans-serif;
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
}
h2:empty,h3:empty,h4:empty,li:empty {
display:none;
}

.s80 {font-size: 80%;}
.s85 {font-size: 85%;}
.s90 {font-size: 90%;}
.s110 {font-size: 110%;}

#contents .center, #contents table.center {margin-left: auto; margin-right: auto;}

.mw50em {max-width: 50em; margin-left: auto; margin-right: auto;}
.mw40em {max-width: 40em; margin-left: auto; margin-right: auto;}
.mw30em {max-width: 30em; margin-left: auto; margin-right: auto;}

#toppagemenu ul {
margin: 0;
padding: 0;
}
#toppagemenu li {
list-style: none;
}

#toppagemenu a {
color: #333;
text-decoration: none;
}
#toppagemenu a b {
color: #f33;
font-weight: bold;
}
#toppagemenu>ul>li {
padding: 10px 0.6em 2px;
font-weight: bold;
}
#toppagemenu>ul>li>a {
display: block;
border-bottom: solid 1px #555;
color: #00c;
}
#toppagemenu>ul>li>span>span.desc {
display: inline-block;
position: absolute;
right: 2em;
border-bottom: none;
font-size: 90%;
color: #373;
}

#toppagemenu ul ul {
display:block;
padding: 5px 5px 0;
}
#toppagemenu li li {
display: inline-block;
width: 12em;
padding: 0;
vertical-align: top;
border-bottom: solid 1px #aaa;
margin: 0.2em 0.5em
}
#toppagemenu li li a {
display: inline-block;
width: 11.6em;
padding: 0.2em;
}
#toppagemenu li li:hover {
background: #ddd;
}

#toppagemenu ul li .iches { /* color: #a00; */ color: #3c2; }

#toppagemenu>ul>li.list>a { color: #a00; }
#toppagemenu ul li.imp a { color: #f00; }
#toppagemenu .s80, #toppagemenu .s85 {font-size: 100%}



#taglist a {
color: #333;
text-decoration: none;
}
#taglist>ul>li {
font-weight: bold;
}
#taglist0>ul>li>a {
display: block;
border-bottom: solid 1px #555;
}

#taglist ul {
display:block;
padding: 5px 5px 0;
}
#taglist li {
display: inline-block;
width: 12em;
padding: 0;
vertical-align: top;
border-bottom: solid 1px #aaa;
margin: 0.2em 0.5em
}
#taglist li a {
display: inline-block;
width: 11.6em;
padding: 0.2em;
}
#taglist li:hover {
background: #ddd;
}



#submenu>div { position: sticky; top: 40px; background: #fff; width: 120px;}
#submenu p { font-weight: bold; font-size: 105%; text-align: center; margin: 0px; padding: 15px 2px; color: #080; }
#submenu ul { margin: 0; padding: 0;}
#submenu li { list-style: none; display: block; width: 120px; background: #ddd; min-height: 32px; margin: 10px 0px; padding: 10px 2px; }
#submenu li a { text-decoration: none; margin: 0;}
#submenu li a:hover { text-decoration: underline;}

#tags span a {display: inline-block; padding: 2px 15px; background: #af5; border-radius: 5px; text-decoration: none; font-weight: bold; font-size: 110%; color: #000;}
#tags a.c0 { background: #f4a;}
#tags a.c1 { background: #f77;}
#tags a.c2 { background: #fa4;}
#tags a.c3 { background: #af4;}
#tags a.c4 { background: #4fa;}
#tags a.c5 { background: #5af;}
#tags a:hover {text-decoration: underline; }

html,body { padding: 0px; margin: 0px; }

#contents>table, #contents>div, #contents>p, #contents>a.linkbox, #contents>dl { margin-left: 10px; }
#contents { background: #fff; height: fit-content; }
#contents-box div#banner { display: block; }
body.nobanner #contents-box div#banner { display: none; }

#intro { background: #dfe; padding: 5px; }

.ifrm-container{ 
text-align: center;
}

#ifrm-title {
font-size:110%;
font-wight:bold;
text-align:center;
background: #007;
color: #fff;
width:99%;
margin: 1em auto 1px;
}
#ifrm { 
width:99%;
height: 150px;
overflow: auto;
border: solid 1px #666;
}
#ifrm-next {
font-size:90%;
text-align:right;
margin:0px 50px 10px;
}

#contents .frame-red, #contents .frame-iches, 
#contents .frame-blue, #contents .frame-green { 
width:99%;
margin: 0.5em auto;
border: solid 2px #f00;
padding: 0;
}
#contents .frame-red h3, #contents .frame-red h4 ,
#contents .frame-iches h3, #contents .frame-iches h4 ,
#contents .frame-blue h3, #contents .frame-blue h4 ,
#contents .frame-green h3, #contents .frame-green h4 { 
margin: 0 0 0.2em;
border: none;
text-align: center;
color: #fff;
}
#contents .frame-red h3 a, #contents .frame-red h4 a ,
#contents .frame-iches h3 a, #contents .frame-iches h4 a ,
#contents .frame-blue h3 a, #contents .frame-blue h4 a ,
#contents .frame-green h3 a, #contents .frame-green h4 a { 
color: #fff;
}
#contents .frame-red p, #contents .frame-iches p, 
#contents .frame-blue p, #contents .frame-green p { 
padding: 0.4em;
}

#contents .frame-red {border: solid 2px #f00;}
#contents .frame-iches {border: solid 2px #a33; background: #ffd}
#contents .frame-blue {border: solid 2px #00f; }
#contents .frame-green { border: solid 2px #0a0; }

#contents .frame-red h3, #contents .frame-red h4  {background: #f00;}
#contents .frame-iches h3, #contents .frame-iches h4 {background: #a33;}
#contents .frame-blue h3, #contents .frame-blue h4 {background: #00f;}
#contents .frame-green h3, #contents .frame-green h4 {background: #0a0;}


#pagetop-link a {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    background-color: #ff0000;
    background-image: url("../img/up.png");
    background-repeat: no-repeat;
    background-position: center center;
    opacity: 0;
    transition: 0.5s;
}

#pagetop-link.show a {
    opacity: 0.7;
}

.messagebox {
border: solid 2px #00f;
background: #ddf;
max-width: 90%;
margin: 1em auto;
padding: 0.3em 0.8em;
}
.messagebox.back-yellow { background: #ff8; border: solid 2px #dc0; }
.messagebox.back-pink { background: #fdd; border: solid 2px #f00; }
.messagebox.back-blue { background: #ddf; border: solid 2px #00f; }
.messagebox.back-green { background: #dfd; border: solid 2px #0c0; }
.back-pink { background: #fdd !important; }
.back-yellow { background: #ff8 !important; }
.back-blue { background: #ddf !important; }

.linkbox {
  color:#226;
  text-decoration:none;
  font-size: 110%;
  padding: 6px;
  margin: 4px;
  border:3px solid #00f;
  background-color:#ff8;
  border-radius:10px;
  box-shadow: 2px 2px 2px;
}
a.linkbox, span.linkbox { 
  display: block;
}
a.linkbox:hover { 
  border: 3px solid #06e;
  transform: translate(2px,2px);
  box-shadow: 0px 0px 2px;
}

.linkicon{
  display: inline-block;
}
.linkicon::after{
  vertical-align: middle;
}
[target="_blank"].linkicon::after,
a[target="_blank"].linkbox .linkicon::after {
  content:url("../pages/img/window.png");
}
a[href^="#"].linkicon::after,
a[href^="#"].linkbox .linkicon::after {
  content:url("../pages/img/arrow-down.png");
}
a[href^="http"].linkicon::after,
a[href^="http"].linkbox .linkicon::after {
  content:url("../pages/img/arrow-right.gif");
}
a[href^="https://www.scej.org"].linkicon::after,
a[href^="https://www.scej.org"].linkbox .linkicon::after,
a[href^="http://scej.org"].linkicon::after,
a[href^="http://scej.org"].linkbox .linkicon::after,
a[href^="https://service.kktcs.co.jp"].linkicon::after,
a[href^="https://service.kktcs.co.jp"].linkbox .linkicon::after {
  content:url("../pages/img/scej-icon.png");
}
a[href^="javascript"].linkicon::after,
a[href^="javascript"].linkbox .linkicon::after {
  content: "";
}
a[href*=".xls"].linkicon::after,
a[href*=".xls"].linkbox .linkicon::after {
  content:url("../pages/img/excel.png");
}
a[href*=".doc"].linkicon::after,
a[href*=".doc"].linkbox .linkicon::after {
  content:url("../pages/img/word.png");
}
a[href*=".pdf"].linkicon::after,
a[href*=".pdf"].linkbox .linkicon::after {
  content:url("../pages/img/pdf.png");
}

.t-red { color: red; }
.t-red2 { color: #a00; }
.t-blue { color: blue; }
.t-green { color: green; }

.engiri {text-decoration: underline; text-decoration: underline dotted #333; }

table {border-spacing: 0px; }
#contents th {background: #dfe; }
table ul {padding-left: 1.5em;}
table ul ul {padding-left: 1em;}
.sticky {position: sticky; top: 32px;}

#contents-box {position: relative; }

table#toc.sticky { position: sticky; top: 0; background: #fff;}

#toc h3 {
  margin: 5px 5px;
  background: none;
}

#toc td {
  border: solid 1px #336;
  padding: 0.5em;
}

#toc a { text-decoration: none; }
#toc a:hover { text-decoration: underline; }

span.totoc {
  display: inline-block;
  position: absolute;
  font-size: 14px;
  right: 15px;
  z-index: 2;
}
span.jspan {
  display: inline-block;
  position: relative;
  background: #dfe;
  z-index: 3;
  margin-right: 4em;
}
#contents-box #contents>h2, 
#contents-box #contents>div>h2 {
  margin: 15px 0px !important;
  padding: 3px 12px; 
  background: #ddd; 
  color: #009;
  border-bottom: solid 4px #284;
  border-top: none;
  font-size: 1.5em;
}
#contents-box #contents>h3, 
#contents-box #contents>div>h3,
#contents-box #contents>div>div.hide>h3, 
#contents-box #contents>div>div.hide>div.hide>h3 {
  margin: 30px 5px 10px;
  padding: 3px 3px 3px 10px; 
  background: #dfe; 
  border-bottom: solid 2px #284;
  border-left: solid 10px #284;
  font-size: 1.2em;
}
#contents>h4, 
#contents>div>h4,
#contents>div>div.hide>h4,
#contents>div>div.hide>div.hide>h4 {
  margin-top: 25px;
  margin-left: 5px;
  padding: 2px 2px 1px 10px; 
  background: #dfe; 
  border-bottom: solid 1px #284;
  border-left: solid 5px #284;
  font-size: 1.1em;
}
#contents>h5, 
#contents>div>h5 {
  margin: 10px 5px 2px;
  padding: 2px 2px 0px; 
  border-bottom: solid 1px #284;
  font-size: 1em;
}

#contents-box #contents>h2#pagename {
  margin: 0px 0px 15px !important;
  padding: 3px 12px; 
  background: #ddd; 
  color: #009;
  border-bottom: solid 6px #284;
  border-top: none;
  font-size: 1.7em;
}

#contents table.nd { max-width: 50em; width: 98%; }
table.nd th, table.nd td { border: solid 1px #555; }
table.nd th { padding: 5px; }
table.nd td { padding: 3px; }
#contents table.n th { background: none; padding-right: 5px;}

#contents th.bluegray, #contents tr.bluegray th {
	background: #55a;
	color: #fff;
}

.t-red { color: #f00; }
.t-red2 { color: #c00; }


div#contents-box {
  clear: both;
}

div#contents {
  position: relative;
}

div#banner {
  background: #ccc;
}

div#banner .noscej { background: #ddd; padding: 15px 0px 50px;}

div#banner .large img, div#banner .scejbanner img { max-width: 240px; }
div#banner .small img { max-width: 150px; }
div#banner .large a, div#banner .scejbanner a  { width: 240px; }
div#banner .small a { width: 150px; }
div#banner a {
  display: inline-block;
  text-decoration: none;
  font-size: 14px;
  color: #333;
  margin: 5px 3px 10px;
  vertical-align: top;
  text-align: left;
}
div#banner div.scej {
  margin: 10px 0 0;
  
}
div#banner div.scej1 {
  padding: 10px 0 10px;
  text-align: center;
  font-weight: bold;
  font-size: 120%;
  color: #333;

}

.em #header {
height: 32px;
background: #fff;
overflow: hidden;
}
.wd #header {
height: 62px;
background: #fff;
overflow: hidden;
}

.em #header img.logo2 { display: none}
.wd #header img.logo1 { display: none}
.wd #header img.logo2 { display: block; float: left; height: 60px}

.em #header span {
display: inline-block;
font-weight: bold;
}
.wd #header span {
font-weight: bold; 
display: block; 
padding-left: 0.5em; 
padding-right: 0.5em; 
float: left
}
.em #header span.name {
margin: 0px 15px 2px 10px;
font-size: 20px;
}
.wd #header span.name {
font-size: 30px;
padding-top: 12px;
}
.em #header span.date, .em #header span.venue {
margin: 0px 20px 4px;
font-size: 16px;
}
.em #header span.ejlink {
display: block;
position: absolute;
right: 15px;
top: 5px;
font-size: 14px;
font-weight: normal;
background: #fff;
}
.wd #header span.date { float: none; padding-top: 10px;}
.wd #header span.venue { padding-left: 0.5em; padding-top: 2px;}
.wd #header span.ejlink { position: absolute; font-size: 14px; font-weight: normal; top: 6px; right: 0.6em; background: #fff}
.em #header img {
margin: 4px 2px -4px;
}
.nobr {display: inline-block;}

#header a {
color: #000;
text-decoration: none;
}

div#footer {
  clear: both;
  background: #aaa;
  border-top: solid 1px #555;
}
#footer th { background: none; padding-right: 1em; width: 10em; }
#footer a { text-decoration: none; color: #333;}
#footer th, #footer td {  line-height: 2; }

#left-menu ul { padding-left: 10px; }
#left-menu li { list-style: none; padding: 5px}
#left-menu>ul { position: sticky; top: 40px; }

.topnavi {
	width: 100%;
	height: 2em;
	margin: 0;
	margin-bottom: 2.2em;
	padding: 0;
	text-indent: 0;
	clear: both;
/*	background: #b22222; *//* 50f 87a 配色(赤) */
/*	background: #46f; *//* 82a 83a 配色 */
/*	background: #006e4f; *//* 49f配色 */
/*	background: #819b25; *//* 51f配色(黄緑) */
	background: #005e3f; /* 84a 86a 56f 配色(深緑) */
}

#nav {
/*	width: 57em; */
	width: 100%;
	height: 2em;
	margin: 0 auto;
	text-indent: 0;
	z-index: 20;
	padding: 0;
	position: sticky;
	top: 0;
/*	background: #f00; */
	background: #070; 
}

#nav ul {
	margin: 0;
	padding: 0;
}
#nav>ul>li {
	float: left;
	width: 9em;
	text-align: center;
	border-right: 1px solid #fff;
	word-break: break-all;
}
#nav li {
	list-style-type: none;
	height: 2em;
	text-indent: 0;
	margin: 0;
	word-break: break-all;
}

#nav>ul>li>a {
	display: block;
	width: 9em;
	color: #006;
	text-decoration: none;
/*	background: #f88; *//* 赤系 (50f 87a) */
/*	background: #acf; *//* 青系 (82a 83a) */
/*	background: #6db; *//* 緑系 (49f) */
/*	background: #9ac82b; *//* 黄緑系 (51f) */
	background: #6b9; /* 深緑系 (84a 86a 56f) */
}
#nav li a {
	color: #006;
	font-weight: bold;
	line-height: 2em;
}

#nav li.haschild:hover {
	height: 2em;
/*	background: #f88; *//* 赤系 (50f 87a) */
/*	background: #acf; *//* 青系 (82a 83a) */
/*	background: #6db; *//* 緑系 (49f) */
/*	background: #9ac82b; *//* 黄緑系 (51f) */
	background: #6b9; /* 深緑系 (84a 86a 56f) */
}

#nav li.myprogs {
	display: none;
}
#nav li.myprog a {
	background: #ecc;
}
#nav li.myprog a:hover {
	background: #fdd;
}


#nav>ul>li>a:hover {
	color: #800;
/*	background: #fcc; *//* 赤系 (50f 87a) */
/*	background: #cef; *//* 青系 (82a 83a) */
/*	background: #afc; *//* 緑系 (49f) */
/*	background: #cee582; *//* 黄緑系 (51f) */
	background: #8da; /* 深緑系 (84a 86a 56f) */
}
#nav li.list a {
	color: #f00;
/*	background: #fdd; *//* 赤系 (50f 87a) */
/*	background: #cef; *//* 青系 (82a 83a) */
/*	background: #afc; *//* 緑系 (49f) */
/*	background: #cee582; *//* 黄緑系 (51f) */
	background: #8da; /* 深緑系 (84a 86a 56f) */
}
#nav>ul>li::after {
position: relative;
top: -0.4em;
visibility: hidden;
width: 0.5em;
margin: auto;
display: block;
content: "";
width: 0;
border-bottom: solid 0.5em #55c;
border-left: solid 0.5em transparent;
border-right: solid 0.5em transparent;
}
#nav>ul>li:hover::after {
visibility: visible;
}

#nav > li li:hover > a, #nav li.list:hover a {
/*	background: #fcc; *//* 赤系 (50f 87a) */
/*	background: #cef; *//* 青系 (82a 83a) */
/*	background: #afc; *//* 緑系 (49f) */
/*	background: #cee582; *//* 黄緑系 (51f) */
	background: #8da; /* 深緑系 (84a 86a 56f) */
}
#nav li.imp a {
	color: red;
}

#nav li ul {
  background: #eee;
  top0: 2em;
  border: 2px solid #55c;
  border-radius: 10px;
  position: absolute;
  display: none;
  left: 2%;
  right: 2%;
  width: auto;
  text-align: left;
  padding: 1em 2em;

}

#nav li:hover ul {
  display: block;
}

#nav li li {
  display: inline-block;
  min-width: 12em;
  padding: 0.5em;
}
#nav li li a {
}

/*
#nav li ul {
	left: 0;
	position: absolute;
	top: 2em;
	z-index: 21;
}
#nav li ul li {
	overflow: hidden;
	height: 0;
}
#nav li ul li a {
	border-top: 1px solid #fff;
}
#nav li ul li ul li a {
	text-align: left;
	padding-left: 0.5em;
}

#nav li:hover > ul > li {
	overflow: visible;
	width: 14em;
	height: 2em;
}
*/

#nav li.hide, #nav li.hide2 { display: none; }
#nav #ejlink { position: absolute; right: 0px; display: inline-block; padding: 0px 4px; height: 32px; margin: 0px}
#nav #ejlink a { text-decoration: none; color: #fff; line-height: 32px}

.nojsbody.sub #contents-box #contents, 
.nojsbody.sub #contents-box #banner {
  margin-left: 128px;
}

.nojsbody.sub #contents-box #submenu {
  width: 120px;
  position: absolute;
  float0: left;
}

span.narrowonly { display: none; }

.topicslist td.closed {color:red} 
.topicslist td.poster {color:#070} 

/*
@media screen and (max-width: 890px) {
	.prog #nav { width: 48.5em;}
	.prog #nav > li.navLast {display: none; }
	.prog #nav > li.myprog {display: none; }
	.wideonly,.open,.closed,.oral,.poster,.both {display: none;}
	span.narrowonly {display: inline; }
}
@media screen and (max-width: 760px) {
	.prog #nav { width: 40.3em;}
	.prog #nav > li.navInfo {display: none; }
	td.code, th.code { display: none; }
}
@media screen and (max-width: 650px) {
	.prog #nav { width: 32.3em;}
	.prog #nav > li.navProg {display: none; }
	td.key, th.key { display: none; }
}
*/

#nav li.w10, #nav li.w10 a { width: 10em ; }
#nav li.w10:hover > ul > li { width: 10em; }
#nav li.w10 ul li ul { left: 10em; }

body.flex div#contents-box {
  display: flex;
}
body.flex div#contents {
  flex: auto;
  padding: 5px 10px 30px;
}
body.flex div#banner, body.flex div#left-menu {
  flex: 0 0 250px;
  padding-left: 5px;
}

body.wide div#contents {
  float: left;
  width: calc(100vw - 280px);
  padding: 5px;
}
body.wide div#banner {
  width: 245px;
  float: right;
  padding-left: 5px;
}
body.wide div#left-menu {
  width: 245px;
  float: left;
  padding-left: 5px;
}

body.narrow div#contents {
  float: none;
}
body.narrow div#banner {
  border-top: solid 1px #555;
  padding-top: 10px;
  text-align: center;
}

body.nobanner div#banner {
  display: none;
}
body.nobanner div#contents {
  width: auto;
}

@media screen and (max-width: 890px) {
	.wd #header span {font-size: 90%; }
	.wd #header span.name {font-size: 24px; }
}
@media screen and (max-width: 800px) {
	.wd #header span {font-size: 85%; }
	.wd #header span.name {font-size: 20px; }
}
@media screen and (max-width: 750px) {
	.wd #header span {float: none; padding-top: 0px;}
	.wd #header span.date, .wd #header span.name {padding-top: 0px; }
}
@media screen and (max-width: 950px) {
	html[lang="en"] .wd #header span {font-size: 90%; }
	html[lang="en"] .wd #header span.name {font-size: 24px; }
}
@media screen and (max-width: 850px) {
	html[lang="en"] .wd #header span {font-size: 85%; }
	html[lang="en"] .wd #header span.name {font-size: 20px; }
}
@media screen and (max-width: 800px) {
	html[lang="en"] .wd #header span {float: none; padding-top: 0px;}
	html[lang="en"] .wd #header span.date, .wd #header span.name {padding-top: 0px; }
}
@media screen and (max-width: 620px) {
	.wd #header img.logo2 {display: none;}
}

img.logo3 {height: 50px; }
span.logo3 {position: absolute; top:3px; left: 50em; }
html[lang="en"] span.logo3 {left: 62em; }
@media all and (max-width: 1140px) { .wd #header img.logo3.head {display: none; } }
@media all and (max-width: 1070px) { .wd #header span.logo3 {top: 10px; } img.logo3 {height: 40px;} }
@media all and (max-width: 1040px) { .wd #header span.logo3 {top: 28px; } img.logo3 {height: 30px;} }
@media all and (max-width: 900px) { .wd #header span.logo3 {top: 28px; right: 10px; left:auto; } img.logo3 {height: 30px;} }
@media all and (max-width: 1270px) { html[lang="en"] .wd #header span.logo3 {top: 10px; } img.logo3 {height: 40px;} }
@media all and (max-width: 1220px) { html[lang="en"] .wd #header span.logo3 {top: 28px; } img.logo3 {height: 30px;} }
@media all and (max-width: 1100px) { html[lang="en"] .wd #header span.logo3 {top: 28px; right: 10px; left:auto; } img.logo3 {height: 30px;} }
@media all and (max-width: 1020px) { html[lang="en"] .wd #header span.logo3 {display: none; } }

@media all and (max-width: 620px) { .wd #header span.logo3 {display: none; } }

#preheader {display: none; }
@media all and (max-width: 620px) {
#preheader { display: block; height: 40px; } #preheader img { height: 40px; } #preheader table { width: 100%; }
.wd #header span.ejlink { top: 43px; }
}
