@charset "UTF-8";
/*
color scheme

markup:
<style>
  .l-row {
    font-size: 10px;
  }
  .col-1 {
    padding: 5px;
    border-radius: 3px;
    box-shadow: 0 0 1px rgba(0, 0, 0, .5);
  }
</style>
<div class="l-group">
  <p>$ monochrome</p>
  <div class="l-row">
    <div class="col-1" style="background: #000; color: #fff;">1, #000</div>
    <div class="col-1" style="background: #333; color: #fff;">2, #333</div>
    <div class="col-1" style="background: #666; color: #fff;">3, #666</div>
    <div class="col-1" style="background: #999; color: #fff;">4, #999</div>
    <div class="col-1" style="background: #ccc;">5, #ccc</div>
    <div class="col-1" style="background: #e5e5e5;">6, #e5e5e5</div>
    <div class="col-1" style="background: #f5f5f5;">7, #f5f5f5</div>
    <div class="col-1" style="background: #fff;">8, #fff</div>
  </div>
  <p>$ blue</p>
  <div class="l-row">
    <div class="col-1" style="background: #0066cf; color: #fff;">1, #0066cf</div>
  </div>
  <p>$ orange</p>
  <div class="l-row">
    <div class="col-1" style="background: #fe6105; color: #fff;">1, #fe6105</div>
    <div class="col-1" style="background: #ffab22;">2, #ffab22</div>
  </div>
  <p>$ red</p>
  <div class="l-row">
    <div class="col-1" style="background: #b40000; color: #fff;">1, #b40000</div>
  </div>
  <p>$ yellow</p>
  <div class="l-row">
    <div class="col-1" style="background: #ff0;">1, #ff0</div>
    <div class="col-1" style="background: #fefcc9;">2, #fefcc9</div>
  </div>
  <p>$ green</p>
  <div class="l-row">
    <div class="col-1" style="background: #00a30a; color: #fff;">1, #00a30a</div>
    <div class="col-1" style="background: #e2f6cc;">2, #e2f6cc</div>
  </div>
  <p>$ purple</p>
  <div class="l-row">
    <div class="col-1" style="background: #8e61b7; color: #fff;">1, #8e61b7</div>
  </div>
</div>

<div class="l-group">
</div>

Styleguide 1.0
*/
/*
color scheme

markup:
<style>
  .l-row {
    font-size: 10px;
  }
  .col-1 {
    padding: 5px;
    border-radius: 3px;
    box-shadow: 0 0 1px rgba(0, 0, 0, .5);
  }
</style>
<div class="l-group">
  <p>$ monochrome</p>
  <div class="l-row">
    <div class="col-1" style="background: #000; color: #fff;">1, #000</div>
    <div class="col-1" style="background: #333; color: #fff;">2, #333</div>
    <div class="col-1" style="background: #666; color: #fff;">3, #666</div>
    <div class="col-1" style="background: #999; color: #fff;">4, #999</div>
    <div class="col-1" style="background: #ccc;">5, #ccc</div>
    <div class="col-1" style="background: #e5e5e5;">6, #e5e5e5</div>
    <div class="col-1" style="background: #f5f5f5;">7, #f5f5f5</div>
    <div class="col-1" style="background: #fff;">8, #fff</div>
  </div>
  <p>$ blue</p>
  <div class="l-row">
    <div class="col-1" style="background: #0066cf; color: #fff;">1, #0066cf</div>
  </div>
  <p>$ orange</p>
  <div class="l-row">
    <div class="col-1" style="background: #fe6105; color: #fff;">1, #fe6105</div>
    <div class="col-1" style="background: #ffab22;">2, #ffab22</div>
  </div>
  <p>$ red</p>
  <div class="l-row">
    <div class="col-1" style="background: #b40000; color: #fff;">1, #b40000</div>
  </div>
  <p>$ yellow</p>
  <div class="l-row">
    <div class="col-1" style="background: #ff0;">1, #ff0</div>
    <div class="col-1" style="background: #fefcc9;">2, #fefcc9</div>
  </div>
  <p>$ green</p>
  <div class="l-row">
    <div class="col-1" style="background: #00a30a; color: #fff;">1, #00a30a</div>
    <div class="col-1" style="background: #e2f6cc;">2, #e2f6cc</div>
  </div>
  <p>$ purple</p>
  <div class="l-row">
    <div class="col-1" style="background: #8e61b7; color: #fff;">1, #8e61b7</div>
  </div>
</div>

<div class="l-group">
</div>

Styleguide 1.0
*/
/* メインビジュアル */
.gakumonTopBlock {
    background: -webkit-linear-gradient(top, #237ecd 0%, #134978 100%);
    background: linear-gradient(to bottom, #237ecd 0%, #134978 100%);
}

.gakumonTopBlock__wrap {
    box-sizing: border-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 960px;
    min-height: 265px;
    margin: 0 auto;
}

.gakumonTopBlock__left {
    width: 520px;
    padding: 30px 0 0 10px;
    color: #fff;
}

.gakumonTopBlock__mainTitle {
    padding-left: 10px;
    font-size: 24px;
    border-bottom: 2px solid #fff;
    line-height: 40px;
}

.gakumonTopBlock__subTitle {
    margin-top: 10px;
    padding-left: 10px;
    font-size: 16px;
}

.gakumonTopBlock__info {
    margin-top: 15px;
    padding-left: 10px;
    padding-bottom: 10px;
    line-height: 20px;
}

.gakumonTopBlock__image {
    position: relative;
    min-height: 265px;
}

.gakumonTopBlock__note {
    position: absolute;
    box-sizing: border-box;
    bottom: 12px;
    right: 0;
    width: 380px;
    padding: 0 20px;
    color: #fff;
    font-size: 12px;
    text-shadow: 0px 0px 5px #000;
}

/* ページ内リンク */
.gakumonTopBlockNavi {
    background-color: #0ca5e6;
}

.gakumonTopBlockNavi__wrap {
    box-sizing: border-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    width: 960px;
    margin: 0 auto;
}

.gakumonTopBlockNavi__item {
    box-sizing: border-box;
    width: calc( 100% / 4);
    padding: 10px 0 10px 10px;
}

.gakumonTopBlockNavi__item:hover {
    color: #fff;
    text-decoration: none;
    opacity: 0.7;
}

.gakumonTopBlockNavi__item:last-of-type .gakumonTopBlockNavi__itemWrap {
    border-right: none;
}

.gakumonTopBlockNavi__itemWrap {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    height: 28px;
    margin-top: 6px;
    margin-bottom: 6px;
    border-right: 1px solid rgba(255, 255, 255, 0.4);
}

.gakumonTopBlockNavi__itemWrap:after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    right: 14px;
    margin-top: -4px;
    width: 6px;
    height: 6px;
    -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
            transform: rotate(-135deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
}

.gakumonTopBlockNavi__itemWrap--top:before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: -12px;
    margin-top: -4px;
    width: 6px;
    height: 6px;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
}

.gakumonTopBlockNavi__itemWrap--top:after {
    content: none;
}

.gakumonTopBlockNavi__itemIcon {
    padding-right: 22px;
}

.gakumonTopBlockNavi__itemText {
    font-size: 12px;
    line-height: 14px;
    font-weight: bold;
    color: #fff;
}

/* メニュー（吸着） */
.gakumonTopBlockNaviFix {
    width: 100%;
    background: #0ca5e6;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 20;
}

/* 左メイン */
.index {
    padding-top: 10px;
}

.jumbotron--slim {
    margin-top: 20px;
}

.jumbotron--slim__contents {
    padding: 12px;
    background-color: #e1f4ff;
}

.jumbotron--slim__search {
    box-sizing: border-box;
    padding: 24px 16px 20px;
    background-color: #fff;
    border-radius: 4px;
}

.jumbotron--slim__searchTitle {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}

.jumbotron--slim__searchLinkMulti {
    margin-top: 15px;
    font-size: 16px;
    box-shadow: 0px 0px 10px 3px rgba(0, 0, 0, 0.1);
}

.jumbotron--slim__searchLinkMulti ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: relative;
    border: 1px solid #07a4e4;
    border-radius: 3px;
}

