@charset "UTF-8";
/***
    The new CSS reset - version 1.8.4 (last updated 14.2.2023)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

/* Preferred box-sizing value */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Reapply the pointer cursor for anchor tags */
a, button {
  cursor: revert;
}

/* Remove list styles (bullets/numbers) */
ol, ul, menu {
  list-style: none;
}

/* For images to not be able to exceed their container */
img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

/* removes spacing between cells in tables */
table {
  border-collapse: collapse;
}

/* Safari - solving issue when using user-select:none on the <body> text input doesn't working */
input, textarea {
  -webkit-user-select: auto;
}

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
  white-space: revert;
}

/* minimum style to allow to style meter element */
meter {
  appearance: revert;
}

/* preformatted text - use only for this feature */
:where(pre) {
  all: revert;
}

/* reset default text opacity of input placeholder */
::placeholder {
  color: unset;
}

/* remove default dot (•) sign */
/*::marker {
    content: initial;
}*/
/* fix the feature of 'hidden' attribute.
   display:revert; revert to element instead of attribute */
:where([hidden]) {
  display: none;
}

/* revert for bug in Chromium browsers
   - fix for the content editable attribute will work properly.
   - webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element*/
:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable=true]) {
  -webkit-user-drag: element;
}

/* Revert Modal native behavior */
/*:where(dialog:modal) {
    all: revert;
}*/
/*
$c-theme: #0574a7;
$c-gn: #05a759;
$c-lgn: #f0fff8;
$c-lb: #caeaef;
$c-pdf: #de4e55;
$c-doc: #3992d1;
$c-docx: #3992d1;
$c-xls: #0ea790;
$c-xlsx: #0ea790;
$c-ppt: #e65e41;
$c-pptx: #e65e41;
$c-blank_paper: #98989f;
$c-thin: #e9f6fc;

$w-main: 1180px;
$sp-offset: 8px;




// 以下、6/9 江澤追記
$transition-05s: all 0.5s ease;

$c-main: #333;
$c-blue: #177195;
$c-green: #05a759;

$f-icon: 'font_name';

$icon-arrow_thin_down: "\e900";
$icon-arrow_thin_left: "\e901";
$icon-arrow_thin_right: "\e902";
$icon-arrow_thin_up: "\e903";
$icon-arrow_bold_down: "\e904";
$icon-arrow_bold_left: "\e905";
$icon-arrow_bold_right: "\e906";
$icon-arrow_bold_up: "\e907";
$icon-arrow_circle_down: "\e908";
$icon-arrow_circle_left: "\e909";
$icon-arrow_circle_right: "\e90a";
$icon-arrow_circle_up: "\e90b";
$icon-arrow_tail_down: "\e90c";
$icon-arrow_tail_left: "\e90d";
$icon-arrow_tail_right: "\e90e";
$icon-arrow_tail_up: "\e90f";
$icon-plus: "\e910";
$icon-minus: "\e911";
$icon-window_blank: "\e912";
$icon-pdf: "\e913";
$icon-xlsx: "\e914";
$icon-word: "\e915";
$icon-doc: "\e915";
$icon-print: "\e916";
$icon-map: "\e917";
$icon-sp: "\e918";
$icon-bookmark: "\e919";
$icon-books: "\e91a";
$icon-book_open: "\e91b";
$icon-blank_paper: "\e91c";
$icon-xls: "\e91d";
$icon-docx: "\e91e";
$icon-ppt: "\e91f";
$icon-pptx: "\e920";

*/
/*------------------------------------------------------
 編集エリア内
------------------------------------------------------*/
body #page .default-area {
  /*ブロック末尾での回り込み解除*/
  /*画像レイアウト*/
}
body #page .default-area:after {
  content: "";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}
