@charset "utf-8";
/*
Theme Name:
Theme URI:
Description: This is our original theme.
Author:
Author URI:
Version: 1.0
*/

/* CSS Information =========================================
   style.css
========================================================= */

/* =========================================================
   style.css
========================================================= */
/* index ===================================================
   template
   <body>
   common
   wrapper
   header
   nav
   page
   breadcrumbs
   contents
   main
   sub
   footer
   other
   temporary
========================================================= */

/* template
----------------------------------------------- */
@media (max-width: 833px) {
}
@media (min-width: 834px) {
}


/* <body>
----------------------------------------------- */
body {
  color: #063a91;
  font-family: 'Noto Sans JP', 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
  line-height: 1.5;
}

/* common
----------------------------------------------- */
em {
  font-style: normal;
}

a {
  color: #063a91;
  text-decoration: none;
}

.mincho {
  font-family: 'Noto Serif JP','游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
  line-height: 1.5;
}

._katakana {
  letter-spacing: -0.1em;
}

.sec-lv-2 .lv-2-inner-sec_contents {
  margin-bottom: 1em;
}

/* マウスストーカー設定
#stalker {
  background: rgba(45, 157, 226, 0.4);
  border-radius: 50%;
  pointer-events: none;
  position: fixed;
    top: -8px;
    left: -8px;
  transition: transform 0.2s, top, .4s, left .4s, width .4s, height .4s, background-color .5s;
  transition-timing-function: ease-out;
  width: 32px; 
  height: 32px;
  z-index: 999;
}

#stalker.hov_ {
  background: rgba(45, 157, 226, 0);
  transition: .4s;
}
*/

@media (min-width: 744px) {
  a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  }
}

