@charset "UTF-8";
/*
YUI 3.18.1 (build f7e7bcb)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
html {
  color: #000;
  background: #FFF;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: '';
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  *font-size: 100%;
}

legend {
  color: #000;
}

#yui3-css-stamp.cssreset {
  display: none;
}

@media screen and (max-width: 768px) {
  .st_ceo-info {
    background-color: #003d7e;
  }
  .st_ceo-info a {
    overflow: hidden;
    white-space: nowrap;
    text-indent: -9999px;
    background-image: url("/assets/img/common/nav-president-info.png");
    background-size: 36.26667vw 4vw;
    background-repeat: no-repeat;
    background-position: center top;
    width: 100%;
    height: 19.6vw;
    display: block;
    position: relative;
    background-position: 22.93333vw center;
  }
  .st_ceo-info a::after {
    content: "";
    background-image: url("/assets/img/common/nav-btn-arrow-w.png");
    background-size: 10.66667vw 2vw;
    background-repeat: no-repeat;
    background-position: center top;
    width: 10.66667vw;
    height: 2vw;
    display: block;
    position: relative;
    position: absolute;
    top: 7.73333vw;
    right: 22.93333vw;
  }
}

/*****************************************************************************************************************
 * footer
 *****************************************************************************************************************/
.ft {
  background-color: #ecf7fb;
}

@media screen and (max-width: 768px) {
  .ft {
    margin-top: 33.06667vw;
  }
}

.ft_l-inner {
  width: 1200px;
  margin: 0 auto;
  padding-top: 80px;
  padding-bottom: 77px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .ft_l-inner {
    width: 100%;
    padding-top: 10.93333vw;
    padding-bottom: 10vw;
  }
}

.ft_pagetop {
  width: 150px;
  position: absolute;
  bottom: 127.5px;
  right: 100px;
  transition: opacity .2s linear;
  z-index: 10;
  opacity: 0;
}

@media screen and (max-width: 768px) {
  .ft_pagetop {
    width: 40vw;
    bottom: 40vw;
    left: 0;
    right: 0;
    margin: auto;
  }
}

.ft_pagetop::before {
  content: "";
  display: block;
  background-image: url("/assets/img/common/pagetop-arrow.png");
  background-size: 8px 35.5px;
  background-repeat: no-repeat;
  background-position: center top;
  width: 8px;
  height: 35.5px;
  display: block;
  position: relative;
  position: absolute;
  top: -26px;
  left: 0;
  right: 0;
  margin: auto;
  transition: transform .15s linear;
}

@media screen and (max-width: 768px) {
  .ft_pagetop::before {
    background-image: url("/assets/img/common/pagetop-arrow.png");
    background-size: 2.13333vw 9.46667vw;
    background-repeat: no-repeat;
    background-position: center top;
    width: 2.13333vw;
    height: 9.46667vw;
    display: block;
    position: relative;
    position: absolute;
    top: -6.93333vw;
  }
}

.ft_pagetop:hover {
  opacity: 0.7;
}

.ft_pagetop:hover::before {
  transform: translateY(-5px);
}

.ft_pagetop-inner {
  overflow: hidden;
  white-space: nowrap;
  text-indent: -9999px;
  background-image: url("/assets/img/common/pagetop.png");
  background-size: 150px 50px;
  background-repeat: no-repeat;
  background-position: center top;
  width: 150px;
  height: 50px;
  display: block;
  position: relative;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .ft_pagetop-inner {
    background-image: url("/assets/img/common/pagetop.png");
    background-size: 40vw 13.33333vw;
    background-repeat: no-repeat;
    background-position: center top;
    width: 40vw;
    height: 13.33333vw;
    display: block;
    position: relative;
  }
}

.ft_nav-list {
  font-family: "Noto-Sans-Light";
  font-size: 18px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 768px) {
  .ft_nav-list {
    font-size: 2.4vw;
    text-align: center;
  }
}

.ft_nav-list li {
  position: relative;
}

.ft_nav-list li::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 24px;
  background-color: #333;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}

@media screen and (max-width: 768px) {
  .ft_nav-list li::after {
    width: 0.26667vw;
    height: 3.2vw;
  }
}

.ft_nav-list li:last-of-type::after {
  display: none;
}

.ft_nav-list a {
  display: inline-block;
  width: 100%;
  padding: 0 13px;
  color: #333;
  transition: opacity .15s ease-out;
}

