#mvTtl {
  background-image: url(../images/search/bg_mv.jpg); }
  @media screen and (max-width: 768px) {
    #mvTtl {
      background-image: url(../images/search/bg_mv.jpg); } }

.main .btnDefault {
  width: 240px;
  margin: 0px 5%; }
  @media screen and (max-width: 768px) {
    .main .btnDefault {
      margin: 20px auto 0; } }
  .main .btnDefault a {
    height: 60px;
    font-size: 1.8rem;
    padding-top: 20px; }
    @media screen and (max-width: 768px) {
      .main .btnDefault a {
        height: 55px;
        padding-top: 18px; } }
.main .btnWrp {
  margin: 50px auto 0;
  display: flex;
  justify-content: center; }
  @media screen and (max-width: 768px) {
    .main .btnWrp {
      margin-top: 35px;
      display: block; } }
  .main .btnWrp .btnReturn {
    margin: 0 5%; }
    @media screen and (max-width: 768px) {
      .main .btnWrp .btnReturn {
        position: static;
        margin: 20px auto 0; } }
.main #classroomMapDetail {
  width: 100%;
  border: 1px solid #d7d7d7;
  height: 420px;
  box-sizing: border-box;
  margin: 50px auto 0; }
  @media screen and (max-width: 768px) {
    .main #classroomMapDetail {
      margin: 30px auto 0;
      height: 200px; } }
.main .mapLink {
  text-align: right;
  margin: 15px auto 0; }
  @media screen and (max-width: 768px) {
    .main .mapLink {
      margin: 12px 0 45px; } }
  @media screen and (max-width: 768px) {
    .main .mapLink a {
      width: 180px;
      background: #7dcdf4;
      color: #fff;
      display: block;
      height: 40px;
      padding: 11px 5px 0 0;
      border-radius: 6px;
      font-size: 1.4rem;
      position: relative;
      text-align: center;
      float: right; } }
  @media screen and (max-width: 768px) {
    .main .mapLink a:before {
      content: "";
      width: 15px;
      height: 15px;
      position: absolute;
      background-image: url(../images/icon_arrow_02_w.png);
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: 100%;
      top: 50%;
      right: 10px;
      margin-top: -7.5px; } }
.main .contactArea .btnLarge {
  margin: 25px auto 0 !important; }

@media print, screen and (min-width: 769px) {
  .top .searchWrp .sTtl {
    font-size: 2.1rem;
    color: #fff;
    background: #7dcdf4;
    line-height: 1;
    text-align: center; }
    .top .searchWrp .sTtl span {
      padding: 13px 15px 13px 40px;
      line-height: 34px;
      padding-left: 40px;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: 34px;
      display: inline-block; } }
    @media screen and (min-width: 769px) and (max-width: 768px) {
      .top .searchWrp .sTtl span {
        background-size: 20px;
        padding-left: 28px; } }
