@charset "utf-8";
/*
YUI 3.18.1 (build f7e7bcb)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/

html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}

html{
	height: 100%;
    background-color: transparent;
    background-image: none;
}

body{
    font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;
    /*font-family:"メイリオ","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","ＭＳ Ｐゴシック",Osaka, sans-serif;*/
	-webkit-text-size-adjust: 100%;
	font-size: 0.96em;
	font-weight:normal;
	font-style:normal;
	line-height:150%;
    /* position: relative; */
    height:auto !important; /*IE6対策*/
    height: 100%; /*IE6対策*/	
    min-height: 100%;
	padding:0px;
    color: #333;
    margin: 0px;
    background-color:#fff;
}

a{
    text-decoration: none;
    color: inherit;
    cursor: pointer;
    cursor: hand;
}

a.link{
    border-radius: 0.5em;
    background-color: #0d1eeb;
    padding: 0.1em 0.8em;
    margin: 0 0.5em;
    color: white;
    cursor: pointer;
    cursor: hand;
}

.linkData{
    cursor: pointer;
    cursor: hand;
}

.base{
    width: 1170px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 0.5em;
    clear: both;
}

header{
    background-color: #fff; 
    /*    background-color: #1E1B24; */
    display: table;
}

header > *{
    display: table-cell;
    vertical-align: middle;
}

header img#logo_img{
    margin: 1em; 1em;
    width: 310px;
}

header #header_info{
    font-size: 0.82em;
    text-align: right;
    vertical-align: bottom;
}

header img#tel_img{
    width: 270px;
}

/*

header #header_info > div{
    display: table;
    float: right;
}

header #header_info > div > div{
    display: table-row;
}

header #header_info > div > div > div{
    display: table-cell;
    padding-left: 1em;
}
*/

body > nav{
    background-color: #fff;
    color: #343434;
}

body > nav > span{
    display: none;
}

body > nav > ul{
    /*border-top: 1px dotted #fcc1a7;*/
}

body > nav > ul > li{
    display: inline-block;
    box-sizing: border-box;
    /*width: 10.3%;*/
    width: 13.8%;
    padding: 2em 0em;
    text-align: center;
    border-right: 1px solid #9d9999;
}

body > nav > ul > li:first-child{
    border-left: 1px solid #9d9999;
}

body > nav > ul > li.inquiryBox{
	background-color:rgba(229, 37, 51, 0.92);
    margin-left: 1%;
    width: 12.5%;
    border-radius: 0.5em;
    border: 3px double #fff;
}

body > article#position{
    background-color: #5a9f3c;
    color: #fff;
    text-align: center;
    font-size: 1.25em;
    font-weight: bold;
    padding: 2em 0;
}

body > article.base{
    background-color: #fff;
    min-height: 250px;
}

footer{
    background-color: #567768;
    color: #fff;
    font-size: 0.82em;
}

footer > div{
    padding: 2em 1em;
    text-align: left;
}

footer > section{
    float: left;
    box-sizing: border-box;
    width: 50%;
}

footer > section:last-child > table{
    float: right;
    border-left: 1px solid #fff;
}

footer > section:last-child > table  td{
    padding-left: 1em;
}

footer > section > nav > ul > li{
    display: block;
    width: 90%;
    box-sizing: border-box;
    text-align: left;
    padding: 0.5em 0.25em 0.2em 0.25em;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  display: inline-block;
}

* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

.text_left{
    text-align: left;
}

.text_right{
    text-align: right;
}

article > nav.pagenav{
    margin: 1em 1em 2em 1em;
    border-radius: 0.5em;
    box-sizing: border-box;
    border: 1px solid #499d24;
    line-height: 180%;
}

article > nav.pagenav li{
    padding: 0.1em 1em; 
    color: #499d24;
}

article > nav.pagenav li:nth-child(2n-1){
    /* border-bottom: 1px dotted #ddd; */
    background-color: #499d24;
    color: #fff;
    
}

article > nav.pagenavtable{
    margin: 1em 1em 2em 1em;
    box-sizing: border-box;
}

article > nav > table{
    width: 100%;
}

article > nav  th, article > nav  td{
    padding: 0.5em;
    border: 1px solid #ddd;
}

article > nav  th{
    text-align: center;
}

article > nav  tr:nth-child(2n+1){
    background-color: azure;
}

article > section{
    margin: 1em 1em 2em 1em;
    padding: 0.5em;
    box-sizing: border-box;
}

article > section h1{
    /*
    position: relative;
    background: #71A0A6;
    box-shadow: 0px 0px 0px 5px #71A0A6;
    border: dashed 2px white;
    padding: 0.2em 0.5em;
    */
    
    font-size: 1.12em;
    margin-bottom: 1em;
    margin-left: 0.5em;
    border-bottom: 1px dotted #293329;
    
    margin-bottom: 1em;
    color: #fff;
    color: #454545;
}

