@charset "utf-8";
/*                reset
======================================================= */
html, body {
  height: 100%;
}

body, h1, h2, h3, h4, h5, table, th, td, ul, li, ol, dl, dt, dd, form, p, table, th, td {
  margin: 0px;
  padding: 0px;
  font-weight: normal;
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  list-style-type: none;
  font-size: 100%;
}
body {
  color: black;
  background-color: #ffffff;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.71;
  font-size: 14px;
  -webkit-text-size-adjust: none;
}
body.fontLarge {
  font-size: 16px;
}
@media only screen and (max-width: 768px) {
  body {
    font-size: 13px;
    line-height: 1.53;
  }
}

@media only screen and (min-width: 769px) and (max-width: 979px) {
  body {
    display: flex;
    overflow-x: auto;
    padding: 0 10px;
  }
  body.movie {
    display: inherit;
  }
}

/* for IE6 */
* html body {
  font-size: 100%;
}

a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

a img {
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
}

input, textArea, select, button {
  background: none;
  margin: 0px;
  padding: 0px;
  font-weight: normal;
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  list-style-type: none;
  font-size: 14px;
}
input:disabled, select:disabled {
  background: #dddddd !important;
}
* {
  box-sizing: border-box;
}

p + p {
  margin-top: 1.5em;
}

@font-face {
  font-family: 'FontAwesome';
  src: url("/fonts/fontawesome-webfont.eot?v=4.6.3");
  src: url("/fonts/fontawesome-webfont.eot?#iefix&v=4.6.3") format("embedded-opentype"), url("/fonts/fontawesome-webfont.woff2?v=4.6.3") format("woff2"), url("/fonts/fontawesome-webfont.woff?v=4.6.3") format("woff"), url("/fonts/fontawesome-webfont.ttf?v=4.6.3") format("truetype"), url("/fonts/fontawesome-webfont.svg?v=4.6.3#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal;
}

/*                link
======================================================= */
a {
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -ms-transition: 0.5s;
  transition: 0.5s;
}

a:link {
  color: black;
  text-decoration: none;
}

a:visited {
  color: black;
  text-decoration: none;
}

.visit a:visited {
  color: purple;
}

a:hover {
  color: black;
  text-decoration: none;
  opacity: 0.8;
  filter: alpha(opacity=80);
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -ms-transition: 0.5s;
  transition: 0.5s;
}

/*                common
======================================================= */
.clear {
  clear: both;
}

.clear_both {
  clear: both;
}

.hidden {
  overflow: hidden;
}

img {
  user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -webkit-touch-callout: none;
  pointer-events: none;
}

img.attach {
  width: 20px;
  margin-left: 10px;
}
img.attach:nth-child(2) {
  margin-left: 5px;
}
img.attachL {
  width: 20px;
  margin-left: 10px;
  margin-bottom: 4px;
}
img.attachL:nth-child(2) {
  margin-left: 5px;
}

.hilight {
  background-color: #ffd900;
  display: inline-block;
  font-weight: bold;
}


.lower.detail span.dt {
  margin-right: 10px;
}

span.ad {
  display: inline-block;
}
span.ad span {
  background-color: #f05500;
  color: white;
  font-size: 65%;
  padding: 2px 4px;
  font-weight: bold;
  position: relative;
  top: -2px;
}
.lower.list span.ad,
.lower.detail span.ad {
  margin-right: 10px;
}

span.job {
  display: inline-block;
}
span.job span {
  background-color: #56c5eb;
  color: white;
  font-size: 65%;
  padding: 2px 4px;
  font-weight: bold;
  position: relative;
  top: -2px;
}
.lower.list span.job,
.lower.detail span.job {
  margin-right: 10px;
}

span.bill {
  display: inline-block;
}
span.bill span {
  border: 1px solid #1d2f5d;
  color: #1d2f5d;
  font-size: 65%;
  padding: 2px 4px;
  font-weight: bold;
  position: relative;
  top: -2px;
  margin-left: 15px;
}
.lower #main_area #main_content .article_detail p.date span.bill span {
  margin-left: 0;
}
/*****
#home span.bill {
  margin-left: 15px;
}
#special span.bill {
  margin-left: 10px;
}
.lower.list span.bill {
  margin-left: 10px;
}
*/
.lower.detail span.bill,
.lower.movie span.bill {
  margin-right: 10px;
}

span.tag {
  display: inline-block;
}
span.tag span {
  font-weight: bold;
  color: #0000EE;
  font-size: 100%;
  text-decoration: underline;
/*****
  border: 1px solid #1d2f5d;
  color: #1d2f5d;
  font-size: 65%;
  padding: 2px 4px;
  font-weight: bold;
  position: relative;
  top: -2px;
*****/
}
span.tag span a {
  color: #0000EE;
}
.lower.detail span.tag,
.lower.movie span.tag {
  margin-right: 10px;
}

.font_size {
  display: block;
  position: absolute;
  top: 48px;
  left: 57%;
  background-color: #fff;
  padding: 10px;
  border: 1px solid #1d2f5d;
  border-radius: 4px;
}
.login .font_size {
  right: 33%;
  left: auto;
}
.font_size p {
  display: inline-block;
  margin: 0;
}
.font_size p a {
  padding: 2px 4px;
  border: 1px solid #1d2f5d;
  border-radius: 4px;
}
.font_size p a:hover,
.font_size p a.active {
  background-color: #1d2f5d;
  color: #fff;
}


/*                leyout
======================================================= */
#wrapper {
  overflow: hidden;
}

@media only screen and (min-width: 769px) and (max-width: 979px) {
  #wrapper {
    overflow: inherit;
  }
}

#main_area {
  overflow: hidden;
}
#special #main_area, 
.movie #main_area {
  overflow: visible;
}
@media only screen and (min-width: 769px) {
  #main_area {
    padding-bottom: 25px;
  }
}
#main_area #main_content {
  float: left;
  /*width: 815px;*/
  width: 648px;
}
@media only screen and (max-width: 768px) {
  #main_area #main_content {
    float: none;
    width: 100%;
    padding-bottom: 30px;
  }
}
#main_area #main_content.no_sidebar {
  float: none;
  /*width: 1000px;*/
  width: 980px;
  padding-bottom: 56px;
  margin: 0 auto;
  min-height: 400px;
}
@media only screen and (max-width: 768px) {
  #main_area #main_content.no_sidebar {
    width: 100%;
    padding-bottom: 27px;
    min-height: auto;
  }
}
#main_area #main_content.movie_list {
  float: none;
  width: 980px;
  padding-bottom: 0;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  #main_area #main_content.movie_list {
    width: 100%;
    padding-bottom: 27px;
  }
}


#main_area #sidebar {
  float: right;
  /*width: 375px;*/
  width: 300px;
}
@media only screen and (max-width: 768px) {
  #main_area #sidebar {
    border-top: 1px #dcdcdc solid;
    float: none;
    width: auto;
    padding: 15px 0;
    margin: 0 -15px;
  }
  #main_area #sidebar .sp_width {
    padding: 0 15px;
  }
}

.main_width {
  display: block;
  margin-left: auto;
  margin-right: auto;
  /*width: 1230px;*/
  width: 980px;
}
@media only screen and (max-width: 768px) {
  .main_width {
    width: 100%;
    padding: 0 15px;
  }
}

