@charset "UTF-8";
html,body,section,article,main,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;box-sizing:border-box;}
table{border-collapse:collapse;border-spacing:0;box-sizing:border-box;}}img{border:0}ul,ol,dl{padding:0;margin:0;list-style:none}
body{font-size: 14px; color:#222222;background-color:#fff;text-align:center;
font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;}
h1,h2,h3,h4,main,section,div,p,ul,ol,dl{display:block}h1,h2,h3,h4,ul,ol,dl,a{overflow:hidden}
ul,ol,dl{list-style:none}ul li,ul dt,ul dd,ol li,ol dt,ol dd,dl li,dl dt,dl dd{padding:0;margin:0}
a{color:#0059B2;text-decoration:none}
a:hover {color: #0064C8; text-decoration: underline;}
a:focus {color: #0064C8; text-decoration: underline;}

/* ==========================
   HEADER
============================ */
header { width:100%; }
.haed-inner { margin: 0 auto; }
.user-name { float: right; }

/* header */
#top-head {
  width: 100%;
  position: absolute;
  line-height: 1;
}
#top-head,
#top-head a {
  color: #fff;
  text-decoration: none;
}
#top-head .mobile-head {
  position: relative;
  z-index: 900;
}
#top-head .head-logo {
  background-image: url(../images/logo.png);
}
#top-head .head-nologo {
  background-image: url(../images/nologo.png);
}
#top-head .head-logo,
#top-head .head-nologo {
  float: left;
  height: 50px;
  line-height: 1;
  margin: 0;
  padding: 0;
  background-position: center center;
  background-repeat: no-repeat;
}
#top-head .head-logo a,
#top-head .head-nologo a {
  width: 100%;
  height: 50px;
  display: inline-block;
  text-indent: -999em;
}

/* G navi */
#main-nav .gnav { overflow:visible; }

#main-nav .gnav > li > a {
  box-sizing: border-box;
  display: block;
  background-repeat: no-repeat;
}

@media (max-width: 768px) {
  #top-head,
    .haed-inner {
      width: 100%;
      padding: 0;
  }
  #top-head {
    height: 50px;
    top: 0;
    background: url(../images/bg-stripe.png);
  }
  #top-head .mobile-head {
    height: 50px;
  }

  #top-head .head-logo,
  #top-head .head-nologo {
    width: 27.474%;
    min-width: 150px;
    margin-left: 5px;
    background-size: 100% auto;
  }
  #top-head .head-logo a,
  #top-head .head-nologo a {
    width: 100%;
    height: 50px;
  }

  .haed-inner .user-name {
    display: inline-block;
    position: absolute;
    top:0;
    right: 58px;
    line-height: 50px;
  }

  .gnav > li > a {
    padding-left: 55px;
    line-height: 44px;
    background-position: 7px center;
    background-repeat: no-repeat;
  }
  .gnav a.gnav-home { background-image: url(../images/icon-home.png);}
  .gnav a.gnav-entry { background-image: url(../images/icon-entry.png);}
  .gnav a.gnav-score { background-image: url(../images/icon-score.png);}
  .gnav a.gnav-record { background-image: url(../images/icon-record.png);}
  .gnav a.gnav-info { background-image: url(../images/icon-info.png);}
  .gnav a.gnav-users { background-image: url(../images/icon-users.png);}

/* all nav */
#main-nav {
  width: 100%;
  z-index: 9900;
  line-height: normal;
  display: block;
}
.gnav {
  margin: 0; padding: 0;
  text-align: center;
  display: none;
  border-top:1px solid rgba(255,255,255,0.8) ;
}
.gnav li {
  list-style: none;
  display: inline-block;
  margin: 0; padding: 0;
  position: relative;
  line-height: normal;
  vertical-align: middle;
  border-bottom:1px solid rgba(255,255,255,0.8);
}
.gnav li a {
  display: block;
  text-decoration: none;
  color: #fff;
  font-size: inherit;
  box-sizing: border-box;
  background-color: #0066ff;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  transition: all .3s ease-out;
}

/* hide the link until viewport size is reached */
a.meanmenu-reveal {display: none;}

/* when under viewport size, .mean-container is added to body */
.mean-container .mean-bar {
  float: left;
  width: 100%; height: 0;
  position: relative;
  padding:0;
  z-index: 999999;
}

.mean-container a.meanmenu-reveal {
  width: 50px;height: 50px;
  padding: 0;
  position: absolute;
  top: -50px; right: 0;
  cursor: pointer;
  color: #fff;
  text-decoration: none;
  font-size: 18px;
  line-height: 50px;
  display: block;
  text-align: center;
}

.mean-container a.meanmenu-reveal span {
  display: block;
  background: #fff;
  height: 3px;
  margin-top: 3px;
}

.mean-container .mean-nav {
  float: left;
  width: 100%;
}

