@charset "UTF-8";
/* CSS Document */
/*! Pushy - v1.1.0 - 2017-1-30
* Pushy is a responsive off-canvas navigation menu using CSS transforms & transitions.
* https://github.com/christophery/pushy/
* by Christopher Yee */
/* Menu Appearance */
/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* 変数の定義
--------------------------------------------------*/
/* CSS Document */
/*! Pushy - v1.1.0 - 2017-1-30
* Pushy is a responsive off-canvas navigation menu using CSS transforms & transitions.
* https://github.com/christophery/pushy/
* by Christopher Yee */
/* Menu Appearance */
/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* CSS Document */
/*! Pushy - v1.1.0 - 2017-1-30
* Pushy is a responsive off-canvas navigation menu using CSS transforms & transitions.
* https://github.com/christophery/pushy/
* by Christopher Yee */
/* Menu Appearance */
/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* 色の定義
--------------------------------------------------*/
/* テキストパーツ
--------------------------------------------------*/
/* フォントの定義
--------------------------------------------------*/
html {
  font-size: 10px;
}

/* デフォルトでは Noto Sans JP を使用 */
body, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure, select, input, textarea {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
  color: #000;
}
@media screen and (max-width: 768px) {
  body, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure, select, input, textarea {
    font-size: 1.6rem;
  }
}

h1, h2, h3, h4 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 1.6rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
  color: #000;
}

