@charset "Shift_JIS";
/*	reset
-----------------------------------------*/
* {
  border: 0;
  font-size: 100%;
  font-weight: normal;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

*, *::before, *::after {
  box-sizing: border-box;
}

article, aside, details, figcaption, figure, main, footer, header, hgroup, menu, nav, section {
  display: block;
}

html {
  line-height: 1;
}

input:not([type="checkbox"]), textarea, button, select {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
}

ol, ul {
  list-style: none;
}

main {
  display: block;
}

button {
  background: none;
  border: 0;
  box-shadow: none;
  cursor: pointer;
  margin: 0;
  padding: 0;
}

a {
  text-decoration: none;
}

body {
  margin: 0;
  padding: 0;
}

.main-content.flex, .breadcrumb.flex, .list-link-01.list-link-col2, .list-link-01.list-link-col3, .list-link-01.list-link-col4, .list-link-right-01, .list-link-right-01 ul, .list-definition-04, .list-conversation-01 > li, .link-news-01 li, .box-sns-01, .box-sns-01 > ul, .box-index-01 .box-index-01-inner, .box-index-01 .column, .box-index-01 .column .column-inner, .box-index-02 .box-index-02-inner, .box-index-02 .column, .box-index-02 .column .column-inner, .box-panel-col2-01, .box-panel-col2-01 > .item-01 .nav-btn-01, .box-panel-col2-01 > .item-01 .nav-btn-01 a, .box-panel-col2-01 > .item-01 .nav-btn-01 button, .box-panel-col3-01, .box-panel-col3-01 > .item-01 .nav-btn-01, .box-panel-col3-01 > .item-01 .nav-btn-01 a, .box-panel-col3-01 > .item-01 .nav-btn-01 button, .box-panel-col4-02, .main .box-contact-02 .link-01, .main .box-contact-02 .link-01 li, .main .box-contact-02 .link-01 a, .box-contact-03 .data-01, .box-timeline-01, .box-timeline-01 > .description .list-img, .box-important-01 .box-inner, .side .box-related-info-01 .box-related-info-01-inner .list > li.over, .side .box-related-info-01 .box-related-info-01-inner .list > li:not(.over) .lyt-image, .box-contact-bnr-01 .box-inner, .box-contact-bnr-01 dl div, .box-contact-bnr-01 dl dd, .lyt-image.image-parallel, .lyt-image.image-col1, .lyt-image.image-col2 .lyt-image-inner, .lyt-image.image-col3 .lyt-image-inner, .lyt-col2-01 .lyt-col2-01-inner, .lyt-col2-01 .lyt-col2-01-inner > .column, .lyt-col2-01 .lyt-col2-01-inner > .column [class^="box-content-"], .lyt-col2-04, .lyt-col2-05, .lyt-col2-07, .lyt-col3-01 .lyt-col3-01-inner, .lyt-col3-01 .lyt-col3-01-inner > .column, .lyt-col3-01 .lyt-col3-01-inner > .column [class^="box-content-"], .lyt-related-info-01 .data, .lyt-related-info-01 .data .column, .lyt-col2-01 .parallel, .lyt-col2-01 .top-tab-01 .top-tab-nav, #nav-local .title-01 > a, #nav-local .only > li > a, #nav-local .title-01 > a span, #nav-local .only > li > a span, .nav-plugin-01 a, .nav-page-02, .nav-page-03, .nav-page-03 li, .nav-page-03 li a, .nav-tab-01 > ul, .nav-tab-01 li, .nav-tab-01 li a, .nav-tab-02 .js-tab-nav, .nav-tab-02 .js-tab-nav li, .nav-tab-02 .js-tab-nav li a, .nav-tab-03 .js-tab-nav, .nav-tab-03 .parallel, .nav-page-01 ul, .nav-page-01 ul li, .nav-page-01 ul li a, .nav-page-01 ul li button, .nav-btn-icon-01, .nav-content-01, .nav-content-01 li, :root .nav-content-01 a, .hdg-level1-news-01, .hdg-level1-02 .data-01, .hdg-link-01, .parallel-01 {
  display: flex;
}

.lyt-image.image-float::after {
  clear: both;
  content: "";
  display: block;
}

/* ======================================
 base
====================================== */
body > img {
  display: block;
}

/* ======================================
 page
====================================== */
#page {
  overflow: hidden;
  padding: 0 20px;
}

#page.not-rwd {
  min-width: 1400px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) {
    padding: 0 15px;
  }
}

/* ======================================
 main-content
====================================== */
.main-content, .breadcrumb {
  background: #ffffff;
  color: #333333;
  color: #333333;
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", Meiryo, "メイリオ", Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.7;
  overflow-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  word-wrap: break-word;
}

.main-content img, .breadcrumb img {
  height: auto;
  max-width: 100%;
  vertical-align: baseline;
}

.main-content a, .main-content button, .breadcrumb a, .breadcrumb button {
  color: #0071c5;
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", Meiryo, "メイリオ", Arial, sans-serif;
  text-decoration: none;
}

.main-content a:hover, .main-content a:focus, .main-content button:hover, .main-content button:focus, .breadcrumb a:hover, .breadcrumb a:focus, .breadcrumb button:hover, .breadcrumb button:focus {
  text-decoration: underline;
}

.main-content a:hover *, .main-content a:focus *, .main-content button:hover *, .main-content button:focus *, .breadcrumb a:hover *, .breadcrumb a:focus *, .breadcrumb button:hover *, .breadcrumb button:focus * {
  text-decoration: underline;
}

.main-content a .link-window-01, .main-content button .link-window-01, .breadcrumb a .link-window-01, .breadcrumb button .link-window-01 {
  padding-left: 8px;
}

.main-content button > *, .breadcrumb button > * {
  position: relative;
}

.main-content input:not([type="checkbox"]), .main-content textarea, .main-content button, .main-content select, .breadcrumb input:not([type="checkbox"]), .breadcrumb textarea, .breadcrumb button, .breadcrumb select {
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", Meiryo, "メイリオ", Arial, sans-serif;
}

.main-content sup, .breadcrumb sup {
  font-size: 75%;
  vertical-align: top;
}

.main-content sub, .breadcrumb sub {
  font-size: 75%;
  vertical-align: bottom;
}

.main-content ruby rt, .breadcrumb ruby rt {
  font-size: 75%;
}

.main-content em, .breadcrumb em {
  font-style: normal;
  font-weight: bold;
}

.main-content strong, .breadcrumb strong {
  color: #c50000;
  font-weight: bold;
}

.main-content p:not([class]), .main-content p[class^="m"], .main-content p[class^="p"], .main-content p[class^="w"], .main-content p[class^="aleft"], .main-content p[class^="acenter"], .main-content p[class^="aright"], .main-content p[class^="sp-"], .breadcrumb p:not([class]), .breadcrumb p[class^="m"], .breadcrumb p[class^="p"], .breadcrumb p[class^="w"], .breadcrumb p[class^="aleft"], .breadcrumb p[class^="acenter"], .breadcrumb p[class^="aright"], .breadcrumb p[class^="sp-"] {
  margin-top: 24px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .main-content p:not([class]), #page:not(.not-rwd) .main-content p[class^="m"], #page:not(.not-rwd) .main-content p[class^="v-"], #page:not(.not-rwd) .main-content p[class^="w"], #page:not(.not-rwd) .main-content p[class^="t-"], #page:not(.not-rwd) .main-content p[class^="sp-"], #page:not(.not-rwd)
  .breadcrumb p:not([class]), #page:not(.not-rwd)
  .breadcrumb p[class^="m"], #page:not(.not-rwd)
  .breadcrumb p[class^="v-"], #page:not(.not-rwd)
  .breadcrumb p[class^="w"], #page:not(.not-rwd)
  .breadcrumb p[class^="t-"], #page:not(.not-rwd)
  .breadcrumb p[class^="sp-"] {
    margin-top: 14px;
  }
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .main-content, #page:not(.not-rwd)
  .breadcrumb {
    font-size: 0.875rem;
    line-height: 1.71429;
  }
}

.main-content.flex, .breadcrumb.flex {
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
}

.not-rwd .main-content.flex, .not-rwd
.breadcrumb.flex {
  width: 1200px;
}

.main-content.flex > .main, .breadcrumb.flex > .main {
  flex: 1;
  margin: 0;
  max-width: 860px;
  padding-top: 30px;
}

.main-content.flex > .side, .breadcrumb.flex > .side {
  margin: 0;
  padding: 30px 0 40px 60px;
  width: 340px;
}

.main-content.flex > .side > *:first-child, .breadcrumb.flex > .side > *:first-child {
  margin-top: 0 !important;
}

@media only screen and (max-width: 1024px) {
  #page:not(.not-rwd) .main-content.flex > .side, #page:not(.not-rwd)
  .breadcrumb.flex > .side {
    width: 290px;
  }
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .main-content.flex, #page:not(.not-rwd)
  .breadcrumb.flex {
    display: block;
  }
  #page:not(.not-rwd) .main-content.flex > .main, #page:not(.not-rwd)
  .breadcrumb.flex > .main {
    max-width: 100%;
    padding-top: 30px;
  }
  #page:not(.not-rwd) .main-content.flex > .side, #page:not(.not-rwd)
  .breadcrumb.flex > .side {
    padding: 10px 0 5px 0;
    width: 100%;
  }
}

/* ======================================
 main
====================================== */
.main-content > .main {
  margin: 0 auto;
  max-width: 1200px;
  padding: 40px 0;
  width: 100%;
}

.main-content > .main > *:first-child {
  margin-top: 0 !important;
}

.main-content > .main a {
  text-decoration: underline;
}

.main-content > .main a:hover, .main-content > .main a:focus {
  text-decoration: none;
}

.main-content > .main a:hover *, .main-content > .main a:focus * {
  text-decoration: none;
}

/* ======================================
 breadcrumb
====================================== */
.breadcrumb {
  font-size: 0.875rem;
  margin: 0 auto;
  max-width: 1200px;
  padding: 6px 0 3px 0;
  width: 100%;
}

.not-rwd .breadcrumb {
  padding: 6px 0 0 0;
  width: 1200px;
}

.breadcrumb a {
  display: inline-block;
  padding-right: 17px;
  position: relative;
  text-decoration: underline;
}

.breadcrumb a:hover, .breadcrumb a:focus {
  text-decoration: none;
}

.breadcrumb a:hover *, .breadcrumb a:focus * {
  text-decoration: none;
}

.breadcrumb a::before {
  border-right: solid 1px #000000;
  border-top: solid 1px #000000;
  content: "";
  display: block;
  height: 6px;
  position: absolute;
  right: 6px;
  top: 9px;
  transform: rotate(45deg);
  width: 6px;
  will-change: transform;
}

/* ======================================
 document
====================================== */
/* --------------------------------------
 doc-underline-01
-------------------------------------- */
p.doc-underline-01 {
  margin-top: 24px;
}

.doc-underline-01 {
  text-decoration: underline;
}

/* --------------------------------------
 doc-lead-01
-------------------------------------- */
.doc-lead-01 {
  margin-top: 24px;
}

.doc-lead-01 b {
  color: #333333;
  font-size: 1.125rem;
  font-weight: bold;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .doc-lead-01 b {
    font-size: 1rem;
  }
}

/* --------------------------------------
 doc-indent-01
-------------------------------------- */
p.doc-indent-01 {
  margin-top: 24px;
}

.doc-indent-01 {
  text-indent: 1em;
}

/* --------------------------------------
 small
-------------------------------------- */
.small {
  font-size: 88% !important;
}

p.small {
  margin-top: 24px;
}

/* --------------------------------------
 doc-note-01
-------------------------------------- */
.doc-note-01 {
  color: #c50000;
  font-size: 75% !important;
  vertical-align: top;
}

/* --------------------------------------
 doc-caption-01
-------------------------------------- */
.doc-caption-01 {
  color: #666666;
  font-size: 0.875rem;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .doc-caption-01 {
    font-size: 0.75rem;
  }
}

/* --------------------------------------
 doc-tel-01
-------------------------------------- */
.doc-tel-01 {
  background: #fef4f6 url("/common_rwd/images/icon-tell-01.png") no-repeat 15px center;
  margin-top: 24px;
  padding: 8px 5px 7px 55px;
}

.doc-tel-01 b {
  color: #c50000;
  display: inline-block;
  font-size: 1.125rem;
  font-weight: bold;
  padding-right: 15px;
  vertical-align: middle;
}

.doc-tel-01 span {
  display: inline-block;
  vertical-align: middle;
}

.doc-tel-01 .small-01 {
  color: #c50000;
  font-size: 0.875rem;
  font-weight: bold;
  padding-left: 5px;
}

.doc-tel-01 .small-02 {
  font-size: 0.625rem;
  line-height: 1.2;
  max-width: 4.5rem;
  padding-right: 15px;
}

.doc-tel-01 .block {
  display: block;
}

.doc-tel-01 .block.small-01, .doc-tel-01 .block.small-02 {
  padding: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .doc-tel-01 {
    margin-top: 14px;
  }
}

/* --------------------------------------
 doc-tel-02
-------------------------------------- */
.doc-tel-02 {
  background: #f6fcff;
  margin: 9px auto 0 auto;
  max-width: 340px;
  padding: 8px 5px 7px 5px;
  text-align: center;
  width: 100%;
}

.doc-tel-02 b {
  color: #0071c5;
  display: inline-block;
  font-size: 1.375rem;
  font-weight: bold;
  vertical-align: middle;
}

.doc-tel-02 b a {
  color: #0071c5;
  font-weight: bold;
  text-decoration: none !important;
}

.doc-tel-02 span {
  display: inline-block;
  vertical-align: middle;
}

.doc-tel-02 .img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  height: 18px;
  padding-right: 10px;
  vertical-align: middle;
}

.doc-tel-02 .small-01 {
  color: #0071c5;
  font-size: 0.875rem;
  font-weight: bold;
}

.doc-tel-02 .block {
  display: block;
}

.doc-tel-02 .block.small-01, .doc-tel-02 .block.small-02 {
  padding: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .doc-tel-02 b {
    font-size: 1.125rem;
  }
}

/* ======================================
 list
====================================== */
/* --------------------------------------
 list-bullet-01
-------------------------------------- */
.list-bullet-01 {
  margin-top: 15px;
}

.list-bullet-01 li {
  padding-left: 15px;
  position: relative;
}

.list-bullet-01 li::before {
  background: #0071c5;
  border-radius: 12px;
  content: "";
  display: block;
  height: 6px;
  left: 1px;
  position: absolute;
  top: 10px;
  width: 6px;
}

.list-bullet-01 li a, .list-bullet-01 li button {
  color: #0071c5;
}

.list-bullet-01 li + li {
  margin-top: 8px;
}

.list-bullet-01 li > ul, .list-bullet-01 li > ol, .list-bullet-01 li > p:first-child {
  margin-top: 8px;
}

.list-bullet-01 li ul li::before {
  background: #6b6b6b;
}

.list-bullet-01 li ul li ul li::before {
  height: 4px;
  width: 4px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-bullet-01 li + li {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-bullet-01 li > ul, #page:not(.not-rwd) .list-bullet-01 li > ol, #page:not(.not-rwd) .list-bullet-01 li > p:first-child {
    margin-top: 5px;
  }
}

/* --------------------------------------
 list-link
-------------------------------------- */
:root [class^="list-link-"] a {
  text-decoration: none;
}

:root [class^="list-link-"] a:hover, :root [class^="list-link-"] a:focus {
  text-decoration: underline;
}

:root [class^="list-link-"] a:hover *, :root [class^="list-link-"] a:focus * {
  text-decoration: underline;
}

/* --------------------------------------
 list-link-01
-------------------------------------- */
.list-link-01 {
  margin-top: 15px;
}

.list-link-01 li {
  padding-left: 15px;
  position: relative;
}

.list-link-01 li:not(.no-link)::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.list-link-01 li.no-link::before {
  background: #0071c5;
  border-radius: 12px;
  content: "";
  display: block;
  height: 6px;
  left: 1px;
  position: absolute;
  top: 10px;
  width: 6px;
}

.list-link-01 li a, .list-link-01 li button {
  color: #333333;
}

.list-link-01 li + li {
  margin-top: 8px;
}

.list-link-01 li > ul, .list-link-01 li > ol, .list-link-01 li > p:first-child {
  margin-top: 8px;
}

.list-link-01 li ul li:not(.no-link)::before {
  border-right: solid 2px #6b6b6b;
  border-top: solid 2px #6b6b6b;
}

.list-link-01 li ul li.no-link::before {
  background: #6b6b6b;
}

.list-link-01 li ul li ul li:not(.no-link)::before {
  border-right: solid 1px #6b6b6b;
  border-top: solid 1px #6b6b6b;
  height: 6px;
  width: 6px;
}

.list-link-01 li ul li ul li.no-link::before {
  height: 4px;
  width: 4px;
}

.list-link-01.list-link-col2, .list-link-01.list-link-col3, .list-link-01.list-link-col4 {
  flex-wrap: wrap;
  margin-left: -20px;
  margin-right: -20px;
}

.list-link-01.list-link-col2 > li, .list-link-01.list-link-col3 > li, .list-link-01.list-link-col4 > li {
  padding: 0 20px;
}

.list-link-01.list-link-col2 > li + li, .list-link-01.list-link-col3 > li + li, .list-link-01.list-link-col4 > li + li {
  margin-top: 0;
}

.list-link-01.list-link-col2 > li > span, .list-link-01.list-link-col3 > li > span, .list-link-01.list-link-col4 > li > span {
  display: block;
  padding-left: 15px;
  position: relative;
}

.list-link-01.list-link-col2 > li:not(.no-link)::before, .list-link-01.list-link-col3 > li:not(.no-link)::before, .list-link-01.list-link-col4 > li:not(.no-link)::before {
  content: none;
}

.list-link-01.list-link-col2 > li:not(.no-link) > span::before, .list-link-01.list-link-col3 > li:not(.no-link) > span::before, .list-link-01.list-link-col4 > li:not(.no-link) > span::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.list-link-01.list-link-col2 > li.no-link::before, .list-link-01.list-link-col3 > li.no-link::before, .list-link-01.list-link-col4 > li.no-link::before {
  content: none;
}

.list-link-01.list-link-col2 > li.no-link > span::before, .list-link-01.list-link-col3 > li.no-link > span::before, .list-link-01.list-link-col4 > li.no-link > span::before {
  background: #0071c5;
  border-radius: 12px;
  content: "";
  display: block;
  height: 6px;
  left: 1px;
  position: absolute;
  top: 10px;
  width: 6px;
}

.list-link-01.list-link-col2 > li {
  width: 50%;
}

.list-link-01.list-link-col2 > li:nth-child(n + 3) {
  margin-top: 8px;
}

.list-link-01.list-link-col3 > li {
  width: 33.33333%;
}

.list-link-01.list-link-col3 > li:nth-child(n + 4) {
  margin-top: 8px;
}

.list-link-01.list-link-col4 > li {
  width: 25%;
}

.list-link-01.list-link-col4 > li:nth-child(n + 5) {
  margin-top: 8px;
}

.list-link-01.list-link-line {
  border-top: #bbbbbb 1px dashed;
}

.list-link-01.list-link-line > li {
  border-bottom: #bbbbbb 1px dashed;
  margin-top: 17px;
  padding-bottom: 13px;
}

.list-link-01.list-link-line.list-link-col2, .list-link-01.list-link-line.list-link-col3, .list-link-01.list-link-line.list-link-col4 {
  border-top: 0;
}

.list-link-01.list-link-line.list-link-col2 > li, .list-link-01.list-link-line.list-link-col3 > li, .list-link-01.list-link-line.list-link-col4 > li {
  border-bottom: 0;
  margin-top: 0;
  padding-bottom: 0;
}