@media print, screen and (min-width: 769px) {
    .top .searchWrp .sTtl.area span {
      background-image: url(../images/icon_area_w.png); }
    .top .searchWrp .sTtl.gps span {
      background-image: url(../images/icon_gps_w.png); }
    .top .searchWrp .sTtl.zip span {
      background-image: url(../images/icon_zip_w.png); }
    .top .searchWrp .sTtl.keyword span {
      background-image: url(../images/icon_keyword_w.png); }
  .top .searchWrp .mapTxt {
    text-align: center;
    font-size: 1.8rem;
    line-height: 1.8;
    font-weight: bold;
    margin-bottom: 10px; }
  .top .searchWrp .mapSearch {
    margin-bottom: 30px; }
    .top .searchWrp .mapSearch .sTtl {
      font-size: 2.5rem; }
      .top .searchWrp .mapSearch .sTtl span {
        padding-left: 45px;
        background-size: 36px; }
    .top .searchWrp .mapSearch > div {
      background: #f8f8f8;
      position: relative;
      height: 420px; }
    .top .searchWrp .mapSearch .mapImg {
      width: 440px;
      height: 329px;
      position: absolute;
      top: 35px;
      left: 268px; }
      .top .searchWrp .mapSearch .mapImg > li {
        position: absolute;
        top: 0;
        left: 0;
        line-height: 0;
        opacity: 0;
        transition: .3s ease-in-out; }
        .top .searchWrp .mapSearch .mapImg > li.active {
          opacity: 1; }
    .top .searchWrp .mapSearch dl {
      position: absolute;
      width: 130px; }
      .top .searchWrp .mapSearch dl dt {
        font-size: 1.8rem;
        margin-bottom: 10px;
        padding-bottom: 8px;
        font-weight: bold; }
      .top .searchWrp .mapSearch dl dd {
        margin-top: 10px; }
        .top .searchWrp .mapSearch dl dd ul {
          display: flex;
          flex-wrap: wrap; }
          .top .searchWrp .mapSearch dl dd ul li {
            width: 50%;
            margin-bottom: 3px;
            line-height: 1.5; }
            .top .searchWrp .mapSearch dl dd ul li a {
              display: inline-block;
              font-size: 1.3rem;
              padding-left: 18px;
              background: url(../images/icon_arrow_01.png) 0 2px/13px no-repeat;
              -webkit-transition: color .3s ease;
              transition: color .3s ease;
              line-height: 1.4; } }
            @media print, screen and (min-width: 769px) and (min-width: 769px) {
              .top .searchWrp .mapSearch dl dd ul li a:hover {
                color: #7dcdf4;
                text-decoration: underline; } }
@media print, screen and (min-width: 769px) {
      .top .searchWrp .mapSearch dl.shikoku {
        top: 40px;
        left: 70px; }
      .top .searchWrp .mapSearch dl.tyugoku {
        top: 40px;
        left: 230px; }
      .top .searchWrp .mapSearch dl.kansai {
        top: 40px;
        left: 390px; }
      .top .searchWrp .mapSearch dl.kyushu {
        top: 170px;
        left: 70px; }
      .top .searchWrp .mapSearch dl.touhoku {
        top: 40px;
        left: 800px; }
      .top .searchWrp .mapSearch dl.chubu {
        top: 210px;
        left: 640px; }
      .top .searchWrp .mapSearch dl.kanto {
        top: 210px;
        left: 800px; }
  .top .searchWrp .itemWrp {
    display: flex;
    justify-content: space-evenly; }
  .top .searchWrp .searchItem {
    background: #ebf8ff;
    width: 400px; }
    .top .searchWrp .searchItem > div {
      padding: 20px; }
    .top .searchWrp .searchItem p {
      font-size: 1.4rem;
      line-height: 1.6; }
    .top .searchWrp .searchItem .inputBox {
      margin-top: 15px; }
    .top .searchWrp .searchItem input[type=text], .top .searchWrp .searchItem input[type=tel] {
      width: 270px; }
    .top .searchWrp .searchItem .notes {
      margin-top: 5px; }
    .top .searchWrp .searchItem .notes li {
      color: #666;
      font-size: 1.3rem; } }
