@charset "UTF-8";
/*
  css設定 @charsetが消されるsass仕様へのハック用コメントです。削除しないでください。新規作成時も必須！
 */
/*================================================================
 site_default
================================================================*/
/* -------------------------------------------
 * initialize
 */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MEI1MzY2NTA1RTY2MTFFNUExRTlDMDdERTNCNDFENkIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MEI1MzY2NTE1RTY2MTFFNUExRTlDMDdERTNCNDFENkIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowQjUzNjY0RTVFNjYxMUU1QTFFOUMwN0RFM0I0MUQ2QiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowQjUzNjY0RjVFNjYxMUU1QTFFOUMwN0RFM0I0MUQ2QiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pj3ggHcAAAAQSURBVHjaYvj//z8DQIABAAj8Av7bok0WAAAAAElFTkSuQmCC");
}

/* For Android */
body * {
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
}

article,
aside,
dialog,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block;
}

sup {
  font-size: 10px;
  vertical-align: super;
}

div {
  line-height: 0;
}

ul li {
  list-style: none;
}

input,
select {
  vertical-align: middle;
}

.hide {
  display: none;
}

body {
  font-family: YuGothic, Yu Gothic, “游ゴシック”, sans-serif;
}

body.en {
  font-family: sans-serif;
  letter-spacing: 0.1em;
}

img {
  -ms-interpolation-mode: bicubic;
}

a {
  text-decoration: none;
}

a:hover {
  opacity: 0.7;
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

iframe {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
}

.mincho {
  font-family: YuMincho, Yu Mincho, “游明朝”, serif;
}

.en .mincho {
  font-family: serif;
}

.bold {
  font-weight: bold;
}

.wrap {
  margin: 0 auto;
  width: 1000px;
}

.pc {
  display: inline-block !important;
}

.sp {
  display: none !important;
}

@media (max-width: 1000px) {
  img {
    max-width: 100%;
    height: auto;
  }

  .wrap {
    width: 94%;
  }
}
@media (max-width: 768px) {
  sup {
    font-size: 8px;
  }

  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }

  .wrap {
    width: 94%;
  }
}
/*================================================================
 common_style
================================================================*/
.allWrap {
  position: relative;
  padding-top: 6px;
  overflow: hidden;
}
.allWrap:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 6px;
  background: #2d287f;
  /* Old browsers */
  /* IE9 SVG, needs conditional override of 'filter' to 'none' */
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzJkMjg3ZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMGFmZTUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left, #2d287f 0%, #00afe5 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #2d287f 0%, #00afe5 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #2d287f 0%, #00afe5 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2d287f', endColorstr='#00afe5',GradientType=1 );
  /* IE6-8 */
}

.site-header {
  position: relative;
  padding-top: 30px;
  padding-bottom: 46px;
}

.site-header h1 {
  padding-top: 11px;
}

.site-header .head-links {
  position: absolute;
  top: 30px;
  right: 0;
  display: flex;
  align-items: center;
}

.site-header .head-links li {
  float: left;
  padding-left: 20px;
}

.site-header .head-links li.cond01 {
  padding-top: 9px;
}

.site-header .head-links li img {
  vertical-align: bottom;
}

.site-header .other-links {
  position: absolute;
  top: 105px;
  right: 88px;
  font-size: 13px;
}

.site-header .other-links a {
  color: #000000;
}

.site-header .other-links li {
  float: left;
}

.site-header .other-links li:before {
  content: "　|　";
}

.site-header .other-links li:first-child:before {
  content: "";
}

.site-header .languege {
  position: absolute;
  top: 99px;
  right: 0;
  width: 66px;
  height: 25px;
  background: #8b8b8b;
}

.site-header .languege img {
  vertical-align: middle;
}

.site-header .languege a {
  float: left;
  display: block;
  width: 50%;
  height: 100%;
  text-align: center;
  line-height: 25px;
}

.site-header .languege a.current {
  pointer-events: none;
  background: #ff9700;
}

.site-header .languege a.current:hover {
  pointer-events: none;
}

/* 2024/02/16 追記 */
.site-header.en-style {
  padding-bottom: 21px;
}

.site-header.en-style h1 {
  padding-top: 0;
}