.list-link-01.list-link-line.list-link-col2 > li > span, .list-link-01.list-link-line.list-link-col3 > li > span, .list-link-01.list-link-line.list-link-col4 > li > span {
  border-bottom: #bbbbbb 1px dashed;
  border-top: #bbbbbb 1px dashed;
  margin-top: 0;
  padding-bottom: 13px;
  padding-top: 17px;
}

.list-link-01.list-link-line.list-link-col2 > li > span::before, .list-link-01.list-link-line.list-link-col3 > li > span::before, .list-link-01.list-link-line.list-link-col4 > li > span::before {
  top: 22px;
}

.list-link-01.list-link-line.list-link-col2 > li:nth-child(n + 3), .list-link-01.list-link-line.list-link-col2 > li:nth-child(n + 4), .list-link-01.list-link-line.list-link-col2 > li:nth-child(n + 5), .list-link-01.list-link-line.list-link-col3 > li:nth-child(n + 3), .list-link-01.list-link-line.list-link-col3 > li:nth-child(n + 4), .list-link-01.list-link-line.list-link-col3 > li:nth-child(n + 5), .list-link-01.list-link-line.list-link-col4 > li:nth-child(n + 3), .list-link-01.list-link-line.list-link-col4 > li:nth-child(n + 4), .list-link-01.list-link-line.list-link-col4 > li:nth-child(n + 5) {
  margin-top: 0;
}

.list-link-01.list-link-line.list-link-col2 > li:nth-child(n + 3) > span {
  border-top: 0;
}

.list-link-01.list-link-line.list-link-col3 > li:nth-child(n + 4) > span {
  border-top: 0;
}

.list-link-01.list-link-line.list-link-col4 > li:nth-child(n + 5) > span {
  border-top: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-link-01 li + li {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-link-01 li > ul, #page:not(.not-rwd) .list-link-01 li > ol, #page:not(.not-rwd) .list-link-01 li > p:first-child {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-link-01.list-link-col2, #page:not(.not-rwd) .list-link-01.list-link-col3, #page:not(.not-rwd) .list-link-01.list-link-col4 {
    display: block;
  }
  #page:not(.not-rwd) .list-link-01.list-link-col2 > li, #page:not(.not-rwd) .list-link-01.list-link-col3 > li, #page:not(.not-rwd) .list-link-01.list-link-col4 > li {
    width: 100%;
  }
  #page:not(.not-rwd) .list-link-01.list-link-col2 > li + li, #page:not(.not-rwd) .list-link-01.list-link-col3 > li + li, #page:not(.not-rwd) .list-link-01.list-link-col4 > li + li {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-link-01.list-link-col2 > li:nth-child(n + 3) {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-link-01.list-link-col3 > li:nth-child(n + 4) {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-link-01.list-link-col4 > li:nth-child(n + 5) {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-link-01.list-link-line > li {
    margin-top: 14px;
    padding-bottom: 10px;
  }
  #page:not(.not-rwd) .list-link-01.list-link-line.list-link-col2 > li, #page:not(.not-rwd) .list-link-01.list-link-line.list-link-col3 > li, #page:not(.not-rwd) .list-link-01.list-link-line.list-link-col4 > li {
    margin-top: 0;
    padding-bottom: 0;
  }
  #page:not(.not-rwd) .list-link-01.list-link-line.list-link-col2 > li > span, #page:not(.not-rwd) .list-link-01.list-link-line.list-link-col3 > li > span, #page:not(.not-rwd) .list-link-01.list-link-line.list-link-col4 > li > span {
    padding-bottom: 10px;
    padding-top: 14px;
  }
  #page:not(.not-rwd) .list-link-01.list-link-line.list-link-col2 > li + li > span, #page:not(.not-rwd) .list-link-01.list-link-line.list-link-col3 > li + li > span, #page:not(.not-rwd) .list-link-01.list-link-line.list-link-col4 > li + li > span {
    border-top: 0;
  }
}

/* --------------------------------------
 list-link-02
-------------------------------------- */
.list-link-02 {
  margin-top: 15px;
}

.list-link-02 li {
  padding-left: 15px;
  position: relative;
}

.list-link-02 li:not(.no-link)::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.list-link-02 li.no-link::before {
  background: #0071c5;
  border-radius: 12px;
  content: "";
  display: block;
  height: 6px;
  left: 1px;
  position: absolute;
  top: 10px;
  width: 6px;
}

.list-link-02 li a, .list-link-02 li button {
  color: #333333;
}

.list-link-02 li + li {
  margin-top: 8px;
}

.list-link-02 li ul li {
  display: inline-block;
  margin-right: 40px;
  margin-top: 8px;
}

.list-link-02 li ul li:not(.no-link)::before {
  border-right: solid 2px #6b6b6b;
  border-top: solid 2px #6b6b6b;
}

.list-link-02 li ul li.no-link::before {
  background: #6b6b6b;
}

.list-link-02 li ul li ul li:not(.no-link)::before {
  border-right: solid 1px #6b6b6b;
  border-top: solid 1px #6b6b6b;
  height: 6px;
  width: 6px;
}

.list-link-02 li ul li ul li.no-link::before {
  height: 4px;
  width: 4px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-link-02 li + li {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-link-02 li ul li {
    margin-right: 20px;
    margin-top: 5px;
  }
}

/* --------------------------------------
 list-link-right-01
-------------------------------------- */
.list-link-right-01 {
  justify-content: flex-end;
  margin-top: 7px;
}

.list-link-right-01 li + li {
  margin-left: 20px;
}

.list-link-right-01 ul {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.list-link-right-01 li {
  margin-top: 8px;
  padding-left: 15px;
  position: relative;
}

.list-link-right-01 li:not(.no-link)::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.list-link-right-01 li.no-link::before {
  background: #0071c5;
  border-radius: 12px;
  content: "";
  display: block;
  height: 6px;
  left: 1px;
  position: absolute;
  top: 10px;
  width: 6px;
}

.list-link-right-01 li.rss {
  background: url("/common_rwd/images/icon_rss_01.gif") no-repeat left center;
  margin-left: 0;
  padding-left: 23px;
}

.list-link-right-01 li.rss::before {
  content: none;
}

.list-link-right-01 li a, .list-link-right-01 li button {
  color: #333333;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-link-right-01 ul {
    margin-left: -20px;
  }
  #page:not(.not-rwd) .list-link-right-01 li {
    margin-left: 20px;
    margin-top: 5px;
  }
}

/* --------------------------------------
 list-ordered-01
-------------------------------------- */
ol.list-ordered-01 {
  margin-top: 15px;
}

ol.list-ordered-01 > li {
  counter-increment: num;
  padding-left: 35px;
  position: relative;
}

ol.list-ordered-01 > li::before {
  content: counter(num) ".";
  display: block;
  font-weight: bold;
  left: 0;
  padding-right: 4px;
  position: absolute;
  text-align: right;
  top: 0;
  width: 35px;
}

ol.list-ordered-01 > li + li {
  margin-top: 8px;
}

ol.list-ordered-01 > li ol {
  counter-reset: num;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) ol.list-ordered-01 > li + li {
    margin-top: 5px;
  }
}

/* --------------------------------------
 list-ordered-03
-------------------------------------- */
ol.list-ordered-03 {
  margin-top: 15px;
}

ol.list-ordered-03 > li {
  padding-left: 36px;
  position: relative;
}

ol.list-ordered-03 > li > span.num {
  display: block;
  font-weight: bold;
  left: 0;
  position: absolute;
  top: 0;
  width: 36px;
}

ol.list-ordered-03 > li + li {
  margin-top: 8px;
}

ol.list-ordered-03 > li > ul, ol.list-ordered-03 > li > ol, ol.list-ordered-03 > li > p:first-child {
  margin-top: 8px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) ol.list-ordered-03 > li + li {
    margin-top: 5px;
  }
  #page:not(.not-rwd) ol.list-ordered-03 > li > ul, #page:not(.not-rwd) ol.list-ordered-03 > li > ol, #page:not(.not-rwd) ol.list-ordered-03 > li > p:first-child {
    margin-top: 5px;
  }
}

/* --------------------------------------
 list-ordered-02
-------------------------------------- */
ol.list-ordered-02 {
  margin-top: 15px;
}

ol.list-ordered-02 li {
  padding-left: 36px;
  position: relative;
}

ol.list-ordered-02 li .num {
  background: #ecf5fb;
  border: #cccccc 1px solid;
  display: block;
  font-weight: bold;
  height: 24px;
  left: 0;
  line-height: 24px;
  max-width: 36px;
  min-width: 24px;
  position: absolute;
  text-align: center;
  top: 0;
}

ol.list-ordered-02 li + li {
  margin-top: 8px;
}

ol.list-ordered-02 li > ul, ol.list-ordered-02 li > ol, ol.list-ordered-02 li > p:first-child {
  margin-top: 8px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) ol.list-ordered-02 li + li {
    margin-top: 5px;
  }
  #page:not(.not-rwd) ol.list-ordered-02 li > ul, #page:not(.not-rwd) ol.list-ordered-02 li > ol, #page:not(.not-rwd) ol.list-ordered-02 li > p:first-child {
    margin-top: 5px;
  }
}

/* --------------------------------------
 list-notice-01
-------------------------------------- */
.list-notice-01 {
  font-size: 0.75rem;
  margin-top: 15px;
}

.list-notice-01 > li {
  color: #666666;
  padding-left: 20px;
  position: relative;
}

.list-notice-01 > li > span:not([class]) {
  display: block;
  left: 0;
  position: absolute;
  top: 0;
}

.list-notice-01 > li + li {
  margin-top: 8px;
}

.list-notice-01 > li > ul, .list-notice-01 > li > ol, .list-notice-01 > li > p:first-child {
  margin-top: 8px;
}

.list-notice-01.num > li {
  padding-left: 40px;
}

.list-notice-01.acenter > li > span:not([class]) {
  display: inline-block;
  padding-right: 5px;
  position: static;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-notice-01 li + li {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-notice-01 li > ul, #page:not(.not-rwd) .list-notice-01 li > ol, #page:not(.not-rwd) .list-notice-01 li > p:first-child {
    margin-top: 5px;
  }
}

/* --------------------------------------
 list-question-01
-------------------------------------- */
.list-question-01 {
  margin-top: 15px;
}

.list-question-01 > li {
  padding-left: 40px;
  position: relative;
}

.list-question-01 > li span {
  display: block;
  font-weight: bold;
  left: 0;
  position: absolute;
  top: 0;
}

.list-question-01 > li a {
  color: #0071c5;
  text-decoration: underline;
}

.list-question-01 > li a:hover, .list-question-01 > li a:focus {
  text-decoration: none;
}

.list-question-01 > li + li {
  margin-top: 8px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-question-01 > li + li {
    margin-top: 5px;
  }
}

/* --------------------------------------
 list-definition-01
-------------------------------------- */
.list-definition-01 {
  margin-top: 15px;
}

.list-definition-01 dt {
  font-weight: bold;
}

.list-definition-01 dt + dd {
  margin-top: 8px;
}

.list-definition-01 dd > *:first-child {
  margin-top: 0;
}

.list-definition-01 dd + dt {
  margin-top: 16px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-definition-01 dt + dd {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-definition-01 dd > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .list-definition-01 dd + dt {
    margin-top: 10px;
  }
}

/* --------------------------------------
 list-definition-02
-------------------------------------- */
.list-definition-02 {
  margin-top: 15px;
}

.list-definition-02 dt {
  padding-left: 15px;
  position: relative;
}

.list-definition-02 dt::before {
  background: #0071c5;
  border-radius: 12px;
  content: "";
  display: block;
  height: 6px;
  left: 1px;
  position: absolute;
  top: 9px;
  width: 6px;
}

.list-definition-02 dt + dd {
  margin-top: 8px;
}

.list-definition-02 dd {
  padding-left: 15px;
}

.list-definition-02 dd + dt {
  margin-top: 16px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-definition-02 dt + dd {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-definition-02 dd + dt {
    margin-top: 10px;
  }
}

/* --------------------------------------
 list-definition-03
-------------------------------------- */
.list-definition-03 {
  margin-top: 15px;
}

:root .list-definition-03 dt a {
  text-decoration: none;
}

:root .list-definition-03 dt a:hover, :root .list-definition-03 dt a:focus {
  text-decoration: underline;
}

.list-definition-03 dt {
  padding-left: 15px;
  position: relative;
}

.list-definition-03 dt a {
  color: #333333;
  text-decoration: none;
}

.list-definition-03 dt a:hover, .list-definition-03 dt a:focus {
  text-decoration: none;
}

.list-definition-03 dt::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.list-definition-03 dt + dd {
  margin-top: 8px;
}

.list-definition-03 dd {
  padding-left: 15px;
}

.list-definition-03 dd + dt {
  margin-top: 16px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-definition-03 dt + dd {
    margin-top: 5px;
  }
  #page:not(.not-rwd) .list-definition-03 dd + dt {
    margin-top: 10px;
  }
}

/* --------------------------------------
 list-definition-04
-------------------------------------- */
.list-definition-04 {
  flex-wrap: wrap;
  margin-top: 40px;
}

.list-definition-04 dt {
  border-bottom: #bbbbbb 1px dashed;
  margin-top: 17px;
  padding-bottom: 13px;
  width: 75%;
}

.list-definition-04 dd {
  border-bottom: #bbbbbb 1px dashed;
  margin-top: 17px;
  padding-bottom: 13px;
  width: 25%;
}

.list-definition-04 dd .list-link-01 {
  display: inline-block;
  margin-top: 0;
}

.list-definition-04.dd-aright dd {
  text-align: right;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-definition-04 {
    display: block;
  }
  #page:not(.not-rwd) .list-definition-04 dt {
    border-bottom: 0;
    margin-top: 13px;
    padding-bottom: 0;
    width: 100%;
  }
  #page:not(.not-rwd) .list-definition-04 dd {
    margin-top: 7px;
    padding-bottom: 13px;
    width: 100%;
  }
  #page:not(.not-rwd) .list-definition-04 dd .list-link-01 {
    display: block;
  }
  #page:not(.not-rwd) .list-definition-04.dd-aright dd {
    text-align: left;
  }
}

/* --------------------------------------
 list-conversation-01
-------------------------------------- */
.list-conversation-01 {
  margin-top: 30px;
}

.list-conversation-01 > li + li {
  margin-top: 30px;
}

.list-conversation-01 > li > b {
  width: 160px;
}

.list-conversation-01 > li > .text {
  border-left: #cccccc 2px solid;
  flex: 1;
  padding-left: 20px;
}

.list-conversation-01 > li .figure-01 {
  color: #07759e;
}

.list-conversation-01 > li .figure-02 {
  color: #867500;
}

.list-conversation-01 > li .figure-03 {
  color: #5852d0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .list-conversation-01 > li {
    display: block;
  }
  #page:not(.not-rwd) .list-conversation-01 > li + li {
    margin-top: 20px;
  }
  #page:not(.not-rwd) .list-conversation-01 > li > b {
    width: 100%;
  }
  #page:not(.not-rwd) .list-conversation-01 > li > .text {
    flex: none;
    margin-top: 7px;
    padding-left: 15px;
  }
}

/* ======================================
 link
====================================== */
/* --------------------------------------
 .link-pdf-01
-------------------------------------- */
.link-pdf-01, .link-word-01, .link-exel-01, .link-popup-01 {
  display: inline-block;
  padding: 0 7px 0 9px;
}

/* --------------------------------------
 .link-news-01
-------------------------------------- */
.link-news-01 {
  margin-top: 20px;
}

.link-news-01 li {
  border-bottom: #bbbbbb 1px dashed;
  margin-top: 15px;
  padding-bottom: 13px;
}

.link-news-01 li .txt {
  flex: 1;
}

.link-news-01 li .txt > *:first-child {
  margin-top: 0;
}

.link-news-01 li .data {
  min-width: 130px;
  padding-right: 10px;
}

.link-news-01 li .data .day {
  color: #666666;
  display: inline-block;
  font-size: 0.875rem;
  font-weight: bold;
  min-width: 140px;
  padding-right: 16px;
}

.link-news-01 li .data .icon {
  border-radius: 50px;
  display: inline-block;
  font-size: 0.75rem;
  line-height: 1;
  min-width: 100px;
  padding: 3px 10px 1px 10px;
  text-align: center;
}

.link-news-01 li .data .icon.type1 {
  border: #0071c5 1px solid;
  color: #0071c5;
}

.link-news-01 li .data .icon.type2 {
  border: #0071c5 1px solid;
  color: #0071c5;
}

.link-news-01 li a {
  color: #333333;
  display: block;
  margin-top: 7px;
  padding-left: 15px;
  position: relative;
  text-decoration: none !important;
}

.link-news-01 li a:hover, .link-news-01 li a:focus {
  text-decoration: underline !important;
}

.link-news-01 li a:hover *, .link-news-01 li a:focus * {
  text-decoration: underline;
}

.link-news-01 li a::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.link-news-01 li > ul, .link-news-01 li > ol, .link-news-01 li > p:first-child {
  margin-top: 10px;
}

.link-news-01 li ul li::before {
  border-right: solid 2px #6b6b6b;
  border-top: solid 2px #6b6b6b;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .link-news-01 li {
    display: block;
  }
  #page:not(.not-rwd) .link-news-01 li a {
    display: block;
  }
  #page:not(.not-rwd) .link-news-01 li .data .day {
    min-width: 130px;
  }
}

/* ======================================
 box
====================================== */
[class^="box-content-"].height-none {
  height: auto !important;
}

/* --------------------------------------
 box-article-01
-------------------------------------- */
.box-article-01 {
  margin: 50px -20px 40px -20px;
  min-height: 495px;
  padding: 90px 20px;
}

.box-article-01.corporate {
  background: url("/common_rwd/images/bg-corporate-01.jpg") no-repeat bottom center;
  background-size: cover;
}

.box-article-01 .box-inner {
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
}

.box-article-01 .box-inner > *:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-article-01 {
    margin: 0 -15px;
    min-height: auto;
    padding: 50px 15px;
  }
  #page:not(.not-rwd) .box-article-01 .box-inner > *:first-child {
    margin-top: 0;
  }
}

/* --------------------------------------
 .box-section-01
-------------------------------------- */
.box-section-01 + .box-section-01 {
  margin-top: 60px;
}

.box-section-01 + .box-section-01 > *:first-child {
  margin-top: 0 !important;
}

/* --------------------------------------
 .box-content-01
-------------------------------------- */
.box-content-01 {
  border: #cccccc 1px solid;
  margin-top: 30px;
  padding: 35px 40px;
}

:root .box-content-01 > *:first-child {
  margin-top: 0 !important;
}

.box-content-01.narrow {
  padding-bottom: 20px;
  padding-top: 20px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-content-01 {
    margin-top: 20px;
    padding: 20px 15px;
  }
  :root #page:not(.not-rwd) .box-content-01 > *:first-child {
    margin-top: 0 !important;
  }
}

/* --------------------------------------
 .box-content-02
-------------------------------------- */
.box-content-02 {
  background: #f2f2f2;
  border: #cccccc 1px solid;
  margin-top: 40px;
  padding: 35px 40px;
}

:root .box-content-02 > *:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-content-02 {
    margin-top: 30px;
    padding: 20px 15px;
  }
  :root #page:not(.not-rwd) .box-content-02 > *:first-child {
    margin-top: 0;
  }
}

/* --------------------------------------
 .box-strong-01
-------------------------------------- */
.box-strong-01 {
  background: #ecf5fb;
  border: #cccccc 1px solid;
  margin-top: 40px;
  padding: 35px 40px;
}