.jumbotron--slim__searchLinkMulti ul li a {
    display: block;
    height: 100%;
    color: #07a4e4;
    text-decoration: none;
    letter-spacing: 0;
}

.jumbotron--slim__searchLinkMulti--kousyu {
    width: 224px;
    color: #07a4e4;
    border-right: 1px solid #07a4e4;
    line-height: 64px;
    text-align: center;
    box-sizing: border-box;
    position: relative;
}

.jumbotron--slim__searchLinkMulti--kousyu:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 187px;
    width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-right: 2px solid #07a4e4;
    border-bottom: 2px solid #07a4e4;
    margin-top: -8px;
}

.jumbotron--slim__searchLinkMulti--kousyu:hover {
    background: #dae2e5;
}

.jumbotron--slim__searchLinkMulti--area {
    width: 224px;
    color: #07a4e4;
    line-height: 64px;
    text-align: center;
    position: relative;
}

.jumbotron--slim__searchLinkMulti--area:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 187px;
    width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-right: 2px solid #07a4e4;
    border-bottom: 2px solid #07a4e4;
    margin-top: -8px;
}

.jumbotron--slim__searchLinkMulti--area:hover {
    background: #dae2e5;
}

.jumbotron--slim__searchLinkMulti--searchWrap {
    background: #fff;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}

.jumbotron--slim__searchLinkMulti--search {
    width: 218px;
    color: #fff;
    line-height: 64px;
    text-align: center;
    background: #07a4e4;
    position: relative;
}

.jumbotron--slim__searchLinkMulti--search:hover {
    opacity: 0.7;
}

.jumbotron--slim__searchLinkMultiIcon--kousyu {
    position: absolute;
    top: 16px;
    left: 15px;
}

.jumbotron--slim__searchLinkMultiIcon--area {
    position: absolute;
    top: 16px;
    left: 20px;
}

.jumbotron--slim__searchLinkMultiIcon--search {
    position: absolute;
    top: 22px;
    left: 20px;
}

.jumbotron--slim__searchLinkMultiIcon--searchText {
    position: relative;
    left: 10px;
    color: #fff;
}

.jumbotron {
    margin-top: 20px;
}

.jumbotron .jumbotron__contents .jumbotron__search {
    width: 684px;
    background: rgba(3, 63, 147, 0.8);
    padding: 15px 20px 20px;
    border-radius: 4px;
}

.jumbotron .jumbotron__contents .jumbotron__searchTitle {
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti {
    margin-top: 15px;
    font-size: 16px;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: relative;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti ul li a {
    display: block;
    height: 100%;
    text-decoration: none;
    color: #333;
    letter-spacing: 0;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--kousyu {
    width: 224px;
    background: #fff;
    line-height: 64px;
    text-align: center;
    border-right: 1px solid rgba(3, 63, 147, 0.8);
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
    box-sizing: border-box;
    position: relative;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--kousyu:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 187px;
    width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-right: 2px solid #07a4e4;
    border-bottom: 2px solid #07a4e4;
    margin-top: -8px;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--kousyu:hover {
    background: #dae2e5;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--area {
    width: 224px;
    background: #fff;
    line-height: 64px;
    text-align: center;
    position: relative;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--area:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 187px;
    width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-right: 2px solid #07a4e4;
    border-bottom: 2px solid #07a4e4;
    margin-top: -8px;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--area:hover {
    background: #dae2e5;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--searchWrap {
    background: #fff;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--search {
    width: 235px;
    line-height: 64px;
    text-align: center;
    background: #07a4e4;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    position: relative;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--search:hover {
    opacity: 0.7;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMultiIcon--kousyu {
    position: absolute;
    top: 16px;
    left: 15px;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMultiIcon--area {
    position: absolute;
    top: 16px;
    left: 20px;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMultiIcon--search {
    position: absolute;
    top: 22px;
    left: 20px;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMultiIcon--searchText {
    position: relative;
    left: 10px;
    color: #fff;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--other {
    display: block;
    margin-top: 10px;
    margin-right: 11px;
    line-height: 14px;
    font-size: 13px;
    color: #fff;
    text-align: right;
    position: relative;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--other:after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 5px;
    height: 5px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    right: -9px;
    margin-top: -4px;
}

.jumbotron .jumbotron__contents .jumbotron__searchLinkMulti--other a {
    color: #fff;
}

.jumbotron .jumbotron__contents .jumbotron__search input {
    border: none;
    background: #fff;
    padding-left: 20px;
}

.jumbotron .jumbotron__contents .jumbotron__search input.jumbotron__search__submit {
    width: 180px;
    background: #07a4e4;
    border: none;
    font-size: 18px;
}

.jumbotron .jumbotron__contents .jumbotron__search input.jumbotron__search__submit:hover {
    opacity: 0.7;
}

.jumbotron .jumbotron__contents .jumbotron__search .jumbotron__search__submitIcon {
    position: absolute;
    top: 13px;
    right: 140px;
}

.jumbotron .jumbotron__genrecontentsWrapper {
    margin-top: 15px;
}

.jumbotron .jumbotron__genrecontentsJob {
    display: table;
    width: 100%;
    height: 100%;
}

.jumbotron .jumbotron__genrecontentsJob h3 {
    display: table-header-group;
}

.jumbotron .jumbotron__genrecontentsJob_list {
    display: table-cell;
    width: 90%;
}

.jumbotron .jumbotron__genrecontentsJob_listMore {
    display: table-cell;
    width: 10%;
    vertical-align: bottom;
}

.multiplySearchContents {
    background-color: #e1f4ff;
    border-bottom: 2px solid #237ecd;
}

.multiplySearchContents--noBorder {
    margin-bottom: -35px;
    border-bottom: none;
}

.topSearchModal {
    width: 686px;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 20;
    margin: 0 auto;
}

.topSearchModal__layer--active {
    width: 100%;
    height: 120%;
    background: rgba(153, 153, 153, 0.5);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
}

.topSearchModal__wrap {
    border: 1px solid #043f94;
    box-shadow: 0px 4px 1px 0px rgba(3, 63, 147, 0.7);
    border-radius: 3px;
}

.topSearchModal__step {
    width: 100%;
    background: rgba(3, 63, 147, 0.8);
    position: relative;
}

.topSearchModal__step .jumbotron__searchLinkMulti {
    font-size: 16px;
    color: #333;
}

.topSearchModal__step .jumbotron__searchLinkMulti ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: relative;
}

.topSearchModal__step .jumbotron__searchLinkMulti--kousyu {
    width: 224px;
    background: #dae2e5;
    line-height: 65px;
    border-right: 1px solid #07a4e4;
    box-sizing: border-box;
    text-align: center;
    letter-spacing: 0;
    position: relative;
}

.topSearchModal__step .jumbotron__searchLinkMulti--kousyu:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 187px;
    width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-right: 2px solid #07a4e4;
    border-bottom: 2px solid #07a4e4;
    margin-top: -8px;
}

.topSearchModal__step .jumbotron__searchLinkMulti--kousyu:hover {
    background: #dae2e5;
    cursor: pointer;
}

.topSearchModal__step .jumbotron__searchLinkMulti--area {
    width: 224px;
    background: #dae2e5;
    line-height: 65px;
    box-sizing: border-box;
    text-align: center;
    letter-spacing: 0;
    position: relative;
}

.topSearchModal__step .jumbotron__searchLinkMulti--area:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 187px;
    width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-right: 2px solid #07a4e4;
    border-bottom: 2px solid #07a4e4;
    margin-top: -8px;
}

.topSearchModal__step .jumbotron__searchLinkMulti--area:hover {
    background: #dae2e5;
    cursor: pointer;
}

.topSearchModal__step .jumbotron__searchLinkMulti--searchWrap {
    background: #fff;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}

.topSearchModal__step .jumbotron__searchLinkMulti--search {
    width: 235px;
    line-height: 64px;
    background: #07a4e4;
    line-height: 64px;
    border: 1px solid #07a4e4;
    border-left: 1px solid #043f94;
    border-bottom: 1px solid #043f94;
    border-top-right-radius: 3px;
    box-sizing: border-box;
    text-align: center;
    letter-spacing: 0;
    position: relative;
}

.topSearchModal__step .jumbotron__searchLinkMulti--search:hover {
    opacity: 0.7;
    cursor: pointer;
}

.topSearchModal__step .jumbotron__searchLinkMulti--active {
    background: #fff;
    height: 66px;
}

.topSearchModal__step .jumbotron__searchLinkMulti--active:before {
    content: none;
}

.topSearchModal__step .jumbotron__searchLinkMulti--active:hover {
    background: #fff;
    cursor: default;
}

.topSearchModal__step .jumbotron__searchLinkMultiIcon--kousyu {
    position: absolute;
    top: 16px;
    left: 15px;
}

.topSearchModal__step .jumbotron__searchLinkMultiIcon--kousyuText {
    padding-right: 1px;
}

.topSearchModal__step .jumbotron__searchLinkMultiIcon--area {
    position: absolute;
    top: 16px;
    left: 20px;
}

.topSearchModal__step .jumbotron__searchLinkMultiIcon--search {
    position: absolute;
    top: 21px;
    left: 19px;
}

.topSearchModal__step .jumbotron__searchLinkMultiIcon--searchText {
    position: relative;
    top: -1px;
    left: 10px;
    color: #fff;
}

.topSearchModal__kousyu {
    padding-bottom: 15px;
    background: #fff;
}

.topSearchModal__kousyuSelect {
    height: 220px;
    padding: 20px 25px 0;
}

.topSearchModal__kousyuSelectLarge {
    float: left;
    width: 100%;
    line-height: 45px;
    font-size: 14px;
    letter-spacing: 0;
}

.topSearchModal__kousyuSelectLargeItem {
    display: block;
    padding: 5px 10px;
}

.topSearchModal__kousyuSelectLargeItem--link {
    display: block;
    padding: 5px 10px;
}

.topSearchModal__kousyuSelectLargeItem--link:hover {
    background: #dae2e5;
    text-decoration: none;
}

.topSearchModal__kousyuSelectLargeCount {
    display: inline-block;
}

.topSearchModal__kousyuSelectLargeCount--univ {
    display: inline-block;
}

.topSearchModal__kousyuSelectMiddle {
    position: relative;
    font-size: 12px;
    letter-spacing: 0;
}

.topSearchModal__kousyuSelectMiddle ul {
    display: table;
    width: 490px;
    position: absolute;
    top: 55px;
    left: 150px;
}

.topSearchModal__kousyuSelectMiddle ul li {
    display: table-cell;
}

.topSearchModal__kousyuSelectMiddleItem {
    display: inline-block;
    padding: 18px 15px;
}

.topSearchModal__kousyuSelectMiddleItem--link {
    display: inline-block;
    padding: 18px 15px;
}

.topSearchModal__kousyuSelectMiddleItem--link:hover {
    background: #dae2e5;
    text-decoration: none;
}

.topSearchModal__kousyuSelectMiddleCount {
    display: inline-block;
}

.topSearchModal__kousyuButton {
    width: 340px;
    position: relative;
    margin: 30px 18px 0px auto;
    border: 1px solid #0790d0;
    border-radius: 3px;
    text-align: center;
}

.topSearchModal__kousyuButton a {
    text-decoration: none;
}

.topSearchModal__kousyuButton:hover {
    opacity: 0.3;
}

.topSearchModal__kousyuButton:after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 2px solid #043f94;
    border-right: 2px solid #043f94;
    right: 20px;
    margin-top: -5px;
}

.topSearchModal__kousyuButtonLink:hover {
    text-decoration: none;
}

.topSearchModal__kousyuButtonLink--text {
    line-height: 50px;
    font-size: 16px;
    font-weight: bold;
}

.topSearchModal__kousyuButtonLink--image {
    position: absolute;
    top: 50%;
    left: 20px;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
}

.topSearchModal__area {
    padding: 20px 10px 15px;
    background: #fff;
    font-size: 14px;
}

.topSearchModal__areaItem {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 5px;
    position: relative;
}

.topSearchModal__areaItemLarge {
    display: inline-block;
    width: 100%;
    padding: 5px 14px;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 2px;
}

.topSearchModal__areaItemLarge:hover {
    background: #dae2e5;
    text-decoration: none;
}

.topSearchModal__areaItemLarge--noLink:hover {
    background: #fff;
}

.topSearchModal__areaItemLargeCount {
    display: inline-block;
}

.topSearchModal__areaItemLargeCount--long {
    display: block;
}

.topSearchModal__areaItemLarge--long {
    padding-top: 7px;
    padding-bottom: 7px;
}

.topSearchModal__areaItemMiddle {
    width: 514px;
    display: inline-block;
    position: absolute;
    top: 1px;
    left: 130px;
}

.topSearchModal__areaItemMiddleOne {
    display: inline-block;
    padding: 5px;
    box-sizing: border-box;
    font-size: 12px;
}

.topSearchModal__areaItemMiddleOne:hover {
    background: #dae2e5;
    text-decoration: none;
}

.topSearchModal__areaItemMiddleOne--noLink:hover {
    background: #fff;
}

.topSearchModal__areaItemMiddleCount {
    display: inline-block;
}

.topSearchModal__areaButton {
    width: 275px;
    margin: 30px 18px 0 auto;
    text-align: center;
}

.topSearchModal__areaButton a {
    text-decoration: none;
}

.topSearchModal__areaButtonWrap {
    position: relative;
    border: 1px solid #0790d0;
    border-radius: 3px;
}

.topSearchModal__areaButtonWrap:hover {
    opacity: 0.3;
}

.topSearchModal__areaButtonWrap:after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 2px solid #043f94;
    border-right: 2px solid #043f94;
    right: 20px;
    margin-top: -5px;
}

.topSearchModal__areaButtonLink:hover {
    text-decoration: none;
}

.topSearchModal__areaButtonLink--text {
    line-height: 50px;
    font-size: 16px;
    font-weight: bold;
}

.topSearchModal__areaButtonLink--image {
    position: absolute;
    top: 50%;
    left: 20px;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
}

/* 商品バナー */
.sideAT {
    margin-bottom: 0;
}

.gakumonMainBlock__topAdItem {
    display: block;
    padding: 0 12px 12px 12px;
    background: #e1f4ff;
}

.gakumonMainBlock__topAdItem--left {
    height: 49px;
    padding-left: 15px;
    padding-right: 20px;
}

.gakumonMainBlock__topAdItem--right {
    padding: 10px;
}

.gakumonMainBlock__topAdItem:hover {
    text-decoration: none;
}

.gakumonMainBlock__topAdItemIcon {
    position: relative;
}

.gakumonMainBlock__topAdItemIcon img {
    position: absolute;
    top: 5px;
    left: -4px;
}

.gakumonMainBlock__topAdItemWrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    min-height: 100px;
    background: #fff;
    border-radius: 4px;
    box-shadow: 0px 3px 10px 1px rgba(0, 0, 0, 0.1);
}

.gakumonMainBlock__topAdItemWrap:hover {
    background-color: #dae1e5;
}

.gakumonMainBlock__topAdItemImage {
    display: block;
    padding-top: 16px;
}

.gakumonMainBlock__topAdItemMainTitle {
    display: block;
    margin-bottom: 3px;
    line-height: 27px;
    font-size: 20px;
    color: #023f93;
    letter-spacing: 0;
}

.gakumonMainBlock__topAdItemInfo {
    line-height: 24px;
    font-size: 14px;
    color: #000;
}

/* ボタン群 */
.gakumonMainBtn__wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 12px 32px;
    background: #e1f4ff;
}

.gakumonMainBtn__wrap--upper {
    border-bottom: 2px solid #237ecd;
}

.gakumonMainBtn__cell {
    width: calc( 50% - 5px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
}

.gakumonMainBtn__btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    width: 100%;
    padding: 10px;
    background-color: #fff;
    border: 1px solid #237ecd;
    border-radius: 3px;
    box-shadow: 0px 2px 10px 2px rgba(0, 0, 0, 0.1);
}

.gakumonMainBtn__btn:hover {
    opacity: .8;
    text-decoration: none;
}

.gakumonMainBtn__mainTitle {
    color: #237ecd;
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
}

.gakumonMainBtn__subTitle {
    color: #237ecd;
    font-size: 14px;
}

/* 右ナビ */
.gakumonSideBlock {
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 40px;
    background: #f7f8f9;
}

.gakumonSideBlock__ranking {
    padding-top: 40px;
}

.gakumonSideBlock__rankingTitle {
    padding-bottom: 20px;
    border-bottom: solid 2px #dedede;
    line-height: 24px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}

.gakumonSideBlock__rankingBigItem {
    display: block;
    padding-bottom: 10px;
    border-bottom: solid 1px #dedede;
    position: relative;
}

.gakumonSideBlock__rankingBigItemIcon {
    position: absolute;
    top: -10px;
    left: 8px;
    z-index: 5;
}

.gakumonSideBlock__rankingBigItemImage {
    width: 130px;
    margin: 10px auto 6px;
}

.gakumonSideBlock__rankingBigItemImage img {
    border-radius: 4px;
}

.gakumonSideBlock__rankingBigItemImage img:hover {
    background: #fff;
    opacity: 0.3;
}

.gakumonSideBlock__rankingBigItemName {
    line-height: 21px;
    font-size: 14px;
    text-align: center;
}

.gakumonSideBlock__rankingSmallItem {
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: solid 1px #dedede;
}

.gakumonSideBlock__rankingSmallItem:hover {
    text-decoration: none;
}

.gakumonSideBlock__rankingSmallItemWrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.gakumonSideBlock__rankingSmallItemNumber {
    width: 40px;
    line-height: 21px;
    font-size: 16px;
    font-weight: bold;
    color: #666;
    text-align: center;
}

.gakumonSideBlock__rankingSmallItemName {
    width: 130px;
    margin-right: 10px;
    line-height: 21px;
    font-size: 14px;
}

.gakumonSideBlock__rankingSmallItemName:hover {
    text-decoration: underline;
}

.gakumonSideBlock__bunnya {
    margin-top: 55px;
}

.gakumonSideBlock__bunnyaTitle {
    padding-bottom: 20px;
    border-bottom: solid 2px #dedede;
    line-height: 24px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}

.gakumonSideBlock__bunnyaListItem {
    display: block;
    margin-top: 10px;
}

.gakumonSideBlock__bunnyaListItemLink {
    line-height: 21px;
    font-size: 12px;
}

.gakumonSideBlock__bunnyaListItemLink--optional {
    display: inline-block;
    font-size: 10px;
}

.gakumonSideBlock__bunnyaListItemLink--optional:hover {
    text-decoration: underline;
}

.gakumonSideBlock__link {
    margin-top: 55px;
}

.gakumonSideBlock__linkTitle {
    padding-bottom: 20px;
    border-bottom: solid 2px #dedede;
    line-height: 24px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}

.gakumonSideBlock__linkListItem {
    display: block;
    margin-top: 20px;
}

.gakumonSideBlock__linkListItemLink {
    line-height: 21px;
    font-size: 14px;
}

/* カテゴリデータエリア */
.gakumonMainBlock__bookTopTitle {
    margin-top: 25px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}

.gakumonMainBlock__bookTopTitle--divide {
    margin-top: 35px;
    padding-top: 28px;
    border-top: 2px solid #237ecd;
}

.gakumonMainBlock__bookTopSubTitle {
    margin-top: 15px;
    padding: 4px 10px;
    color: #fff;
    font-size: 16px;
    background-color: #237ecd;
}

.gakumonMainBlock__bookTopSubTitle--contents {
    margin-top: 30px;
}

/* カテゴリデータなし */
.gakumonArticleNoContents__articleTitle {
    margin-top: 20px;
    padding-left: 15px;
    font-size: 20px;
    font-weight: bold;
    border-left: 8px solid #237ecd;
    line-height: 1.4;
}

.gakumonArticleNoContents__articleSubTitle {
    margin: 20px 0 0;
    font-size: 14px;
    font-weight: bold;
}

.gakumonArticleNoContents__image {
    margin-top: 20px;
    text-align: center;
}

.gakumonArticleNoContents__articleContents {
    padding: 10px 40px 30px;
}

.gakumonArticleNoContents__articleText {
    margin-top: 10px;
}

.gakumonArticleNoContents__articleBold {
    font-weight: bold;
}

.gakumonArticleNoContents__articleMore {
    margin-top: 10px;
    text-align: right;
}

.gakumonArticleNoContents__articleMoreLink {
    position: relative;
    margin-right: 15px;
}

.gakumonArticleNoContents__articleMoreLink:after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 5px;
    height: 5px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 1px solid #043f94;
    border-right: 1px solid #043f94;
    right: -9px;
    margin-top: -3px;
}

/* 記事概要 */
.gakumonArticleSummary {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 12px 10px 14px;
}

.gakumonArticleSummary__right {
    margin-left: 16px;
}

.gakumonArticleSummary__articleTitle {
    color: #043f94;
    font-size: 16px;
    font-weight: bold;
}

.gakumonArticleSummary__articleText {
    margin-top: 15px;
}

.gakumonArticleSummary__articleMore {
    text-align: right;
}

.gakumonArticleSummary__articleMoreLink {
    position: relative;
    margin-right: 15px;
}

.gakumonArticleSummary__articleMoreLink:after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 5px;
    height: 5px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 1px solid #043f94;
    border-right: 1px solid #043f94;
    right: -9px;
    margin-top: -3px;
}

.gakumonArticleSummary__info {
    box-sizing: border-box;
    margin: 8px 10px 0;
    padding: 10px 5px;
    font-size: 10px;
    background-color: #f6f8f9;
    line-height: 1;
    text-align: right;
}

.gakumonArticleSummary--noContent {
    padding: 10px 10px 20px;
}

/* 共感コンテンツ導線 */
.gakumonVoiceBlock {
    padding: 15px 18px;
}

.gakumonVoiceBlock__items {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.gakumonVoiceBlock__item {
    box-sizing: border-box;
    width: 216px;
    margin-right: 20px;
    padding: 8px;
    box-shadow: 0px 0px 10px 3px rgba(0, 0, 0, 0.1);
}

.gakumonVoiceBlock__item:last-child {
    margin-right: 0;
}

.gakumonVoiceBlock__link {
    position: relative;
}

.gakumonVoiceBlock__image {
    position: relative;
    width: 200px;
    height: 210px;
    overflow: hidden;
}

.gakumonVoiceBlock__image > img {
    position: absolute;
    left: 50%;
    width: auto;
    height: 210px;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
}

.gakumonVoiceBlock__movieIcon {
    position: absolute;
    left: 10px;
    bottom: 77px;
}

.gakumonVoiceBlock__title {
    margin-top: 10px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.4;
}

.gakumonVoiceBlock__personInfo {
    margin-top: 10px;
    font-size: 11px;
}

.gakumonVoiceBlock__more {
    margin-top: 10px;
    text-align: right;
}

.gakumonVoiceBlock__moreLink {
    position: relative;
    margin-right: 15px;
}

.gakumonVoiceBlock__moreLink:after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 5px;
    height: 5px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 1px solid #043f94;
    border-right: 1px solid #043f94;
    right: -9px;
    margin-top: -3px;
}

.gakumonBookBlock__items {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 30px;
}

.gakumonBookBlock__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: calc(100% / 3);
}

.gakumonBookBlock__more {
    margin-top: 10px;
    text-align: right;
}

.gakumonBookBlock__moreLink {
    position: relative;
    margin-right: 15px;
}

.gakumonBookBlock__moreLink:after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 5px;
    height: 5px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 1px solid #043f94;
    border-right: 1px solid #043f94;
    right: -9px;
    margin-top: -3px;
}

