@charset "utf-8";
/* CSS Document */

/*===============
base
=================*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
form,input,p,blockquote,th,td {
margin:0;
padding:0;
}  
img{
border:0;
vertical-align: top;
}

body{
//font-size: 62.5%;
font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
line-height:1.4;
color:#333;
background:#fff;
overflow-y: scroll;
}

/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
body{
min-width: 320px;
}
}

a:link,
a:visited,
a:active{
color:#333;
text-decoration:none;
}

a:hover{
color:#069;
text-decoration:none;
}

ul,ol{
list-style: none;
}

/*clearfix*/
.clearfix:after{  
visibility:hidden;/*見えなくする*/ 
height:0;/*見えなくする*/
display: block;/*block要素にする*/
font-size: 0;  
content: " ";  
clear: both;  

}  
* html .clearfix             { zoom: 1; } /* IE6 */  
*:first-child+html .clearfix { zoom: 1; } /* IE7 */


/*Sasaki背景指定*/
div#container {
	width: 100%;
	height: 100%;
//	padding-top: 20px;
//	background: url(../img/bg_top.jpg) repeat-x top left;
}

.input-btn {
//margin-top: 20px;
}

.mt20 {
margin-top: 20px;
}

.entry-input ul {
  display: block;
  height: 50px;
}

.entry-input li {
  margin-top: 10px;
  float: left;
}

.entry-input ul.plost {
  display: block;
}

.plost li {
  margin-top: 0px;
  float: left;
}

.entry-input span {
  font-size: 0.8em;
}

.cap {
  width: 30%;
}


.butarea {
width: 35%;
}

.join-input ul{
clear: both;
margin-bottom: 10px;
display: table;
}

#kiyaku{
overflow: scroll;
width: 100%;
height: 200px;
border-style: solid;
border-width: 1px;
padding: 0 5px;
}

.entdata{
//padding-bottom: 10px;
}

li.name{
float: left;
margin-right: 10px;
//padding-bottom: 10px;
}

.bselect{
//padding-bottom: 10px;
}

.join-btn{
clear: both;
padding-top: 20px;
}

#test-answer{
margin-top: 10px;
padding-bottom: 10px;
margin-bottom: 5px;
border-bottom: 1px solid #CCC;
}

#test-answer li {
margin-top: 5px;
display: inline-block;
}


.button {
width: 80px;
height: 25px;
margin: auto;
cursor: pointer;
}

.button2 {
//width: 80px;
border-radius: 0.3em;
height: 25px;
margin: auto;
cursor: pointer;
padding: 1px 12px;
background: azure;
box-shadow: 3px 3px 5px #bebcbc;
border: 1px solid #dff3f5;
}


#test-answer .button {
width: 40px;
height: 25px;
margin-right: 20px;
}

#result {
display:none;
}

#result img{
margin-bottom: 15px;
}

#next-test li {
margin-top: 5px;
display: inline-block;
}

#next-test .button {
margin-right: 10px;
}

/*Sasaki背景指定*/


p,dd{
font-size:1.2em;
}

/*footerの背景指定*/
html{
background:#dedede;
}

.nonpc{
display: none;
}

.pc{
display:block;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
.nonpc{
display:block;
}
.pc{
display:none;
}
}

/*==================
header
====================*/

#header{
width:100%;
  background: url(../img/bg_top.png) repeat-x top left;
//background:url(../images/header_bg.gif) repeat-x left bottom;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#header{
background:none;
}
}

#header_top{
padding:25px 0;
width:90%;
margin:0 auto;
} 

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#header_top{
width:100%;
} 
}

/*header左側の設定*/

#logogroup{
  //width:70%;
  //float:left;
  text-align: center;
}

#logogroup h1{
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#logogroup{
width:80%;
padding-left:20px;

} 
}
/*スマートフォンのウインドウサイズ（928px）以下の場合の指定*/
@media screen and (max-width: 928px){
#logogroup{
width:90%;
padding: 0 10px;
}
}

.nav {
float:right;
}


/*header右側の設定*/

#go_home {
  position: absolute;
  width: 100%;
  top: 5px;
}

#home_icon {
  width:160px;
  float: right;
}

#home_icon img{
width:100%;
}

