/*共通*/

*{
padding: 0px;
margin: 0px ;
position:relative ;
}

html {
height:100% ;
font-size: 62.5%;
}

img {
border: none ;
vertical-align: bottom;
}

body {
background-color:#99CC99 ; 
font-size:2.5rem ;
color: #000000 ;
font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif ;
line-height:150% ;
text-align: center ;
height:100% ;
}

a {
text-decoration: none ;
}
a:link{color : #048802;}
a:visited{color : #048802;}
a:hover {color : #E5B403 ;}

p {
text-align: justify;
text-justify: auto;
margin-bottom: 5px ;
}

.smalltxt {
font-size: 11px ;
line-height: 140% ;
}

.selif {
font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}




/*ページ構造*/

* html div#container {
height:100%;
}

div#container {
width:100% ;
margin: 0px auto ;
position:relative ;
min-height:100% ;
}

body > #container {
height: 100%;
}

#menu {
width:100% ;
height:200px ;
padding-top: 5px ;
background:#cccccc url(img/header.jpg) top center;
margin:0px ;
}
#menu_mas {
width:100% ;
height:200px ;
padding-top: 5px ;
background:#cccccc url(img/mas/header.jpg) top right;
background-size:cover ;
margin:0px ;
}

#main {
background-color:#ffffff ;
margin:3px 30px 3px;
padding:20px 50px ;
min-height: calc(100vh - 235px) ;
}

#goindex {
float:left ;
margin-left: 10px ;
width:200px ;
}

#sitemap {
font-size: 1em ;
text-align: center ;
height: 80px ;
width:100% ;
position: absolute ;
left:0px ;
bottom:0px ;
background: #ffffff ;
}

#footer {
background-color: #00A452 ;
font-size: 1em ;
font-family: Arial ;
text-align:center ;
color: #ffffff ;
position: absolute ;
padding: 2px 0px;
bottom:100vh-30px ;
left: 0px ;
width: 100% ;
height:40px ;
clear: both ;
}


/*ニュース*/
#npanel {
border:4px solid #048802 ;
width: 100% ;
height:800px ;
border-radius: 5px ;
-moz-border-radius: 5px ;
-webkit-border-radius: 5px ;
box-shadow: 10px 10px 10px rgba(0,0,0,0.6);
}
#npanel iframe {
width:100% ;
height:800px ;
}

#news {
background-color:#E4F5E4;
padding:15px ;
font-size:1.4rem ;

}
#news img {
float:left;
margin-right:10px ;
width:40% ;
}


/*メニュー*/
#tabs {
position: absolute ;
top: 90px;
margin-left:220px ;
}

#tabs a{
text-decoration: none ;
color:#ffffff ;
}
#tabs a:visited {color:#ffffff ;}
#tabs a:hover {color:#000000 ;}

