@charset "UTF-8";
/*
    /exammination/ style setting
*/
/* =====================================
  components
===================================== */
/*  contents
===================================== */
.main {
  opacity: 0;
  visibility: hidden;
  background-position: top center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  transition: all 0.3s ease-out;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
}

.main.page-other {
  background-image: url(/assets_2017/images/examination-bg.jpg);
}

.main.loaded {
  opacity: 1;
  visibility: visible;
}

.is-loaded .main {
  opacity: 1;
  visibility: visible;
}

.page-exam {
  background-image: url("/assets_2017/images/exam-index-bg.jpg");
  background-size: cover;
  background-position: top center;
}

.page-exam:before {
  background-image: url("/assets_2017/images/exam-index-bg.jpg");
}

.page-content {
  background: #fff;
}

/*  text
===================================== */
.text-desc {
  margin-bottom: 16px;
}

.text-bold {
  font-weight: bold;
}

.text-medium {
  font-size: 1.4rem;
}

.text-center {
  text-align: center;
}

/*  list
===================================== */
.list-number,
.list-number-braket {
  margin: 0 0 40px;
}

.list-number > .list-number-item,
.list-number-braket > .list-number-item {
  position: relative;
  padding-left: 1.333em;
  margin-bottom: 4px;
}

.list-number > .list-number-item:before,
.list-number-braket > .list-number-item:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  font-weight: bold;
}

.list-number > .list-number-item:nth-of-type(1):before,
.list-number-braket > .list-number-item:nth-of-type(1):before {
  content: "1. ";
}

.list-number > .list-number-item:nth-of-type(2):before,
.list-number-braket > .list-number-item:nth-of-type(2):before {
  content: "2. ";
}

.list-number > .list-number-item:nth-of-type(3):before,
.list-number-braket > .list-number-item:nth-of-type(3):before {
  content: "3. ";
}

.list-number > .list-number-item:nth-of-type(4):before,
.list-number-braket > .list-number-item:nth-of-type(4):before {
  content: "4. ";
}

.list-number > .list-number-item:nth-of-type(5):before,
.list-number-braket > .list-number-item:nth-of-type(5):before {
  content: "5. ";
}

.list-number > .list-number-item:nth-of-type(6):before,
.list-number-braket > .list-number-item:nth-of-type(6):before {
  content: "6. ";
}

.list-number > .list-number-item:nth-of-type(7):before,
.list-number-braket > .list-number-item:nth-of-type(7):before {
  content: "7. ";
}

.list-number > .list-number-item:nth-of-type(8):before,
.list-number-braket > .list-number-item:nth-of-type(8):before {
  content: "8. ";
}

.list-number > .list-number-item:nth-of-type(9):before,
.list-number-braket > .list-number-item:nth-of-type(9):before {
  content: "9. ";
}

.list-number > .list-number-item:nth-of-type(10):before,
.list-number-braket > .list-number-item:nth-of-type(10):before {
  content: "10. ";
}

.list-number:last-of-type,
.list-number-braket:last-of-type {
  margin-bottom: 0;
}

.list-number-braket > .list-number-item {
  padding-left: 2.667em;
}

.list-number-braket > .list-number-item:nth-of-type(1):before {
  content: "【1】";
}

.list-number-braket > .list-number-item:nth-of-type(2):before {
  content: "【2】";
}

.list-number-braket > .list-number-item:nth-of-type(3):before {
  content: "【3】";
}

.list-number-braket > .list-number-item:nth-of-type(4):before {
  content: "【4】";
}

.list-number-braket > .list-number-item:nth-of-type(5):before {
  content: "【5】";
}

.list-number-braket > .list-number-item:nth-of-type(6):before {
  content: "【6】";
}

.list-number-braket > .list-number-item:nth-of-type(7):before {
  content: "【7】";
}

.list-number-braket > .list-number-item:nth-of-type(8):before {
  content: "【8】";
}