:root .box-strong-01 > *:first-child {
  margin-top: 0;
}

:root .box-strong-01 .title + * {
  margin-top: 20px;
}

.box-strong-01 .title {
  color: #000000;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.6;
  margin-top: 30px;
  padding-left: 15px;
  position: relative;
}

.box-strong-01 .title::before {
  background: #cccccc;
  content: "";
  display: block;
  height: 18px;
  left: 0;
  margin-top: -9px;
  position: absolute;
  top: 50%;
  width: 4px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-strong-01 {
    margin-top: 30px;
    padding: 20px 15px;
  }
  :root #page:not(.not-rwd) .box-strong-01 > *:first-child {
    margin-top: 0;
  }
  :root #page:not(.not-rwd) .box-strong-01 .title + * {
    margin-top: 20px;
  }
  #page:not(.not-rwd) .box-strong-01 .title {
    font-size: 1rem;
  }
}

/* --------------------------------------
 .box-warning-01
-------------------------------------- */
.box-warning-01 {
  background: #fef4f6;
  border: #c50000 1px solid;
  margin-top: 40px;
  padding: 35px 40px;
}

:root .box-warning-01 > *:first-child {
  margin-top: 0;
}

:root .box-warning-01 .title + * {
  margin-top: 20px;
}

.box-warning-01 .title {
  color: #000000;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.6;
  margin-top: 30px;
  padding-left: 15px;
  position: relative;
}

.box-warning-01 .title::before {
  background: #cccccc;
  content: "";
  display: block;
  height: 18px;
  left: 0;
  margin-top: -9px;
  position: absolute;
  top: 50%;
  width: 4px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-warning-01 {
    margin-top: 30px;
    padding: 20px 15px;
  }
  :root #page:not(.not-rwd) .box-warning-01 > *:first-child {
    margin-top: 0;
  }
  :root #page:not(.not-rwd) .box-warning-01 .title + * {
    margin-top: 20px;
  }
  #page:not(.not-rwd) .box-warning-01 .title {
    font-size: 1rem;
  }
}

/* --------------------------------------
 .box-fragile-01
-------------------------------------- */
.box-fragile-01 {
  border: #bbbbbb 1px dashed;
  margin-top: 40px;
  padding: 35px 40px;
}

:root .box-fragile-01 > *:first-child {
  margin-top: 0;
}

:root .box-fragile-01 .title + * {
  margin-top: 20px;
}

.box-fragile-01 .title {
  color: #000000;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.6;
  margin-top: 30px;
  padding-left: 15px;
  position: relative;
}

.box-fragile-01 .title::before {
  background: #cccccc;
  content: "";
  display: block;
  height: 18px;
  left: 0;
  margin-top: -9px;
  position: absolute;
  top: 50%;
  width: 4px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-fragile-01 {
    margin-top: 30px;
    padding: 20px 15px;
  }
  :root #page:not(.not-rwd) .box-fragile-01 > *:first-child {
    margin-top: 0;
  }
  :root #page:not(.not-rwd) .box-fragile-01 .title + * {
    margin-top: 20px;
  }
  #page:not(.not-rwd) .box-fragile-01 .title {
    font-size: 1rem;
  }
}

/* --------------------------------------
 .box-sns-01
-------------------------------------- */
.box-sns-01 {
  align-items: center;
  justify-content: flex-end;
}

.box-sns-01 > ul {
  align-items: center;
  justify-content: center;
  margin: 0 -6px;
}

.box-sns-01 > ul li {
  padding: 0 6px;
}

.box-sns-01 > ul .fb_iframe_widget span {
  vertical-align: top !important;
}

/* --------------------------------------
 box-index
-------------------------------------- */
div[class^="box-index-"] .title a {
  font-weight: bold;
  text-decoration: underline;
}

div[class^="box-index-"] .title a:hover, div[class^="box-index-"] .title a:focus {
  text-decoration: none;
}

div[class^="box-index-"] .title + * {
  margin-top: 25px;
}

div[class^="box-index-"] .title + .list-link-line {
  border-top: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) div[class^="box-index-"] .title + * {
    margin-top: 10px;
  }
}

/* --------------------------------------
 box-index-10
-------------------------------------- */
.box-index-10 {
  border: #cccccc 1px solid;
  margin-top: 30px;
  padding: 35px 40px;
}

:root .box-index-10 > *:first-child {
  margin-top: 0;
}

.box-index-10 .title {
  border-bottom: #f3f3f3 4px solid;
  color: #000000;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.33333;
  padding-bottom: 15px;
  padding-left: 20px;
  padding-right: 15px;
  position: relative;
}

.box-index-10 .title::before {
  background: #0071c5;
  content: "";
  display: block;
  height: 10px;
  left: 0;
  position: absolute;
  top: 10px;
  width: 10px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-index-10 {
    margin-top: 20px;
    padding: 20px 15px;
  }
  :root #page:not(.not-rwd) .box-index-10 > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .box-index-10 .title {
    font-size: 1.25rem;
    padding-right: 0;
  }
  #page:not(.not-rwd) .box-index-10 .title::before {
    top: 7px;
  }
}

/* --------------------------------------
 .box-index-01
-------------------------------------- */
.box-index-01 {
  margin-top: 40px;
}

.box-index-01 .box-index-01-inner {
  flex-wrap: wrap;
  margin: 0 -20px;
}

.box-index-01 .column {
  padding: 0 20px;
  width: 50%;
}

.box-index-01 .column:nth-child(n + 3) {
  margin-top: 40px;
}

.box-index-01 .column .column-inner {
  border: #cccccc 1px solid;
  flex-direction: column;
  padding: 35px 40px;
  width: 100%;
}

:root .box-index-01 .column .column-inner > *:first-child {
  margin-top: 0;
}

.box-index-01 .lyt-image.image-parallel.float-L .image {
  margin-right: 30px;
}

.box-index-01 .lyt-image.image-parallel.float-L .image img {
  max-width: 160px;
  width: 100%;
}

.box-index-01 .title {
  border-bottom: #f3f3f3 4px solid;
  color: #000000;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.33333;
  padding-bottom: 15px;
  padding-left: 20px;
  padding-right: 15px;
  position: relative;
}

.box-index-01 .title.border-none {
  border-bottom: 0;
  padding-bottom: 0;
}

.box-index-01 .title::before {
  background: #0071c5;
  content: "";
  display: block;
  height: 10px;
  left: 0;
  position: absolute;
  top: 10px;
  width: 10px;
}

.box-index-01 .title a {
  font-weight: bold;
  text-decoration: underline;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-index-01 {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .box-index-01 .box-index-01-inner {
    display: block;
    margin: 0;
  }
  #page:not(.not-rwd) .box-index-01 .column {
    margin-top: 30px;
    padding: 0;
    width: 100%;
  }
  #page:not(.not-rwd) .box-index-01 .column:nth-child(n + 3) {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .box-index-01 .column .column-inner {
    padding: 20px 15px;
  }
  :root #page:not(.not-rwd) .box-index-01 .column .column-inner > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .box-index-01 .title {
    font-size: 1.25rem;
    padding-right: 0;
  }
  #page:not(.not-rwd) .box-index-01 .title::before {
    top: 7px;
  }
}

/* --------------------------------------
 .box-index-02
-------------------------------------- */
.box-index-02 {
  margin-top: 40px;
}

.box-index-02 .box-index-02-inner {
  flex-wrap: wrap;
  margin: 0 -20px;
}

.box-index-02 .column {
  padding: 0 20px;
  width: 33.33333%;
}

.box-index-02 .column:nth-child(n + 4) {
  margin-top: 40px;
}

.box-index-02 .column .column-inner {
  border: #cccccc 1px solid;
  flex-direction: column;
  padding: 35px 40px;
  width: 100%;
}

:root .box-index-02 .column .column-inner > *:first-child {
  margin-top: 0;
}

.box-index-02 .lyt-image.image-parallel.float-L .image {
  margin-right: 30px;
}

.box-index-02 .lyt-image.image-parallel.float-L .image img {
  max-width: 100px;
  width: 100%;
}

.box-index-02 .title {
  border-bottom: #f3f3f3 4px solid;
  color: #000000;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.33333;
  padding-bottom: 15px;
  padding-left: 20px;
  padding-right: 15px;
  position: relative;
}

.box-index-02 .title.border-none {
  border-bottom: 0;
  padding-bottom: 0;
}

.box-index-02 .title::before {
  background: #0071c5;
  content: "";
  display: block;
  height: 10px;
  left: 0;
  position: absolute;
  top: 10px;
  width: 10px;
}

.box-index-02 .title a {
  font-weight: bold;
  text-decoration: underline;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-index-02 {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .box-index-02 .box-index-02-inner {
    display: block;
    margin: 0;
  }
  #page:not(.not-rwd) .box-index-02 .column {
    margin-top: 30px;
    width: 100%;
  }
  #page:not(.not-rwd) .box-index-02 .column:nth-child(n + 4) {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .box-index-02 .column .column-inner {
    padding: 20px 15px;
  }
  :root #page:not(.not-rwd) .box-index-02 .column .column-inner > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .box-index-02 .title {
    font-size: 1.25rem;
    padding-right: 0;
  }
  #page:not(.not-rwd) .box-index-02 .title::before {
    top: 7px;
  }
}

/* --------------------------------------
 box-definition-01
-------------------------------------- */
.box-definition-01 {
  border-bottom: #cccccc 1px solid;
  border-left: #cccccc 1px solid;
  border-right: #cccccc 1px solid;
  margin-top: 30px;
}

.box-definition-01 .title {
  background: #f4f4f4;
  border-top: #cccccc 1px solid;
  padding: 20px 40px;
}

.box-definition-01 .content {
  border-top: #cccccc 1px solid;
  padding: 20px 40px;
}

:root .box-definition-01 .content > *:first-child {
  margin-top: 0;
}

.box-definition-01.qa .title {
  padding-left: 80px;
  position: relative;
}

.box-definition-01.qa .content {
  padding-left: 80px;
  position: relative;
}

.box-definition-01.qa .question, .box-definition-01.qa .answer {
  display: block;
  font-weight: bold;
  left: 40px;
  position: absolute;
  top: 20px;
}

.box-definition-01.qa .question {
  color: #0071c5;
}

.box-definition-01.qa .answer {
  color: #c50000;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-definition-01 {
    margin-top: 20px;
  }
  #page:not(.not-rwd) .box-definition-01 .title {
    padding: 15px;
  }
  #page:not(.not-rwd) .box-definition-01 .content {
    padding: 15px;
  }
  :root #page:not(.not-rwd) .box-definition-01 .content > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .box-definition-01.qa .title {
    padding-left: 50px;
  }
  #page:not(.not-rwd) .box-definition-01.qa .content {
    padding-left: 50px;
  }
  #page:not(.not-rwd) .box-definition-01.qa .question, #page:not(.not-rwd) .box-definition-01.qa .answer {
    left: 15px;
    top: 15px;
  }
}

/* --------------------------------------
 box-flow-01
-------------------------------------- */
.box-flow-01 {
  margin-top: 30px;
}

.box-flow-01 > .column {
  position: relative;
}

.box-flow-01 > .column > .column-inner {
  border: #cccccc 1px solid;
  padding: 35px 40px;
}

.box-flow-01 > .column > .column-inner > *:first-child {
  margin-top: 0 !important;
}

.box-flow-01 > .column + .column {
  margin-top: 30px;
  padding-top: 60px;
}

.box-flow-01 > .column + .column::before {
  border-color: #dddddd transparent transparent transparent;
  border-style: solid;
  border-width: 30px 35px 0 35px;
  content: "";
  display: block;
  height: 0;
  left: 50%;
  margin-left: -35px;
  position: absolute;
  top: 0;
  width: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-flow-01 {
    margin-top: 15px;
  }
  #page:not(.not-rwd) .box-flow-01 > .column > .column-inner {
    padding: 25px 15px;
  }
  :root #page:not(.not-rwd) .box-flow-01 > .column > .column-inner > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .box-flow-01 > .column + .column {
    margin-top: 15px;
    padding-top: 35px;
  }
  #page:not(.not-rwd) .box-flow-01 > .column + .column::before {
    border-width: 20px 25px 0 25px;
    margin-left: -25px;
  }
}

/* --------------------------------------
 .box-panel-col2-01
-------------------------------------- */
.box-panel-col2-01 {
  flex-wrap: wrap;
  margin: 50px -20px 0 -20px;
}

.box-panel-col2-01 > .item-01 {
  padding: 0 20px;
  width: 50%;
}

:root .box-panel-col2-01 > .item-01 > *:first-child {
  margin-top: 0;
}

.box-panel-col2-01 > .item-01:nth-child(n + 3) {
  margin-top: 40px;
}

.box-panel-col2-01 > .item-01 .panel-link-01 {
  font-size: 1.125rem;
  font-weight: bold;
  margin-top: 5px;
}

.box-panel-col2-01 > .item-01 .panel-link-01 a {
  font-weight: bold;
  text-decoration: underline;
}

.box-panel-col2-01 > .item-01 .panel-link-01 a:hover, .box-panel-col2-01 > .item-01 .panel-link-01 a:focus {
  text-decoration: none;
}

.box-panel-col2-01 > .item-01 .panel-link-01 + * {
  margin-top: 5px;
}

.box-panel-col2-01 > .item-01 .nav-btn-01 {
  margin-top: 40px;
}

.box-panel-col2-01 > .item-01 .nav-btn-01 a, .box-panel-col2-01 > .item-01 .nav-btn-01 button {
  align-items: center;
  justify-content: center;
  min-height: 82px;
}

.box-panel-col2-01 > .item-01 .nav-btn-01 + p {
  margin-top: 10px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-panel-col2-01 {
    margin: 40px 0 0 0;
  }
  #page:not(.not-rwd) .box-panel-col2-01 > .item-01 {
    padding: 0;
    width: 100%;
  }
  :root #page:not(.not-rwd) .box-panel-col2-01 > .item-01 > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .box-panel-col2-01 > .item-01 + .item-01 {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .box-panel-col2-01 > .item-01 .panel-link-01 {
    font-size: 1rem;
  }
  #page:not(.not-rwd) .box-panel-col2-01 > .item-01 .panel-link-01 + * {
    margin-top: 10px;
  }
  #page:not(.not-rwd) .box-panel-col2-01 > .item-01 .nav-btn-01 a, #page:not(.not-rwd) .box-panel-col2-01 > .item-01 .nav-btn-01 button {
    min-height: 60px;
  }
}

/* --------------------------------------
 .box-panel-col3-01
-------------------------------------- */
.box-panel-col3-01 {
  flex-wrap: wrap;
  margin: 50px -20px 0 -20px;
}

.box-panel-col3-01 > .item-01 {
  padding: 0 20px;
  width: 33.33333%;
}

:root .box-panel-col3-01 > .item-01 > *:first-child {
  margin-top: 0;
}

.box-panel-col3-01 > .item-01:nth-child(n + 4) {
  margin-top: 40px;
}

.box-panel-col3-01 > .item-01 .panel-link-01 {
  font-size: 1.125rem;
  font-weight: bold;
  margin-top: 5px;
}

.box-panel-col3-01 > .item-01 .panel-link-01 a {
  font-weight: bold;
  text-decoration: underline;
}

.box-panel-col3-01 > .item-01 .panel-link-01 a:hover, .box-panel-col3-01 > .item-01 .panel-link-01 a:focus {
  text-decoration: none;
}

.box-panel-col3-01 > .item-01 .panel-link-01 + * {
  margin-top: 5px;
}

.box-panel-col3-01 > .item-01 .nav-btn-01 {
  margin-top: 40px;
}

.box-panel-col3-01 > .item-01 .nav-btn-01 a, .box-panel-col3-01 > .item-01 .nav-btn-01 button {
  align-items: center;
  justify-content: center;
  min-height: 82px;
}

.box-panel-col3-01 > .item-01 .nav-btn-01 + p {
  margin-top: 10px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-panel-col3-01 {
    margin: 40px 0 0 0;
  }
  #page:not(.not-rwd) .box-panel-col3-01 > .item-01 {
    padding: 0;
    width: 100%;
  }
  :root #page:not(.not-rwd) .box-panel-col3-01 > .item-01 > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .box-panel-col3-01 > .item-01 + .item-01 {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .box-panel-col3-01 > .item-01 .panel-link-01 {
    font-size: 1rem;
  }
  #page:not(.not-rwd) .box-panel-col3-01 > .item-01 .panel-link-01 + * {
    margin-top: 10px;
  }
  #page:not(.not-rwd) .box-panel-col3-01 > .item-01 .nav-btn-01 a, #page:not(.not-rwd) .box-panel-col3-01 > .item-01 .nav-btn-01 button {
    min-height: 60px;
  }
}

/* --------------------------------------
 .box-panel-col4-02
-------------------------------------- */
.box-panel-col4-02 {
  flex-wrap: wrap;
  margin-top: 60px;
}

.box-panel-col4-02 > .item-01 {
  padding: 105px 40px 40px 40px;
  position: relative;
  text-align: center;
  width: 25%;
}

.box-panel-col4-02 > .item-01::before {
  border-right: #cccccc 1px dashed;
  content: "";
  display: block;
  height: calc(100% - 40px);
  position: absolute;
  right: 0;
  top: 0;
  width: 1px;
}

:root .box-panel-col4-02 > .item-01 > *:first-child {
  margin-top: 0;
}

.box-panel-col4-02 > .item-01:nth-child(4n)::before {
  content: none;
}

.box-panel-col4-02 > .item-01:nth-child(n + 5) {
  padding-top: 150px;
}

.box-panel-col4-02 > .item-01:nth-child(n + 5)::before {
  top: 40px;
}

.box-panel-col4-02 > .item-01:nth-child(n + 5)::after {
  border-top: #cccccc 1px dashed;
  content: "";
  display: block;
  height: 1px;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: calc(100% - 80px);
}

.box-panel-col4-02 > .item-01:nth-child(n + 5) .panel-image-01 {
  top: 45px;
}

.box-panel-col4-02 > .item-01 .panel-image-01 {
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
}

.box-panel-col4-02 > .item-01 .panel-image-01 img {
  image-rendering: pixelated;
}

.box-panel-col4-02 > .item-01 .panel-link-01 {
  font-size: 1.25rem;
  margin-top: 5px;
}

.box-panel-col4-02 > .item-01 .panel-link-01 a {
  color: #333333;
  display: inline-block;
  font-weight: bold;
  padding-left: 15px;
  position: relative;
  text-decoration: none;
}

.box-panel-col4-02 > .item-01 .panel-link-01 a:hover, .box-panel-col4-02 > .item-01 .panel-link-01 a:focus {
  text-decoration: underline;
}