/* 全国のオススメの学校 */
.gakumonRecommendSchool__items {
    margin-top: 20px;
}

.gakumonRecommendSchool__item {
    box-sizing: border-box;
    padding: 15px 10px;
    border-bottom: 1px solid #ccc;
}

.gakumonRecommendSchool__item:hover {
    background-color: #dae2e5;
}

.gakumonRecommendSchool__item:first-child {
    border-top: 1px solid #ccc;
}

.gakumonRecommendSchool__link:hover {
    text-decoration: none;
}

.gakumonRecommendSchool__school {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.gakumonRecommendSchool__image {
    margin-right: 10px;
}

.gakumonRecommendSchool__schoolName {
    font-size: 16px;
}

.gakumonRecommendSchool__schoolSubject {
    font-size: 12px;
}

.gakumonRecommendSchool__schoolInfo {
    color: #333;
    font-size: 14px;
}

.gakumonRecommendSchool__schoolInfoSub {
    color: #333;
}

/* 関連する学問もチェックしよう */
.gakumonRelation {
    margin-top: 20px;
    padding: 20px;
    background-color: #f7f8f9;
    text-align: center;
}

.gakumonRelation__wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    width: 704px;
    margin-top: 20px;
}

.gakumonRelation__item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 15px;
    margin-right: 12px;
}