/*                タイトル装飾
======================================================= */
.article_title {
  font-size: 171.4%;
  font-weight: bold;
  line-height: 1.55;
}
h2.article_title {
  font-size: 125%;
}
@media only screen and (max-width: 768px) {
  .article_title {
    font-size: 138.5%;
    line-height: 1.43;
  }
}
.article_title .dotted {
  display: block;
}
.article_title .dotted:before {
  background-color: black;
  content: '';
  display: inline-block;
  height: 14px;
  position: relative;
  top: -2px;
  width: 14px;
  margin: 0 5px;
}
@media only screen and (max-width: 768px) {
  .article_title .dotted:before {
    height: 10px;
    top: -3px;
    width: 10px;
    margin: 0 3px;
  }
}
.article_title a:hover {
  text-decoration: underline;
  opacity: 1;
}

.dotted_title {
  font-size: 171.4%;
  font-weight: bold;
  line-height: 1.27;
  text-indent: -23px;
  padding-left: 23px;
}
@media only screen and (max-width: 768px) {
  .dotted_title {
    font-size: 138.5%;
    text-indent: -16px;
    padding-left: 16px;
  }
}

.border_title {
  border-bottom: 1px #dcdcdc solid;
  overflow: hidden;
  padding-bottom: 8px;
}

.clipping .border_title {
  margin: 10px 0 15px;
}
.clipping .border_title p {
  float: left;
  position: relative;
  top: -3px;
  left: 400px;
}
.clipping .border_title p a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.clipping .border_title p a:before {
  content:'\f059';
  display: inline-block;
  font-family: FontAwesome, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1;
  margin-right: 3px;
}

@media only screen and (max-width: 768px) {
  .border_title {
    padding-bottom: 2px;
  }
  .clipping .border_title p {
    float: right;
    left: inherit;
  }
}
.border_title .title {
  color: #1d2f5d;
  float: left;
  font-size: 141.4%;
  font-weight: bold;
  line-height: 1.27;
}
@media only screen and (max-width: 768px) {
  .border_title .title {
    font-size: 138.5%;
  }
}
.border_title p {
  float: right;
}
.border_title p a {
  color: #1d2f5d;
  font-weight: bold;
}
.border_title p a:hover {
  opacity: 1;
  text-decoration: underline;
}
.border_title p.index {
  margin-top: 10px;
  width: 100%;
}
.border_title p.index span {
  display: block;
  margin: 10px 0 0;
}
@media only screen and (max-width: 768px) {
  .border_title p.index span {
    margin: 10px 0 5px;
  }
}


/*                表示切り替え
======================================================= */
@media only screen and (min-width: 769px) {
  .pc_none {
    display: none !important;
  }
}

@media only screen and (max-width: 768px) {
  .tab_none {
    display: none !important;
  }
}

@media only screen and (max-width: 640px) {
  .sp_none {
    display: none !important;
  }
}