body #page .default-area h1,
body #page .default-area h2,
body #page .default-area h3,
body #page .default-area h4,
body #page .default-area h5,
body #page .default-area h6 {
  margin: 1.24em 0 0.64em 0;
  padding: 0 0 0 0.5em;
  border-left: 5px solid #1e4b73;
  font-weight: bold;
}
body #page .default-area h1 + p,
body #page .default-area h2 + p,
body #page .default-area h3 + p,
body #page .default-area h4 + p,
body #page .default-area h5 + p,
body #page .default-area h6 + p {
  margin-top: 0;
}
body #page .default-area h1,
body #page .default-area h2,
body #page .default-area h4,
body #page .default-area h5,
body #page .default-area h6 {
  border-left: none;
  padding: 0;
}
body #page .default-area strong {
  font-weight: bold;
}
body #page .default-area a[target=_blank] {
  padding-right: 0 !important;
}
body #page .default-area a {
  text-decoration: underline;
}
body #page .default-area a[target=_blank] {
  text-decoration: underline;
  /* &::after {
    content: '';
    mask: url(../img/top/t_blank.png?v=251224) no-repeat;
    mask-position: center;
    mask-size: contain;
    -webkit-mask: url(../img/top/t_blank.png?v=251224) no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    background-color: #1e4b73;
    width: 16px;
    height: 16px;
    display: inline-block;
    vertical-align: sub;
    margin: 0 0.32em;
    border: none;
  }*/
}
body #page .default-area a[target=_blank]::before {
  display: none;
}
body #page .default-area .emphasis {
  font-size: 22px;
}
@media (max-width: 768px) {
  body #page .default-area .emphasis {
    font-size: 18px;
  }
}
body #page .default-area .ccm-block-file.pdf a,
body #page .default-area a.pdf {
  text-decoration: underline;
  color: #1e4b73;
}
body #page .default-area .ccm-block-file.pdf a::after,
body #page .default-area a.pdf::after {
  content: "";
  -webkit-mask: url(../img/top/file_icon.png?v=251224) no-repeat;
          mask: url(../img/top/file_icon.png?v=251224) no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask: url(../img/top/file_icon.png?v=251224) no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  background-color: #1e4b73;
  width: 18px;
  height: 18px;
  display: inline-block;
  vertical-align: sub;
  margin: 0 0.32em;
  border: none;
}
body #page .default-area a:not([class]) {
  color: #1e4b73;
  position: relative;
  display: inline-block;
  padding-left: 0;
  /*&::before {
    content: '';
    width: 9px;
    height: 9px;
    border: 0;
    border-top: solid 2px #1e4b73;
    border-right: solid 2px #1e4b73;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: 6px;
    bottom: 0;
    margin: auto;
  }*/
}
body #page .default-area sup {
  display: inline-block;
  vertical-align: super;
  font-size: 0.5em;
  margin-left: 0.32em;
}
body #page .default-area u {
  text-decoration: underline;
}
body #page .default-area i,
body #page .default-area em {
  font-style: italic;
}
body #page .default-area b {
  font-weight: bold;
}
body #page .default-area del {
  text-decoration: line-through;
}
body #page .default-area sub {
  display: inline-block;
  vertical-align: sub;
  font-size: 0.5em;
  margin-left: 0.32em;
}
body #page .default-area small {
  font-size: smaller;
}
body #page .default-area table {
  width: 100%;
  margin: 30px auto 0;
  border-collapse: collapse;
  border-style: solid;
  border-width: 1px 0 0 1px;
  border-color: #1e4b73;
  font-size: 1rem;
  line-height: 1.4;
}
body #page .default-area table caption {
  padding: 0 0 0.64em 0;
  text-align: left;
  font-size: 1.08em;
  font-weight: bold;
  color: #1e4b73;
}
body #page .default-area table th {
  font-weight: bold;
  background-color: #f7fbfc;
  color: #1e4b73;
}
body #page .default-area table th,
body #page .default-area table td {
  padding: 20px;
  border-style: solid;
  border-width: 0 1px 1px 0;
  border-color: #1e4b73;
  font-size: 18px;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-all;
}
@media (max-width: 1024px) {
  body #page .default-area table th,
  body #page .default-area table td {
    font-size: 16px;
  }
}
body #page .default-area ul {
  margin: 1em 0;
}
body #page .default-area ul > li {
  font-size: 18px;
  position: relative;
  margin: 1.5em 0 0 0.5em;
  padding: 0 0 0 24px;
}
body #page .default-area ul > li:before {
  position: absolute;
  top: 0.64em;
  left: 0;
  content: "";
  width: 16px;
  height: 3px;
  background-color: #1e4b73;
}
@media screen and (max-width: 750px) {
  body #page .default-area ul > li {
    font-size: 16px;
  }
}
body #page .default-area ul.plain li {
  padding-left: 0;
}
body #page .default-area ul.plain li a {
  text-decoration: underline;
}
body #page .default-area ul.plain li::before {
  display: none;
}
body #page .default-area ol {
  counter-reset: number 0;
}
body #page .default-area ol > li {
  list-style-type: decimal;
  margin-left: 2.6em;
  padding: 0 0 0 0.5em;
  margin: 1.5em 0 0 1.5em;
  font-size: 18px;
  /*&:marker {
    content: initial;
  }*/
}
@media screen and (max-width: 750px) {
  body #page .default-area ol > li {
    font-size: 16px;
  }
}
body #page .default-area ol li.nm {
  list-style: none;
}
body #page .default-area ol li.nm:before {
  counter-increment: number 1;
  content: "(" counter(number) ")";
  margin-left: -8em;
  padding-left: 5.8rem;
}
body #page .default-area .ccm-block-file {
  margin-top: 24px;
  /*&.pdf>a::after {
    content: 'pdf';
  }*/
}
body #page .default-area .ccm-block-file + .ccm-block-file {
  margin-top: 0;
}
body #page .default-area .ccm-block-file + :not(.ccm-block-file) {
  margin-top: 24px;
}
body #page .default-area .ccm-block-file > a {
  display: flex;
  align-items: center;
  justify-content: start;
  margin: 0;
  padding: 1em 0;
  font-size: 18px;
  text-decoration: none;
  line-height: 1.4;
  min-height: 56px;
}
body #page .default-area .ccm-block-file > a span {
  text-decoration: underline;
}
@media (max-width: 750px) {
  body #page .default-area .ccm-block-file > a {
    font-size: 16px;
  }
}
body #page .default-area .ccm-block-file > a::after {
  mask: none;
  -webkit-mask: none;
  background-color: #fff;
  width: auto;
  height: auto;
}
body #page .default-area .ccm-block-file.pdf > a::after, body #page .default-area .ccm-block-file.doc > a::after, body #page .default-area .ccm-block-file.docx > a::after, body #page .default-area .ccm-block-file.xls > a::after, body #page .default-area .ccm-block-file.xlsx > a::after, body #page .default-area .ccm-block-file.ppt > a::after, body #page .default-area .ccm-block-file.pptx > a::after {
  content: "";
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0.32em 1em 0.24em;
  line-height: 1;
  text-transform: uppercase;
  border: solid 1px #1e4b73;
  color: #1e4b73;
  font-size: 0.72em;
  vertical-align: baseline;
}
body #page .default-area .ccm-block-file.doc > a::after {
  content: "doc";
}
body #page .default-area .ccm-block-file.docx > a::after {
  content: "docx";
}
body #page .default-area .ccm-block-file.xls > a::after {
  content: "xls";
}
body #page .default-area .ccm-block-file.xlsx > a::after {
  content: "xlsx";
}
body #page .default-area .ccm-block-file.ppt > a::after {
  content: "ppt";
}
body #page .default-area .ccm-block-file.pptx > a::after {
  content: "pptx";
}
body #page .default-area .ccm-layout-column-wrapper {
  margin: 50px auto 0;
  display: block;
}
body #page .default-area .ccm-layout-column-wrapper .ccm-layout-column-inner p + p {
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  body #page .default-area .ccm-layout-column-wrapper {
    margin: 25px auto 0;
  }
  body #page .default-area .ccm-layout-column-wrapper .ccm-layout-column-inner {
    margin-right: 0;
    margin-left: 0;
  }
  body #page .default-area .ccm-layout-column-wrapper .ccm-layout-column-inner img {
    margin: 0 auto;
    display: block;
    float: none !important;
  }
  body #page .default-area .ccm-layout-column-wrapper div.ccm-layout-column {
    width: 100% !important;
    margin-top: 15px;
  }
}
body #page .default-area .img_r {
  margin-right: 20px;
}
body #page .default-area .flex_area {
  display: flex;
}

/* ヘッダ
 ------------------------------ */
