@charset "UTF-8";
/* =====================================
	全体設定
===================================== */
body {
  line-height: 1.7;
  color: #242c3f;
  font-size: 1.5rem;
}

.colorW {
  color: #fff !important;
}
.colorW span {
  border-color: #fff !important;
}

.sun {
  color: #ff00aa;
}

.sat {
  color: #00c9ff;
}

.fixedBg {
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
}

/*  メインビジュアル 見出し
===================================== */
.page-bar {
  display: table;
  table-layout: fixed;
  width: 100%;
  height: 72px;
  padding: 0 24px;
  color: #fff;
  background: #242c3f;
}
.page-bar-title {
  display: table-cell;
  vertical-align: middle;
}
.page-bar-title-en, .page-bar-title-jp {
  display: block;
  line-height: 1.5;
}
.page-bar-title-en {
  letter-spacing: 0.05em;
  font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: 700;
}
.page-bar-title-jp {
  font-size: 1.2rem;
  font-weight: bold;
}

/* =====================================
	header
===================================== */
.header {
  z-index: 10;
  position: fixed;
  top: 0;
  left: 0;
  width: 240px;
  height: 100vh;
  border-left: 4px solid #242c3f;
  background: #f4f4f4;
}

.siteLogo {
  display: block;
  text-align: center;
  font-size: 1.3rem;
  font-weight: bold;
}
.siteLogo a {
  display: block;
  padding: 20px 0;
}
.siteLogo a:hover {
  text-decoration: none !important;
}
.siteLogo span {
  display: block;
  margin: 8px 0 0;
}

.drawer-hamburger {
  display: none;
}

.gNav ul {
  margin: 0 0 32px;
}

.gNav-item a,
.gNav-item-contact a,
.gNav-item-oiuvoice a {
  display: table-cell;
  vertical-align: middle;
  line-height: 1;
  font-weight: bold;
}
.gNav-item a:before,
.gNav-item-contact a:before,
.gNav-item-oiuvoice a:before {
  content: "";
  display: inline-block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  vertical-align: middle;
}
.gNav-item span,
.gNav-item-contact span,
.gNav-item-oiuvoice span {
  display: inline-block;
  vertical-align: middle;
}

.gNav-item {
  display: table;
  width: 100%;
  height: 65px;
  border-top: 1px solid #dfe0e2;
  font-size: 1.6rem;
}
.gNav-item a {
  padding-left: 40px;
  color: #000;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.gNav-item a:before {
  width: 32px;
  height: 32px;
  margin-right: 24px;
}
.gNav-item a:hover {
  opacity: 1;
  background: #fff;
}
.gNav-item:last-of-type {
  border-bottom: 1px solid #dfe0e2;
}
.gNav-item.gNav-item-entry a:before {
  width: 47px;
  margin-left: -10px;
  background-image: url("../images/icn-info.svg");
}
.gNav-item.gNav-item-event a:before {
  background-image: url("../images/icn-calendar.svg");
}
.gNav-item.gNav-item-movie a:before {
  background-image: url("../images/icn-movie.svg");
}
.gNav-item.gNav-item-qa a:before {
  background-image: url("../images/icn-qa.svg");
}

.gNav-item-contact {
  display: table;
  width: 100%;
  height: 60px;
  padding: 0 16px;
}
.gNav-item-contact a {
  background: #e8ff00;
  text-align: center;
  font-size: 1.8rem;
}
.gNav-item-contact a:before {
  width: 36px;
  height: 26px;
  margin-right: 18px;
  background-image: url("../images/icn-catalogue.svg");
}

.gNav-item-oiuvoice {
  display: table;
  width: 100%;
  height: 60px;
  margin-bottom: 8px;
  padding: 0 16px;
}
.gNav-item-oiuvoice a {
  background: #242c3f;
  color: #fff;
  text-align: center;
  font-size: 1.8rem;
}

/* =====================================
	topicPath
===================================== */
/* =====================================
	content
===================================== */
.container {
  clear: both;
}

.content {
  z-index: 0;
  margin: 0 0 0 240px;
}
.content:before {
  z-index: 10;
  content: "";
  position: fixed;
  top: 0;
  left: 240px;
  display: block;
  background: rgba(36, 44, 63, 0.1);
  width: 4px;
  height: 100%;
}

/* =====================================
  components
===================================== */
/* heading
------------------------------------- */
.block-title {
  color: #fff;
  background: #242c3f;
  padding: 16px 20px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
}

.section-label {
  margin-bottom: 32px;
  font-size: 2.4rem;
  text-align: center;
  font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: 700;
}
.section-label span {
  display: inline-block;
  padding: 0 28px;
  background: #fff;
  line-height: 1;
}

.element-title {
  margin-bottom: 16px !important;
  font-size: 1.6rem;
}
.element-title span {
  display: inline-block;
  padding: 0 0 2px;
  border-bottom: 2px solid #dfe0e2;
}

.title {
  margin: 0 0 32px;
  text-align: center;
  font-size: 4.8rem;
  letter-spacing: 1px;
  color: #242c3f;
  font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: 700;
}
.title span {
  border-bottom: 3px solid #242c3f;
}
.title.img-title {
  line-height: 0;
}
.title.img-title-narrow + .sub-title, .title.img-title-narrow + .sub-title-white {
  margin-bottom: 50px;
}

.section-title {
  font-size: 2.4rem;
}
.section-title span {
  display: inline-block;
}
.section-title-w {
  color: white;
}
.section-title-w span {
  border-bottom-color: white;
}

/* text
------------------------------------- */
.notes {
  font-size: 1.2rem;
}

.sub-title, .sub-title-white {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0 0 16px;
  color: #242c3f;
  text-align: center;
}
.sub-title.sub-title-l, .sub-title-l.sub-title-white {
  font-size: 2rem;
}

.sub-title-white {
  color: #fff;
}

.lead-copy {
  font-size: 1.3rem;
  text-align: center;
  color: #242c3f;
}

.lead-copy-white {
  color: #fff;
}

.tag {
  display: inline-block;
  min-width: 80px;
  margin: 0 16px 0 0;
  padding: 1px 0 2px;
  color: #fff;
  background: #242c3f;
  text-align: center;
  font-size: 1.2rem;
  font-weight: bold;
  vertical-align: top;
}

.attention {
  color: red;
}
.attention a {
  color: red;
  text-decoration: underline;
}
.attention a:hover {
  text-decoration: none;
}

.text-blue {
  color: #3A2E74;
}

/* button
------------------------------------- */
.btn, .btn-yellow {
  display: block;
  padding: 13px 0;
  background: #f3f3f3;
  color: #242c3f;
  text-align: center;
  font-weight: bold;
  line-height: 1;
  text-decoration: none !important;
}
.btn:hover, .btn-yellow:hover {
  text-decoration: none !important;
}

.btn-primary {
  font-weight: bold;
  color: #fff !important;
  text-decoration: none !important;
  background: #242c3f;
}

.btn-white {
  background: #fff;
}

.btn-yellow {
  background: #e8ff00;
}

.btn-mail:before {
  display: inline-block;
  content: "";
  width: 22px;
  height: 14px;
  margin-right: 8px;
  background: url("../images/icn-mail.svg") center center no-repeat;
  background-size: 100% auto;
  vertical-align: middle;
}