/*                table
======================================================= */
table {
  border-top: 1px #dcdcdc solid;
  border-left: 1px #dcdcdc solid;
  border-collapse: separate;
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

table tr th,
table tr td {
  border-right: 1px #dcdcdc solid;
  border-bottom: 1px #dcdcdc solid;
  text-align: center;
  padding: 8px 10px 7px;
}

table tr th {
  background-color: #ecedf1;
  font-weight: bold;
}

.ie7 table tr th,
.ie7 table tr td {
  position: relative;
}

/*                pageTop
======================================================= */
.page_top {
  position: fixed;
  right: 40px;
  bottom: 40px;
  z-index: 1000;
  display: none;
}
.page_top a {
  display: block;
}
@media only screen and (max-width: 640px) {
  .page_top {
    bottom: 0px;
    right: 0;
  }
  .page_top img {
    width: 36px;
    height: 36px;
  }
}

/*                カラム
======================================================= */
.row {
  margin-left: -15px;
  margin-right: -15px;
  overflow: hidden;
  margin-bottom: -15px;
}
@media only screen and (max-width: 1024px) {
  .row {
    margin-left: -8px;
    margin-right: -8px;
  }
}
@media only screen and (max-width: 768px) {
  .row {
    margin-left: -5px;
    margin-right: -5px;
  }
}
.row img {
  width: 100%;
}
.row .col1, .row .col2, .row .col3, .row .col4, .row .col5, .row .col6, .row .col7, .row .col8, .row .col9, .row .col10, .row .col11, .row .col12 {
  float: left;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 1024px) {
  .row .col1, .row .col2, .row .col3, .row .col4, .row .col5, .row .col6, .row .col7, .row .col8, .row .col9, .row .col10, .row .col11, .row .col12 {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media only screen and (max-width: 768px) {
  .row .col1, .row .col2, .row .col3, .row .col4, .row .col5, .row .col6, .row .col7, .row .col8, .row .col9, .row .col10, .row .col11, .row .col12 {
    padding-left: 5px;
    padding-right: 5px;
  }
}
.row .tab1, .row .tab2, .row .tab6 {
  float: left;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}
@media only screen and (max-width: 1024px) {
  .row .tab1, .row .tab2, .row .tab6 {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media only screen and (max-width: 768px) {
  .row .tab1, .row .tab2, .row .tab6 {
    padding-left: 5px;
    padding-right: 5px;
  }
}

.square {
  overflow: hidden;
}
.square .col1, .square .col2, .square .col3, .square .col4, .square .col5, .square .col6, .square .col7, .square .col8, .square .col9, .square .col10, .square .col11, .square .col12 {
  float: left;
  min-height: 1px;
  padding: 0;
  margin-bottom: 0;
}

.col12 {
  width: 100%;
}

.col11 {
  width: 91.66666667%;
}

.col10 {
  width: 83.33333333%;
}

.col9 {
  width: 75%;
}

.col8 {
  width: 66.66666667%;
}

.col7 {
  width: 58.33333333%;
}

.col6 {
  width: 50%;
}

.col5 {
  width: 41.66666667%;
}

.col4 {
  width: 33.33333333%;
}

.col3 {
  width: 25%;
}

.col2 {
  width: 16.66666667%;
}

.col1 {
  width: 8.33333333%;
}

@media only screen and (max-width: 1024px) {
  .pc1024Col12 {
    width: 100%;
  }

  .pc1024Col6 {
    width: 50%;
  }

  .pc1024Col3 {
    width: 25%;
  }

  .pc1024Col2 {
    width: 16.66666667%;
  }
}
@media only screen and (max-width: 768px) {
  .tab12 {
    width: 100%;
  }

  .tab6 {
    width: 50%;
  }

  .tab4 {
    width: 33.33333333%;
  }
}
@media only screen and (max-width: 767px) {
  .sp12 {
    width: 100%;
  }

  .sp6 {
    width: 50%;
  }
}
@media only screen and (max-width: 480px) {
  .sps12 {
    width: 100%;
  }

  .sps6 {
    width: 50%;
  }
}
/*                iframeのレスポン化
======================================================= */
.frame_respon .fb_iframe_widget,
.frame_respon .fb_iframe_widget span,
.frame_respon .fb_iframe_widget iframe[style] {
  width: 100%important;
}

.gmap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.gmap iframe,
.gmap object,
.gmap embed {
  border: none !important;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*                ヘッダー・サイド・フッター
======================================================= */
/*                header
======================================================= */
@media only screen and (min-width: 769px) {
  #header {
    padding: 10px 0 15px;
  }
}
@media only screen and (max-width: 768px) {
  #header {
    border-bottom: 1px #d2d2d2 solid;
    position: relative;
  }
}
#header .main_width {
  overflow: hidden;
}
#header .main_width #hd_logo {
  float: left;
  width: 215px;
  position: relative;
  /*top: 10px;*/
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_logo {
    width: 170px;
    padding: 8px 0 15px;
    position: inherit;
  }
}
#header .main_width #hd_logo a {
  display: block;
}
#header .main_width #hd_logo a img {
  width: 100%;
}
#header .main_width #hd_logo a:hover {
  opacity: 1 !important;
}
#header .main_width #hd_right {
  overflow: hidden;
}
@media only screen and (min-width: 769px) {
  #header .main_width #hd_right {
    float: right;
  }
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right {
    background-color: #e8eaee;
    border-left: 1px #d2d2d2 solid;
    position: absolute;
    right: 0;
    top: 0;
  }
}
#header .main_width #hd_right #hd_search {
  float: left;
}
@media only screen and (min-width: 769px) {
  #header .main_width #hd_right #hd_search {
    border: 1px #dcdcdc solid;
    border-radius: 4px;
    margin-top: 5px;
  }
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right #hd_search {
    position: relative;
    width: 50px;
  }
}
#header .main_width #hd_right #hd_search .select {
  background-color: #f0f1f3;
  border-radius: 4px 0 0 4px;
  display: inline-block;
  padding: 7px 0 8px 10px;
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right #hd_search .select {
    display: none;
  }
}
#header .main_width #hd_right #hd_search .select select {
  font-size: 85.7%;
}
#header .main_width #hd_right #hd_search .search {
  display: inline-block;
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right #hd_search .search {
    display: none;
    height: 50px;
    width: 50px;
  }
}
#header .main_width #hd_right #hd_search .search input.search_text {
  padding: 5px;
  width: 240px;
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right #hd_search .search input.search_text {
    display: none;
  }
}
#header .main_width #hd_right #hd_search .search input.search_text::-webkit-input-placeholder {
  color: #b3b3b3;
}
#header .main_width #hd_right #hd_search .search input.search_text:-ms-input-placeholder {
  color: #b3b3b3;
}
#header .main_width #hd_right #hd_search .search input.search_text::-moz-placeholder {
  color: #b3b3b3;
}
#header .main_width #hd_right #hd_search .search input.search_btn {
  background: url(/media/images/common/icon_search.png) no-repeat center top;
  background-size: 17px 19px;
  cursor: pointer;
  height: 19px;
  text-indent: -9999px;
  width: 17px;
}
@media only screen and (min-width: 769px) {
  #header .main_width #hd_right #hd_search .search input.search_btn {
    margin: 0 10px 0 5px;
  }
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right #hd_search .search input.search_btn {
    display: block;
    margin: 13px auto 3px;
  }
}
#header .main_width #hd_right #hd_search .search span.pc_none {
  color: #1d2f5d;
  display: block;
  font-size: 57.1%;
  text-align: center;
}
#header .main_width #hd_right ul.btn_list {
  float: left;
}
@media only screen and (min-width: 769px) {
  #header .main_width #hd_right ul.btn_list {
    position: relative;
    top: 1px;
    margin: 8px 0 1px 5px;
  }
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right ul.btn_list {
    height: 50px;
    width: 130px;
  }
  #header .main_width #hd_right.nologin ul.btn_list {
    width: 50px;
  }
}
#header .main_width #hd_right ul.btn_list li {
  text-align: center;
}
@media only screen and (min-width: 769px) {
  #header .main_width #hd_right ul.btn_list li {
    display: inline-block;
  }
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right ul.btn_list li {
    height: 50px;
    width: 50px;
    display: inline-block;
    float: left;
  }
  #header .main_width #hd_right ul.btn_list li.clipping_btn {
    width: 80px;
  }
}
#header .main_width #hd_right ul.btn_list li a {
  display: block;
}
@media only screen and (min-width: 769px) {
  #header .main_width #hd_right ul.btn_list li a {
    border-radius: 4px;
    padding: 1px 3px 3px;
  }
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right ul.btn_list li a {
    padding-top: 9px;
  }
}
#header .main_width #hd_right ul.btn_list li.login_btn a {
  background-color: #e8eaee;
}
#header .main_width #hd_right ul.btn_list li.login_btn a:before {
  background: url(/media/images/common/icon_login.png) no-repeat left top;
  background-size: 17px 19px;
  content: '';
  display: inline-block;
  height: 19px;
  position: relative;
  top: 4px;
  width: 17px;
  margin-right: 3px;
}
#header .main_width #hd_right ul.btn_list li.clipping_btn a {
  background-color: #e8eaee;
  color: #1d2f5d;
}
#header .main_width #hd_right ul.btn_list li.clipping_btn a:before {
  content: '\f005';
  display: inline-block;
  position: relative;
  margin-right: 3px;
  font-family: FontAwesome, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
  font-size: 115%;
}



@media only screen and (max-width: 768px) {
  #header .main_width #hd_right ul.btn_list li.login_btn a span,
  #header .main_width #hd_right ul.btn_list li.clipping_btn a span {
    color: #1d2f5d;
    display: block;
    font-size: 57.1%;
    margin-top: 1px;
  }
  #header .main_width #hd_right ul.btn_list li.clipping_btn a:before {
      font-size: 128%;
  }
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right ul.btn_list li.registration_btn {
    display: none !important;
  }
}
#header .main_width #hd_right ul.btn_list li.registration_btn a {
  background-color: #f05500;
  color: white;
}
#header .main_width #hd_right ul.btn_list li.registration_btn a:before {
  background: url(/media/images/common/icon_registration.gif) no-repeat left top;
  content: '';
  display: inline-block;
  height: 19px;
  position: relative;
  top: 4px;
  width: 23px;
  margin-right: 3px;
}
#header .main_width #hd_right ul.btn_list li.registration_btn.change {
  display: none;
}
#header .main_width #hd_right ul.btn_list li.registration_btn.change a {
  background-color: #1d2f5d;
}
#header .main_width #hd_right ul.btn_list li.registration_btn.change a:before {
  background: url(/media/images/common/icon_registration_change.gif) no-repeat left top;
  height: 19px;
  width: 23px;
}
#header .main_width #hd_right #sp_menu_btn {
  background-color: #1d2f5d;
  cursor: pointer;
  float: left;
  height: 50px;
  text-align: center;
  width: 50px;
  padding-top: 13px;
}
@media only screen and (min-width: 769px) {
  #header .main_width #hd_right #sp_menu_btn {
    display: none;
  }
}
#header .main_width #hd_right #sp_menu_btn img {
  height: 17px;
  width: 20px;
}
#header .main_width #hd_right #sp_menu_btn span {
  color: #d2e1f0;
  display: block;
  font-size: 57.1%;
  margin-top: 3px;
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right.login {
    /*width: 151px;*/
  }
  #header .main_width #hd_right.nologin {
    /*width: 101px;*/
  }
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right.login #hd_search .search {
    display: inline-block;
  }
}
#header .main_width #hd_right.login ul.btn_list li.registration_btn.registration {
  /*display: none;*/
}
#header .main_width #hd_right.login ul.btn_list li.registration_btn.change {
  display: inline-block;
}
#header .main_width #hd_right ul.btn_list li.font_btn {
  display: inline-block;
  font-size: 90%;
  width: auto;
  position: relative;
  top: 4px;
  margin-right: 5px;