.list-number-braket > .list-number-item:nth-of-type(9):before {
  content: "【9】";
}

.list-number-braket > .list-number-item:nth-of-type(10):before {
  content: "【10】";
}

.list-notes-item {
  position: relative;
  padding-left: 1.333em;
}

.list-notes-item:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  font-weight: bold;
  content: "※";
}

.list-notes:last-of-type {
  margin-bottom: 0;
}

.list-label {
  width: 100%;
  margin: 0 0 16px;
}

.list-label-index, .list-label-content {
  display: inline-block;
  vertical-align: top;
}

.list-label-index {
  padding-bottom: 8px;
}

.list-label-index span {
  display: inline-block;
  padding: 0 16px;
  color: #fff;
  background: #242c3f;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
}

.list-label-index-light span {
  background: #3A2E74;
}

.list-label-content {
  padding: 2px 0;
}

.list-label-center {
  text-align: center;
}

.list-btns {
  font-size: 0;
}

.list-btns-link {
  display: block;
  height: 100%;
  text-decoration: none !important;
}

.list-btns-link:hover {
  text-decoration: none;
}

.list-btns-item {
  font-size: 1.6rem;
  margin-bottom: 16px;
}

.list-btns-content {
  display: table;
  width: 100%;
  min-height: 65px;
  padding: 12px 40px 12px 18px;
  position: relative;
  background: #f1f1f1;
  font-weight: bold;
}

.list-btns-content:after {
  position: absolute;
  top: 50%;
  right: 16px;
  content: "";
  display: block;
  width: 14px;
  height: 12px;
  margin-top: -5px;
  background: url("/assets_2017/images/icn-arrow.svg") center center no-repeat;
  background-size: contain;
}

.list-btns-content p {
  display: table-cell;
  vertical-align: middle;
}

.list-btns-content p small {
  display: block;
  padding-top: 8px;
  font-size: 1.2rem;
  font-weight: normal;
}

.list-btns-content-greenbg {
  padding: 0;
  line-height: 1;
  text-align: center;
  background: #54e8a1;
  font-size: 1.8rem;
}

.list-btns-content-greenbg p {
  display: block;
}

.list-btns-content-greenbg p.icn {
  padding: 30px;
}

.list-btns-content-greenbg p.ttl {
  padding: 15px 20px;
  background: #a7f9d4;
}

.list-btns-content-greenbg-icnFlow span {
  /* &:before {
      display: block;
      margin-right: 20px;
      content:url("/assets_2017/images/icn-flow.svg");
      vertical-align: middle;
     } */
}

.list-btns-content-greenbg:after {
  background: none;
}

.list-btns-content-bluebg {
  padding: 0;
  line-height: 1;
  text-align: center;
  background: #7dd1ff;
  font-size: 1.8rem;
}

.list-btns-content-bluebg p {
  display: block;
}

.list-btns-content-bluebg p.icn {
  padding: 30px;
}

.list-btns-content-bluebg p.ttl {
  padding: 15px 20px;
  background: #c0e6ff;
}

.list-btns-content-bluebg-icnHow span {
  /* &:before {
     display: block;
      margin-right: 20px;
      content:url("/assets_2017/images/icn-howto.svg");
      vertical-align: middle;
     }*/
}

.list-btns-content-bluebg:after {
  background: none;
}

.list-btns-title {
  display: block;
  line-height: 1.3;
}

.list-btns-categ {
  display: block;
  margin: 3px 0 0;
  font-size: 1.2rem;
  line-height: 1.5;
}

.list-btns-desc {
  display: block;
  padding: 4px 16px 6px;
  font-size: 1.2rem;
}

.list-btns-gray .list-btns-item {
  background-color: rgba(241, 241, 241, 0.5);
}

.list-ib {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}

.list-ib-item {
  display: inline-block;
  padding-right: 24px;
  vertical-align: top;
}

.list-ib-btns {
  font-size: 0;
}