.gakumonRelation__itemLink {
    position: relative;
    box-sizing: border-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 220px;
    min-height: 65px;
    font-size: 14px;
    border: solid 1px #c0c0c0;
    border-radius: 4px;
    box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.12);
    background-color: #fff;
}

.gakumonRelation__itemLink:hover {
    background-color: #dae2e5;
    text-decoration: none;
}

.gakumonRelation__itemLinkIcon {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    top: 0;
    left: 2px;
}

.gakumonRelation__itemLinkIcon--shigoto {
    margin-right: 4px;
    padding: 1px 2px;
    background: #4db8e4;
    border: solid 1px #4db8e4;
    border-radius: 2px;
    color: #fff;
    font-size: 10px;
}

.gakumonRelation__itemLinkIcon--shikaku {
    margin-right: 4px;
    padding: 1px 2px;
    background: #fff;
    border: solid 1px #4db8e4;
    border-radius: 2px;
    color: #4db8e4;
    font-size: 10px;
}

.gakumonRelation__itemLinkName {
    padding: 0 20px 10px;
    line-height: 21px;
    font-size: 14px;
}

/* エリアから探す */
@-webkit-keyframes searchAreaArea_tab-daitan {
    0% {
        left: 450px;
    }
    100% {
        left: 330px;
    }
}
@keyframes searchAreaArea_tab-daitan {
    0% {
        left: 450px;
    }
    100% {
        left: 330px;
    }
}