/*
  text-align: right;
  width: 120px;
*/
}
/*****
#header .main_width #hd_right ul.btn_list li.font_btn a {
  display: inline-block;
  background-color: #fff;
  margin-left: 10px;
  color: #1d2f5d;
  font-weight: bold;
  padding: 4px 8px 3px;
  border: 1px solid #1d2f5d;
}
#header .main_width #hd_right ul.btn_list li.font_btn a.active {
  color: #fff;
  background-color: #1d2f5d;
}
****/


#header .main_width #hd_right ul.sns_list {
  float:left;
  position: relative;
  top: 2px;
  margin: 8px 0 0 5px;
}
#header .main_width #hd_right  ul.sns_list li {
  display: inline-block;
  height: 30px;
  width: 30px;
}
#header .main_width #hd_right ul.sns_list li a {
  display: block;
  height: 30px;
  width: 30px;
  padding: 0;
}
#header .main_width #hd_right ul.sns_list li a .fab {
  display: inline-block;
  font-family: FontAwesome, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 150%;
}
@media only screen and (max-width: 768px) {
  #header .main_width #hd_right ul.sns_list {
    display: block;
    position: relative;
    top: 0;
    margin: 0;
    padding: 12px 0 12px 10px;
    text-align :center;
  }
  #header .main_width #hd_right ul.sns_list li {
    margin-right: 0;
  }
  #header .main_width #hd_right ul.sns_list li:last-child {
    margin-right: 5px;
  }
  #header .main_width #hd_right ul.sns_list li a img {
    width: 100%;
  }
}



#sp_nv_area {
  background-color: #e8eaee;
  display: none;
  position: absolute;
  width: 100%;
  z-index: 500;
}
@media only screen and (min-width: 769px) {
  #sp_nv_area {
    display: none !important;
  }
}
#sp_nv_area ul.btn_list {
  border-bottom: 1px #d2d2d2 solid;
  overflow: hidden;
  padding: 5px;
}
#sp_nv_area ul.btn_list li {
  text-align: center;
  padding: 0 5px;
  /*float: left;
  width: 50%;*/
}
#sp_nv_area ul.btn_list li a {
  border-radius: 5px;
  color: white;
  display: block;
  font-size: 138.5%;
  font-weight: bold;
  padding: 13px 0 10px;
}
#sp_nv_area ul.btn_list li.registration a {
  background-color: #f05500;
}
#sp_nv_area ul.btn_list li.change a {
  background-color: #1d2f5d;
}
#sp_nv_area ul.nv_list li {
  border-bottom: 1px #d2d2d2 solid;
}
#sp_nv_area ul.nv_list li a {
  display: block;
  font-size: 115.4%;
  font-weight: bold;
  padding: 16px 10px 12px;
}
#sp_nv_area ul.sns_list {
  border-bottom: 1px #d2d2d2 solid;
  overflow: hidden;
  padding: 10px;
}
#sp_nv_area ul.sns_list li {
  float: left;
  width: 30px;
  margin-right: 10px;
}
#sp_nv_area ul.sns_list li a {
  display: block;
}
#sp_nv_area ul.sns_list li a img {
  width: 100%;
}

@media only screen and (min-width: 769px) {
  #gnavi {
    background-color: #1d2f5d;
    font-size: 120%;
  }
}
@media only screen and (max-width: 768px) {
  #gnavi {
    display: none;
  }
}
#gnavi .main_width > ul {
  overflow: hidden;
}

@media only screen and (min-width: 769px) and (max-width: 979px) {
  #gnavi .main_width > ul {
    background-color: #1d2f5d;
  }
}

#gnavi .main_width > ul > li {
  border-radius: 4px 4px 0 0;
  float: left;
  margin-top: 4px;
}
/*****
#gnavi .main_width > ul > li.movie {
  background-color: #f05500;
}
#gnavi .main_width > ul > li.movie a {
  color:#fff;
}
#gnavi .main_width > ul > li.movie a:hover {
  color:#f05500;
}
*****/
#gnavi .main_width > ul > li > a,
#gnavi .main_width > ul > li > span {
  border-top: 1px #1d2f5d solid;
  border-right: 1px #1d2f5d solid;
  border-left: 1px #1d2f5d solid;
  border-radius: 4px 4px 0 0;
  color: white;
  cursor: pointer;
  display: block;
  font-weight: bold;
  padding: 5px 10px 7px;
  font-size: 14px;
}
#gnavi .main_width > ul > li:hover {
  background-color: white;
  opacity: 1 !important;
}
#gnavi .main_width > ul > li:hover > a, #gnavi .main_width > ul > li:hover > span {
  color: #1d2f5d;
}
#gnavi .main_width > ul > li > ul {
  background-color: white;
  border-right: 1px #1d2f5d solid;
  border-bottom: 1px #1d2f5d solid;
  border-left: 1px #1d2f5d solid;
  display: none;
  position: absolute;
  z-index: 100;
  padding: 13px 20px 10px;
}
#gnavi .main_width > ul > li > ul > li > a {
  color: black;
  font-weight: normal;
  line-height: 1.85;
}
#gnavi .main_width > ul > li > ul > li > a:before {
  color: #1d2f5d;
  content: '\f105';
  display: inline-block;
  font-size: 120%;
  font-family: FontAwesome, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-right: 8px;
}
#gnavi .main_width > ul > li > ul > li > a:hover {
  opacity: 1 !important;
  text-decoration: underline;
}
#gnavi .main_width > ul > li.on > a,
#gnavi .main_width > ul > li.on > span {
  background-color: white;
  color: #1d2f5d;
}
/*****
#gnavi .main_width > ul > li.on.movie > a {
  color: #f05500;
}
*****/