.btn-more, .btn-more-red-fixed, .btn-down, .btn-more-emphasize, .btn-more-white {
  position: relative;
  display: inline-block;
  min-width: 300px;
  padding: 12px 40px;
  border: 2px solid #242c3f;
  color: #242c3f;
  text-align: center;
  text-decoration: none !important;
  letter-spacing: 1px;
  line-height: 1;
  font-size: 1.5rem;
  font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: 700;
}
.btn-more:after, .btn-more-red-fixed:after, .btn-down:after, .btn-more-emphasize:after, .btn-more-white:after {
  position: absolute;
  top: 50%;
  right: 10px;
  display: block;
  content: "";
  width: 12px;
  height: 12px;
  margin-top: -7px;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url("../images/icn-arrow.svg");
  margin-left: 5px;
}
.btn-more:hover, .btn-more-red-fixed:hover, .btn-down:hover, .btn-more-emphasize:hover, .btn-more-white:hover {
  text-decoration: none !important;
}
.btn-more.sBtn, .sBtn.btn-more-red-fixed, .sBtn.btn-down, .sBtn.btn-more-emphasize, .sBtn.btn-more-white {
  padding: 8px 16px;
  width: 80%;
  min-width: 110px;
  font-size: 1.2rem;
}

.btn-more-white {
  border-color: #fff;
  color: #fff;
}
.btn-more-white:after {
  background-image: url("/assets_2017/images/icn-arrow-white.svg");
}

.btn-more-emphasize {
  border-color: #e8ff00;
  background: #e8ff00;
}
.btn-more-emphasize-gray {
  background: #f4f4f4;
  border: none;
}
.btn-more-emphasize-key {
  background: #242c3f;
  border: none;
}
.btn-more-emphasize-key a {
  color: #fff !important;
}
.btn-more-emphasize-w100 {
  width: 100% !important;
}
.btn-more-emphasize.btn-more-emphasize-off {
  opacity: 0.5;
}
.btn-more-emphasize.btn-more-emphasize-pdf:after {
  width: 19px;
  height: 24px;
  top: 36%;
  background-image: url(/assets_2017/images/icn-pdf-blue.svg);
}
.btn-more-emphasize.btn-more-emphasize-l {
  padding: 16px 32px 16px 16px;
  width: 90%;
  max-width: 640px;
  min-width: 240px;
  font-size: 2rem;
}
.btn-more-emphasize.btn-more-emphasize-l span {
  display: block;
  margin-top: 8px;
  text-align: center;
  font-size: 1.6rem;
}
.btn-more-emphasize.btn-more-emphasize-l:after {
  width: 24px;
  height: 24px;
  margin-top: -10px;
  background-size: 24px 24px;
}

.btn-down {
  width: 120px;
  min-width: 120px;
  padding-right: 10px;
  padding-left: 10px;
}
.btn-down:after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.btn-more-red-fixed {
  border-color: #cc0000;
  color: #cc0000;
  background-color: #fff;
}
.btn-more-red-fixed:after {
  background-image: none;
}

.btn-thumb {
  display: block;
  height: 100%;
  padding: 0 0 24px;
  font-size: 1.7rem;
}
.btn-thumb figure {
  margin-bottom: 24px;
}
.btn-thumb img {
  width: 100%;
}
.btn-thumb span {
  display: block;
  margin-top: 10px;
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 1.4;
}
.btn-thumb .figure-caption {
  padding: 0 16px;
}
.btn-thumb .figure-caption span {
  line-height: 1.6;
}
.btn-thumb.btn-bnr-m {
  padding: 0;
}
.btn-thumb.btn-bnr-m figure {
  margin-bottom: 0;
}
.btn-thumb.btn-bnr-m span {
  margin-top: 0;
}

.btn-icn {
  position: relative;
  display: table;
  height: 100%;
  width: 100%;
  padding: 0;
}
.btn-icn span {
  display: table-cell;
  padding-top: 105px;
  padding-top: 53%;
  vertical-align: middle;
  font-size: 1.4rem;
  line-height: 1.4;
}
.btn-icn:before {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  margin-top: -50px;
  margin-left: -30px;
  background-position: center center;
  background-repeat: no-repeat;
}
.btn-icn-honor:before {
  background-image: url("../images/icn-honor.svg");
}
.btn-icn-scholarship:before {
  background-image: url("../images/icn-scholarship.svg");
}
.btn-icn-examination:before {
  background-image: url("../images/icn-examination.svg");
}
.btn-icn-club:before {
  background-image: url("../images/icn-club.svg");
}
.btn-icn-faq:before {
  background-image: url("../images/icn-faq.svg");
}
.btn-icn-test:before {
  background-image: url("../images/icn-test.svg");
}
.btn-icn-support:before {
  background-image: url("../images/examination/navi/icn-support.svg");
}
.btn-icn-form:before {
  background-image: url("../images/icn-form.svg");
}
.btn-icn-memo:before {
  background-image: url("../images/icn-memo.svg");
}
.btn-icn-star:before {
  background-image: url("../images/icn-star.svg");
}
.btn-icn-yen:before {
  background-image: url("../images/icn-yen.svg");
}
.btn-icn-pin:before {
  background-image: url("../images/icn-pin.svg");
}
.btn-icn-letter:before {
  background-image: url("../images/icn-letter.svg");
}
.btn-icn-flow:before {
  background-image: url("../images/icn-flow.svg");
}
.btn-icn-entry:before {
  background-image: url("../images/icn-entry.svg");
}
.btn-icn-howto:before {
  background-image: url("../images/icn-baloon.svg");
}

.item-headerbtn {
  position: absolute;
  bottom: 0;
  right: 0;
}

.btn-pdf {
  position: relative;
  display: inline-block;
  padding: 8px 24px;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
}
.btn-pdf:before {
  position: relative;
  top: -2px;
  content: "";
  display: inline-block;
  width: 19px;
  height: 24px;
  margin-right: 12px;
  background: url("/assets_2017/images/icn-pdf.svg") center center no-repeat;
  vertical-align: middle;
}
.btn-pdf:hover {
  text-decoration: none !important;
}

.btn-small {
  min-width: 240px;
  padding: 9px 40px;
}

.item-btns {
  margin: 20px 0 0;
}

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

/* list
------------------------------------- */
.banner-item {
  margin-bottom: 40px;
  text-align: center;
  background-color: #fff;
}
.banner-item img {
  max-width: 100%;
  margin: 0 auto;
}

.index-item {
  padding: 20px 0;
  border-bottom: 1px dotted #858585;
}
.index-item:last-of-type {
  border-bottom: 0;
}

.index-item-label,
.index-item-content {
  float: left;
  font-size: 1.5rem;
  font-weight: bold;
  color: #242c3f;
}

.index-item-label {
  width: 175px;
}

.index-item-content {
  float: right;
  width: calc(100% - 180px);
}

.snsBtn-list {
  position: relative;
  top: 5px;
}

.snsBtn-item {
  display: inline-block;
  margin-left: 10px;
}

.pageLink-list {
  padding-bottom: 20px;
  text-align: center;
}

.pageLink-item {
  display: inline-block;
  padding: 0 8px;
}

.qa-list {
  padding: 32px 24px;
  border-bottom: 1px dotted #858585;
}
.qa-list:last-of-type {
  border: 0;
}

.qa-section .qa-list {
  padding: 32px 0;
}
.qa-section .qa-list:first-of-type {
  padding-top: 0;
}

.qa-title,
.qa-content {
  position: relative;
  padding: 6px 0 6px 56px;
  line-height: 1.7;
}
.qa-title:before,
.qa-content:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  content: "";
  width: 40px;
  height: 40px;
  padding-top: 2px;
  color: #242c3f;
  overflow: hidden;
  font-size: 2rem;
  text-align: center;
  background: #e8ff00;
  font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: 700;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
}