body #page {
  /*sp*/
}
body #page .header_pc {
  display: flex;
  height: 100%;
  /*border-bottom: 1px solid #eee;*/
  /* 下矢印 */
  /* floatクリア */
}
body #page .header_pc.no_follow {
  position: relative;
}
body #page .header_pc .logo_area {
  background: #fff;
  max-width: 1200px;
  padding: 10px 0 10px;
  display: flex;
  justify-content: space-between;
}
body #page .header_pc .logo_area ul {
  align-items: center;
  display: flex;
  justify-content: flex-end;
}
body #page .header_pc .logo_area ul li {
  margin-left: 10px;
}
body #page .header_pc .logo_area ul li a {
  background-color: #eeeeee;
  padding: 10px 20px;
  color: #1e4b73;
  font-weight: bold;
  border-radius: 10px;
  width: 120px;
  text-align: center;
}
body #page .header_pc .logo_area ul li .arrow_r {
  position: relative;
  display: inline-block;
  padding-right: 20px;
  padding-left: 10px;
}
body #page .header_pc .logo_area ul li .arrow_r:before {
  content: "";
  width: 9px;
  height: 9px;
  border: 0;
  border-top: solid 2px #1e4b73;
  border-right: solid 2px #1e4b73;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  margin: auto;
}
body #page .header_pc .logo {
  display: flex;
  align-items: center;
  padding: 20px 20px 20px 0;
  padding: 1.25rem;
}
body #page .header_pc .logo small {
  font-size: 14px;
  line-height: 1;
  font-weight: bold;
  display: grid;
}
body #page .header_pc .logo small img {
  max-width: 492px;
  width: 48%;
  padding-top: 5px;
}
body #page .header_pc .logo img {
  max-width: 334px;
  width: 90%;
  margin-right: 0.5lh;
}
body #page .header_pc .ct_btn {
  background-color: #1e4b73;
  color: #fff;
  padding: 1.5rem;
  font-size: 14px;
  font-weight: bold;
}
body #page .header_pc .ct_btn:hover {
  opacity: 0.8;
  display: block;
}
body #page .header_pc .ct_btn::before {
  content: "";
  background: url("../img/top/mail.png");
  display: inline-block;
  width: 25px;
  height: 19px;
  margin-right: 10px;
  vertical-align: sub;
}
@media (max-width: 1100px) {
  body #page .header_pc .ct_btn {
    padding: 1.5rem 1rem;
    font-size: 12px;
  }
}
body #page .header_pc div {
  background: #1e4b73;
  font-size: 17px;
  width: 100%;
  margin: 0 auto;
  height: inherit;
  padding: 10px 0;
}
body #page .header_pc .menu {
  position: relative;
  display: flex;
  max-width: 1200px;
  justify-content: space-between;
  margin: 0 auto;
}
body #page .header_pc .menu > li {
  /*background: #fff;*/
  width: calc(20% - 0rem);
}
body #page .header_pc .menu > li a {
  border-left: 1px solid #fff;
}
@media (max-width: 1100px) {
  body #page .header_pc .menu > li a {
    padding: 10px !important;
    font-size: 12px;
  }
}
body #page .header_pc .menu > li:last-child a {
  border-right: 1px solid #fff;
}
body #page .header_pc .menu > li a {
  display: block;
  color: #fff;
  padding: 10px;
  text-align: center;
  font-weight: bold;
}
body #page .header_pc .menu > li a:hover {
  opacity: 0.8;
}
body #page .header_pc ul.menu__second-level {
  visibility: hidden;
  opacity: 0;
  z-index: 1;
}
body #page .header_pc ul.menu__third-level {
  visibility: hidden;
  opacity: 0;
}
body #page .header_pc ul.menu__fourth-level {
  visibility: hidden;
  opacity: 0;
}
body #page .header_pc .menu > li:hover {
  opacity: 1;
  background: none;
  transition: all 0.5s;
}
body #page .header_pc .menu__second-level li {
  border-top: 1px solid #eee;
}
body #page .header_pc .menu__third-level li {
  border-top: 1px solid #eee;
}
body #page .header_pc .menu__second-level li a:hover {
  color: #333;
  background: #f6fafb;
}
body #page .header_pc .menu__third-level li a:hover {
  background: #2a1f1f;
}
body #page .header_pc .menu__fourth-level li a:hover {
  background: #1d0f0f;
}
body #page .header_pc .dw:after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 0 0 15px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
  vertical-align: super;
  position: absolute;
  top: 31%;
}
body #page .header_pc .menu:before,
body #page .header_pc .menu:after {
  content: " ";
  display: table;
}
body #page .header_pc .menu:after {
  clear: both;
}
body #page .header_pc .menu {
  *zoom: 1;
}
body #page .header_pc .menu > li.menu__single {
  position: relative;
}
body #page .header_pc li.menu__single ul.menu__second-level {
  position: absolute;
  top: 38px;
  width: 100%;
  background: #fff;
  border: 2px solid #eee;
  transition: all 0.2s ease;
  box-shadow: 0px 5px 5px 0px #eee;
}
body #page .header_pc li.menu__single ul.menu__second-level a {
  color: #333;
  font-weight: normal;
  text-align: left;
}
body #page .header_pc li.menu__single:hover ul.menu__second-level {
  top: 56px;
  visibility: visible;
  opacity: 1;
  width: 380px;
}
@media (max-width: 1100px) {
  body #page .header_pc li.menu__single:hover ul.menu__second-level {
    top: 53px;
  }
}
@media (min-width: 1024px) {
  body #page .header_pc {
    display: block !important;
  }
  body #page .header_sp {
    display: none !important;
  }
}
@media (max-width: 1023px) {
  body #page {
    /*.list_pc,*/
  }
  body #page .header_sp {
    display: block !important;
  }
  body #page .header_pc {
    display: none !important;
  }
}
body #page .header_sp {
  background: #fff;
  position: fixed;
  width: 100%;
  height: 60px;
  z-index: 499;
  /* Nav items */
  /* Hamburger menu button */
  /* Hamburger menbu text */
  /* Hamburger Menu Animation Start */
  /* Hamburger Menu Animation End */
  /* Navbar Container */
  /* Navbar Text */
  /*.s_02 .accordion_one .accordion_header:hover {
    opacity: .8;
  }*/
}
body #page .header_sp.no_follow {
  position: relative;
}
body #page .header_sp .logo {
  display: flex;
  align-items: baseline;
  padding: 20px 20px 20px 0;
  padding: 1.25rem;
  /*@media (min-width: 601px) and (max-width: 1023px) {
    width: 60%;
  }*/
}
body #page .header_sp .logo small {
  font-size: 12px;
  line-height: 1;
  font-weight: bold;
}
body #page .header_sp .logo small img {
  max-width: 492px;
  width: 49%;
  padding-top: 5px;
}
body #page .header_sp .logo img {
  max-width: 230px;
  width: 90%;
  margin-right: 0.5lh;
}
body #page .header_sp .menu {
  list-style: none;
  position: absolute;
  width: 100%;
  height: auto;
  top: 0;
  margin-top: 60px;
  padding: 0 0 10px 0;
  clear: both;
  background: var(--background-navbar);
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
  transform: scale(1, 0);
  transform-origin: top;
  box-shadow: 0px 10px 10px -5px #d1d1d1;
  padding: 10px 0 20px;
}
body #page .header_sp .menu-btn:checked ~ .menu {
  transform: scale(1, 1);
  transform-origin: top;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
  background: #fff;
}
body #page .header_sp .menu a {
  text-decoration: none;
  font-weight: 500;
  letter-spacing: 2px;
  font-size: 16px;
  text-transform: capitalize;
  color: #333;
  opacity: 0;
  transition: 0.5s;
  display: block;
  padding: 20px 0;
}
body #page .header_sp .menu li {
  border-top: 1px solid #d1d1d1;
  margin: 0 30px;
  opacity: 0;
  transition: 0.5s;
}
body #page .header_sp .menu li:first-child {
  border-top: none;
}
body #page .header_sp .menu li .ct_btn {
  background-color: #1e4b73;
  color: #fff;
  padding: 1.5rem;
  font-size: 16px;
  font-weight: bold;
  display: block;
  text-align: center;
}
body #page .header_sp .menu li .ct_btn::before {
  content: "";
  background: url(../img/top/mail.png);
  display: inline-block;
  width: 25px;
  height: 19px;
  margin-right: 10px;
  vertical-align: sub;
}
body #page .header_sp .menu-btn:checked ~ .menu a,
body #page .header_sp .menu-btn:checked ~ .menu li {
  opacity: 1;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
}
body #page .header_sp .menu-btn {
  display: none;
}
body #page .header_sp .menu-icon {
  display: grid;
  position: relative;
  cursor: pointer;
  padding: 7px 14px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  background: #1e4b73;
  right: 0;
  position: absolute;
  height: 60px;
}
body #page .header_sp .menu-icon small {
  font-size: 10px;
  font-weight: bold;
  color: #fff;
  display: ruby-text;
  padding-top: 13px;
}
body #page .header_sp .navicon {
  background: #fff;
  display: block;
  height: 2px;
  width: 35px;
  position: relative;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
  margin: 15px auto 0;
}
body #page .header_sp .navicon:before,
body #page .header_sp .navicon:after {
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  background: #fff;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}
body #page .header_sp .navicon:before {
  top: 9px;
}
body #page .header_sp .navicon:after {
  bottom: 9px;
}
body #page .header_sp .menu-btn:checked ~ .menu-icon .navicon:before {
  transform: rotate(-45deg);
}
body #page .header_sp .menu-btn:checked ~ .menu-icon .navicon:after {
  transform: rotate(45deg);
}
body #page .header_sp .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before {
  top: 0;
}
body #page .header_sp .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
  bottom: 0;
}
body #page .header_sp .menu-btn:checked ~ .menu-icon .navicon {
  background: rgba(0, 0, 0, 0);
  transition: 0.2192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}
