@font-face {
  font-family: "Noto Sans JP";
  src: url("../font/Noto_Sans_JP/NotoSansJP-ExtraBold.woff2") format("woff2"), url("../font/Noto_Sans_JP/NotoSansJP-ExtraBold.woff") format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("../font/Noto_Sans_JP/NotoSansJP-Bold.woff2") format("woff2"), url("../font/Noto_Sans_JP/NotoSansJP-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("../font/Noto_Sans_JP/NotoSansJP-SemiBold.woff2") format("woff2"), url("../font/Noto_Sans_JP/NotoSansJP-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("../font/Noto_Sans_JP/NotoSansJP-Medium.woff2") format("woff2"), url("../font/Noto_Sans_JP/NotoSansJP-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("../font/Noto_Sans_JP/NotoSansJP-Regular.woff2") format("woff2"), url("../font/Noto_Sans_JP/NotoSansJP-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
header.site-header {
  background: #FFF;
  box-shadow: 0 5px 12px 0 rgba(33, 50, 68, 0.03), 0 8px 40px 0 rgba(33, 50, 68, 0);
  height: auto;
  border: 0 !important;
}
header.site-header .site-branding {
  border: 0 !important;
}
header.site-header .site-branding .container {
  max-width: 100% !important;
  transition: all ease-in-out 0.3s;
  padding: 28px 72px 26px;
}
@media (max-width: 1336px) {
  header.site-header .site-branding .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 991px) {
  header.site-header .site-branding .container {
    padding: 17px 16px;
  }
}
@media (min-width: 992px) {
  header.site-header .site-branding .container .site-title img {
    height: 40px;
  }
}
@media (max-width: 991px) {
  header.site-header .site-branding .container .site-title img {
    height: 30px;
  }
}
@media screen and (min-width: 1366px) {
  header.site-header .site-branding .menu-header-right,
  header.site-header .site-branding .search-btn-header {
    height: 100%;
  }
}
header.site-header .site-branding .menu-header-right li a,
header.site-header .site-branding .search-btn-header li a {
  min-height: 38px;
}
@media screen and (min-width: 1366px) {
  header.site-header .site-branding .menu-header-right li a,
  header.site-header .site-branding .search-btn-header li a {
    height: 100%;
  }
}
header.site-header .site-branding .menu-header-right .add_download {
  width: auto;
}
header.site-header .site-branding .search-btn-header {
  width: auto;
}
@media (max-width: 1366px) and (min-width: 993px) {
  header.site-header .site-branding .search-btn-header .content-btn b {
    font-weight: 700;
  }
}
header.site-header .site-branding .search-wrap form {
  margin-bottom: 0 !important;
}
@media screen and (min-width: 993px) {
  header.site-header .site-branding .search-wrap {
    right: 450px;
  }
}
header.site-header .site-branding .header-rignt-group {
  display: flex;
  position: absolute;
  right: 64px;
  top: 50%;
  transform: translateY(-50%);
  align-items: center;
  gap: 10px;
}
@media screen and (max-width: 1336px) {
  header.site-header .site-branding .header-rignt-group {
    right: 20px;
  }
}
@media screen and (max-width: 992px) {
  header.site-header .site-branding .header-rignt-group {
    display: none;
  }
}
header.site-header .site-branding .header-rignt-group .header-about {
  padding: 0;
}
header.site-header .site-branding .header-rignt-group .header-about a {
  color: #0E79CC;
  line-height: 44px;
  border-radius: 4px;
  border: 1px solid #0E79CC;
  font-size: 16px;
  display: flex;
  justify-content: center;
  gap: 8px;
  font-weight: 500;
  align-items: center;
  text-decoration: none;
  padding: 0 8px;
  justify-content: center;
  width: 213px;
  flex-wrap: wrap;
  letter-spacing: 0.32px;
}
header.site-header .site-branding .header-rignt-group .header-about a::before {
  content: "";
  width: 20px;
  height: 20px;
  -webkit-mask: url(../images/help-fill.svg) no-repeat center;
  -webkit-mask-size: contain;
  background-color: #0E79CC;
}
header.site-header .site-branding .header-rignt-group .header-about a:hover {
  border: 1px solid #0D57A5;
  background: #D4EBFE;
  opacity: 1;
  color: #0D57A5;
}
header.site-header .site-branding .header-rignt-group .header-about a:hover::before {
  background-color: #0D57A5;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container {
  position: unset;
  transform: none;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul {
  padding: 0;
  gap: 10px;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li {
  width: auto !important;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li a {
  border-radius: 4px !important;
  line-height: 43px;
  box-shadow: none;
  display: flex;
  gap: 8px;
  align-items: center;
  padding: 0 24px 0 19px !important;
  width: fit-content;
  margin: 0;
  font-size: 16px !important;
  height: auto;
  max-width: 174px;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li a b {
  font-weight: 500;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li a::after {
  order: -1;
  width: 14px !important;
  height: 14px !important;
  position: unset !important;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li.add_download a {
  border-color: #F16815;
  color: #F16815;
  background-color: #fff;
  width: 174px;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li.add_download a:after {
  content: "";
  width: 20px;
  height: 20px;
  mask: url("../images/download-new.svg") no-repeat center !important;
  mask-size: 20px !important;
  -webkit-mask: url("../images/download-new.svg") no-repeat center !important;
  -webkit-mask-size: 20px !important;
  background-image: none;
  background-color: #F16815;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li.add_download a:hover {
  border: 1px solid #D05708;
  background: #FFDDC9;
  color: #D05708;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li.add_download a:hover::before {
  background-color: #D05708;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li:not(.add_download) a {
  color: #fff;
  border-color: #F57F38;
  background-color: #F57F38;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li:not(.add_download) a::after {
  background-color: #fff;
  mask: url(../images/email-contact-top.svg) no-repeat center;
  mask-size: contain;
  -webkit-mask: url(../images/email-contact-top.svg) no-repeat center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  width: 20px !important;
  height: 20px !important;
}
header.site-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li:not(.add_download) a:hover {
  border: 1px solid #D05708;
  background: #D05708;
  opacity: 1;
}
@media screen and (min-width: 1367px) {
  header.site-header .header-about {
    padding-right: 600px;
  }
}
header.site-header .header-description {
  display: none;
}
header.site-header .header-description .container {
  padding: 28px 72px 26px;
}
header.site-header.site-header .menu-menu-header-right-container ul a b {
  font-weight: 700;
}
header.site-header.site-header .menu-menu-header-right-container ul li:nth-of-type(1) a {
  width: 230px;
  background-color: #64B5F6;
  border-color: #64B5F6;
}
header.site-header.site-header .menu-menu-header-right-container ul li:nth-of-type(2) a {
  background: #FF8034;
  color: #1D1D1D;
}
header.site-header.site-header .menu-menu-header-right-container ul li:nth-of-type(2) a::after {
  mask: url(../images/contact-header.svg) no-repeat center;
  mask-size: contain;
  -webkit-mask: url(../images/contact-header.svg) no-repeat center;
  -webkit-mask-size: contain;
  background-color: #1D1D1D;
  background-image: none;
}
@media (max-width: 1366px) and (min-width: 993px) {
  header.site-header.site-header .menu-menu-header-right-container ul li:nth-of-type(2) a::after {
    height: 28px !important;
  }
}
header.site-header .main-navigation {
  background: #0E79CC;
  padding: 0 57px;
  position: relative;
  z-index: 11;
  border: 0;
}
@media (max-width: 1336px) {
  header.site-header .main-navigation {
    padding-left: 20px;
    padding-right: 20px;
  }
}
header.site-header .main-navigation .container {
  max-width: 1326px;
}
header.site-header .main-navigation .primary-menu {
  display: flex;
  flex-wrap: wrap;
}
header.site-header .main-navigation .primary-menu li {
  padding: 0;
  width: 20%;
  position: relative;
}
header.site-header .main-navigation .primary-menu li:before {
  content: "";
  left: 0;
  background-color: #0D57A5;
  opacity: 0;
  height: 100%;
  width: 100%;
  position: absolute;
  bottom: 0;
  top: 0;
  transition: all ease-in-out 0.15s;
}
header.site-header .main-navigation .primary-menu li::after {
  content: "";
  left: 0;
  right: auto;
  background-color: #7EB6E6;
  top: 16px;
  height: calc(100% - 32px);
}
header.site-header .main-navigation .primary-menu li a {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.9px;
  line-height: 1.5;
  padding: 12px 24px;
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  height: 100%;
  min-height: 72px;
  letter-spacing: 0.9px;
}
@media (max-width: 1336px) {
  header.site-header .main-navigation .primary-menu li a {
    padding: 22px 12px;
    font-size: 16px;
  }
}
header.site-header .main-navigation .primary-menu li a:after {
  content: none;
}
header.site-header .main-navigation .primary-menu li:hover::before {
  opacity: 1;
}
header.site-header .main-navigation .primary-menu li:last-child a::before {
  content: "";
  position: absolute;
  width: 1px;
  top: 16px;
  height: calc(100% - 32px);
  right: 0;
  background: #7EB6E6;
  left: auto;
}
header.site-header .main-navigation .primary-menu li:last-child ul li a::before {
  content: none;
}
header.site-header .main-navigation .primary-menu .menu-item-has-children a {
  flex-direction: column;
}
header.site-header .main-navigation .primary-menu .menu-item-has-children a:after {
  content: "";
  width: 16px;
  height: 0;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'><path d='M2.6 9L4 7.6L12 15.6L20 7.6L21.4 9L12 18.4L2.6 9Z' fill='%23fff'/></svg>");
  background-size: 16px;
  position: unset;
  background-repeat: no-repeat;
  transition: all ease-in-out 0.15s;
}
header.site-header .main-navigation .primary-menu .menu-item-has-children:hover a::after {
  height: 16px;
}
header.site-header .main-navigation .primary-menu .menu-item-has-children .sub-menu {
  width: 100%;
  z-index: 8;
}
header.site-header .main-navigation .primary-menu .menu-item-has-children .sub-menu li {
  width: 100%;
  background-color: #0E79CC;
  position: relative;
}
header.site-header .main-navigation .primary-menu .menu-item-has-children .sub-menu li a {
  color: #fff;
  letter-spacing: 0.32px;
  font-size: 15px;
  font-weight: 500;
  padding: 5px 40px 5px 11px;
  position: relative;
  background-color: transparent;
  z-index: 1;
  text-align: left;
  flex-direction: row;
  justify-content: flex-start;
  gap: 0;
  min-height: 60px;
  letter-spacing: 0.3px;
}
header.site-header .main-navigation .primary-menu .menu-item-has-children .sub-menu li a::before {
  content: "";
  left: 12px;
  right: 12px;
  background-color: #7EB6E6;
  top: 0;
  height: 1px;
  position: absolute;
  width: calc(100% - 24px);
}
header.site-header .main-navigation .primary-menu .menu-item-has-children .sub-menu li a::after {
  transform: rotate(-90deg);
  left: auto;
  right: 12px;
  top: calc(50% - 8px);
  position: absolute;
  display: block;
  width: 16px;
  height: 16px;
}
header.site-header .main-navigation .primary-menu .menu-item-has-children .sub-menu .current-menu-item a {
  background: #0D57A5;
}
header.site-header .main-navigation .primary-menu .current-menu-item a {
  background: #0D57A5;
}

header.site-header.small-header .site-branding .container {
  padding-top: 16px;
  padding-bottom: 16px;
}
header.site-header.small-header .site-branding .container img {
  height: 32px;
}
header.site-header.small-header .site-branding .header-rignt-group {
  gap: 8px;
}
header.site-header.small-header .site-branding .header-rignt-group .header-about,
header.site-header.small-header .site-branding .header-rignt-group .menu-menu-header-right-container ul {
  gap: 8px;
}
header.site-header.small-header .site-branding .header-rignt-group .header-about li a,
header.site-header.small-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li a {
  line-height: 31px;
  min-height: 33px;
  font-size: 14px !important;
  letter-spacing: 0.28px;
  width: 154px;
  padding: 0 8px !important;
}
header.site-header.small-header .site-branding .header-rignt-group .header-about li a::after,
header.site-header.small-header .site-branding .header-rignt-group .menu-menu-header-right-container ul li a::after {
  width: 17px !important;
  height: 18px !important;
  position: unset !important;
  margin: -1px -4px 2px 0px;
}
header.site-header.small-header .site-branding .header-rignt-group .header-about a {
  width: 188px;
  font-size: 14px;
  line-height: 31px;
}
header.site-header.small-header .site-branding .header-rignt-group .header-about a:before {
  width: 17px !important;
  height: 18px !important;
  margin: -1px -4px 2px 0px;
}

.xeory-spnav-wrap {
  padding-bottom: 100px !important;
}

.xeory-spnav-wrap.active {
  padding: 0;
  background: #fff;
  z-index: 9999;
}

.xeory-sp-nav-btn {
  background: url(../images/icon-menu.svg) no-repeat center;
  background-size: 44px;
  right: 15px;
}

.sp-nav-inner .xeory-spnav-btn-close {
  background: url(../images/icon_close.svg) no-repeat center;
  background-size: 44px;
  right: 10px;
  width: 48px;
  height: 48px;
  top: 7px;
}
.sp-nav-inner .logo {
  padding: 17px 16px;
}
.sp-nav-inner .header-rignt-group {
  padding: 7px 32px;
}
.sp-nav-inner .menu-menu-header-right-container {
  padding: 0;
  margin: 0;
}
.sp-nav-inner .menu-menu-header-right-container ul {
  display: flex;
  flex-direction: column;
}
.sp-nav-inner .menu-menu-header-right-container ul li a {
  border-radius: 4px;
  background-color: #F16815;
  border: 1px solid #F16815;
  color: #fff;
  display: flex;
  font-size: 16px;
  align-items: center;
  gap: 10px;
  height: 46px;
  box-shadow: none;
}
.sp-nav-inner .menu-menu-header-right-container ul li a b {
  font-weight: 500;
}
.sp-nav-inner .menu-menu-header-right-container ul li a::after {
  order: -1;
  position: unset;
  margin: 0 !important;
  transform: none;
}
.sp-nav-inner .menu-menu-header-right-container ul li.add_download {
  order: 1;
}
.sp-nav-inner .menu-menu-header-right-container ul li.add_download a {
  background-color: #fff;
  color: #F16815;
}
.sp-nav-inner .menu-menu-header-right-container ul li.add_download a:after {
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none"><mask id="mask0_14_59" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="12" height="12"><rect width="12" height="12" fill="%23D9D9D9"/></mask><g mask="url(%23mask0_14_59)"><path d="M6 9.0308L2.5846 5.6154L3.4278 4.7478L5.4 6.72V0H6.6V6.72L8.5722 4.7478L9.4154 5.6154L6 9.0308ZM1.4462 12C1.04207 12 0.7 11.86 0.42 11.58C0.14 11.3 0 10.9579 0 10.5538V8.3846H1.2V10.5538C1.2 10.6154 1.22567 10.6718 1.277 10.723C1.3282 10.7743 1.3846 10.8 1.4462 10.8H10.5538C10.6154 10.8 10.6718 10.7743 10.723 10.723C10.7743 10.6718 10.8 10.6154 10.8 10.5538V8.3846H12V10.5538C12 10.9579 11.86 11.3 11.58 11.58C11.3 11.86 10.9579 12 10.5538 12H1.4462Z" fill="%23F16815"/></g></svg>');
  background-color: #F16815;
  background-image: none;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  height: 16px;
}
.sp-nav-inner .menu-menu-header-right-container ul li:not(.add_download) a::after {
  background-color: #fff;
  mask: url(../images/email-contact-top.svg) no-repeat center;
  mask-size: contain;
  -webkit-mask: url(../images/email-contact-top.svg) no-repeat center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  width: 20px !important;
  height: 20px !important;
}
.sp-nav-inner .header-about {
  padding: 0;
}
.sp-nav-inner .header-about a {
  color: #0E79CC;
  line-height: 44px;
  border-radius: 4px;
  border: 1px solid #0E79CC;
  font-size: 16px;
  display: flex;
  justify-content: center;
  gap: 8px;
  font-weight: 500;
  align-items: center;
  text-decoration: none;
  padding: 0 8px;
  justify-content: center;
  width: 100%;
  flex-wrap: wrap;
  letter-spacing: 0.32px;
  position: unset;
}
.sp-nav-inner .header-about a::before {
  content: "";
  width: 20px;
  height: 20px;
  -webkit-mask: url(../images/help-fill.svg) no-repeat center;
  -webkit-mask-size: contain;
  background-color: #0E79CC;
}
.sp-nav-inner .header-about a:hover {
  border: 1px solid #0D57A5;
  background: #D4EBFE;
}
.sp-nav-inner .header-about a:hover::before {
  background-color: #0D57A5;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul {
  border: 0;
  background-color: transparent;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li {
  margin: 0;
  border: 0;
  position: relative;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li::before {
  content: none;
  content: "";
  left: 0;
  right: 0;
  height: 1px;
  top: 0;
  background-color: #64B5F6;
  position: absolute;
  opacity: 1;
  z-index: 11;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li a {
  background: #0D57A5;
  font-size: 16px;
  letter-spacing: 0.32px;
  line-height: 50px;
  padding: 6px 16px 7px;
  gap: 13px;
  align-items: center;
  margin-bottom: -1px;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li a:after {
  content: "";
  width: 16px;
  height: 16px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'><path d='M9.00156 2.6001L7.60156 4.0001L15.6016 12.0001L7.60156 20.0001L9.00156 21.4001L18.4016 12.0001L9.00156 2.6001Z' fill='%23fff'/></svg>");
  background-size: 16px;
  transform: rotate(90deg);
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li a:hover {
  background-color: #0D57A5;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li.nav-open > a {
  background-color: #0D57A5;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li.nav-open > a::after {
  transform: rotate(270deg);
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li .sub-menu li::before {
  left: 34px;
  right: 34px;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li .sub-menu li a {
  line-height: 49px;
  padding: 6px 45px;
  background-color: #0E79CC;
  justify-content: space-between;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li .sub-menu li a::after {
  transform: none;
  order: 1;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li .sub-menu li:first-child:before {
  content: none;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul .menu-item-has-children a {
  display: flex;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul .menu-item-has-children a::after {
  transform: rotate(90deg);
  bottom: 16px;
  right: 16px;
  order: -1;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul li:not(.menu-item-has-children, .sub-menu li) a::after {
  content: none;
}
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul .current-post-parent a,
.sp-nav-inner .spnav-widget.widget_nav_menu > div ul .current-menu-item a {
  background-color: #0D57A5;
}

#secondary #custom_html-4 {
  z-index: 3;
}

@media (max-width: 374px) {
  #xeory-fixed-banner-sp .xfb-cta-wrap .xfb-cta-button a {
    font-size: 10px !important;
  }
}