.site-header.en-style .header-content-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.site-header.en-style .head-links.head-links-position {
  position: static;
}

.site-header.en-style .head-links.head-links-position .header-img-link {
  display: block;
  height: 1.5rem;
}

.site-header.en-style .head-links.head-links-position .header-img-link > img {
  height: 100%;
}

.site-header.en-style .header-subcontent-wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 22px;
  padding-top: 21px;
}

.site-header.en-style .other-links {
  position: static;
}

.site-header.en-style .languege {
  position: static;
}
/* 2024/02/16 追記の終わり */


/* -------2024/02/16 追記 */
.pt-0 {
  padding-top: 0 !important;
}
/* -------2024/02/16 追記 */

.global-navi {
  box-sizing: border-box;
  position: relative;
  left: 50%;
  margin-left: -310px;
  padding-left: 5.4375%;
  width: 100%;
  background: url(../img/common/bg-globalnavi.png) no-repeat left;
  height: 56px;
  line-height: 56px;
}
.global-navi li {
  display: inline-block;
  line-height: 56px;
  font-size: 14px;
  color: #fff;
}
.global-navi li a {
  color: #fff;
}
.global-navi li:before {
  content: "　|　";
}
.global-navi li:first-child:before {
  content: "";
}
.global-navi .layer {
  display: none;
}
.global-navi .disable a {
  pointer-events: none;
  opacity: 0.7;
}

.common-headline01 {
  margin-bottom: 28px;
  padding: 27px 0;
  background: url(../img/common/bg-headline01.png);
  border-top: 4px solid #2d287f;
  border-bottom: 1px solid #000000;
  font-size: 32px;
  text-align: center;
  letter-spacing: 0.09em;
}

.page-top {
  margin: 118px auto 32px;
  text-align: center;
}
.page-top a {
  display: inline-block;
  padding-top: 33px;
  background: url(../img/common/arrow01.png) no-repeat top center;
  background-size: 22px;
  color: #000;
  font-size: 14px;
}

.site-footer {
  position: relative;
  padding: 28px 0 22px;
  background: url(../img/common/bg-footer.png);
}
.site-footer .wrap {
  position: relative;
}
.site-footer:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 6px;
  background: #2d287f;
  /* Old browsers */
  /* IE9 SVG, needs conditional override of 'filter' to 'none' */
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzJkMjg3ZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMGFmZTUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left, #2d287f 0%, #00afe5 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #2d287f 0%, #00afe5 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #2d287f 0%, #00afe5 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2d287f', endColorstr='#00afe5',GradientType=1 );
  /* IE6-8 */
}
.site-footer .organizer {
  padding-bottom: 10px;
  font-size: 17px;
  line-height: 1.9;
  font-weight: bold;
}
.site-footer .organizer-address {
  padding-bottom: 30px;
  font-size: 15px;
  line-height: 1.9;
}
.site-footer .copyright {
  font-size: 10px;
}
.site-footer .footer-links {
  position: absolute;
  right: 0;
  bottom: 0px;
}
.site-footer .footer-links li {
  float: left;
  margin-right: 20px;
}
.site-footer .footer-links li.cond01 {
  padding-top: 9px;
}
.site-footer .footer-links li:last-child {
  margin-right: 0;
}

.breadcrumb {
  padding-bottom: 50px;
}
@media screen and (min-width: 769px) {
  .breadcrumb {
    display: block !important;
  }
}
.breadcrumb ul {
  float: right;
}
.breadcrumb li {
  float: left;
  position: relative;
  margin-right: 5px;
  padding-right: 15px;
  font-size: 13px;
}
.breadcrumb li:last-child {
  margin-right: 0;
  padding-right: 0;
}
.breadcrumb li:last-child:after {
  display: none;
}
.breadcrumb li:after {
  content: ">";
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -7px;
}
.breadcrumb li a {
  color: #000;
}