body #page .header_sp .navtext-container {
  width: 100%;
  height: 60px;
  position: absolute;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  border-bottom: 1px solid #d1d1d1;
  background: #fff;
}
body #page .header_sp .navtext {
  position: absolute;
  text-transform: uppercase;
  left: 0;
}
body #page .header_sp li.accordion_one {
  padding: 20px 0;
}
body #page .header_sp .s_02 .accordion_one {
  max-width: 1024px;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  body #page .header_sp .s_02 .accordion_one {
    margin: 0;
    padding: 0;
    width: 100%;
  }
}
body #page .header_sp .s_02 .accordion_one .accordion_header {
  color: #333;
  font-size: 26px;
  font-weight: bold;
  margin: 0;
  padding: 20px 11%;
  width: 100%;
  text-align: center;
  position: relative;
  z-index: 1;
  cursor: pointer;
  transition-duration: 0.2s;
}
body #page .header_sp .s_02 .accordion_one .accordion_header .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 2%;
  width: 40px;
  height: 40px;
  border: none;
  margin-top: -20px;
  padding: 0;
  box-sizing: border-box;
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
}
body #page .header_sp .s_02 .accordion_one .accordion_header .i_box .one_i {
  display: block;
  width: 18px;
  height: 18px;
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  position: relative;
}
body #page .header_sp .s_02 .accordion_one .accordion_header.open .i_box {
  transform: rotate(-360deg);
}
body #page .header_sp .s_02 .accordion_one .accordion_header .i_box .one_i:before,
body #page .header_sp .s_02 .accordion_one .accordion_header .i_box .one_i:after {
  display: flex;
  content: "";
  background-color: #1e4b73;
  border-radius: 10px;
  width: 18px;
  height: 2px;
  position: absolute;
  top: 8px;
  left: 0;
  transform: rotate(0deg);
  transform-origin: center center;
}
body #page .header_sp .s_02 .accordion_one .accordion_header .i_box .one_i:before {
  width: 2px;
  height: 18px;
  top: 0;
  left: 7px;
}
body #page .header_sp .s_02 .accordion_one .accordion_header.open .i_box .one_i:before {
  content: none;
}
body #page .header_sp .s_02 .accordion_one .accordion_header.open .i_box .one_i:after {
  transform: rotate(-45deg);
}
body #page .header_sp .s_02 .accordion_one .accordion_inner {
  display: none;
  padding: 20px 0 0;
  box-sizing: border-box;
}
body #page .header_sp .s_02 .accordion_one .accordion_inner .box_one {
  height: auto;
  width: 100%;
  margin: 0;
  padding: 0;
}
body #page .header_sp .s_02 .accordion_one .accordion_inner p.txt_a_ac {
  margin: 0;
  position: relative;
  color: #b2b2b2;
}
body #page .header_sp .s_02 .accordion_one .accordion_inner p.txt_a_ac a {
  font-size: 14px;
  padding: 5px 0 5px 20px;
}
body #page .header_sp .s_02 .accordion_one .accordion_inner p.txt_a_ac:before {
  position: absolute;
  content: "";
  top: 50%;
  width: 10px;
  height: 1px;
  left: 0;
  background: #333;
}
@media screen and (max-width: 1024px) {
  body #page .header_sp .s_02 .accordion_one .accordion_header {
    font-size: 14px;
  }
  body #page .header_sp .s_02 .accordion_one .accordion_header .i_box {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
}
@media screen and (max-width: 1023px) {
  body #page .header_sp .s_02 .accordion_one .accordion_header {
    font-size: 16px;
    text-align: left;
    padding: 0;
    font-weight: 500;
  }
}
body #page header a[target=_blank]::before {
  display: none;
}
body #page header a[target=_blank]::after {
  content: "";
  -webkit-mask: url(../img/top/t_blank.png?v=251224) no-repeat;
          mask: url(../img/top/t_blank.png?v=251224) no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask: url(../img/top/t_blank.png?v=251224) no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  background-color: #1e4b73;
  width: 16px;
  height: 16px;
  display: inline-block;
  vertical-align: sub;
  margin: 0 0.32em 2px;
  border: none;
}