.box-panel-col4-02 > .item-01 .panel-link-01 a::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 13px;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.box-panel-col4-02 > .item-01 .panel-link-01 + * {
  margin-top: 5px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-panel-col4-02 {
    margin: 60px -15px 0 -15px;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01 {
    padding: 86px 15px 0 15px;
    width: 50%;
  }
  :root #page:not(.not-rwd) .box-panel-col4-02 > .item-01 > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01::before {
    content: none;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01:nth-child(n + 5)::after {
    content: none;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01:nth-child(n + 3) {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01 .panel-image-01 {
    top: 0;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01 .panel-image-01 img {
    image-rendering: auto;
    max-width: 60px;
    width: 100%;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01 .panel-link-01 {
    font-size: 0.875rem;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01 .panel-link-01 a::before {
    top: 8px;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01 .panel-link-01 + * {
    font-size: 0.75rem;
    margin-top: 10px;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01 .panel-link-01 + * br {
    display: none;
  }
  #page:not(.not-rwd) .box-panel-col4-02 > .item-01 .nav-btn-01 a, #page:not(.not-rwd) .box-panel-col4-02 > .item-01 .nav-btn-01 button {
    min-height: 60px;
  }
}

/* --------------------------------------
 box-contact-02
-------------------------------------- */
.main .box-contact-02 {
  background: #0071c5;
  color: #ffffff;
  margin-top: 60px;
  padding: 30px 40px 40px 40px;
}

.main .box-contact-02 .lead-01 {
  font-size: 1.25rem;
  text-align: center;
}

.main .box-contact-02 .link-01 {
  flex-wrap: wrap;
  margin-top: 20px;
}

.main .box-contact-02 .link-01 li {
  width: 16.66667%;
}

.main .box-contact-02 .link-01 li:first-child {
  width: 50%;
}

.main .box-contact-02 .link-01 li:not(.type1) a {
  padding: 12px 5px;
}

.main .box-contact-02 .link-01 li:not(.type1) span {
  background-position: top center;
  background-repeat: no-repeat;
  background-size: 42px 42px;
  padding-top: 54px;
}

.main .box-contact-02 .link-01 a {
  align-items: center;
  background: #ffffff;
  color: #333333;
  justify-content: center;
  text-align: center;
  width: 100%;
}

.main .box-contact-02 .link-01 .type1 {
  font-size: 1.5rem;
  padding-right: 10px;
}

.main .box-contact-02 .link-01 .type1 a {
  color: #0071c5;
}

.main .box-contact-02 .link-01 .type1 span {
  background: url("data:image/svg+xml;base64,PHN2ZyBpZD0i44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDMyIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzAwNzFjNTt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPjAxX2NvbnRhY3Q8L3RpdGxlPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTMxLDE4YTUuOTk2NjMsNS45OTY2MywwLDAsMC01LTUuOTFWMTJBMTAsMTAsMCwwLDAsNiwxMnYuMDlBNS45OTY3Miw1Ljk5NjcyLDAsMCwwLDcsMjRoM2ExLDEsMCwwLDAsMS0xVjEzYTEsMSwwLDAsMC0xLTFIOGE4LDgsMCwwLDEsMTYsMEgyMmExLDEsMCwwLDAtMSwxVjIzYTEsMSwwLDAsMCwxLDFoMnY0SDE5VjI3YTEsMSwwLDAsMC0xLTFIMTVhMSwxLDAsMCwwLTEsMXYzSDI0YTIuMDAyNiwyLjAwMjYsMCwwLDAsMi0yVjIzLjkxQTUuOTk2NjMsNS45OTY2MywwLDAsMCwzMSwxOFpNOSwxNHY4SDdhNCw0LDAsMCwxLDAtOFptMTYsOEgyM1YxNGgyYTQsNCwwLDAsMSwwLDhaIi8+PC9zdmc+") no-repeat left center;
  background-size: 46px 46px;
  padding: 35px 0 35px 70px;
}

.main .box-contact-02 .link-01 .type2 span {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0i44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDMyIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzAwNzFjNTt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPjAxX3F1ZXN0aW9uPC90aXRsZT48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0yNy4wMDIzNiw1VjIzaC00djRIMjEuODMwNzhsLTMuNDE0MjEtMy40MTQyMkwxNy44MzA3OSwyM0g1LjAwMjM2VjVoMjJtMS0yaC0yNGExLDEsMCwwLDAtMSwxVjI0YTEsMSwwLDAsMCwxLDFoMTNsNCw0aDRWMjVoM2ExLDEsMCwwLDAsMS0xVjRhMSwxLDAsMCwwLTEtMVoiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0yMC45Mzc0MiwxNi4zNTM1MmE0LjEzMDY3LDQuMTMwNjcsMCwwLDEtLjg2MzI4LDEuNTg2OTFsMS4yNzUzOSwxLjIwMDE5LTEuMjEsMS4yNjI3LTEuMzM0LTEuMjY1NjJhNS42MzE1OCw1LjYzMTU4LDAsMCwxLTEuMDU1NjcuNTIyNDYsNS42Nyw1LjY3LDAsMCwxLTEuNzg3MTEuMjQ5LDUuMTE0LDUuMTE0LDAsMCwxLTMuNTg4ODctMS4yOTU5LDUuODY5NjQsNS44Njk2NCwwLDAsMS0xLjcxODc1LTQuNTc5MSw1LjgyNTA2LDUuODI1MDYsMCwwLDEsMS43NjI3LTQuNjAzNTJBNS4yMDM1NSw1LjIwMzU1LDAsMCwxLDE1Ljk5Niw4LjE1ODJhNS4xMzA3MSw1LjEzMDcxLDAsMCwxLDMuNjE2MjIsMS4zNDg2NCw1LjY0MTkxLDUuNjQxOTEsMCwwLDEsMS42ODc1LDQuMzYxMzJBNy4zNzQ3OCw3LjM3NDc4LDAsMCwxLDIwLjkzNzQyLDE2LjM1MzUyWm0tNC4yMDksMS40OTEyMWEzLjc2NTEyLDMuNzY1MTIsMCwwLDAsLjUxOTUzLS4xODg0OGwtMS4xMjQtMS4wNjkzNCwxLjE5MjM5LTEuMjQ0MTQsMS4xMjc5MywxLjA2MjVhNS4yNTExOSw1LjI1MTE5LDAsMCwwLC4zNjkxNC0uOTQ4MjQsNS40NzE5LDUuNDcxOSwwLDAsMCwuMTY2LTEuNDIzODMsNC43NDIwOCw0Ljc0MjA4LDAsMCwwLS43NjQ2NS0yLjg4ODY3QTIuNjIwMjYsMi42MjAyNiwwLDAsMCwxNS45ODEzNywxMC4xMjRhMi43MjQ1OCwyLjcyNDU4LDAsMCwwLTIuMjAwMi45Nzk1LDQuNDc1NjIsNC40NzU2MiwwLDAsMC0uODIxMjksMi45MzA2Niw0LjA1MDIsNC4wNTAyLDAsMCwwLDEuMTc1NzgsMy4yNjg1NSwyLjc0MjI0LDIuNzQyMjQsMCwwLDAsMS44MjQyMi42NDA2M0EyLjk4MjQxLDIuOTgyNDEsMCwwLDAsMTYuNzI4NDQsMTcuODQ0NzNaIi8+PC9zdmc+");
}

.main .box-contact-02 .link-01 .type3 {
  padding-left: 2px;
}

.main .box-contact-02 .link-01 .type3 span {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0i44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDMyIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzAwNzFjNTt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPjAxX3ByaWNlPC90aXRsZT48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xNC44NzIsMjRWMjAuNjc0NDFIMTEuNDAwMzFWMTkuMTk4MTRIMTQuODcyVjE3LjQ4NTkybC0uMDg5ODQtLjE5NjYySDExLjQwMDMxVjE1LjgxM2gyLjY3Njc2TDEwLjk0ODE2LDkuMjAxMTdoMi41MTM2OGwyLjU4NTkzLDYuMTk5NDhMMTguNzA2LDkuMjAxMTdoMi4zNTA1OEwxNy45Mjc2NiwxNS44MTNoMi42MjIwN1YxNy4yODkzaC0zLjMwODZsLS4xNDQ1My4zMTQ2djEuNTk0MjRoMy40NTMxM3YxLjQ3NjI3SDE3LjA5NjZWMjRaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTYuMDAyMzYsNGExMiwxMiwwLDEsMS0xMiwxMiwxMi4wMTM1OSwxMi4wMTM1OSwwLDAsMSwxMi0xMm0wLTJhMTQsMTQsMCwxLDAsMTQsMTQsMTQsMTQsMCwwLDAtMTQtMTRaIi8+PC9zdmc+");
}

.main .box-contact-02 .link-01 .type4 {
  padding-left: 2px;
}

.main .box-contact-02 .link-01 .type4 span {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0i44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDMyIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzAwNzFjNTt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPjAxX2tvdWppPC90aXRsZT48cG9seWdvbiBjbGFzcz0iY2xzLTEiIHBvaW50cz0iMTkuMDAyIDE3IDE3LjAwMiAxNyAxNy4wMDIgMTUgMTUuMDAyIDE1IDE1LjAwMiAxNyAxMy4wMDIgMTcgMTMuMDAyIDE5IDE1LjAwMiAxOSAxNS4wMDIgMjEgMTcuMDAyIDIxIDE3LjAwMiAxOSAxOS4wMDIgMTkgMTkuMDAyIDE3Ii8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMjkuNzE0NDYsMTkuNzA4LDI4LjAzMDU2LDE4di0uNTcyODhDMjguMDMwNTYsMTAuODA0MzgsMjQuMDAyMzYsNCwxNi4wMDIzNiw0UzMuOTc0MTYsMTAuMzEwMTgsMy45NzQxNiwxNy4wMjgxNHEwLC4wODYwNS4wMDEyMy4xNzE4N1YxOEwyLjI5MDQ1LDE5LjcwOGExLjAwMDA3LDEuMDAwMDcsMCwwLDAtLjI4ODA5LjcwMjI3VjI1YTEsMSwwLDAsMCwxLDFoMjZhMSwxLDAsMCwwLDEtMVYyMC40MUEuOTk5OTIuOTk5OTIsMCwwLDAsMjkuNzE0NDYsMTkuNzA4Wk0yOC4wMDIzNiwyNGgtMjRWMjAuODIwNDNsMS4zOTY3OS0xLjQxNTg5TDUuNzk4MjYsMTloNS4yMDQxVjE3SDUuOTc1MTRDNS45ODU3NiwxMS41Miw5LjA4Njc3LDYsMTYuMDAyMzYsNmE5LjE2MTA3LDkuMTYxMDcsMCwwLDEsNy40NDc1MSwzLjQ3MzMzQTEyLjg2Njk0LDEyLjg2Njk0LDAsMCwxLDI2LjAxMzg0LDE3SDIxLjAwMjM2djJoNS4yMDU1N2wuMzk4NDQuNDA0MTEsMS4zOTYsMS40MTZaIi8+PC9zdmc+");
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .main .box-contact-02 {
    margin-top: 30px;
    padding: 20px 15px;
  }
  #page:not(.not-rwd) .main .box-contact-02 .lead-01 {
    font-size: 0.875rem;
    text-align: left;
  }
  #page:not(.not-rwd) .main .box-contact-02 .link-01 {
    margin: 10px -1px 0 -1px;
  }
  #page:not(.not-rwd) .main .box-contact-02 .link-01 li {
    padding: 0 1px;
    width: 33.33333%;
  }
  #page:not(.not-rwd) .main .box-contact-02 .link-01 li:first-child {
    width: 100%;
  }
  #page:not(.not-rwd) .main .box-contact-02 .link-01 li:not(.type1) {
    font-size: 0.75rem;
    margin-top: 20px;
  }
  #page:not(.not-rwd) .main .box-contact-02 .link-01 li:not(.type1) a {
    padding: 5px 0;
  }
  #page:not(.not-rwd) .main .box-contact-02 .link-01 li:not(.type1) span {
    background-size: 27px 27px;
    padding-top: 35px;
  }
  #page:not(.not-rwd) .main .box-contact-02 .link-01 .type1 {
    font-size: 1rem;
    padding-right: 0;
  }
  #page:not(.not-rwd) .main .box-contact-02 .link-01 .type1 a {
    color: #333333;
  }
  #page:not(.not-rwd) .main .box-contact-02 .link-01 .type1 span {
    background-size: 30px 30px;
    padding: 17px 0 16px 42px;
  }
  #page:not(.not-rwd) .main .box-contact-02 .link-01 .type2, #page:not(.not-rwd) .main .box-contact-02 .link-01 .type3, #page:not(.not-rwd) .main .box-contact-02 .link-01 .type4 {
    padding: 0 1px;
  }
  #page:not(.not-rwd) .main .box-contact-02 br {
    display: block;
  }
}

/* --------------------------------------
 side - box-contact-02
-------------------------------------- */
.side .box-contact-02 {
  background: #eaf3f9;
  margin-top: 30px;
  padding: 15px 20px 20px 20px;
}

.side .box-contact-02 .title {
  font-weight: bold;
}

.side .box-contact-02 .box-contact-02-inner {
  margin-top: 15px;
}

.side .box-contact-02 .box-contact-02-inner > *:first-child {
  margin-top: 0;
}

.side .box-contact-02 .box-contact-02-inner > dl dt a {
  background: #0071c5;
  color: #ffffff;
  display: block;
  font-size: 1rem;
  line-height: 1.375;
  text-align: center;
}

.side .box-contact-02 .box-contact-02-inner > dl dt a span {
  color: #ffffff;
  display: inline-block;
  padding: 9px 15px 7px 15px;
  position: relative;
}

.side .box-contact-02 .box-contact-02-inner > dl dt a span::before {
  border-right: solid 2px #ffffff;
  border-top: solid 2px #ffffff;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  margin-top: -5px;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.side .box-contact-02 .box-contact-02-inner > dl dd {
  font-size: 0.875rem;
  margin-top: 15px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .side .box-contact-02 {
    margin-top: 40px;
    padding: 15px;
  }
  #page:not(.not-rwd) .side .box-contact-02 .box-contact-02-inner > dl dt a {
    font-size: 0.875rem;
  }
}

/* --------------------------------------
 box-contact-03
-------------------------------------- */
.box-contact-03 {
  margin-top: 40px;
}

.box-contact-03 .lead-01 {
  font-size: 1.125rem;
  margin-top: 0;
  text-align: center;
}

.box-contact-03 .data-01 {
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 30px;
}

.box-contact-03 .data-01 li {
  border-left: #cccccc 1px dashed;
  text-align: center;
  width: 50%;
}

.box-contact-03 .data-01 li + li {
  border-right: #cccccc 1px dashed;
}

.box-contact-03 .data-01 li b {
  color: #000000;
  display: block;
  font-family: Arial, Helvetica, "sans-serif";
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 10px;
  vertical-align: middle;
}

.box-contact-03 .data-01 li b span {
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", Meiryo, "メイリオ", Arial, sans-serif;
  font-size: 0.875rem;
}

.box-contact-03 .data-01 li .text {
  display: block;
  font-size: 0.75rem;
  margin-top: 3px;
}

.box-contact-03 .data-01 li .label {
  border: #0071c5 1px solid;
  border-radius: 50px;
  color: #0071c5;
  display: inline-block;
  font-size: 0.875rem;
  line-height: 1;
  margin-right: 17px;
  min-width: 180px;
  padding: 5px 0;
  text-align: center;
  vertical-align: middle;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-contact-03 {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .box-contact-03 .lead-01 {
    font-size: 0.875rem;
    text-align: left;
  }
  #page:not(.not-rwd) .box-contact-03 .data-01 {
    display: block;
    margin-top: 20px;
  }
  #page:not(.not-rwd) .box-contact-03 .data-01 li {
    border-left: 0;
    width: 100%;
  }
  #page:not(.not-rwd) .box-contact-03 .data-01 li + li {
    border-right: 0;
    margin-top: 20px;
  }
  #page:not(.not-rwd) .box-contact-03 .data-01 li .label {
    display: block;
  }
}

/* --------------------------------------
 box-timeline-01
-------------------------------------- */
.box-timeline-01 {
  margin-top: 40px;
}

.box-timeline-01 > .date {
  position: relative;
  width: 160px;
}

.box-timeline-01 > .date span {
  font-weight: bold;
}

.box-timeline-01 > .date::before {
  border-color: transparent transparent #dddddd transparent;
  border-style: solid;
  border-width: 0 51px 30px 51px;
  content: "";
  display: block;
  height: 0;
  left: 15px;
  position: absolute;
  top: 35px;
  width: 0;
}

.box-timeline-01 > .date::after {
  background: linear-gradient(to bottom, #dddddd 0, rgba(221, 221, 221, 0) 68%, rgba(221, 221, 221, 0) 100%);
  background: -webkit-linear-gradient(top, #dddddd 0, rgba(221, 221, 221, 0) 68%, rgba(221, 221, 221, 0) 100%);
  content: "";
  display: block;
  height: 100%;
  left: 36px;
  position: absolute;
  top: 65px;
  width: 60px;
}

.box-timeline-01 > .description {
  flex: 1;
}

:root .box-timeline-01 > .description > *:first-child {
  margin-top: 0;
}

.box-timeline-01 > .description .list-img {
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 -5px;
  text-align: center;
}

.box-timeline-01 > .description .list-img li {
  margin-top: 20px;
  padding: 0 5px;
}

@media only screen and (max-width: 838px) {
  #page:not(.not-rwd) .box-timeline-01 .lyt-image {
    display: block !important;
  }
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-timeline-01 {
    display: block;
    margin-top: 30px;
  }
  #page:not(.not-rwd) .box-timeline-01 > .date::before, #page:not(.not-rwd) .box-timeline-01 > .date::after {
    content: none;
  }
  #page:not(.not-rwd) .box-timeline-01 > .description {
    margin-top: 10px;
  }
  :root #page:not(.not-rwd) .box-timeline-01 > .description > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .box-timeline-01 > .description .list-img {
    margin-top: 20px;
  }
  #page:not(.not-rwd) .box-timeline-01 > .description .list-img li {
    margin-top: 10px;
  }
}

/* --------------------------------------
 box-important-01
-------------------------------------- */
.box-important-01 {
  background: #fef4f6;
  margin: 0 -20px;
  padding: 20px;
}

.box-important-01 .box-inner {
  align-items: center;
  background: #ffffff;
  border: #c50000 1px solid;
  margin: 0 auto;
  max-width: 1200px;
  padding: 13px 15px;
  width: 100%;
}

.box-important-01 .hdg-01 {
  color: #000000;
  text-align: center;
  width: 200px;
}

.box-important-01 .hdg-01 b {
  font-weight: bold;
}

.box-important-01 .data {
  border-left: #cccccc 1px solid;
  flex: 1;
  padding-left: 30px;
}

.box-important-01 .data > *:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  .box-important-01 {
    margin: 0 -15px;
    padding: 20px 15px;
  }
  .box-important-01 .box-inner {
    display: block;
    padding: 10px 15px;
  }
  .box-important-01 .hdg-01 {
    padding-bottom: 10px;
    text-align: left;
    width: 100%;
  }
  .box-important-01 .data {
    border-left: 0;
    border-top: #cccccc 1px solid;
    padding-left: 0;
    padding-top: 10px;
  }
}

/* --------------------------------------
 box-contact-01
-------------------------------------- */
.box-contact-01 {
  border: #cccccc 1px solid;
  margin-top: 30px;
  padding: 30px 40px 20px 40px;
}

.box-contact-01 > *:first-child {
  margin-top: 0;
}

.box-contact-01 .title {
  background: #f4f4f4;
  border-bottom: #cccccc 1px solid;
  margin: -30px -40px 0 -40px;
  padding: 20px 40px;
}

.box-contact-01 .tbl-definition-01 > thead > tr td, .box-contact-01 .tbl-definition-01 > tbody > tr td {
  padding-left: 0;
}

.box-contact-01 .tbl-definition-01 > thead > tr td::before, .box-contact-01 .tbl-definition-01 > tbody > tr td::before {
  content: none;
}

.box-contact-01 .tbl-definition-01 > thead > tr th, .box-contact-01 .tbl-definition-01 > tbody > tr th {
  font-weight: bold;
  padding-right: 20px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-contact-01 {
    margin-top: 20px;
    padding: 15px;
  }
  #page:not(.not-rwd) .box-contact-01 > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .box-contact-01 .title {
    margin: -15px -15px 0 -15px;
    padding: 15px;
  }
  #page:not(.not-rwd) .box-contact-01 .tbl-definition-01 {
    margin-top: 15px;
  }
  #page:not(.not-rwd) .box-contact-01 .tbl-definition-01 > thead > tr td, #page:not(.not-rwd) .box-contact-01 .tbl-definition-01 > tbody > tr td {
    padding-left: 0;
  }
  #page:not(.not-rwd) .box-contact-01 .tbl-definition-01 > thead > tr th, #page:not(.not-rwd) .box-contact-01 .tbl-definition-01 > tbody > tr th {
    padding-top: 0;
  }
}