#home_icon p{
    position: absolute;
    top: 40px;
    right: 20px;
    font-size: 1.5em;
    font-weight: bold;
    color: #FFFFFF;
}

#subnav{
width:260px;
float:right;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#subnav{
width:200px;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#subnav{
width:200px;
margin: 15px 10px 0;
float: left;
}
}

#subnav li{
float:left;
font-size:1.1em;
}

#subnav li.sitemap{
//background:url(../images/icon_sitemap.gif) no-repeat 0 2px;
padding:0 0 0 15px;
margin:0 24px 0 0;
}

#subnav li.rss{
//background:url(../images/icon_rss.gif) no-repeat 0 1px;
padding:0 0 0 16px;
}

/*Sasaki*/
.title{
font-size:1.5em;
text-shadow: 1px 2px 3px #ffffff;
}

.title2 {
display: none;
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
.title{
font-size:1.2em;
text-shadow: 1px 2px 3px #ffffff;
}
.title2{
display: block;
font-size:1.2em;
text-shadow: 1px 2px 3px #ffffff;
}
.title span{
display: none;
}
}

/*Sasaki*/

/*グローバルナビゲーション*/

#nav{
width:960px;
margin:0 auto;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#nav{
width:768px;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#nav{
width:100%;
}
}

#nav li{
float:left;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#nav li{
padding-bottom: 10px;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#nav li{
float:left;
padding-bottom: 20px;
padding-left: 10px;
}
}


/*==================
g_nav
====================*/
#g_nav {
  text-align: right;
}

#g_nav span{
  font-size: 1rem;
}

.update_but {
  border: 0;
  line-height: 2;
  padding: 0 20px;
  font-size: 1rem;
  text-align: center;
  color: #fff;
  text-shadow: 1px 1px 1px #000;
  border-radius: 10px;
  background-color: rgba(0, 88, 220, 1);
  background-image: linear-gradient(to top left,
                                    rgba(0, 0, 0, .2),
                                    rgba(0, 0, 0, .2) 30%,
                                    rgba(0, 0, 0, 0));
  box-shadow: inset 2px 2px 3px rgba(255, 255, 255, .6),
              inset -2px -2px 3px rgba(0, 0, 0, .6);
}

.update_but:hover {
    background-color: rgba(255, 0, 0, 1);
    cursor:pointer;
}

.update_but:active {
    box-shadow: inset -2px -2px 3px rgba(255, 255, 255, .6),
                inset 2px 2px 3px rgba(0, 0, 0, .6);
}

/*==================
contents
====================*/
#wrap {
  background: url(../img/bg_contents.jpg) repeat-x top left;
  border-top: 10pt solid #FFF;
  padding-top: 20px;
  min-width: 1380px;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#wrap {
  background: url(../img/bg_contents.jpg) repeat-x top left;
  border-top: 10pt solid #FFF;
  padding-top: 20px;
  min-width: 100%;
}
}

/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#wrap {
  background: url(../img/bg_contents.jpg) repeat-x top left;
  border-top: 10pt solid #FFF;
  padding-top: 20px;
  min-width: 100%;
}
}

#contents{
width:80%;
margin:0 auto;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#contents{
width:100%;
//width:768px;
margin-left:5px;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#contents{
width:100%;
margin-left:5px;
}
}


.schcity_choice{
  padding: 0 20px 20px;
}

.choicebutarea {
width: 20%;
}

#top_info{
width:70%; 
float:left;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#top_info{
width:100%;
margin: 0 auto;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#top_info{
width:100%;
}
}

#info{
width:70%; 
//float:left;
margin: auto;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#info{
width:100%;
margin: 0 auto;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#info{
width:100%;
}
}

#ent_wrap{
  width:70%; 
  margin: auto;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#ent_wrap{
  width:100%;
  margin: 0 auto;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#ent_wrap{
  width:100%;
}
}

.slide_bg01 {
    height: 330px;
    position: relative;
}


.slick-center{
//  margin-right:10px;
//  margin-left:10px;
}


#mess01 {
//  width:100%;
//  padding:0 20px 30px;
  padding:0 20px;
  font-size: 1em;
    height: 100%;
    position: absolute;
    left: 0px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 999;
    border: solid 2px #fff
}

#mess01 p{
  font-size: 1.7em;
  color: #FFF;
  text-shadow: 3px 3px 3px #000000;
}