article > section h1:after{
    position: absolute;
    content: '';
    left: -7px;
    top: -7px;
    border-width: 0 0 15px 15px;
    border-style: solid;
    border-color: #fff #fff #a8d4ff;
    box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
/*
article > section h1:first-letter {
    font-size:1.8em;
    font-weight: bold;
    color: #fff;
    background-color:#f56113;
    padding:0.1em 0.3em 0em 0.3em;
    margin: 0em 0.1em 0em -0.5em;
    text-align: right;
    border-radius: 50%;
}
*/

article > section h1 > span{
    font-size:0.7em;
    border-radius: 0.9em;
    background-color:#499d24;
    color: #fff;
    float: right;
    padding: 0.1em 0.7em;
    margin-right: 0.2em;
    
}

article > section section.outLine{
    margin: 1em 2em;
    box-sizing: border-box;
}

article > section section.outLine div{
    font-size: 1.12em;
    margin-bottom: 0.5em;
    border-bottom: 1px dotted #a79992;
    color: #a79992;
}

article > section section.outLine p{
    font-size: 0.85em;
    color: #a79992;
    border: 1px dotted #ccc;
    border-radius: 0.5em;
    
}

article > section.topic{
    text-align: center;
    color: #f01515;
}

article > section.topic > div{
    display: inline-block;
    background-color: #ffeef5;
    padding: 0.5em 1em;
    border-radius: 0.8em;
    border: 4px solid #ff6161;
}


div.contentsTable, div.contentsTable2{
    display: table;
    width: 100%;
}

div.contentsTable div.contentsTableTr, div.contentsTable2 div.contentsTableTr{
    display: table-row;
    background-color: #eafdeb;
}

div.contentsTable div.contentsTableTr:nth-child(2n+1), div.contentsTable2 div.contentsTableTr:nth-child(2n+1){
    background-color: #fff;
}

div.contentsTable div.contentsTableTr > div, div.contentsTable2 div.contentsTableTr > div{
    display: table-cell;
    vertical-align: bottom;
    padding:  3em 0em 0em 1em;
}

div.contentsTable div.contentsTableTr div.contentsTableImage{
    width: 215px;
    border-bottom: 3px solid #3f3f3f;
}

div.contentsTable div.contentsTableTr div.contentsTableContents {
    border-bottom: 3px solid #3f3f3f;
    padding-left: 2em;
}

div.contentsTable2 div.contentsTableTr div.contentsTableImage{
    width: 200px;
}

div.contentsTable2 div.contentsTableTr div.contentsTableContents {
    padding-left: 2em;
}


div.contentsTable div.contentsTableTr div.contentsTableImage img,
div.contentsTable2 div.contentsTableTr div.contentsTableImage img{
    margin-bottom: 0em;
}

div.contentsTable div.contentsTableTr div.contentsTableContents div.contentsTableContentsTitle, 
div.contentsTable2 div.contentsTableTr div.contentsTableContents div.contentsTableContentsTitle{
    font-weight: bold;
    display: block;
    padding-bottom: 0.5em;
}

div.contentsTable div.contentsTableTr div.contentsTableContents div.contentsTableContentsDescription, 
div.contentsTable2 div.contentsTableTr div.contentsTableContents div.contentsTableContentsDescription{
    display: block;
    font-size: 0.94em;
    color:#575555:
}

article > section section.detail{
    margin: 0 0.5em;
    box-sizing: border-box;
}

article > section section.detail >h2 {
    margin-top: 1em;
    border-bottom: 3px double #85a9fa;
    color: #044795;
}

article > section section.detail >p {
    margin-bottom: 0.8em;
}

article > section section.detail > div.listDiv {
    padding: 0.5em 1em;
    border:4px solid #9098ff;
    margin-bottom: 0.8em;
    border-radius: 1em;
    background-color: #fff;
    
}

article > section section.detail > ul{
    margin: 1em 0.5em;
}

article > section section.detail > ul.courselist{
    margin-bottom: 3em;
}

article > section section.detail > section.notice{
    margin: 1em 0.5em 0.5em 0.5em;
    padding: 0.5em;
    box-sizing: border-box;
    font-size: 0.8em;
    color: #ef4343;
    border: 1px solid #ef4343;
}

article > section section.hideDetail{
    display: none;
}

div.detailTableDiv{
    overflow-x: scroll;
    width: 100%;
}

div.detailTableDiv > table{
    width: 100%;
    
}

div.detailTableDiv th, div.detailTableDiv td{
    padding: 0.5em;
    border: 1px solid #ddd;
    word-break:keep-all;
}

div.detailTableDiv th{
    text-align: center;
}

div.detailTableDiv tr:nth-child(2n+1){
    background-color: azure;
}

p.hideDescription{
    box-sizing: border-box;
    font-size: 0.78em;
    margin: 1em;
    padding: 0.5em;
    border: 1px solid #aaa;
    color: #aaa;
    border-radius: 0.5em;
}

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

div.info > div{
    float: left;
    padding-left: 1em;
}

section#indexImageSection{
    text-align: center;
    margin: auto 0;
    margin-top: 2em;
    margin-bottom: 1.5em;
    
    
}