/* --------------------------------------
 movie-type-01
-------------------------------------- */
.movie-type-01 {
  margin: 0 auto;
  max-height: 100%;
  max-width: 960px;
  padding-top: 56.25%;
  position: relative;
  width: 100%;
}

.movie-type-01 iframe {
  height: 100% !important;
  position: absolute;
  right: 0;
  top: 0;
  width: 100% !important;
}

@media only screen and (max-width: 768px) {
  .movie-type-01 {
    max-width: 100%;
  }
  .column .movie-type-01 {
    padding-top: 56.25%;
  }
}

/* --------------------------------------
 side - box-related-info-01
-------------------------------------- */
.side .box-related-info-01 {
  border: #cccccc 1px solid;
  margin-top: 30px;
  padding: 15px 20px 20px 20px;
}

.side .box-related-info-01 .box-related-info-01-inner .title {
  font-size: 1rem;
  font-weight: bold;
}

.side .box-related-info-01 .box-related-info-01-inner .title + * {
  margin-top: 15px;
}

.side .box-related-info-01 .box-related-info-01-inner * {
  font-size: 0.875rem;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li {
  font-size: 0.875rem;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li.over .text {
  flex: 1;
  padding-left: 15px;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li:not(.over) .lyt-image {
  margin-top: 0;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li:not(.over) .lyt-image .image {
  max-width: 60px;
  min-width: 60px;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li:not(.over) .lyt-image .text {
  flex: 1;
  padding-left: 15px;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li .link {
  margin-top: 5px;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li .link li + li {
  margin-top: 3px;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li .link a {
  color: #0071c5;
  text-decoration: underline;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li .link a:hover, .side .box-related-info-01 .box-related-info-01-inner .list > li .link a:focus {
  text-decoration: none;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li a .text {
  color: #333333;
  text-decoration: none;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li a .text b {
  color: #0071c5;
  text-decoration: underline;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li a:hover, .side .box-related-info-01 .box-related-info-01-inner .list > li a:focus {
  text-decoration: none;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li a:hover .text b, .side .box-related-info-01 .box-related-info-01-inner .list > li a:focus .text b {
  text-decoration: none;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li .image {
  text-align: center;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li .text b {
  display: block;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li .text > *:first-child {
  margin-top: 0;
}

.side .box-related-info-01 .box-related-info-01-inner .list > li + li {
  margin-top: 10px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .side .box-related-info-01 {
    margin-top: 40px;
    padding: 15px;
  }
  #page:not(.not-rwd) .side .box-related-info-01 .title {
    font-size: 0.875rem;
  }
  #page:not(.not-rwd) .side .box-related-info-01 .box-related-info-01-inner .text > *:first-child {
    margin-top: 0;
  }
}

/* --------------------------------------
 box-form-01
-------------------------------------- */
.box-form-01 {
  margin-top: 16px;
  position: relative;
}

.box-form-01::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  margin-top: -4px;
  pointer-events: none;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: rotate(135deg);
  width: 8px;
  will-change: transform;
}

.box-form-01 select::-ms-expand {
  display: none;
}

.box-form-01 .form-select-01 {
  background: #f4f4f4;
  color: #333333;
  display: block;
  padding: 10px 34px 8px 20px;
  width: 100%;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .box-form-01::before {
    right: 15px;
  }
  #page:not(.not-rwd) .box-form-01 .form-select-01 {
    padding: 10px 34px 8px 15px;
  }
}

/* --------------------------------------
 box-contact-bnr-01
-------------------------------------- */
.box-contact-bnr-01 {
  background: rgba(51, 51, 51, 0.6);
  bottom: 0;
  left: 0;
  padding: 12px 20px;
  position: fixed;
  width: 100%;
  z-index: 88;
}

.box-contact-bnr-01 .box-inner {
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
}

.box-contact-bnr-01 dl {
  width: 74%;
}

.box-contact-bnr-01 dl div {
  align-items: center;
  background: #cde5f2;
  border-radius: 5px;
  justify-content: center;
  min-height: 48px;
  padding: 0 5px;
}

.box-contact-bnr-01 dl dt {
  font-weight: bold;
}

.box-contact-bnr-01 dl dd {
  align-items: center;
  font-size: 0.875rem;
  justify-content: space-between;
  max-width: 530px;
  padding-left: 14px;
  width: 100%;
}

.box-contact-bnr-01 dl dd a {
  color: #000000;
  font-family: Arial, Helvetica, "sans-serif";
  font-size: 1.6875rem;
  font-weight: bold;
  text-decoration: none !important;
}

.box-contact-bnr-01 dl dd img {
  max-width: 37px;
  vertical-align: middle;
}

.box-contact-bnr-01 .btn {
  padding-left: 10px;
  width: 26%;
}

.box-contact-bnr-01 .btn a {
  background: #f8c901;
  border: #f8c901 2px solid;
  border-radius: 50px;
  color: #000000;
  display: block;
  font-weight: bold;
  padding: 8px 5px;
  text-align: center;
  text-decoration: none !important;
  transition: .2s background;
}

.box-contact-bnr-01 .btn a:hover, .box-contact-bnr-01 .btn a:focus {
  background: #ffffff;
}

@media only screen and (max-width: 838px) {
  .box-contact-bnr-01 dl div {
    padding-bottom: 7px;
    padding-top: 10px;
  }
  .box-contact-bnr-01 dl dd {
    display: block;
    width: auto;
  }
  .box-contact-bnr-01 dl dd a {
    display: block;
    line-height: 1;
  }
}

@media only screen and (max-width: 768px) {
  .box-contact-bnr-01 {
    background: #cde5f2;
    padding: 8px 5px 5px 5px;
  }
  .box-contact-bnr-01 .box-inner {
    display: block;
  }
  .box-contact-bnr-01 dl {
    width: 100%;
  }
  .box-contact-bnr-01 dl div {
    padding-bottom: 0;
    padding-top: 0;
  }
  .box-contact-bnr-01 dl dd {
    font-size: 0.75rem;
  }
  .box-contact-bnr-01 dl dd a {
    font-size: 1.5625rem;
  }
  .box-contact-bnr-01 .btn {
    padding-left: 0;
    width: 100%;
  }
}

/* ======================================
 layout
====================================== */
/* --------------------------------------
 catch-img-01
-------------------------------------- */
.catch-img-01 {
  margin-top: 20px;
  text-align: center;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .catch-img-01 {
    display: none;
  }
}

/* --------------------------------------
 lyt-image image-col1
-------------------------------------- */
.lyt-image {
  margin-top: 30px;
}

.lyt-image .caption {
  caption-side: bottom;
  color: #666666;
  display: table-caption;
  font-size: 0.875rem;
  margin-top: 5px;
  text-align: center;
}

.lyt-image .image {
  display: table;
}

.lyt-image .image p {
  display: table;
}

.lyt-image.image-float .caption {
  text-align: left;
}

.lyt-image.image-float .image {
  margin-bottom: 10px;
}

.lyt-image.image-float .image > *:first-child {
  margin-top: 0;
}

.lyt-image.image-float .text > *:first-child {
  margin-top: 0;
}

.lyt-image.image-float.float-L .image {
  float: left;
  margin-right: 40px;
}

.lyt-image.image-float.float-R .image {
  float: right;
  margin-left: 40px;
}

.lyt-image.image-parallel .caption {
  text-align: left;
}

.lyt-image.image-parallel .image > *:first-child {
  margin-top: 0;
}

.lyt-image.image-parallel .text {
  flex: 1;
}

.lyt-image.image-parallel .text > *:first-child {
  margin-top: 0;
}

.lyt-image.image-parallel.float-L .image {
  margin-right: 40px;
}

.lyt-image.image-parallel.float-R .text {
  order: 1;
}

.lyt-image.image-parallel.float-R .image {
  margin-left: 40px;
  order: 2;
}

.lyt-image.image-col1 {
  align-items: flex-start;
  justify-content: center;
}

.lyt-image.image-col1 .image img {
  max-width: 860px;
  width: 100%;
}

.lyt-image.image-col2 .lyt-image-inner {
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 -20px;
}

.lyt-image.image-col2 .image {
  display: table;
  padding: 0 20px;
  text-align: center;
  width: 50%;
}

.lyt-image.image-col3 .lyt-image-inner {
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 -20px;
}

.lyt-image.image-col3 .image {
  display: table;
  padding: 0 20px;
  text-align: center;
  width: 33.33333%;
}

.lyt-image.image-border .image img {
  border: #e6e6e6 1px solid;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .lyt-image .caption {
    font-size: 0.75rem;
  }
  #page:not(.not-rwd) .lyt-image.image-float .caption {
    text-align: center;
  }
  #page:not(.not-rwd) .lyt-image.image-float .text {
    margin-top: 20px;
  }
  #page:not(.not-rwd) .lyt-image.image-float .image {
    margin: 0 auto;
  }
  #page:not(.not-rwd) .lyt-image.image-float.float-L .image {
    float: none;
  }
  #page:not(.not-rwd) .lyt-image.image-float.float-R .image {
    float: none;
  }
  #page:not(.not-rwd) .lyt-image.image-parallel {
    display: block;
  }
  #page:not(.not-rwd) .lyt-image.image-parallel .caption {
    text-align: center;
  }
  #page:not(.not-rwd) .lyt-image.image-parallel .text {
    flex: none;
    margin-top: 20px;
  }
  #page:not(.not-rwd) .lyt-image.image-parallel .image {
    margin: 0 auto;
  }
  #page:not(.not-rwd) .lyt-image.image-col2 .lyt-image-inner {
    display: block;
    margin: 0;
  }
  #page:not(.not-rwd) .lyt-image.image-col2 .image {
    margin-top: 20px;
    padding: 0;
    width: 100%;
  }
  #page:not(.not-rwd) .lyt-image.image-col3 .lyt-image-inner {
    display: block;
    margin: 0;
  }
  #page:not(.not-rwd) .lyt-image.image-col3 .image {
    margin-top: 20px;
    padding: 0;
    width: 100%;
  }
}

/* --------------------------------------
 lyt-col2-01
-------------------------------------- */
.lyt-col2-01 {
  margin-top: 60px;
}

.lyt-col2-01.wide .lyt-col2-01-inner {
  margin: 0 -30px;
}

.lyt-col2-01.wide .lyt-col2-01-inner > .column {
  padding: 0 30px;
}

.lyt-col2-01 .lyt-col2-01-inner {
  flex-wrap: wrap;
  margin: 0 -20px;
}

.lyt-col2-01 .lyt-col2-01-inner > .column {
  flex-direction: column;
  padding: 0 20px;
  width: 50%;
}

.lyt-col2-01 .lyt-col2-01-inner > .column > *:first-child {
  margin-top: 0;
}

.lyt-col2-01 .lyt-col2-01-inner > .column:nth-child(n + 3) {
  margin-top: 40px;
}

.lyt-col2-01 .lyt-col2-01-inner > .column [class^="box-content-"] {
  flex-direction: column;
  height: 100%;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .lyt-col2-01 {
    margin-top: 40px;
  }
  #page:not(.not-rwd) .lyt-col2-01.wide .lyt-col2-01-inner {
    margin: 0;
  }
  #page:not(.not-rwd) .lyt-col2-01.wide .lyt-col2-01-inner > .column {
    padding: 0;
  }
  #page:not(.not-rwd) .lyt-col2-01 .lyt-col2-01-inner {
    display: block;
    margin: 0;
  }
  #page:not(.not-rwd) .lyt-col2-01 .lyt-col2-01-inner > .column {
    display: block;
    padding: 0;
    width: 100%;
  }
  #page:not(.not-rwd) .lyt-col2-01 .lyt-col2-01-inner > .column + .column {
    margin-top: 20px;
  }
  #page:not(.not-rwd) .lyt-col2-01 .lyt-col2-01-inner > .column [class^="box-content-"] {
    display: block;
    height: auto;
  }
}

/* --------------------------------------
 lyt-col2-04
-------------------------------------- */
.lyt-col2-04 {
  flex-wrap: wrap;
  margin: 40px -20px 0 -20px;
}

.lyt-col2-04 .column-L {
  padding: 0 20px;
  width: 60%;
}

.lyt-col2-04 .column-R {
  padding: 0 20px;
  width: 40%;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .lyt-col2-04 {
    display: block;
    margin: 20px 0 0 0;
  }
  #page:not(.not-rwd) .lyt-col2-04 .column-L, #page:not(.not-rwd) .lyt-col2-04 .column-R {
    padding: 0;
    width: 100%;
  }
  #page:not(.not-rwd) .lyt-col2-04 .column-R {
    margin-top: 20px;
  }
}

/* --------------------------------------
 lyt-col2-05
-------------------------------------- */
.lyt-col2-05 {
  flex-wrap: wrap;
  margin: 40px -20px 0 -20px;
}

.lyt-col2-05.indent .column-L p {
  text-indent: 1em;
}

.lyt-col2-05 .column-L {
  padding: 0 20px;
  width: 75%;
}

.lyt-col2-05 .column-R {
  padding: 0 20px;
  width: 25%;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .lyt-col2-05 {
    display: block;
    margin: 20px 0 0 0;
  }
  #page:not(.not-rwd) .lyt-col2-05 .column-L, #page:not(.not-rwd) .lyt-col2-05 .column-R {
    padding: 0;
    width: 100%;
  }
  #page:not(.not-rwd) .lyt-col2-05 .column-R {
    margin-top: 20px;
  }
}

/* --------------------------------------
 lyt-col2-07
-------------------------------------- */
.lyt-col2-07 {
  flex-wrap: wrap;
  margin: 40px -20px 0 -20px;
}

.lyt-col2-07.indent .column-L p {
  text-indent: 1em;
}

.lyt-col2-07 .column-L {
  padding: 0 20px;
  width: 25%;
}

.lyt-col2-07 .column-L > *:first-child {
  margin-top: 0;
}

.lyt-col2-07 .column-R {
  padding: 0 20px;
  width: 75%;
}

.lyt-col2-07 .column-R > *:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .lyt-col2-07 {
    display: block;
    margin: 20px 0 0 0;
  }
  #page:not(.not-rwd) .lyt-col2-07 .column-L, #page:not(.not-rwd) .lyt-col2-07 .column-R {
    padding: 0;
    width: 100%;
  }
  #page:not(.not-rwd) .lyt-col2-07 .column-L > *:first-child, #page:not(.not-rwd) .lyt-col2-07 .column-R > *:first-child {
    margin-top: 0;
  }
  #page:not(.not-rwd) .lyt-col2-07 .column-R {
    margin-top: 20px;
  }
}

/* --------------------------------------
 lyt-col3-01
-------------------------------------- */
.lyt-col3-01 {
  margin-top: 60px;
}

.lyt-col3-01 .lyt-col3-01-inner {
  flex-wrap: wrap;
  margin: 0 -20px;
}

.lyt-col3-01 .lyt-col3-01-inner > .column {
  flex-direction: column;
  padding: 0 20px;
  width: 33.33333%;
}

.lyt-col3-01 .lyt-col3-01-inner > .column > *:first-child {
  margin-top: 0;
}

.lyt-col3-01 .lyt-col3-01-inner > .column:nth-child(n + 4) {
  margin-top: 40px;
}

.lyt-col3-01 .lyt-col3-01-inner > .column [class^="box-content-"] {
  flex-direction: column;
  height: 100%;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .lyt-col3-01 {
    margin-top: 40px;
  }
  #page:not(.not-rwd) .lyt-col3-01 .lyt-col3-01-inner {
    display: block;
    margin: 0;
  }
  #page:not(.not-rwd) .lyt-col3-01 .lyt-col3-01-inner > .column {
    display: block;
    padding: 0;
    width: 100%;
  }
  #page:not(.not-rwd) .lyt-col3-01 .lyt-col3-01-inner > .column + .column {
    margin-top: 20px;
  }
  #page:not(.not-rwd) .lyt-col3-01 .lyt-col3-01-inner > .column [class^="box-content-"] {
    display: block;
    height: auto;
  }
}

/* --------------------------------------
 lyt-map-01
-------------------------------------- */
.lyt-map-01 p {
  text-align: center;
}

/* --------------------------------------
 lyt-line-01
-------------------------------------- */
.lyt-line-01 {
  border-top: #cccccc 1px solid;
  margin-top: 40px;
  padding-top: 30px;
}

:root .lyt-line-01 > *:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .lyt-line-01 {
    margin-top: 20px;
    padding-top: 20px;
  }
}

/* --------------------------------------
 lyt-line-02
-------------------------------------- */
.lyt-line-02 {
  border-top: #cccccc 1px dashed;
  margin-top: 40px;
  padding-top: 30px;
}

:root .lyt-line-02 > *:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .lyt-line-02 {
    margin-top: 20px;
    padding-top: 20px;
  }
}

/* --------------------------------------
 lyt-related-info-01
-------------------------------------- */
.lyt-related-info-01 {
  border-top: #cccccc 1px solid;
  margin-top: 40px;
  padding-top: 30px;
}

.lyt-related-info-01 .title {
  color: #000000;
  font-size: 1.5rem;
  font-weight: bold;
}

.lyt-related-info-01 .data {
  flex-wrap: wrap;
  margin: 0 -10px;
}

.lyt-related-info-01 .data .column {
  margin-top: 15px;
  padding: 0 10px;
  width: 25%;
}

.lyt-related-info-01 .image {
  padding-right: 10px;
}

.lyt-related-info-01 .text {
  flex: 1;
}

.lyt-related-info-01 .text a {
  display: block;
  text-decoration: underline;
}

.lyt-related-info-01 .text a:hover, .lyt-related-info-01 .text a:focus {
  text-decoration: none;
}

@media only screen and (max-width: 1024px) {
  #page:not(.not-rwd) .lyt-related-info-01 .data .column {
    width: 50%;
  }
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .lyt-related-info-01 {
    margin-top: 30px;
    padding-top: 20px;
  }
  #page:not(.not-rwd) .lyt-related-info-01 .title {
    font-size: 1.25rem;
  }
  #page:not(.not-rwd) .lyt-related-info-01 .data {
    display: block;
  }
  #page:not(.not-rwd) .lyt-related-info-01 .data .column {
    width: 100%;
  }
  #page:not(.not-rwd) .lyt-related-info-01 .data .column + .column {
    margin-top: 10px;
  }
}

/* ======================================
 button
====================================== */
/* --------------------------------------
 btn-popup-01
-------------------------------------- */
.btn-popup-01 {
  margin-top: 60px;
  text-align: center;
}

.btn-popup-01 button {
  border: #cccccc 1px solid;
  color: #333333;
  display: inline-block;
  min-width: 360px;
  padding: 10px 5px;
}

.btn-popup-01 button:hover span, .btn-popup-01 button:focus span {
  text-decoration: underline;
}

.btn-popup-01 button span {
  display: inline-block;
  padding-left: 32px;
  position: relative;
}

.btn-popup-01 button span::before {
  background: #0071c5;
  content: "";
  display: block;
  height: 22px;
  left: 0;
  margin-top: -11px;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 2px;
  will-change: transform;
}

.btn-popup-01 button span::after {
  background: #0071c5;
  content: "";
  display: block;
  height: 22px;
  left: 0;
  margin-top: -11px;
  position: absolute;
  top: 50%;
  transform: rotate(-45deg);
  width: 2px;
  will-change: transform;
}