.qa-title {
  margin: 0 0 16px;
  font-size: 1.7rem;
  font-weight: bold;
}
.qa-title:before {
  content: "Q";
}

.qa-content {
  font-size: 1.5rem;
}
.qa-content a {
  text-decoration: underline;
}
.qa-content:before {
  content: "A";
}
.qa-content p {
  margin-top: 16px;
}

.expand-title {
  position: relative;
  cursor: pointer;
  -webkit-transition: opacity 0.2s ease-out;
  transition: opacity 0.2s ease-out;
}
.expand-title:after {
  position: absolute;
  top: 50%;
  right: 20px;
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  background-image: url("../images/icn-plus.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  -webkit-transition: opacity 0.2s ease-out;
  transition: opacity 0.2s ease-out;
}
.expand-title:hover {
  opacity: 0.7;
}

.expand-content {
  display: none;
  background: #f4f4f5;
}

.expand-block-expanded .expand-title:after {
  background-image: url("../images/icn-minus.svg");
}

/* block
------------------------------------- */
.sp {
  display: none;
}

.section-header {
  position: relative;
}
.section-header .sub-title, .section-header .sub-title-white {
  text-align: left;
}

.inner-block {
  position: relative;
  max-width: 736px;
  width: 80%;
  margin: 0 auto;
}

.grid-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -1%;
  margin-right: -1%;
}

.grid-item-6 {
  position: relative;
  width: 48%;
  margin: 1%;
  background: white;
  min-height: 1%;
}

.grid-item-4 {
  position: relative;
  width: 31.33333%;
  margin: 1%;
  background: white;
  min-height: 1%;
}

.clmn-2-block {
  position: relative;
  float: left;
  width: calc((100% - 16px) / 2);
  margin-bottom: 16px;
  background: white;
}
.clmn-2-block:nth-of-type(2n) {
  float: right;
}

.clmn-3-block {
  position: relative;
  width: calc((100% - 32px) / 3);
  margin: 0 16px 16px 0;
  width: 31.33333%;
  margin: 1%;
  background: white;
}
.clmn-3-block:nth-child(3n) {
  margin-right: 0;
}

.clmn-4-block {
  position: relative;
  float: left;
  width: calc((100% - 48px) / 4);
  margin: 0 16px 16px 0;
  background: white;
}
.clmn-4-block:nth-of-type(4n) {
  margin-right: 0;
}

.square-block {
  position: relative;
}
.square-block:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.square-block a {
  text-decoration: none !important;
}

.square-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.icon {
  position: absolute;
  top: -26px;
  left: -18px;
}

.section {
  position: relative;
  padding: 80px 0 0;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.section-bg-gray {
  padding: 80px 0;
  background: #f4f4f4;
}

.block {
  margin-bottom: 32px;
}

.element {
  margin: 32px 0 0;
}
.element-border {
  padding: 0 0 32px;
  border-bottom: 1px solid #f1f1f1;
}
.element-border:last-of-type {
  padding-bottom: 0;
  border: 0;
}
.element h3 {
  margin: 0 0 16px;
}

.frame-block {
  position: relative;
  padding: 48px 0 32px;
  border: 2px solid #242c3f;
}
.frame-block .section-label {
  position: absolute;
  top: -18px;
  left: 0;
  width: 100%;
  font-size: 3.6rem;
  line-height: 1;
}
.frame-block a:link {
  text-decoration: underline;
}

.bgGray-block {
  padding: 24px;
  background: #f1f1f1;
}

.ib-block {
  display: inline-block;
}

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

.info-title-desc {
  font-size: 1.6rem;
  vertical-align: middle;
}

.info-title {
  display: inline-block;
  padding: 0 3px;
  margin-bottom: 16px;
  font-size: 2.4rem;
  font-weight: bold;
  border-bottom: 3px solid #e8ff00;
}
.info-title span {
  vertical-align: middle;
}

.col3-block-element {
  display: inline-block;
  width: 33.33333%;
  padding-right: 16px;
}
.col3-block-element:nth-child(3n) {
  padding-right: 0;
}

/* page-header
------------------------------------- */
.breadcrumbs {
  padding: 4px 16px;
  font-size: 1.2rem;
}

.page-header {
  display: table;
  width: 100%;
  height: 36vw;
  min-height: 160px;
  text-align: center;
}
.page-header.ud {
  height: 100vw;
}
.page-header-blue {
  background: rgba(36, 44, 63, 0.8);
  color: #fff;
}
.page-header-small {
  height: 30vw;
  min-height: 320px;
}
.page-header-lp {
  height: auto;
  min-height: 320px;
}
.page-header-lp img {
  width: 100%;
  height: auto;
}
.page-header-inner {
  display: table-cell;
  padding: 5px 0 0;
  vertical-align: middle;
}
.page-header-icon, .page-header-icon-exam, .page-header-icon-solution {
  display: block;
  width: 42px;
  height: 42px;
  margin: 0 auto 24px;
}
.page-header-icon-solution {
  background: url("../images/icn-qa-header.svg") center center no-repeat;
  background-size: contain;
}
.page-header-icon-exam {
  width: 46px;
  height: 30px;
  background: url("/assets_2017/images/icn-write.svg") center center no-repeat;
  background-size: contain;
}
.page-header-credit {
  position: relative;
  display: inline-block;
  margin-bottom: 8px;
  font-size: 2.4rem;
  font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: 700;
}
.page-header-credit-exam {
  margin-left: -48px;
}
.page-header-credit-exam:before {
  content: "";
  position: relative;
  display: inline-block;
  width: 46px;
  height: 30px;
  margin-right: 12px;
  background: url("/assets_2017/images/icn-write.svg") center center no-repeat;
  background-size: contain;
}
.page-header-title {
  margin-bottom: 32px;
  font-size: 4rem;
  font-weight: bold;
  line-height: 1;
  font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: 700;
}
.page-header-title.ud {
  margin-top: -16px;
  font-size: 1.8rem;
}
.page-header-title-jp {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
}
.page-header-title-en {
  display: block;
  margin-bottom: 8px;
  font-size: 1.6rem;
  font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: 700;
}
.page-header-title-caption {
  font-size: 1.6rem;
  vertical-align: middle;
}
.page-header-desc {
  font-size: 1.5rem;
  line-height: 1.8;
}
.page-header-large {
  height: 45vw;
}
.page-header-large .page-header-inner {
  padding-top: 20%;
  vertical-align: top;
}
.page-header-large .page-header-title {
  margin-bottom: 16px;
  font-size: 4.8rem;
  line-height: 1.2;
}
.page-header-catchphrase {
  margin-bottom: 8px;
  font-size: 1.8rem;
  font-weight: bold;
}

/* pageごとのindexmenu
------------------------------------- */
.page-indexmenu, .page-indexmenu-hasBg {
  padding: 60px 0;
}
.page-indexmenu-title {
  font-size: 3.2rem;
  text-align: center;
  font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: 700;
}
.page-indexmenu-list {
  font-size: 0;
  text-align: center;
}
.page-indexmenu-item {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
}
.page-indexmenu-item a {
  text-decoration: none;
}
.page-indexmenu-item:after {
  content: "｜";
  margin: 0 8px;
}
.page-indexmenu-item:last-of-type:after {
  display: none;
}
.page-indexmenu-hasBg .page-indexmenu-title,
.page-indexmenu-hasBg .page-indexmenu-item a,
.page-indexmenu-hasBg .page-indexmenu-item:after {
  color: #fff;
}
.page-indexmenu-examAo {
  background: url("/assets_2017/images/exam-admission-menubg.jpg") center center no-repeat;
  background-size: cover;
}

/* page-content
------------------------------------- */
.page-content, .page-content-bg-gray {
  padding: 0 0 96px;
  background: rgba(255, 255, 255, 0.95);
}
.page-content a:link, .page-content-bg-gray a:link,
.page-content a:visited,
.page-content-bg-gray a:visited {
  text-decoration: underline;
}
.page-content a:link:hover, .page-content-bg-gray a:link:hover,
.page-content a:visited:hover,
.page-content-bg-gray a:visited:hover {
  text-decoration: none;
}
.page-content.noAlp, .noAlp.page-content-bg-gray {
  background: white;
}
.page-content-bg-gray {
  background: #f4f4f4;
}

.page-content-header {
  text-align: center;
}

.page-content-title {
  padding: 64px 0 0;
  font-size: 3rem;
  font-weight: bold;
}

.page-content-headline {
  display: inline-block;
  width: 48px;
  height: 2px;
  background: #dfe0e2;
}

.page-cotent-intro {
  padding: 16px 0 0;
}

.txt-list {
  text-align: center;
}
.txt-list .txt-list-content {
  display: inline-block;
  text-align: left;
}
.txt-list .txt-list-content .txt-list-title {
  font-weight: bold;
}

.txtLC {
  text-align: center;
}
.txtLC .txtLC-cont {
  display: inline-block;
  margin: 0 auto;
  padding-left: 8px;
  padding-right: 8px;
  text-align: left;
}

/* table-content
------------------------------------- */
table {
  width: 100%;
  table-layout: fixed;
}

th,
td {
  padding: 14px;
  border: 1px solid #242c3f;
}

td.city, td.date, td.week, td.time {
  padding-left: 0;
  padding-right: 0;
  text-align: center;
}
td.city {
  width: 10%;
}
td.date {
  width: 13%;
}
td.week {
  width: 8%;
}
td.time {
  width: 20%;
}

/* =====================================
  pages
===================================== */
/* top
------------------------------------- */
.keyVisual {
  z-index: 10;
  position: relative;
  width: 100%;
}

.keyVisual-item {
  position: relative;
  overflow: hidden;
  width: 50%;
  background-position: center center;
  background-repeat: no-repeat;
}
.keyVisual-item a {
  display: block;
  color: #fff;
}
.keyVisual-item a:hover {
  opacity: 1;
  text-decoration: none !important;
}
.keyVisual-item .keyVisual-inner {
  z-index: 1;
  position: relative;
  display: table;
  width: 100%;
  height: 100%;
  text-align: center;
}
.keyVisual-item .keyVisual-inner-box {
  display: table-cell;
  vertical-align: middle;
}
.keyVisual-item.item-01 {
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  height: calc((100vw - 240px) / 2);
  font-size: 1.5rem;
  font-weight: bold;
  background-image: url("../images/index-kv-01.jpg");
  -webkit-transition: opacity 0.2s ease-out;
  transition: opacity 0.2s ease-out;
}
.keyVisual-item.item-01.item-01woc {
  background-image: none;
}
.keyVisual-item.item-01 img {
  margin-bottom: 5px;
}
.keyVisual-item.item-01 p {
  margin-bottom: 20px;
}
.keyVisual-item.item-01:hover {
  opacity: 0.7;
}
.keyVisual-item.item-01-half {
  right: 0;
  top: auto;
  bottom: 0;
  height: calc((100vw - 240px) / 4);
}
.keyVisual-item.item-02 {
  background: none;
}
.keyVisual-item.item-02 a,
.keyVisual-item.item-02 span {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.keyVisual-item.item-02 img {
  width: 100%;
  vertical-align: middle;
}
.keyVisual-item.item-02 a:hover {
  opacity: 0.7;
}
.keyVisual-item.item-04 {
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  background: none;
}
.keyVisual-item.item-04 img {
  width: 100%;
  vertical-align: middle;
}
.keyVisual-item.item-04 a:hover {
  opacity: 0.7;
}
.keyVisual-item.item-05 {
  overflow: hidden;
  position: absolute;
  right: 0;
  bottom: 0;
  background: none;
}
.keyVisual-item.item-05 img {
  width: 100%;
  vertical-align: middle;
}
.keyVisual-item.item-05 a:hover {
  opacity: 0.7;
}

#video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 0;
}
#video video {
  opacity: 0;
}