.ft_nav-list a:hover {
  opacity: .8;
}

@media screen and (max-width: 768px) {
  .ft_nav-list a {
    padding: 0 2.4vw;
  }
}

.ft_copyright {
  overflow: hidden;
  white-space: nowrap;
  text-indent: -9999px;
  background-image: url("/assets/img/common/fotter-copyright.png");
  background-size: 520.5px 17.5px;
  background-repeat: no-repeat;
  background-position: center top;
  width: 100%;
  height: 17.5px;
  display: block;
  position: relative;
  margin-top: 42px;
}

@media screen and (max-width: 768px) {
  .ft_copyright {
    background-image: url("/assets/img/common/fotter-copyright.png");
    background-size: 86.13333vw 3.06667vw;
    background-repeat: no-repeat;
    background-position: center top;
    width: 100%;
    height: 3.06667vw;
    display: block;
    position: relative;
    margin-top: 4.4vw;
  }
}

.cp_line {
  position: relative;
  z-index: 1;
}

.cp_line span {
  display: inline-block;
  width: 7.5px;
  height: 109px;
  background-color: rgba(41, 147, 209, 0.5);
  position: absolute;
}

@media screen and (max-width: 768px) {
  .cp_line span {
    width: 0.93333vw;
    height: 13.73333vw;
  }
}

.cp_line.type01 span:first-of-type {
  top: 63.5px;
  left: 0;
}

@media screen and (max-width: 768px) {
  .cp_line.type01 span:first-of-type {
    top: 7.86667vw;
    left: 0;
  }
}

.cp_line.type01 span:nth-of-type(2) {
  top: 243.5px;
  left: 18px;
}

@media screen and (max-width: 768px) {
  .cp_line.type01 span:nth-of-type(2) {
    top: 30.4vw;
    left: 2.13333vw;
  }
}

.cp_line.type01 span:nth-of-type(3) {
  top: 173px;
  left: 44px;
}

@media screen and (max-width: 768px) {
  .cp_line.type01 span:nth-of-type(3) {
    top: 21.6vw;
    left: 5.46667vw;
  }
}

.cp_line.type01 span:nth-of-type(4) {
  top: 129px;
  left: 69px;
}

@media screen and (max-width: 768px) {
  .cp_line.type01 span:nth-of-type(4) {
    top: 16vw;
    left: 8.53333vw;
  }
}

.cp_line.type01 span:nth-of-type(5) {
  top: 70.5px;
  left: 93px;
}

@media screen and (max-width: 768px) {
  .cp_line.type01 span:nth-of-type(5) {
    top: 8.8vw;
    left: 11.6vw;
  }
}

.cp_line.type01 span:nth-of-type(6) {
  top: 0;
  left: 111px;
}

@media screen and (max-width: 768px) {
  .cp_line.type01 span:nth-of-type(6) {
    top: 0;
    left: 13.73333vw;
  }
}

.cp_line.type02 span:first-of-type {
  top: 103px;
  left: 0;
}

.cp_line.type02 span:nth-of-type(2) {
  top: 32.5px;
  left: 18px;
}

.cp_line.type02 span:nth-of-type(3) {
  top: 164.5px;
  left: 42px;
}

.cp_line.type02 span:nth-of-type(4) {
  top: 71px;
  left: 67px;
}

.cp_line.type02 span:nth-of-type(5) {
  top: 0;
  left: 93px;
}

.cp_line.type03 span:first-of-type {
  top: 237.5px;
  left: 0;
}

@media screen and (max-width: 768px) {
  .cp_line.type03 span:first-of-type {
    top: 31.2vw;
    left: 0;
  }
}

.cp_line.type03 span:nth-of-type(2) {
  top: 0;
  left: 18px;
}

@media screen and (max-width: 768px) {
  .cp_line.type03 span:nth-of-type(2) {
    top: 0;
    left: 2.26667vw;
  }
}

.cp_line.type03 span:nth-of-type(3) {
  top: 219.5px;
  left: 35.5px;
}

@media screen and (max-width: 768px) {
  .cp_line.type03 span:nth-of-type(3) {
    top: 28.93333vw;
    left: 4.53333vw;
  }
}

.cp_line.type03 span:nth-of-type(4) {
  top: 35px;
  left: 44px;
}