/*footer*/
body #page footer {
  background: #f6fafb;
  padding: 5rem 0 20px;
  margin: 0 auto;
  text-align: center;
}
@media (max-width: 768px) {
  body #page footer {
    padding-top: 3rem;
  }
  body #page footer .list_pc {
    display: none;
  }
  body #page footer ul {
    margin: 0 auto;
  }
}
@media (min-width: 769px) {
  body #page footer .logo_area {
    text-align: left;
    margin-top: 15px;
  }
  body #page footer .txt_area {
    display: flex;
    justify-content: space-between;
    max-width: 1000px;
    margin: 0 auto;
  }
  body #page footer .txt_area .h6 {
    text-align: left;
    border-bottom: solid 2px #1e4b73;
    color: #1e4b73;
    padding-bottom: 10px;
  }
  body #page footer .txt_area .tushin {
    margin-top: 30px;
  }
  body #page footer .txt_area ul li a {
    position: relative;
    padding-left: 20px;
  }
  body #page footer .txt_area ul li a::before {
    content: "⚫︎";
    color: #1e4b73;
    position: absolute;
    top: 19%;
    left: 0;
    display: inline-block;
  }
}
body #page footer .logo {
  display: inline-block;
  max-width: 300px;
}
body #page footer .logo img {
  max-width: 267px;
  margin-bottom: 20px;
  margin-right: 0.5lh;
}
body #page footer .logo small {
  font-size: 13px;
  line-height: 1;
  font-weight: bold;
}
body #page footer .logo small img {
  max-width: 492px;
  width: 40%;
  padding-top: 5px;
}
@media screen and (max-width: 768px) {
  body #page footer ul {
    display: block;
    width: 90%;
  }
}
body #page footer ul li {
  margin: 10px 0;
  color: #333;
  font-size: 16px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  body #page footer ul li {
    width: calc(100% - 0rem);
    border-bottom: 1px solid #1e4b73;
    text-align: left;
    margin: 0 auto;
  }
}
body #page footer ul li a {
  padding: 5px 0;
  display: block;
}
@media screen and (max-width: 768px) {
  body #page footer ul li a {
    padding: 20px 0;
  }
}
@media (min-width: 769px) {
  body #page footer ul .accordion_one {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  body #page footer ul {
    /*.s_02 .accordion_one .accordion_header:hover {
      opacity: .8;
    }*/
  }
  body #page footer ul .accordion_one {
    display: block;
    padding: 10px 0;
  }
  body #page footer ul .s_02 .accordion_one {
    max-width: 1024px;
    margin: 0 auto;
  }
  body #page footer ul .s_02 .accordion_one .accordion_header {
    color: #333;
    padding: 20px 0;
    text-align: left;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    cursor: pointer;
    transition-duration: 0.2s;
  }
  body #page footer ul .s_02 .accordion_one .accordion_header .i_box {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 50%;
    right: 2%;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    box-sizing: border-box;
    transform: rotate(45deg);
    transform-origin: center center;
    transition-duration: 0.2s;
  }
  body #page footer ul .s_02 .accordion_one .accordion_header .i_box .one_i {
    display: block;
    width: 18px;
    height: 18px;
    transform: rotate(45deg);
    transform-origin: center center;
    transition-duration: 0.2s;
    position: relative;
  }
  body #page footer ul .s_02 .accordion_one .accordion_header.open .i_box {
    transform: rotate(-360deg);
  }
  body #page footer ul .s_02 .accordion_one .accordion_header .i_box .one_i:before,
  body #page footer ul .s_02 .accordion_one .accordion_header .i_box .one_i:after {
    display: flex;
    content: "";
    background-color: #1e4b73;
    border-radius: 10px;
    width: 18px;
    height: 2px;
    position: absolute;
    top: 8px;
    left: 0;
    transform: rotate(0deg);
    transform-origin: center center;
  }
  body #page footer ul .s_02 .accordion_one .accordion_header .i_box .one_i:before {
    width: 2px;
    height: 18px;
    top: 0;
    left: 7px;
  }
  body #page footer ul .s_02 .accordion_one .accordion_header.open .i_box .one_i:before {
    content: none;
  }
  body #page footer ul .s_02 .accordion_one .accordion_header.open .i_box .one_i:after {
    transform: rotate(-45deg);
  }
  body #page footer ul .s_02 .accordion_one .accordion_inner {
    display: none;
    padding: 20px 20px 0;
    box-sizing: border-box;
  }
  body #page footer ul .s_02 .accordion_one .accordion_inner .box_one {
    height: auto;
    font-size: 14px;
  }
  body #page footer ul .s_02 .accordion_one .accordion_inner p.txt_a_ac {
    margin: 0;
    color: #606060;
    position: relative;
    font-size: 14px;
  }
  body #page footer ul .s_02 .accordion_one .accordion_inner p.txt_a_ac a {
    padding: 5px 0 5px 20px;
  }
  body #page footer ul .s_02 .accordion_one .accordion_inner p.txt_a_ac::before {
    position: absolute;
    content: "";
    top: 50%;
    width: 10px;
    height: 1px;
    left: 0;
    background: #b2b2b2;
  }
}
@media screen and (max-width: 768px) and (max-width: 1024px) {
  body #page footer ul .s_02 .accordion_one .accordion_header {
    font-size: 18px;
  }
  body #page footer ul .s_02 .accordion_one .accordion_header .i_box {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  body #page footer ul .s_02 .accordion_one .accordion_header {
    font-size: 16px;
    text-align: left;
    padding: 0;
  }
}
body #page footer .footer-copy {
  font-size: 0.8rem;
  font-weight: normal;
  text-align: center;
  color: #898989;
  margin-top: 50px;
  text-align: right;
  max-width: 1000px;
  margin: 50px auto 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
body #page footer .footer-copy .policy a {
  font-size: 14px;
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  body #page footer .footer-copy {
    display: block;
    margin: 40px auto 0;
  }
  body #page footer .footer-copy .policy {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 1024px) {
  body #page footer .footer-copy {
    width: 90%;
    text-align: center;
    font-size: 12px;
    line-height: 1.5;
  }
}
body #page footer a[target=_blank]::before {
  display: none;
}
body #page footer a[target=_blank]::after {
  content: "";
  -webkit-mask: url(../img/top/t_blank.png?v=251224) no-repeat;
          mask: url(../img/top/t_blank.png?v=251224) no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask: url(../img/top/t_blank.png?v=251224) no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  background-color: #1e4b73;
  width: 16px;
  height: 16px;
  display: inline-block;
  vertical-align: sub;
  margin: 0 0.32em 2px;
  border: none;
}