/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#mess01 p{
  font-size: 1.5em;
  color: #FFF;
  text-shadow: 3px 3px 3px #000000;
}
}

.slider-wrap {
//opacity: 0.7;
background-color: #FFF;
}

.slider {
//width: 90%;
}

.slick-slide{
    margin: 0 5px;
}

.slick-slide:not(.slick-center) {
  -webkit-filter: opacity(50%);
  -moz-filter: opacity(50%);
  -o-filter: opacity(50%);
  -ms-filter: opacity(50%);
  filter: opacity(50%);
  transition: 0.2s linear;
}

#news {
  margin-top:40px;
  padding: 0 20px;
}


/*テスト問題*/

#info .ttitle{
//background:url(../images/icon_01.gif) no-repeat 0 0;
font-size:1.5em;
padding:0 0 3px 0;
line-height:20px;
border-bottom:1px solid #CCC;
//margin:25px 26px 0 0;
margin-bottom: 10px;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#info .ttitle{
font-size:1.5em;
margin:25px 0 0 0;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#info .ttitle{
font-size:1.2em;
//background:url(../images/icon_01.gif) no-repeat 10px 0;
padding:0 0 3px 23px;
}
}

ul {
list-style:none;
}

span.selectnum {
float:left;
}

span.selectitem {
display: block;
margin-left: 7%;
font-size: 1.2em;
}

/*結果一覧　*/
#resultdsp ul{
display: inline-block;
width: 100%;
font-size:1.2em;
clear: both;
}

#resultdsp ul.resultline{
font-size:1.2em;
clear: both;
margin-bottom: 30px;
}

#resultdsp ul.resultline li{
}

#resultdsp ul.resultdit{
display: inline-block;
width: 100%;
font-size:1.2em;
clear: both;
margin-top: 20px;
}

#resultdsp ul.resultdit2"{
display: inline-block;
width: 100%;
margin-top: 10px;
}

#resultdsp ul li{
float: left;
}

.resulttitle1 {
font-weight: bold;
width: 25%;
//width: 9em;
float: left;
}
.resulttitle2 {
font-weight: bold;
width: 10%;
//width: 3em;
float: left;
}
.resulttitle3 {
font-weight: bold;
width: 30%;
//width: 9em;
float: left;
}

.resulttitle4 {
font-weight: bold;
float: left;
}

.resultitem1 {
width: 25%;
float: left;
}
.resultitem2 {
width: 10%;
//width: 3em;
float: left;
}
.resultitem3 {
width: 30%;
//width: 9em;
float: left;
}

.resultitem4 .button {
//width: 40px;
height: 25px;
float: left;
}

.resultitemdit {
width: 20%;
float: left;
}

select[type=hidden] {
display:none;
}

.ditopebut {
float: left;
}

/*イベント情報*/

#info h2{
//background:url(../images/icon_01.gif) no-repeat 0 0;
padding:0 0 3px 0;
line-height:29px;
border-bottom:1px solid #CCC;
//margin:25px 26px 0 0;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#info h2{
margin:25px 0 0 0;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#info h2{
//background:url(../images/icon_01.gif) no-repeat 10px 0;
padding:0 0 3px 23px;
}
}

#info h3{
font-size:1.3em;
//background:url(../images/icon_02.gif) no-repeat 0 2px;
//padding-left:18px;
margin:20px 0 10px 0;
}

/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#info h3{
//background:url(../images/icon_02.gif) no-repeat 10px 2px;
padding-left:28px;
}
}

.section{
//width:316px;
//float:left;
//margin-right:26px;
margin-top: 20px;
}

/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
.section{
width:100%;
margin-right:0;
}
.section p{
	padding-right:10px;
}
}


#didcap {
font-size:0.8em;
color:mediumvioletred;
}

/*更新情報*/

/*Sasaki*/
#test img{
//float:left;
margin-right:10px;
border:1px solid #ccc;
padding:1px;
//width: 100%;
max-width: 100%;
height: auto;
}

/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#test img{
margin:5px 10px;
width:100%;
}
}

#test ul{
  margin-top: 20px;
}

/*Sasaki*/
/*
#event img{
float:left;
margin-right:10px;
border:1px solid #ccc;
padding:1px;
}
*/
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
/*
@media screen and (max-width: 768px){
#event img{
margin:0 10px;
}
}
*/