.list-ib-btns-item {
  display: inline-block;
  padding: 0 16px 16px 0;
}

.list-notes-flex {
  display: table;
}

.list-notes-flex li {
  display: table-row;
}

.list-notes-flex li span {
  display: table-cell;
}

.list-notes-flex li span.hl {
  padding-right: 0.5em;
}

/*  ヘッダ
===================================== */
.page-admission .page-bar {
  background: #3fbc98;
}

.page-header-img {
  position: relative;
  width: 100%;
}

.page-header-img:before {
  content: "";
  display: block;
  padding-top: 45%;
  /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
  background: url(/assets_2017/images/exam-bg.png);
  background-size: cover;
}

.page-admission .page-header-img:before {
  background: url("/assets_2017/images/exam-bg-adm.png");
}

.page-exam-topics .page-header-img:before {
  background: url("/assets_2017/images/exam-bg-topix.jpg") center;
}

.no-ph .page-header-img:before {
  padding-top: 0;
}

.page-header {
  color: white;
}

.page-header-bg-gray {
  height: auto;
  text-align: left;
  color: #242c3f;
}

.page-header-bg-gray .page-header-inner {
  padding: 48px 0 40px;
  background: #f1f1f1;
}

.page-header-bg-gray .page-header-title {
  margin-bottom: 12px;
  font-size: 2.8rem;
}

.page-header-bg-gray .page-header-title-hasBorder {
  position: relative;
  margin-bottom: 19px;
  padding-bottom: 16px;
}

.page-header-bg-gray .page-header-title-hasBorder:before, .page-header-bg-gray .page-header-title-hasBorder:after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  background: #dfe0e2;
}

.page-header-bg-gray .page-header-title-hasBorder:after {
  bottom: -3px;
}

.page-header-bg-gray .page-header-subtitle {
  display: block;
  margin-bottom: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}

.page-header-bg-gray .page-header-desc {
  font-size: 1.4rem;
}

.page-header-subtitle-bnr {
  margin-top: 32px;
}

.page-header-subtitle-bnr img {
  width: 50%;
  height: auto;
}

/*  タイトル、 見出し
===================================== */
.section .section-title-headline {
  margin-bottom: 48px;
  padding: 20px;
  font-size: 2.2rem;
  font-weight: bold;
  text-align: left;
  line-height: 1.4;
  border-top: 4px double #242c3f;
  background: #f4f4f4;
}

.section .section-title-hasIcon {
  position: relative;
  padding-left: 48px;
  font-size: 2.2rem;
  font-weight: bold;
  text-align: left;
  line-height: 1;
}

.section .section-title-hasIcon-s {
  font-size: 2rem;
}

.section .section-title-hasIcon-s small {
  font-size: 1.2rem;
  letter-spacing: 1;
}

.section .section-title-hasIcon span {
  display: inline-block;
  vertical-align: middle;
  border: 0;
  line-height: 1.2;
}

.section .section-title-hasIcon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 30px;
  height: 30px;
  margin-top: -17px;
  vertical-align: middle;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}

.section .section-title-hasIcon-pen:before {
  background-image: url("/assets_2017/images/icn-pen.svg");
}

.section .section-title-hasIcon-penw {
  padding: 16px 10px 16px 56px;
  color: #fff;
  background: #26B9D0;
}

.section .section-title-hasIcon-penw:before {
  padding-left: 14px;
  content: url("/assets_2017/images/icn-pen-white.svg");
}

.section .section-title-hasIcon-point {
  font-size: 3rem;
}

.section .section-title-hasIcon-point-s {
  font-size: 2rem;
}

.section .section-title-hasIcon-point:before {
  background-image: url("/assets_2017/images/icn-point.svg");
}

.block-subtitle {
  margin-bottom: 24px;
  font-size: 1.8rem;
  font-weight: bold;
}

.block-subtitle span {
  display: inline-block;
  padding-bottom: 4px;
  border-bottom: 2px solid #26B9D0;
}