#tabs div {
margin-right:10px ;
margin-bottom:10px ;
float:left ;
border-radius: 10px ;
-moz-border-radius: 10px ;
-webkit-border-radius: 10px ;
text-align:center ;
text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
background: #00A452 ;
background: -moz-linear-gradient(top,#00A452 0%,#05773E);
background: -webkit-gradient(linear, left top, left bottom, from(#00A452), to(#05773E));
height:30px ;
font-size:2.8rem ;
padding:10px ;
white-space: nowrap
}

#tabs div:hover{
background: #ccc ;
background: -moz-linear-gradient(top,#F5D500 0%,#B08B03);
background: -webkit-gradient(linear, left top, left bottom, from(#F5D500), to(#B08B03));
}

.tab_mas, .tab_mas2,.tab, .tab2 {
width:220px ;
}

#flag {
position:absolute ;
top:75px ;
left:190px ;
}
#flag_mas {
position:absolute ;
top:90px ;
left:190px ;
}

#flag img{
width:40px ;
}



/*見出し*/
h1 {
padding: 20px 20px 0px ;
font-size: 15pt ;
font-weight: bold ;
margin-bottom: 30px ;
border-bottom: solid 2px #cc0033 ;
}

h2 {
font-size: 3.3rem ;
font-weight: bold ;
margin: 10px 0px 20px ;
text-shadow: 2px 2px 2px rgba(255,221,0,0.8);
}

h3 {
font-size: 2.5rem ;
line-height:160% ;
}
h3.course{
width:100% ;
}
h3.course div{
padding-left:5px ;
width:100px ;
height:40px ;
color:#fff ;
background:#048802 ;
float:left ;
margin-right:30px ;
}
h3.course div:after{
content:"" ;
position:absolute ;
left: 105px;
box-sizing: border-box;
top:0px ;
width: 20px;
height: 20px;
border: 20px solid transparent;
border-left: 20px solid #048802;
}

h4 {
position:relative ;
font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
text-align:center ;
height:20pt ;
font-size: 2.7rem ;
padding: 8px 0px 8px 20px;
background: #F5D500 ;
}
h4:before {
content:"" ;
position: absolute;
top:0px ;
left: 0px;
height:26pt ;
width: 50px;
background: #F5D500 ;
background: -moz-linear-gradient(right,#F5D500 0%,#ffffff);
background: -webkit-gradient(linear, right top, left top, from(#F5D500), to(#ffffff));
}
h4:after {
content:"" ;
position: absolute;
top:0px ;
right: 0px;
height:26pt ;
width: 50px;
background: #F5D500 ;
background: -moz-linear-gradient(left,#F5D500 0%,#ffffff);
background: -webkit-gradient(linear, left top, right top, from(#F5D500), to(#ffffff));
}

h5 {
position:relative ;
height: 30px ;
width: 100% ;
font-size: 2.7rem ;
padding-bottom:10px ;
margin: auto ;
margin-bottom: 10px ;
border-bottom:3px solid #048802 ;
text-align:center ;
}


.r {background:#FCC3D1 ;}
.r:before {background:#FCC3D1 ;}
.r:after {background:#FCC3D1 ;}

h6 {
font-size:2.2rem ;
margin:10px 30px 0px 220px;
font-weight: normal ;
color:#fff ;
text-shadow: 2px 2px 2px rgba(0,0,0,3);
text-align:left ;
line-height:140% ;
}


/*テーブル＆ボックス*/
table {
margin: 0px auto ;
border-top: solid 1px #999999 ;
border-right: solid 1px #999999 ;
width:100% ;
}
th, td {
border-bottom: solid 1px #999999 ;
border-left: solid 1px #999999 ;
padding: 3px ;
}
th {
background-color: #CBECCB ;
}
td {
text-align:left ;
}
.lrbox {
border: 5px solid #048802 ;
border-radius: 10px;
padding: 5px ;
}
.gbbox {
background-color: #eeeeee ;
margin: -20px 50px 50px ;
padding:5px
}

/*リスト*/
dl{
border: 5px solid #048802 ;
border-radius: 10px;
text-align:left ;
margin-right:10px ;
margin-bottom:30px ;
padding:0px ;
}

dt {
color:#ffffff ;
font-size:2.2rem ;
font-weight: bold ;
padding-left:5px ;
background-color:#048802 ;
}

dd {
line-height: 130% ;
margin:10px ;
text-align: justify;
text-justify: auto;
}



/*ボタン*/
.btn span,.btn div{
font-size:2.6rem ;
padding: 5px 15px ;
-moz-box-shadow: 2px 2px 2px rgba(000,000,000,0.3) ;
-webkit-box-shadow: 2px 2px 2px rgba(000,000,000,0.3) ;
border-radius: 5px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
background-color: #F5D500 ;
font-weight:bold ;
box-shadow: 2px 2px 2px rgba(0,0,0,0.5);
white-space: nowrap
}
.btn div {
width:250px ;
float:right ;
text-align:center ;
margin-left:15px ;
}
.btn a{
text-decoration: none ;
color:#000000 ;
}
.btn span:hover,.btn div:hover{
background: #F37B56 ;
}
.btn a:visited {color:#000000 ;}

.rbutton {
width:50%;
float:right ;
text-align:right ;
line-height:270% ;
margin-top:20px ;
}

.rbutton div {
width:80px ;
height:80px ;
float:right ;
text-align:center ;
line-height:150% ;
border-radius:40px ;
-moz-border-radius: 40px;
-webkit-border-radius: 40px;
background-color: #F5D500 ;
font-size:5rem ;
font-weight:bold ;
color:#000 ;
margin:10px ;
}
.rbutton div:hover {
background: #F37B56 ;
color:#fff ;
}


/*テキストリンク*/

.tlink {
font-size:8pt ;
background-color:#9fdfdf ;
font-weight: bold ;
padding: 2px 3px ;
border-radius: 2px;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
}

.tlink a{
text-decoration: none ;
color:#ffffff ;
}
.tlink a:hover{
color:#cc0033 ;
}


/*その他*/
.subtitle {
margin-top:10px ;
margin-left:10px ;
font-weight:bold ;
text-align:left ;
font-size: 2.4rem ;
text-shadow: 2px 2px 2px rgba(255,221,0,0.8);
}
.detail {
text-align:left ;
margin:0px 30px 30px ;
}
.hilight{
font-weight:bold;
color:#ff0000 ;
}

#sum {
float:left;
text-align:left;
width:800px;
}
#sum img {
width:60px ;
margin-right:5px ;
margin-bottom:5px ;
}

.sbj{
font-weight:bold ;
}
.sbj:before {
content: "◆";
position: absolute;
left: -1.2em;
height: 10px;
width: 10px;
color:#048802 ;
}

.addop {
background-color:#eeeeee ;
padding:3px ;
margin-top:5px ;
}

.addop span{
font-size:2.3rem ;
background-color:#F5D500 ;
padding: 2px 3px ;
border-radius: 2px;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
}

.btmline{
margin:-20px ;
border-top: 1px solid #000000 ;
padding-top:5px ;
text-align:right ;
}

.answer{
font-size:15pt ;
font-weight:bold ;
color:#048802 ;
}


/*レスポンシブ*/
.pc{
display:none ;
}

#indexad {
width:95% ;
margin:2.5% ;
margin-bottom:5% ;
}

.tmain{
margin-bottom:30px ;
}
.rphoto {
width:100%;
margin-bottom:50px ;
}   

.text{
background-image:url(img/mas/top.jpg);
width:100% ;
height:369px;
margin:auto;
font-size:3.2rem ;
color:#fff;
line-height:200%;
padding-top:30px;
margin-bottom:30px ;
text-shadow: 2px 2px 2px rgba(0,0,0,0.8) ;
}

.mtable {
width:100%;
}    



/*色指定*/

.red {
color: #cc0033 ;
}
.blue {
color: #003399 ;
}
.gray {
color: #999999 ;
}

.teststr{
color:#E414A2 ;
}