.gradation01 {
  background: #2d287f;
  /* Old browsers */
  /* IE9 SVG, needs conditional override of 'filter' to 'none' */
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzJkMjg3ZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMGFmZTUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(left, #2d287f 0%, #01abe2 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #2d287f 0%, #01abe2 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #2d287f 0%, #01abe2 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2d287f', endColorstr='#01abe2',GradientType=1 );
  /* IE6-8 */
}

.sectionTitle01 {
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 15px;
  text-align: center;
  font-size: 25px;
  font-weight: normal;
  color: #2d287f;
}
.sectionTitle01:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  border-top: 1px dashed #2d287f;
}
.sectionTitle01:after {
  content: "";
  position: absolute;
  bottom: -1px;
  right: 0;
  width: 3px;
  height: 3px;
  background: #ce0c19;
}

.sectionTitle02 {
  position: relative;
  margin-bottom: 70px;
  padding-left: 25px;
  font-size: 25px;
  font-weight: normal;
}
.sectionTitle02:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -20px;
  width: 10px;
  height: 40px;
  background: #2d287f;
  /* Old browsers */
  /* IE9 SVG, needs conditional override of 'filter' to 'none' */
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzJkMjg3ZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMGFmZTUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(bottom, #2d287f 0%, #01abe2 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(bottom, #2d287f 0%, #01abe2 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to top, #2d287f 0%, #01abe2 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2d287f', endColorstr='#01abe2',GradientType=1 );
  /* IE6-8 */
}

.annotation {
  font-size: 13px;
}

@media screen and (min-width: 1000px) {
  .global-navi li {
    font-size: 15px;
  }
}
@media screen and (max-width: 1000px) {
  .global-navi li {
    font-size: 15px;
  }

  .site-header h1 {
    padding-top: 11px;
    width: 47%;
  }
}
/*================================================================
 top_style
================================================================*/
#top .mainvisual {
  position: relative;
  padding-bottom: 179px;
}
#top .mainvisual .visual {
  position: relative;
  z-index: 2;
  position: relative;
}
#top .mainvisual .catch {
  position: absolute;
  top: 40%;
  left: 5%;
  width: 90%;
}
#top .mainvisual .text {
  position: relative;
  z-index: 2;
  padding: 30px 0 0 29px;
  color: #fff;
  font-size: 23px;
  line-height: 2.3;
}
#top .mainvisual .bg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  min-width: 1780px;
  height: auto;
}
#top .container {
  position: relative;
  margin-top: -140px;
  z-index: 2;
}
#top .newsWrap {
  float: left;
  margin-bottom: 52px;
  width: 70%;
  /*
.scroll-bar {
  position: absolute;
  top: 0;
  right: 0;
  width: 15px;
  height: 100%;
  background: #e4e4e4;
  .controller {
    position: absolute;
    top: 0;
    right: 0;
    width: 15px;
    height: 42px;
    background: #ff9700;
  }
}*/
}
#top .newsWrap img {
  max-width: 100%;
  height: auto;
}
#top .newsWrap .news-area {
  position: relative;
  box-sizing: border-box;
  padding: 5px 0px 5px 10px;
  height: 360px;
  overflow: hidden;
}
#top .newsWrap .news-lists li {
  box-sizing: border-box;
  position: relative;
  margin-bottom: 15px;
  padding-left: 75px;
  width: 100%;
}
#top .newsWrap .news-lists li.new:before {
  content: "NEW";
  position: absolute;
  top: 0;
  left: 0;
  width: 60px;
  height: 24px;
  line-height: 26px;
  text-align: center;
  font-size: 13px;
  color: #fff;
  background: #ff9700;
}
#top .newsWrap .news-lists li .noLinkWrap {
  display: inline;
}
#top .newsWrap .news-lists li a {
  color: #000;
}
#top .newsWrap .news-lists li span {
  display: inline-block;
  font-size: 15px;
  line-height: 1.6;
  vertical-align: top;
  word-wrap: break-word;
}
#top .newsWrap .news-lists li span.time {
  width: 100px;
}
#top .newsWrap .news-lists li span.descriptions {
  max-width: 485px;
}
#top .newsWrap .news-lists li .underline {
  text-decoration: underline;
}
#top .content-links {
  float: right;
  margin-bottom: 52px;
  width: 27%;
}
#top .content-links img {
  max-width: 100%;
  height: auto;
}
#top .content-links li {
  position: relative;
  margin-bottom: 20px;
}
#top .content-links li a {
  color: #fff;
}
#top .content-links li span {
  display: block;
  box-sizing: border-box;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding-bottom: 8px;
  font-size: 15px;
  line-height: 1.3;
  text-align: center;
}
#top .content-links .notice {
  padding: 16px 19px;
  border: 4px solid #213491;
  font-size: 13px;
  line-height: 1.7;
  letter-spacing: 0.05em;
  color: #213491;
}
#top .content-links .notice a {
  color: #213491;
}
#top .banners {
  padding-left: 34px;
}
#top .banners.ja {
  padding-top: 80px;
}
#top .banners.ja li {
  width: 30.1%;
}
#top .banners img {
  width: 100%;
  height: auto;
}
#top .banners li {
  float: left;
  margin-bottom: 20px;
  margin-right: 2%;
  width: 20%;
}
#top .banners li:nth-child(4) {
  clear: both;
}
@media screen and (max-width: 1600px) {
  #top .mainvisual {
    padding-bottom: 119px;
  }
  #top .container {
    margin-top: -90px;
  }
}
@media screen and (max-width: 1300px) {
  #top .mainvisual {
    padding-bottom: 99px;
  }
  #top .container {
    margin-top: -70px;
  }
}
@media screen and (max-width: 1000px) {
  #top .mainvisual {
    padding-bottom: 79px;
  }
  #top .container {
    margin-top: -50px;
  }
  #top .newsWrap .news-lists li {
    padding-left: 0;
  }
  #top .newsWrap .news-lists li.new span.time {
    padding-left: 75px;
  }
  #top .newsWrap .news-lists li span {
    display: block;
    width: auto !important;
    max-width: none !important;
  }
}