.tablet #video,
.mobile #video {
  display: none !important;
}
.tablet .keyVisual-item.item-01,
.mobile .keyVisual-item.item-01 {
  background-image: url("../images/index-kv-01-sp.jpg");
  background-size: cover;
}
.tablet .keyVisual-item.item-01.item-01woc,
.mobile .keyVisual-item.item-01.item-01woc {
  background-image: url("../images/index-kv-web-oc-sp.jpg");
}

.win .keyVisual-item.item-01, .win .keyVisual-item.item-02, .win .keyVisual-item.item-03, .win .keyVisual-item.item-04, .win .keyVisual-item.item-05 {
  width: 50%;
}
.win .keyVisual-item.item-03 span img {
  height: 100%;
  width: auto;
}

.keyVisual-item-child {
  float: left;
  width: 25%;
  height: calc((100vw - 240px) / 4);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-transition: opacity 0.2s ease-out;
  transition: opacity 0.2s ease-out;
  vertical-align: middle;
  text-align: center;
}
.keyVisual-item-child > a {
  display: block;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 2px;
  vertical-align: middle;
  width: 100%;
  height: calc((100vw - 240px) / 4);
}
.keyVisual-item-child.item-03-01 {
  background-image: url("/assets_2017/images/index-kv-fbae-s.jpg");
}
.keyVisual-item-child.item-03-02 {
  background-image: url("/assets_2017/images/index-kv-sports-s.jpg");
}
.keyVisual-item-child.item-oc2017 {
  background-image: url("/assets_2017/images/index-kv-oc-s.jpg");
}
.keyVisual-item-child:hover {
  opacity: 0.7;
}

.main-nav {
  padding: 24px 22px 18px 0;
  background: #f4f4f4;
}

.main-nav-icn,
.main-nav-list {
  float: left;
  text-align: center;
}

.main-nav-icn {
  width: 90px;
  padding: 6px 0;
}

