@charset "utf-8";

/* ¾tºÏÉúÃü¥» */

@-ms-viewport {
  width: auto;
  initial-scale: 1;
}

html {
  overflow-y: scroll;
}

/* Fonts
-------------------------------------------------- */

body,
tooltip,
popover {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "ÓÎ¥´¥·¥Ã¥¯ Medium", "Yu Gothic Medium", YuGothic, Arial, Meiryo, "M+ 1p", sans-serif;
  color: #070a0c;
  font-feature-settings: "palt";
}

b, strong, .font-weight-bold, dt, th, .nav-item {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI semibold", Roboto, "Helvetica Neue", "ÓÎ¥´¥·¥Ã¥¯", "Yu Gothic", YuGothic, Arial, "Segoe UI", Meiryo, "M+ 1p", sans-serif;
}

html[lang="en"] h1, html[lang="en"] h2, html[lang="en"] h3, html[lang="en"] h4, h1 span:lang(en), h2 span:lang(en), h3 span:lang(en), h4 span:lang(en) {
  font-weight: normal;
}

@media all and (-ms-high-contrast: none) {
  _:-ms-lang(x)::-ms-backdrop,
  body,
  tooltip,
  popover {
    font-family: "Segoe UI", Arial, Meiryo, sans-serif;
    color: #373a3c;
  }
}

@media all and (-ms-high-contrast: active) {
  _:-ms-lang(x)::-ms-backdrop,
  body,
  tooltip,
  popover {
    font-family: "Segoe UI", Arial, Meiryo, sans-serif;
    color: #373a3c;
  }
}

@supports (-ms-ime-align:auto) {
  _:-ms-lang(x)::-ms-backdrop,
  body,
  tooltip,
  popover {
    font-family: "Segoe UI", Arial, Meiryo, sans-serif;
    color: #373a3c;
  }
}


a.nav-link,
a.dropdown-item {
  font-feature-settings: "palt" 0;
}

@media all and (-ms-high-contrast: none),
@media all and (-ms-high-contrast: active) {
  nav.navbar,
  nav.navbar span.font-weight-bold,
  ul.navbar-nav a.dropdown-item,
  ul.nav li.nav-item a.nav-link {
    font-weight: bold !important;
  }
}

@supports (-ms-ime-align:auto) {
  nav.navbar,
  nav.navbar span.font-weight-bold,
  ul.navbar-nav a.dropdown-item,
  ul.nav li.nav-item a.nav-link {
    font-weight: bold !important;
  }
}

small, .small {
  font-size: 0.875em;
}

@media screen and (min-width: 768px) and (max-width: 1199.98px) {
  h4.menu-header+address {
    font-size: 0.75rem;
  }
}


/* Anchor
-------------------------------------------------- */
a {
  color: #1A0DAB;
}

a:hover {
  color: #1A0DAB;
}

a.dropdown-item.active, .dropdown-item:active {
  background-color: #d1ecf1;
}

/* Container
-------------------------------------------------- */
.container-fluid {
  max-width: 80rem;
  min-width: 19rem;
}


/* Headers
-------------------------------------------------- */
h1 {
  font-size: 1.125rem;
  text-align: center;
}

h2 {
  font-size: 1.125rem;
}

h3 {
  font-size: 1.125rem;
}
  
h4 {
  font-size: 1.000rem;
}

.subtitle {
  font-size: 1.125rem;
}
.menu-header {
  padding: 0.5rem 0rem 0.5rem 1rem;
}
.news-header {
  padding: 0.5rem 0rem 0.5rem 1rem;
  text-align: center;
}



span.navbar-brand {
  background-color:  #007bff; !important;
  color: #ffffff !important;
  padding-right: 1em;
  padding-left: 1em;
}

h1.bg-danger, h2.bg-danger, h4.bg-danger {
  background-color: #ff0000 !important;
}

h1.bg-success, h2.bg-success, h4.bg-success {
  background-color: #008842 !important;
}


@media screen and (min-width: 768px) {
  h1 {
    font-size: 1.500rem;
  }
  h2 {
    font-size: 1.250rem;
  }
  h3  {
    font-size: 1.125rem;
  }
  h4 {
    font-size: 1.000rem;
  }
  .menu-header {
    padding: 0.75rem 0rem 0.75rem 1rem;
  }
  .news-header {
    padding: 0.625rem 0rem 0.625rem 1rem;
  }
}


/* dl dt dd
-------------------------------------------------- */
html[lang="ja"] dl dd,
html[lang="ja"] ul.list-square li {
  letter-spacing: 0.05rem;
  line-height: 1.75;
}

html[lang="ja"] dl.row dd {
  letter-spacing: 0;
}