.mean-container .mean-nav ul {
  width: 100%;
  padding: 0; margin: 0;
  list-style-type: none;
}

.mean-container .mean-nav ul li {
  position: relative;
  float: left;
  width: 100%;
}

.mean-container .mean-nav ul li a {
  display: block;
  margin: 0;
  text-align: left;
  color: #fff;
  box-sizing: border-box;
  text-decoration: none;
  text-transform: uppercase;
}

.mean-container .mean-nav ul li li a {
  width: 100%;
  padding: 0 0 0 25px;
  line-height: 40px;
  text-shadow: none !important;
  visibility: visible;
}

.mean-container .mean-nav ul li.mean-last a {
  border-bottom: none;
  margin-bottom: 0;
}

.mean-container .mean-nav ul li a.mean-expand {
  width: 44px; height: 44px;
  padding: 0; margin-top: 0;
  text-align: center;
  position: absolute;
  top: 0; right: 0;
  z-index: 2;
  background-color: rgba(255,255,255,0.1);
  border: none !important;
  border-left: 1px solid rgba(255,255,255,0.2) !important;
  background-image: url(../images/arrow-down.png);
  background-repeat: no-repeat;
  background-position: center center;
}
.mean-container .mean-nav ul li a.mean-expand.mean-clicked {
  background-image: url(../images/arrow-up.png);
}

.mean-container .mean-push {
  float: left;
  width: 100%;
  padding: 0; margin: 0;
  clear: both;
}

.mean-nav .wrapper {
  width: 100%;
  padding: 0; margin: 0;
}