@media screen and (max-width: 768px) {
  .top .searchWrp {
    border-radius: 10px;
    overflow: hidden; }
    .top .searchWrp .ttl {
      font-weight: bold;
      line-height: 1;
      background: #7dcdf4;
      padding: 15px 0 10px;
      color: #fff;
      font-size: 1.9rem;
      text-align: center; }
      .top .searchWrp .ttl span {
        background: url(../images/icon_search_s.png) 0 1px/18px auto no-repeat;
        padding: 0 0 5px 23px;
        display: inline-block;
        border-bottom: 2px solid #f4ed7d; }
    .top .searchWrp .ttl + div {
      padding: 25px 16px 20px;
      background: #ebf8ff; }
    .top .searchWrp .sTtl {
      font-size: 1.6rem;
      color: #568da8;
      padding-left: 30px;
      background-position: 0 1px;
      background-repeat: no-repeat;
      background-size: 22px;
      margin-bottom: 10px;
      line-height: 1.6; } }
    @media screen and (max-width: 768px) and (max-width: 768px) {
      .top .searchWrp .sTtl {
        background-size: 20px;
        padding-left: 28px; } }
@media screen and (max-width: 768px) {
      .top .searchWrp .sTtl span {
        display: block;
        color: #aaa;
        margin-left: 5px;
        font-weight: 400;
        margin: 0;
        font-size: 1.2rem; }
      .top .searchWrp .sTtl.gps {
        margin-bottom: 0; }
      .top .searchWrp .sTtl.gps, .top .searchWrp .sTtl.map {
        background-image: url(../images/icon_gps.png); }
      .top .searchWrp .sTtl.zip {
        background-image: url(../images/icon_zip.png); }
      .top .searchWrp .sTtl.keyword {
        background-image: url(../images/icon_keyword.png); }
      .top .searchWrp .sTtl.area {
        background-image: url(../images/icon_area.png); }
    .top .searchWrp .inputBox input[type="text"],
    .top .searchWrp .inputBox input[type="tel"] {
      width: calc(100% - 90px); }
    .top .searchWrp .inputBox .searchBtn {
      margin-left: 5px; }
      .top .searchWrp .inputBox .searchBtn.wide {
        width: 100%;
        font-size: 2.0rem;
        letter-spacing: 1.0rem;
        font-weight: 600;
        margin-left: 0;
        margin-top: 10px; }
    .top .searchWrp .selectItem {
      display: flex;
      display: -webkit-box;
      display: -webkit-flex; }
      .top .searchWrp .selectItem + .selectItem {
        margin-top: 8px; }
      .top .searchWrp .selectItem label {
        color: #aaa;
        display: flex;
        display: -webkit-box;
        display: -webkit-flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding-right: 8px; }
      .top .searchWrp .selectItem select {
        -webkit-flex: 1;
        flex: 1; }
    .top .searchWrp select {
      -webkit-appearance: none;
      appearance: none;
      box-shadow: none;
      border: 1px solid #7dcdf4;
      border-radius: 5px;
      height: 40px;
      padding: 10px;
      background: url(../images/arrow_select.gif) right center/auto 100% no-repeat #fff; } }
    @media screen and (max-width: 768px) and (max-width: 768px) {
      .top .searchWrp select {
        padding: 5px;
        font-size: 1.6rem; } }
@media screen and (max-width: 768px) {
    .top .searchWrp .notes {
      margin-top: 7px; }
    .top .searchWrp form + .sTtl {
      margin-top: 15px; } }

.error .btnDefault {
  margin: 35px auto 0; }
  @media screen and (max-width: 768px) {
    .error .btnDefault {
      margin: 27px auto 0; } }
.error .errorBox {
  padding: 50px 0;
  border-radius: 10px; }
  @media screen and (max-width: 768px) {
    .error .errorBox {
      border-radius: 5px;
      padding: 40px 0; } }
  .error .errorBox p {
    text-align: center;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.5; }
    @media screen and (max-width: 768px) {
      .error .errorBox p {
        font-size: 1.6rem; } }

.prefecture .ttl02 + p {
  font-size: 1.6rem;
  text-align: center;
  font-weight: bold;
  margin-top: 10px; }
  @media screen and (max-width: 768px) {
    .prefecture .ttl02 + p {
      font-size: 1.4rem; } }
.prefecture p.date {
  text-align: right;
  margin: 45px 0 5px;
  font-size: 1.3rem; }
  @media screen and (max-width: 768px) {
    .prefecture p.date {
      margin: 20px 0 5px;
      font-size: 1.4rem; } }
.prefecture .prefectureList {
  table-layout: fixed; }
  .prefecture .prefectureList th, .prefecture .prefectureList td {
    padding: 12px 20px 10px; }
    @media screen and (max-width: 768px) {
      .prefecture .prefectureList th, .prefecture .prefectureList td {
        padding: 10px 15px; } }
  .prefecture .prefectureList th {
    width: 10%; }
    @media screen and (max-width: 768px) {
      .prefecture .prefectureList th {
        width: 100%; } }
  .prefecture .prefectureList td {
    text-align: left;
    width: 45%;
    padding: 0; }
    @media screen and (max-width: 768px) {
      .prefecture .prefectureList td {
        width: 100%; } }
    .prefecture .prefectureList td a {
      display: block;
      font-size: 1.3rem;
      padding-left: 18px;
      background: url(../images/icon_arrow_01.png) 15px 17px/13px no-repeat;
      -webkit-transition: color .3s ease;
      transition: color .3s ease;
      line-height: 1.4;
      padding: 15px 20px 13px 38px; }
      @media print, screen and (min-width: 769px) {
        .prefecture .prefectureList td a:hover {
          color: #7dcdf4;
          text-decoration: underline; } }
      @media screen and (max-width: 768px) {
        .prefecture .prefectureList td a {
          font-size: 1.4rem;
          padding: 10px 35px;
          background-position: 15px 13px; } }
  @media print, screen and (min-width: 769px) {
    .prefecture .prefectureList tr.even td {
      background: #f8f8f8; } }
.prefecture .btnDefault {
  margin: 30px auto 0; }
  @media screen and (max-width: 768px) {
    .prefecture .btnDefault {
      margin: 20px auto 0; } }

.classroomMap h3 {
  margin-bottom: 40px; }
  @media screen and (max-width: 768px) {
    .classroomMap h3 {
      margin-bottom: 15px; } }
.classroomMap #conditionBox h4 {
  background: #7dcdf4;
  line-height: 1;
  color: #fff;
  font-size: 2.2rem;
  padding: 20px 0 17px;
  position: relative;
  text-align: center;
  cursor: pointer; }
  @media screen and (max-width: 768px) {
    .classroomMap #conditionBox h4 {
      font-size: 1.9rem;
      padding: 12px 0 10px; } }
.classroomMap #conditionBox span {
  width: 22px;
  height: 22px;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -11px; }
  @media screen and (max-width: 768px) {
    .classroomMap #conditionBox span {
      right: 15px; } }
  .classroomMap #conditionBox span::before, .classroomMap #conditionBox span::after {
    content: "";
    width: 12px;
    height: 2px;
    background: #7dcdf4;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -1px 0 0 -6px; }
  .classroomMap #conditionBox span::after {
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
    transform: rotate(-90deg); }
.classroomMap #conditionBox h4.open span::after {
  transform: rotate(0deg);
  opacity: 0; }