/* h2.division
-------------------------------------------------- */

h2.division {
  font-size: 1.000rem;
  margin-top: 1rem;
  padding-left: 0.4rem;
  border-top: 1px #9E9E9E solid;
  border-bottom: 1px #9E9E9E solid;
  background: #f5f5f5;
}

html[lang="ja"] p.text-right + dl.row dt,
html[lang="ja"] p.text-right + dl.row dd,
html[lang="ja"] h2.division + dl.row dt,
html[lang="ja"] h2.division + dl.row dd
 {
  line-height: 1.5;
}

@media screen and (max-width: 575px) {

  p.text-right + dl.row dt br,
  h2.division + dl.row dt br {
    display: none;
  }

  p.text-right + dl.row dt,
  p.text-right + dl.row dd,
  h2.division + dl.row dt,
  h2.division + dl.row dd {
    margin-left: 1rem;
    padding-left: 0.3rem;
  }
}

@media screen and (min-width: 576px) {
  p.text-right + dl.row dt,
  h2.division + dl.row dt {
    line-height: 1.75;
    padding-right: 0;
  }
  p.text-right + dl.row dd,
  h2.division + dl.row dd {
    padding-left: 0;
  }
  h2.division {
    padding-left: 1rem;
  }
  h2.division + dl.row {
    margin-left: 0rem;
  }
  p.text-right + dl.row dt.col-sm-3 {
    padding-left: 2rem;
  }
  p.text-right + dl.row dd.col-sm-9 {
    margin-left: -1rem;
  }
}


/* h2.category, h3.category
-------------------------------------------------- */
h2.category {
  padding-bottom: 0.4rem;
  border-bottom: 1px #6c757d solid;
  border-left: 3px #6c757d solid;
  color: #343a40;
  border-radius: 6% 0% 0% 6% / 100% 0% 0% 100%;
}

h2.category-med {
  padding-bottom: 0.4rem;
  border-bottom: 2px #dc3545 solid;
  color: #dc3545;
}

h2.category-agr  {
  padding-bottom: 0.4rem;
  border-bottom: 2px #367c36 solid;
  color: #367c36;
}

h3.category-map, h3.category3 {
  padding-bottom: 0.4rem;
  color: #343a40;
  border-bottom: 1px #343a40 solid;
}


h3.category-med-2 {
  padding-bottom: 0.4rem;
  color:  #dc3545;
  border-bottom: 1px #dc3545 solid;
}

h3.category-agr-2 {
  padding-bottom: 0.4rem;
  color: #367c36;
  border-bottom: 1px #367c36 solid;
}


/* typography letter-spacing line-height
-------------------------------------------------- */
.ls-01 {letter-spacing: 0.10rem;}
.ls-03 {letter-spacing: 0.33rem;}
.ls-05 {letter-spacing: 0.50rem;}
.ls-10 {letter-spacing: 1.00rem;}
.ls-20 {letter-spacing: 2.00rem;}
.ls-00625 {letter-spacing: 0.0625rem;}

html[lang="ja"] p.ti-1 {
  text-indent: 1rem;
  letter-spacing: 0.05rem;
  line-height: 1.75;
}

html[lang="en"] p.ti-1 {
  text-indent: 1rem;
}


/* list-group-flush2
-------------------------------------------------- */
.list-group-flush2 .list-group-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
  padding-left: 1rem;
}

.list-group-flush2 .list-group-item:first-child {
  border-top: 0;
}

ul.small li.list-group-item:hover {
  background-color: #FAFAFA;
}

ul.small li.list-group-item a + br {
 line-height: 1.75rem;
}

ul.small li.list-group-item a {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}


/* Nav
--------------------------------------------------  */
ul.nav li.nav-item:hover {
  background-color: #FAFAFA;
}

ul.nav li.bg-none:hover {
  background-color: initial;
}

ul.nav li.active,
div.dropdown-menu a.active {
  background-color: #d1ecf1 !important;
}

@media screen and (max-width: 575.98px) {
li.nav-item a.triangle {
    position: relative;
    top: 0;
    right: 0;
    padding-left: 1rem;
    border: 0;
  }

li.nav-item a.triangle:before {
    content: "";
    position: absolute;
    top: 11px;
    right: 1rem;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 12px solid #ccc;
  }

li.nav-item a.triangle:hover:before {
    border-left-color: #999;
  }

  h4:lang(ja).menu-header + div.row + div.col-sm-12 {
    padding-right: 0;
  }
  h4:lang(ja).menu-header + div.row > div.col-sm-12 ~ div.col-sm-12 {
    padding-left: 0;
  }
}

.dropdown-menu {
  min-width: 5rem;
}