.en #top .newsWrap .news-lists li span.time {
  letter-spacing: 0;
}

/*================================================================
 lower_style
================================================================*/
.lower .mainvisual {
  margin-bottom: 20px;
  height: 250px;
  background: url(../img/about/mv.jpg) center center no-repeat;
  background-size: cover;
}
.lower .mainvisual h2 {
  text-align: center;
  line-height: 250px;
  font-size: 32px;
  font-weight: normal;
}
.lower .breadcrumb {
  padding-top: 20px;
  letter-spacing: 0;
}
.lower section.detail .alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}
.lower section.detail .alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}
.lower section.detail .aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*================================================================
 about_style
================================================================*/
#about .pageTabs {
  padding-bottom: 70px;
}
#about .pageTabs ul {
  display: inline-block;
  width: 380px;
  background: url(../img/about/tabs_bg01.png) no-repeat;
}
#about .pageTabs li {
  position: relative;
  float: left;
  width: 170px;
  text-align: center;
  font-size: 20px;
}
#about .pageTabs li.current {
  font-size: 25px;
}
#about .pageTabs li.current a {
  pointer-events: none;
}
#about .pageTabs li a {
  display: block;
  position: relative;
  padding: 13px 0 12px;
  color: #fff;
}
#about .pageTabs li:last-child {
  top: 10px;
  width: 210px;
}
#about .pageTabs li:last-child a {
  padding: 10px 0;
}
#about .sections {
  padding-bottom: 90px;
}
#about .sections:last-of-type {
  padding-bottom: 0;
}
#about .sections p {
  margin: 0 auto;
  max-width: 900px;
}
#about .sections .lead {
  text-indent: 1em;
  line-height: 2;
  font-size: 15px;
}
#about .sections .annotation {
  padding-top: 15px;
  line-height: 2.2;
}
#about .sections a {
  color: #2d287f;
  text-decoration: underline;
}
#about .sections a:hover {
  opacity: 1;
  text-decoration: none;
}
#about .sections dl {
  margin: 0 auto;
  max-width: 800px;
}
#about .sections dt {
  display: inline-block;
  margin-bottom: 25px;
  padding: 5px 8px;
  font-size: 20px;
  color: #fff;
  background: #2d287f;
}
#about .sections dd {
  line-height: 1.3;
  font-size: 15px;
}
#about .section03 .annotation {
  padding-bottom: 40px;
}
#about .section03 dd:first-of-type {
  padding-bottom: 12px;
}
#about .section03 dd:nth-of-type(2) {
  padding-bottom: 25px;
}
#about .section03 dd:last-of-type {
  padding: 0;
  line-height: 1;
}
#about.activity .pageTabs ul {
  background-image: url(../img/about/tabs_bg02.png);
}
#about.activity .pageTabs li a {
  display: block;
  position: relative;
  padding: 13px 0 12px;
  color: #fff;
}
#about.activity .pageTabs li:first-child {
  top: 10px;
}
#about.activity .pageTabs li:first-child a {
  padding: 9px 45px 7px 0;
}
#about.activity .pageTabs li:last-child {
  top: 0;
  width: 210px;
}
#about.activity .pageTabs li:last-child a {
  padding: 13px 45px 12px 0;
}
#about.activity .pageTabs li.current a {
  pointer-events: none;
}
#about.activity .pageTabs li:not(.current) a {
  pointer-events: auto;
}
#about.activity .sections .lead:first-of-type {
  padding-bottom: 40px;
}
#about.activity .sections .lead:last-of-type {
  padding-top: 40px;
}
#about.activity .sections dl {
  padding-bottom: 40px;
}
#about.activity .sections dl:last-of-type {
  padding-bottom: 0;
}
#about.activity .sections dd {
  line-height: 2;
  font-size: 15px;
  text-indent: 1em;
}
#about.activity .sections dd:nth-of-type(2) {
  padding-top: 15px;
}