.classroomMap #conditionBox > div {
  background: #ebf8ff;
  padding: 25px 50px;
  border: 1px solid #7dcdf4; }
  @media screen and (max-width: 768px) {
    .classroomMap #conditionBox > div {
      padding: 20px 15px; } }
.classroomMap #conditionBox .itemWrp {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 768px) {
    .classroomMap #conditionBox .itemWrp {
      display: block; } }
.classroomMap #conditionBox .searchItem {
  width: 255px; }
  @media screen and (max-width: 768px) {
    .classroomMap #conditionBox .searchItem {
      width: auto !important; }
      .classroomMap #conditionBox .searchItem + .searchItem {
        margin-top: 20px; } }
  .classroomMap #conditionBox .searchItem .ttl01 {
    font-weight: bold;
    padding-bottom: 7px; }
    @media screen and (max-width: 768px) {
      .classroomMap #conditionBox .searchItem .ttl01 {
        padding-bottom: 5px; } }
  .classroomMap #conditionBox .searchItem .checkList {
    display: flex;
    flex-wrap: wrap;
    font-size: 1.4rem; }
    .classroomMap #conditionBox .searchItem .checkList li {
      margin-bottom: 15px;
      position: relative; }
    .classroomMap #conditionBox .searchItem .checkList + p {
      font-size: 1.3rem; }
      @media screen and (max-width: 768px) {
        .classroomMap #conditionBox .searchItem .checkList + p {
          font-size: 1.2rem; } }
  .classroomMap #conditionBox .searchItem.week li {
    margin-right: 22px; }
    @media screen and (max-width: 768px) {
      .classroomMap #conditionBox .searchItem.week li {
        margin-right: 12%; } }
    @media screen and (max-width: 360px) {
      .classroomMap #conditionBox .searchItem.week li {
        margin-right: 9%; } }
    .classroomMap #conditionBox .searchItem.week li:nth-child(4) {
      margin-right: 0; }
      @media print, screen and (min-width: 500px) and (max-width: 769px) {
        .classroomMap #conditionBox .searchItem.week li:nth-child(4) {
          margin-right: 12%; } }
  .classroomMap #conditionBox .searchItem.time {
    width: 310px; }
    .classroomMap #conditionBox .searchItem.time li {
      width: 50%; }
  .classroomMap #conditionBox .searchItem.subject li {
    margin-right: 30px; }
    @media screen and (max-width: 768px) {
      .classroomMap #conditionBox .searchItem.subject li {
        width: 50%;
        margin-right: 0; } }