.table-notes {
  margin: 8px 0 0;
}

.element-title {
  font-weight: bold;
}

.element-title:not(h3) {
  margin-bottom: 15px !important;
}

.rl {
  /*-webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
 position: relative;
  top: 0;
  left: 50%;
  transform: translateX(-50%);*/
}

/*  テーブル
===================================== */
.table-aligncenter {
  text-align: center;
}

.table-default {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-size: 1.2rem;
}

.table-default .bgW {
  background: #fff;
}

.table-default th,
.table-default td {
  border: 1px solid #ccc;
}

.table-default th.type,
.table-default td.type {
  width: 10%;
}

.table-default th.day,
.table-default td.day {
  width: 18%;
}

.table-default th {
  padding: 5px 0;
  font-weight: bold;
}

.table-default td {
  padding: 12px 0;
}

.table-default thead th {
  line-height: 1.5;
  text-align: center;
  color: #fff;
  background: #3A2E74;
  border-top: 1px solid #3A2E74;
}

.table-schedule {
  table-layout: inherit;
}

.table-schedule td {
  white-space: nowrap;
  padding-right: 8px;
  padding-left: 8px;
}

.table-streak tbody tr:nth-of-type(2n) {
  background: rgba(0, 0, 0, 0.03);
}

.noFixTable {
  table-layout: auto;
}

/*  ブロック
===================================== */
.doubleBorder-block {
  margin-bottom: 3px;
  padding: 40px 0 72px;
  border-top: 1px solid #f1f1f1;
  border-bottom: 1px solid #f1f1f1;
  clear: both;
}

.doubleBorder-block-noB {
  padding: 80px 0 72px;
  border: none;
}

.doubleBorder-block:last-of-type {
  border-bottom: 0;
}

.imgContainer-block {
  margin-bottom: 32px;
}

.imgContainer-block img {
  max-width: 100%;
}

.borderFrame-block {
  padding: 1em;
  border: 1px solid #3A2E74;
}

.grayFrame-block {
  padding: 48px 56px;
  font-size: 1.4rem;
  border: 8px solid #f1f1f1;
}

.grayFrame-block-inner {
  padding: 24px 0;
}

.grayFrame-block-title, .grayFrame-block-desc {
  text-align: center;
}

.grayFrame-block-title {
  font-size: 2.4rem;
  font-weight: bold;
  margin: 0;
}

.privileges-block {
  display: table;
  table-layout: fixed;
  width: 100%;
  border: 1px solid #3A2E74;
}

.privileges-index, .privileges-content {
  display: table-cell;
  vertical-align: middle;
}

.privileges-index {
  width: 26%;
  text-align: center;
  color: #fff;
  font-size: 1.4rem;
  background: #3A2E74;
}

.privileges-content {
  padding: 6px 16px;
  font-size: 1.3rem;
  line-height: 1.5;
  color: #3A2E74;
}

.txt-intro-box {
  margin-bottom: 24px;
  padding: 24px;
  font-weight: bold;
  background: #f4f4f4;
}

.txt-intro-box .list-number {
  margin-top: 16px;
}

.eventCalWrapper {
  display: none;
  position: fixed;
  bottom: 32px;
  right: 0;
  padding: 16px 16px 8px;
  text-align: center;
  background: #263e80;
  border-top: 4px solid #26B9D0;
  border-radius: 0 0 0 4px;
  z-index: 99;
}

.eventCalWrapper .ttl {
  margin-bottom: 12px;
  color: #fff;
  font-size: 1.3rem;
  font-weight: bold;
}

