@charset "UTF-8";
/* ######################################################################################

　ボタン　button

###################################################################################### */
.button {
  opacity: 1;
  display: inline-block;
  position: relative;
  -webkit-appearance: none;
  box-shadow: none;
  border: 1px solid #333333;
  border-radius: 4px;
  background: #cccccc;
  font-size: 1.4rem;
  font-weight: normal;
  font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, sans-serif;
  color: #333;
  vertical-align: middle;
  line-height: 1;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  padding: 1em 2em;
}
.button:hover{text-decoration: none;}
.button:not(.disabled):active {
  top: 1px;
  box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.4);
}
.button.block {
  display: block;
  width: 100%;
}
.button.block + .block {
  margin-top: 0.5em;
}
.button.form-submit {
  -webkit-transition: background-color 0.5s ease;
  -moz-transition: background-color 0.5s ease;
  -o-transition: background-color 0.5s ease;
  transition: background-color 0.5s ease;
}
.button.next:not(.disabled) {
  background: #0073b3;
  color: #ffffff;
}
.button.disabled {
  box-shadow: none;
  cursor: no-drop;
  background: #cccccc;
  color: #aaaaaa;
}
.button.submit {
  background: #ff8000;
  color: #ffffff;
}
.button.back {
  background: #777777;
  color: #ffffff;
}
.button.del {
  background: #cc0000;
  color: #ffffff;
}
.button[class^="autoZip"] {
  background: #def1f5;
  padding: 0.5em;
  vertical-align: middle;
  margin-left: 0.5em;
}

/* アイコン
-------------------------------------*/
.button.after:after {
  margin-left: 1em;
}
.button.before:before {
  margin-right: 1em;
}
.button.before:before,  .button.after:after {
  display: inline-block;
  vertical-align: middle;
  font-family: FontAwesome;
  content: "";
  width: 1em;
  height: 1em;
}
.button.before.snap,
.button.after.snap {padding-left: 3.5em; padding-right: 3.5em;}

.button.before.snap:after, .button.before.snap:before, .button.after.snap:after, .button.after.snap:before {
  position: absolute;
}
.button.before.snap:after, .button.after.snap:after {
  right: 1em;
}
.button.before.snap:before, .button.after.snap:before {
  left: 1em;
}
.button.ico.before:before, .button.ico.after:after {
    content: "";
    width: 1em;
    height: 1em;
    background-size: contain !important;
    background-repeat: no-repeat;
}


.button.ico.arrow.before:before, .button.ico.arrow.after:after{
    top: calc(50% - 6px);
    width: 13px;
    height: 11px;
    background-size: 13px 11px;
}

.button.ico.blue.arrow.before:before{background-image: url("../img/contents/ico-arrow-left02_white.svg");}
.button.ico.blue.arrow.before:hover:before{background-image: url("../img/contents/ico-arrow-left02_blue.svg");}
.button.ico.blue.arrow.after:after{background-image: url("../img/contents/ico-arrow-right02_white.svg");}
.button.ico.blue.arrow.after:hover:after{background-image: url("../img/contents/ico-arrow-right02_blue.svg");}

.button.ico.blue.reverse.arrow.before:before{background-image: url("../img/contents/ico-arrow-left02_blue.svg");}
.button.ico.blue.reverse.arrow.before:hover:before{background-image: url("../img/contents/ico-arrow-left02_white.svg");}
.button.ico.blue.reverse.arrow.after:after {background-image: url("../img/contents/ico-arrow-right02_blue.svg");}
.button.ico.blue.reverse.arrow.after:hover:after {background-image: url("../img/contents/ico-arrow-right02_white.svg");}

.button.ico.white.arrow.before:before{background-image: url("../img/contents/ico-arrow-left02_gray.svg");}
.button.ico.white.arrow.before:hover:before{background-image: url("../img/contents/ico-arrow-left02_blue.svg");}
.button.ico.white.arrow.after:after{background-image: url("../img/contents/ico-arrow-right02_gray.svg");}
.button.ico.white.arrow.after:hover:after{background-image: url("../img/contents/ico-arrow-right02_blue.svg");}



/*  サイズ
-------------------------------------*/
.button.small {
  padding: 1em 1.75em;
  font-size: 1.3rem;
}
.button.large {
  padding: 1.25em 2.5em;
  font-size: 1.5rem;
}

/*  テキスト左寄せ
-------------------------------------*/
.button.textL{
    text-align: left;
    padding-left: 1.25em!important;
    min-width: 170px;
}
.button.small.textL{
    padding: 1em;
}


/* 色
-------------------------------------*/
.button.blue,
.button.blue.reverse:hover{
  border: 1px solid #1C4598;
  background: #1C4598;
  color: #ffffff;
}
.button.blue.reverse,
.button.blue:hover{
  border: 1px solid #1C4598;
  background: #ffffff;
  color: #1C4598;
}

.button.gray,
.button.gray.reverse:hover{
  border: 1px solid #838296;
  background: #838296;
  color: #ffffff;
}
.button.gray.reverse,
.button.gray:hover{
  border: 1px solid #838296;
  background: #ffffff;
  color: #838296;
}

.button.skyBlue,
.button.skyBlue.reverse:hover{
  border: 1px solid #007ED9;
  background: #007ED9;
  color: #ffffff;
}
.button.skyBlue.reverse,
.button.skyBlue:hover{
  border: 1px solid #007ED9;
  background: #ffffff;
  color: #007ED9;
}

.button.white{
  border: 1px solid #fff;
  background: #fff;
  color: #4D5766;
}
.button.white:hover{
  border: 1px solid #1C4598;
  background: #fff;
  color: #1C4598;
}

.button.lightGray{
  border: 1px solid #F5F6FA;
  background: #F5F6FA;
  color: #1C4598;
}
.button.lightGray:hover{
  border: 1px solid #1C4598;
  background: #1C4598;
  color: #fff;
}




/* ====================================================
	ボタンボックス
==================================================== */
.buttonBox {
  margin: 1.5em 0;
  text-align: center;
}
.buttonBox.wide {margin: 3em 0;}
.buttonBox.narrow {margin: 0.75em 0;}

.buttonBox.topWide{margin-bottom: 4em;}
.buttonBox.bottomWide{margin-bottom: 4em;}
.buttonBox.topNarrow{margin-bottom: 0.5em;}
.buttonBox.bottomNarrow{margin-bottom: 0.5em;}

.buttonBox.back {margin-top: 5em;}
.buttonBox.back.topBorder{
  margin-top: 5em;
  padding-top: 3em;
  border-top: 1px solid #D8DBE7;
}

.buttonBox p {
  text-align: center;
}
.buttonBox li .button {
  display: block;
  padding: 0.75em;
  width: 100%;
}
.buttonBox.center .row {
  display: inline-block;
  width: 103%;
  max-width: 768px;
}
.buttonBox.center.single .row {
  max-width: 384px;
}

.buttonBox > .row > .col-xs-12 {
  margin-top: 0.25em;
  margin-bottom: 0.25em;
}




/* ######################################################################################

    btnNav

###################################################################################### */
.btnNav{margin: 40px 0; font-size: 0;}
.btnNav li{
  display: inline-block;
  font-size: 1.3rem;
  margin-bottom: 0.25em;
  margin-right: 0.25em;
}

.btnNav .button{padding: 0.75em 0.35em;}
.btnNav .active a{
    border: 1px solid #1C4598;
    background: #1C4598;
    color: #fff;
    font-size: 1.3rem;
}



/* ######################################################################################

    credit: 画像使用クレジット

###################################################################################### */