.en #about .contents {
  letter-spacing: 0;
}
.en #about .section03 dd:last-of-type {
  font-size: 13px;
}
.en #about .pageTabs ul {
  width: 500px;
  background: url(../img/about/tabs_bg01-en.png) no-repeat;
}
.en #about .pageTabs li {
  position: relative;
  float: left;
  padding-left: 10px;
  width: 260px;
  text-align: center;
}
.en #about .pageTabs li:last-child {
  top: 10px;
  width: 200px;
}
.en #about.activity .pageTabs ul {
  background: url(../img/about/tabs_bg02-en.png) no-repeat;
}
.en #about.activity .pageTabs li {
  padding: 0;
}
.en #about.activity .pageTabs li:last-child {
  top: 0;
}
.en #about.activity .pageTabs li.current a {
  pointer-events: none;
}
.en #about.activity .pageTabs li:not(.current) a {
  pointer-events: auto;
}

/*================================================================
 staff_style
================================================================*/
#staff .mainvisual {
  background-image: url(../img/staff/mv.jpg);
}
#staff .pageTabs ul {
  display: inline-block;
  width: 506px;
  background: url(../img/staff/tabs_bg01.png) no-repeat;
}
#staff .pageTabs li {
  position: relative;
  float: left;
  width: 160px;
  text-align: center;
  font-size: 20px;
}
#staff .pageTabs li.current {
  font-size: 25px;
}
#staff .pageTabs li.current a {
  pointer-events: none;
}
#staff .pageTabs li a {
  display: block;
  position: relative;
  padding: 13px 40px 12px 0;
  color: #fff;
}
#staff .pageTabs li:last-child {
  top: 10px;
  width: 346px;
}
#staff .pageTabs li:last-child a {
  padding: 10px 0;
}
#staff .main {
  padding: 75px 0 60px;
  background: url(../img/staff/bg_content.jpg) center top no-repeat;
  background-size: cover;
}
#staff .main .lead {
  margin: 0 auto;
  padding-bottom: 15px;
  max-width: 800px;
  line-height: 2;
  font-size: 15px;
  color: #fff;
}
#staff .main .people {
  text-align: center;
}
#staff .main .people .image {
  padding-bottom: 12px;
}
#staff .main .people p {
  line-height: 1.9;
  font-size: 13px;
  color: #fff;
}
#staff .main .people p .name {
  display: block;
  padding-top: 5px;
  font-size: 17px;
}
#staff.organization .pageTabs {
  padding-bottom: 70px;
}
#staff.organization .pageTabs ul {
  width: 538px;
  background-image: url(../img/staff/tabs_bg02.png);
}
#staff.organization .pageTabs li {
  width: 175px;
}
#staff.organization .pageTabs li a {
  display: block;
  position: relative;
  padding: 13px 0 12px;
  color: #fff;
}
#staff.organization .pageTabs li:first-child {
  top: 9px;
}
#staff.organization .pageTabs li:first-child a {
  padding: 11px 50px 10px 0;
}
#staff.organization .pageTabs li:last-child {
  top: 0;
  width: 363px;
}
#staff.organization .pageTabs li:last-child a {
  padding: 13px 70px 12px 0;
}
#staff.organization .main {
  padding-top: 0;
  background: none;
}
#staff.organization .main table {
  table-layout: fixed;
  width: 100%;
  border-collapse: collapse;
}
#staff.organization .main table tr:first-child {
  background: #2d287f;
}
#staff.organization .main table tr:nth-child(2n-1):not(:first-child) {
  background: #f4f4f4;
}
#staff.organization .main table tr:last-child td {
  border-bottom-style: solid;
}
#staff.organization .main table tr.border th {
  padding: 4px;
  background: #fff;
  border-bottom: none;
}
#staff.organization .main table tr.head th {
  background: #a5a5a5;
  text-align: left;
}
#staff.organization .main table th,
#staff.organization .main table td {
  box-sizing: border-box;
  padding: 12px 20px;
  font-size: 15px;
}
#staff.organization .main table th {
  width: 27%;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #000;
  text-align: center;
  font-weight: normal;
  color: #fff;
}
#staff.organization .main table th:nth-of-type(2) {
  width: 30%;
}
#staff.organization .main table th:last-of-type {
  width: 43%;
  border-right: none;
}
#staff.organization .main table td {
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  line-height: 1.8;
}
#staff.organization .main table td.white {
  background: #fff;
}
#staff.organization .main table td.dashed {
  border-bottom: 1px dashed #000;
}
#staff.organization .main table td:last-of-type {
  border-right: none;
}