/*                sidebar
======================================================= */
#sidebar .info_list {
  border: 1px #dcdcdc solid;
}
#sidebar .info_list h4 {
  border-bottom: 1px #dcdcdc solid;
  margin: 0 9px;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list h4 {
    margin: 0 8px;
  }
}
#sidebar .info_list h4 a {
  display: block;
}
#sidebar .info_list h4 a img {
  height: auto;
}
#sidebar .info_list .inner {
  padding: 10px 0 9px;
  margin: 0 9px;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list .inner {
    padding: 10px 0 9px;
    margin: 0 8px;
  }
}
#sidebar .info_list .inner ul {
  padding: 0 10px;
}
#sidebar .info_list .inner ul li {
  line-height: 1.25;
  text-indent: -6px;
  padding-left: 6px;
}
#sidebar .info_list .inner ul li:before {
  color: #1d2f5d;
  content: '\f105';
  display: inline-block;
  font-family: FontAwesome, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 130%;
  line-height: 1;
  margin-left: 6px;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list .inner ul li:before {
    font-size: 120%;
  }
}
#sidebar .info_list .inner ul li a {
  left: 10px;
  position: relative;
}
#sidebar .info_list .inner ul li a:hover {
  opacity: 1;
  text-decoration: underline;
}
#sidebar .info_list .inner ul li + li {
  margin-top: 5px;
}
#sidebar .info_list#market_info h4 {
  color: #1d2f5d;
  font-size: 128.6%;
  font-weight: bold;
  padding: 12px 10px 6px;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#market_info h4 {
    font-size: 138.5%;
    padding: 14px 8px 4px;
  }
}
#sidebar .info_list#aotou_info {
  border: 1px #1d2f5d solid;
}
#sidebar .info_list#aotou_info h4 {
  border-bottom: 1px #1d2f5d solid;
  padding: 0;
  margin: 0;
}
#sidebar .info_list#aotou_info h4 a img {
  width: 100%;
}
#sidebar .info_list#logbook_info h4 {
  padding: 13px 10px 12px;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#logbook_info h4 {
    padding: 14px 9px 12px;
  }
}
#sidebar .info_list#logbook_info h4 a img {
  width: 128px;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#logbook_info h4 a img {
    width: 118px;
  }
}
#sidebar .info_list#four_seas_info h4 {
  /*padding: 12px 10px 11px;*/
  margin: 0;
  border-bottom: none;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#four_seas_info h4 {
    /*padding: 12px 9px;*/
  }
}
#sidebar .info_list#four_seas_info h4 a img {
  /*width: 104px;*/
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#four_seas_info h4 a img {
    width: 100%;
  }
}
#sidebar .info_list#profile_info h4 {
  padding: 7px 10px 0;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#profile_info h4 {
    padding: 7px 9px 0;
  }
}
#sidebar .info_list#profile_info h4 a img {
  width: 167px;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#profile_info h4 a img {
    width: 153px;
  }
}
#sidebar .info_list#discussion_info h4 {
  padding: 0;
  margin: 0;
}
#sidebar .info_list#discussion_info h4 a {
  /*margin: 0 -9px;*/
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#discussion_info h4 a {
    /*margin: 0 -8px;*/
  }
}
#sidebar .info_list#discussion_info h4 a img {
  /*width: 138px;*/
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#discussion_info h4 a img {
    width: 100%;
  }
}
#sidebar .info_list#highlight_info h4 {
  /*padding: 13px 10px 14px;*/
  padding: 0;
  margin: 0;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#highlight_info h4 {
    /*padding: 13px 9px;*/
  }
}
#sidebar .info_list#highlight_info h4 a img {
  /*width: 125px;*/
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#highlight_info h4 a img {
    /*width: 115px;*/
  }
}
#sidebar .info_list#special_issue_info h4 {
  /*padding: 13px 10px 12px;*/
  margin:0;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#special_issue_info h4 {
    /*padding: 12px 9px;*/
  }
}
#sidebar .info_list#special_issue_info h4 a img {
  /*width: 120px;*/
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#special_issue_info h4 a img {
    width: 100%;
  }
}
#sidebar .info_list#kp_data h4 {
  margin:0;
  border-bottom: none;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list#kp_data h4 {
  }
  #sidebar .info_list#kp_data h4 a img {
    width: 100%;
  }
}

#sidebar .info_list + .info_list {
  margin-top: 5px;
}
#sidebar .side_bnr01 + .side_bnr01 {
  margin-top: 5px;
}
#sidebar .info_list + .side_bnr01 {
  margin-top: 5px;
}
@media only screen and (max-width: 768px) {
  #sidebar .info_list + .side_bnr01 {
    margin-top: 15px;
  }
}
#sidebar .side_bnr ul li a {
  display: block;
}
#sidebar .side_bnr ul li a img {
  width: 100%;
}
#sidebar .side_bnr ul li + li {
  margin-top: 5px;
}
#sidebar .side_bnr.side_bnr01 + .info_list {
  margin-top: 5px;
}
#sidebar #kp_data.info_list {
  margin-top: 10px;
}

#home #sidebar #kp_data.info_list.appMode,
#home #sidebar #sns_sp.appMode {
  display: none;
}

@media only screen and (max-width: 768px) {
  #sidebar .side_bnr.side_bnr01 + .info_list {
    margin-top: 15px;
  }
}
#sidebar .side_bnr.side_bnr02 {
  margin-top: 5px;
}
#sidebar #side_ranking {
  margin: 26px 0 60px;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_ranking {
    margin: 17px 0 37px;
  }
}
#sidebar #side_ranking h4 {
  color: #1d2f5d;
  font-size: 128.6%;
  font-weight: bold;
  margin-bottom: 10px;
}

@media only screen and (max-width: 768px) {
  #sidebar #side_ranking h4 {
    font-size: 138.5%;
  }
}
#sidebar #side_ranking .tab {
  border-bottom: 1px #dcdcdc solid;
}
#sidebar #side_ranking .tab ul {
  bottom: -1px;
  overflow: hidden;
  position: relative;
  padding: 0 7px;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_ranking .tab ul {
    padding: 0 6px;
  }
}
#sidebar #side_ranking .tab ul li {
  cursor: pointer;
  float: left;
  text-align: center;
  width: 33.33333%;
  padding: 0 2px;
}
#sidebar #side_ranking .tab ul li span {
  background-color: #f3f4f5;
  border: 1px #dcdcdc solid;
  color: #1d2f5d;
  display: block;
  font-size: 128.6%;
  font-weight: bold;
  padding: 6px 0 2px;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_ranking .tab ul li span {
    font-size: 123.1%;
    padding: 8px 0 4px;
  }
}
#sidebar #side_ranking .tab ul li.select span {
  background-color: white;
  border-bottom: 1px white solid;
}
#sidebar #side_ranking ol.tab_cont {
  margin: 16px 5px 0;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_ranking ol.tab_cont {
    margin: 16px 0 0;
  }
}
#sidebar #side_ranking ol.tab_cont li {
  display: table;
  line-height: 1.28;
  width: 100%;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_ranking ol.tab_cont li {
    line-height: 1.38;
  }
}
#sidebar #side_ranking ol.tab_cont li .num {
  display: table-cell;
  font-size: 171.4%;
  text-align: center;
  width: 39px;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_ranking ol.tab_cont li .num {
    font-size: 138.5%;
    width: 30px;
  }
}
#sidebar #side_ranking ol.tab_cont li a {
  display: table-cell;
  padding-left: 7px;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_ranking ol.tab_cont li a {
    padding-left: 13px;
  }
}
#sidebar #side_ranking ol.tab_cont li a:hover {
  text-decoration: underline;
}
#sidebar #side_ranking ol.tab_cont li + li {
  margin-top: 10px;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_ranking ol.tab_cont li + li {
    margin-top: 3px;
  }
}
#sidebar #side_ranking ol.tab_cont.hide {
  display: none;
}