@media (max-width: 833px) {
  
  .inner-header,
  .inner-nav,
  .inner-breadcrumbs,
  .inner-footer,
  ._preface,
  .sec-lv-2 > .inner-sec,
  .data .sec-lv-3 > .inner-sec {
    box-sizing: border-box;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  
}

@media (min-width: 834px) {

  .inner-footer {
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    width: 100%;
      max-width: 960px;
  }
  
}

/* wrapper
----------------------------------------------- */
@media (max-width: 833px) {
  
  .wrapper {
    font-size: 14px;
  }
  
}

@media (min-width: 834px) {
}

/* header
----------------------------------------------- */
.header ._title {
  display: none;
}

/* nav
----------------------------------------------- */
.inner-nav {
  background-color: rgba( 255, 255, 255, 0.9);
  position: fixed;
    top: 0;
  width: 100%;
  z-index: 99;
}

.nav .nav-g a {
  color: #00a;
  transition: .4s;
}

.nav .nav-g a:hover {
  color: #2d9de2;
}


@media (max-width: 833px) {
  .nav {
    font-size: min(4vw,14px);
    height: 48px;
  }

  .nav ._navLogo img {
    object-fit: contain;
    height: 32px;
  }

  .nav .inner-nav {
    display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
    height: 48px;
  }

  .nav-contents.hamburger .nav_list {
    background-color: rgba( 255, 255, 255, 0.9);
    border-bottom: solid 2px #0c3170;
    border-left: solid 2px #0c3170;
    column-count: 2;
    font-size: 14px;
    line-height: 3;
    padding: 1em 1em 3em;
    position: fixed;
      left: 0;
      top: -320px;
    transition: .4s;
    width: 100%;
    z-index: 50;
  }

  .nav-contents.hamburger .nav_list .nav-g > li {
    border-bottom: dotted 1px #aaa;
  }

  .nav-contents.hamburger .menu-btn-check {
    display: none;
  }

  .nav-contents.hamburger .menu-btn {
    font-size: 40px;
    line-height: 48px;
    opacity: 1;
    transition: .4s;
  }

  .nav-contents.hamburger .menu-btn .close {
    display: none;
  }

  .nav-contents.hamburger .menu-btn-check:checked ~ .menu-btn .open {
    display: none;
  }

  .nav-contents.hamburger .menu-btn-check:checked ~ .menu-btn .close {
    display: block;
  }

  .nav-contents.hamburger .menu-btn-check:checked ~ .nav_list {
    transform:translateY(368px)
  }

  .nav-contents.hamburger .menu-btn-check:checked ~ .menu-background-color {
    display: block;
    background-color: rgba(0, 0, 0, 0.4);
    opacity: 1;
    position: fixed;
      top: 48px;
      left: 0;
    height: 100vh;
    width: 100vw;
    z-index: 30;
  }


  .nav-contents.hamburger .nav-sub {
    display: flex;
      flex-wrap: wrap;
      justify-content: space-around;
    position: relative;
    padding-bottom: 32px;
    padding-top: 8px;
  }

  .nav-contents.hamburger .nav-sub {
    position: absolute;
      bottom: -32px;
      left: -1em;
    width: calc(100% + 2em);
  }

  .nav-contents.hamburger .nav-sub .nav-contact,
  .nav-contents.hamburger .nav-sub .nav-request {
    width: 50%;
  }

  .nav-contents.hamburger .nav-sub .nav-contact > a,
  .nav-contents.hamburger .nav-sub .nav-request > a {
    background-color: #0c3170;
    border: solid 1px #6fa6f6;
    color: #fff;
    display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
    padding: 4px 0;
    height: 100%;
    width: 100%;
  }

  .nav-contents.hamburger .nav-sub > li .fa {
    display: block;
    font-size: 24px;
  }

  .nav-contents.hamburger .nav-sub > li ._text {
    display: block;
    font-size: 12px;
    line-height: 1.3;
  }

  .nav-sub a > i {
    margin-right: 8px;
  }

}
@media (min-width: 834px) {

  .nav {
    height: 112px;
  }

  .inner-nav {
    padding-left: max( 3vw, 16px);
    padding-right: max( 3vw, 16px);
  }

  .nav ._navLogo img {
    width: 352px;
  }

  .nav_list {
    display: flex;
      flex-wrap: wrap;
      align-items: center;
  }

  .inner-nav {
    display: flex;
      flex-wrap: wrap;
      align-items: center;
    padding-top: max( 1vw, 4px);
    padding-bottom: 1em;
  }

  .nav-contents {
    padding-left: 2em;
    width: calc(100% - 360px);
  }

  .nav-g,
  .nav-sub {
    display: flex;
      flex-wrap: wrap;
  }

  .nav-g {
    line-height: 2;
    width: calc(100% - 176px)
  }

  .nav-sub {
    margin-left: auto;
    width: 176px;
  }

  .nav-g > li {
    margin-right: min( 2.5vw, 32px);
  }

  .nav-g > li > a {
    padding-bottom: 4px;
    position: relative;
  }

  .nav-g > li > a::before {
    background: #2d9de2;
    content: '';
    display: block;
    margin: auto;
    position: absolute;
      left: 0;
      bottom: 0;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .3s;
    height: 2px;
    width: 100%;
  }

  .nav-g > li > a:hover::before {
    transform-origin: left top;
    transform: scale(1, 1);
  }

  .nav-contents .menu-btn-check,
  .nav-contents .menu-btn,
  .nav-contents .menu-background-color {
    display: none;
  }

  .nav-sub a {
    background-color: #00a;
    border-radius: 8px;
    color: #fff;
    display: flex;
      flex-direction: column;
      justify-content: center;
    font-size: 8px;
    margin-left: 16px;
    text-align: center;
    transition: .4s;
    height: 72px;
    width: 72px;
  }

  .nav-sub a > i {
    display: block;
    font-size: 32px;
    margin-bottom: 4px;
  }

  .nav-sub a:hover {
    background-color: #2d9de2
  }
}

/* page
----------------------------------------------- */

/* breadcrumbs
----------------------------------------------- */

/* contents
----------------------------------------------- */

/* main
----------------------------------------------- */

/* sub
----------------------------------------------- */

/* footer
----------------------------------------------- */
.footer {
  background-image: url(img/common/footer.jpg);
  background-size: cover;
  padding-top: 4em;
}

.footer .inner-footer-contents a:hover {
  color: #2d9de2;
}

.footer .inner-footer-contents ._nav ._title {
  font-size: 1.25em;
  font-weight: bold;
}

.footer .inner-footer-contents ._nav ul {
  column-count: 2;
  line-height: 2;
  list-style: disc;
  margin-left: 1em;
}

.footer .footer-contact {
  display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.footer .footer-contact {
  display: flex;
    flex-direction: column;
  text-align: center;
}

.footer .footer-contact ._text {
  font-size: 1.25em;
}

.footer .footer-contact ._telcontact > a > i,
.footer .footer-contact ._telcontact > a > p {
  display: inline;
  font-size: 2em;
}

.footer ._copyright {
  text-align: center;
}



@media (max-width: 833px) {
  .footer .inner-footer-contents ._nav,
  .footer .inner-footer-contents .footer-contact {
    width: 100%;
  }

  .footer .footer-contact .footer-btn {
    display: flex;
      flex-wrap: wrap;
  }

  .footer .footer-contact ._contact-btn,
  .footer .footer-contact ._request-btn {
    width: 50%;
  }

  .footer .footer-contact ._telcontact {
    margin: 2em 0;
  }

  .footer ._copyright {
    display: none;
  }
}

@media (min-width: 834px) {
  .footer .inner-footer-contents {
    display: flex;
      flex-wrap: wrap;
  }

  .footer .inner-footer-contents ._nav,
  .footer .inner-footer-contents .footer-contact {
    width: 48%;
  }

  .footer .footer-contact .footer-btn {
    display: flex;
      flex-wrap: wrap;
      justify-content: space-around;
  }

}

/* other
----------------------------------------------- */
.right-fix.request > a {
  background-color: rgba(255, 255, 255, 0.8);
  border-bottom: solid 1px #063a91;
  border-left: solid 1px #063a91;
  border-top: solid 1px #063a91;
  border-radius: 8px 0 0 8px;
  display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  line-height: 1.3;
  position: fixed;
      top: 48%;
      right: 0px;
  text-align: center;
  transition: .4s;
}

.right-fix.request > a:hover {
  background-color: rgba(255, 255, 255, 1.0);
} 

.right-fix.request .fa-files-o {
  font-size: 40px;
}

.go_top {
  display: none;
}

@media (max-width: 833px) {
  .right-fix.request > a {
    font-size: 8px;
    line-height: 1.3;
    height: 64px;
    width: 64px;
  }

  .right-fix.request > a:hover {
    background-color: rgba(255, 255, 255, 1.0);
  } 

  .right-fix.request .fa-files-o {
    font-size: 32px;
  }
  
  .go_top {
    position: fixed;
      bottom: 16px;
      right: 16px;
    z-index: 999;
  }
  
  .go_top img {
    width: 24px;
  }
  
}

@media (min-width: 834px) {
  .right-fix.request > a {
    font-size: 8px;
    line-height: 1.3;
    height: 80px;
    width: 80px;
  }

  .right-fix.request > a:hover {
    background-color: rgba(255, 255, 255, 1.0);
  } 

  .right-fix.request .fa-files-o {
    font-size: 40px;
  }

  .go_top {
    position: fixed;
      bottom: 16px;
      right: 32px;
  }
  
  .go_top img {
    width: 48px;
  }
  
}

/* temporary
----------------------------------------------- */

/* end of file */