.classroomMap #conditionBox .submit {
  width: 142px;
  margin: 15px auto 0; }
  @media screen and (max-width: 768px) {
    .classroomMap #conditionBox .submit {
      width: 60%;
      margin-top: 25px; } }
  .classroomMap #conditionBox .submit input {
    border: 0;
    width: 142px;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    display: block;
    background: #7dcdf4;
    text-align: center;
    color: #fff;
    font-size: 1.6rem;
    border-radius: 60px;
    line-height: 1;
    padding: 15px 0;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease;
    cursor: pointer; }
    @media print, screen and (min-width: 769px) {
      .classroomMap #conditionBox .submit input:hover {
        opacity: .8; } }
    @media screen and (max-width: 768px) {
      .classroomMap #conditionBox .submit input {
        width: 100%; } }
.classroomMap #resultarea .update {
  text-align: right;
  margin: 30px 0 5px;
  font-size: 1.3rem; }
  @media screen and (max-width: 768px) {
    .classroomMap #resultarea .update {
      margin: 20px 0 5px;
      font-size: 1.2rem; } }
.classroomMap #resultarea .table01 {
  table-layout: fixed;
  height: 100%; }
  @media screen and (max-width: 768px) {
    .classroomMap #resultarea .table01 tr:first-child {
      display: none; } }
  @media screen and (max-width: 768px) {
    .classroomMap #resultarea .table01 tr {
      overflow: hidden; } }
  .classroomMap #resultarea .table01 th {
    font-size: 1.6rem;
    padding: 16px 0 14px; }
    @media screen and (max-width: 768px) {
      .classroomMap #resultarea .table01 th {
        overflow: hidden; } }
    .classroomMap #resultarea .table01 th:first-child {
      width: 32%; }
    .classroomMap #resultarea .table01 th:nth-child(2) {
      width: 24%; }
    .classroomMap #resultarea .table01 th:nth-child(3) {
      width: 24%; }
    .classroomMap #resultarea .table01 th:nth-child(4) {
      width: 20%; }
  .classroomMap #resultarea .table01 td {
    padding: 15px 20px;
    font-size: 1.4rem;
    overflow: hidden; }
    .classroomMap #resultarea .table01 td:first-child {
      padding: 0;
      position: relative; }
      .classroomMap #resultarea .table01 td:first-child a {
        height: 100%;
        width: 100%;
        padding: 15px 20px 15px 40px;
        background: url(../images/icon_arrow_01.png) 20px center/13px no-repeat;
        display: block; }
        .classroomMap #resultarea .table01 td:first-child a span {
          position: absolute;
          top: 50%;
          left: 40px;
          transform: translate(0, -50%); }
        @media screen and (max-width: 768px) {
          .classroomMap #resultarea .table01 td:first-child a {
            height: auto; } }
    @media screen and (max-width: 768px) {
      .classroomMap #resultarea .table01 td {
        font-size: 1.4rem;
        padding: 0 15px;
        display: flex;
        justify-content: left; }
        .classroomMap #resultarea .table01 td + td {
          padding-top: 10px; }
        .classroomMap #resultarea .table01 td:first-child {
          padding: 0;
          display: block; }
        .classroomMap #resultarea .table01 td:nth-child(2) {
          padding-top: 15px; }
        .classroomMap #resultarea .table01 td:nth-child(4) {
          padding-bottom: 15px; }
        .classroomMap #resultarea .table01 td:not(:nth-child(4)) {
          border-bottom: none; } }
    @media screen and (max-width: 360px) {
      .classroomMap #resultarea .table01 td {
        font-size: 1.1rem; } }
    .classroomMap #resultarea .table01 td a {
      display: inline-block;
      padding-left: 18px;
      background: url(../images/icon_arrow_01.png) 0 2px/13px no-repeat;
      -webkit-transition: color .3s ease;
      transition: color .3s ease;
      line-height: 1.4; }
      @media print, screen and (min-width: 769px) {
        .classroomMap #resultarea .table01 td a:hover {
          color: #7dcdf4;
          text-decoration: underline; } }
      @media screen and (max-width: 768px) {
        .classroomMap #resultarea .table01 td a {
          display: block !important;
          padding: 10px 50px 10px 15px !important;
          background: url(../images/icon_arrow_02_w.png) 96% center/20px no-repeat #7dcdf4 !important;
          color: #fff !important;
          font-size: 1.7rem !important;
          font-weight: bold !important;
          position: static !important; }
          .classroomMap #resultarea .table01 td a span {
            position: static !important;
            transform: translate(0, 0) !important; } }
    @media print, screen and (min-width: 769px) {
      .classroomMap #resultarea .table01 td b {
        display: none; } }
    @media screen and (max-width: 768px) {
      .classroomMap #resultarea .table01 td b {
        display: inline-block;
        width: 4.5em;
        font-size: 1.4rem; } }
    @media screen and (max-width: 360px) {
      .classroomMap #resultarea .table01 td b {
        font-size: 1.2rem; } }
    @media screen and (max-width: 768px) {
      .classroomMap #resultarea .table01 td span {
        display: inline-block; } }
    .classroomMap #resultarea .table01 td .subjectList {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      @media screen and (max-width: 768px) {
        .classroomMap #resultarea .table01 td .subjectList {
          width: 160px; } }
      .classroomMap #resultarea .table01 td .subjectList li {
        width: 91px; }
        @media screen and (max-width: 768px) {
          .classroomMap #resultarea .table01 td .subjectList li {
            width: 75px; } }
        .classroomMap #resultarea .table01 td .subjectList li:nth-child(n+3) {
          margin-top: 7px; }
        .classroomMap #resultarea .table01 td .subjectList li img {
          height: 28px;
          width: auto; }
          @media screen and (max-width: 768px) {
            .classroomMap #resultarea .table01 td .subjectList li img {
              height: 23px; } }
    @media screen and (max-width: 768px) {
      .classroomMap #resultarea .table01 td .timeList {
        width: calc(100% - 5em);
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap; } }
    @media screen and (max-width: 768px) {
      .classroomMap #resultarea .table01 td .timeList li {
        width: 50%; } }