@media screen and (max-width: 767.98px) {
  li.nav-item .shadow {
    box-shadow: 0 0 0 !important;
    background-color: #f8f9fa !important;
  }
}


/* ul triangle
--------------------------------------------------  */
ul.list-unstyled li a.triangle {
  display: inline-block;
  padding: 0.5rem 1rem;
}

ul.list-unstyled li a.triangle-s {
  display: inline-block;
  padding: 0.5rem 1.5rem;
}


ul.list-unstyled li a:hover, ul.list-unstyled li a:focus {
  text-decoration: none;
}

ul.list-unstyled li a.triangle {
  line-height: 1.75rem;
}

ul.list-unstyled li a.triangle-s {
  line-height: 1.5rem;
}

ul.list-unstyled li a.triangle {
  position: relative;
  top: 6px;
  right: 0;
  padding-left: 1.5rem;
  border: 0;
}

ul.list-unstyled li .triangle:before {
  content: "";
  position: absolute;
  top: 16px;
  left: 0.5rem;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid #ccc;
}

ul.list-unstyled .triangle-s {
  position: relative;
  top: 4px;
  right: 0;
  padding-left: 1.5rem;
  border: 0;
}

ul.list-unstyled .triangle-s:before {
  content: "";
  position: absolute;
  top: 14px;
  left: 0.5rem;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid #ccc;
}

ul.list-unstyled a.triangle:hover:before,
ul.list-unstyled a.triangle-s:hover:before {
  border-left-color: #999;
}

ul.list-unstyled li a.triangle:hover,
ul.list-unstyled li a.triangle-s:hover {
  background: #f5f5f5;
}


/* listgroup triangle
--------------------------------------------------  */

nav.list-group .triangle {
  position: relative;
  top: 3px;
  right: 0;
  padding-left: 1.5rem;
  border: 0;
}

nav.list-group .triangle:before {
  content: "";
  position: absolute;
  top: 13px;
  left: 0.5rem;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid #ccc;
}

nav.list-group a.triangle:hover:before {
  border-left-color: #999;
}

nav.list-group a.nav-link:hover {
  background: #f5f5f5;
}


/* sticky
--------------------------------------------------  */
.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 4rem;
}

@supports (position: -webkit-sticky) or (position: sticky) {

  @media screen and (min-width: 576px) and (max-width: 767.98px) {
    .sticky-left-menu-sm {
      position: -webkit-sticky;
      position: sticky;
      top: 4rem;
      right: 66.666667%;
    }
  }

  @media screen and (min-width: 768px) and (max-width: 991.98px) {
    .sticky-left-menu-md {
      position: -webkit-sticky;
      position: sticky;
      top: 4rem;
      right: 75%;
    }
  }

  @media screen and (min-width: 992px) {
    .sticky-left-menu {
      position: -webkit-sticky;
      position: sticky;
      top: 4rem;
      right: 83.333333%;
    }
  }

  @media screen and (min-width: 768px) and (max-width: 991.98px) {
    .sticky-left-menu-en {
      position: -webkit-sticky;
      position: sticky;
      top: 4rem;
      right: 75%;
    }
  }

  @media screen and (min-width: 992px) {
    .sticky-left-menu-en {
      position: -webkit-sticky;
      position: sticky;
      top: 4rem;
      right: 83.333333%;
    }
  }

  @media screen and (min-width: 768px) {
    .sticky-left-menu2-en {
      position: -webkit-sticky;
      position: sticky;
      top: 4rem;
      right: 83.333333%;
    }
  }

}




/* Cards
-------------------------------------------------- */
.card-0 {
  box-shadow: 0 1px 1px 0 rgba(60, 64, 67, .08), 0 1px 3px 1px rgba(60, 64, 67, .16);
}


.card-1 {
  box-shadow: 0 1px 1px 0 rgba(60, 64, 67, .08), 0 1px 3px 1px rgba(60, 64, 67, .16);
  transition: box-shadow 135ms cubic-bezier(.4, 0, .2, 1);
}

.card-1:focus, .card-1:hover {
  box-shadow: 0 1px 3px 1px rgba(60, 64, 67, .2), 0 2px 8px 4px rgba(60, 64, 67, .1);
}



ol li > ul[class="list-unstyled"] li {
  text-indent: -1.5rem;
  margin-left: 1.5rem;
}

/* Embeds
-------------------------------------------------- */
.h360 {
  height: 360px;
}

.h400 {
  height: 400px;
}



/* Sticky Navbar
-------------------------------------------------- */
body {
  padding-top: 4.25rem;
}

nav.navbar {
   padding: 0;
   border-bottom: 1px solid rgba(0, 0, 0, 0.1);
   box-shadow: 0 2px 4px rgba(0, 0, 0, .4);
}