.eventCalWrapper .ttl:before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 8px;
  background-image: url(/assets_2017/images/icn-calendar-plus.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.eventCalWrapper .eventCalC {
  padding: 0 0 8px;
  text-align: center;
  line-height: 1.2;
}

.eventCalWrapper .eventCalC span {
  display: block;
  font-size: 1.2rem;
}

.eventCalWrapper .eventCalC a {
  display: block;
  padding: 8px;
  background: #fff;
  border-radius: 4px;
  font-weight: bold;
}

.eventCalWrapper .eventCalC a:hover {
  text-decoration: none;
}

.gmap {
  margin-top: 24px;
}

.wrapBdr {
  position: relative;
  padding: 20px 30px;
  border: 1px solid #333;
}

.wrapBdr:before {
  content: "";
  position: absolute;
  width: 96%;
  border: 2px solid #fff;
  top: -1px;
  left: 2%;
}

.wrapBdr:after {
  content: "";
  position: absolute;
  width: 96%;
  border: 2px solid #fff;
  bottom: -1px;
  left: 2%;
}

/* =====================================
  pageごと
===================================== */
.page-exam-topics {
  background-image: url("/assets_2017/images/exam-speciality-bg.jpg");
}

.page-exam-topics:before {
  background-image: url("/assets_2017/images/exam-speciality-bg.jpg");
}

/* solution
  ------------------------------------- */
.page-solution .page-header {
  background: rgba(36, 44, 63, 0.8);
  color: #fff;
}

.page-solution .page-header-icon {
  background: url("/assets_2017/images/icn-qa-header.svg") center center no-repeat;
  background-size: contain;
}

.page-solution .page-content {
  padding-top: 16px;
  background: rgba(255, 255, 255, 0.95);
}

.page-solution .page-content .section:first-child {
  padding-bottom: 0;
}

.page-solution .section-title {
  text-align: center;
  font-weight: bold;
  color: #242c3f;
  margin-bottom: 32px;
}

/* =====================================
  @media screen（tablet）
===================================== */
@media only screen and (max-width: 980px) {
  .main {
    background-position: center 70px;
    background-size: auto calc((100vw * 0.36) + 56px + 130px);
  }
  .page-exam {
    background-size: auto calc((100vw * 0.4) + 56px + 130px);
  }
}

/* =====================================
  @media screen（mobile）
===================================== */
@media only screen and (max-width: 767px) {
  /*  text
===================================== */
  /*  btn
  ===================================== */
  .btn-pdf {
    display: block;
    text-align: center;
  }
  /*  contents
  ===================================== */
  .main {
    background: none !important;
  }
  .main:before {
    background-size: auto calc(80vw + 56px + 60px);
  }
  .page-content {
    overflow: hidden;
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 24px;
  }
  .section-btns {
    padding: 32px 0;
  }
  .resize {
    width: 736px;
  }
  /*  ヘッダ
  ===================================== */
  .page-header-img:before {
    padding-top: 50%;
    /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
    background: url(/assets_2017/images/exam-bg-sp.png);
    background-size: cover;
  }
  .page-exam-topics .page-header-img:before {
    background-size: contain;
  }
  .page-header {
    padding: 0;
  }
  .page-header-bg-gray .page-header-inner {
    padding: 32px 0;
  }
  .page-header-bg-gray .page-header-title {
    font-size: 1.8rem;
  }
  .page-header .page-header-desc {
    font-size: 1.3rem;
  }
  /*  list
  ===================================== */
  .list-label {
    display: block;
    margin: 0 0 16px;
  }
  .list-label-index, .list-label-content {
    display: block;
  }
  .list-label-index {
    width: 100%;
  }
  .list-label-content {
    padding: 0;
  }
  .list-label-center {
    text-align: left;
  }
  .list-btns-item {
    float: none !important;
    width: 100%;
    font-size: 1.6rem;
    margin-right: 0;
    margin-bottom: 16px;
  }
  .list-btns-title {
    font-size: 1.4rem;
  }
  .list-btns-desc {
    font-size: 1.1rem;
  }
  .list-ib-item {
    display: block;
  }
  .list-ib-btns {
    text-align: center;
  }
  .list-ib-btns-item {
    display: block;
    padding: 0;
    margin: 0 0 16px;
  }
  .list-ib-btns-item:last-of-type {
    margin: 0;
  }
  .list-ib-btns .btn-more {
    display: block;
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
    max-width: 90%;
  }
  /*  タイトル、 見出し
  ===================================== */
  .section .section-title-headline {
    margin-bottom: 40px;
    padding: 16px;
    font-size: 2rem;
  }
  .section .section-title-hasIcon {
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
    padding-left: 36px;
    margin-bottom: 16px;
    font-size: 2rem;
    line-height: 1.4;
  }
  .section .section-title-hasIcon span {
    display: block;
  }
  .section .section-title-hasIcon-pen:before {
    top: 3px;
    width: 24px;
    height: 24px;
    margin-top: 0;
  }
  .section .section-title-hasIcon-penw {
    padding: 12px 10px 12px 56px;
  }
  .section .section-title-hasIcon-penw:before {
    content: url("/assets_2017/images/icn-pen-white.svg");
  }
  .section .section-title-hasIcon-point {
    padding-left: 0;
    text-align: center;
  }
  .section .section-title-hasIcon-point span {
    display: inline-block;
  }
  .section .section-title-hasIcon-point:before {
    display: inline-block;
    position: relative;
    margin: 0 10px 0 0;
  }
  .block-subtitle {
    margin-bottom: 24px;
    font-size: 1.6rem;
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
  }
  .block-subtitle span {
    display: block;
    padding-bottom: 8px;
    line-height: 1.5;
  }
  .table-notes .notes {
    font-size: 1.4rem;
  }
  /*  テーブル
  ===================================== */
  /*  ブロック
  ===================================== */
  .doubleBorder-block {
    padding: 40px 0;
  }
  .doubleBorder-block:first-of-type {
    padding-top: 0;
    border-top: 0;
  }
  .doubleBorder-block:last-of-type {
    border-bottom: 0;
  }
  .grayFrame-block {
    padding: 24px 16px;
    border-width: 4px;
  }
  .grayFrame-block-inner {
    padding: 24px 0 8px;
  }
  .grayFrame-block-title {
    margin-bottom: 8px;
    font-size: 1.6rem;
  }
  .grayFrame-block p {
    text-align: left;
  }
  .grayFrame-block .title {
    font-size: 1.6rem;
    margin-bottom: 6px;
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
  }
  .privileges-block {
    display: block;
    border: 0;
  }
  .privileges-index, .privileges-content {
    display: block;
  }
  .privileges-index {
    width: 100%;
    padding: 2px 0;
  }
  .privileges-content {
    padding: 8px 0 0;
    font-size: 1.3rem;
    line-height: 1.7;
  }
  .clmn-4-block {
    width: calc((100% - 10px * 2) / 3);
    margin: 0 10px 10px 0;
  }
  .clmn-4-block:nth-of-type(3n) {
    margin-right: 0;
  }
  .clmn-4-block:nth-of-type(4n) {
    margin-right: 10px;
  }
  .eventCalWrapper {
    width: 100%;
    padding: 8px 16px;
    bottom: 0;
    border-radius: 0;
  }
  .eventCalWrapper .ttl {
    margin-bottom: 8px;
  }
  .eventCalWrapper .eventCalC {
    padding: 0 0 8px;
    text-align: center;
  }
  .eventCalWrapper .eventCalC span {
    display: inline-block;
  }
  .eventCalWrapper .eventCalC a {
    display: block;
    padding: 8px;
    background: #fff;
    border-radius: 4px;
    font-weight: bold;
    font-size: 1.2rem;
  }
  .eventCalWrapper .eventCalC a:hover {
    text-decoration: none;
  }
  .gmap {
    margin-top: 16px;
    width: 300px !important;
    height: 200px !important;
  }
  .wrapBdr {
    position: relative;
    padding: 15px 15px;
    border: 1px solid #333;
  }
}