@media only screen and (max-width: 768px) {
  .btn-popup-01 button {
    min-width: auto;
    width: 100%;
  }
}

/* ======================================
 table
====================================== */
/* --------------------------------------
 tbl-data-01
-------------------------------------- */
.tbl-data-01 {
  border-collapse: separate;
  border-right: #dddddd 1px solid;
  border-spacing: 0;
  border-top: #dddddd 1px solid;
  margin-top: 30px;
  width: 100%;
  word-break: break-all;
}

.tbl-data-01.liquid {
  width: auto;
}

.tbl-data-01 > caption {
  background: #f4f4f4;
  border-left: #dddddd 1px solid;
  border-right: #dddddd 1px solid;
  border-top: #dddddd 1px solid;
  font-weight: bold;
  padding: 17px 30px 13px 30px;
  text-align: center;
}

.tbl-data-01 > thead > tr th, .tbl-data-01 > thead > tr td {
  background: #f4f4f4;
  font-weight: bold;
  text-align: center;
  vertical-align: top;
}

.tbl-data-01 > tbody > tr th, .tbl-data-01 > tbody > tr td {
  text-align: left;
}

.tbl-data-01 > tbody > tr th {
  background: #f4f4f4;
  font-weight: bold;
}

.tbl-data-01 > thead > tr th, .tbl-data-01 > thead > tr td, .tbl-data-01 > tbody > tr th, .tbl-data-01 > tbody > tr td {
  border-bottom: #dddddd 1px solid;
  border-left: #dddddd 1px solid;
  padding: 17px 30px 13px 30px;
}

.tbl-data-01 > thead > tr th > *:first-child, .tbl-data-01 > thead > tr td > *:first-child, .tbl-data-01 > tbody > tr th > *:first-child, .tbl-data-01 > tbody > tr td > *:first-child {
  margin-top: 0;
}

.tbl-data-01 .cell-colored-01 {
  background: #ecf5fb;
}

.tbl-data-01 .cell-colored-02 {
  background: #fef4f6;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .tbl-data-01 > caption {
    padding: 12px 15px 10px 15px;
  }
  #page:not(.not-rwd) .tbl-data-01 > thead > tr th, #page:not(.not-rwd) .tbl-data-01 > thead > tr td, #page:not(.not-rwd) .tbl-data-01 > tbody > tr th, #page:not(.not-rwd) .tbl-data-01 > tbody > tr td {
    padding: 12px 15px 10px 15px;
  }
}

/* --------------------------------------
 tbl-data-02
-------------------------------------- */
.tbl-data-02 {
  border-collapse: separate;
  border-spacing: 0;
  margin-top: 30px;
  width: 100%;
  word-break: break-all;
}

.tbl-data-02 > tbody > tr > th {
  background: #f4f4f4;
  border-right: #ffffff 10px solid;
  border-top: #ffffff 4px solid;
  text-align: left;
  vertical-align: top;
}

.tbl-data-02 > tbody > tr > th > span {
  display: block;
  font-weight: bold;
  padding: 16px 20px 14px 30px;
}

.tbl-data-02 > tbody > tr > td {
  border-bottom: #dddddd 1px solid;
  padding: 17px 20px 13px 20px;
}

.tbl-data-02 > tbody > tr > td > *:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .tbl-data-02 {
    display: block;
  }
  #page:not(.not-rwd) .tbl-data-02 > tbody {
    display: block;
    width: 100%;
  }
  #page:not(.not-rwd) .tbl-data-02 > tbody > tr {
    display: block;
    width: 100%;
  }
  #page:not(.not-rwd) .tbl-data-02 > tbody > tr > th {
    display: block;
    text-align: center;
    width: 100% !important;
  }
  #page:not(.not-rwd) .tbl-data-02 > tbody > tr > th > span {
    border-right: 0;
    border-top: #ffffff 15px solid;
    display: block;
    padding: 12px 15px 10px 15px;
  }
  #page:not(.not-rwd) .tbl-data-02 > tbody > tr > td {
    display: block;
    padding: 12px 15px 10px 15px;
    width: 100% !important;
  }
}

/* --------------------------------------
 tbl-data-03
-------------------------------------- */
.tbl-data-03 {
  border-collapse: separate;
  border-right: #dddddd 1px solid;
  border-spacing: 0;
  border-top: #dddddd 1px solid;
  margin-top: 30px;
  width: 100%;
  word-break: break-all;
}

.tbl-data-03.liquid {
  width: auto;
}

.tbl-data-03 > tbody > tr th, .tbl-data-03 > tbody > tr td {
  text-align: left;
  vertical-align: top;
}

.tbl-data-03 > thead > tr th, .tbl-data-03 > thead > tr td, .tbl-data-03 > tbody > tr th, .tbl-data-03 > tbody > tr td {
  border-bottom: #dddddd 1px solid;
  border-left: #dddddd 1px solid;
  padding: 17px 30px 13px 30px;
}

.tbl-data-03 > thead > tr th > *:first-child, .tbl-data-03 > thead > tr td > *:first-child, .tbl-data-03 > tbody > tr th > *:first-child, .tbl-data-03 > tbody > tr td > *:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .tbl-data-03 > thead > tr th, #page:not(.not-rwd) .tbl-data-03 > thead > tr td, #page:not(.not-rwd) .tbl-data-03 > tbody > tr th, #page:not(.not-rwd) .tbl-data-03 > tbody > tr td {
    padding: 12px 15px 10px 15px;
  }
}

/* --------------------------------------
 tbl-definition-01
-------------------------------------- */
.tbl-definition-01 {
  border-collapse: separate;
  border-spacing: 0;
  margin-top: 30px;
  width: 100%;
  word-break: break-all;
}

.tbl-definition-01 > thead > tr th, .tbl-definition-01 > thead > tr td, .tbl-definition-01 > tbody > tr th, .tbl-definition-01 > tbody > tr td {
  text-align: left;
  vertical-align: top;
}

.tbl-definition-01 > thead > tr th > *:first-child, .tbl-definition-01 > thead > tr td > *:first-child, .tbl-definition-01 > tbody > tr th > *:first-child, .tbl-definition-01 > tbody > tr td > *:first-child {
  margin-top: 0;
}

.tbl-definition-01 > thead > tr th, .tbl-definition-01 > tbody > tr th {
  padding: 7px 20px 3px 0;
}

.tbl-definition-01 > thead > tr td, .tbl-definition-01 > tbody > tr td {
  padding: 7px 0 3px 20px;
  position: relative;
}

.tbl-definition-01 > thead > tr td::before, .tbl-definition-01 > tbody > tr td::before {
  background: #cccccc;
  content: "";
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  top: 19px;
  width: 8px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .tbl-definition-01 > thead > tr, #page:not(.not-rwd) .tbl-definition-01 > tbody > tr {
    display: block;
    width: 100%;
  }
  #page:not(.not-rwd) .tbl-definition-01 > thead > tr th, #page:not(.not-rwd) .tbl-definition-01 > tbody > tr th {
    display: block;
    padding: 12px 0 5px 0;
    width: 100%;
  }
  #page:not(.not-rwd) .tbl-definition-01 > thead > tr td, #page:not(.not-rwd) .tbl-definition-01 > tbody > tr td {
    display: block;
    padding: 0 0 10px 15px;
    width: 100%;
  }
  #page:not(.not-rwd) .tbl-definition-01 > thead > tr td::before, #page:not(.not-rwd) .tbl-definition-01 > tbody > tr td::before {
    top: 10px;
  }
}

/* ======================================
 javascript
====================================== */
/* --------------------------------------
 modal
-------------------------------------- */
body.js-modal-body {
  position: relative;
}

.box-modal-01 {
  -webkit-font-smoothing: subpixel-antialiased;
  padding: 54px 20px;
  -webkit-transform: translateZ(0) scale(1, 1);
}

.box-modal-01 .inner {
  background: #ffffff;
  box-shadow: 0 2px 10px #0000001a;
  -webkit-font-smoothing: subpixel-antialiased;
  margin-top: 50px;
  max-height: calc(100vh - 80px);
  overflow-y: auto;
  padding: 32px 30px 0 30px;
  position: relative;
  -webkit-transform: translateZ(0) scale(1, 1);
}

.box-modal-01 .inner * {
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-transform: translateZ(0) scale(1, 1);
}

.box-modal-01 .inner::after {
  content: "";
  display: block;
  height: 30px;
}

.box-modal-01 .inner > *:first-child {
  margin-top: 0;
}

.box-modal-01 .modal-hdg-01 {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
}

.box-modal-01 .modal-hdg-01 br:not(.block) {
  display: none;
}

.box-modal-01 .modal-hdg-01 + * {
  margin-top: 30px;
}

.box-modal-01 .btn-close {
  display: block;
  height: 34px;
  overflow: hidden;
  position: absolute;
  right: 1px;
  top: 1px;
  width: 34px;
}

.box-modal-01 .btn-close span {
  display: block;
  height: 34px;
  position: relative;
  width: 34px;
}

.box-modal-01 .btn-close span::before {
  background: #0071c5;
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  right: 5px;
  top: 16px;
  transform: rotate(45deg);
  width: 24px;
}

.box-modal-01 .btn-close span::after {
  background: #0071c5;
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  right: 5px;
  top: 16px;
  transform: rotate(-45deg);
  width: 24px;
}

.box-modal-01 .btn-close span span {
  position: absolute;
  right: -999em;
}

@media only screen and (max-width: 768px) {
  .box-modal-01 {
    padding: 54px 20px;
  }
  .box-modal-01 .modal-hdg-01 {
    font-size: 1.25rem;
  }
  .box-modal-01 .modal-hdg-01 br {
    display: block;
  }
  .box-modal-01 .inner {
    padding: 30px 20px 0 20px;
  }
  .box-modal-01 .inner::after {
    height: 30px;
  }
}

/* --------------------------------------
 btn-more
-------------------------------------- */
.btn-more {
  margin-top: 60px;
  text-align: center;
}

.btn-more + .nav-btn-01 {
  margin-top: 20px;
}

.btn-more a, .btn-more button {
  background: #ffffff;
  border: #cccccc 1px solid;
  color: #333333;
  display: inline-block;
  min-width: 360px;
  padding: 10px 5px 8px 5px;
  text-align: center;
  text-decoration: none !important;
}

.btn-more a:hover, .btn-more a:focus, .btn-more button:hover, .btn-more button:focus {
  text-decoration: underline !important;
}

.btn-more a:hover *, .btn-more a:focus *, .btn-more button:hover *, .btn-more button:focus * {
  text-decoration: underline !important;
}

.btn-more a span, .btn-more button span {
  display: inline-block;
  padding-left: 15px;
  position: relative;
}

.btn-more a span::before, .btn-more button span::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

@media only screen and (max-width: 1024px) {
  .btn-more a, .btn-more button {
    min-width: 240px;
  }
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .btn-more {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .btn-more a, #page:not(.not-rwd) .btn-more button {
    min-width: auto;
    width: 100%;
  }
}

/* --------------------------------------
 top-tab-01
-------------------------------------- */
.top-hdg-01 {
  color: #000000;
  font-size: 2rem;
}

@media only screen and (max-width: 768px) {
  .top-hdg-01 {
    font-size: 1.4375rem;
  }
}

:root .lyt-col2-01 .link-news-01 li {
  display: block;
}

.lyt-col2-01 .parallel {
  justify-content: space-between;
}

.lyt-col2-01 .parallel .list-link-right-01 .rss {
  background: url("/common_rwd/images/icon_rss_01.gif") no-repeat left center;
  margin-left: 0;
  padding-left: 23px;
}

.lyt-col2-01 .parallel .list-link-right-01 .rss::before {
  content: none;
}

.lyt-col2-01 .parallel .list-link-right-01 li + li {
  margin-left: 20px;
}

.lyt-col2-01 .top-tab-01 {
  margin-top: 30px;
}

.lyt-col2-01 .top-tab-01 .top-tab-nav {
  flex-wrap: wrap;
}

.lyt-col2-01 .top-tab-01 .top-tab-nav li {
  padding-right: 1px;
  width: 33.33333%;
}

.lyt-col2-01 .top-tab-01 .top-tab-nav a {
  background: #f3f3f3;
  border-top: #f3f3f3 2px solid;
  color: #333333;
  display: block;
  padding: 8px 0 10px 0;
  text-align: center;
}

.lyt-col2-01 .top-tab-01 .top-tab-nav .active {
  background: #ffffff;
  border-color: #0071c5;
}

@media only screen and (max-width: 768px) {
  .lyt-col2-01 .top-tab-01 .parallel {
    align-items: flex-end;
    flex-direction: column;
  }
  .lyt-col2-01 .top-tab-01 .top-tab-01 {
    margin-top: 20px;
  }
}

/* --------------------------------------
 set-tab
-------------------------------------- */
.set-tab .set-tab-item {
  display: none;
}

.set-tab .set-tab-item.active {
  display: block;
}

.set-tab .set-tab-nav a {
  overflow: hidden;
  position: relative;
}

.set-tab .set-tab-nav a .set-active {
  position: absolute;
  z-index: -1;
}

/* --------------------------------------
 toggle
-------------------------------------- */
.js-toggle-01 .toggle-ui button {
  color: #000000;
  display: block;
  position: relative;
  text-align: left;
  width: 100%;
}

.js-toggle-01 .toggle-ui button::before {
  background: #0071c5;
  border: #0071c5 1px solid;
  content: "";
  display: block;
  height: 24px;
  margin-top: -12px;
  position: absolute;
  right: 0;
  top: 50%;
  width: 24px;
}

.js-toggle-01 .toggle-ui button span {
  display: block;
  padding-right: 33px;
  position: relative;
}

.js-toggle-01 .toggle-ui button span::before, .js-toggle-01 .toggle-ui button span::after {
  background: #ffffff;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
}

.js-toggle-01 .toggle-ui button span::before {
  height: 2px;
  margin-top: -1px;
  right: 6px;
  width: 12px;
}

.js-toggle-01 .toggle-ui button span::after {
  height: 12px;
  margin-top: -6px;
  right: 11px;
  width: 2px;
}

.js-toggle-01 .toggle-ui button[aria-expanded=true]::before {
  background: #ffffff;
}

.js-toggle-01 .toggle-ui button[aria-expanded=true] span::before {
  background: #0071c5;
}

.js-toggle-01 .toggle-ui button[aria-expanded=true] span::after {
  content: none;
}

/* ======================================
 nav
====================================== */
/* --------------------------------------
 nav-local
-------------------------------------- */
#nav-local .title-01, #nav-local .only > li {
  background: #0071c5;
  border-bottom: 0;
  color: #ffffff;
}

#nav-local .title-01 > a, #nav-local .only > li > a {
  color: #ffffff;
  padding: 0 20px;
}

#nav-local .title-01 > a span, #nav-local .only > li > a span {
  align-items: center;
  min-height: 80px;
  padding: 13px 0 7px 15px;
  position: relative;
  width: 100%;
}

#nav-local .title-01 > a span::before, #nav-local .only > li > a span::before {
  border-right: solid 2px #ffffff;
  border-top: solid 2px #ffffff;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

#nav-local .title-02 {
  border-bottom: #b7b7b7 1px dashed;
  padding: 17px 20px 15px 38px;
  position: relative;
}

#nav-local .title-02::before {
  background: #0071c5;
  border-radius: 12px;
  content: "";
  display: block;
  height: 6px;
  left: 20px;
  margin-top: -3px;
  position: absolute;
  top: 50%;
  width: 6px;
}

#nav-local > ul.news > li > ul {
  display: none;
}

#nav-local > ul > li {
  border-bottom: #b7b7b7 1px dashed;
}

#nav-local > ul > li > a {
  padding: 17px 20px 15px 38px;
}

#nav-local > ul > li ul {
  padding-bottom: 10px;
  padding-top: 10px;
}

#nav-local > ul > li > ul {
  border-top: #b7b7b7 1px dashed;
}

#nav-local > ul > li > ul li a, #nav-local > ul > li > ul li button {
  padding-bottom: 5px;
  padding-top: 5px;
}

#nav-local ul .selected > a {
  background: #f3f3f3;
  font-weight: bold;
}

#nav-local ul .selected > a::before {
  content: none;
}

#nav-local ul .selected > a::after {
  background: #333333;
  content: "";
  display: block;
  height: 1px;
  left: 18px;
  margin-top: -1px;
  position: absolute;
  top: 50%;
  width: 10px;
}

#nav-local ul li a, #nav-local ul li button {
  color: #333333;
  display: block;
  position: relative;
}

#nav-local ul li a::before, #nav-local ul li button::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 18px;
  margin-top: -4px;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

#nav-local ul li .current {
  background: #f3f3f3;
  font-weight: bold;
}

#nav-local ul li .current::before {
  content: none;
}

#nav-local ul li .current::after {
  background: #333333;
  content: "";
  display: block;
  height: 1px;
  left: 18px;
  margin-top: -1px;
  position: absolute;
  top: 50%;
  width: 10px;
}

#nav-local ul li .current + ul {
  display: block;
}

#nav-local ul li button {
  text-align: left;
  width: 100%;
}

#nav-local ul li button::before {
  margin-top: -4px;
  transform: rotate(135deg);
}

#nav-local ul li button[aria-expanded="true"]::before {
  transform: rotate(-45deg);
}

#nav-local ul li button + .detail {
  display: none;
}

#nav-local ul li ul {
  font-size: 0.875rem;
  padding-left: 20px;
  padding-right: 20px;
}

#nav-local ul li ul a, #nav-local ul li ul button {
  padding: 0 20px 0 38px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) #nav-local .title-01, #page:not(.not-rwd) #nav-local .only > li {
    background: none;
    border-bottom: #dddddd 1px solid;
    border-top: #0071c5 2px solid;
    color: #333333;
    font-size: 0.9375rem;
  }
  #page:not(.not-rwd) #nav-local .title-01 > a, #page:not(.not-rwd) #nav-local .only > li > a {
    color: #333333;
    padding: 0;
  }
  #page:not(.not-rwd) #nav-local .title-01 > a::before, #page:not(.not-rwd) #nav-local .only > li > a::before {
    content: none;
  }
  #page:not(.not-rwd) #nav-local .title-01 > a span, #page:not(.not-rwd) #nav-local .only > li > a span {
    font-weight: bold;
    min-height: 60px;
    padding-top: 10px;
  }
  #page:not(.not-rwd) #nav-local .title-01 > a span::before, #page:not(.not-rwd) #nav-local .only > li > a span::before {
    border-right: solid 2px #0071c5;
    border-top: solid 2px #0071c5;
    margin-top: -1px;
  }
  #page:not(.not-rwd) #nav-local .title-02 {
    border-bottom: #dddddd 1px solid;
    padding: 14px 20px 12px 38px;
  }
  #page:not(.not-rwd) #nav-local > ul > li {
    border-bottom: #dddddd 1px solid;
  }
  #page:not(.not-rwd) #nav-local > ul > li > a {
    padding: 14px 20px 12px 38px;
  }
  #page:not(.not-rwd) #nav-local > ul > li > ul {
    border-top: #dddddd 1px solid;
  }
}

/* --------------------------------------
 nav-btn-01
-------------------------------------- */
.nav-btn-01 {
  margin-top: 60px;
  text-align: center;
}

.nav-btn-01 + .nav-btn-01 {
  margin-top: 20px;
}

.nav-btn-01.type1 a, .nav-btn-01.type1 button {
  background: #0071c5;
  border: #0071c5;
  color: #ffffff;
}

.nav-btn-01.type1 a span::before, .nav-btn-01.type1 button span::before {
  border-color: #ffffff;
}

