@charset "utf-8";

.wrap {
  max-width: 100%;
  margin: 0 auto 60px;
}
.wrap .pull-left {
  width: 200px;
  position: fixed;
}
.wrap .pull-right {
  width: 950px;
}
.menu-tit {
  display: none;
}
h1 {
  font-size: 26px;
  line-height: 1.4;
}
h2 {
  font-size: 16px;
}
.g-nav ul li {
  font-size: 15px;
}
.exercise-list {
  list-style: none;
}
.exercise-list li {
  padding-bottom: 10px;
  text-align: center;
}
.result-tbl th {
  white-space: nowrap;
  text-align: center;
}
.ws-norap {
  white-space: nowrap;
}
.submit-btn {
  width: 120px;
}
.table-responsive {
  padding: 10px 0;
  border: none;
}
.panel.panel02 {
  box-shadow: none;
}
.panel-primary.panel02 {
  border-color: transparent;
}
.panel-primary.panel02 .panel-body {
  padding: 0;
}
.container.wrap02 {
  margin-bottom: 20px;
}
.container.wrap02 .mistake {
  font-size: 15px;
}
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 10px;
  bottom: 10px;
  background: #3f98ef;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -11px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
.form-area {
  font-size: 15px;
}
.tbl {
  width: 100%;
}
.tbl th,
.tbl td {
  width: 100%;
  display: block;
  padding: 5px 0;
}
.box01 {
  padding: 5px;
  width: 100%;
  margin-bottom: 3px;
}
.submit-btn {
  margin: 20px auto 30px;
}
.submit-btn button {
  width: 120px;
}
.notes {
  position: relative;
  top: 2px;
  font-size: 14px;
}
.navbar-default {
  background-image: none;
  box-shadow: none;
  background-color: #fff;
  border-color: #fff;
  padding: 0 10px;
}
.navbar-default .navbar-toggle:hover, 
.navbar-default .navbar-toggle:focus {
  background-color: #fff;
}
.navbar-default .navbar-toggle {
  border-color: #fff;
  z-index: 1;
}
.navbar-default .navbar-collapse, 
.navbar-default .navbar-form {
  border-color: #fff;
  position: relative;
  top: -50px;
}
.navbar-nav > li > a:hover {
  text-decoration: underline;
}
.navbar-default .navbar-nav > li > a {
  color: #337ab7;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: #23527c;
  text-decoration: underline;
}
.navbar-toggle {
  padding: 0;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 15px;
}
.navbar-toggle .icon-bar {
  width: 30px;
  height: 3px;
}
#anchor01 {
  margin-top: -15px;
}
.lb-radio {
  font-weight: normal;
}
.table.dataTable tbody th, 
.table.dataTable tbody td {
  white-space: nowrap;
}
.contact .navbar {
  margin-top: 20px;
}
.contact .jumbotron {
  padding-top: 5px;
  padding-bottom: 15px;
}
.contact .jumbotron h1 {
  font-size: 20px;
}
.contact .badge-danger {
  color: #fff;
  background-color: #dc3545;
}
.color-red {
  color: #dc3545;
}
.contact .badge-any {
  color: #fff;
  background-color: #00f;
}
.contact .badge {
  border-radius: 5px;
}
.contact .btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}
.pb18 {
  padding-bottom: 18px !important;
}
#powered_by_me {
  font-size: 10px !important;
}
.navbar h1 {
  position: relative;
  top: -55px;
  font-size: 18px;
}
.navbar h1 a {
  color: #000;
  text-decoration: none;
}
.nav-area {
  margin-bottom: -50px;
  padding-bottom: 0;
}
.dis-pc {
  display: none;
}
.dis-sp {
  display: block;
}
.tbl.pc {
  display: none;
}
.form-dl dt {
  margin-bottom: 5px;
}
.form-dl dd {
  margin-bottom: 15px;
}
.panel-heading a {
  color: #fff;
}
.panel-heading a:hover,
.panel-heading a:focus {
  color: #fff;
  text-decoration: none;
}
.panel-group .panel {
  margin-bottom: 20px;
}
#accordion .panel-heading-link:after {
  content: " + ";
  color: #fff;
  font-size: 30px;
  position: absolute;
  right: 26px;
  margin-top: -29px;
}
/*aria-expanded="true"はコンテンツが開いている状態のときに動的に記述される要素です。*/
#accordion .panel-heading-link[aria-expanded="true"]:after {
  content: " － ";
  color: #fff;
  font-size: 24px;
  position: absolute;
  right: 26px;
  margin-top: -25px;
}
input[type="radio"] {
  position: relative;
  top: 1px;
}