@media only screen and (max-width: 768px) {
  #sidebar #sns_sp {
    display: inline-block;
    width: 100%;
    padding: 17px 0 0;
  }
  #sidebar #sns_sp p {
    float: left;
    position: relative;
    text-align: right;
    width: 50%;
    right: 20px;
    color: #1d2f5d;
    font-weight: bold;
  }
  #sidebar #sns_sp ul.sns_list {
    float: left;
    display: block;
    position: relative;
    top: 5px;
    text-align: left;
    width: 50%;
    border-left: 1px solid #ccc;
    padding-left: 20px;
  }
  #sidebar #sns_sp ul.sns_list li {
    display: inline-block;
    height: 30px;
    width: 30px;
    margin-right: 0;
  }
  #sidebar #sns_sp ul.sns_list li a {
    display: block;
    height: 30px;
    width: 30px;
    padding: 0;
  }
  #sidebar #sns_sp  ul.sns_list li a img {
    width: 100%;
  }
}


#sidebar #paper_cover {
  background-color: #f3f4f5;
  border-radius: 8px;
  padding: 30px 20px 36px 23px;
}
@media only screen and (max-width: 768px) {
  #sidebar #paper_cover {
    border-radius: 4px;
    padding: 40px 15px 19px 20px;
  }
}
#sidebar #paper_cover a {
  display: block;
  position: relative;
}
#sidebar #paper_cover a span {
  display: block;
  font-size: 95%;
}
#sidebar #paper_cover a span.text {
  width: 140px;
}
@media only screen and (max-width: 768px) {
  #sidebar #paper_cover a span.text {
    width: 125px;
  }
}
#sidebar #paper_cover a span.text .logo {
  width: 115px;
  margin-bottom: 14px;
}
@media only screen and (max-width: 768px) {
  #sidebar #paper_cover a span.text .logo {
    width: 95px;
    margin-bottom: 9px;
  }
}
#sidebar #paper_cover a span.text .logo img {
  width: 100%;
}
#sidebar #paper_cover a span.text .title {
  line-height: 1.42;
}
@media only screen and (max-width: 768px) {
  #sidebar #paper_cover a span.text .title {
    line-height: 1.38;
  }
}
#sidebar #paper_cover a span.paper {
  bottom: -36px;
  position: absolute;
  right: 0;
  width: 113px;
}
@media only screen and (max-width: 768px) {
  #sidebar #paper_cover a span.paper {
    bottom: -19px;
    width: 100px;
  }
}
#sidebar #paper_cover a span.paper img {
  width: 100%;
}
#sidebar #mailmag {
  margin-top: 10px;
}
#sidebar #mailmag a {
  display:block;
}
@media only screen and (max-width: 768px) {
  #sidebar #mailmag img {
    width: 100%;
  }
}

#sidebar .info_list#jinji h4 {
  /*padding: 12px 10px 11px;*/
  margin: 0;
  border-bottom: none;
}
@media only screen and (max-width: 768px) {
  #sidebar #jinji img {
    width: 100%;
  }
}

#sidebar #side_articles_list {
  margin-top: 5px;
}

#sidebar #side_articles_list h4 {
  background-color: #1d2f5d;
  color: white;
  font-weight: bold;
  padding: 4px 10px 3px;
  margin-bottom: 15px;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_articles_list h4 {
    font-size: 115.4%;
    padding: 5px 10px 1px;
    margin-bottom: 11px;
  }
}
@media only screen and (min-width: 769px) {
  #sidebar #side_articles_list .articles_list_area {
    display: block !important;
    margin-bottom: 20px;
  }
  #sidebar #side_articles_list .articles_list_area:last-child {
    margin-bottom: 0;
  }
}
#sidebar #side_articles_list .articles_list_area dl dt {
  border-bottom: 1px #dcdcdc solid;
  margin-bottom: 15px;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_articles_list .articles_list_area {
    margin-bottom: 20px;
  }
  #sidebar #side_articles_list .articles_list_area:last-child {
    margin-bottom: 0;
  }
  #sidebar #side_articles_list .articles_list_area dl dt {
    margin-bottom: 7px;
  }
}
#sidebar #side_articles_list .articles_list_area dl dt a,
#sidebar #side_articles_list .articles_list_area dl dt span {
  color: #1d2f5d;
  font-size: 128.6%;
  font-weight: bold;
}
#sidebar #side_articles_list .articles_list_area dl dd ul {
  padding: 0 5px;
}
#sidebar #side_articles_list .articles_list_area dl dd ul li {
  line-height: 1.28;
  text-indent: -6px;
  padding-left: 6px;
}
#sidebar #side_articles_list .articles_list_area dl dd ul li:before {
  color: #1d2f5d;
  content: '\f105';
  display: inline-block;
  font-family: FontAwesome, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 130%;
  line-height: 1;
  margin-left: 6px;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_articles_list .articles_list_area dl dd ul li:before {
    font-size: 120%;
  }
}
#sidebar #side_articles_list .articles_list_area dl dd ul li a {
  left: 10px;
  position: relative;
  line-height: 1.4;
}
#sidebar #side_articles_list .articles_list_area dl dd ul li a:hover {
  opacity: 1;
  text-decoration: underline;
}
#sidebar #side_articles_list .articles_list_area dl dd ul li + li {
  margin-top: 8px;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_articles_list .articles_list_area dl dd ul li + li {
    margin-top: 6px;
  }
}
#sidebar #side_articles_list .articles_list_area dl + dl {
  margin-top: 20px;
}
#sidebar #side_articles_list .more_view {
  background-color: #f5f5f5;
  border: 1px #dcdcdc solid;
  border-radius: 4px;
  cursor: pointer;
  text-align: center;
  padding: 15px 0 11px;
  margin-top: 27px;
}
@media only screen and (min-width: 769px) {
  #sidebar #side_articles_list .more_view {
    display: none !important;
  }
}
#sidebar #side_articles_list .more_view p {
  font-size: 115.4%;
  font-weight: bold;
}
#sidebar #side_articles_list .more_view + .articles_list_area {
  margin-top: 20px;
}
@media only screen and (max-width: 768px) {
  #sidebar .post_banner {
    margin-top: 30px;
  }
  #sidebar .post_banner ul li {
    width: 100%;
    display: block;
  }
  #sidebar .post_banner ul li:first-child {
    margin-bottom: 5px;
  }
  #sidebar .post_banner ul li a {
    display: block;
  }
}


#sidebar #side_articles_list.flash {
  margin-top: 0;
  margin-bottom: 20px;
}
#sidebar #side_articles_list.flash .articles_list_area dl dd ul {
  overflow-y: scroll;
  overflow-x: hidden;
  min-height: 250px;
  max-height: 250px;
}
#sidebar #side_articles_list.flash .articles_list_area dl dd ul li {
  text-indent: 0;
  padding-left: 0;
  border-bottom: 1px solid #dcdcdc;
}
#sidebar #side_articles_list.flash .articles_list_area dl dd ul li:before {
  content: '';
  margin-left: 0;
}
#sidebar #side_articles_list.flash .articles_list_area dl dd ul li a {
  left: 0;
}
@media only screen and (max-width: 768px) {
  #sidebar #side_articles_list.flash .articles_list_area dl dd ul {
    max-height: 400px;
    min-height: 100px;
    -webkit-overflow-scrolling: touch;
  }
  #sidebar #side_articles_list.flash .articles_list_area dl dd ul li {
    font-size: 16px;
  }
}