@-webkit-keyframes searchAreaArea_tab-senkaku {
    0% {
        left: 330px;
    }
    100% {
        left: 450px;
    }
}

@keyframes searchAreaArea_tab-senkaku {
    0% {
        left: 330px;
    }
    100% {
        left: 450px;
    }
}

.searchAreaArea {
    width: 724px;
    overflow: hidden;
}

.searchAreaArea__wrap {
    width: 960px;
    margin-left: -118px;
    margin-top: 40px;
    padding-bottom: 90px;
}

.searchAreaArea__title {
    font-size: 18px;
    letter-spacing: 2px;
    text-align: center;
}

.searchAreaArea__tab {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 900px;
    position: relative;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 15px;
    padding-top: 20px;
    border-bottom: 1px solid #979797;
    color: #043f94;
    cursor: pointer;
}

.searchAreaArea__tabOne {
    width: 120px;
    padding: 5px;
    font-size: 16px;
    text-align: center;
    box-sizing: border-box;
}

.searchAreaArea__tabOne:hover {
    background: #dae2e5;
}

.searchAreaArea__tabOne.is-show:hover {
    background: none;
    cursor: default;
}

.searchAreaArea__tabBorder {
    width: 120px;
    position: absolute;
    bottom: 0;
    border-bottom: 5px solid #043f94;
    color: #333;
}