#news dt{
font-size:1.1em;
font-weight:bold;
//background:url(../images/icon_02.gif) no-repeat 0 2px;
margin:20px 0 10px 0;
}

/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#news dt{
margin:20px 10px 10px;
}
}

#news dt span{
font-weight:normal;
padding-left:20px;
}


#news dd{
padding-bottom:12px;
padding-left:18px;
border-bottom:1px dashed #ccc;
//margin-right:26px;
font-size:1em;
}


/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#news dd{
padding:0 10px 12px;
}
}



/*==================
sidebar
====================*/
#sidebar{
width:30%;
float:right;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#sidebar {
width:100%;
margin: 0 auto;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#sidebar{
width:100%;
}
}


/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#sideber,
#sidebox{
	width:768px;
	float:left;
}
}

/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#sideber,
#sidebox{
	width:100%;
}
}

#event {
  padding:0 20px;
}


#event h2{
//margin-top:25px;
//background: url(../images/bg_title_01.gif) repeat-x;
  height: 40px;
}

#dataentry {
  padding:0 20px;
}

#dataentry h2{
  height: 40px;
}

/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#sidebar h2{
padding-left:25px;
text-align:center;
margin:0 10px;
}
}

#sidebar p{
border:1px solid #ccc;
border-top:none;
padding:10px 7px 10px 10px;
font-size: 1em;
}

/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#sidebar p{
margin:0 10px;
}
}

#bnrarea{
margin-top:20px;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#bnrarea{
margin-top:24px;
float:left;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#bnrarea{
text-align:center;
width: 100%;
}
}

#bnrarea li{
margin-bottom:10px;
border:1px solid #ccc;
padding:1px;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#bnrarea li{
margin:20px 30px 10px 0;
float:left;
}
#bnrarea li:last-child{
	margin-right:0;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#bnrarea li,
#bnrarea li:last-child{
margin:20px auto;
width:231px;
float: none;
}
}

/* Sasaki */
#gotop {
padding-top: 20px;
}

/*==================
footer
====================*/

#footer{
width:100%;
margin:0 auto;
background:#dedede;
margin-top:30px;
text-align:right;
}

#footer_inner{
width:90%;
margin:0 auto;
font-size:0.8em;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#footer_inner{
width:100%;
}
}
/*スマートフォンのウインドウサイズ（768px）以下の場合の指定*/
@media screen and (max-width: 768px){
#footer_inner{
width:100%;
}
}

#footer_inner address{
padding:15px 0 4px;
font-size:1.2em;
}

/*タブレットのウインドウサイズ（1024px）以下の場合の指定*/
@media screen and (max-width: 1024px){
#footer_inner address{
padding:15px 15px 4px;
}
#footer_inner p{
padding:0 15px 15px;
font-size:1.2em;
}
}

#footer_inner p{
font-size:1em;
}

#messarea {
  text-align: center;
}

#mess02 {
//text-align: left;
    width: 75%;
//    margin: auto;
    margin: 30px auto;
}

#mess02 dl{
//    text-align: left;
    margin: 50px auto;
    line-height: 2.5em;
}

#mess02 dt{
    font-size: 1.2em;
    font-weight: 700;
}

#mess02 dd{
}

.home-btn input[type=button] {
    font-size: 14pt;
    width: 200px;
    height: 40px;
    background-color: ghostwhite;
    cursor: pointer;
}

#enq_passreset {
  text-align: center;
  display: inline-block;
}

#enq_passreset ul{
  margin-bottom: 30px;
}

#enq_passreset li{
  font-size: 1.5em;
  padding-right: 20px;
}

#enq_passreset input[type=text] {
    font-size: 1.2em;
}

#retry_passreset {
  text-align: center;
  display: inline-block;
}

#retry_passreset ul{
  margin-bottom: 30px;
}

#retry_passreset li{
  font-size: 1.2em;
  padding-right: 20px;
}

#retry_passreset input[type=text] {
    font-size: 1em;
}

#retry_passreset input[type=password] {
    font-size: 1em;
}

.lv1 {
  width: 25%;
  text-align: right;
}

.reset-btn input[type=button] {
    font-size: 14pt;
    width: 200px;
    height: 40px;
    background-color: ghostwhite;
    cursor: pointer;
}