.gdpr {
  position: fixed;
  bottom: 93px;
  right: 2px;
  width: 22%;
  background-color: rgba(0, 0, 0, 0.8);
  border-radius: 8px;
  padding: 10px 0 10px 15px;
  color: #fff;
  font-size: 90%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.gdpr p.text {
  border-right: 1px dotted #fff;
  padding-right: 10px;
}
.gdpr p.text a {
  color: #fff;
  text-decoration: underline;
}
.gdpr p.btn {
  margin-top: 0;
  position: relative;
  right: -5px;
}
.gdpr p.btn a {
  display: block;
}
.gdpr p.btn img {
  width: 75%;
}

@media only screen and (max-width: 768px) {
  .gdpr {
    width: 55%;
    bottom: 155px;
  }
  .gdpr p.btn {
    right: 0;
  }
  .gdpr p.btn img {
    width: 100%;
  }
}


/*                footer
======================================================= */

#footer #ft_nv {
  padding: 25px 0;
}
#footer #ft_nv ul {
  overflow: hidden;
  display: block;
}
#footer #ft_nv ul li {
  float: left;
  margin-right: 15px;
}
#footer #ft_nv ul li a:hover {
  text-decoration: underline;
}
@media only screen and (max-width: 768px) {
  #footer #ft_nv {
    padding: 0;
    background-color: #e9eaee;
  }
  #footer #ft_nv ul {
    display: block;
  }
  #footer #ft_nv ul li {
    float: none;
    margin-right: 0;
    border-bottom: 1px #d2d2d2 solid;
  }
  #footer #ft_nv ul li a {
    display: block;
    font-size: 115.4%;
    font-weight: bold;
    padding: 16px 10px 12px;
  }
}

#footer #ft_btm {
  background-color: #1d2f5d;
  padding: 13px 0;
}

@media only screen and (min-width: 769px) and (max-width: 979px) {
  #footer #ft_btm {
    width: 980px;
  }
}

@media only screen and (max-width: 768px) {
  #footer #ft_btm {
    padding: 15px 0 70px;
  }
}
#footer #ft_btm .main_width {
  overflow: hidden;
}
#footer #ft_btm .main_width .notice {
  color: white;
  float: right;
  font-size: 78.6%;
  padding-top: 10px;
}
@media only screen and (max-width: 768px) {
  #footer #ft_btm .main_width .notice {
    float: none;
    font-size: 76.9%;
    line-height: 1.6;
    padding-top: 0;
    margin-bottom: 8px;
  }
}
#footer #ft_btm .main_width #copyright {
  color: white;
  float: left;
  font-size: 85.7%;
  line-height: 1.5;
  margin-top: 0;
}
@media only screen and (max-width: 768px) {
  #footer #ft_btm .main_width #copyright {
    float: none;
    font-size: 76.9%;
    line-height: 1.4;
  }
}




/*                sp_gnavi
======================================================= */
#sp_gnavi {
  background-color: rgba(17, 27, 54, 0.9);
  bottom: 0;
  left: 0;
  position: fixed;
  width: 100%;
  z-index: 1;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  /*
  &::-webkit-scrollbar {
    height: 5px;
  }
  &::-webkit-scrollbar-track {
    border-radius: 5px;
    background: #eee;
  }
  &::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #666;
  }
  */
}
@media only screen and (min-width: 769px) {
  #sp_gnavi {
    display: none;
  }
}
#sp_gnavi ul {
  min-width: 960px;
  overflow: hidden;
  position: relative;
  z-index: 100000;
  padding: 10px;
  margin-left: -5px;
}
#sp_gnavi ul li {
  border-radius: 4px;
  float: left;
  padding-left: 5px;
}
#sp_gnavi ul li a,
#sp_gnavi ul li span {
  color: white;
  cursor: pointer;
  display: block;
  font-weight: bold;
  padding: 6px 10px 5px;
}
#sp_gnavi ul li.on a,
#sp_gnavi ul li.on span {
  background-color: white;
  border-radius: 4px;
  color: #1d2f5d;
}
/*****
#sp_gnavi ul li.movie a {
  background-color: #f05500;
  color:#fff;
}
#sp_gnavi ul li.on.movie a {
  background-color: #fff;
  color:#f05500;
}
*****/
.sp_gnavi_underlayer {
  background-color: rgba(29, 47, 93, 0.9);
  bottom: 50px;
  display: none;
  left: 0;
  position: fixed;
  width: 100%;
  z-index: 100000;
}
@media only screen and (min-width: 769px) {
  .sp_gnavi_underlayer {
    display: none !important;
  }
}
.sp_gnavi_underlayer ul li {
  border-bottom: 1px #5a6273 solid;
  position: relative;
  text-align: center;
  z-index: 100000;
}
.sp_gnavi_underlayer ul li > a {
  color: white;
  display: block;
  font-size: 115.4%;
  font-weight: bold;
  padding: 12px 0 11px;
}
.sp_gnavi_underlayer ul li.close {
  padding: 12px 15px;
}
.sp_gnavi_underlayer ul li.close > span {
  background-color: #646b78;
  border-radius: 4px;
  color: white;
  cursor: pointer;
  display: block;
  font-size: 115.4%;
  font-weight: bold;
  padding: 10px 0 8px;
}

/*                コンポーネント
======================================================= */
.pr_list {
  margin: 20px 0 8px;
}
@media only screen and (max-width: 768px) {
  .pr_list {
    margin: 15px 0 13px;
  }
}
.pr_list ul li {
  line-height: 1.3;
}
.pr_list ul li a {
  background-color: #f0f1f3;
  border-radius: 4px;
  display: block;
  padding: 8px;
}
@media only screen and (max-width: 768px) {
  .pr_list ul li a {
    padding: 7px 4px;
  }
}
.pr_list ul li a .tag {
  background-color: #b4b4b4;
  border-radius: 4px;
  clear: left;
  color: white;
  float: left;
  padding: 2px 11px 1px;
}
@media only screen and (max-width: 768px) {
  .pr_list ul li a .tag {
    font-size: 64.3%;
    padding: 2px 7px 1px;
  }
}
.pr_list ul li a .detail {
  display: block;
  padding: 3px 0 0 52px;
}
@media only screen and (max-width: 768px) {
  .pr_list ul li a .detail {
    padding: 1px 0 0 32px;
  }
}
.pr_list ul li + li {
  margin-top: 5px;
}
@media only screen and (max-width: 768px) {
  .pr_list ul li + li {
    margin-top: 8px;
  }
}


.job_list {
  margin: 20px 0 8px;
}
@media only screen and (max-width: 768px) {
  job_list {
    margin: 15px 0 13px;
  }
}
.job_list ul li {
  line-height: 1.3;
}
.job_list ul li a {
  background-color: #e7f4fc;
  border-radius: 4px;
  display: block;
  padding: 8px;
}
@media only screen and (max-width: 768px) {
  .job_list ul li a {
    padding: 7px 4px;
  }
}
.job_list ul li a .tag {
  background-color: #56c5eb;
  border-radius: 4px;
  clear: left;
  color: white;
  float: left;
  padding: 2px 11px 1px;
}
@media only screen and (max-width: 768px) {
  .job_list ul li a .tag {
    font-size: 64.3%;
    padding: 2px 7px 1px;
  }
}
.job_list ul li a .detail {
  display: block;
  padding: 3px 0 0 62px;
}
@media only screen and (max-width: 768px) {
  .job_list ul li a .detail {
    padding: 1px 0 0 42px;
  }
}
.job_list ul li + li {
  margin-top: 5px;
}
@media only screen and (max-width: 768px) {
  .job_list ul li + li {
    margin-top: 8px;
  }
}