.nav-btn-01.type2 a, .nav-btn-01.type2 button {
  background: #c50000;
  border: #c50000;
  color: #ffffff;
}

.nav-btn-01.type2 a span::before, .nav-btn-01.type2 button span::before {
  border-color: #ffffff;
}

.nav-btn-01.small-01 a, .nav-btn-01.small-01 button {
  max-width: 360px;
  min-width: auto;
  width: 100%;
}

.nav-btn-01 a, .nav-btn-01 button {
  background: #ffffff;
  border: #cccccc 1px solid;
  color: #333333;
  display: inline-block;
  min-width: 360px;
  padding: 10px 5px 8px 5px;
  text-align: center;
  text-decoration: none !important;
}

.nav-btn-01 a:hover, .nav-btn-01 a:focus, .nav-btn-01 button:hover, .nav-btn-01 button:focus {
  text-decoration: underline !important;
}

.nav-btn-01 a:hover *, .nav-btn-01 a:focus *, .nav-btn-01 button:hover *, .nav-btn-01 button:focus * {
  text-decoration: underline !important;
}

.nav-btn-01 a span, .nav-btn-01 button span {
  display: inline-block;
  padding-left: 15px;
  position: relative;
}

.nav-btn-01 a span::before, .nav-btn-01 button span::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

@media only screen and (max-width: 1024px) {
  .nav-btn-01 a, .nav-btn-01 button {
    min-width: 240px;
  }
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .nav-btn-01 {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .nav-btn-01.small-01 a, #page:not(.not-rwd) .nav-btn-01.small-01 button {
    max-width: 100%;
  }
  #page:not(.not-rwd) .nav-btn-01 a, #page:not(.not-rwd) .nav-btn-01 button {
    min-width: auto;
    width: 100%;
  }
}

/* --------------------------------------
 nav-btn-02
-------------------------------------- */
.nav-btn-02 {
  margin-top: 60px;
  text-align: center;
}

.nav-btn-02 a, .nav-btn-02 button {
  background: #c50000;
  border: #c50000 1px solid;
  color: #ffffff;
  display: inline-block;
  min-width: 360px;
  padding: 10px 5px 8px 5px;
  text-align: center;
}

.nav-btn-02 a:hover span, .nav-btn-02 a:focus span, .nav-btn-02 button:hover span, .nav-btn-02 button:focus span {
  text-decoration: underline;
}

.nav-btn-02 a span, .nav-btn-02 button span {
  display: inline-block;
  padding-left: 15px;
  position: relative;
}

.nav-btn-02 a span::before, .nav-btn-02 button span::before {
  border-right: solid 2px #ffffff;
  border-top: solid 2px #ffffff;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

@media only screen and (max-width: 1024px) {
  .nav-btn-02 a, .nav-btn-02 button {
    min-width: 240px;
  }
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .nav-btn-02 {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .nav-btn-02 a, #page:not(.not-rwd) .nav-btn-02 button {
    min-width: auto;
    width: 100%;
  }
}

/* --------------------------------------
 .nav-plugin-01
-------------------------------------- */
.nav-plugin-01 {
  margin-top: 40px;
}

:root .nav-plugin-01 a {
  text-decoration: none;
}

:root .nav-plugin-01 a:hover, :root .nav-plugin-01 a:focus {
  text-decoration: underline;
}

.nav-plugin-01 a {
  color: #333333;
}

.nav-plugin-01 a .text {
  padding-left: 40px;
}

.nav-plugin-01 a .text > *:first-child {
  margin-top: 0 !important;
}

.nav-plugin-01 a .text .list-link-01 {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .nav-plugin-01 {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .nav-plugin-01 .banner {
    min-width: 110px;
  }
  #page:not(.not-rwd) .nav-plugin-01 .text {
    padding-left: 20px;
  }
}

/* --------------------------------------
 nav-page-02
-------------------------------------- */
.nav-page-02 {
  flex-wrap: wrap;
  margin: 15px -14px 0 -14px;
  padding-bottom: 8px;
}

.nav-page-02 li {
  margin-top: 5px;
  padding: 0 14px;
}

.nav-page-02 li a {
  color: #333333;
  display: block;
  padding-left: 18px;
  position: relative;
}

.nav-page-02 li a::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(135deg);
  width: 8px;
  will-change: transform;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .nav-page-02 {
    margin: 10px -10px 0 -10px;
  }
  #page:not(.not-rwd) .nav-page-02 li {
    padding: 0 10px;
  }
  #page:not(.not-rwd) .nav-page-02 li a::before {
    top: 7px;
  }
}

/* --------------------------------------
 nav-page-03
-------------------------------------- */
.nav-page-03 {
  border-top: #dddddd 1px solid;
  flex-wrap: wrap;
  margin-top: 30px;
}

.nav-page-03.col-2 li {
  width: 50%;
}

.nav-page-03.col-2 li:nth-child(3n)::before {
  content: none;
}

.nav-page-03.col-3 li {
  width: 33.33333%;
}

.nav-page-03.col-3 li:nth-child(4n)::before {
  content: none;
}

.nav-page-03.col-4 li {
  width: 25%;
}

.nav-page-03.col-4 li:nth-child(5n)::before {
  content: none;
}

.nav-page-03.col-5 li {
  width: 20%;
}

.nav-page-03.col-5 li:nth-child(6n)::before {
  content: none;
}

.nav-page-03.col-6 li {
  width: 16.66667%;
}

.nav-page-03.col-6 li:nth-child(7n)::before {
  content: none;
}

.nav-page-03 li {
  border-bottom: #dddddd 1px solid;
  position: relative;
}

.nav-page-03 li a {
  align-items: center;
  color: #333333;
  justify-content: center;
  padding: 10px 20px;
  text-align: center;
  width: 100%;
}

.nav-page-03 li a span {
  display: block;
  padding-left: 18px;
  position: relative;
}

.nav-page-03 li a span::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  margin-top: -4px;
  position: absolute;
  top: 50%;
  transform: rotate(135deg);
  width: 8px;
  will-change: transform;
}

.nav-page-03 li + li::before {
  border-left: #dddddd 1px dashed;
  content: "";
  display: block;
  height: 18px;
  left: 0;
  margin-top: -9px;
  position: absolute;
  top: 50%;
  width: 1px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .nav-page-03 {
    border-bottom: #dddddd 1px solid;
  }
  #page:not(.not-rwd) .nav-page-03.col-3, #page:not(.not-rwd) .nav-page-03.col-4, #page:not(.not-rwd) .nav-page-03.col-5, #page:not(.not-rwd) .nav-page-03.col-6 {
    display: block;
  }
  #page:not(.not-rwd) .nav-page-03.col-3 li, #page:not(.not-rwd) .nav-page-03.col-4 li, #page:not(.not-rwd) .nav-page-03.col-5 li, #page:not(.not-rwd) .nav-page-03.col-6 li {
    width: 100%;
  }
  #page:not(.not-rwd) .nav-page-03 li {
    border-style: dashed;
    border-top: 0;
    display: block;
  }
  #page:not(.not-rwd) .nav-page-03 li + li::before {
    content: none;
  }
  #page:not(.not-rwd) .nav-page-03 li:last-child {
    border-bottom: 0;
  }
  #page:not(.not-rwd) .nav-page-03 li a {
    display: block;
    padding-left: 0;
    text-align: left;
  }
}

/* --------------------------------------
 nav-home-01
-------------------------------------- */
.nav-home-01 {
  margin-top: 60px;
}

.nav-home-01 li {
  padding-left: 15px;
  position: relative;
}

.nav-home-01 li::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 9px;
  transform: rotate(-135deg);
  width: 8px;
  will-change: transform;
}

.nav-home-01 li a, .nav-home-01 li button {
  color: #333333;
}

.nav-home-01 li + li {
  margin-top: 8px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .nav-home-01 {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .nav-home-01 li + li {
    margin-top: 5px;
  }
}

/* --------------------------------------
 nav-tab-01
-------------------------------------- */
.nav-tab-01 {
  margin-top: 30px;
}

.nav-tab-01 > ul {
  flex-wrap: wrap;
}

.nav-tab-01.tab-2 > ul li {
  width: 50%;
}

.nav-tab-01.tab-3 > ul li {
  width: 33.33333%;
}

.nav-tab-01.tab-4 > ul li {
  width: 25%;
}

.nav-tab-01.tab-5 > ul li {
  width: 20%;
}

.nav-tab-01.tab-6 > ul li {
  width: 16.66667%;
}

.nav-tab-01 li {
  border-bottom: #dddddd 1px solid;
  border-top: #dddddd 1px solid;
  position: relative;
}

.nav-tab-01 li a {
  align-items: center;
  justify-content: center;
  padding: 10px 5px;
  text-align: center;
  width: 100%;
}

.nav-tab-01 li + li::before {
  border-left: #dddddd 1px dashed;
  content: "";
  display: block;
  height: 18px;
  left: 0;
  margin-top: -9px;
  position: absolute;
  top: 50%;
  width: 1px;
}

.nav-tab-01 .active a {
  background: #0071c5;
  color: #ffffff;
  font-weight: bold;
}

.nav-tab-01 .active::before {
  border-color: #0071c5;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .nav-tab-01 > ul {
    border-bottom: #dddddd 1px solid;
    border-top: #dddddd 1px solid;
  }
  #page:not(.not-rwd) .nav-tab-01.tab-3 > ul li, #page:not(.not-rwd) .nav-tab-01.tab-4 > ul li, #page:not(.not-rwd) .nav-tab-01.tab-5 > ul li, #page:not(.not-rwd) .nav-tab-01.tab-6 > ul li {
    width: 50%;
  }
  #page:not(.not-rwd) .nav-tab-01 li {
    border-style: dashed;
    border-top: 0;
  }
  #page:not(.not-rwd) .nav-tab-01 li + li::before {
    content: none;
  }
  #page:not(.not-rwd) .nav-tab-01 li:last-child {
    border-bottom: 0;
  }
  #page:not(.not-rwd) .nav-tab-01 li:nth-child(odd):nth-last-child(2) {
    border-bottom: 0;
  }
  #page:not(.not-rwd) .nav-tab-01 li:nth-child(even)::before {
    border-left: #dddddd 1px dashed;
    content: "";
    display: block;
    height: 18px;
    left: 0;
    margin-top: -9px;
    position: absolute;
    top: 50%;
    width: 1px;
  }
  #page:not(.not-rwd) .nav-tab-01 .active:nth-child(even)::before {
    border-color: #0071c5;
  }
}

/* --------------------------------------
 nav-tab-02
-------------------------------------- */
.nav-tab-02 {
  margin-top: 30px;
}

.nav-tab-02 .js-tab-nav {
  flex-wrap: wrap;
}

.nav-tab-02 .js-tab-nav li {
  border-bottom: #dddddd 1px solid;
  border-top: #dddddd 1px solid;
  position: relative;
}

.nav-tab-02 .js-tab-nav li .active {
  background: #0071c5;
  color: #ffffff;
  font-weight: bold;
}

.nav-tab-02 .js-tab-nav li .active::before {
  border-color: #0071c5;
}

.nav-tab-02 .js-tab-nav li a {
  align-items: center;
  justify-content: center;
  padding: 10px 5px;
  text-align: center;
  width: 100%;
}

.nav-tab-02 .js-tab-nav li + li::before {
  border-left: #dddddd 1px dashed;
  content: "";
  display: block;
  height: 18px;
  left: 0;
  margin-top: -9px;
  position: absolute;
  top: 50%;
  width: 1px;
}

.nav-tab-02 .tab-2 > ul li {
  width: 50%;
}

.nav-tab-02 .tab-3 > ul li {
  width: 33.33333%;
}

.nav-tab-02 .tab-4 > ul li {
  width: 25%;
}

.nav-tab-02 .tab-5 > ul li {
  width: 20%;
}

.nav-tab-02 .tab-6 > ul li {
  width: 16.66667%;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .nav-tab-02 .js-tab-nav {
    border-bottom: #dddddd 1px solid;
    border-top: #dddddd 1px solid;
  }
  #page:not(.not-rwd) .nav-tab-02 .js-tab-nav li {
    border-style: dashed;
    border-top: 0;
  }
  #page:not(.not-rwd) .nav-tab-02 .js-tab-nav li .active::before {
    border-color: #0071c5;
  }
  #page:not(.not-rwd) .nav-tab-02 .js-tab-nav li + li::before {
    content: none;
  }
  #page:not(.not-rwd) .nav-tab-02 .js-tab-nav li:last-child {
    border-bottom: 0;
  }
  #page:not(.not-rwd) .nav-tab-02 .js-tab-nav li:nth-child(odd):nth-last-child(2) {
    border-bottom: 0;
  }
  #page:not(.not-rwd) .nav-tab-02 .js-tab-nav li:nth-child(even)::before {
    border-left: #dddddd 1px dashed;
    content: "";
    display: block;
    height: 18px;
    left: 0;
    margin-top: -9px;
    position: absolute;
    top: 50%;
    width: 1px;
  }
  #page:not(.not-rwd) .nav-tab-02 .tab-3 > ul li, #page:not(.not-rwd) .nav-tab-02 .tab-4 > ul li, #page:not(.not-rwd) .nav-tab-02 .tab-5 > ul li, #page:not(.not-rwd) .nav-tab-02 .tab-6 > ul li {
    width: 50%;
  }
}

/* --------------------------------------
 nav-tab-03
-------------------------------------- */
.nav-tab-03 {
  margin-top: 30px;
}

.nav-tab-03 .js-tab-nav {
  flex-wrap: wrap;
}

.nav-tab-03 .js-tab-nav li {
  padding-right: 1px;
  width: 33.33333%;
}

.nav-tab-03 .js-tab-nav a {
  background: #f3f3f3;
  border-top: #f3f3f3 2px solid;
  color: #333333;
  display: block;
  padding: 8px 0 10px 0;
  text-align: center;
}

.nav-tab-03 .js-tab-nav .active {
  background: #ffffff;
  border-color: #0071c5;
}

.nav-tab-03 .parallel {
  justify-content: space-between;
}

/* --------------------------------------
 nav-page-01
-------------------------------------- */
.nav-page-01 {
  margin-top: 50px;
}

.nav-page-01 ul {
  align-items: center;
  justify-content: center;
}

.nav-page-01 ul li {
  align-items: center;
  border-bottom: #cccccc 1px solid;
  border-left: #cccccc 1px solid;
  border-top: #cccccc 1px solid;
  justify-content: center;
}

.nav-page-01 ul li:last-child {
  border-right: #cccccc 1px solid;
}

.nav-page-01 ul li a, .nav-page-01 ul li button {
  align-items: center;
  height: 52px;
  justify-content: center;
  min-width: 50px;
  text-align: center;
}

.nav-page-01 ul .current a, .nav-page-01 ul .current button {
  background: #0071c5;
  color: #ffffff;
  font-weight: bold;
}

.nav-page-01 ul .next a, .nav-page-01 ul .prev a {
  color: #ffffff;
  position: relative;
}

.nav-page-01 ul .next a::before, .nav-page-01 ul .prev a::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 50%;
  margin-left: -4px;
  margin-top: -4px;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.nav-page-01 ul .prev a::before {
  transform: rotate(-135deg);
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .nav-page-01 {
    margin-top: 30px;
  }
  #page:not(.not-rwd) .nav-page-01 ul li a, #page:not(.not-rwd) .nav-page-01 ul li button {
    height: 30px;
    min-width: 30px;
  }
}

/* --------------------------------------
 nav-btn-icon-01
-------------------------------------- */
.nav-btn-icon-01 {
  flex-wrap: wrap;
  margin-top: 40px;
}

.nav-btn-icon-01.col3 {
  margin-left: -20px;
  margin-right: -20px;
}

.nav-btn-icon-01.col3 li {
  padding: 0 20px;
  width: 33.33333%;
}

.nav-btn-icon-01 li {
  list-style: none;
}

.nav-btn-icon-01 a, .nav-btn-icon-01 .link {
  background: rgba(255, 255, 255, 0.9);
  color: #033333;
  display: block;
  font-size: 1.125rem;
  text-align: center;
}

.nav-btn-icon-01 a span, .nav-btn-icon-01 .link span {
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 30px 30px;
  display: inline-block;
  padding: 27px 5px 23px 5px;
  padding-left: 40px;
}

.nav-btn-icon-01 .message a span, .nav-btn-icon-01 .message .link span {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0i44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzAwNzFjNTt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPjAyX21lc3NhZ2U8L3RpdGxlPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTI2LjY1MDg4LDIxLjM0OTA2bC00LjQ4MS00LjQ4MS0xNy4yOTE4Nyw4LjMzTDMsNDUsMjIuODAyMDYsNDMuMTIyLDMxLjEzMTksMjUuODMwMDhaTTIxLjQ4OTkzLDQxLjIzNzQzbC0xNC43MDgyNSwxLjM5NUwxNi44MDYwOSwzMi42MDhhMS44Nzk5MywxLjg3OTkzLDAsMSwwLTEuNDE0LTEuNDE0MTJMNS4zNjc2MSw0MS4yMTgzMmwxLjM5NS0xNC43MDgxMywxNC45OTY3MS03LjIyNDM2LDMuNDc3NDEsMy40Nzc0OCwzLjQ3NzQyLDMuNDc3NDFaIi8+PHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjQ2IDE2LjMzMSAzMS42NjkgMiAyMi43NTEgMTAuOTE5IDIyLjgzIDEzLjIyOCAzNC43NzIgMjUuMTcgMzcuMDgxIDI1LjI0OSA0NiAxNi4zMzEiLz48L3N2Zz4=");
}

.nav-btn-icon-01 .rinen a span, .nav-btn-icon-01 .rinen .link span {
  background-image: url("/common_rwd/images/icon-01.png");
  background-size: auto;
}

.nav-btn-icon-01 .vision a span, .nav-btn-icon-01 .vision .link span {
  background-image: url("/common_rwd/images/icon-02.png");
  background-size: auto;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .nav-btn-icon-01 {
    display: block;
    margin-top: 20px;
  }
  #page:not(.not-rwd) .nav-btn-icon-01.col3 {
    margin-left: 0;
    margin-right: 0;
  }
  #page:not(.not-rwd) .nav-btn-icon-01.col3 li {
    padding: 0;
    width: 100%;
  }
  #page:not(.not-rwd) .nav-btn-icon-01 li + li {
    margin-top: 20px;
  }
  #page:not(.not-rwd) .nav-btn-icon-01 a, #page:not(.not-rwd) .nav-btn-icon-01 .link {
    font-size: 0.875rem;
  }
  #page:not(.not-rwd) .nav-btn-icon-01 a span, #page:not(.not-rwd) .nav-btn-icon-01 .link span {
    background-size: 25px 25px;
    padding: 18px 5px 18px 5px;
    padding-left: 37px;
  }
}

/* --------------------------------------
 nav-content-01
-------------------------------------- */
.nav-content-01 {
  flex-wrap: wrap;
  margin-top: 44px;
}

.nav-content-01.col3 li {
  position: relative;
  width: 33.33333%;
}

.nav-content-01.col3 li::before {
  border-left: #b7b7b7 1px dotted;
  bottom: 0;
  content: "";
  display: block;
  height: calc(100% - 40px);
  position: absolute;
  right: 0;
  width: 1px;
}

.nav-content-01.col3 li:nth-child(n + 4) a::before {
  border-top: #b7b7b7 1px dotted;
  content: "";
  display: block;
  height: 1px;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: calc(100% - 80px);
}

.nav-content-01.col3 li:nth-child(3n)::before {
  content: none;
}

:root .nav-content-01 a {
  align-items: center;
  color: #333333;
  flex-direction: column;
  justify-content: center;
  min-height: 293px;
  padding: 20px 40px;
  text-align: center;
  text-decoration: none;
  transition: .2s background;
  width: 100%;
}