.en #staff .pageTabs ul {
  display: inline-block;
  width: 406px;
  background: url(../img/staff/tabs_bg01_en.png) no-repeat;
}
.en #staff .pageTabs li {
  width: 170px;
}
.en #staff .pageTabs li a {
  padding: 13px 0 12px 15px;
}
.en #staff .pageTabs li:last-child {
  top: 10px;
  width: 236px;
}
.en #staff .pageTabs li:last-child a {
  padding: 10px 0;
}
.en #staff.organization .pageTabs ul {
  width: 418px;
  background-image: url(../img/staff/tabs_bg02_en.png);
}
.en #staff.organization .pageTabs li {
  width: 175px;
}
.en #staff.organization .pageTabs li a {
  padding: 13px 0 12px 0;
}
.en #staff.organization .pageTabs li:first-child a {
  padding: 11px 35px 10px 0;
}
.en #staff.organization .pageTabs li:last-child {
  top: 0;
  width: 243px;
}
.en #staff.organization .pageTabs li:last-child a {
  padding: 13px 55px 12px 0;
}
.en #staff.organization .main table tr:last-child td {
  border-bottom-style: solid;
}
.en #staff.organization .main table tr:nth-child(2n):not(:first-child) {
  background: #fff;
}
.en #staff.organization .main table tr.solid td {
  border-bottom-style: solid;
}
.en #staff.organization .main table th {
  width: 22%;
}
.en #staff.organization .main table th:last-of-type {
  width: 78%;
}
.en #staff.organization .main table td {
  border-bottom: 1px dashed #000;
}
.en #staff.organization .main table td:last-of-type {
  border-right: none;
}
.en #news .article-lists li {
  word-break: break-all;
}
.en #news .article-lists li span.time {
  letter-spacing: 0;
}

/*================================================================
 info_style
================================================================*/
#info .mainvisual {
  background-image: url(../img/info/mv.jpg);
}
#info h3 {
  padding: 150px 0;
  text-align: center;
  font-size: 25px;
  font-weight: normal;
  color: #2d287f;
}