/*------------------------------------------------------
 サイト内全体の基本設定
------------------------------------------------------*/
:target {
  scroll-margin-top: 102px;
}
@media (max-width: 1024px) {
  :target {
    scroll-margin-top: 84px;
  }
}

body #page {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  color: #333;
  /*page top*/
  /*article-unit__inner*/
  /*cv*/
}
body #page > .content + footer {
  margin-top: 128px;
}
@media (max-width: 1024px) {
  body #page > .content + footer {
    margin-top: 48px;
  }
}
body #page .p_txt,
body #page p {
  font-size: 18px;
  line-height: 2;
}
@media screen and (max-width: 750px), print and (max-width: 550px) {
  body #page .p_txt,
  body #page p {
    font-size: 16px;
  }
}
body #page p + p {
  margin-top: 20px;
}
body #page a:has(img)::after {
  display: none;
}
body #page a:not(#page-top) {
  transition: all 0.5s ease;
}
body #page a:not(#page-top):hover {
  opacity: 0.8;
}
body #page a.tel,
body #page a[href^="tel:"] {
  pointer-events: none;
  text-decoration: none;
}
@media (max-width: 1024px) {
  body #page a.tel,
  body #page a[href^="tel:"] {
    pointer-events: auto;
  }
}
body #page b,
body #page em {
  font-weight: bold;
}
body #page img {
  width: auto;
  height: auto;
}
body #page .marker {
  background: linear-gradient(transparent 50%, #ffffbf 50%);
}
body #page .logo {
  text-decoration: none;
}
body #page .arrow_r {
  position: relative;
  display: inline-block;
  padding-right: 20px;
  padding-left: 10px;
}
body #page .arrow_r:before {
  content: "";
  width: 9px;
  height: 9px;
  border: 0;
  border-top: solid 2px #1e4b73;
  border-right: solid 2px #1e4b73;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  margin: auto;
}
body #page .btn.arrow_r:before {
  border-color: #fff;
}
body #page .btn {
  background-color: #1e4b73;
  padding: 20px;
  text-decoration: none !important;
  color: #fff;
  display: block;
  width: 300px;
  height: auto;
  font-size: 14px;
  margin: 50px auto 0;
  text-align: center;
  font-weight: bold;
  letter-spacing: 2px;
  border-radius: 10px;
}
@media screen and (max-width: 750px), print and (max-width: 550px) {
  body #page .btn {
    margin: 40px auto 0;
    font-size: 16px;
  }
}
@media (max-width: 375px) {
  body #page .btn {
    width: 90%;
  }
}
body #page .sq {
  background: #fff;
  border: 2px solid #1e4b73;
  color: #1e4b73;
}
body #page .dl_btn {
  background: #001428;
}
@media (min-width: 1901px) {
  body #page .pimg_l {
    display: block !important;
    margin: 0 auto;
  }
}
@media (max-width: 1900px) {
  body #page .pimg_l {
    display: none !important;
  }
}
@media screen and (max-width: 750px), print and (max-width: 550px) {
  body #page .pimg {
    display: none !important;
  }
  body #page .simg {
    display: block !important;
  }
}
@media print, screen and (min-width: 751px) {
  body #page .simg {
    display: none !important;
  }
  body #page .pimg {
    display: block !important;
  }
}
@media (min-width: 551px) {
  body #page .p550 {
    display: none !important;
  }
}
@media (max-width: 550px) {
  body #page .p550 {
    display: block !important;
  }
}
body #page .zen-maru-gothic-regular {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}
body #page .zen-maru-gothic-medium {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
}
body #page .zen-maru-gothic-bold {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
body #page #page-top {
  display: block;
  justify-content: center;
  align-items: center;
  position: fixed;
  right: 30px;
  bottom: 30px;
  width: 100px;
  height: 100px;
  background-color: #1e4b73;
  border-radius: 0;
  cursor: pointer;
  /*transition: opacity .3s ease;*/
  z-index: 5;
  color: #fff;
  text-align: center;
  line-height: 1.4;
  font-size: 14px;
  font-weight: bold;
}
@media (max-width: 1260px) {
  body #page #page-top {
    width: 60px;
    height: 60px;
    bottom: 20px;
    right: 20px;
  }
  body #page #page-top .pimg {
    display: none !important;
  }
}
body #page #page-top:hover {
  transition: all 0.5s ease;
  opacity: 0.7;
}
body #page .page-top__arrow {
  margin: 12px auto 5px;
}
@media (max-width: 768px) {
  body #page .page-top__arrow {
    margin: 14px auto 5px;
  }
}
body #page .page-top__arrow .dli-arrow-up {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  position: relative;
  width: 0.15em;
  height: 1.3em;
  background: currentColor;
}
body #page .page-top__arrow .dli-arrow-up::before {
  content: "";
  width: 15px;
  height: 15px;
  border: 2px solid currentColor;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(-45deg);
  transform-origin: top right;
  position: absolute;
  top: -14%;
  right: 50%;
  box-sizing: border-box;
}
body #page .article-unit h1,
body #page .article-unit h2,
body #page .article-unit h3,
body #page .article-unit h4,
body #page .article-unit h5,
body #page .article-unit h6 {
  line-height: 1.3;
}
body #page .article-unit h1 {
  font-size: 36px;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media (max-width: 1024px) {
  body #page .article-unit h1 {
    font-size: 24px;
  }
}
body #page .article-unit h1.page_title {
  display: block;
  margin: 0 0 1.32em;
  padding: 0 0 16px;
  border-bottom: solid 2px #1e4b73;
  font-weight: bold;
  font-size: 28px;
  letter-spacing: 3px;
}
@media screen and (max-width: 750px), print and (max-width: 550px) {
  body #page .article-unit h1.page_title {
    font-size: 24px;
  }
}
body #page .article-unit h1.page_title > small {
  display: block;
  margin-bottom: 5px;
  color: #1e4b73;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 3px;
}
@media screen and (max-width: 750px), print and (max-width: 550px) {
  body #page .article-unit h1.page_title > small {
    font-size: 14px;
  }
}
body #page .article-unit h1.page_title > b {
  display: block;
  font-size: 28px;
  letter-spacing: 3px;
}
@media screen and (max-width: 750px), print and (max-width: 550px) {
  body #page .article-unit h1.page_title > b {
    font-size: 24px;
  }
}
body #page .article-unit h2 {
  font-size: 30px;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media (max-width: 1024px) {
  body #page .article-unit h2 {
    font-size: 20px;
  }
}
body #page .article-unit h3 {
  font-size: 25px;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media (max-width: 1024px) {
  body #page .article-unit h3 {
    font-size: 18px;
  }
}
body #page .article-unit h4 {
  font-size: 20px;
  color: #1e4b73;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media (max-width: 1024px) {
  body #page .article-unit h4 {
    font-size: 18px;
  }
}
body #page .article-unit h5 {
  font-size: 16px;
}
@media (max-width: 1024px) {
  body #page .article-unit h5 {
    font-size: 16px;
  }
}
body #page .article-unit h6 {
  font-size: 16px;
}
@media (max-width: 1024px) {
  body #page .article-unit h6 {
    font-size: 16px;
  }
}
body #page .article-unit h2,
body #page .article-unit h2.zen-maru-gothic-bold {
  color: #1e4b73;
  border-bottom: 2px solid #1e4b73;
  padding-bottom: 20px;
  margin-bottom: 30px;
}
body #page .article-unit h1.label,
body #page .article-unit h2.label,
body #page .article-unit h3.label,
body #page .article-unit h4.label,
body #page .article-unit h5.label,
body #page .article-unit h6.label {
  padding: 0 0 0.64em;
  margin-bottom: 1em;
  letter-spacing: 2px;
  border-bottom: solid 2px #1e4b73;
  border-left: none;
}
body #page .article-unit h1.label small,
body #page .article-unit h2.label small,
body #page .article-unit h3.label small,
body #page .article-unit h4.label small,
body #page .article-unit h5.label small,
body #page .article-unit h6.label small {
  display: block;
  margin-bottom: 0.32em;
  color: #1e4b73;
  font-size: 0.64em;
  font-weight: 500;
}
body #page .article-unit h1.label b,
body #page .article-unit h2.label b,
body #page .article-unit h3.label b,
body #page .article-unit h4.label b,
body #page .article-unit h5.label b,
body #page .article-unit h6.label b {
  display: block;
}
body #page .article-unit h1.label b .fg,
body #page .article-unit h2.label b .fg,
body #page .article-unit h3.label b .fg,
body #page .article-unit h4.label b .fg,
body #page .article-unit h5.label b .fg,
body #page .article-unit h6.label b .fg {
  font-family: "游ゴシック体", "Yu Gothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