*[data-credit]:after {
    content:attr(data-credit);
    display:inline-block;
    position:absolute;
    bottom:6px;
    right:8px;
    color:#ffffff;
    font-size:10px;
    font-family:Verdana, Geneva, sans-serif;
    text-shadow:0 0 5px rgba(0,0,0,1), 0 0 5px rgba(0,0,0,1), 0 0 5px rgba(0,0,0,1);
}

/* 左カラム上
-------------------------------------*/
.subColumn .pageImg[data-credit]{position:relative;}
.subColumn .pageImg[data-credit]:after {bottom:auto; top:104px;}

/* タイトル画像
-------------------------------------*/
.pageTitleBox .contents[data-credit]:after {right:50%; transform:translateX(490px);}

/* トップページカルーセル
-------------------------------------*/
.pageIndex .mainImg .slick-slide:after {
    z-index:10;
    right:20px;
    bottom:6px;
}

/* ######################################################################################

    form

###################################################################################### */
/* 入力制限非表示 */
.aform-validation.student-id {display:none;}

/* フォームの高さ */
.aform-input[type="text"], .aform-text, .aform-email, .aform-password, .aform-tel, .aform-url, .aform-number, .aform-date, .aform-time, .aform-select, .aform-name, .aform-kana, .aform-zipcode, .aform-prefecture, .aform-calendar{height: 45px;}


/* 入力フォームすべて（テキストエリア・セレクトも含む）
-------------------------------------*/
.aform-input[type="text"], .aform-text, .aform-email, .aform-password, .aform-tel, .aform-url, .aform-number, .aform-date, .aform-time, .aform-textarea, .aform-select, .aform-name, .aform-kana, .aform-zipcode, .aform-prefecture, .aform-calendar{
    border: 1px solid #CDD6DD;
    border-radius: 2px;
    font-size: 1.6rem;
    font-family: Arial,"ヒラギノ角ゴ ProN W3","Hiragino kaku Gothic ProN","游ゴシック Medium", "YuGothic Medium", "游ゴシック", YuGothic, "メイリオ", sans-serif;
    padding: 0.5em 0.8em;
}
.aform-name-ul > li {padding-left:0 !important;}
.aform-name-ul > li:before {display:none;}

/* 入力フォームの長さ
-------------------------------------*/
.aform-input.aform-text{width: 450px;}
.aform-input.aform-text.address{width: 578px;} /* 住所 */
.aform-input.aform-email{width: 450px;} /* メール */
.aform-input.aform-zipcode{width: 200px;} /* 郵便番号 */
.aform-input.aform-tel{width: 345px;} /* 電話番号 */
.aform-input.aform-text.age {width: 100px;}/* 年齢 */
.aform-input.aform-text.num {width: 100px;}/* 年齢 */

.aform-input.aform-text.year {width: 160px;}/* 年 */
.aform-input.aform-text.name {width: 300px;}/* 名前 */
.aform-input.aform-text.name.long {width: 500px;}/* 名前 */
.aform-input.aform-text.nameS {width:10em}

.en .aform-input[name="st_undergraduate"] {width:350px;}
.en .aform-input[name="schoolYear"] {width:380px;}
.en .aform-input[name="undergraduate"] {width:470px;}

/* 姓名分割 */
.aform-name-ul li {display:inline-block;}
.aform-name-ul li+li {margin-left:1em;}

/* テキストエリア */
textarea.aform-input{width: 100%;}

/* セレクトボタン */
.aform-input.aform-select{min-width: 450px; max-width: 100%;}

/* ラジオボタン
-------------------------------------*/
.aform-radio-ul li{display: block;}
.aform-radio-ul li + li{margin-top: 0.5em;}