.classroomMap #resultarea .table01 + p {
  margin-top: 15px; }
  @media screen and (max-width: 768px) {
    .classroomMap #resultarea .table01 + p {
      font-size: 1.4rem;
      margin-top: 10px; } }

.classroom .inside {
  position: relative; }
.classroom .inside > h3 {
  font-size: 3.6rem;
  margin-bottom: 30px;
  padding-right: 150px;
  display: flex;
  align-items: center; }
  .classroom .inside > h3 b {
    margin-right: 20px; }
    @media screen and (max-width: 768px) {
      .classroom .inside > h3 b {
        margin-right: 10px; } }
  .classroom .inside > h3 span.iconOnline {
    color: #ff6464;
    font-size: 1.4rem;
    line-height: 1.8rem;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 768px) {
      .classroom .inside > h3 span.iconOnline {
        font-size: 1.1rem;
        line-height: 1.4rem; } }
    .classroom .inside > h3 span.iconOnline:before {
      content: "";
      width: 43px;
      height: 43px;
      background: url("../images/search/icon_online.png");
      background-size: 100% auto;
      margin-right: 5px; }
      @media screen and (max-width: 768px) {
        .classroom .inside > h3 span.iconOnline:before {
          width: 33px;
          height: 33px; } }
  @media screen and (max-width: 768px) {
    .classroom .inside > h3 {
      font-size: 2.3rem;
      margin-bottom: 15px;
      padding-right: 0; } }