.searchAreaArea__tabBorder.is-daitan {
    -webkit-animation-name: searchAreaArea_tab-daitan;
            animation-name: searchAreaArea_tab-daitan;
    -webkit-animation-duration: 0.3s;
            animation-duration: 0.3s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
}

.searchAreaArea__tabBorder.is-senkaku {
    -webkit-animation-name: searchAreaArea_tab-senkaku;
            animation-name: searchAreaArea_tab-senkaku;
    -webkit-animation-duration: 0.3s;
            animation-duration: 0.3s;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
}

.searchAreaArea__contents {
    padding-top: 20px;
}

.searchAreaArea__contentsLarge {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.searchAreaArea__contentsLargeOne {
    display: block;
    position: relative;
    line-height: 26px;
    margin-right: 2px;
    margin-left: 2px;
    padding-right: 20px;
    padding-left: 20px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}

.searchAreaArea__contentsLargeOne:after {
    content: '|';
    position: absolute;
    left: -5px;
    top: -1px;
    font-size: 15px;
}

.searchAreaArea__contentsLargeOne:first-of-type:after {
    content: '';
}

.searchAreaArea__contentsLargeOne:hover {
    background: #dae2e5;
    text-decoration: none;
}

.searchAreaArea__contentsMiddle {
    position: relative;
}

.searchAreaArea__contentsMiddleWrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 40px;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    background: #fff;
    position: absolute;
    top: 20px;
    border: 1px solid #c7c7c7;
}

.searchAreaArea__contentsMiddleWrap:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    width: 18px;
    height: 18px;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 1px solid #c7c7c7;
    border-right: 1px solid #c7c7c7;
    margin-top: -10px;
    background: #fff;
}

.searchAreaArea__contentsMiddleWrapTohoku {
    left: 120px;
}

.searchAreaArea__contentsMiddleWrapTohoku:before {
    left: 74px;
}

.searchAreaArea__contentsMiddleWrapKanto {
    left: 120px;
}

.searchAreaArea__contentsMiddleWrapKanto:before {
    left: 150px;
}

.searchAreaArea__contentsMiddleWrapKoshinetsu {
    left: 180px;
}

.searchAreaArea__contentsMiddleWrapKoshinetsu:before {
    left: 174px;
}

.searchAreaArea__contentsMiddleWrapTokai {
    left: 230px;
}

.searchAreaArea__contentsMiddleWrapTokai:before {
    left: 208px;
}

.searchAreaArea__contentsMiddleWrapHokuriku {
    left: 330px;
}

.searchAreaArea__contentsMiddleWrapHokuriku:before {
    left: 184px;
}

.searchAreaArea__contentsMiddleWrapKansai {
    left: 295px;
}

.searchAreaArea__contentsMiddleWrapKansai:before {
    left: 294px;
}