p {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.mincho {
  font-family: "Zen Antique", serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.06em;
}

.urbanist {
  font-family: "Urbanist", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

/*safari リセット*/
/* SPメニュー
--------------------------------------------------*/
body {
  position: relative;
}

#nav_head {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  height: 60px;
  align-items: center;
  justify-content: space-between;
  transition: 0.3s;
  background-color: #fff;
}
@media screen and (max-width: 999px) {
  #nav_head {
    display: flex;
  }
}
#nav_head .header_logo_sp {
  position: relative;
  z-index: 10000;
  height: 50px;
  display: flex;
  align-items: center;
  max-width: 350px;
  min-width: 240px;
  width: 50%;
}
#nav_head .header_logo_sp a {
  display: block;
}
#nav_head .header_logo_sp a img {
  padding: 10px 0 5px 20px;
}
#nav_head .openbtn {
  /*reset*/
  background-color: #1D2088;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  /*reset*/
  display: none;
  position: relative;
  width: 60px;
  height: 60px;
  z-index: 10000;
  transition: 0.3s;
}
@media screen and (max-width: 999px) {
  #nav_head .openbtn {
    display: block;
  }
}
#nav_head .openbtn span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  height: 2px;
  background: #fff;
  width: 30px;
}
#nav_head .openbtn span:nth-of-type(1) {
  top: 20px;
}
#nav_head .openbtn span:nth-of-type(2) {
  top: 29px;
}
#nav_head .openbtn span:nth-of-type(3) {
  top: 37px;
}
#nav_head .openbtn.active span {
  width: 30px;
}
#nav_head .openbtn.active span:nth-of-type(1) {
  top: 22px;
  transform: translateY(6px) translateX(-50%) rotate(-45deg);
}
#nav_head .openbtn.active span:nth-of-type(2) {
  opacity: 0;
}
#nav_head .openbtn.active span:nth-of-type(3) {
  top: 34px;
  transform: translateY(-6px) translateX(-50%) rotate(45deg);
}
#nav_head #nav_sp {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  overflow-y: auto;
  overscroll-behavior-y: contain;
  opacity: 0;
  pointer-events: none;
  transition-duration: 0.3s;
  z-index: 999;
}
#nav_head #nav_sp.active {
  opacity: 1;
  pointer-events: all;
}
@media screen and (max-width: 999px) {
  #nav_head #nav_sp {
    display: block;
  }
}
#nav_head #nav_sp .nav_list {
  margin: 100px auto auto;
  width: 90%;
}
#nav_head #nav_sp .nav_list li {
  border-bottom: 1px solid #E4E4E4;
  padding: 0px 10px;
}
#nav_head #nav_sp .nav_list li .link {
  padding: 15px 0;
  display: inline-block;
}
#nav_head #nav_sp .nav_list li .out {
  position: relative;
}
#nav_head #nav_sp .nav_list li .out::after {
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 14px;
  height: 14px;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
  background: #1D2088;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 14 14'%3E%3C!-- Generator: Adobe Illustrator 29.3.0, SVG Export Plug-In . SVG Version: 2.1.0 Build 146) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23fff; stroke: %23fff; %7D %3C/style%3E%3C/defs%3E%3Cpath class='st0' d='M10.5,3l.4-.4-.4-.4-1.1-1.1s0,0,0,0c-.1-.1-.1-.3,0-.4,0-.1.2-.2.3-.2h3.5c.2,0,.4.2.4.4v3.5c0,.2,0,.3-.2.3-.1,0-.3,0-.4,0l-1.1-1.1-.4-.4-.4.4-4.6,4.6s0,0,0,0c-.1.1-.4.1-.5,0-.1-.1-.1-.4,0-.5h0s4.6-4.6,4.6-4.6ZM.5,3.1c0-.9.8-1.7,1.7-1.7h3.1c.2,0,.4.2.4.4s-.2.4-.4.4h-3.1c-.5,0-.9.4-.9.9v8.8c0,.5.4.9.9.9h8.7c.5,0,.9-.4.9-.9v-3.1c0-.2.2-.4.4-.4s.4.2.4.4v3.1c0,.9-.8,1.7-1.7,1.7H2.2c-.9,0-1.7-.8-1.7-1.7V3.1Z'/%3E%3C/svg%3E");
}
#nav_head #nav_sp .nav_list li .child {
  padding: 10px 10px;
  display: block;
  font-size: 14px;
  color: #666666;
  position: relative;
}
#nav_head #nav_sp .nav_list li .child:first-of-type {
  padding: 10px 10px 10px 10px;
}
#nav_head #nav_sp .nav_list li .child:last-of-type {
  padding: 10px 10px 25px 10px;
}
#nav_head #nav_sp .nav_list li .out_child {
  position: relative;
}
#nav_head #nav_sp .nav_list li .out_child::after {
  transition: 0.3s;
  position: absolute;
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  left: 6.5em;
  top: 14px;
  background: #1D2088;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_レイヤー_1' data-name='レイヤー_1' xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 14 14'%3E%3C!-- Generator: Adobe Illustrator 29.3.0, SVG Export Plug-In . SVG Version: 2.1.0 Build 146) --%3E%3Cdefs%3E%3Cstyle%3E .st0 %7B fill: %23fff; stroke: %23fff; %7D %3C/style%3E%3C/defs%3E%3Cpath class='st0' d='M10.5,3l.4-.4-.4-.4-1.1-1.1s0,0,0,0c-.1-.1-.1-.3,0-.4,0-.1.2-.2.3-.2h3.5c.2,0,.4.2.4.4v3.5c0,.2,0,.3-.2.3-.1,0-.3,0-.4,0l-1.1-1.1-.4-.4-.4.4-4.6,4.6s0,0,0,0c-.1.1-.4.1-.5,0-.1-.1-.1-.4,0-.5h0s4.6-4.6,4.6-4.6ZM.5,3.1c0-.9.8-1.7,1.7-1.7h3.1c.2,0,.4.2.4.4s-.2.4-.4.4h-3.1c-.5,0-.9.4-.9.9v8.8c0,.5.4.9.9.9h8.7c.5,0,.9-.4.9-.9v-3.1c0-.2.2-.4.4-.4s.4.2.4.4v3.1c0,.9-.8,1.7-1.7,1.7H2.2c-.9,0-1.7-.8-1.7-1.7V3.1Z'/%3E%3C/svg%3E");
}
#nav_head #nav_sp .nav_list li .dropdownlink {
  position: relative;
}
#nav_head #nav_sp .nav_list li .dropdownlink .link {
  display: inline-block;
}
#nav_head #nav_sp .nav_list li .dropdownlink::before {
  position: absolute;
  content: "";
  width: 15px;
  height: 1px;
  background-color: #1D2088;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
#nav_head #nav_sp .nav_list li .dropdownlink::after {
  position: absolute;
  content: "";
  width: 1px;
  height: 15px;
  background-color: #1D2088;
  right: 7px;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s;
}
#nav_head #nav_sp .nav_list li.open .dropdownlink::after {
  opacity: 0;
}
#nav_head #nav_sp .accordion-menu .submenuItems {
  display: none;
}
#nav_head #nav_sp .accordion-menu li.open .submenuItems {
  display: block;
}
#nav_head #nav_sp .copy {
  text-align: center;
  margin-top: 20px;
  font-size: 12px;
  color: #666666;
  padding-bottom: 60px;
  display: block;
}/*# sourceMappingURL=pushy.css.map */