section img{
    max-width: 100%;
    margin-bottom: 1em;
}

section#indexImageSection img{
    max-width: 100%;
}

img.thumb{
    width: 1em;
    display: inline-block;
	margin: 0 auto;
}

div.human{
    clear: both;
    display: inline-block;
}

div.human div{
    float: left;
    margin-left: 1em;
}

div.human div.imgDiv{
    text-align: center;
}

div.human div.imgDiv img{
    display: inline-block;
	margin: 0 auto;
    border: 6px double #e2ad6f;
    border-radius: 1em;
}

ul.pointUl{
    list-style-type: square;
}

dl.pointDl{
    list-style-type: square;
}

dl.pointDl dt {
  clear: left;
  float: left;
  width: 100%;
  font-weight: bold;
}
dl.pointDl dd { margin: 0 0 0 1em; }

div.inputData{
    margin-bottom: 1em;
}

p.wiki{
    padding: 2em 1em;
    color: #666;
    font-size: 0.86em;
}

div.imageTable{
    display: table;
    margin: 2em auto;
}

div.imageTableTr{
    display:table-row;
}

div.imageTableTrTd{
    display: table-cell;
    padding: 1em;
    text-align: center;
}

div.imageTableTrTd img{
    margin-bottom: 0em;
    width: 200px;
}

section.item{
    display: inline-block;
    width: 100%;
    box-sizing: border-box;
}

section.overview{
    margin: 1em ;
    border: solid 3px #be8494;
    background-color: #f5dede;
    border-radius: 1em;
    padding: 0.5em 1em;
}


section.example{
    margin: 1em ;
    padding: 0.5em 1em;
}

section.example > section{
    clear: both;
    margin: 1em 0;
    padding: 0.5em 1em;
    border: dotted 1px #be8494;
}

section.example > section > ul.image{
    width: 100%;
    box-sizing: border-box;
}

section.example > section > ul.image{
    width: 100%;
    box-sizing: border-box;
    display: inline-block;
    margin-top: 1em;
}

section.example > section > ul.image > li {
    float: left;
    margin-left: 1em;
}



section#presentationSection,section#descriptionSection{
    margin: 1em 0;
    float: left;
    box-sizing: border-box;
    padding: 1em;
    text-align: center;
}

section#presentationSection{
    width: 40%;
}

section#descriptionSection{
    width: 60%;
    text-align: left;
}

section#presentationSection > ul.slide{
    width: 100%;
    box-sizing: border-box;
}

section#presentationSection > ul.slide img{
    width: 99%;
    margin: auto;
    border: 1px solid #aaa;
    padding: 0.3em;
    box-sizing: border-box;
}

section#presentationSection > div.thumbDiv{
    width: 95%;
}

ul.thumb{
    width: 100%;
    margin: auto ;
}

ul.thumb img {
    height: 50px;
}

h2.detailSectionHeader{
    margin: 0 0 1em;
    padding: 0.2em 0.5em;
    border-left: 7px solid #60627e;
    border-bottom: 1px dashed #60627e;
    font-size: 1.1em;
    font-weight: bold;
}
 
section#descriptionSection table{
    width: 95%;
    margin: auto;
    border: 1px solid dimgray;
}

section#descriptionSection th, section#descriptionSection td{
    padding: 1%;
    border: 1px solid dimgray;
}

section#descriptionSection th{
    background-color: lightgray;
    min-width: 8em;
}

section#descriptionSection td table th{
    width: 30%;
}


section#descriptionSection ul{
    margin-left: 1.5em;
    list-style-type:disc;
}

section#descriptionSection dt {
    /*background-color: #d8f4cb*/
}

section#descriptionSection dd {
    margin-left: 1em ;
    margin-bottom: 0.8em;
}

div.commentary{
    margin-left: 1.5em;
    color: #aaa;
}

@media screen and (max-width: 1200px) {
    .base{ width: 970px; }
}

@media screen and (max-width: 982px) {
    .base{ width: 750px; }
    #header_message{display: none;}
    body > nav > span{
        display: inline-block;
        padding: 0.1em 1em;
        border: 2px solid #fff;
        border-radius: 0.5em;
    }
    body > nav > ul{display: none;}
    body > nav > ul > li{
        display: block;
        width:100%;
        text-align: left;
        padding: 0.5em 0.25em 0.2em 1em;
        border-bottom: 1px dotted #fff;
    }
    body > nav > ul > li.inquiryBox{
        border-radius: 0em;
    }
    
    footer > section{ width: 100%; }
    footer > section:last-child > table{
        margin: 1.5em 3em;
        float: none;
    }
}
    

@media screen and (max-width: 786px) {

    .base{ width: 100%; }
    header{text-align: center;}
    article > section{
        margin: 1em 0.5em 2em 0.5em;
        padding: 0;
    }
    
}

@media screen and (max-width: 615px) {

    #header_info{display: none;}
    header {
        display: block;
        text-align: center;
    }
    
    header img{
        max-width: 100%;
        margin: 0 auto;
    }
    
    .brsp { display:none; }
}