input[type="radio"] {display: none;}
input[type="radio"] + label,
input[type="radio"] + span {
  position: relative;
  padding-left: 30px;
}
input[type="radio"] + label:before,
input[type="radio"] + span:before {
  content: "";
  display: inline-block;
  position: absolute;
}
input[type="radio"] + label:before,
input[type="radio"] + span:before {
  width: 22px;
  height: 22px;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: #fff;
  border-radius: 50%;
  border: 1px solid #D5D5DF;
}
input[type="radio"]:checked + label:before,
input[type="radio"]:checked + span:before{border: 2px solid #007ED9;}

input[type="radio"] + label:after,
input[type="radio"] + span:after {
width: 10px;
height: 10px;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 6px;
  transform: translateY(-50%);
  border-radius: 50%;
}
input[type="radio"]:checked + label:after, input[type="radio"]:checked + span:after {
  content: "";
  background: #007ED9;
}
input[type="radio"] + label, input[type="radio"] + span {
  cursor: pointer;
}

/* 全体レイアウト
-------------------------------------*/
.aform-header{display: none;}
.aform-content{margin:1.5em 0 3em;}
.aform-content dl{padding: 1.25em 0;}


.aform-content .sample,
.aform-content dt{
    color: #707F89;
    font-size: 1.3rem !important;
    margin-bottom: 0.5em;
}
.aform-input-example,
.aform-content .sample {
    margin-top:0.25em;
    width:100%;
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.25;
    color: #707F89;
    font-size: 1.3rem !important;
}
.aform-content .sample:before {content:"※";}
.aform-content .sample.red {color:#CC0022;}
.aform-content .sample.blue {color:#1c4598;}
.aform-content .sample + .sample {margin-top:0;}

.dl_privacy dt {display:none;}

.inputGroup {
    padding:20px 0;
    background:#ffffff;
}

.formFlexItems {
    display: inline-flex;
    justify-content:flex-start;
    flex-wrap:wrap;
    align-content:flex-start;
    align-items:flex-start;
}
.formFlexItems.aform-radio-ul li + li {margin-top:0; margin-left:1em;}

.formItem dd + dt {margin-top:1em;}

.formItem.formFlexItems dt {width:100%;}
.formFlexItems > .formItem {margin-right:1em; padding-bottom:0;}
.formItem.formFlexItems dd:not(.aform-error) {margin-right:2em;}

/* メール確認
-------------------------------------*/
.aform-twice-note{
  margin-top: 1em;
  display: block;
  color: #707F89;
  font-size: 1.3rem;
  margin-bottom: 0.5em;
}
.aform-content .aform-twice-note:after{
  content: "必須";
  position: relative;
  top: -1px;
  font-size: 1.1rem;
  line-height: 1.25;
  color: #CC0022;
  border: 1px solid #CC0022;
  margin-left: 1em;
  display: inline-block;
  vertical-align: middle;
  padding: 0.2em 0.5em;
}

/* 必須
-------------------------------------*/
.aform-required{
    position: relative;
    top: -1px;
    font-size: 1.1rem;
    line-height: 1.25;
    color: #CC0022;
    border: 1px solid #CC0022;
    margin-left: 1em;
    display: inline-block;
    vertical-align: middle;
    padding: 0.2em 0.5em;
}
.aform-required.none {border-color:#ffffff;}

.aform-required.blue {
    color: #1c4598;
    border: 1px solid #1c4598;
}

/* 入力例
-------------------------------------*/
/* 各ベンダープレフィックスが取れた標準版！！(http://caniuse.com/#search=placeholder-shown) */
input:placeholder-shown,
textarea:placeholder-shown {
    color: #98A2AE; }

/* Google Chrome, Safari, Opera 15+, Android, iOS */
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #98A2AE; }

/* Firefox 18- */
input:-moz-placeholder,
textarea:-moz-placeholder {
    color: #98A2AE; opacity: 1; }

/* Firefox 19+ */
input::-moz-placeholder,
textarea::-moz-placeholder {
    color: #98A2AE; opacity: 1; }

/* IE 10+ */
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #98A2AE; }

/* 入力エラー
-------------------------------------*/
.aform-error{margin-top: 0.5em; margin-bottom:0;}
p.aform-error,
div.aform-error,
dd.aform-error,
.aform-error > *{color: #CC0022; font-size: 1.4rem;}
.aform-error + .aform-error {margin-top:0.25em;}

.aform-error,
.error {
    width:100%;
}

/* 個人情報保護方針
-------------------------------------*/
.aform-content .dl_agreement{border-top: none;}
.dl_agreement dd{margin-left: 25%;}
.aform-checkbox-ul{margin-top: 1em; cursor: pointer;}
.aform-checkbox-ul input,
.aform-checkbox-ul label{cursor: pointer;}
.aform-checkbox-ul input{margin: 3px 0 0 0;}
.aform-checkbox-ul label{font-weight: bold; padding-left: 8px;}

/* ボタン
-------------------------------------*/
.aform-button-area{margin-top: 1.5em; text-align: center;}
.aform-button-area input{
    opacity: 1;
    display: inline-block;
    position: relative;
    border: none;
    -webkit-appearance: none;
    box-shadow: none;
    border: 1px solid #333333;
    border-radius: 4px;
    background: #cccccc;
    font-size: 1.4rem;
    font-weight: normal;
    font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, sans-serif;
    color: #333;
    vertical-align: middle;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    padding: 1em 2em;
    border: 1px solid #1C4598;
    background: #1C4598;
    color: #ffffff;
    min-width: 230px;
}

.aform-button-area input:hover{
    border: 1px solid #1C4598;
    background: #ffffff;
    color: #1C4598;
}

.aform-button-area > input + input{margin-left: 20px;}
.aform-button-area > input#aform_btn_back{background-color: #838296; border-color: #838296; color: #fff;}
.aform-button-area > input#aform_btn_back:hover{background: #fff; border-color: #838296; color: #838296;}

/* フォーカス
-------------------------------------*/
textarea.error,
input[type="text"].error,
input[type="password"].error,
input[type="datetime"].error,
input[type="datetime-local"].error,
input[type="date"].error,
input[type="month"].error,
input[type="time"].error,
input[type="week"].error,
input[type="number"].error,
input[type="email"].error,
input[type="url"].error,
input[type="search"].error,
input[type="tel"].error,
input[type="color"].error,
select.error{
    border-width: 1px;
    border-color: #FDAFBC;
    background: #FFEDF5;
}
textarea:focus, input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
select:focus {
    border-color: #007ED9!important;
    outline: 0;
    outline: thin dotted \9;
    box-shadow: none;
    background-color: #F6FBFE;
}

/* ====================================================
    確認画面
==================================================== */
.aform-content #aform-confirm-form dl:after{
    content: "";
    display: block;
    clear: both;
}
.aform-content #aform-confirm-form dl {padding: 1.5em 0;}
.aform-content #aform-confirm-form dl > *{float: left;}
.aform-content #aform-confirm-form dt{width: 25%; margin-bottom: 0;}
.aform-content #aform-confirm-form dd{width: 72%; margin-left: 3%;}
.aform-content #aform-confirm-form dl {
    border-bottom: 1px solid #ddd;
}
#aform_confirm_msg{margin-top: 2em; margin-bottom: 2em;}

.aform-content #aform-confirm-form .aform-required{display: none;}

/* ====================================================
    完了画面
==================================================== */




/* ######################################################################################

    googleSearch

###################################################################################### */
.googleSearch,
.header .search{font-size: 0;}
.googleSearch img,
.header .search img,
.googleSearch a,
.header .search a,
.googleSearch input,
.search input{display: inline-block; vertical-align: middle;}
.googleSearch img,
.search img{margin-right: 5px;}
.googleSearch .input-search,
.search .input-search{
    position: relative;
    padding: 0.75em 30px 0.75em 0.75em;
    height: 3.25em;
    width: 240px;
    border-radius: 3px;
    border: 1px solid #D8D8D8;
    font-size: 1.3rem;
    background-image: url(../img/header/ico_search.svg);
    background-size: 17px 17px;
    background-position: 96% center;
    background-repeat: no-repeat;
}
.googleSearch .input-search::placeholder,
.search .input-search::placeholder{color: #C0C0C0;}
.googleSearch .btn-search,
.search .btn-search{
    margin-left: 0.5em;
    padding: 1em;
    font-size: 1.3rem;
}
.googleSearch a[target="_blank"]:after,
.search a[target="_blank"]:after{display: none;}

/* ######################################################################################

    imgFit

###################################################################################### */
.imgFitBox.cover img, img.imgFit.cover {
  object-fit: cover;
  font-family: "object-fit:cover";
}



/* ######################################################################################

    imageHover

###################################################################################### */
.imageHover img {width:100%; height:auto;}

/* ====================================================
　画像ズーム
　<a href="#" class="imageHover zoomCaption">
　    <figure><img src=""></figure>
　</a>
==================================================== */
.imageHover.zoomCaption {
    display:block;
    overflow: hidden;
}
.imageHover.zoomCaption figure {
    position:relative;
    overflow: hidden;
    margin: 0;
    text-align: center;
    height:100%;
}
.imageHover.zoomCaption figure:before{
    -webkit-transition:all 0.5s ease;
       -moz-transition:all 0.5s ease;
        -ms-transition:all 0.5s ease;
         -o-transition:all 0.5s ease;
            transition:all 0.5s ease;
    opacity: 0;
    position:absolute;
    left:0;
    width:100%;
}
.imageHover.zoomCaption figure:before {
    content:"";
    display:block;
    z-index:5;
    background-color: rgba(0,0,0,0.2);
    top:0;
    height:100%;
}

.imageHover.zoomCaption img {
    -webkit-transition:all 0.5s ease;
       -moz-transition:all 0.5s ease;
        -ms-transition:all 0.5s ease;
         -o-transition:all 0.5s ease;
            transition:all 0.5s ease;
    width: 100%;
    height:100%;
    vertical-align: bottom;
}
.msie11 .imageHover.zoomCaption img {height: auto;}

.imageHover.zoomCaption:hover figure img {
    -webkit-transform:scale(1.06,1.06);
       -moz-transform:scale(1.06,1.06);
        -ms-transform:scale(1.06,1.06);
         -o-transform:scale(1.06,1.06);
            transform: scale(1.06,1.06);
}
.imageHover.zoomCaption:hover figure:before {opacity:1;}




/* ######################################################################################

    langSwitch

###################################################################################### */
/* .langSwitch{position: relative; margin-bottom: 3em;}
.langSwitch h2,
.langSwitch h3,
.langSwitch h4{padding-right: 180px;}
.langSwitch .button{position: absolute; top: 0; right: 0;} */

.langSwitch{position: absolute; top: 0; right: 0;}


/* ######################################################################################

    link

###################################################################################### */
/* ====================================================
    linkBox
==================================================== */
.linkBox.row{margin-right: -7.5px; margin-left: -7.5px;}
.linkBox.row > *{
    display: flex;
    padding-left: 7.5px;
    padding-right: 7.5px;
    margin-bottom: 30px;
}

.linkBox > * > a{
  display: block;
  text-decoration: none;
  color: #333;
  border: 1px solid #D8DBE7;
  width: 100%;
  background: #fff;
}
.linkBox > * > a:hover{color: #333;}
.linkBox .img{width: 100%; height: 140px;}
.linkBox .entry{padding: 1em; width: 100%; }
.linkBox .title{
    margin-bottom: 0.25em;
    text-decoration: underline;
    color: #1C4598;
    font-size: 1.5rem;
    line-height: 1.5;
    font-weight: bold;
}
.linkBox .text{
    font-size: 1.4rem;
    line-height: 1.71;
}

/* 　画像右に
-------------------------------------*/
.linkBox.imgR a{
    flex-direction: row-reverse;
    display: flex;
    height: 100%;
}
.linkBox.imgR .img,
.linkBox.imgR .img figure,
.linkBox.imgR .img img{
    width: 120px;
    height: 100%;
}
.linkBox.imgR dl{
    padding: 1.25em;
}

/* linkBoxでは外部リンク・PDFアイコンをタイトルに表示 */
.linkBox a[target="_blank"]:after{display: none;}
.linkBox a[target="_blank"] .title:after{
    content: "";
    position: relative;
    display: inline-block;
    vertical-align: middle;
    background-image: url(../img/contents/ico-link.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    width: 1em;
    height: 1em;
    margin-left: 0.5em;
}



/* ====================================================
    bgLink
==================================================== */
.bgLink{
  display: block;
  margin-bottom: 1em;
  background: #F5F6FA;
  padding: 0.75em 1em;
  font-size: 1.5rem;
  line-height: 1.75;
}


/* ====================================================
    linkBox 1列　右リスト
==================================================== */

.left01_linkBox{ width: 64%; margin-left: 2%; padding-right: 0; }
.left01_linkBox ul{ width: 50%;}
.left01_linkBox ul li{  padding: 0.65em 0;}
.left01_linkBox ul li a{ font-weight: bold; text-decoration: none; color: #1C4598; border: none; font-size: 14px;   }

/* ######################################################################################

 リスト list

###################################################################################### */
/* ====================================================
    基本設定
==================================================== */
li{font-size: 1.5rem; line-height: 2;}

/* ====================================================
    ドットのリスト　dotList
==================================================== */
.dotList{}
.dotList li{
    position: relative;
    padding-left: 1em;
}
.dotList li:before{
    content: "";
    position: absolute;
    top: 10px;
    left: 0;
    width: 6px;
    height: 6px;
    background: #333;
    border-radius: 50%;
}

.dotList.mTop li + li {margin-top: 1.5em;}

.dotList .numberList li:before {background:none;}
.dotList ul {margin-left:1em; margin-bottom:1em;}
.dotList + * {margin-top:2em;}　

/* ====================================================
    下線リスト underLineList
==================================================== */
.underLineList{}
.underLineList li{
    padding: 0.5em 0;
    border-bottom: 1px solid #D8DBE7;
}


/* ====================================================
    数字付きリスト numberList
==================================================== */
.numberList {}
.numberList li{
    position: relative;
    padding-left: 2em;
}

.numberList li:before,
.normalList li:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
}

.numberList li:nth-child(1):before{content: "1.";}
.numberList li:nth-child(2):before{content: "2.";}
.numberList li:nth-child(3):before{content: "3.";}
.numberList li:nth-child(4):before{content: "4.";}
.numberList li:nth-child(5):before{content: "5.";}
.numberList li:nth-child(6):before{content: "6.";}
.numberList li:nth-child(7):before{content: "7.";}
.numberList li:nth-child(8):before{content: "8.";}
.numberList li:nth-child(9):before{content: "9.";}
.numberList li:nth-child(10):before{content: "10.";}
.numberList li:nth-child(11):before{content: "11.";}
.numberList li:nth-child(12):before{content: "12.";}
.numberList li:nth-child(13):before{content: "13.";}
.numberList li:nth-child(14):before{content: "14.";}
.numberList li:nth-child(15):before{content: "15.";}
.numberList li:nth-child(16):before{content: "16.";}
.numberList li:nth-child(17):before{content: "17.";}
.numberList li:nth-child(18):before{content: "18.";}
.numberList li:nth-child(19):before{content: "19.";}
.numberList li:nth-child(20):before{content: "20.";}
.numberList li:nth-child(21):before{content: "21.";}
.numberList li:nth-child(22):before{content: "22.";}
.numberList li:nth-child(23):before{content: "23.";}
.numberList li:nth-child(24):before{content: "24.";}
.numberList li:nth-child(25):before{content: "25.";}
.numberList li:nth-child(26):before{content: "26.";}
.numberList li:nth-child(27):before{content: "27.";}
.numberList li:nth-child(28):before{content: "28.";}
.numberList li:nth-child(29):before{content: "29.";}
.numberList li:nth-child(30):before{content: "30.";}

.numberList.mTop li + li {margin-top: 1.5em;}




/*  アルファベット
-------------------------------------*/
.numberList.alphabet li{
  position: relative;
  padding-left: 2em;
}
.numberList.alphabet li:nth-child(1):before{content: "a.";}
.numberList.alphabet li:nth-child(2):before{content: "b.";}
.numberList.alphabet li:nth-child(3):before{content: "c.";}
.numberList.alphabet li:nth-child(4):before{content: "d.";}
.numberList.alphabet li:nth-child(5):before{content: "e.";}
.numberList.alphabet li:nth-child(6):before{content: "f.";}
.numberList.alphabet li:nth-child(7):before{content: "g.";}
.numberList.alphabet li:nth-child(8):before{content: "h.";}
.numberList.alphabet li:nth-child(9):before{content: "i.";}
.numberList.alphabet li:nth-child(10):before{content: "j.";}
.numberList.alphabet li:nth-child(11):before{content: "k.";}
.numberList.alphabet li:nth-child(12):before{content: "l.";}
.numberList.alphabet li:nth-child(13):before{content: "m.";}
.numberList.alphabet li:nth-child(14):before{content: "n.";}

/*  数字 2からはじまる
-------------------------------------*/

.numberList.second li{
  position: relative;
  padding-left: 2em;
}
.numberList.second li:nth-child(1):before{content: "2.";}
.numberList.second li:nth-child(2):before{content: "3.";}
.numberList.second li:nth-child(3):before{content: "4.";}
.numberList.second li:nth-child(4):before{content: "5.";}
.numberList.second li:nth-child(5):before{content: "6.";}
.numberList.second li:nth-child(6):before{content: "7.";}
.numberList.second li:nth-child(7):before{content: "8.";}
.numberList.second li:nth-child(8):before{content: "9.";}
.numberList.second li:nth-child(9):before{content: "10.";}

/*  数字 ( )書き
-------------------------------------*/
.numberList.brackets li{
  position: relative;
  padding-left: 2em;
}
.numberList.brackets li:nth-child(1):before{content: "1）";}
.numberList.brackets li:nth-child(2):before{content: "2）";}
.numberList.brackets li:nth-child(3):before{content: "3）";}
.numberList.brackets li:nth-child(4):before{content: "4）";}
.numberList.brackets li:nth-child(5):before{content: "5）";}
.numberList.brackets li:nth-child(6):before{content: "6）";}
.numberList.brackets li:nth-child(7):before{content: "7）";}
.numberList.brackets li:nth-child(8):before{content: "8）";}
.numberList.brackets li:nth-child(9):before{content: "9）";}
.numberList.brackets li:nth-child(10):before{content: "10）";}
.numberList.brackets li:nth-child(11):before{content: "11）";}
.numberList.brackets li:nth-child(12):before{content: "12）";}
.numberList.brackets li:nth-child(13):before{content: "13）";}
.numberList.brackets li:nth-child(14):before{content: "14）";}
.numberList.brackets li:nth-child(15):before{content: "15）";}
.numberList.brackets li:nth-child(16):before{content: "16）";}
.numberList.brackets li:nth-child(17):before{content: "17）";}
.numberList.brackets li:nth-child(18):before{content: "18）";}
.numberList.brackets li:nth-child(19):before{content: "19）";}
.numberList.brackets li:nth-child(20):before{content: "20）";}
.numberList.brackets li:nth-child(21):before{content: "21）";}
.numberList.brackets li:nth-child(22):before{content: "22）";}
.numberList.brackets li:nth-child(23):before{content: "23）";}
.numberList.brackets li:nth-child(24):before{content: "24）";}
.numberList.brackets li:nth-child(25):before{content: "25）";}
.numberList.brackets li:nth-child(26):before{content: "26）";}
.numberList.brackets li:nth-child(27):before{content: "27）";}
.numberList.brackets li:nth-child(28):before{content: "28）";}
.numberList.brackets li:nth-child(29):before{content: "29）";}
.numberList.brackets li:nth-child(30):before{content: "30）";}

/*  normalリスト
-------------------------------------*/
.normalList li{
  position: relative;
  padding-left: 2em;
}
.normalList li:before{content: "・";}


/* ====================================================
    listTable
==================================================== */
.listTable{
  position: relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background-color: #fff;
  background-size: 100%;
  background-repeat: repeat-y;
  background-position: center bottom;
  border-top: 1px solid #D8DBE7;
}
.listTable:after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background: #D8DBE7;
}
.listTable li{
  border-bottom: 1px solid #D8DBE7;
  padding: 0.5em 1em;
}
.listTable li a{
  font-size: 1.4rem;
  text-decoration: none;
}
.listTable li a:hover{
  text-decoration: underline;
}

/* 3列 */
.listTable.row-3{background-image: url(../img/contents/listTable_row3.png);}
.listTable.row-3 li{width: 33.3333333333%;}

/* 4列 */
.listTable.row-4{background-image: url(../img/contents/listTable_row4.png);}
.listTable.row-4 li{width: 25%;}


/* ====================================================
    Q&A　questionList
==================================================== */
.questionList{ margin-bottom: 4em;}
.questionList dt p,.questionList dd p{ padding-left:65px;}
.questionList dt{background:#F5F6FA; height: 48px; margin-bottom: 1.5em; display: block;  } 
.questionList dd ul{padding-left:4.4em;}
.questionList dt p{line-height: 48px !important;}

.questionList dt:before {
    background: #1C4598;
}

.questionList dt:before {
	font-size: 18px;
    content: "Q";
    position: absolute;
    width: 48px;
    height: 48px;
    background: #1C4598;
    color: #fff;
    text-align: center;
    line-height: 48px;
}
.questionList dd:before {
	font-size: 18px;
    content: "A";
    position: absolute;
    width: 48px;
    height: 48px;
    background: #B52B87;
    color: #fff;
    text-align: center;
    line-height: 48px;
}

/* ######################################################################################

　ページ繰り

###################################################################################### */
.pagination {
    margin-top: 50px;
	margin-bottom: 30px;
    font-size: 0;
    position: relative;
    text-align: center;
}
.pagination li {
    font-size: 1.5rem;
    display:inline-block;
    vertical-align:middle;
    margin:0 3px;
}
.pagination li a,
.pagination li span {
    display:block;
    text-decoration: none; 
    padding:0.5em 0.25em;
    line-height: 1;
    border-radius: 2px ;
    min-width: 32px;
    min-height: 32px;
}
.pagination li a{
    border: 1px solid #1C4598;
}
.pagination li span{
    border: 1px solid #D5D5DF;
    background: #D5D5DF;
    color: #fff;
}
.pagination li a:hover,
.pagination li.active a{
    text-decoration: none;
    border: 1px solid #1C4598;
    background: #1C4598;
    color: #fff;
}

.pagination li.prev a,
.pagination li.prev span,
.pagination li.next a,
.pagination li.next span{
    padding: 0.8em 0.25em;
    min-width: 50px;
    font-size: 1.1rem;
}

.pagination li.prev span,
.pagination li.next span{
    background: #fff;
    color: #A3A6B4;
}




/* ######################################################################################

　ページ切り替え　 pageSwitch

###################################################################################### */
.pageSwitch ul{
  border-bottom: 4px solid #F0F3F5;
  font-size: 0;
}
.pageSwitch ul li{display: inline-block; vertical-align: middle;}
.pageSwitch ul li + li{margin-left: 1.5em;}
.pageSwitch ul li span,
.pageSwitch ul li a{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  color: #1C4598;
  text-decoration: none;
  overflow: visible;
}
.pageSwitch ul li span:after{
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #1C4598;
  z-index: 1;
}
.pageSwitch ul li a:hover{
  color: #007ED9;
}


/* ######################################################################################

　ページトップ　pageTop

###################################################################################### */
.pageTopFix {
    display:inline-block;
    position: fixed;
    border:none;
    background:#1C4598;
    padding:0;
    overflow:hidden;
    color:#ffffff;
    cursor:pointer;
    z-index: 8000;
    bottom: 100px;
    right: 50px;
    width: 64px;
    height: 64px;
}
.pageTopFix:before {
    content:"";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../img/contents/ico-arrow-top.svg");
    background-repeat: no-repeat;
    background-size: 20px 11px;
    background-position: center
}




/* ######################################################################################

　スライダー：slickSlider

###################################################################################### */

/* スライドloading DF
-------------------------------------*/
.slickSlider {
    position: relative;
    /*background: url(../lib/jquery/slick/ajax-loader.gif) center no-repeat;*/
}

/* スライド同士の間隔 DF
-------------------------------------*/
.slick-slide {
  margin:0;
  padding:0;
}

/* 左右ボタンスタイル DF
-------------------------------------*/
.slick-prev,
.slick-next {
    z-index: 10;
    width: auto;
    height: auto;
}
.slick-prev {left: 15px;}
.slick-next {right: 15px;}

.slick-prev:before,
.slick-next:before {
    opacity: 1;
}

.slick-prev:hover,
.slick-next:hover {
    opacity: 1;
}

/* ====================================================
　左右ボタンスタイル：＜＞
==================================================== */
.slick-arrow{
    position: absolute;
    top: 228px;
}
.slick-prev{left: 0%;}
.slick-next{left: 100%;}

.slick-arrow::before{
    content: "";
    display: block;
    width: 48px;
    height: 48px;
    background-size: 48px 48px;
    background-repeat: no-repeat;
}
.slick-prev::before {background-image: url("../img/contents/index/slick-arrow-left.svg"); }
.slick-next::before {background-image: url("../img/contents/index/slick-arrow-right.svg");}



/* ====================================================
　    黒丸ボタンスタイル DF
==================================================== */
.slick-dots {
    position: absolute;
    bottom: 1.5em;
    left: 0;
    right: 0;
    margin: auto;
    margin-left: auto;
    margin-right: auto;
    padding-right: 15px;
    padding-left: 15px;
    text-align: right;
    width: 1030px;
}

.slick-dots li,
.slick-dots li button,
.slick-dots li button::before {
    display: inline-block;
    padding: 0;
    width: auto;
    height: auto;
    line-height: 1;
}
.slick-dots li button {display: block;}

.slick-dots li button:before {
    position: relative;
    padding: 0.25em;
    border-radius: 50%;
    opacity: 1;
}

/* 黒丸ボタンカスタマイズ：長方形横
-------------------------------------*/
/* ●の間隔 */
.dotteSolid .slick-dots li {margin: 0 2px;}

/* ●の非表示 */
.dotteSolid .slick-dots li button:before {display: none;}

/* ボタンの形状 */
.dotteSolid .slick-dots li button {
    width: 40px;
    height: 2px;
}

/* ● DFの色 */
.dotteSolid .slick-dots li button {background: #b9b8b8;}

/* ● active色 */
.dotteSolid .slick-dots li.slick-active button {background: #EEFF00;}


/* ====================================================
    .slickSlider2 関連リンク 
==================================================== */
/* スライド同士の間隔 DF
-------------------------------------*/
.slickSlider2{
    margin-left: -4px;
    margin-right: -4px;
}
.slickSlider2 .slick-slide {
  margin: 0 4px;
  padding: 0;
}


/* ====================================================
    .slickSlider3 ピックアップ
==================================================== */
/* スライド同士の間隔 DF
-------------------------------------*/
.slickSlider3{
    margin-left: -12px;
    margin-right: -12px;
}
.slickSlider3 .slick-prev{left: calc(0% - 62px);}
.slickSlider3 .slick-next{left: calc(100% - 62px);}

.slickSlider3 .slick-slide {
  margin: 0 12px;
  padding: 0;
}




/* ######################################################################################

　表　 table

###################################################################################### */
/* ====================================================
　基本設定
==================================================== */
table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}

caption {
  margin-bottom: 0.75em;
  text-align: left;
  font-size: 80%;
  font-weight: bold;
}

th, td {
  border-color: #D8DBE7;
  padding: 1em;
  text-align: left;
  font-weight: normal;
}

th {
  background: #F5F6FA;
  padding: 1em;
  vertical-align: top;
  font-size: 1.4rem;
  line-height: 1.85;
}

td {
  padding: 1em;
  font-size: 1.4rem;
  line-height: 1.85;
}

th a, td a{
  font-size: 1.4rem;
}



/* ====================================================
　囲み
==================================================== */
.borderHorizon th, .borderHorizon td {
  border-width: 1px 0;
}
.borderHorizon tr + tr td, .borderHorizon tr + tr th {
  border-top-width: 0;
}

.borderBox th, .borderBox td {
  border-width: 1px;
}
.borderBox tr + tr td, .borderBox tr + tr th {
  border-top-width: 0;
}
.borderBox th + th,
.borderBox th + td,
.borderBox td + td,
.borderBox td + td {
  border-left-width: 0;
}

/* ====================================================
　線種
==================================================== */
.borderSolid th {
  border-style: solid;
}
.borderSolid td {
  border-style: solid;
}
.borderSolid td:before {
  border-style: solid;
}

.borderDotted th {
  border-style: dotted;
}
.borderDotted td {
  border-style: dotted;
}
.borderDotted td:before {
  border-style: dotted;
}

.borderDashed th {
  border-style: dashed;
}
.borderDashed td {
  border-style: dashed;
}
.borderDashed td:before {
  border-style: dashed;
}



/* ====================================================
    レイアウト
==================================================== */
.tablefix{
    table-layout: fixed;
}
.cellNarrow th,
.cellNarrow td{padding: 1em;}

.thCenter th{text-align: center; vertical-align: middle;}
.tdCenter td{text-align: center; vertical-align: middle;}

.thSmall th{
  padding: 0.5em;
  font-size: 1.3rem;
	vertical-align: middle;}

.noLeftBorder{border-left-width: 0px!important;}

/* ######################################################################################

テキスト　text

###################################################################################### */

/* 太字
-------------------------------------*/
.bold{font-weight: bold;}
.red{color: #CC0022;}
.blue{color: #1C4598;}

/* 文字サイズ
-------------------------------------*/
.sText{font-size: 1.3rem;}

/* 枠線テキスト
-------------------------------------*/
.borderText{padding: 30px; border: 10px solid #F0F3F5; }

/* テキストリンク
-------------------------------------*/
/* 外部リンク */
a[target="_blank"]:after {
    content: "";
    position: relative;
    display: inline-block;
    vertical-align: middle;
    background-image: url("../img/contents/ico-link.svg");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 1em;
    height: 1em;
    margin-left: 0.5em;
}

/* pdf */
a[href$=".pdf"]:after {
    content: "";
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 14px;
    height: 17px;
    margin-left: 0.5em;
    background-image: url(../img/contents/ico-pdf.svg);
    background-size: 100%;
    background-repeat: no-repeat;
}
/* word */
a[href$=".doc"]:after,
a[href$=".docx"]:after {
    content: "";
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 21.5px;
    height: 20px;
    margin-left: 0.5em;
    background-image: url(../img/contents/ico-word.svg);
    background-size: 100%;
    background-repeat: no-repeat;
}
/* excel */
a[href$=".xls"]:after,
a[href$=".xlsx"]:after {
    content: "";
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 21.54px;
    height: 20px;
    margin-left: 0.5em;
    background-image: url(../img/contents/ico-excel.svg);
    background-size: 100%;
    background-repeat: no-repeat;
}



/* テキスト右寄よせ
-------------------------------------*/
.textR{position: relative; }
.textR span{ position: absolute; top: 0; right: 0; line-height: 2;}


/* 見出しやテーブル内リンクのアンダーラインなし
-------------------------------------*/
h4 a,.borderBox a,.underLineList a{text-decoration: none;}
h4 a:hover,.borderBox a:hover,.underLineList a:hover{text-decoration: underline;}


.link-icon:after{
    content: "";
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin-left: 0.75em;
}
.link-icon.arrow:after{
    margin-left: 0.5em;
    width: 8px;
    height: 8px;
    border-top: 2px solid #1C4598;
    border-right: 2px solid #1C4598;
    transform: rotate(45deg)
}
.link-icon.arrow:hover:after{
    border-top: 2px solid #007ED9;
    border-right: 2px solid #007ED9;
}

.link-line{text-decoration: underline;}
.link-line:hover{text-decoration: none;}





/* ######################################################################################

 タイトル title

###################################################################################### */
h1, h2, h3, h4, h5, h6 {
  margin: 0 0 0.75em;
  padding: 0;
  line-height: 1.25;
  font-weight: bold;
}

/* ====================================================
    squareTitle
==================================================== */
.squareTitle{
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
    -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
    border: 1px solid #D8DBE7;
    -webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    text-align: center;
    width: 130px;
    min-height: 130px;
    background: #fff;
    color: #4D5766;
    font-size: 1.0rem;
    font-weight: bold;
}
.squareTitle .en{
    font-size: 2.2rem;
    font-weight: normal;
}

/* ====================================================
    太字タイトル
==================================================== */
.boldTitle{
    margin-bottom: 1em;
    color: #01052B;
    font-size: 2.0rem;
    font-weight: bold;
}
.boldTitle.large{
    margin-bottom: 1em;
    font-size: 3.0rem;
}
.boldTitle.pageEntryTitle{
  margin-bottom: 1em;
}
.boldTitle.pageEntryTitle.padingL{
  padding-right: 180px;
}

.boldTitle.large .small{
  font-size: 1.6rem;
}
.boldTitle .small{
  font-size: 1.3rem;
}
.boldTitle.middle{
    margin-bottom: 0.75em;
    font-size: 1.8rem;
}
.boldTitle.small{
    margin-bottom: 0.75em;
    font-size: 1.5rem;
}
.boldTitle.blue{
    color: #1C4598;
}
.boldTitle.gray{ color: #4D5766;}

* + .boldTitle,
.entryBody > .boldTitle:first-child{margin-top: 3.5em;}
* + .boldTitle.large,
.entryBody > .boldTitle.large:first-child{margin-top: 3em;}
* + .boldTitle.middle,
.entryBody > .boldTitle.middle:first-child{margin-top: 2em;}
* + .boldTitle.small,
.entryBody > .boldTitle.small:first-child{margin-top: 1.5em;}


/* ====================================================
    ポッキータイトル
==================================================== */
.titlePockey {
  margin-bottom: 1em;
  color: #01052B;
  position: relative;
  line-height: 1;
  border-bottom: 1px solid #D8DBE7;
  font-size: 1.8rem;
}

.titlePockey span {
  position: relative;
  display: inline-block;
  padding: 0 0.25em 0.5em 0;
}

.titlePockey span:before {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  width: 100%;
  border-bottom: 1px solid #1C4598;
}

* + .titlePockey,
.entryBody > .titlePockey:first-child{margin-top: 2.5em;}

/* 小さい文字 */
.titlePockey small{
  display: block;
  margin-top: 0.5em;
  font-size: 1.3rem;
  line-height: 1.4;
  font-weight: normal;
}

/* ====================================================
    2色左線タイトル
==================================================== */
.leftLineTitle{
    margin-bottom: 1em;
    position: relative;
    color: #01052B;
    font-size: 1.8rem;
}
.leftLineTitle:before{
    content: "";
    position: relative;
    top: -2px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 1em;
    width: 3px;
    height: 24px;
    background: rgb(139,218,73);
    background: -moz-linear-gradient(top, #1C4598 0%, #1C4598 50%, #1FBED1 50.1%, #1FBED1 100%);
    background: -webkit-linear-gradient(top, #1C4598 0%, #1C4598 50%, #1FBED1 50.1%, #1FBED1 100%);
    background: linear-gradient(to bottom, #1C4598 0%, #1C4598 50%, #1FBED1 50.1%,  #1FBED1 100%);
}

* + .leftLineTitle,
.entryBody > .leftLineTitle:first-child{margin-top: 2.5em;}




/* ====================================================
    背景タイトル
==================================================== */
.bgTitle{
    margin-bottom: 1em;
    background: #F5F6FA;
    padding: 0.75em 1em;
    color: #333;
    font-size: 1.6rem;
    line-height: 1.75;
}

/* フォント色 */
.bgTitle.blue{color: #1C4598;}
.bgTitle.font-gray{color: #98A2AE;}

/* フォント太さ */
.bgTitle.normal{font-weight: normal;}

/* 大きさ */
.bgTitle.small{font-size: 1.3rem; padding: 0.75em;}

* + .bgTitle{margin-top: 1.5em;}

/* 大きさ */
.bgTitle + .underLine{
    margin-top:-0.5em;
}
.bgTitle + .underLine li{
    border-bottom: solid 1px #D8DBE7;
	line-height: 2.45;
}
/* ######################################################################################

 イメージ回り込み image

###################################################################################### */
.imgBox{
	float: right;
    margin-top: 0px;
    margin-left: 20px;
}
.imgBox_l{
	float: left;
    margin-top: 0px;
    margin-right: 20px;
}

/* ######################################################################################

　topicsInfo

###################################################################################### */
.topicsInfo.borderSolid .entry {
  border-style: solid;
}
.topicsInfo .entry {
  border-color: #D8DBE7;
  border-bottom-width: 1px;
  position: relative;
  line-height: 1.5;
}

.topicsInfo .entry {
  font-size: 1.2rem;
}
.topicsInfo.dateInline .date {
    display: table-cell;
    white-space: nowrap;
    padding: 1em 1em 1em 0;
    font-size: 1.2rem;
    color: #98A2AE;
    font-weight: normal;
}
.en .topicsInfo.dateInline .date {
    width:140px;
}
.topicsInfo .tag {
    display: table-cell;
    padding: 1em 0.5em 1em 0;
}
.topicsInfo.dateInline .text {
  display: table-cell;
  padding: 1em 0 1em 1em
}
.topicsInfo.dateInline .text a {
    color: #1C4598;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: normal;
}
.topicsInfo.dateInline .text a:hover{
    text-decoration: underline;
    color: #007ED9;
}

/* ====================================================
    TENNETアーカイブ
==================================================== */
.topicsInfo li {
    display:flex;
    flex-wrap:wrap;
    position: relative;
    border-style: solid;
    border-color: #D8DBE7;
    border-bottom-width: 1px;
    padding: 1em 0 1em 0;
    line-height: 1.5;
    font-size: 1.2rem;
    color: #98A2AE;
    font-weight: normal;
}
.topicsInfo li a {
    display:inline-block;
    width:100%;
    margin-top:0.5em;
    vertical-align:middle;
    order:2;
    text-decoration:none;
    color: #1C4598;
}
.topicsInfo li a:hover {
    text-decoration: underline;
    color: #007ED9;
}


/* ######################################################################################

　topicsList

###################################################################################### */
.topicsList.row{margin-left: -7.5px; margin-right: -7.5px;}
.topicsList.row > *{padding-left: 7.5px; padding-right: 7.5px; margin-bottom: 30px;}
.topicsList a{text-decoration: none;}
.topicsList a:hover{text-decoration: underline;}

.topicsList .img{width: 100%;}
.topicsList .img > a[target="_blank"]:after,
.topicsList .img > a[href$=".pdf"]:after{
  display: none;
}

.topicsList .img img{width: 100%; height: 140px;}
.topicsList .date{
    float: left;
    width: 110px;
    margin-top: 1.25em;
    margin-bottom: 0.5em;
    color: #98A2AE;
    font-size: 1.2rem;
    font-weight: normal;
}
.topicsList .tag{
    float: right;
    text-align: right;
    margin-top: 0.75em;
    margin-bottom: 0.35em;
    width: calc(100% - 110px);
    line-height: 1;
}

.topicsList .text{width: 100%; clear: both;}
.topicsList .text a{
    font-size: 1.4rem;
    line-height: 1.71;
    font-weight: bold;
    color: #4D5766;
}

/* ====================================================
    .tag　　topicsInfo/topicsList 共通
==================================================== */
.tag a{
    display: inline-block;
    white-space: nowrap;
    vertical-align: middle;
    margin: 0 0 0 0.5em;
    line-height: 1;
    text-align: center;
    margin-left: 0.25em;
    margin-bottom: 0.25em;
    padding: 0.35em 0.25em;
    min-width: 60px;
    border-radius: 2px;
    background: #888;
    font-size: 1.0rem;
    color: #fff;
    text-decoration: none;
}
.tag a:hover{
    color: #fff;
    text-decoration: none;
}


.tag a.topics{background: #937DDE;}
.tag a.info{background: #007ED9;}
.tag a.award{background: #1FBED1;}
.tag a.event{background: #26B886;}
.tag a.iau{background: #AFDC4E;}
.tag a.report{background: #FC9A34;}
.tag a.nenkai{background: #98A2AE;}
.tag a.other{background: #98A2AE;}


.topicsInfo .tag a.topics,
.topicsList .tag a.topics{background: #937DDE;}
.topicsInfo .tag a.info,
.topicsList .tag a.info{background: #007ED9;}
.topicsInfo .tag a.award,
.topicsList .tag a.award{background: #1FBED1;}
.topicsInfo .tag a.event,
.topicsList .tag a.event{background: #26B886;}
.topicsInfo .tag a.iau,
.topicsList .tag a.iau{background: #AFDC4E;}
.topicsInfo .tag a.report,
.topicsList .tag a.report{background: #FC9A34;}
.topicsInfo .tag a.nenkai,
.topicsList .tag a.nenkai{background: #98A2AE;}
.topicsInfo .tag a.other,
.topicsList .tag a.other{background: #98A2AE;}




/* ######################################################################################

　topicPath

###################################################################################### */
.topicPath {
    display: block;
    clear: both;
    line-height: 1;
    padding-top: 1em;
    padding-bottom: 1em;
    background: #F5F6FA;
}
.topicPath ol {
    display: inline-block;
    max-width: 980px;
    width: 100%;
    margin: 0 auto;
    text-align: left;
    font-size: 0;
}
.topicPath ol li {
    display: inline-block;
    font-size: 1.2rem;
    line-height: 1;
}
.topicPath ol li:before {
    content: "";
    display: inline-block;
    margin-right: 1em;
    margin-left: 1em;
    width: 5px;
    height: 9px;
    background-size: 5px 9px;
    background-image: url(../img/contents/ico-arrow-right_gray.svg);
}
.topicPath ol li:first-child:before {
    display: none;
}
.topicPath ol li a {
    color: #1C4598;
    text-decoration: none;
    font-size: 1.2rem;
}
.topicPath a:hover {
    text-decoration: underline;
}
.topicPath ol li span{
    color: #4D5766;
    font-size: 1.2rem;
}



/* ######################################################################################

　wallBelt

###################################################################################### */
.wallBelt {
  overflow: hidden;
  padding-top: 60px;
  padding-bottom: 60px;
}
.wallBelt.narrow {
  padding-top: 30px;
  padding-bottom: 30px;
}
.wallBelt.wide {
  padding-top: 90px;
  padding-bottom: 90px;
}
.wallBelt.extra {
  padding-top: 120px;
  padding-bottom: 120px;
}
.wallBelt.topNarrow {
  padding-top: 30px;
}
.wallBelt.topWide {
  padding-top: 90px;
}
.wallBelt.topExtra {
  padding-top: 120px;
}
.wallBelt.bottomNarrow {
  padding-bottom: 30px;
}
.wallBelt.bottomWide {
  padding-bottom: 90px;
}
.wallBelt.bottomExtra {
  padding-bottom: 120px;
}
.wallBelt.gray {
  background: #f8f9fa;
}
.wallBelt.blue {
  background: #93adfb;
}
.wallBelt.zero {
  padding-top: 0;
  padding-bottom: 0;
}
.wallBelt.topZero {
  padding-top: 0;
}
.wallBelt.bottomZero {
  padding-bottom: 0;
}


/*  背景
-------------------------------------*/
.wallBelt.aurora{
    background-image: url("../img/contents/bg_aurora.png");
    background-repeat: no-repeat;
    background-position: center top;
}
.wallBelt.gray{
    background: #F7F7F7;
}



/* ######################################################################################

    記事内スタイル　WYSIWYG

###################################################################################### */
.entryArea .entry p,
.entryArea .entry img,
.entryArea .entry h1,
.entryArea .entry h2,
.entryArea .entry h3,
.entryArea .entry h4,
.entryArea .entry h5,
.entryArea .entry h6,
.entryArea .entry ul,
.entryArea .entry ol,
.entryArea .entry dl{margin-bottom: 1.5em;}

.entryArea .entry h1{font-size: 28px;}
.entryArea .entry h2{font-size: 26px;}
.entryArea .entry h3{font-size: 24px;}
.entryArea .entry h4{font-size: 20px;}
.entryArea .entry h5{font-size: 18px;}
.entryArea .entry h6{font-size: 16px;}

.entryArea .entry p,
.entryArea .entry ul,
.entryArea .entry ol,
.entryArea .entry li,
.entryArea .entry dl,
.entryArea .entry dt,
.entryArea .entry dd{
    font-size: 1.5rem;
    line-height: 2;
}

.entryArea .entry ol {margin-left:1.5em;}
.entryArea .entry ol li {list-style:decimal;}

.entryArea .entry ul li{
    position: relative;
    padding-left: 1em;
}
.entryArea .entry ul li:before{
    content: "";
    position: absolute;
    top: 11px;
    left: 0;
    width: 6px;
    height: 6px;
    background: #333;
    border-radius: 50%;
}
.entryArea .entry ul li + li{margin-top: 0.25em;}

.entryArea .entry img{
    display: inline-block;
    max-width: 100%;
    margin-right: 10px;
    height: auto;
}

.entryArea .entry a{text-decoration: underline;}
.entryArea .entry a:hover{text-decoration: none;}

.entryArea .entry table{
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
}
.entryArea .entry table th,
.entryArea .entry table td{
    padding: 1.25em;
    border-bottom: solid 1px #D8DBE7;
    border-right: solid 1px #D8DBE7;
}
.entryArea .entry table tr:first-child th,
.entryArea .entry table tr:first-child td{
    border-top: 1px solid #D8DBE7;
}

.entryArea .entry table tr > th:first-child,
.entryArea .entry table tr > td:first-child{
    border-left: 1px solid #D8DBE7;
}

.entryArea .entry table th{
    background-color: #F5F6FA;
}




/* ######################################################################################

    記事内スタイル　WYSIWYG

###################################################################################### */
.entryArea .entry p,
.entryArea .entry img,
.entryArea .entry h1,
.entryArea .entry h2,
.entryArea .entry h3,
.entryArea .entry h4,
.entryArea .entry h5,
.entryArea .entry h6,
.entryArea .entry ul,
.entryArea .entry ol,
.entryArea .entry dl{margin-bottom: 1.5em;}

.entryArea .entry .aform-content  ul,
.entryArea .entry .aform-content  ol,
.entryArea .entry .aform-content dl{margin-bottom:0;}

.entryArea .entry h1{font-size: 28px;}
.entryArea .entry h2{font-size: 26px;}
.entryArea .entry h3{font-size: 24px;}
.entryArea .entry h4{font-size: 20px;}
.entryArea .entry h5{font-size: 18px;}
.entryArea .entry h6{font-size: 16px;}

.entryArea .entry p,
.entryArea .entry ul,
.entryArea .entry ol,
.entryArea .entry li,
.entryArea .entry dl,
.entryArea .entry dt,
.entryArea .entry dd{
    font-size: 1.5rem;
    line-height: 2;
}


.entryArea .entry .aform-content p,
.entryArea .entry .aform-content ul,
.entryArea .entry .aform-content ol,
.entryArea .entry .aform-content li,
.entryArea .entry .aform-content dl,
.entryArea .entry .aform-content dt,
.entryArea .entry .aform-content dd{
    line-height: 1.25;
}





.entryArea .entry ol {margin-left:1.5em;}
.entryArea .entry ol li {list-style:decimal;}

.entryArea .entry ul li{
    position: relative;
    padding-left: 1em;
}
.entryArea .entry ul li:before{
    content: "";
    position: absolute;
    top: 11px;
    left: 0;
    width: 6px;
    height: 6px;
    background: #333;
    border-radius: 50%;
}
.entryArea .entry ul li + li{margin-top: 0.25em;}

.entryArea .entry img{
    display: inline-block;
    max-width: 100%;
    margin-right: 10px;
    height: auto;
}

.entryArea .entry a{text-decoration: underline;}
.entryArea .entry a:hover{text-decoration: none;}

.entryArea .entry table{
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
}
.entryArea .entry table th,
.entryArea .entry table td{
    padding: 1.25em;
    border-bottom: solid 1px #D8DBE7;
    border-right: solid 1px #D8DBE7;
}
.entryArea .entry table tr:first-child th,
.entryArea .entry table tr:first-child td{
    border-top: 1px solid #D8DBE7;
}

.entryArea .entry table tr > th:first-child,
.entryArea .entry table tr > td:first-child{
    border-left: 1px solid #D8DBE7;
}

.entryArea .entry table th{
    background-color: #F5F6FA;
}