.main-nav-list {
  width: calc(100% - 90px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.main-nav-item {
  width: calc(25% - 10px);
  margin: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 1440px) {
  .main-nav-item {
    width: calc(33.333333% - 10px);
  }
}
.main-nav-item a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 1.5em 1em;
  vertical-align: middle;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1.4;
  background: #fff;
}
.main-nav-item a:hover {
  text-decoration: none !important;
}
.main-nav-item span {
  display: block;
  font-size: 1.2rem;
}

.news-ticker {
  position: relative;
  z-index: 10;
  border-bottom: 2px solid #dfe0e2;
}

.news-mt {
  display: none;
}

.news-ticker-label,
.news-ticker-content {
  float: left;
}

.news-ticker-label {
  min-height: 39px;
}
.news-ticker-label img,
.news-ticker-label span {
  vertical-align: middle;
}
.news-ticker-label img {
  margin-right: 10px;
}

.news-ticker-content {
  width: calc(100% - 185px);
}

.news-ticker-list {
  height: 100%;
}

.news-ticker-item {
  display: table;
  height: 100%;
}
.news-ticker-item a {
  display: table-cell;
  padding-left: 5px;
  vertical-align: middle;
  text-decoration: none;
}

.index-section {
  padding-bottom: 80px;
}

.bnr-list {
  padding-bottom: 0 !important;
}
.bnr-list .banner-item {
  margin-bottom: 0;
}

.topics-carousel-item {
  position: relative;
  width: calc((100vw - 240px) / 3);
  margin-right: 2px;
}
.topics-carousel-item > span,
.topics-carousel-item a {
  position: relative;
  display: block;
  text-decoration: none;
}
.topics-item-label {
  display: table;
  width: 100%;
  height: calc((100vw - 240px) / 3 * 0.62);
  margin: 0;
  overflow: hidden;
  text-align: center;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.topics-item-label span {
  display: table-cell;
  vertical-align: middle;
}
.topics-item-label img {
  margin: 0 auto;
  max-width: 65%;
}

.topics-item-text {
  padding: 15px 15px 5px;
  font-size: 1.5rem;
  font-weight: bold;
}

.topics-item-01 .topics-item-label {
  background-image: url("../images/index-bnr-01.jpg");
}

.topics-item-02 .topics-item-label {
  background-image: url("../images/index-bnr-02.jpg");
}

.topics-item-03 .topics-item-label {
  background-image: url("../images/index-bnr-oicnews.jpg");
}

.index-section.events {
  background-image: url("../images/index-bg-events.jpg");
}
.index-section.events h2 {
  margin-bottom: 42px;
}
.index-section.events .lead-copy {
  margin-bottom: 42px;
}
.index-section.events .btn, .index-section.events .btn-yellow {
  padding: 36px 0;
  font-size: 1.6rem;
}

.index-section.department h2 {
  text-align: left;
  line-height: 1;
}

.index-section.knowledge {
  background-position: top center;
  background-image: url("../images/index-bg-knowledge.jpg");
}
.index-section.knowledge h2 {
  margin-bottom: 20px;
}
.index-section.knowledge .sub-title, .index-section.knowledge .sub-title-white {
  margin-bottom: 50px;
}
.index-section.knowledge .clmn-4-block {
  background-color: rgba(255, 255, 255, 0.93);
}
.index-section.knowledge .btn, .index-section.knowledge .btn-yellow {
  background-color: transparent;
}

.index-section.news {
  background-color: #e9e9eb;
}

/* event/oc_info
------------------------------------- */
.entryArea {
  padding: 64px 0;
  background: #fff;
}
.entryArea .txtC {
  max-width: 736px;
  margin: 0 auto;
}

.num-list-area {
  margin-top: 40px;
}
.num-list-area .num-list {
  display: table;
  margin-bottom: 24px;
  text-align: left;
}
.num-list-area .num-list dt {
  display: table-cell;
}
.num-list-area .num-list dt span {
  display: inline-block;
  width: 64px;
  height: 64px;
  line-height: 64px;
  color: #e8ff00;
  font-size: 3rem;
  text-align: center;
  font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: 700;
  background: #242c3f;
  border-radius: 50% 50%;
}
.num-list-area .num-list dt span.red {
  background: #e50012;
}
.num-list-area .num-list dd {
  display: table-cell;
  padding-left: 20px;
  text-align: left;
  vertical-align: middle;
  font-size: 1.4rem;
}
.num-list-area .num-list dd strong {
  font-size: 1.8rem;
}
.num-list-area .num-list dd .num-list-sub p {
  margin-top: 16px;
}
.num-list-area .num-list dd .num-list-sub p strong {
  font-size: 1.6rem;
}
.num-list-area .num-list dd .num-list-sub p strong:before {
  content: "●";
}

.entryArea-lblue {
  padding: 120px 16px 160px;
  color: #fff;
  text-align: center;
  background: #26B9D0;
}
.entryArea-lblue.lPink {
  background: #da3080;
}
.entryArea-lblue h2 {
  margin-bottom: 8px;
  color: #fff;
}
.entryArea-lblue h2 span {
  border-bottom: 3px solid #fff;
}
.entryArea-lblue.lgray {
  color: #333;
  background-color: #f3f3f3;
}
.entryArea-lblue.lgray h2 {
  color: #333;
}
.entryArea-lblue.lgray h2 span {
  border-bottom: 3px solid #333;
}
.entryArea-lblue.lgray p {
  margin-top: 30px;
  font-size: 18px;
}
.entryArea-lblue .sub-title, .entryArea-lblue .sub-title-white {
  color: #fff;
}
.entryArea-lblue .btn-more-emphasize {
  padding: 24px 32px 16px 16px;
  width: 80%;
  max-width: 640px;
  min-width: 240px;
  font-size: 2rem;
}
.entryArea-lblue .btn-more-emphasize span {
  display: block;
  margin-top: 8px;
  text-align: center;
  font-size: 1.6rem;
}
.entryArea-lblue .btn-more-emphasize:after {
  width: 24px;
  height: 24px;
  margin-top: -10px;
  background-size: 24px 24px;
}

.schedule {
  padding: 24px 8px 80px;
  margin: 0 auto;
  text-align: left;
  font-size: 0;
}
.schedule li {
  display: inline-block;
  padding: 0 4px;
  width: 25%;
  text-align: center;
}
.schedule li .day {
  margin: 0 0 8px 0;
  padding: 24px 0 16px;
  font-size: 3.6rem;
  line-height: 2.8rem;
  background: rgb(255, 255, 255);
  border: 3px solid #eee;
}
.schedule li span {
  display: block;
  font-size: 1.4rem;
}
.schedule.schedule-type2 li {
  width: 20%;
}
.schedule.schedule-type2 li .day {
  padding: 32px 0 0;
  background: rgb(255, 255, 255);
  border: none;
}
.schedule.schedule-type2 li .sBtn {
  width: 100%;
}

.event-sp {
  width: 100%;
  padding: 32px 64px;
  border: 2px solid #dfe0e2;
}

.dayTtl {
  display: inline-block;
  margin: 0 0 16px;
  font-size: 3rem;
  line-height: 2.8rem;
  border-bottom: 3px solid #dfe0e2;
}
.dayTtl img {
  vertical-align: middle;
}
.dayTtl span {
  margin: 0 0 0 4px;
  font-size: 1.4rem;
}

/* =====================================
	footer
===================================== */
.section.contact {
  padding: 80px 0;
  background-image: url("../images/index-bg-contact.jpg");
}
.section.contact .title {
  color: #fff;
  margin-bottom: 20px;
}
.section.contact .title span {
  border-color: #fff;
}
.section.contact .sub-title-white {
  margin-bottom: 50px;
}
.section.contact .contact-banner-item {
  padding: 25px 0;
  background: rgba(255, 255, 255, 0.3);
  color: #fff;
  text-align: center;
}
.section.contact .contact-banner-item-phone a {
  color: #fff !important;
  opacity: 1;
  text-decoration: none;
}
.section.contact .contact-banner-label {
  margin: 0 0 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
}
.section.contact .btn-mail {
  margin: 0 40px;
}
.section.contact .phone-num {
  font-size: 2.2rem;
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-weight: bold;
  letter-spacing: 1px;
}
.section.contact .phone-num:before {
  display: inline-block;
  content: "";
  width: 36px;
  height: 36px;
  margin: 0 10px 0 0;
  margin-top: -2px;
  background: url("../images/icn-tel.svg") center center no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.footer {
  clear: both;
  background: #242c3f;
  color: #fff;
}
.footer a {
  color: #fff;
}

.footer-navs {
  padding: 35px 40px 30px;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (min-width: 769px) {
  .footer-navs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footer-navs__info {
    width: 70%;
  }
  .footer-navs__sns {
    width: 30%;
  }
}

.footer-nav-list {
  padding: 20px 0 0;
}

.footer-nav-item {
  display: inline-block;
  margin: 0 25px 0 0;
  vertical-align: middle;
}

.footer-sitemap-item {
  font-size: 1.2rem;
}

.copyright {
  padding: 13px 0;
  border-top: 1px solid #666;
  text-align: center;
  font-size: 1rem;
  font-weight: bold;
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
}

/*
  footer SNS
--------------------------------- */
.footer-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 20px;
}
@media screen and (min-width: 769px) {
  .footer-sns {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.footer-sns__item {
  margin-right: 10px;
}
.footer-sns__item:last-of-type {
  margin-right: 0;
}
.footer-sns__item img {
  width: 40px;
}

/* =====================================
  @media only screen （pc 1100px 以下）
===================================== */
@media only screen and (max-width: 1100px) {
  /*
    pages
  ===================================== */
  /* top
  ------------------------------------- */
  .keyVisual-item-child > a {
    font-size: 1.5rem;
  }
  .main-nav-item a {
    padding-left: 0;
    padding-right: 0;
  }
  .main-nav-item span {
    font-size: 0.9rem;
  }
}
/* =====================================
  @media only screen（tablet）
===================================== */
@media only screen and (max-width: 980px) {
  .page-bar {
    height: 56px;
    padding: 0 20px;
  }
  .page-bar-title-en {
    font-size: 1.3rem;
  }
  .page-bar-title-jp {
    font-size: 1rem;
  }
  /*
    header
  ===================================== */
  .header {
    position: relative;
    width: 100%;
    height: auto;
    border: 0;
    z-index: 101;
    background: white;
  }
  .header-inner {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    padding: 5px;
    background: #fff;
  }
  .siteLogo {
    font-size: 1.2rem;
  }
  .siteLogo a {
    padding: 0;
    text-align: left;
    vertical-align: middle;
  }
  .siteLogo img {
    display: inline-block;
    height: 60px;
    margin: 0 10px 0 0;
    vertical-align: middle;
  }
  .siteLogo span {
    display: inline-block;
    margin: 0;
    vertical-align: middle;
  }
  .drawer-hamburger {
    display: block;
  }
  .drawer-icon-text {
    display: block;
    margin-top: 13px;
    font-size: 1rem;
    font-family: "Montserrat", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
    font-weight: 700;
  }
  .drawer-open .drawer-icon-text {
    opacity: 0;
  }
  .drawer-nav {
    background: #f4f4f4 !important;
  }
  .drawer-nav-inner {
    padding-bottom: 90px;
  }
  .drawer-nav-inner .gNav-list {
    margin-bottom: 25px;
  }
  .drawer-nav-inner .gNav-item {
    border: 0;
    border-bottom: 1px solid #dfe0e2;
  }
  .drawer-nav-inner .gNav-item a {
    padding-left: 30px;
  }
  .drawer-nav-inner .footer-navs {
    padding: 20px 20px 0;
  }
  .drawer-nav-inner .footer-navs img {
    height: 38px;
  }
  .header > .gNav {
    padding-top: 70px;
  }
  .header > .gNav ul,
  .header > .gNav p {
    float: left;
  }
  .header > .gNav ul {
    margin: 0;
    width: 80%;
    background: #dee0e2;
  }
  .header > .gNav .gNav-item,
  .header > .gNav .gNav-item-contact {
    height: 60px;
    border: 0;
  }
  .header > .gNav .gNav-item a,
  .header > .gNav .gNav-item-contact a {
    font-size: 0.9rem;
    text-align: center;
    text-decoration: none;
  }
  .header > .gNav .gNav-item a:before,
  .header > .gNav .gNav-item-contact a:before {
    display: block;
    width: 100%;
    height: 22px;
    margin: 0 auto 7px;
    background-size: auto 100%;
  }
  .header > .gNav .gNav-item span,
  .header > .gNav .gNav-item-contact span {
    display: block;
  }
  .header > .gNav .gNav-item {
    float: left;
    width: 25%;
  }
  .header > .gNav .gNav-item a {
    padding-left: 0;
    background: #dee0e2;
  }
  .header > .gNav .gNav-item-contact {
    width: 20%;
    padding: 0;
  }
  .header > .gNav .gNav-item-contact a {
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
  }
  /*
    content
  ===================================== */
  .content {
    margin-left: 0;
  }
  .content:before {
    left: 0;
    height: 4px;
    width: 100%;
  }
  .section {
    padding: 80px 0 75px;
  }
  .section h2,
  .section .title {
    margin: 0 0 30px;
    font-size: 3rem;
  }
  .section h2 img,
  .section .title img {
    height: 30px;
  }
  .section h2.img-title-narrow,
  .section .title.img-title-narrow {
    margin-bottom: 8px;
  }
  .section h2.img-title-narrow img,
  .section .title.img-title-narrow img {
    height: 22px;
  }
  .section h2.img-title-narrow + .sub-title, .section h2.img-title-narrow + .sub-title-white,
  .section .title.img-title-narrow + .sub-title,
  .section .title.img-title-narrow + .sub-title-white {
    margin-bottom: 24px;
  }
  /*
    components
  ===================================== */
  /* list
  ------------------------------------- */
  .banner-item {
    margin-bottom: 30px;
  }
  .page-header-large .page-header-inner {
    padding-top: 0;
    vertical-align: middle;
  }
  /*
    pages
  ===================================== */
  /* top
  ------------------------------------- */
  .keyVisual-item.item-01, .keyVisual-item.item-01-half {
    position: absolute;
    background-image: url("../images/index-kv-01.jpg");
    background-size: cover;
    height: 50vw;
  }
  .keyVisual-item.item-01.item-01woc, .keyVisual-item.item-01-half.item-01woc {
    background-image: url("../images/index-kv-web-oc-sp.jpg");
    background-size: 100% auto;
  }
  .keyVisual-item.item-01.item-01woc img, .keyVisual-item.item-01-half.item-01woc img {
    display: none;
  }
  #video,
  video {
    display: none !important;
  }
  .keyVisual-item-child {
    height: 25vw;
  }
  .keyVisual-item-child > a {
    font-size: 1.5rem;
  }
  .main-nav-item span {
    font-size: 0.9rem;
    font-weight: normal;
  }
  .topics-carousel-item {
    position: relative;
    width: 33.3333333333vw;
  }
  .topics-item-label {
    height: 20.6666666667vw;
  }
  .topics-item-label img {
    max-width: 60%;
  }
  .index-section.events h2 {
    margin-bottom: 20px;
  }
  .index-section.events .lead-copy {
    margin-bottom: 20px;
  }
  .schedule li {
    width: 33.3333%;
    text-align: center;
  }
  .schedule.schedule-type2 li {
    width: 33.3333%;
  }
  .index-section.knowledge h2 {
    margin-bottom: 20px;
  }
  .index-section.knowledge .sub-title, .index-section.knowledge .sub-title-white {
    margin-bottom: 30px;
  }
}
/* =====================================
  @media only screen（mobile）
===================================== */
@media only screen and (max-width: 767px) {
  /*
    content
  ===================================== */
  .content:before {
    display: none;
  }
  /*
    components
  ===================================== */
  /* heading
  ------------------------------------- */
  h3 {
    font-size: 1.5rem;
    font-weight: bold;
  }
  .block-title {
    color: #fff;
    background: #242c3f;
    padding: 16px 12px;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1;
  }
  .section-label {
    margin-bottom: 16px;
    font-size: 1.6rem;
  }
  .section-label span {
    padding: 0 16px;
  }
  /* text
  ------------------------------------- */
  .sub-title, .sub-title-white {
    font-size: 1.2rem;
    margin: 0 0 5px;
  }
  .sub-title.sub-title-l, .sub-title-l.sub-title-white {
    font-size: 1.6rem;
  }
  .lead-copy {
    padding: 0 16px;
    font-size: 1.2rem;
    text-align: left;
  }
  .lead-copy br {
    display: none;
  }
  .tag {
    position: relative;
    top: -2px;
    min-width: 56px;
    margin: 0 8px 0 0;
    padding: 1px 0 0;
    font-size: 0.9rem;
    vertical-align: middle;
  }
  .notes {
    font-size: 1rem;
  }
  /* button
  ------------------------------------- */
  .btn-more, .btn-more-white, .btn-more-emphasize, .btn-down, .btn-more-red-fixed {
    width: auto;
    min-width: 75%;
  }
  .btn-down {
    width: 100%;
    min-width: inherit;
    padding: 8px 10px 8px 0;
  }
  .btn-down:after {
    width: 10px;
    height: 10px;
    margin-top: -5px;
    background-size: contain;
  }
  .btn-thumb {
    padding: 0 0 16px;
    font-size: 1.4rem;
  }
  .btn-thumb figure {
    margin-bottom: 16px;
  }
  .btn-thumb span {
    display: none;
  }
  .btn-thumb .figure-caption {
    text-align: left;
  }
  .btn-thumb .figure-caption span {
    display: block;
  }
  .btn-thumb .figure-caption span br {
    display: none;
  }
  .btn-icn span {
    padding-top: 55%;
    font-size: 0.9rem;
  }
  .btn-icn:before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 36px;
    height: 36px;
    margin-top: -30px;
    margin-left: -18px;
    background-size: contain;
  }
  .btn-more-emphasize {
    padding-left: 30px;
    padding-right: 30px;
  }
  .btn-more-emphasize.btn-more-emphasize {
    padding: 12px 32px 12px 16px;
    width: 90%;
    font-size: 1.5rem;
    line-height: 1.5;
    text-align: left;
  }
  .btn-more-emphasize.btn-more-emphasize:after {
    width: 16px;
    height: 16px;
    margin-top: -10px;
    background-size: 16px 16px;
  }
  .btn-more-emphasize.btn-more-emphasize-pdf:after {
    top: 50%;
  }
  .item-headerbtn {
    display: none;
  }
  .item-btns {
    margin: 20px 0;
  }
  /* list
  ------------------------------------- */
  .banner-item {
    margin-bottom: 20px;
  }
  .index-item {
    padding: 10px 0;
  }
  .index-item:last-of-type {
    border-bottom: 1px dotted #858585;
  }
  .index-item-label,
  .index-item-content {
    float: none;
    width: 100%;
    font-size: 1.2rem;
  }
  .index-item-label {
    margin: 0 0 5px;
  }
  .pageLink-list {
    padding: 0 15px 20px;
    text-align: left;
  }
  .pageLink-item {
    float: left;
    display: block;
    padding: 0;
    margin: 0 10px 10px 0;
    width: calc((100% - 20px) / 3);
  }
  .pageLink-item:nth-of-type(3n) {
    margin-right: 0;
  }
  .pageLink-item a {
    font-size: 1.2rem;
  }
  .qa-list {
    padding: 16px 10px;
  }
  .qa-section .qa-list {
    padding: 16px 0;
  }
  .qa-title,
  .qa-content {
    padding: 0;
  }
  .qa-title:before,
  .qa-content:before {
    position: relative;
    top: inherit;
    left: inherit;
    width: 28px;
    height: 28px;
    margin-bottom: 6px;
    color: #242c3f;
    font-size: 1.4rem;
  }
  .qa-title {
    margin: 0 0 10px;
    font-size: 1.4rem;
  }
  .qa-content {
    font-size: 1.3rem;
  }
  .qa-content img {
    width: 100%;
    height: auto;
  }
  .expand-block {
    margin-bottom: 0 !important;
    padding-bottom: 16px;
  }
  .expand-title:after {
    right: 12px;
    width: 14px;
    height: 14px;
    margin-top: -8px;
  }
  /* block
  ------------------------------------- */
  .icon {
    position: absolute;
    width: 40px;
    height: 40px;
    top: -20px;
    left: -10px;
  }
  .icon img {
    width: 100%;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .section {
    padding: 30px 0;
  }
  .section .section-title {
    font-size: 1.8rem;
    margin-bottom: 24px;
  }
  .section .section-title span {
    border-bottom-width: 2px;
  }
  .inner-block {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }
  .clmn-2-block.clmn-2_1-block {
    width: 100%;
    margin-bottom: 0;
    padding: 0 16px 16px;
  }
  .clmn-3-block {
    width: calc((100% - 16px) / 3);
    margin: 0 8px 16px 0;
  }
  .block {
    margin-bottom: 16px;
  }
  .element {
    margin: 24px 0 0;
  }
  .area-section {
    padding-bottom: 20px;
  }
  .frame-block {
    width: calc(100% - 32px);
    padding: 32px 0 32px;
  }
  .frame-block .section-label {
    top: -12px;
    font-size: 2.4rem;
  }
  .info-title-desc {
    font-size: 1.2rem;
    display: block;
  }
  .info-title {
    display: inline-block;
    padding: 0 3px;
    margin-bottom: 8px;
    font-size: 1.8rem;
  }
  .info-text {
    font-size: 1.2rem;
  }
  /* page-header
  ------------------------------------- */
  .page-header {
    padding: 64px 16px;
    min-height: inherit;
  }
  .page-header-inner {
    padding-left: 8px;
    padding-right: 8px;
  }
  .page-header-small {
    height: 170px;
    min-height: inherit;
  }
  .page-header-lp {
    height: 100vw;
    min-height: 80px;
  }
  .page-header-icon, .page-header-icon-solution, .page-header-icon-exam {
    display: block;
    width: 22px;
    height: 22px;
    margin: 0 auto 16px;
  }
  .page-header-title {
    margin-bottom: 16px;
    font-size: 2.4rem;
  }
  .page-header-title-en {
    margin-bottom: 4px;
    font-size: 1.2rem;
  }
  .page-header-title-jp {
    margin-bottom: 4px;
    font-size: 1.2rem;
  }
  .page-header-subTitle {
    margin-bottom: 16px;
    font-size: 1rem;
  }
  .page-header-desc {
    font-size: 1.1rem;
  }
  .page-header-desc span {
    display: inline-block;
    max-width: 640px;
    text-align: left;
  }
  .page-header-large .page-header-inner {
    padding: 5% 0;
  }
  .page-header-large .page-header-credit {
    margin-bottom: 4px;
    font-size: 1.3rem;
  }
  .page-header-large .page-header-credit-exam:before {
    content: "";
    position: relative;
    display: inline-block;
    width: 36px;
    height: 20px;
    margin-right: 10px;
  }
  .page-header-large .page-header-title {
    margin-bottom: 8px;
    font-size: 2.4rem;
  }
  .page-header-catchphrase {
    font-size: 1.6rem;
  }
  /* pageごとのindexmenu
  ------------------------------------- */
  .page-indexmenu, .page-indexmenu-hasBg {
    padding: 30px 0 40px;
  }
  .page-indexmenu-title {
    font-size: 2.8rem;
  }
  .page-indexmenu-item {
    font-size: 1.1rem;
  }
  .page-indexmenu-item:after {
    margin: 0 1px;
  }
  .page-indexmenu-item:last-of-type:after {
    display: none;
  }
  .page-indexmenu .pt40, .page-indexmenu-hasBg .pt40 {
    padding-top: 20px !important;
  }
  /* page-content
  ------------------------------------- */
  .page-content, .page-content-bg-gray {
    background: rgba(255, 255, 255, 0.9);
  }
  .page-content-bg-gray {
    background: #f4f4f4;
  }
  /* table-content
  ------------------------------------- */
  .area-section table {
    display: block;
    width: 100%;
  }
  .area-section tbody {
    display: block;
  }
  .area-section th,
  .area-section td {
    display: inline-block;
    padding: 14px;
    border: 0;
  }
  .area-section tr {
    display: block;
    width: 100%;
    padding: 8px 10px;
    border: 1px solid #242c3f;
    border-top: 0;
    font-size: 0;
  }
  .area-section td {
    font-size: 1.2rem;
    padding: 0;
    line-height: 1.5;
  }
  .area-section td.city, .area-section td.date, .area-section td.week, .area-section td.time {
    width: auto;
    text-align: center;
  }
  .area-section td.city, .area-section td.date, .area-section td.week, .area-section td.place {
    padding-right: 5px;
  }
  .area-section td.city, .area-section td.date, .area-section td.week {
    display: inline;
  }
  .area-section td.time {
    padding-left: 0;
  }
  /*
    pages
  ===================================== */
  /* top
  ------------------------------------- */
  .index-section {
    padding: 0 0 80px;
  }
  .index-section,
  .section.contact {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .index-section h2,
  .index-section .title,
  .section.contact h2,
  .section.contact .title {
    margin: 0 0 20px;
    font-size: 2.8rem;
  }
  .index-section h2 img,
  .index-section .title img,
  .section.contact h2 img,
  .section.contact .title img {
    height: 22px;
  }
  .index-section h2 span,
  .index-section .title span,
  .section.contact h2 span,
  .section.contact .title span {
    border: 0;
  }
  .keyVisual-item.item-01, .keyVisual-item.item-01-half, .keyVisual-item.item-02, .keyVisual-item.item-03, .keyVisual-item.item-04, .keyVisual-item.item-05 {
    position: relative;
    float: left;
    width: 100vw !important;
    height: 50vw !important;
  }
  .keyVisual-item.item-01 {
    font-size: 1.2rem;
  }
  .keyVisual-item.item-01 img {
    height: 22px;
    margin: 0 auto 4px;
  }
  .keyVisual-item.item-01 p {
    margin: 0 0 7px;
  }
  .keyVisual-item.item-01 .btn-more-white {
    min-width: 60%;
    padding: 8px 0;
    font-size: 1.4rem;
  }
  .keyVisual-item-child {
    width: 100vw !important;
    height: 50vw !important;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .keyVisual-item-child > a {
    height: 50vw;
  }
  .keyVisual-item-child.item-03-01 {
    background-image: url("/assets_2017/images/index-kv-fbae.jpg");
  }
  .keyVisual-item-child.item-03-02 {
    background-image: url("/assets_2017/images/index-kv-sports.jpg");
  }
  .keyVisual-item-child.item-oc2017 {
    background-image: url("/assets_2017/images/index-kv-oc.jpg");
  }
  .main-nav {
    padding: 10px 10px 18px;
  }
  .main-nav-icn,
  .main-nav-list {
    float: none;
  }
  .main-nav-icn {
    display: block;
    width: 100%;
    height: 22px;
    padding: 0;
    margin: 0 0 10px;
    background-image: url("../images/icn-check-sp.svg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 100%;
  }
  .main-nav-icn img {
    visibility: hidden;
  }
  .main-nav-list {
    width: 100%;
  }
  .main-nav-item {
    width: calc(50% - 8px);
    margin: 4px;
  }
  .main-nav-item a {
    font-size: 1.2rem;
  }
  .main-nav-item span {
    margin-top: 2px;
  }
  .news-ticker {
    border-bottom-width: 1px;
  }
  .news-ticker-label,
  .news-ticker-content {
    float: none;
    width: 100%;
    font-size: 1.3rem;
  }
  .news-ticker-label {
    min-height: inherit;
  }
  .news-ticker-label img {
    height: 26px;
  }
  .news-ticker-item a {
    padding: 5px 10px;
  }
  .topics-carousel-item {
    position: relative;
    width: 50vw;
    margin-left: 1px;
    margin-right: 1px;
  }
  .topics-item-label {
    height: 31vw;
  }
  .topics-item-text {
    padding: 5px 5px 0;
    font-size: 1.1rem;
    line-height: 1.4rem;
  }
  .index-section.events h2 img {
    height: 34px;
  }
  .index-section.events .lead-copy {
    padding: 0 25px;
  }
  .index-section.events .btn, .index-section.events .btn-yellow {
    padding: 20px 0;
    font-size: 1.4rem;
  }
  .index-section.events .clmn-2-block {
    float: none;
    width: auto;
    margin: 0 10px 5px;
  }
  .entryArea-lblue {
    padding: 40px 16px;
  }
  .entryArea-lblue .sub-title, .entryArea-lblue .sub-title-white {
    color: #fff;
  }
  .entryArea-lblue .btn-more-emphasize {
    padding: 16px 32px 8px 16px;
    width: 100%;
    font-size: 1.5rem;
    text-align: left;
  }
  .entryArea-lblue .btn-more-emphasize:after {
    width: 16px;
    height: 16px;
    margin-top: -10px;
    background-size: 16px 16px;
  }
  .schedule {
    padding-bottom: 40px;
  }
  .schedule li {
    width: 50%;
    text-align: center;
  }
  .schedule.schedule-type2 li {
    width: 50%;
  }
  .index-section.department h2 {
    margin-bottom: 25px;
  }
  .index-section.knowledge h2 {
    margin-bottom: 10px;
  }
  .index-section.knowledge .sub-title, .index-section.knowledge .sub-title-white {
    margin-bottom: 30px;
  }
  .index-section.knowledge .clmn-4-block {
    width: calc((100% - 20px) / 3);
    margin: 0 10px 10px 0;
  }
  .index-section.knowledge .clmn-4-block:nth-of-type(3n) {
    margin-right: 0;
  }
  /*
    footer
  ===================================== */
  .section.contact .title {
    color: #fff;
    margin-bottom: 5px;
  }
  .section.contact .sub-title-white {
    margin-bottom: 30px;
  }
  .section.contact .contact-banner-item {
    float: none;
    width: 100%;
    padding: 16px 0;
  }
  .section.contact .contact-banner-label {
    margin: 0 0 8px;
    font-size: 1.4rem;
  }
  .section.contact .btn-mail {
    margin: 0 30px 8px;
  }
  .section.contact .phone-num {
    font-size: 2rem;
  }
  .section.contact .phone-num:before {
    display: inline-block;
    content: "";
    width: 32px;
    height: 32px;
    margin: 0 8px 0 0;
  }
  .footer-navs {
    padding: 24px 16px;
    font-size: 1.2rem;
  }
  .footer-nav-list {
    padding: 8px 0 0;
  }
  .footer-nav-item {
    display: block;
    margin: 0;
  }
  .footer-nav-item img {
    margin-bottom: 16px;
  }
  .copyright {
    padding: 13px 16px;
    border-color: #353535;
    text-align: left;
  }
}
@media print {
  body {
    zoom: 0.6;
    -webkit-print-color-adjust: exact;
  }
}
/* IE10以上 */
@media print and (-ms-high-contrast: none) {
  /* @pageの指定いらないかも */
  @page {
    size: A4;
    margin: 12.7mm 9.7mm;
  }
  body {
    zoom: 1.8;
    width: 1280px;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
}