:root .nav-content-01 a:hover, :root .nav-content-01 a:focus {
  background: #f6fcff;
  text-decoration: underline;
}

.nav-content-01 b {
  font-size: 1.25rem;
  font-weight: bold;
  margin-top: 24px;
  padding-left: 16px;
  position: relative;
}

.nav-content-01 b::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: .7em;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.nav-content-01 b + .txt {
  margin-top: 10px;
  width: 100%;
}

.nav-content-01 .img, .nav-content-01 b {
  display: table;
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (max-width: 768px) {
  .nav-content-01.col3 li {
    width: 50%;
  }
  .nav-content-01.col3 li::before {
    content: none;
  }
  .nav-content-01.col3 li:nth-child(n + 3) a::before {
    border-top: #b7b7b7 1px dotted;
    content: "";
    display: block;
    height: 1px;
    left: 50%;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: calc(100% - 40px);
  }
  .nav-content-01.col3 li:nth-child(odd)::after {
    border-left: #b7b7b7 1px dotted;
    content: "";
    display: block;
    height: calc(100% - 40px);
    left: auto;
    position: absolute;
    right: -1px;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
  }
  :root .nav-content-01 a {
    justify-content: flex-start;
    min-height: auto;
    padding: 20px 7px;
  }
  .nav-content-01 b {
    font-size: 0.875rem;
    margin-top: 14px;
  }
}

/* ======================================
 hedding
====================================== */
/* --------------------------------------
 hdg-level
-------------------------------------- */
:root h1[class^="hdg-level1-"] + [class^="hdg-level2-"], :root h1[class^="hdg-level1-"] + * {
  margin-top: 40px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) :root h1[class^="hdg-level1-"] + [class^="hdg-level2-"], #page:not(.not-rwd) :root h1[class^="hdg-level1-"] + * {
    margin-top: 60px;
  }
}

:root h2[class^="hdg-level2-"] + [class^="hdg-level3-"], :root h2[class^="hdg-level2-"] + * {
  margin-top: 40px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) :root h2[class^="hdg-level2-"] + [class^="hdg-level3-"], #page:not(.not-rwd) :root h2[class^="hdg-level2-"] + * {
    margin-top: 60px;
  }
}

/* --------------------------------------
 hdg-level1-news-01
-------------------------------------- */
.hdg-level1-news-01 {
  align-items: center;
  background: #eaf6fd;
  justify-content: space-between;
  margin-top: 40px;
  padding: 0 15px;
}

.hdg-level1-news-01 .hdg {
  color: #000000;
  font-size: 2.25rem;
}

.hdg-level1-news-01 .hdg + span {
  font-size: 0.875rem;
}

/* --------------------------------------
 hdg-level1-news-02
-------------------------------------- */
.hdg-level1-news-02 {
  margin-top: 40px;
}

.hdg-level1-news-02 .hdg {
  color: #000000;
  font-size: 1.5rem;
}

.hdg-level1-news-02 .small-01 {
  color: #000000;
  display: block;
  font-size: 1.25rem;
}

/* --------------------------------------
 hdg-level1-01
-------------------------------------- */
.hdg-level1-01 {
  border-bottom: #0071c5 2px solid;
  color: #000000;
  font-size: 2.25rem;
  letter-spacing: .5px;
  line-height: 1.44444;
  padding-bottom: 7px;
}

.hdg-level1-01 .small {
  font-size: 1.5rem !important;
  padding-left: 15px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .hdg-level1-01 {
    font-size: 1.625rem;
  }
  #page:not(.not-rwd) .hdg-level1-01 .small {
    display: block;
    font-size: 1.125rem !important;
    margin-top: 5px;
    padding-left: 0;
  }
}

/* --------------------------------------
 hdg-level1-02
-------------------------------------- */
.hdg-level1-02 {
  margin-bottom: 40px;
  position: relative;
}

.hdg-level1-02 .data-01 {
  flex-direction: column;
  left: 0;
  left: 50%;
  margin: 0 auto;
  max-width: 1200px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}

.hdg-level1-02 .data-01 .hdg-01 {
  color: #000000;
  font-size: 2.5rem;
}

.hdg-level1-02 .data-01 .text-01 {
  color: #000000;
  font-size: 1.125rem;
}

.hdg-level1-02 .img {
  line-height: 1;
  margin: 0 -20px;
}

.hdg-level1-02 .img img {
  vertical-align: bottom;
  width: 100%;
}

@media only screen and (max-width: 1024px) {
  #page:not(.not-rwd) .hdg-level1-02 .data-01 .hdg-01 {
    font-size: 1.625rem;
  }
  #page:not(.not-rwd) .hdg-level1-02 .data-01 .text-01 {
    font-size: 0.875rem;
  }
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .hdg-level1-02 {
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
  }
  #page:not(.not-rwd) .hdg-level1-02 .data-01 {
    background: #f3f3f3;
    margin: 0 -15px;
    order: 2;
    padding: 20px 15px;
    position: static;
    transform: none;
    width: auto;
  }
  #page:not(.not-rwd) .hdg-level1-02 .img {
    margin: 0 -15px;
    min-height: 1px;
    order: 1;
  }
  #page:not(.not-rwd) .hdg-level1-02 .img img {
    min-height: 1px;
  }
}

/* --------------------------------------
 hdg-popup-01
-------------------------------------- */
.hdg-popup-01 {
  border-bottom: #0071c5 2px solid;
  color: #000000;
  font-size: 2.25rem;
  letter-spacing: .5px;
  line-height: 1.44444;
  padding-bottom: 12px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .hdg-popup-01 {
    font-size: 1.625rem;
  }
}

/* --------------------------------------
 hdg-link-box
-------------------------------------- */
.hdg-link-01 {
  align-items: flex-end;
  flex-wrap: wrap;
}

.hdg-link-01 > .link {
  color: #333333;
  font-size: 1rem;
  padding-left: 15px;
  vertical-align: middle;
}

.hdg-link-01 > .link a {
  color: #333333;
  display: inline-block;
  padding-left: 15px;
  position: relative;
}

.hdg-link-01 > .link a::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  margin-top: -4px;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .hdg-link-01 {
    display: block;
  }
  #page:not(.not-rwd) .hdg-link-01 > .link {
    display: block;
    font-size: 0.875rem;
    margin-top: 5px;
    padding-left: 0;
  }
}

/* --------------------------------------
 hdg-level2-01
-------------------------------------- */
.hdg-level2-01 {
  border-left: #0071c5 6px solid;
  color: #000000;
  font-size: 2rem;
  line-height: 1.0625;
  margin-top: 80px;
  padding-left: 20px;
  vertical-align: middle;
}

.hdg-level2-01 .sub {
  display: block;
  font-size: 1.5rem;
  margin-bottom: 10px;
}

.hdg-level2-01.attention .inner {
  background-image: url("data:image/svg+xml;base64,PHN2ZyBpZD0i44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDMyIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzAwNzFjNTt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPjAxX2F0dGVudGlvbjwvdGl0bGU+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTQuNDc0LDguODI3MTVoMy4wNTY2NHYzLjY0ODQ0bC0uNzkxLDYuNzEyODlIMTUuMjg0NTlMMTQuNDc0LDEyLjQ3NTU5Wm0uMDY4MzYsMTEuNTIzNDRoMi45MTk5MnYyLjgyMjI2SDE0LjU0MjRaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTYuMDAyMzYsNGExMiwxMiwwLDEsMS0xMiwxMiwxMi4wMTM1OSwxMi4wMTM1OSwwLDAsMSwxMi0xMm0wLTJhMTQsMTQsMCwxLDAsMTQsMTQsMTQsMTQsMCwwLDAtMTQtMTRaIi8+PC9zdmc+");
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 28px 28px;
  padding-left: 40px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .hdg-level2-01 {
    font-size: 1.4375rem;
    margin-top: 100px;
    padding: 5px 0 3px 15px;
  }
  #page:not(.not-rwd) .hdg-level2-01 .sub {
    font-size: 1.125rem;
    margin-bottom: 5px;
  }
}

/* --------------------------------------
 hdg-level3-01
-------------------------------------- */
.hdg-level3-01 {
  color: #000000;
  font-size: 1.5rem;
  line-height: 1.33333;
  margin-top: 60px;
  padding-left: 20px;
  position: relative;
}

.hdg-level3-01 span {
  font-weight: bold;
  padding-right: 15px;
}

.hdg-level3-01::before {
  background: #0071c5;
  content: "";
  display: block;
  height: 10px;
  left: 0;
  position: absolute;
  top: 10px;
  width: 10px;
}

.hdg-level3-01 .link {
  color: #333333;
  display: inline-block;
  font-size: 1rem;
  padding-right: 0;
  vertical-align: middle;
}

.hdg-level3-01 .link a {
  color: #333333;
  display: inline-block;
  padding-left: 15px;
  position: relative;
}

.hdg-level3-01 .link a::before {
  border-right: solid 2px #0071c5;
  border-top: solid 2px #0071c5;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  margin-top: -4px;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 8px;
  will-change: transform;
}

.hdg-level3-01.f-normal span {
  font-weight: normal;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .hdg-level3-01 {
    font-size: 1.25rem;
    margin-top: 60px;
    padding-right: 0;
  }
  #page:not(.not-rwd) .hdg-level3-01::before {
    top: 7px;
  }
  #page:not(.not-rwd) .hdg-level3-01 .link {
    display: block;
    font-size: 0.875rem;
    margin-top: 7px;
    padding-left: 0;
  }
}

/* --------------------------------------
 hdg-level4-01
-------------------------------------- */
.hdg-level4-01 {
  color: #000000;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.6;
  margin-top: 40px;
  padding-left: 15px;
  position: relative;
}

.hdg-level4-01::before {
  background: #cccccc;
  content: "";
  display: block;
  height: 18px;
  left: 0;
  margin-top: -9px;
  position: absolute;
  top: 50%;
  width: 4px;
}

.hdg-level4-01 + * {
  margin-top: 30px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .hdg-level4-01 {
    font-size: 1rem;
    margin-top: 50px;
  }
}

/* --------------------------------------
 hdg-level5-01
-------------------------------------- */
.hdg-level5-01 {
  border-bottom: #cccccc 2px solid;
  color: #000000;
  font-weight: bold;
  margin-top: 30px;
  padding-bottom: 6px;
  position: relative;
}

.hdg-level5-01 + * {
  margin-top: 20px;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .hdg-level5-01 {
    margin-top: 40px;
  }
  #page:not(.not-rwd) .hdg-level5-01 + * {
    margin-top: 30px;
  }
}

/* ======================================
 adjustment
====================================== */
/* --------------------------------------
text-align
-------------------------------------- */
.aleft {
  text-align: left !important;
}

.acenter {
  text-align: center !important;
}

.aright {
  text-align: right !important;
}

/* --------------------------------------
vertical-align
-------------------------------------- */
.vbottom {
  vertical-align: bottom !important;
}

.vtop {
  vertical-align: top !important;
}

.vmiddle {
  vertical-align: middle !important;
}

/* --------------------------------------
margin / padding
-------------------------------------- */
.mt0 {
  margin-top: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.ml0 {
  margin-left: 0 !important;
}

.mr0 {
  margin-right: 0 !important;
}

.pt0 {
  padding-top: 0 !important;
}

.pb0 {
  padding-bottom: 0 !important;
}

.pl0 {
  padding-left: 0 !important;
}

.pr0 {
  padding-right: 0 !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.ml5 {
  margin-left: 5px !important;
}

.mr5 {
  margin-right: 5px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pl5 {
  padding-left: 5px !important;
}

.pr5 {
  padding-right: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pr50 {
  padding-right: 50px !important;
}

/* --------------------------------------
width
-------------------------------------- */
.w0 {
  width: 0 !important;
}

.w5 {
  width: 5% !important;
}

.w10 {
  width: 10% !important;
}

.w15 {
  width: 15% !important;
}

.w20 {
  width: 20% !important;
}

.w25 {
  width: 25% !important;
}

.w30 {
  width: 30% !important;
}

.w35 {
  width: 35% !important;
}

.w40 {
  width: 40% !important;
}

.w45 {
  width: 45% !important;
}

.w50 {
  width: 50% !important;
}

.w55 {
  width: 55% !important;
}

.w60 {
  width: 60% !important;
}

.w65 {
  width: 65% !important;
}

.w70 {
  width: 70% !important;
}

.w75 {
  width: 75% !important;
}

.w80 {
  width: 80% !important;
}

.w85 {
  width: 85% !important;
}

.w90 {
  width: 90% !important;
}

.w95 {
  width: 95% !important;
}

.w100 {
  width: 100% !important;
}

/* --------------------------------------
delete
-------------------------------------- */
.pc-del {
  display: none !important;
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .pc-del {
    display: block !important;
  }
}

@media only screen and (max-width: 768px) {
  #page:not(.not-rwd) .sp-del {
    display: none !important;
  }
}

/* --------------------------------------
parallel
-------------------------------------- */
.parallel-01 {
  justify-content: space-between;
}

/* ======================================
 Uniqu css
====================================== */
/* --------------------------------------
disclosure
-------------------------------------- */
.img-main-area{
  position: relative;
  max-width: 860px;
  width: 100%;
  margin: 0 auto;
}

.img-main-text{
	position: absolute;
  top: 50%;
  left: 71%;
  transform: translate(-50%,-50%);
  white-space: nowrap;
  font-size: 1.1rem;
  line-height: 1.5rem;
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", Meiryo, "メイリオ", Arial, sans-serif;
}

@media only screen and (max-width: 768px) {
  .img-main-text {
    top: 18%;
    left: 50%;
  }
}

/* --------------------------------------
 alert
-------------------------------------- */
.box-content-a {
    border: #898989 3px solid;
    margin-top: 30px;
    padding: 20px 20px;
    background-color: #fbfbec;
}

@media only screen and (max-width: 768px) {
 #page:not(.not-rwd) .box-content-a {
    padding: 20px 15px;
 }
}

:root .box-content-a > *:first-child {
  margin-top: 0 !important;
}

/* ======================================
 tbl-scroll-01
====================================== */

@media only screen and (max-width: 768px) {
  .tbl-scroll-01 {
    overflow-x: scroll;
  }
  .tbl-scroll-01 .tbl-data-01 {
    min-width: 768px;
  }
}

/* ======================================
 aboutus/purpose.html用追加css
====================================== */
/* ▼MVタブレット版追加になった場合
.purpose-mv--pc{
  display: block;
}
.purpose-mv--tb{
  display: none;
}
.purpose-mv--sp{
  display: none;
}
@media only screen and (max-width: 768px) {
  .purpose-mv--pc{
    display: none;
  }
  .purpose-mv--tb{
    display: block;
  }
}
@media only screen and (max-width: 650px) {
  .purpose-mv--tb{
    display: none;
  }
  .purpose-mv--sp{
    display: block;
  }
} */

/* --------------------------------------
 めざすこと
-------------------------------------- */
.purp-level2-01 {
  display: flex;
  align-items: center;
  font-size: 2rem;
  line-height: 1.0625;
  margin-top: 80px;
  vertical-align: middle;
  color:#0060AE;
  font-weight: bold;
}
.purp-level2-01:before,
.purp-level2-01:after {
  content: "";
  height: 2px;
  flex-grow: 1;
  background-color: #0060AE;
}
.purp-level2-01:before {
  margin-right: 2rem;
}
.purp-level2-01:after {
  margin-left: 2rem;
}
.purp-level2-02 {
  display: flex;
  align-items: center;
  font-size: 2rem;
  margin-top: 70px;
  margin-bottom: 10px;
  vertical-align: middle;
  color:#0060AE;
}
.purp-level2-02 .purp-level2-2-sub {
  font-size: 1.2rem;
  margin-left: 1rem;
}
@media only screen and (max-width: 768px) {
  .purp-level2-02 {
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 2rem;
      margin-top: 80px;
      margin-bottom: 36px;
      vertical-align: middle;
      color:#0060AE;
      line-height: 1.4;
  }
  .purp-level2-02 .purp-level2-2-sub{
      margin-left: 0rem;
  }
}

.purpose-sec span{
  display: block;
}
.purpose-mv__wrap{
  position: relative;
}
.purpose-mv__link{
  position: absolute;
  display: inline-block;
  margin: 0 !important;
  font-size: 0;
}
.purpose-mv__link a{
  display: block;
  width: 100%;
  height: 100%;
}
.purpose-mv__link-01{
  width: 34.069%;
  height: 5.194%;
  left: 3.262%;
  top: 11.806%;
}
.purpose-mv__link-02{
  width: 30.134%;
  height: 3.659%;
  right: 4.702%;
  top: 11.806%;  
}
.purpose-mv__link-03{
  width: 25.047%;
  height: 8.500%;
  left: 3.262%;
  top: 21.959%;
}
.purpose-mv__link-04{
  width: 24.472%;
  height: 11.688%;
  right: 4.702%;
  top: 19.716%;
}

/* ▼MVタブレット版追加になった場合
@media only screen and (max-width: 768px) {
  .purpose-mv__link{
    width: 50.569%;
    left: 24.786%;
  }
  .purpose-mv__link-01{
    height: 4.419%;
    top: 10.606%;
  }
  .purpose-mv__link-02{
    height: 4.419%;
    right: 4.702%;
    top: 16.161%;  
  }
  .purpose-mv__link-03{
    height: 6.186%;
    top: 21.338%;
  }
  .purpose-mv__link-04{
    height: 7.828%;
    top: 28.282%;
  }
} */
/* ▼MVタブレット版追加になった場合はブレイクポイントを650pxにする */
@media only screen and (max-width: 768px) {
  .purpose-mv__link{
    width: 85.897%;
    left: 4.615%;
  }
  .purpose-mv__link-01{
    height: 4.419%;
    top: 11.489%;
  }
  .purpose-mv__link-02{
    height: 4.419%;
    right: 4.702%;
    top: 16.666%;  
  }
  .purpose-mv__link-03{
    height: 6.186%;
    top: 21.843%;
  }
  .purpose-mv__link-04{
    height: 7.828%;
    top: 28.787%;
  }
}

.purp-level2-01{
  margin-bottom: 110px;
}
.purpose-sec{
  margin-bottom: 90px;
}
.purpose-sec:last-child{
  margin-bottom: 60px;
}
.purpose-sec__title-h3{
  margin-bottom: 30px;
}
.purpose-sec__title-h3 img{
  width: 100%;
}
.purpose-sec__01 .purpose-sec__title-h3{
  width: 32.980%;
}
.purpose-sec__02 .purpose-sec__title-h3{
  width: 31.634%;
}
.purpose-sec__03 .purpose-sec__title-h3{
  width: 31.923%;
}
.purpose-sec__04 .purpose-sec__title-h3{
  width: 40%;
}
@media only screen and (max-width: 768px) {
  .purpose-sec__01 .purpose-sec__title-h3{
    width: 45.641%;
  }
  .purpose-sec__02 .purpose-sec__title-h3{
    width: 36.666%;
  }
  .purpose-sec__03 .purpose-sec__title-h3{
    width: 43.333%;
  }
  .purpose-sec__04 .purpose-sec__title-h3{
    width: 48.717%;
  }
}
@media only screen and (max-width: 650px) {
  .purpose-sec__01 .purpose-sec__title-h3{
    width: 65.641%;
  }
  .purpose-sec__02 .purpose-sec__title-h3{
    width: 56.666%;
  }
  .purpose-sec__03 .purpose-sec__title-h3{
    width: 63.333%;
  }
  .purpose-sec__04 .purpose-sec__title-h3{
    width: 68.717%;
  }
}