body #page .article-unit__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px 0 0;
}
@media screen and (max-width: 750px), print and (max-width: 550px) {
  body #page .article-unit__inner {
    padding: 3rem 0;
  }
}
@media (max-width: 1260px) {
  body #page .article-unit__inner {
    width: 90%;
  }
}
@media (max-width: 375px) {
  body #page .article-unit__inner .btn {
    width: 100%;
  }
}
body #page .cv {
  margin-top: 128px;
  background: url(../img/top/section6_bg.png?v=250121) no-repeat;
  background-color: #001428;
  background-size: cover;
}
@media screen and (max-width: 750px), print and (max-width: 550px) {
  body #page .cv {
    margin-top: 48px;
  }
}
@media (max-width: 1024px) {
  body #page .cv .article-unit .article-unit__inner {
    padding-top: 24px !important;
  }
}
body #page .cv .article-unit .article-unit__inner h2 b {
  color: #fff;
}
body #page .cv .article-unit .article-unit__inner p {
  color: #fff;
  font-size: 18px;
  font-weight: bold;
}
@media (max-width: 1024px) {
  body #page .cv .article-unit .article-unit__inner p {
    color: #eee;
    font-size: 14px;
  }
}
body #page .cv .article-unit .article-unit__inner .cv-box__btn {
  display: block;
}
@media (max-width: 1024px) {
  body #page .cv .article-unit .article-unit__inner .cv-box__btn {
    margin-top: 24px;
  }
}
@media screen and (max-width: 750px), print and (max-width: 550px) {
  body #page .cv {
    background: url(../img/top/section6_bg_sp.png?v=250121) no-repeat;
    background-color: #001428;
    background-position: top center;
  }
}

/*パンくず*/
.path {
  padding: 5px;
  background: #fff;
  width: 100%;
  box-sizing: border-box;
}
.path #pathTop {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  width: 100%;
  font-size: 12px;
}
.path #pathTop ol {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
.path #pathTop ol li {
  list-style-type: none;
}
.path #pathTop ol li:first-child::before {
  content: none;
}
.path #pathTop ol li::before {
  content: "＞";
  padding-right: 12px;
}
@media (max-width: 1023px) {
  .path {
    padding-top: 0;
  }
}

/*下層タイトル*/
.ttl_area {
  background-color: #f6fafb;
  padding: 50px 0;
}
.ttl_area h1 {
  color: #1e4b73;
  font-weight: 500;
  font-size: 40px;
  max-width: 1200px;
  margin: 0 auto;
}
@media (max-width: 1260px) {
  .ttl_area {
    padding: 30px 0;
  }
  .ttl_area h1 {
    width: 90%;
    font-size: 30px;
  }
}

/*下層menu*/
.menu_kasou {
  border-bottom: 2px solid #eee;
}
.menu_kasou ul {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  color: #1e4b73;
  padding: 20px 0 15px;
  align-items: center;
}
.menu_kasou ul li {
  margin-right: 5px;
  margin-bottom: 5px;
}
.menu_kasou ul a {
  text-decoration: underline;
  font-size: 16px;
}
.menu_kasou ul .current {
  border: 2px solid #1e4b73;
  border-radius: 50px;
  padding: 5px 2px;
  padding-left: 15px;
  margin-right: 20px;
}
@media (max-width: 768px) {
  .menu_kasou ul .current {
    padding: 1px;
    padding-left: 15px;
  }
}
.menu_kasou ul .current a {
  text-decoration: none;
}
.menu_kasou ul .arrow_r {
  position: relative;
  display: inline-block !important;
  padding-right: 28px !important;
  padding-left: 0 !important;
}
@media (max-width: 768px) {
  .menu_kasou ul .arrow_r {
    padding-top: 5px;
    padding-bottom: 5px;
  }
}
.menu_kasou ul .arrow_r:before {
  content: "";
  width: 8px !important;
  height: 8px !important;
  border: 0;
  border-top: solid 1px #1e4b73 !important;
  border-right: solid 1px #1e4b73 !important;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 5px;
  bottom: 0;
  margin: auto;
}
@media (max-width: 1260px) {
  .menu_kasou ul {
    padding: 10px 0;
    width: 90%;
  }
  .menu_kasou ul a {
    font-size: 14px;
  }
  .menu_kasou ul li {
    margin-right: 10px;
    margin-bottom: 10px;
  }
}

/*エラー画面スタイル*/
body.page_not_found .article-unit .article-unit__inner {
  padding-bottom: 5rem !important;
}
body.page_not_found .article-unit .article-unit__inner h1 {
  margin-top: 0 !important;
}
@media (max-width: 768px) {
  body.page_not_found .article-unit .article-unit__inner {
    padding: 1rem 0 3rem !important;
  }
}
body.page_not_found .article-unit .article-unit__inner h1 {
  color: #1e4b73;
  font-weight: bold;
  margin-bottom: 20px;
}