@media screen and (max-width: 768px) {
  .cp_line.type03 span:nth-of-type(4) {
    top: 4.53333vw;
    left: 5.73333vw;
  }
}

.cp_line.type03 span:nth-of-type(5) {
  top: 149px;
  left: 62px;
}

@media screen and (max-width: 768px) {
  .cp_line.type03 span:nth-of-type(5) {
    top: 19.6vw;
    left: 8vw;
  }
}

.cp_line.type03 span:nth-of-type(6) {
  top: 237.5px;
  left: 79.5px;
}

@media screen and (max-width: 768px) {
  .cp_line.type03 span:nth-of-type(6) {
    top: 31.2vw;
    left: 10.26667vw;
  }
}

.cp_line.type03 span:nth-of-type(7) {
  top: 70px;
  left: 96.5px;
}

@media screen and (max-width: 768px) {
  .cp_line.type03 span:nth-of-type(7) {
    top: 9.2vw;
    left: 12.66667vw;
  }
}

.cp_line.type03 span:nth-of-type(8) {
  top: 202.5px;
  left: 105.5px;
}

@media screen and (max-width: 768px) {
  .cp_line.type03 span:nth-of-type(8) {
    top: 26.66667vw;
    left: 13.86667vw;
  }
}

.cp_line.type03 span:nth-of-type(9) {
  top: 132px;
  left: 123px;
}

@media screen and (max-width: 768px) {
  .cp_line.type03 span:nth-of-type(9) {
    top: 17.33333vw;
    left: 16.13333vw;
  }
}

.cp_line.type04 span:first-of-type {
  top: 103px;
  left: 0;
}

.cp_line.type04 span:nth-of-type(2) {
  top: 33px;
  left: 18px;
}

.cp_line.type04 span:nth-of-type(3) {
  top: 164.5px;
  left: 41px;
}

.cp_line.type04 span:nth-of-type(4) {
  top: 70.5px;
  left: 66.5px;
}

.cp_line.type04 span:nth-of-type(5) {
  top: 0px;
  left: 93px;
}

.cp_line.type04 span:nth-of-type(6) {
  top: 230px;
  left: 110.5px;
}

@media screen and (max-width: 768px) {
  .cp_line.type05 span:first-of-type {
    top: 10.93333vw;
    left: 0vw;
  }
}

@media screen and (max-width: 768px) {
  .cp_line.type05 span:nth-of-type(2) {
    top: 15.46667vw;
    left: 3.46667vw;
  }
}

@media screen and (max-width: 768px) {
  .cp_line.type05 span:nth-of-type(3) {
    top: 13.06667vw;
    left: 8.4vw;
  }
}

@media screen and (max-width: 768px) {
  .cp_line.type05 span:nth-of-type(4) {
    top: 0vw;
    left: 13.06667vw;
  }
}

@media screen and (max-width: 768px) {
  .cp_line.type05 span:nth-of-type(5) {
    top: 17.33333vw;
    left: 14.26667vw;
  }
}

@media screen and (max-width: 768px) {
  .cp_line.type05 span:nth-of-type(6) {
    top: 8.13333vw;
    left: 16.53333vw;
  }
}

html {
  font-family: "Yu Mincho", "YuMincho", serif;
  text-size-adjust: 100%;
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
  width: 100%;
  background-color: #ffffff;
  word-wrap: break-word;
  line-height: 1.5;
}

* {
  box-sizing: border-box;
}

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

a {
  text-decoration: none;
  text-decoration-skip-ink: none;
  color: #000;
}