.searchAreaArea__contentsMiddleWrapChugokushikoku {
    left: 90px;
}

.searchAreaArea__contentsMiddleWrapChugokushikoku:before {
    left: 599px;
}

.searchAreaArea__contentsMiddleWrapKyushuokinawa {
    left: 140px;
}

.searchAreaArea__contentsMiddleWrapKyushuokinawa:before {
    left: 673px;
}

.searchAreaArea__contentsMiddleClose {
    width: 20px;
    height: 20px;
    margin-right: 10px;
    margin-left: 10px;
}

.searchAreaArea__contentsMiddleClose:hover {
    cursor: pointer;
    opacity: 0.3;
}

.searchAreaArea__contentsSmall {
    display: block;
    position: relative;
    line-height: 24px;
    margin-right: 2px;
    margin-left: 2px;
    padding-right: 20px;
    padding-left: 20px;
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.34px;
}

.searchAreaArea__contentsSmall:after {
    content: '|';
    position: absolute;
    left: -5px;
    top: -1px;
    font-size: 13px;
}

.searchAreaArea__contentsSmall:first-of-type:after {
    content: '';
}

.searchAreaArea__contentsSmall:hover {
    background: #dae2e5;
    text-decoration: none;
    z-index: 10;
}

.searchAreaArea__map {
    position: relative;
    margin-bottom: 15px;
    padding-top: 20px;
}

.searchAreaArea__map img {
    display: block;
    margin: 0 auto;
}

.searchAreaArea__map__areaBox__name {
    width: 100%;
    padding: 5px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    line-height: 1;
    box-sizing: border-box;
}

.searchAreaArea__map__areaBox__wrapper {
    margin-top: 3px;
    padding: 0 5px;
}

.searchAreaArea__map__areaBox__list {
    margin-left: -1em;
    font-size: 12px;
    letter-spacing: -.4em;
}

.searchAreaArea__map__areaBox__list a {
    margin-left: 1em;
    font-size: 12px;
    color: #043f94;
    line-height: 1.75;
    letter-spacing: normal;
}

.searchAreaArea__map__areaBox__list p {
    margin-left: 1em;
    font-size: 12px;
    color: #cccccc;
    line-height: 1.75;
    letter-spacing: normal;
    display: inline;
}

.searchAreaArea__map__areaBox--hokkaido {
    position: absolute;
    top: 44px;
    right: 219px;
}

.searchAreaArea__map__areaBox--hokkaido .searchAreaArea__map__areaBox__name {
    background: #f5b980;
}

.searchAreaArea__map__areaBox--touhoku {
    position: absolute;
    top: 134px;
    right: 193px;
}

.searchAreaArea__map__areaBox--touhoku .searchAreaArea__map__areaBox__name {
    background: #f8d383;
}

.searchAreaArea__map__areaBox--kanto {
    position: absolute;
    bottom: 11px;
    right: 168px;
}

.searchAreaArea__map__areaBox--kanto .searchAreaArea__map__areaBox__name {
    background: #bcd989;
}

.searchAreaArea__map__areaBox--koshinetsu {
    position: absolute;
    top: 44px;
    right: 400px;
}

.searchAreaArea__map__areaBox--koshinetsu .searchAreaArea__map__areaBox__name {
    background: #57d8a9;
}

.searchAreaArea__map__areaBox--tokai {
    position: absolute;
    bottom: -71px;
    right: 296px;
}

.searchAreaArea__map__areaBox--tokai .searchAreaArea__map__areaBox__name {
    background: #00c3dc;
}

.searchAreaArea__map__areaBox--hokuriku {
    position: absolute;
    top: 131px;
    left: 398px;
}

.searchAreaArea__map__areaBox--hokuriku .searchAreaArea__map__areaBox__name {
    background: #7dabe1;
}

.searchAreaArea__map__areaBox--kinki {
    position: absolute;
    bottom: -92px;
    left: 382px;
}

.searchAreaArea__map__areaBox--kinki .searchAreaArea__map__areaBox__name {
    background: #ccadd4;
}

.searchAreaArea__map__areaBox--shikoku {
    position: absolute;
    top: 148px;
    left: 196px;
}

.searchAreaArea__map__areaBox--shikoku .searchAreaArea__map__areaBox__name {
    background: #f3aacf;
}

.searchAreaArea__map__areaBox--kyushu {
    position: absolute;
    bottom: -105px;
    left: 196px;
}

.searchAreaArea__map__areaBox--kyushu .searchAreaArea__map__areaBox__name {
    background: #f38e8e;
}

/* 関連する記事 */
.gakumonContentsBox {
    margin-top: 50px;
}

.gakumonContentsBox__title {
    margin-top: 40px;
    margin-bottom: 25px;
    line-height: 48px;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
}

.gakumonContentsBox__contents {
    margin-top: 20px;
    font-size: 14px;
}

.gakumonContentsBox__contents__imageList li {
    overflow: hidden;
    padding: 15px 10px;
    border-top: 1px solid #c7c7c7;
}

.gakumonContentsBox__contents__imageList li:last-of-type {
    border-bottom: 1px solid #c7c7c7;
}

.gakumonContentsBox__contents__imageList li:hover {
    background: #dae2e5;
    cursor: pointer;
}

.gakumonContentsBox__contents__imageList__image {
    float: left;
    width: auto;
    margin-bottom: 0;
}

.gakumonContentsBox__contents__imageList__image img {
    display: block;
    width: 100px;
    height: 100px;
    padding-right: 10px;
    border-radius: 4px;
}

.gakumonContentsBox__contents__imageList__contents {
    padding-left: 100px;
    line-height: 20px;
    font-size: 12px;
}

.gakumonContentsBox__contents__imageList__contents__title {
    margin-bottom: 10px;
    line-height: 21px;
    font-size: 14px;
    font-weight: bold;
}

.gakumonContentsBox__contents__imageList__contents__title a:hover {
    text-decoration: none;
}

/* 下層ページ */
.gakumonArticle {
    padding: 30px 40px;
}

.gakumonArticle__title {
    padding-left: 15px;
    font-size: 20px;
    font-weight: bold;
    border-left: 8px solid #237ecd;
    line-height: 1.4;
}

.gakumonArticle__subTitle {
    margin-top: 25px;
    font-size: 16px;
    font-weight: bold;
}

.gakumonArticle__image {
    padding: 20px 20px 0;
    text-align: center;
}

.gakumonArticle__imageCaption {
    margin-top: 10px;
    font-size: 12px;
}