/*================================================================
 access_style
================================================================*/
#access .mainvisual {
  background-image: url(../img/access/mv.jpg);
}
#access .section01 {
  padding-bottom: 70px;
}
#access .section01 p {
  margin: 0 auto;
  padding-bottom: 10px;
  max-width: 900px;
  line-height: 2;
  font-size: 15px;
}
#access .section01 p:last-of-type {
  padding-bottom: 0;
}
#access .section01 p a {
  color: #000;
}
@media screen and (min-width: 769px) {
  #access .section01 p a {
    pointer-events: none;
  }
}
#access .section02 dl {
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  padding: 0 0 30px 90px;
  max-width: 900px;
}
#access .section02 dl:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 71px;
  height: 71px;
  background: url(../img/access/icon01.png) no-repeat;
}
#access .section02 dl:nth-of-type(2):before {
  height: 42px;
  background-image: url(../img/access/icon02.png);
}
#access .section02 dl:last-of-type {
  padding-bottom: 60px;
}
#access .section02 dl:last-of-type:before {
  height: 36px;
  background-image: url(../img/access/icon03.png);
}
#access .section02 dt,
#access .section02 dd {
  line-height: 2;
}
#access .section02 dt {
  font-weight: bold;
  font-size: 17px;
  color: #2d287f;
}
#access .section02 dd {
  padding-bottom: 20px;
  font-size: 15px;
}
#access .section02 dd:last-of-type {
  padding-bottom: 0;
}
#access .section02 .image {
  text-align: center;
}
#access .section02 .image01 {
  padding-bottom: 40px;
}

.en #access .contents {
  letter-spacing: 0;
}
.en #access .section01 p {
  padding-bottom: 0;
}
.en #access .section02 dl:last-of-type:before {
  height: 42px;
  background-image: url(../img/access/icon02.png);
}

/*================================================================
 news_style
================================================================*/
#news .mainvisual {
  background-image: url(../img/info/mv.jpg);
}
#news .main .inner {
  width: 800px;
  margin: 0 auto;
}
#news .main .inner h3 {
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 15px;
  text-align: center;
  font-size: 25px;
  font-weight: normal;
  color: #2d287f;
}
#news .main .inner h3:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  border-top: 1px dashed #2d287f;
}
#news .main .inner h3:after {
  content: "";
  position: absolute;
  bottom: -1px;
  right: 0;
  width: 3px;
  height: 3px;
  background: #ce0c19;
}
#news .main .inner h4 {
  font-size: 18px;
  line-height: 2;
}
#news .main .inner p {
  margin-bottom: 20px;
  line-height: 2;
  font-size: 15px;
  word-wrap: break-word;
}
#news .main .inner ul {
  margin-bottom: 20px;
}
#news .main .inner ul li {
  line-height: 1.8;
  font-size: 15px;
}
#news .main .inner img {
  max-width: 800px;
  height: auto;
}
#news .main .article-lists li {
  box-sizing: border-box;
  position: relative;
  margin-bottom: 15px;
  padding-left: 75px;
  width: 100%;
}
#news .main .article-lists li.new:before {
  content: "NEW";
  position: absolute;
  top: 0;
  left: 0;
  width: 60px;
  height: 24px;
  line-height: 26px;
  text-align: center;
  font-size: 13px;
  color: #fff;
  background: #ff9700;
}
#news .main .article-lists li .noLinkWrap {
  display: inline;
}
#news .main .article-lists li a {
  color: #000;
}
#news .main .article-lists li span {
  display: inline-block;
  font-size: 15px;
  line-height: 1.6;
  vertical-align: top;
  word-wrap: break-word;
}
#news .main .article-lists li span.time {
  width: 100px;
}
#news .main .article-lists li span.descriptions {
  max-width: 825px;
}
#news .main .article-lists li .underline {
  text-decoration: underline;
}
#news .main.detail .sectionTitle02 {
  line-height: 1.7;
  word-wrap: break-word;
}
#news .main.detail .sectionTitle02:before {
  top: 0;
  margin: 0;
}
@media screen and (max-width: 1000px) {
  #news .main .inner {
    width: 100%;
  }
  #news .main .inner img {
    max-width: 100%;
  }
  #news .main .article-lists li {
    padding-left: 0;
  }
  #news .main .article-lists li.new span.time {
    padding-left: 75px;
  }
  #news .main .article-lists li span {
    display: block;
    width: auto !important;
    max-width: none !important;
  }
}

/*================================================================
 links_style
================================================================*/
#links .breadcrumb {
  padding-top: 20px;
}
#links .linkList {
  margin: 0 auto;
  max-width: 950px;
}
#links .linkList li {
  position: relative;
  margin-bottom: 40px;
  padding-left: 18px;
  font-size: 15px;
}
#links .linkList li:last-child {
  margin-bottom: 0;
}
#links .linkList li:before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 3px;
  height: 3px;
  border-radius: 2px;
  background: #000;
}
#links .linkList li a {
  margin-top: 15px;
  display: inline-block;
  text-decoration: underline;
  color: #2d287f;
}