@media screen and (min-width: 769px) {
  .sp {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

@font-face {
  font-family: 'Noto-Sans-Regular';
  src: url("/assets/font/NotoSansCJKjp-Regular.min.woff") format("woff");
}

@font-face {
  font-family: 'Noto-Sans-Light';
  src: url("/assets/font/NotoSansCJKjp-Light.min.woff") format("woff");
}

@font-face {
  font-family: 'Noto-Sans-Thin';
  src: url("/assets/font/NotoSansCJKjp-Thin.min.woff") format("woff");
}

div#wrapper {
  min-width: 1200px;
}

@media screen and (max-width: 768px) {
  div#wrapper {
    min-width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .main {
    margin-top: 16vw;
  }
}

/*****************************************************************************************************************
 * パンくずリスト
 *****************************************************************************************************************/
.breadcrumb-wrap {
  position: absolute;
  top: 46px;
  left: 459px;
}

@media screen and (max-width: 768px) {
  .breadcrumb-wrap {
    top: 1.06667vw;
    left: 5vw;
  }
}

.breadcrumb {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.breadcrumb li {
  font-size: 14px;
  font-family: "Noto-Sans-Light";
  color: #fff;
  letter-spacing: 0.13em;
}

@media screen and (max-width: 768px) {
  .breadcrumb li {
    font-size: 2.6vw;
  }
}

.breadcrumb li::after {
  content: ">";
  display: inline-block;
}

.breadcrumb li:last-of-type {
  padding-left: 8px;
}

@media screen and (max-width: 768px) {
  .breadcrumb li:last-of-type {
    padding-left: 1.73333vw;
  }
}

.breadcrumb li:last-of-type::after {
  display: none;
}

.breadcrumb li a {
  display: inline-block;
  color: #fff;
  padding: 0 8px;
  transition: opacity .15s ease-out;
}

.breadcrumb li a:hover {
  opacity: .8;
}

@media screen and (max-width: 768px) {
  .breadcrumb li a {
    padding: 0 1.2vw;
  }
}

/*****************************************************************************************************************
 * SNSボタン
 *****************************************************************************************************************/
.sns-btn-list {
  display: flex;
  flex-direction: row;
  align-items: center;
}

@media screen and (max-width: 768px) {
  .sns-btn-list {
    width: 92vw;
    margin: 0 auto;
    justify-content: space-between;
  }
}

.sns-btn-list li {
  margin-right: 15px;
}

@media screen and (max-width: 768px) {
  .sns-btn-list li {
    margin-right: 0;
  }
}

.sns-btn-list li:last-of-type {
  margin-right: 0;
}

.sns-btn-list .sns-btn-facebook {
  width: 36px;
}

@media screen and (max-width: 768px) {
  .sns-btn-list .sns-btn-facebook {
    width: 9.33333vw;
  }
}

.sns-btn-list .sns-btn-twitter {
  width: 35px;
}

@media screen and (max-width: 768px) {
  .sns-btn-list .sns-btn-twitter {
    width: 9.33333vw;
  }
}

.sns-btn-list .sns-btn-favorite {
  width: 250px;
}

@media screen and (max-width: 768px) {
  .sns-btn-list .sns-btn-favorite {
    width: 65.33333vw;
  }
}

.sns-btn-list a {
  display: block;
  width: 100%;
  transition: opacity .15s ease-out;
}

.sns-btn-list a:hover {
  opacity: .8;
}

/*****************************************************************************************************************
 * ページ情報
 *****************************************************************************************************************/
.curpage-info {
  font-size: 24px;
  font-family: 'Noto-Sans-Regular';
  font-weight: bold;
  line-height: 1.29;
  display: flex;
  flex-direction: row;
  margin-right: 36px;
  letter-spacing: 0.19em;
}

@media screen and (max-width: 768px) {
  .curpage-info {
    font-size: 4.26667vw;
    display: block;
    margin-right: 0;
    margin-bottom: 5.86667vw;
  }
}

.curpage-info dt {
  color: #2993d1;
  position: relative;
  padding-right: 20px;
}

@media screen and (max-width: 768px) {
  .curpage-info dt {
    padding-right: 0;
    padding-bottom: 4vw;
    margin-bottom: 2.66667vw;
  }
}

.curpage-info dt::after {
  content: "";
  display: inline-block;
  width: 3px;
  height: 54px;
  background-color: #2993d1;
  position: absolute;
  top: 4px;
  right: 0;
}

@media screen and (max-width: 768px) {
  .curpage-info dt::after {
    display: block;
    width: 16vw;
    height: 0.8vw;
    top: auto;
    bottom: 0;
    right: auto;
    left: 0;
  }
}

.curpage-info dd {
  margin-left: 20px;
}

@media screen and (max-width: 768px) {
  .curpage-info dd {
    margin-left: 0;
  }
}

/*一旦設置*/
/*****************************************************************************************************************
 * 下層ローカルナビ/下層アンカーナビ
 *****************************************************************************************************************/
.lower_local-nav,
.lower_anchor-nav {
  width: 1200px;
  margin: 0 auto;
  padding: 108px 0 69px 250px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row; }

@media screen and (max-width: 768px) {
  .lower_local-nav,
  .lower_anchor-nav {
    width: 84vw;
    margin: 0 auto;
    display: block;
    padding: 5.6vw 0 13.06667vw; }
    .lower_local-nav .curpage-info,
    .lower_anchor-nav .curpage-info {
      margin-bottom: 0; }
      .lower_local-nav .curpage-info dt,
      .lower_anchor-nav .curpage-info dt {
        margin-bottom: 0; } }
.lower_sec-list,
.lower_anchor-sec-list {
  font-size: 18px;
  font-family: 'Noto-Sans-Regular';
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row; }
  .lower_sec-list li,
  .lower_anchor-sec-list li {
    margin-right: 25px;
    letter-spacing: 0.08em; }
    .lower_sec-list li a,
    .lower_anchor-sec-list li a {
      display: inline-block;
      color: #666;
      padding-right: 23px;
      position: relative;
      -webkit-transition: opacity .15s ease-out;
      -o-transition: opacity .15s ease-out;
      transition: opacity .15s ease-out; }
      .lower_sec-list li a:hover,
      .lower_anchor-sec-list li a:hover {
        opacity: .8; }
      .lower_sec-list li a::after,
      .lower_anchor-sec-list li a::after {
        content: '';
        background-image: url("/assets/img/common/btn-arrow-gray.png");
        background-size: 20.5px 8px;
        background-repeat: no-repeat;
        background-position: center top;
        width: 20.5px;
        height: 8px;
        display: block;
        position: relative;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto; }
  .lower_sec-list .lower-current a,
  .lower_anchor-sec-list .lower-current a {
    color: #2993d1; }
    .lower_sec-list .lower-current a::after,
    .lower_anchor-sec-list .lower-current a::after {
      background-image: url("/assets/img/common/btn-arrow-blue.png");
      background-size: 20.5px 8px; }

@media screen and (max-width: 768px) {
  .lower_sec-list,
  .lower_anchor-sec-list {
    font-size: 4.26667vw;
    display: block; }
    .lower_sec-list li,
    .lower_anchor-sec-list li {
      margin-right: 0;
      border-bottom: 1px solid #2993d1; }
      .lower_sec-list li::first-of-type,
      .lower_anchor-sec-list li::first-of-type {
        border-top: 1px solid #2993d1; }
      .lower_sec-list li a,
      .lower_anchor-sec-list li a {
        width: 100%;
        padding: 3.46667vw 0; }
        .lower_sec-list li a::after,
        .lower_anchor-sec-list li a::after {
          background-image: url("/assets/img/common/btn-arrow-gray.png");
          background-size: 5.46667vw 2.13333vw;
          background-repeat: no-repeat;
          background-position: center top;
          width: 5.46667vw;
          height: 2.13333vw;
          display: block;
          position: relative;
          position: absolute; }
    .lower_sec-list .lower-current a,
    .lower_anchor-sec-list .lower-current a {
      color: #2993d1; }
      .lower_sec-list .lower-current a::after,
      .lower_anchor-sec-list .lower-current a::after {
        background-image: url("/assets/img/common/btn-arrow-blue.png");
        background-size: 5.46667vw 2.13333vw; } }
.lower_sec-list-ttl li {
  font-size: 24px;
  font-weight: bold;
  font-family: 'Noto-Sans-Regular';
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  letter-spacing: 0.08em;
  line-height: 1.29; }

@media screen and (max-width: 768px) {
  .lower_sec-list-ttl li {
    font-size: 4.2666666667vw;
    padding: 3.46667vw 0; } }
.to-eng {
  padding-bottom: 30px;
}
.to-eng .lower_sec-list li {
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .to-eng .lower_sec-list li {
    width: 25vw;
    margin: 0 auto;
    border-bottom: none;
  }
}

/*# sourceMappingURL=common.css.map */

/* 20230206追加 */
@media screen and (max-width: 768px) {
.breadcrumb-wrap {
		width: 100%;
		left: 3vw;
	}
}
@media screen and (max-width: 768px) {
.breadcrumb {
	  display: flex;
	  flex-direction: row;
	  flex-wrap: nowrap;
	  overflow-x: scroll;
	  word-break: keep-all;
	  white-space: nowrap;
	}
	.breadcrumb::-webkit-scrollbar {
		display: none;
	}
  .breadcrumb li {
    font-size: 2.6vw;
  }
}	