.gakumonArticle__text {
    margin-top: 20px;
    font-size: 14px;
    line-height: 1.4;
}

.gakumonArticle__info {
    box-sizing: border-box;
    margin-top: 15px;
    padding: 10px 5px;
    font-size: 10px;
    background-color: #f6f8f9;
    line-height: 1;
    text-align: right;
}

.gakumonArticleList {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 10px 15px;
}

.gakumonArticleList__item {
    width: 334px;
}

.gakumonArticleList__title {
    margin-top: 15px;
    font-size: 16px;
    font-weight: bold;
}

/* 大学・短大　専門 */
.shigotoShikakuContentsBox {
    margin-top: 50px;
}

.shigotoShikakuContentsBox__title {
    margin-top: 40px;
    margin-bottom: 25px;
    line-height: 48px;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
}

.shigotoShikakuContentsBox__buttonWrapper {
    margin-top: 20px;
    padding: 10px 15px;
    background: #f6f7f8;
}

.shigotoShikakuContentsBox__buttonBlock {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 12px;
    margin-bottom: 20px;
    width: 100%;
}

.shigotoShikakuContentsBox__buttonBlock--other {
    margin-top: 5px;
    margin-bottom: 5px;
}

.shigotoShikakuContentsBox__buttonBlock li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
}

.shigotoShikakuContentsBox__buttonBlock li.w50 {
    width: 50%;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuMainButton {
    display: block;
    width: 290px;
    text-align: center;
    color: #07a4e4;
    padding: 10px;
    border-radius: 6px;
    border: 2px solid #07a4e4;
    box-sizing: border-box;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuMainButton--full {
    width: 100%;
    background: #fff;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuMainButton--fill {
    width: 275px;
    background: #fff;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuMainButton:hover {
    border: 2px solid rgba(7, 164, 228, 0.7);
    color: rgba(7, 164, 228, 0.7);
    text-decoration: none;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuMainButton--subtitle {
    margin: 0;
    margin-bottom: 5px;
    font-size: 14px;
    line-height: 1.2;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuMainButton--maintitle {
    margin: 0;
    font-size: 28px;
    font-weight: bold;
    line-height: 1;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuSubButton {
    display: block;
    font-size: 14px;
    font-weight: bold;
    color: #0066cf;
    border-radius: 6px;
    border: 2px solid #cccccc;
    text-align: center;
    height: 100%;
    line-height: 1.4;
    box-sizing: border-box;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuSubButton--fill {
    background: #fff;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuSubButton:hover {
    border: 2px solid rgba(7, 164, 228, 0.7);
    color: rgba(7, 164, 228, 0.7);
    text-decoration: none;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuSubButton--wrapper {
    position: absolute;
    top: 0;
    bottom: 0;
    height: 100%;
}

.shigotoShikakuContentsBox__buttonBlock li .shigotoShikakuSubButton--title {
    position: relative;
    width: 120px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    margin: 0 auto;
}

.shigotoShikakuContentsBox__buttonBlock li:nth-of-type(n+2) {
    padding-left: 10px;
}

.shigotoShikakuContentsBox__link {
    margin-right: 11px;
    text-align: right;
}

.shigotoShikakuContentsBox__linkItem {
    position: relative;
}

.shigotoShikakuContentsBox__linkItem:after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 5px;
    height: 5px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 50%;
        -ms-transform-origin: 50%;
            transform-origin: 50%;
    border-top: 1px solid #5d84ba;
    border-right: 1px solid #5d84ba;
    right: -9px;
    margin-top: -3px;
}

.shigotoShikakuContentsBox__fixedButtonBlock {
    display: table;
    margin-top: 15px;
    margin-bottom: 20px;
    width: 100%;
}

.shigotoShikakuContentsBox__fixedButtonBlock li {
    display: table-cell;
    vertical-align: bottom;
}

.shigotoShikakuContentsBox__fixedButtonBlock li .shigotoShikakuFixedMainButton {
    display: block;
    font-size: 28px;
    font-weight: bold;
    width: 280px;
    text-align: center;
    color: #07a4e4;
    padding: 10px;
    border-radius: 6px;
    border: 2px solid #07a4e4;
    box-sizing: border-box;
}

.shigotoShikakuContentsBox__fixedButtonBlock li .shigotoShikakuFixedMainButton:hover {
    border: 2px solid rgba(7, 164, 228, 0.7);
    color: rgba(7, 164, 228, 0.7);
    text-decoration: none;
}

.shigotoShikakuContentsBox__fixedButtonBlock li:nth-of-type(n+2) {
    padding-left: 10px;
}

.shigotoShikakuContentsBox__sideBySideList {
    font-size: 11px;
}

.shigotoShikakuContentsBox__sideBySideList li {
    float: left;
    border-right: 1px solid #cccccc;
}

.shigotoShikakuContentsBox__contents {
    margin-top: 20px;
    font-size: 14px;
}

.shigotoShikakuContentsBox__contents__shigoto {
    display: inline-block;
    font-size: 10px;
    border: 1px solid #44d9e2;
    background: #e3f9f9;
    padding: 0 5px;
    color: #000000;
    margin-right: 5px;
}

.shigotoShikakuContentsBox__contents__shikaku {
    display: inline-block;
    font-size: 10px;
    border: 1px solid #e74d6b;
    background: #fddee4;
    padding: 0 5px;
    color: #000000;
    margin-right: 5px;
}

.shigotoShikakuContentsBox__contents__imageList li {
    overflow: hidden;
    padding: 15px 10px;
    border-top: 1px solid #c7c7c7;
}

.shigotoShikakuContentsBox__contents__imageList li:last-of-type {
    border-bottom: 1px solid #c7c7c7;
}

.shigotoShikakuContentsBox__contents__imageList li:hover {
    background: #dae2e5;
    cursor: pointer;
}

.shigotoShikakuContentsBox__contents__imageList__image {
    float: left;
    width: auto;
    margin-bottom: 0;
}

.shigotoShikakuContentsBox__contents__imageList__image img {
    display: block;
    width: 100px;
    height: 100px;
    padding-right: 10px;
    border-radius: 4px;
}

.shigotoShikakuContentsBox__contents__imageList__contents {
    padding-left: 100px;
    line-height: 20px;
    font-size: 12px;
}

.shigotoShikakuContentsBox__contents__imageList__contents__title {
    margin-bottom: 10px;
    line-height: 21px;
    font-size: 14px;
    font-weight: bold;
}

.shigotoShikakuContentsBox__contents__imageList__contents__title a:hover {
    text-decoration: none;
}