/*================================================================
 contact_style
================================================================*/
#contact .breadcrumb {
  padding-top: 20px;
}
#contact form {
  margin: 0 auto;
  max-width: 850px;
}
#contact form sup {
  padding-left: 3px;
  font-size: 12px;
}
#contact form .inputList li {
  padding-bottom: 40px;
}
#contact form .inputList li:last-child {
  padding-bottom: 0;
}
#contact form .inputList li dl {
  font-size: 17px;
}
#contact form .inputList li dt,
#contact form .inputList li dd {
  float: left;
}
#contact form .inputList li dt {
  width: 200px;
}
#contact form .inputList li dd {
  width: 650px;
}
#contact form .inputList li .alphanumeric {
  font-size: 13px;
}
#contact form .inputList li label {
  display: block;
}
#contact form .inputList li label + label {
  margin-top: 15px;
}
#contact form .inputList li input,
#contact form .inputList li textarea {
  font-size: 17px;
}
#contact form .inputList li input[type="radio"] {
  -webkit-appearance: none;
  margin: 0 12px 0 0;
  width: 18px;
  height: 18px;
  border: 2px solid #808080;
  vertical-align: text-top;
  outline: none;
}
#contact form .inputList li input[type="radio"]:checked {
  background: url(../img/contact/stripe.png) no-repeat;
  -webkit-background-size: contain;
  -ms-background-size: contain;
  -moz-background-size: contain;
  background-size: contain;
}
#contact form .inputList li input[type="text"],
#contact form .inputList li input[type="tel"],
#contact form .inputList li input[type="email"] {
  box-sizing: border-box;
  padding: 0 1em;
  width: 520px;
  height: 36px;
  border: 2px solid #808080;
}
#contact form .inputList li textarea {
  box-sizing: border-box;
  padding: 1em;
  width: 520px;
  height: 300px;
  border: 2px solid #808080;
  resize: none;
}
#contact form .inputList li:not(:first-child) dt label {
  line-height: 36px;
}
#contact form .inputList li .error {
  padding-top: 20px;
  line-height: 1.3;
  font-size: 15px;
  color: #ff0000;
}
#contact form input[type="submit"] {
  display: block;
  cursor: pointer;
  -webkit-appearance: none;
  box-sizing: border-box;
  position: relative;
  /* 2023/07/25  Google reCAPTCHA対応 */
  /* margin: 80px auto 25px;*/
  margin: 37.5px auto 25px;
  padding: 0 0 0 22px;
  width: 195px;
  height: 46px;
  border: 2px solid #404040;
  line-height: 42px;
  text-align: center;
  font-size: 15px;
  color: #000;
  background: url(../img/contact/arrow.png) no-repeat 15px 10px;
}
#contact form input[type="submit"]:hover {
  opacity: 0.7;
}
#contact form .annotation {
  text-align: center;
  font-size: 13px;
}
@media screen and (max-width: 1000px) {
  #contact form .inputList li dd {
    width: auto;
  }
  #contact form .inputList li .alphanumeric {
    display: block;
    padding-top: 5px;
    text-align: right;
  }
}

/*================================================================
 sitemap_style
================================================================*/
#sitemap .breadcrumb {
  padding-top: 20px;
}
#sitemap .linkList {
  margin: 0 auto;
  max-width: 900px;
}
#sitemap .linkList li {
  padding-bottom: 40px;
}
#sitemap .linkList li a {
  font-size: 15px;
  color: #2d287f;
  text-decoration: underline;
}
#sitemap .linkList li a:hover {
  opacity: 1;
  text-decoration: none;
}
#sitemap .linkList .disable a {
  text-decoration: none;
  pointer-events: none;
  opacity: 0.6;
}
/* 2023/07/25  Google reCAPTCHA対応 */
.g-recaptcha {
  display: flex;
  justify-content: center;
  margin: 4.5em auto 0;
}
/*# sourceMappingURL=style.css.map */