/*ガーリックフォーム*/
#garlic_container {
  margin-top: 50px;
  /*@media (max-width: 425px) {
    margin-top: 40px;
  }*/
}

@font-face {
  font-family: "font_name";
  src: url("../css/fonts/font_name.ttf") format("truetype"), url("../css/fonts/font_name.woff") format("woff"), url("../css/fonts/font_name.svg") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
body #page [class^=icon-],
body #page [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "font_name" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body #page .icon-arrow_thin_down:before {
  content: "\e900";
  color: #4b4b4b;
}
body #page .icon-arrow_thin_left:before {
  content: "\e901";
  color: #4b4b4b;
}
body #page .icon-arrow_thin_right:before {
  content: "\e902";
  color: #4b4b4b;
}
body #page .icon-arrow_thin_up:before {
  content: "\e903";
  color: #4b4b4b;
}
body #page .icon-arrow_bold_down:before {
  content: "\e904";
  color: #4b4b4b;
}
body #page .icon-arrow_bold_left:before {
  content: "\e905";
  color: #4b4b4b;
}
body #page .icon-arrow_bold_right:before {
  content: "\e906";
  color: #4b4b4b;
}
body #page .icon-arrow_bold_up:before {
  content: "\e907";
  color: #4b4b4b;
}
body #page .icon-arrow_circle_down:before {
  content: "\e908";
  color: #4b4b4b;
}
body #page .icon-arrow_circle_left:before {
  content: "\e909";
  color: #4b4b4b;
}
body #page .icon-arrow_circle_right:before {
  content: "\e90a";
  color: #4b4b4b;
}
body #page .icon-arrow_circle_up:before {
  content: "\e90b";
  color: #4b4b4b;
}
body #page .icon-arrow_tail_down:before {
  content: "\e90c";
  color: #4b4b4b;
}
body #page .icon-arrow_tail_left:before {
  content: "\e90d";
  color: #4b4b4b;
}
body #page .icon-arrow_tail_right:before {
  content: "\e90e";
  color: #4b4b4b;
}
body #page .icon-arrow_tail_up:before {
  content: "\e90f";
  color: #4b4b4b;
}
body #page .icon-plus:before {
  content: "\e910";
  color: #4b4b4b;
}
body #page .icon-minus:before {
  content: "\e911";
  color: #4b4b4b;
}
body #page .icon-window_blank:before {
  content: "\e912";
  color: #4b4b4b;
}
body #page .icon-blank_paper:before {
  content: "\e91c";
  color: #4b4b4b;
}
body #page .icon-pdf:before {
  content: "\e913";
  color: #4b4b4b;
}
body #page .icon-xls:before {
  content: "\e91d";
  color: #4b4b4b;
}
body #page .icon-xlsx:before {
  content: "\e914";
  color: #4b4b4b;
}
body #page .icon-doc:before {
  content: "\e915";
  color: #4b4b4b;
}
body #page .icon-word:before {
  content: "\e915";
  color: #4b4b4b;
}
body #page .icon-docx:before {
  content: "\e91e";
  color: #4b4b4b;
}
body #page .icon-ppt:before {
  content: "\e91f";
  color: #4b4b4b;
}
body #page .icon-pptx:before {
  content: "\e910";
  color: #4b4b4b;
}
body #page .icon-print:before {
  content: "\e916";
  color: #4b4b4b;
}
body #page .icon-map:before {
  content: "\e917";
  color: #4b4b4b;
}
body #page .icon-smartphone:before {
  content: "\e918";
  color: #4b4b4b;
}
body #page .icon-bookmark:before {
  content: "\e919";
  color: #4b4b4b;
}
body #page .icon-book:before {
  content: "\e91a";
  color: #4b4b4b;
}
body #page .icon-book_open:before {
  content: "\e91b";
  color: #4b4b4b;
}

body #page #path {
  padding: 5px 5px 6px;
  border-top: 1px solid #eee;
}
@media (max-width: 1023px) {
  body #page #path {
    padding-top: 4.3rem;
  }
}
body #page #path #pathTop {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  width: 100%;
  font-size: 12px;
}
body #page #path #pathTop ol {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
body #page #path #pathTop ol li:first-of-type::before {
  content: none;
}
body #page #path #pathTop ol li:before {
  content: "＞";
  padding-right: 12px;
}

/*------------------------------------------------------------
 Concrete CMSの編集画面CSSへの干渉を防ぐための記述
-----------------------------------------------------------*/
html.ccm-toolbar-visible.ccm-panel-ready .header {
  z-index: 502;
}
@media screen and (max-width: 750px), print and (max-width: 550px) {
  html.ccm-toolbar-visible.ccm-panel-ready .header {
    top: 48px;
  }
}
html.ccm-toolbar-visible.ccm-panel-ready .c-overlay {
  z-index: 501;
}
html.ccm-toolbar-visible.ccm-panel-ready .fixheader.fixed {
  top: -32px;
}
html.ccm-toolbar-visible.ccm-panel-ready body {
  position: inherit;
}
html.ccm-toolbar-visible.ccm-panel-ready .header.fixed .third-nav {
  top: 143%;
}

*[class^=ccm-panel],
*[class^=ccm-toolbar] {
  margin: 0 !important;
}
*[class^=ccm-panel] input[type=radio],
*[class^=ccm-panel] input[type=checkbox],
*[class^=ccm-panel] input[type=range],
*[class^=ccm-panel] select,
*[class^=ccm-panel] option,
*[class^=ccm-panel] label,
*[class^=ccm-toolbar] input[type=radio],
*[class^=ccm-toolbar] input[type=checkbox],
*[class^=ccm-toolbar] input[type=range],
*[class^=ccm-toolbar] select,
*[class^=ccm-toolbar] option,
*[class^=ccm-toolbar] label {
  all: revert;
}
*[class^=ccm-panel] > li,
*[class^=ccm-toolbar] > li {
  margin: 0 !important;
  padding: 0 !important;
}
*[class^=ccm-panel] > li::before, *[class^=ccm-panel] > li::after,
*[class^=ccm-toolbar] > li::before,
*[class^=ccm-toolbar] > li::after {
  display: none;
}
*[class^=ccm-panel] > li > a i, *[class^=ccm-panel] > li > a em,
*[class^=ccm-toolbar] > li > a i,
*[class^=ccm-toolbar] > li > a em {
  font-style: normal !important;
}

.ccm-panel-left {
  margin-top: 48px !important;
}/*# sourceMappingURL=base.css.map */