/* Fix for box sizing on Foundation Framework etc. */
.mean-container .mean-bar, .mean-container .mean-bar * {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.mean-remove {display: none !important;}

  .gnav li .gnav-child {
      background-color: #0066ff;
  }
  .gnav li .gnav-child li {border-bottom: none;}
  .gnav li .gnav-child li a {
      border-top:1px solid rgba(255,255,255,0.8) ;
      background-color: #2288ff;
  }

  .mean-nav .gnav > li > .nav-score > li {
      width: 50%;
      display: inline-block;
      box-sizing:border-box;
  }
  .mean-nav .gnav > li > .nav-score > li:nth-child(even) {
      border-left: 1px solid rgba(255,255,255,0.8);
  }

}
@media (min-width: 769px) {
  header {
      background: #fff url(../images/bg-stripe.png) repeat-x left top;
  }
  #top-head {
      height: 130px;
      top: 0;
      margin: 0 auto ;
  }
  .haed-inner {
      width: 1000px;
  }
  #top-head .mobile-head {
      height: 50px;
  }
  #top-head .head-logo,
  #top-head .head-nologo {
      width:211px;
  }
  #top-head .head-logo a,
  #top-head .head-nologo a {
      background-size: 100%;
  }

  #nav-toggle {display: none;}

  #top-head .user-name {
      display: inline-block;
      line-height: 50px;
      font-size: smaller;
  }

  #main-nav {
      overflow: visible;
      display: block;
  }
  #main-nav .gnav {
      width: 1000px;
      height: 56px;
      margin: 0 auto;
      padding: 12px 0 0 0;
  }
  .gnav > li {
      width: 150px;
      height: 56px;
      display: inline-block;
      margin: 0 6px;
      border-radius: 2px;
      position: relative;
      background: #1e69de;
      background: -moz-linear-gradient(top,  #007FFF 0%, #47A3FF 49%, #77bbFF 50%, #66aaFF 100%);
      background: -webkit-linear-gradient(top,  #007FFF 0%,#47A3FF 49%,#77bbFF 50%,#66aaFF 100%);
      background: linear-gradient(to bottom,  #007FFF 0%,#47A3FF 49%,#77bbFF 50%,#66aaFF 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#007FFF', endColorstr='#66aaFF',GradientType=0 );
  }
  #main-nav .gnav > li:hover,
  #main-nav .gnav > li.active {
      background: #3388dd;
      background: -moz-linear-gradient(top,  #2299FF 0%, #66CcFF 49%, #99DdFF 50%, #88DdFF 100%);
      background: -webkit-linear-gradient(top,  #2299FF 0%,#66CcFF 49%,#99DdFF 50%,#88DdFF 100%);
      background: linear-gradient(to bottom,  #2299FF 0%,#66CcFF 49%,#99DdFF 50%,#88DdFF 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2299FF', endColorstr='#88DdFF',GradientType=0 );
  }

  .gnav > li > a {
      width:150px;
      height: 56px;
      border: 1px solid #007FFF;
      text-indent: -999em;
      background-position: center center;
  }
  .gnav a.gnav-home { background-image: url(../images/gnav-home.png); }
  .gnav a.gnav-entry { background-image: url(../images/gnav-entry.png);}
  .gnav a.gnav-score {background-image: url(../images/gnav-input-score.png);}
  .gnav a.gnav-record {background-image: url(../images/gnav-record.png);}
  .gnav a.gnav-info {background-image: url(../images/gnav-info.png);}
  .gnav a.gnav-users {background-image: url(../images/gnav-users.png);}

  /*  nav - child */
  .gnav > li > .gnav-child {
    overflow: hidden;
    width:150px;
    height: 0;
    z-index:100;
  }
  .gnav > li > .gnav-child > li,
  .gnav > li > .gnav-child > li > a {
      height: 0;
      -moz-transition: .3s;
      -webkit-transition: .3s;
      -o-transition: .3s;
      -ms-transition: .3s;
      transition: .3s;
  }

  .gnav > li:hover > .gnav-child {/* opend */
      height: auto;
      overflow: visible;
      position: absolute;
      top:56px;
      left: 0;
  }
  .gnav > li:hover > .gnav-child > li {
      width: 150px; height: auto;
      padding: 0; margin: 0;
      border-left: 1px solid #0066FF;
      border-right: 1px solid #0066FF;
      border-bottom: 1px solid #0066FF;
  }
  .gnav > li:hover > .gnav-child > li > a {
      height: auto;
      display: block;
      padding: 10px 5px 9px 5px;
      line-height: 1.25;
      color: #222 !important;
      background-color:rgba(255,255,255,0.9);
  }
  .gnav > li:hover > .gnav-child > li > a:hover {
      color: #fff !important;
      background-color:rgba(0,100,255,0.9);
  }

  .dd-toggle {display: none !important;}
}


/* ==========================
   Main  (Contents Area)
============================ */
main {
  width: 100%;
  display: block;
  z-index: 0;
}

.page-title {
  color: #fff;
  background-color: #007FFF;
  margin-bottom: 30px;
}
.page-title span {
  display: block;
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  background-position: 8px center;
  background-repeat: no-repeat;
  text-shadow: 1px 1px 3px rgba(0,50,200,0.4);
}

main section {
  text-align: left;
}

main section .sec-ttl {
  width:100%;
  color: #fff;
  background-color: #ccc;
  margin-bottom: 20px;
}
main section .sec-ttl span {
  display: block;
  margin: 0 auto;
  text-align: left;
  line-height: 40px;
  padding-left: 55px;
  background-repeat:no-repeat;
  background-position: 10px center;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
}

main section .table-caption {
  font-size: 16px;
  font-weight: bold;
  margin: 0 auto 5px auto;
}

@media (max-width: 768px) {
  main {
      padding-top: 50px;
  }

  .page-title span {
      font-size: 18px;
      line-height: 50px;
      padding-left: 60px;
  }

  main section {
      width: 100%;
      padding-bottom: 30px;
  }

  main section .sec-ttl span {
      font-size: 16px;
  }

  main section .sec-inner,
  main section .content-inner {
      width: 92%;
      margin-left: auto;
      margin-right: auto;
  }

  main .table-caption {
      width: 92%;
  }
}
@media (min-width: 769px) {
  main {
      padding-top: 130px;
  }

  .page-title span {
      font-size: 22px;
      width: 1000px;
      line-height: 54px;
      padding-left: 50px;
  }

  main section {
      width: 1000px;
      margin: 0 auto;
      padding-bottom: 40px;
  }

  main section .sec-ttl span {
      font-size: 18px;
  }

  main section .sec-inner {
      padding: 0 20px;
  }

  main section .table-caption {
      width: 100%;
      max-width: 1000px;
  }
}

/*   Topic Path
-------------------------------------------- */
.topic-path {
  width: 100%;
  background-color: #66B3FF;
}
.topic-path ol {
  text-align: left;
}
.topic-path ol li {
  color: #fff;
  padding-right: 0.5em;
  display: inline-block;
}
.topic-path ol li a { color: #fff; }

@media (max-width: 768px) {
/*  Topic Path */
  .topic-path {
      padding-left: 5px;
      padding-right: 5px;
      border-top: 1px solid #fff;
      margin-bottom: 1px;
  }
  .topic-path ol li {
      font-size: 11px;
      line-height: 25px;
  }

  .topic-path ol li:after {
      content: ">";
      padding-left: 5px;
      padding-right: 4px;
  }

  .topic-path .home {
      padding-left: 24px;
      background: url(../images/icon-tp-home.png) no-repeat left center;
      background-size: 20px auto;
  }
  .topic-path ol li:last-child:after {
      display: none;
  }
}
@media (min-width: 769px) {
/*  Topic Path */
  .topic-path {
      height: 36px;
  }
  .topic-path ol {
      width: 1000px;
      margin: 0 auto;
  }
  .topic-path ol li {
      line-height: 36px;
      position: relative;
      font-size: 12px;
      margin-right: 25px;
  }
  .topic-path ol li:after,
  .topic-path ol li:before {
      left: 100%;
      top: 50%;
      border: solid transparent;
      content: " ";
      height: 0;
      width: 0;
      position: absolute;
      pointer-events: none;
  }
  .topic-path ol li:after {
      border-color: rgba(102, 179, 255, 0);
      border-left-color: #66B3FF;
      border-width: 18px;
      margin-top: -18px;
  }
  .topic-path ol li:before {
      border-color: rgba(255, 255, 255, 0);
      border-left-color: #ffffff;
      border-width: 19px;
      margin-top: -19px;
  }
  .topic-path .home {
      padding-left: 30px;
      background: url(../images/icon-tp-home.png) no-repeat 3px center;
      background-size: 20px auto;
  }

  .topic-path ol li:last-child:before,
  .topic-path ol li:last-child:after {
      display: none;
  }
}

/*  Page top */
p.pagetop {
  display: none;
  position: fixed;
  right: 15px;
  bottom: 60px;
  width:62px;
  height: 45px;
}
p.pagetop a {
  display: inline-block;
  width:62px;
  height: 45px;
  text-indent: -999em;
  background: url(../images/btn-pagetop.png);
}
p.pagetop a:hover { opacity: 0.8;}


/* ==========================
   Footer
============================ */
footer {
  width: 100%;
  color: #fff;
  background: #fff url(../images/bg-stripe.png) repeat left top;
}
footer.fixed {
  position: fixed;
  left: 0;
  bottom:0;
}

@media (max-width: 768px) {
  footer {
      font-size: 10px;
      line-height: 1.24;
      padding: 8px;
  }
}
@media (min-width: 769px) {
  footer {
      font-size: 12px;
      line-height: 44px;
  }
}


/* ============================
    COMMON
============================== */
/* TEXT */
.small {font-size: smaller;}
.txt-red {color: #d00;}
.txt-orange {color: #FF8800;}
.txt-right { text-align: right;}

/*  font awesome*/
i[class^=fo], i[class^=fa] {
  margin-right: 0.5em;
}

/*  Margin Cntorol */
.mgn-btm0 {margin-bottom: 0 !important;}
.mgn-btm5 {margin-bottom: 5px !important;}
.mgn-btm10 {margin-bottom: 10px !important;}
.mgn-btm15 {margin-bottom: 15px !important;}
.mgn-btm20 {margin-bottom: 20px !important;}
.mgn-btm30 {margin-bottom: 30px !important;}
.mgn-btm40 {margin-bottom: 40px !important;}
.mgn-btm50 {margin-bottom: 50px !important;}

/*  Table */
.table {
  display: table;
}

.table .table-row {
  display: table-row;
}
.table .th,
.table .td {
  display: table-cell;
  vertical-align: top;
}
.table .th {
  padding: 5px;
  white-space: nowrap;
}
.table .th-inner {
  width: 100%;
  display: inline-block;
  box-sizing: border-box;
  color: #222;
  font-weight: bold;
  padding: 0 0.5em;
  background-color: #73B9FF;
  line-height: 36px;
}

.table .td input[type="text"],
.table .td input[type="password"],
.table .td input[type="date"],
.table .td input[type="number"] {
  padding-left: 5px;
  padding-right: 5px;
  border: 1px solid #999;
  border-radius: 2px;
  line-height: 34px;
  box-sizing: border-box;
}
.table .td input[type="text"],
.table .td input[type="password"]
{
  min-height: 34px;
}

.table .td textarea {
  padding: 5px;
  border: 1px solid #999;
  border-radius: 2px;
  line-height: 1.5;
  box-sizing: border-box;
  margin-bottom: 5px;
}

.table .td input[type="checkbox"],
.table .td input[type="radio"] {
  margin-right: 6px;
}
.checked-css {
  checked : checked;
}
.table .td select {
  min-width: 120px;
  height: 36px;
  padding-left: 5px;
  padding-right: 0;
  border: 1px solid #999;
  border-radius: 2px;
  box-sizing: border-box;
  background-color: #fff;
}

.table .td .form-item-txt {
  padding: 0 5px;
  line-height: 36px;
}

.table .td label {
  display: inline-block;
  line-height: 36px;
}
.table .td label:first-of-type {
  padding-right: 1em;
}

.search-items-wrap .table {border: none;}

/*  Table ( Data-Output ) */
.table-scroll {
  overflow: scroll;
  margin-bottom: 20px;
}
.examineeedit .table-scroll {
  overflow:inherit;
  overflow-x:scroll;
}
/*スクロールバー全体*/
::-webkit-scrollbar {
  width: 7px;
}

/*スクロールバーの軌道*/
::-webkit-scrollbar-track {
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, .1);
}

/*スクロールバーの動く部分*/
::-webkit-scrollbar-thumb {
  background-color: rgb(42, 186, 215);
  border-radius: 10px;
  box-shadow:0 0 0 1px rgba(255, 255, 255, .3);
}
.data-output,
.search-result {
  width: 100%;
  background-color: #fff;
  border-top: 1px solid #999;
  border-left: 1px solid #999;
}
.data-output-wide,
.search-result-wide {
  width:120%;
}
.data-output th,
.data-output td,
.search-result th,
.search-result td {
  white-space: nowrap;
  line-height: 1.429;
  padding: 7px 5px;
  border-right: 1px solid #999;
  border-bottom: 1px solid #ccc;
  vertical-align: middle;
}
.data-output tr:nth-child(even) td,
.search-result tr:nth-child(even) td{
  background-color: #DdF3FF;
}
.data-output tr.selected td {
  color: #000;
  background-color: #99ccFF;
}

.data-output .arrow-selected {
  display: inline-block;
  width: 15px;
  height: 20px;
  background: url(../images/icon-arrow-selected.png) no-repeat center bottom;
}

.base-arrow-selected {
  display:none;
  width: 15px;
  height: 20px;
  background: url(../images/icon-arrow-selected.png) no-repeat center bottom;
}

.data-output th,
.search-result th {
  color: #fff;
  font-weight: normal;
  text-align: center;
  background-color: #777;
}

.marksallList .data-output.marksresultexport tr td {
  text-align:left;
  padding-left:10px;
}
.marksallList .data-output.marksresultexport tr td:nth-child(3),
.marksallList .data-output.marksresultexport tr td:nth-child(6),
.marksallList .data-output.marksresultexport tr td:nth-child(8){
  text-align:right;
  padding-right:10px;

}
.data-output td { min-width: 2em;}

.table-scroll .data-output tr td:nth-of-type(1),
.table-scroll .data-output tr td:nth-of-type(2) {
  text-align: center;
  width: 2em;
}


.search-result td { text-align: center; }

.table-scroll .search-result tr td:nth-of-type(1){
  width: 2em;
}

/*  Button */
form [class^=btn-] {
  font-size: 14px;
  text-align: center;
  display: inline-block;
  border-radius: 4px;
  outline: none;
  border: none;
  font-weight: bold;
}

form .btn-orange {
  color: #402000;
  background-color: #FF9900;
}
form .btn-orange:hover {
  background-color:#FFaa00;
}
form .btn-orange:focus {
  background-color:#FFaa00;
}
form .btn-orange:disabled {
  opacity: 0.4;    /* カラーフィルタ効果の度合いを指定 */
  color: #402000;
  background-color: #FF9900;
}

form .btn-blue {
  color: #fff;
  background-color: #0077FF;
}
form .btn-blue:hover {
  background-color:#0099FF;
}
form .btn-blue:focus {
  background-color:#0099FF;
}
form .btn-blue:disabled {
  opacity: 0.4;    /* カラーフィルタ効果の度合いを指定 */
  color: #fff;
  background-color: #0077FF;
}

form .gray-btn-area .btn-blue {
  line-height: 30px;
  padding-left:1em;
  padding-right:1em;
  margin-left: 0;
  margin-right: 5px;
}
form .gray-btn-area .btn-blue:hover {
  background-color:#0099FF;
}
form .gray-btn-area .btn-blue:focus {
  background-color:#0099FF;
}
form .gray-btn-area .btn-blue:disabled {
  opacity: 0.4;    /* カラーフィルタ効果の度合いを指定 */
  color: #fff;
  background-color: #0077FF;
}

.btn-logout {
  color: #0077FF;
  background-color: #fff;
  font-size: 12px;
  text-align: center;
  border-radius: 4px;
  outline: none;
  border: none;
  font-weight: bold;
}

.btn-logout:hover {
  color: #0099FF;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .8);
}
.btn-logout:focus {
  color: #0099FF;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .8);
}

.btn-ss {
  line-height: 30px;
}
.btn-s {
  min-width: 130px;
  line-height: 36px;
}
.btn-m {
  width:100%;
  min-width: 260px;
  line-height: 40px;
}
.btn-l {
  width:100%;
  max-width: 320px;
  line-height: 44px;
}

[class^=btn-] i[class^=fo],
[class^=btn-] i[class^=fa] {
  font-size: larger;
}

/*  Button  Area */
.btm-btn-area {
  text-align: center;
  margin-bottom: 40px;
}

.gray-btn-area {
  padding: 10px;
  margin-bottom: 40px;
  border: 1px solid #ccc;
  background-color: #eee ;
}

/*  Form */
.form-w60 { width: 60px; }
.form-w80 { width: 80px; }
.form-w100 { width: 100px; }
.form-w120 { width: 120px; }
.form-w160 { width: 160px; }
.form-w180 { width: 180px; }

/*  Mordal Window */
.modal-window {
  width: 92%;
  height: 94%;
  display: none;
  position: fixed;
  top: 10px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: #FFF;
  border-radius: 10px !important;
  /* overflow:scroll; */
  box-shadow: 0 0 8px rgba(0,0,0,.3);
  transition: margin-top 0.3s ease, height 0.3s ease;
  max-width: 100% !important;
}

.modal-window .mdl-win-close {
   width: 30px;
   height: 30px;
   padding: 0;
   text-align: center;
   background-color: #fff;
   line-height: 30px;
   position: absolute;top:10px;
   border: none; outline: none;
   border-radius: 50%;
   font-size: 18px;
}
.modal-window .mdl-win-close i { margin-right: 0;}

.modal-window .search-items-wrap,
.modal-window .table-scroll {
      width:90%;
	  margin-left: auto;
   	  margin-right: auto;
}

.modal-window .inport-wrap {
   margin-left: auto;
   margin-right: auto;
}

.modal-window .inport-wrap p {
   text-align: center;
}

.modal-window .inport-wrap input[type=text] {
   padding-left: 5px;
   padding-right: 5px;
   border: 1px solid #999;
   border-radius: 2px;
   line-height: 34px;
   box-sizing: border-box;
}

.modal-window .table-caption {
  font-size: 16px;
  font-weight: bold;
  margin: 0 auto 5px auto;
  text-align:left;
}


@media (max-width: 768px) {
.modal-window .inport-wrap .table {
      width: 100%;
      text-align: center;
   }

   .modal-window .inport-wrap p {
      padding-left: 10px;
      padding-right: 10px;
   }

  .modal-window .inport-wrap input[type=text] {
      width: 80%;
      max-width: 320px;
   }

}
@media (min-width: 769px) {
   .modal-window .inport-wrap {
      width:480px;
   }

   .modal-window .inport-wrap input[type=text] {
      width: 400px;
   }
   .modal-window .inport-wrap button {
      width: 50px;
   }
}

.modal-window .modal-title {
   color: #fff;
   background-color:#0077FF;
   box-sizing: border-box;
   padding: 0 5%;
   text-align: left;
   border-radius: 10px 0 0 0;
}
.modal-window .td { text-align: left; }

@media (max-width: 540px) {
  .hide-xs { display: none }

  .table.flex-item-full {
    display: block !important;
  }
  .table.flex-item-full .th,
  .table.flex-item-full .td {
    display: block !important;
  }
}

@media (max-width: 768px) {
  .hide-sp { display: none }

  .modal-window .modal-title {
    font-size: 16px;
    line-height: 50px;
    margin-bottom: 15px;
  }
  .modal-window .mdl-win-close {
    left: 90%;
  }
  .modal-window .search-items-wrap {
    margin-bottom: 13px;
  }
  .modal-window .table-scroll {
    height:350px;
    margin-bottom: 13px;
  }

  .modal-window .th{
    width:8.6em;
  }

  .table {
    margin-left: auto;
    margin-right: auto;
  }
  .table-scroll .table {
    min-width: 480px;
  }

  .table .th{
    padding: 5px ;
    white-space: nowrap;
  }
  .table .td {
    text-align: left;
    padding: 5px 5px 10px 5px;
    width: 65%;
  }

  .table .th .th-inner { margin-bottom: 5px; }
  .table .td input[type="text"],
  .table .td input[type="password"] {
    margin-bottom: 5px;
  }

  .search-items-wrap,
  .table-scroll, .note {
    width: 92%;
    margin-left: auto;
    margin-right:auto;
  }

  .table-scroll {
    max-height: 400px;
  }

  .padding-lr {
    padding-left: 15px;
    padding-right: 15px;
  }

  .form-w200, .form-w240 { width: 100%; }

  /* button */
  form [class^=btn-] {
    margin: 0 auto 10px auto;
  }

  form .btn-ss {
    margin-left: 4px;
  }

  .btm-btn-area { padding: 0 10px;}
  .gray-btn-area { text-align: center;}
}

@media (min-width: 769px) {
  .hide-pc { display: none }

  .modal-window .modal-title {
    font-size: 20px;
    line-height: 60px;
    margin-bottom: 20px;
  }
  .modal-window .mdl-win-close {
    left: 95%;
  }
  .modal-window .table-scroll,
  .modal-window .search-items-wrap {
    margin-bottom: 20px;
  }
  .modal-window .th {  width:10em; }

  .table .th{
    padding: 10px 5px 0 5px;
  }
  .table .td {
    padding: 10px 5px;
  }

  .table .th .th-inner { margin-bottom: 10px; }

  .table .td textarea {
    width: 73%;
    min-height: 120px;
  }

  .search-items-wrap {
    display:-webkit-box;
    display:-ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    -webkit-justify-content:space-between;
    justify-content: space-between;
    flex-wrap: wrap;
    border-top: 1px dotted #999;
  }
  .search-items-wrap .form-item {
    width: 50%;
    border-bottom: 1px dotted #999;
  }

  .table .td select {
    min-width: 175px;
  }

  .padding-lr {
    padding-left: 20px;
    padding-right: 20px;
  }

  .form-w200 { width: 200px; }
  .form-w240 { width: 240px; }


  /* button */
  form [class^=btn-] {
    margin: 0 10px ;
    padding:0 10px;
  }
}


/* Questions */
.questions-wrap {}

.questions-wrap .ttl-q {
   line-height: 34px;
   color: #0099Dd;
   padding: 0 5px;
   border-top:1px solid #0099Dd;
   border-bottom:1px solid #0099Dd;
   margin-bottom: 15px;
}
.questions-wrap .ttl-q small {
   font-weight: normal;
   padding-left: 6px;
}

.questions-wrap .q-item {
   text-align: center;
   padding-bottom: 15px;
}

.total-score {
   text-align: center;
   color: #fff;
   background-color: #0099Dd;
   line-height: 36px;
   margin-bottom: 20px;
}

/* -------------------------- */
.q-container {
   width: 200px;
   height: 150px;
   border: 1px solid #333;
   margin: 0 auto;
   position: relative;
}

.q-container .q-head {
   border-bottom: 1px solid #333;
   position: relative;
}
.q-container .q-score {
   width: 98px;
   height: 50px;
   padding: 10px 0 0 0;
   box-sizing: border-box;
}
.q-container .q-score small {
   display: block;
}

.q-container .q-head button {
   position: absolute;
   top:0;
   width: 34px;
   height: 50px;
   line-height: 50px;
   border: none;
   outline: none;
   font-size: 24px;
   border-left:1px solid #333;
   background-repeat: no-repeat;
   background-position: center center;
}
.q-container .q-head .switch-q-true {
   right:70px;
   color: #0066Dd;
   background-color: #BbEeFF;
   background-image: url(../images/icon-q-true.png);
}
.q-container .q-head .switch-q-vague {
   right:35px;
   color: #FF7700;
   background-color: #FFFF99;
   background-image: url(../images/icon-q-vague.png);
}
.q-container .q-head .switch-q-false {
   right:0;
   color: #FF2222;
   background-color: #FFccBb;
   background-image: url(../images/icon-q-false.png);
}

.q-container .q-answer {
   height: 98px;
   background-repeat: no-repeat;
   background-position: 25% center;
}
.q-container .q-answer.true {
   background-image: url(../images/answer-true.png);
}
.q-container .q-answer.vague {
   background-image: url(../images/answer-vague.png);
}
.q-container .q-answer.false {
   background-image: url(../images/answer-false.png);
}

.score {
   position: absolute;
   right: 5px;
   bottom: 5px;
   line-height: 30px;
   color: #0066Dd;
}
.q-container .score select {
   color: #0066Dd;
   font-size: 20px;
   height: 30px;
   padding-left: 5px;
   padding-right: 5px;
   margin-right: 3px;
   border: 1px solid #ccc;
   border-radius: 2px;
   box-sizing: border-box;
}

.form-set .ttl-gray {
   color: #fff;
   font-weight: normal;
   font-size: 14px;
   padding-left: 1em;
   background-color: #666;
   line-height: 30px;
   margin-bottom: 20px;
}

.flex {
   display:-webkit-box;
   display:-ms-flexbox;
   display: -webkit-flex;
   display: flex;
   -webkit-box-pack:justify;
   -ms-flex-pack:justify;
   -webkit-justify-content:space-between;
   justify-content: space-between;
   flex-wrap: wrap;
}
.flex .flex-item {
   width: 50%;
}
.flex .flex-item-full {
   width: 100%;
}

@media (max-width: 540px) {
   .data-items-wrap,
   .q-items-wrap {
      width: 92%;
      margin-left: auto;
      margin-right: auto;
   }
   .data-items-wrap .table {
      width: 100%;
   }
   
   .flex .flex-item,
   .flex .flex-item-full {
      width: 100%;
   }
}
@media (min-width: 541px) {
   .data-items-wrap {
      display:-webkit-box;
      display:-ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-box-pack:justify;
      -ms-flex-pack:justify;
      -webkit-justify-content:space-between;
      justify-content: space-between;
      flex-wrap: wrap;
      border-top: 1px dotted #999;
   }
   .data-items-wrap .data-item {
      border-bottom: 1px dotted #999;
   }
   .data-items-wrap .table {border: none;}

   .q-items-wrap {
      display:-webkit-box;
      display:-ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-box-pack:justify;
      -ms-flex-pack:justify;
      -webkit-justify-content:space-between;
      justify-content: space-between;
      flex-wrap: wrap;
   }
}
@media (min-width: 541px) and (max-width: 768px)  {
   .data-items-wrap,
   .q-items-wrap {
      width: 92%;
      margin-left: auto;
      margin-right: auto;
   }
   .data-items-wrap .data-item {
      width: 50%;
      border-bottom: 1px dotted #999;
   }
   .q-items-wrap .q-item {
      width: 50%;
   }
}
@media (min-width: 769px) {
   .data-items-wrap .data-item {
      width: 33.3%;
      border-bottom: 1px dotted #999;
   }
   .q-items-wrap .q-item{
      width: 25%;
   }

   .form-set {
      border-left: 1px solid #666;
      border-right: 1px solid #666;
      border-bottom: 1px solid #666;
   }
}

.total-score {
   text-align: center;
   color: #fff;
   background-color: #0099Dd;
   line-height: 36px;
   margin-bottom: 20px;
}
.total-score input[type="text"] {
   color: #fff;
   background-color: transparent;
   border: none;
   width: 50px;
}
/* -------------------------- */
.q-container {
   width: 200px;
   height: 150px;
   border: 1px solid #333;
   margin: 0 auto;
   position: relative;
}

.q-container .q-head {
   border-bottom: 1px solid #333;
   position: relative;
}
.q-container .q-score {
   width: 98px;
   height: 50px;
   padding: 10px 0 0 0;
   box-sizing: border-box;
}
.q-container .q-score small {
   display: block;
}
.q-container .q-head input[type="radio"] {
   position: absolute;
   top:0;
   width: 34px;
   height: 50px;
   line-height: 50px;
   border: none;
   outline: none;
   font-size: 24px;
}
.q-container .q-head .label-q-true {
  border-left: 1px solid #333;
  display: block;
  position: absolute;
  top:0;
  width: 34px;
  height: 50px;
  line-height: 50px;
  right:70px;
  cursor: pointer;
  background-color: #BbEeFF; 
  background-image: url(../images/icon-q-true.png);
  background-repeat: no-repeat;
  background-position: center center;
}
.q-container .q-head .label-q-vague {
  border-left: 1px solid #333;
  display: block;
  position: absolute;
  top:0;
  width: 34px;
  height: 50px;
  line-height: 50px;
  right:35px;
  cursor: pointer;
  background-color: #FFFF99; 
  background-image: url(../images/icon-q-vague.png);
  background-repeat: no-repeat;
  background-position: center center;
}
.q-container .q-head .label-q-false {
  border-left: 1px solid #333;
  display: block;
  position: absolute;
  top:0;
  width: 34px;
  height: 50px;
  line-height: 50px;
  right:0px;
  cursor: pointer;
  background-color: #FFccBb; 
  background-image: url(../images/icon-q-false.png);
  background-repeat: no-repeat;
  background-position: center center;
}
.q-container .q-head .switch-q-true {
   right:70px;
}
.q-container .q-head .switch-q-vague {
   right:35px;
}
.q-container .q-head .switch-q-false {
   right:0;
}
.q-container .q-answer {
   position: absolute;
   left:0; 
   width: 100px; 
   height:97px;
   background-repeat: no-repeat;
   background-color: #fff;
   background-position: center center;
   border: none;
   outline: none;
}
.q-container .q-answer.true {
   background-image: url(../images/answer-true.png);
}
.q-container .q-answer.vague {
   background-image: url(../images/answer-vague.png);
}
.q-container .q-answer.false {
   background-image: url(../images/answer-false.png);
}
.score {
   position: absolute;
   right: 5px;
   bottom: 5px;
   width: 100px;
   line-height: 30px;
   color: #0066Dd;
}
.q-container .score input[type="number"] {
   width: 75px;
   color: #0066Dd;
   font-size: 20px;
   height: 30px;
   padding-left: 5px;
   padding-right: 5px;
   margin-right: 3px;
   border: 1px solid #ccc;
   border-radius: 2px;
   box-sizing: border-box;
   position: relative;
}
.q-container .score .spin_up {
   position: absolute;
   width: 20px;
   height:14px;
   top:0;
   left:55px;
   background-image: url(../images/arrow-up.png);
   background-repeat: no-repeat;
   background-position: center center;
   background-color: #808080;
}
.q-container .score .spin_down {
   position: absolute;
   width: 20px;
   height:14px;
   top:15px;
   left:55px;
   background-image: url(../images/arrow-down.png);
   background-repeat: no-repeat;
   background-position: center center;
   background-color: #808080;
}

   .q-items-wrap {
      display:-webkit-box;
      display:-ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-box-pack:justify;
      -ms-flex-pack:justify;
      -webkit-justify-content:space-between;
      justify-content: flex-start;
      flex-wrap: wrap;
   }

main:after,section:after,article:after,div:after,p:after,ul:after,ol:after,dl:after,.clearFix:after{content:".";display:block;clear:both;height:0px;font-size:0;visibility:hidden}