.classroom .btnPrint {
  position: absolute;
  right: 0;
  top: 10px; }
  @media screen and (max-width: 768px) {
    .classroom .btnPrint {
      display: none; } }
.classroom .detailInfo {
  display: flex;
  justify-content: center; }
  @media screen and (max-width: 768px) {
    .classroom .detailInfo {
      display: block; } }
.classroom .table01 {
  margin-bottom: 40px; }
  @media screen and (max-width: 768px) {
    .classroom .table01 {
      width: 100%; } }
  .classroom .table01 th, .classroom .table01 td {
    padding: 15px 20px; }
    @media screen and (max-width: 768px) {
      .classroom .table01 th, .classroom .table01 td {
        padding: 13px 15px; } }
  .classroom .table01 th {
    font-size: 1.6rem;
    width: 140px;
    text-align: left; }
    @media screen and (max-width: 768px) {
      .classroom .table01 th {
        width: auto; } }
  .classroom .table01 td {
    font-size: 1.4rem; }
    @media screen and (max-width: 360px) {
      .classroom .table01 td {
        font-size: 1.2rem; } }
    .classroom .table01 td .subjectList {
      display: flex;
      flex-wrap: wrap; }
      .classroom .table01 td .subjectList li {
        margin-right: 20px;
        margin-right: 4.5%; }
        .classroom .table01 td .subjectList li:nth-child(4) {
          margin-right: 0; }
          @media screen and (max-width: 360px) {
            .classroom .table01 td .subjectList li:nth-child(4) {
              margin-top: 10px; } }
        .classroom .table01 td .subjectList li img {
          height: 28px;
          width: auto; }
          @media screen and (max-width: 768px) {
            .classroom .table01 td .subjectList li img {
              height: 23px; } }
    @media screen and (max-width: 768px) {
      .classroom .table01 td .timeList {
        display: flex;
        flex-flow: wrap; }
        .classroom .table01 td .timeList li {
          width: 38%;
          margin-right: 5%; } }