/*.table-responsive {
  white-space: nowrap;
}
.table.dataTable tbody th,
.table.dataTable tbody td {
  white-space: normal;
}
table#result-tbl {
  width: 1800px;
}
.result-tbl td {
  border-bottom: 1px solid #ccc;
}
.result-tbl tr:last td {
  border-bottom: none;
}*/

.notes03 {
  font-weight: normal;
}

@media (min-width: 568px) {
  .exercise-list .col-xs-4 {
    width: 20%;
  }
  .table.dataTable tbody th,
  .table.dataTable tbody td {
    white-space: normal;
  }
  /*.problem-txt {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow:hidden;
  }*/
}

@media (min-width: 667px) {
    
}

@media (min-width: 768px) {
  .menu-tit {
    font-size: 20px;
    line-height: 1.5;
    margin: 20px 0 15px;
    display: block;
  }
  .navbar-nav > li {
    float: none;
  }
  .navbar-nav > li > a {
    padding-bottom: 0;
  }
  .table-responsive {
    padding: 0 2px;
  }
  .container.wrap02 {
    max-width: 532.5px;
  }
  .container.wrap02 .row {
    display: flex;
    align-items: center;
  }
  .container.wrap02 .mistake {
    margin-top: 15px;
    text-align: right;
    font-size: 11px;
  }
  .container.wrap03 {
    max-width: 502.5px;
  }
  .exercise-list {
    margin-left: -20px;
  }
  .exercise-list li {
    width: 20%;
  }
  .tbl th,
  .tbl td {
    width: auto;
    display: table-cell;
  }
  .tbl th {
    width: 210px;
  }
  .t-head01 {
    position: relative;
    top: 15px;
  }
  .t-head02 {
    vertical-align: top;
    position: relative;
    top: 5px;
  }
  .tbl-tit {
    position: relative;
    left: 10px;
  }
  #anchor01 {
    margin-top: 15px;
  }
  .table.dataTable tbody th, 
  .table.dataTable tbody td {
    white-space: normal;
  }
  .contact #anchor01 {
    margin-top: 35px;
  }
  .contact .container.wrap02 .mistake {
    margin-top: 35px;
  }
  .contact .container .jumbotron, 
  .contact .container-fluid .jumbotron {
    padding-right: 30px;
    padding-left: 30px;
  }
  .navbar h1 {
    position: static;
    font-size: 20px;
  }
  .navbar-default .navbar-collapse, .navbar-default .navbar-form {
    position: static;
  }
  .navbar-default {
    padding: 0;
    margin-bottom: 10px;
  }
  .nav-area {
    display: flex;
    align-items: center;
    margin-bottom: 0;
  }
  .nav-area h1 {
    margin: 0 auto 0 0;
  }
  .nav-area ul {
    display: flex;
  }
  .exercise-list {
    margin-bottom: 0;
  }
  .box01 {
    margin-bottom: 0;
  }
  .box02 {
    width: 40.7%;
  }
  .submit-btn {
    margin: 10px auto 15px;
  }
  .container {
    width: 100%;
  }
  .navbar-nav > li > a {
    padding-top: 0;
    padding-bottom: 0;
  }
  .nav > li > a {
    padding: 0;
    margin-left: 15px;
  }
  .contact .container02 {
    width: 80%;
  }
  .dis-pc {
    display: block;
  }
  .dis-sp {
    display: none;
  }
  .form-dl {
    /*display: none;*/
  }
  .tbl.pc {
    display: table;
  }
  .notes {
    left: 10px;
  }
  .notes02 {
    position: relative;
    left: 10px;
  }
  .form-wrap {
    display: flex;
  }
  .form-wrap-left {
    margin-right: 10px;
  }
  .form-wrap-right {
    width: 28%;
  }
  table#result-tbl {
    width: 100%;
  }
  .notes03 {
    margin-left: 15px;
  }
}

@media (min-width: 992px) {
  .g-nav {
    padding-left: 15px;
  }
  .container.wrap02 {
    max-width: 847.5px;
  }
  .container.wrap03 {
    max-width: 817.5px;
  }
  .container.wrap02 .mistake {
    font-size: 14px;
  }
  .exercise-list li {
    width: 10%;
  }
  .exercise-list .col-xs-4 {
    width: 10%;
 }
}