@charset "UTF-8";

body:before {content:""; display:block; position:absolute; top:0; left:0; z-index:0; width:200px; height:100%; background:#F5F7FC;}

header {background:#fff; border-bottom:1px #dde solid;}

.siteTitle a {display:block; padding-bottom:10px; text-decoration:none;}
.siteTitle img {height:44px;}
.siteTitle img + span {display:inline-block; vertical-align:middle; margin-left:.5em; font-size:23px; font-weight:normal; color:#404040;}

footer {position:relative; z-index:10;}
.footNav,
footer .auth {display:none;}
footer .credit {margin-top:0; padding-top:0; border-top:0;}
footer .logo {float:none;}

#main {position:relative; padding:30px 0;}
#main:before {content:""; display:block; position:absolute; top:0; left:0; z-index:-10; width:200px; height:100%; background:#F5F7FC;}
#main:after {content:""; display:block; clear:both;}
.gpNav {float:left; width:200px; padding:0 15px; box-sizing:border-box;}
.gpNav > ul > li + li {border-top:1px #C9CDE6 solid;}
.gpNav li a,
.gpNav > ul > li > span {position:relative; display:block; padding:.6em 0; background:fff; text-decoration:none;}
.gpNav a:after {content:""; display:inline-block; position:absolute; right:0; top:50%; margin-top:-3px; width:6px; height:6px; border:#1859C5 solid; border-width:2px 2px 0 0; transform:rotate(45deg) scale(.86);}
.gpNav > ul > li > span:after {content:""; display:inline-block; position:absolute; right:0; top:50%; margin-top:-3px; width:6px; height:6px; border:#1859C5 solid; border-width:2px 2px 0 0; transform:rotate(45deg) scale(.86);}
.gpNav li a span {display:inline-block;}
.gpNav > ul > li.menuEnd ~ li {margin-top:2px; border-top:0;}
.gpNav > ul > li.menuEnd ~ li a {padding:.3em .5em; background:rgba(0,20,130,.06); color:#335; font-size:93%;}
.gpNav > ul > li.menuEnd ~ li a:after {border-color:#6591DC; right:6px;}
.gpNav > ul > li > ul {overflow:hidden; max-height:0; transition:all .5s; font-size:93%;}
.gpNav > ul > li > ul > li {border-top:1px #C9CDE6 dotted; border-left:2px rgba(0,50,150,.25) solid;}
.gpNav > ul > li > ul > li > a {padding-left:10px; line-height:1.33; color:#457;}
.gpNav > ul > li > ul > li > div {padding:.3em 0 .3em 10px; color:#457;}
.gpNav > ul > li > ul > li > div ~ ul {display:table; width:calc(100% - 10px); margin-left:10px; padding-bottom:.6em;}
.gpNav > ul > li > ul > li > div ~ ul > li {display:table-cell; text-align:center;}
.gpNav > ul > li > ul > li > div ~ ul > li > a {display:block; padding:.3em 0; background:rgba(0,50,150,.25); text-decoration:none; color:#fff;}
.gpNav > ul > li > ul > li > div ~ ul > li > a:after {display:none;}
.gpNav > ul > li > ul > li > div ~ ul > li + li {border-left:2px transparent solid;}

@media screen and (min-width:601px){
  .gpNav {display:block!important;}
  .gpNav li:hover > span:after {display:none;}
  .gpNav li:hover ul {max-height:1000px;}
  .gpNav > ul > li.menuEnd {margin-bottom:20px;}

  .timetable .gpNav .ttUl,
  .classes .gpNav .clsUl,
  .syllabus .gpNav .syUl,
  .binran .gpNav .biUl,
  .recruit .gpNav .rcUl,
  .regulations .gpNav .rgUl,
  .exam .gpNav .examUl,
  .koenkai .gpNav .sptUl {max-height:1000px!important;} 
}

@media screen and (max-width:600px){
  body:before {display:none;}
  header {border-bottom-width:2px;}
  .siteTitle a {padding:0;}
  .siteTitle img {height:auto; width:30px;}
  .siteTitle img + img {width:120px;}
  .siteTitle img + span {font-size:16px;}
  .gpNav {display:none; position:absolute; top:0; left:0; z-index:9999; width:100%; padding:0; background:#F5F7FC;}
  .gpNav li a,
  .gpNav > ul > li > span {padding:1em 15px;}
  .gpNav a:after {right:12px;}
  .gpNav > ul > li > span:after {width:10px; height:0; right:10px; border-right:0; margin:0; transform:rotate(90deg) scale(.86); transition:all .2s;}
  .gpNav > ul > li > span:before {content:""; display:inline-block; position:absolute; right:10px; top:50%; width:10px; border-top:2px #1859C5 solid; transform:scale(.86);}
  .gpNav > ul > li.menuEnd ~ li a {padding:.7em 15px;}
  .gpNav > ul > li.menuEnd ~ li a:after {right:12px;}
  .gpNav .open:after {transform:scale(.86);}
  .gpNav .open + ul {max-height:400px;}
  .gpNav > ul > li > ul > li > div ~ ul {width:calc(100% - 20px);}
  #main:before {display:none;}
}
@media screen and (max-width:375px){
  .siteTitle img {height:auto; width:26px;}
  .siteTitle img + img {width:100px; margin-left:5px;}
  .siteTitle img + span {font-size:15px;}
}

.gpCnt {max-width:1050px; min-width:780px; margin-left:200px; padding:5px 30px; box-sizing:border-box;}

h2 {margin:2.5em 0 1em; padding:.1em .7em; border:2px #155DC3 solid; border-left-width:5px; font-size:123.1%; text-align:left; color:#155dc3; box-sizing:border-box;}
h2:after {display:none;}
h3 {margin:1em 0 .4em; padding:0; border:0; font-size:108%; text-align:left; color:#155DC3;}
h4, h5 {color:#222; font-size:100%;}


@media screen and (min-width:1251px){
  .gpCnt {margin-left:calc(200px + (100% - 1250px) * .5);}
}

@media screen and (max-width:600px){
  .gpCnt {max-width:100%; min-width:320px; margin-left:0; padding:0 16px;}
}

.emgc {padding:0 20px; background:#fff2f6;}
.emgc dt {font-weight:bold; color:#f35;}
.emTitle {font-size:116%; font-weight:bold; color:#f35;}
.emBody {font-weight:bold;}

.newsList {max-height:300px; overflow:auto;}
.newsList dt {position:relative; top:-1px; clear:left; width:15%; width:calc(120px); float:left; padding:.67em 0; border-top:1px #e4e4e4 solid;}
.newsList dd {position:relative; top:-1px; width:85%; width:calc(100% - 120px); float:left; padding:.67em 0; border-top:1px #e4e4e4 solid;}
.newsList.hasCtg {max-height:500px;}
.newsList.hasCtg dt {width:30%; width:calc(220px);}
.newsList.hasCtg dt b {display:inline-block; width:6.6em; margin-right:1em; padding:.04em 0; border-radius:.9em; background:#eee; text-align:center; font-size:13px; font-feature-settings:"palt"; font-weight:normal; color:#fff;}
.newsList.hasCtg b.ctgG {background:#3590F5;}
.newsList.hasCtg b.ctgI {background:#EE9700;}
.newsList.hasCtg b.ctgA {background:#62BD00;}
.newsList.hasCtg b.ctgK {background:#FA667D;}
.newsList.hasCtg b.ctgM {background:#76c;}
.newsList.hasCtg b.ctgE {background:#f45a32;}
.newsList.hasCtg b.ctgD {background:#999;}
.newsList.hasCtg dd {width:70%; width:calc(100% - 220px);}
#main > section > h2 + .content > .newsList > dt:first-child,
#main > section > h2 + .content > .newsList > dt:first-child + dd {padding-top:0;}
#main > section > h2 + .content > .newsList > dt {font-size:93%;}
#main > section > h2 + .content > .newsList.hasCtg > dt b {font-size:12px;}

#main section .content ul.datedList {overflow:hidden; padding-left:0;}
.datedList li {display:table; width:100%; position:relative; top:-1px; padding:.67em 0; border-bottom:1px #e4e4e4 solid; overflow:hidden;}
.datedList li > * {display:table-cell; vertical-align:middle;}
.datedList li .date {width:12em; text-align:center; font-size:93%; color:#666;}
.datedList li .date:before {content:"（";}
.datedList li .date:after {content:"掲載）";}
.datedList + h4 {margin-top:1.5em;}
.datedList + p {margin-top:.8em;}

a[class^="ext_"] {display:inline-block;}
a[class^="ext_"]:after, 
.datedList a[class^="ext_"]:before {display:inline-block; width:3.5em; margin-left:.4em; padding:.1em .3em; text-align:center; color:#fff; font-size:11px; transform:scale(.85); font-weight:bold; letter-spacing:.04em; opacity:.7;}
.datedList a[class^="ext_"]:before {margin:0 .4em 0 0;}
.datedList a[class^="ext_"]:after {display:none;}
.txtBtn1 a[class^="ext_"]:after {display:none;}
.ext_pdf:after, .datedList .ext_pdf:before {content:"PDF"; background:#e33;}
.ext_exl:after, .datedList .ext_exl:before {content:"Excel"; background:#0a2;}
.ext_wrd:after, .datedList .ext_wrd:before {content:"Word"; background:#36c;}
.ext_ppt:after, .datedList .ext_ppt:before {content:"PPT"; background:#e51;}
.ext_zip:after, .datedList .ext_zip:before {content:"Zip"; background:#e80;}

@media screen and (max-width:600px) {
  #main .newsList dt {width:auto; float:none; padding-bottom:.6em;}
  #main .newsList dd {width:auto; float:none; border-top:0; padding-top:0;}
  
  .datedList li,
  .datedList li > div  {display:block;}
  .datedList li .date {width:auto; margin-top:.25em; text-align:left; font-size:85%;}
}

.box1 {margin:1em 0; padding:12px 16px; background:#f4f8f2;}
.box1 > *:last-child {margin-bottom:0;}
.box1 h3 {color:#303030;}

.login {margin:35px 0;}
.login li {padding-left:7em;}
.login li + li {margin-top:.4em;}
.login li:last-child {margin:15px 0;}
.login li:last-child input, .login li:last-child button {padding:0 2em;}
.login li b {display:inline-block; width:7em; margin-left:-7em; font-weight:normal;}

@media screen and (max-width:600px) {
  .login li {padding-left:0;}
  .login li b {margin-left:0;}
  .login li b + input {max-width:93%; box-sizing:border-box;}
}

.entry h2 {margin:0 0 .3em; padding:0 0 .1em; border-width:0 0 2px;}
.entry h2 + p {margin-bottom:2em; color:#606060;}


.areaSel li {margin:1em 0;}
.areaSel span {font-size:108%;}
.recruit .newsList {max-height:20em; overflow:auto;}

.rcTab {position:relative; margin:25px 0; padding:0 25px 8px; overflow:hidden;}
.rcTab:before {content:""; display:block; position:absolute; left:0; bottom:8px; width:100%; border-top:1px #bbc solid;}
.rcTab:after {content:""; display:block; clear:both;}
.rcTab li {position:relative; width:50%; float:left;}
.rcTab a {position:relative; display:block; margin:0 1px; padding:.6em; background:#B8CBEA; text-align:center; text-decoration:none; color:#fff;}
.rcTab a[href="ns"] {background:#EDCFD9;}
.rcTab.rh li a[href="rh"] {background:#3C72FC; font-weight:bold;}
.rcTab.rh li a[href="rh"]:after {content:""; display:block; position:absolute; left:calc(50% - 4px); bottom:-6px; border:4px transparent solid; border-top:6px #3C72FC solid; border-bottom:0;}
.rcTab.ns li a[href="ns"] {background:#ED6888;}
.rcTab.ns li a[href="ns"]:after {content:""; display:block; position:absolute; left:calc(50% - 4px); bottom:-6px; border:4px transparent solid; border-top:6px #ED6888 solid; border-bottom:0;}
.recruit article {max-height:0; opacity:0; overflow:hidden; transition:opacity .3s; box-sizing:border-box;}
.recruit article + article {padding-top:15px;}
article .ns, article .rh {display:none;}
.rcTab.ns ~ .ns,
.rcTab.rh ~ .rh {max-height:1000px; opacity:1;}
.rcTab.ns ~ article .ns,
.rcTab.rh ~ article .rh {display:block;}
.recruit article > div h3 {margin:0; padding:.3em .6em; background:#555b66; line-height:1.33; color:#fff;}
.recruit article > div p {margin:0; padding:.2em .6em; background:#c0cadd; text-align:right; color:#555B66; font-size:93%;}
.recruit article dl {overflow:hidden; border:#c0cadd solid; border-width:0 1px 1px;}
.recruit article dt {position:relative; clear:left; float:left; width:7em; padding:.5em 0; text-align:center;}
.recruit article dt:before {content:""; display:block; width:1500%; position:absolute; top:-1px; left:0; border-top:1px #c0cadd dotted;}
.recruit article dd {float:left; padding:.5em 0 .5em 1em; border-left:1px #c0cadd dotted;}

@media screen and (max-width:600px){
  .rcTab {padding:0 15px 8px;}
}



#main .aform-content dl {margin:0; border-bottom:0;}
#main .aform-content dl + dl {border-top:1px #ccc dotted;}
#main .aform-content dt {float:left; width:17em; padding:0 .6em; box-sizing:border-box;}
#main .aform-content dd {float:left; width:calc(100% - 17em); padding:0 1em; box-sizing:border-box;}
#main form > dl:before {width:17em;}
#main .aform-content dl dt .required {right:.6em;}

@media screen and (max-width:600px){
  #main .aform-content dl:before {display:none;}
  #main .aform-content dt {float:none; width:auto; padding:0 0 .4em;}
  #main .aform-content dd {float:none; width:auto; padding:0;}
  #main .aform-content dl dt .required {position:static;}
  #main .aform-content input {max-width:93%;}
}