.classroom .contact {
  width: 350px;
  box-sizing: border-box;
  border-radius: 10px;
  overflow: hidden; }
  @media screen and (max-width: 768px) {
    .classroom .contact {
      width: auto;
      border-radius: 5px;
      margin-top: 30px; } }
  .classroom .contact p.ttl {
    background-color: #7dcdf4 !important;
    color: #fff;
    text-align: center;
    font-size: 1.7rem;
    font-weight: bold;
    line-height: 1.4;
    padding: 17px 0 10px; }
    @media screen and (max-width: 768px) {
      .classroom .contact p.ttl {
        font-size: 1.6rem;
        padding: 15px 0 10px; } }
  .classroom .contact div {
    min-height: 88px;
    padding: 15px 30px 20px;
    background-color: #ebf8ff !important;
    border: 4px solid #7dcdf4;
    border-radius: 0 0 10px 10px; }
    @media screen and (max-width: 768px) {
      .classroom .contact div {
        padding: 20px 15px; } }
  .classroom .contact a.contactBtn {
    font-size: 2.0rem;
    margin-top: 7px;
    font-weight: bold;
    color: #ffffff;
    background-color: #ff9549 !important;
    border-radius: 10px;
    line-height: 1;
    text-align: center;
    display: block;
    padding: 13px 0;
    position: relative;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease; }
    @media screen and (max-width: 768px) {
      .classroom .contact a.contactBtn {
        border-radius: 5px;
        padding: 19px 0;
        margin-top: 0; } }
    .classroom .contact a.contactBtn:after {
      content: "";
      width: 20px;
      height: 20px;
      position: absolute;
      top: 50%;
      margin-top: -10px;
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: cover;
      right: 10px;
      background-image: url(../images/search/icon_btn_arrow.png);
      -webkit-transition: transform .2s ease;
      transition: transform .2s ease; }
    .classroom .contact a.contactBtn:hover {
      opacity: .8; }
      @media screen and (max-width: 768px) {
        .classroom .contact a.contactBtn:hover {
          opacity: 1; } }
    .classroom .contact a.contactBtn:hover:after {
      transform: translate(3px, 0); }
      @media screen and (max-width: 768px) {
        .classroom .contact a.contactBtn:hover:after {
          transform: translate(0, 0); } }
  .classroom .contact p.tel {
    font-weight: bold;
    font-size: 2.7rem;
    line-height: 1;
    text-align: center; }
    @media print, screen and (min-width: 769px) {
      .classroom .contact p.tel {
        padding-top: 10px; }
        .classroom .contact p.tel span {
          display: inline-block;
          padding-left: 30px;
          background: url(../images/icon_tel.png) 0 0 no-repeat; } }
    @media screen and (max-width: 768px) {
      .classroom .contact p.tel {
        font-size: 2.0rem;
        display: block; }
        .classroom .contact p.tel a {
          display: block;
          text-align: center;
          background: #ff9549;
          color: #fff;
          font-weight: bold;
          padding: 20px 20px 20px 0;
          border-radius: 5px; }
          .classroom .contact p.tel a span {
            padding-left: 25px;
            background: url(../images/icon_tel_w.png) left center/19px no-repeat; } }
    .classroom .contact p.tel + p {
      font-size: 2.0rem;
      margin-top: 7px;
      font-weight: bold; }
      @media screen and (max-width: 768px) {
        .classroom .contact p.tel + p {
          margin-top: 12px;
          font-size: 1.7rem; } }
  .classroom .contact .code {
    background-color: #fff !important;
    border-radius: 10px;
    line-height: 1;
    text-align: center;
    padding: 8px 0;
    margin-top: 10px; }
    @media screen and (max-width: 768px) {
      .classroom .contact .code {
        display: none; } }
    .classroom .contact .code b {
      color: #ff9549;
      font-size: 3.0rem;
      display: inline-block;
      margin-left: 15px;
      vertical-align: middle; }
.classroom .contact.box2 {
  margin-right: 40px; }
  @media screen and (max-width: 768px) {
    .classroom .contact.box2 {
      margin-right: 0; } }
  .classroom .contact.box2 div p.sp_txt {
    line-height: 1.5;
    font-size: 12px;
    margin-top: 10px;
    text-align: center;
    display: none; }
    @media screen and (max-width: 768px) {
      .classroom .contact.box2 div p.sp_txt {
        display: block; } }
  .classroom .contact.box2 p.pc_txt {
    line-height: 1.5;
    font-size: 12px;
    margin-top: 10px;
    text-align: center;
    display: block; }
    @media screen and (max-width: 768px) {
      .classroom .contact.box2 p.pc_txt {
        display: none; } }
.classroom .detailInfo + p {
  margin-top: 30px;
  font-size: 1.5rem; }
  @media screen and (max-width: 768px) {
    .classroom .detailInfo + p {
      margin-top: 20px;
      font-size: 1.4rem; } }
@media print {
  .classroom {
    -webkit-print-color-adjust: exact; }
    .classroom #header,
    .classroom #mvTtl,
    .classroom #breadCrumb,
    .classroom .btnPrint,
    .classroom .btnWrp,
    .classroom .contactArea,
    .classroom .inquiryCont,
    .classroom .pagetop,
    .classroom .footer {
      display: none; }
    .classroom .innerCont {
      padding: 50px 0; } }