nav.navbar a, span.navbar-brand {
  font-size: 0.875rem;
}

ul.nav,
nav.navbar,
ul.navbar-nav a.dropdown-item {
  font-weight: bolder;
  color: #222222;
}

.navbar-toggler-icon {
  width: 1.375em;
  height: 1.375em;
}

.navbar-toggler {
  border-color: rgba(0,0,0,0) !important;
}

.navbar-toggler:focus, .navbar-toggler:active {
  outline: none;
  box-shadow: none;
}






@media all and (-ms-high-contrast: none),
@media all and (-ms-high-contrast: active) {
  nav.nav,
  nav.navbar,
  ul.navbar-nav a.dropdown-item {
    font-weight: 500;
   color: #444444;
  }
}

@supports (-ms-ime-align:auto) {
  nav.nav,
  nav.navbar,
  ul.navbar-nav a.dropdown-item {
    font-weight: 500;
    color: #444444;
  }
}


@media screen and (max-width: 767.98px) {
  nav.navbar div.navbar-collapse > ul.navbar-nav > li.dropdown > a.dropdown-toggle {
    margin-right: 0.5rem;
  }
  nav.navbar div.navbar-collapse > ul.navbar-nav > li.dropdown > div.dropdown-menu {
    box-shadow: none;
    text-align: right;
  }
  nav.navbar div.navbar-collapse > ul.navbar-nav > li.dropdown > div.dropdown-menu > div.dropdown-divider {
    display: none;
  }
}


/* media
-------------------------------------------------- */
li.media dd {
  margin-bottom: 0rem;
}

li.media dt {
  padding-top: 0.5rem;
}

li.media:hover {
  background-color: #FAFAFA;
}

/* b-number
-------------------------------------------------- */

.b-number {
  background-color: #e7af00;
  color: #ffffff;
  font-family: Arial, sans-serif;
  padding: 2px 2px 1px;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  vertical-align:top;
}

.ba-number {
  background-color: #e7af00;
  color: #ffffff;
  font-family: Arial, sans-serif;
  padding: 2px 5px 1px;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  vertical-align:top;
}


/* Scroll bar
-------------------------------------------------- */

@media screen and (min-width:992px) {
  .bd-links-scroll {
    max-height: calc(100vh - 8rem);
    overflow-y: scroll;
    overflow-x: hidden;
    display: block !important;
    background: #fafafa; /* Gray 50 */
  }
  .bd-links-scroll::-webkit-scrollbar {
    width: 0.875rem;
  }
  .bd-links-scroll::-webkit-scrollbar-track {
    background: #ffffff;
  }
  .bd-links-scroll::-webkit-scrollbar-thumb {
    background: #DDDDDD;
    border-radius: 0.25rem;
  }
}

/* Breadcrumb
-------------------------------------------------- */

.breadcrumb {
  padding: 0 1rem;
  margin: 0;
  background-color: transparent;
  font-size: 0.875rem;
}

ol.breadcrumb {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

ol.breadcrumb li {
  font-size: 0.875rem;
}

.bc-top {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  padding-top: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4IiBoZWlnaHQ9IjgiPjxwYXRoIGQ9Ik0yLjUgMEwxIDEuNSAzLjUgNCAxIDYuNSAyLjUgOGw0LTQtNC00eiIgZmlsbD0iY3VycmVudENvbG9yIi8+PC9zdmc+);
}

/* hr */

hr {
  margin-bottom: 0.5rem;
}


.hr-nav {
  width: 100%;
  margin-bottom: 0;
}



/* Sticky footer styles
-------------------------------------------------- */

.footer {
  background-color: #f5f5f5;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.footer > .container-fluid {
  padding-right: 1rem;
  padding-left: 1rem;
  font-size: 0.875rem;
  text-align: center;
  line-height: 1.5;
}

/* Back-to-top
-------------------------------------------------- */

#back-to-top {
  display: none;
  position: fixed;
  bottom: 48px;
  right: 16px;
  width: 48px;
  height: 48px;
  background-image: url('/lsrc/images/back-to-top.png');
  background-repeat: no-repeat;
  opacity: 0.4;
  -webkit-filter: drop-shadow(0 1px 3px  rgba(0,0,0,0.48));
  filter:drop-shadow(0 1px 3px  rgba(0,0,0,0.48));
}

#back-to-top:hover {
  opacity: 0.6;
}

#back-to-top:active {
  opacity: 1.0;
  -webkit-filter: drop-shadow(0 2px 4px  rgba(0,0,0,0.48));
  filter:drop-shadow(0 2px 4px  rgba(0,0,0,0.48));
}