.lower #main_area #main_content .back_list_link {
  text-align: center;
  margin: 0 auto;
  margin-top: 60px;
}
.lower #main_area #main_content .back_list_link.movie {
  margin-top: 30px;
  margin-bottom: 60px;
}
@media only screen and (max-width: 768px) {
  .lower #main_area #main_content .back_list_link {
    width: 100%;
    margin-top: 30px;
  }
}
.lower #main_area #main_content .back_list_link a {
  border: 1px #dcdcdc solid;
  border-radius: 3px;
  color: #1d2f5d;
  display: inline-block;
  font-weight: bold;
  position: relative;
  padding: 8px 15px 7px 30px;
}
@media only screen and (max-width: 768px) {
  .lower #main_area #main_content .back_list_link a {
    font-size: 115.4%;
    padding: 15px 15px 11px 30px;
  }
}
.lower #main_area #main_content .back_list_link a:before {
  content: '\f104';
  display: inline-block;
  font-family: FontAwesome, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 130%;
  font-weight: normal;
  left: 10px;
  position: absolute;
  top: 50%;
  margin-top: -16px;
}
@media only screen and (max-width: 768px) {
  .lower #main_area #main_content .back_list_link a:before {
    font-size: 110%;
    left: 16px;
    margin-top: -12px;
  }
}

.lower #main_area #main_content .more_list_link {
  text-align: center;
  margin: 0 auto;
  margin-top: 60px;
  margin-bottom: 40px;
}
@media only screen and (max-width: 768px) {
  .lower #main_area #main_content .more_list_link {
    width: 100%;
    margin-top: 20px;
    margin-bottom: 10px;
  }
}
.lower #main_area #main_content .more_list_link a {
  border: 1px #dcdcdc solid;
  border-radius: 3px;
  color: #1d2f5d;
  display: inline-block;
  font-weight: bold;
  position: relative;
  padding: 8px 35px 7px;
}
@media only screen and (max-width: 768px) {
  .lower #main_area #main_content .more_list_link a {
    font-size: 115.4%;
    padding: 15px 60px 11px;
  }
}


.lower #main_area #main_content .article_detail h2 {
  font-size: 128.6%;
  font-weight: bold;
  line-height: 1.5;
  margin: 12px 0;
}

.lower #main_area #main_content .separate {
  background: url(/media/images/common/line_dotted.gif) repeat-x left bottom;
  background-size: 4px 1px;
  padding-bottom: 20px;
}

/*                モーダル
======================================================= */
.modal_open {
  overflow: hidden;
  height: 100%;
}

.modal {
  background-color: rgba(0, 0, 0, 0.6);
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
  overflow-y: auto;
  padding: 70px 50px;
}

@media only screen and (max-width: 800px) {
  .modal {
    padding: 50px 0 0px;
  }
}
.modal .modal_wrap {
  display: block;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  border-radius: 4px;
  max-width: 934px;
  position: relative;
  padding: 40px;
}
.modal .modal_wrap .modal_cont {
  text-align: center;
}

.modal .modal_wrap .modal_cont .text_area {
  width: 700px;
  margin: 0 auto;
}
.modal .modal_wrap .modal_cont .text_area h3 {
  font-size: 150%;
  font-weight: bold;
  border-bottom: 2px solid #eee;
  padding-bottom: 10px;
  margin-bottom: 20px
}
.modal .modal_wrap .modal_cont .text_area ul {
  text-align: left;
  padding-left: 25px;
}
.modal .modal_wrap .modal_cont .text_area ul li {
  list-style: disc;
  margin-bottom: 25px;
}
.modal .modal_wrap .modal_cont .text_area ul li:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 800px) {
  .modal .modal_wrap {
    max-width: 100%;
    padding: 50px 20px;
  }
  .modal .modal_wrap .modal_cont .text_area {
    width: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .modal .modal_wrap {
    padding: 50px 15px 30px;
  }
}

.modal .modal_wrap .modal_content .modal_area .modal_close {
  cursor: pointer;
  position: absolute;
  height: 24px;
  width: 24px;
  right: -48px;
  top: -48px;
}

.modal .modal_wrap .modal_content .modal_area .modal_close img {
  display: block;
  margin-left: auto;
}

@media only screen and (max-width: 1024px) {
  .modal .modal_wrap .modal_content .modal_area .modal_close {
    right: 0px;
    top: -48px;
  }
}

@media only screen and (max-width: 800px) {
  .modal .modal_wrap .modal_content .modal_area .modal_close {
    top: 15px;
    right: 20px;
  }
  .modal .modal_wrap .modal_content .modal_area .modal_close img {
    -webkit-filter: invert(100%);
    filter: invert(100%);
  }
}

@media only screen and (max-width: 800px) {
  .modal {
    padding: 0;
  }
}
@media only screen and (max-width: 800px) {
  .modal .modal_wrap {
    background-color: #fff;
    border-radius: 0;
    position: fixed;
    width: 100%;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    max-height: 100%;
    overflow-y: auto;
  }
}

#bread ol {
  display: flex;
  overflow-x: auto;
  white-space: nowrap;
  padding: 12px 0;
}
#bread ol li {
  display: flex;
  font-size: 75%;
}
#bread ol li:before {
  content: " > ";
  margin: 0 1em;
}
#bread ol li:first-child:before {
  content: "";
  margin: 0;
}
.lower.list #bread ol li,
.lower.detail #bread ol li {
  font-size: 100%;
}

.slick.dot_on {
  padding-bottom: 40px;
}
.slick.dot_on.full {
  padding-bottom: 0;
}
.slick.full .slick-dots {
  display: none !important;
}
.slick .slick-list {
  overflow: visible;
  margin: 0 -16px;
}
.slick .slick-list .item {
  padding: 0 16px;
  width: 649px;
}
.slick .slick-list .item a {
  display: block;
}
.slick .movie_slider .slick-list {
  margin: 0 -8px;
}
.slick .movie_slider .slick-list .item {
  padding: 0 4px;
}
.slick .slick-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.slick .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  bottom: 5px;
  z-index: 100;
  width: 100%;
}
.slick .slick-dots li {
  line-height: 12px;
}
.slick .slick-dots li:only-child{
  display: none;
}
.slick .slick-dots li + li {
  margin-left: 10px;
}
.slick .slick-dots li.slick-active button {
  background: #1d2f5d;
}
.slick .slick-dots li button {
  background: #d3d3d3;
  border-radius: 10px;
  width: 12px;
  height: 12px;
  text-indent: -9999px;
}
.slick .slick-dots li button:before {
  display: none;
}
.slick .slick-dotted.slick-slider {
  margin-bottom: 0;
  padding-bottom: 40px;
}
