@charset "utf-8";

 /* ========================================
    初期化 / Reset & Base
 ======================================== */
html {
   box-sizing: border-box;
 }

*, *::before, *::after {
   box-sizing: inherit;
}

html, body,
 h1, h2, h3, h4, h5, h6,
 p, blockquote, pre,
 dl, dt, dd, ul, ol, li,
 figure, fieldset, legend,
 table, caption, tbody, tfoot, thead, tr, th, td,
 blockquote, q {
   margin: 0;
   padding: 0;
}

/* HTML5 要素 */
article, aside, canvas, details, embed,
 figure, figcaption, footer, header, hgroup,
 menu, nav, output, ruby, section, summary,
 time, mark, audio, video {
   margin: 0;
   padding: 0;
   border: 0;
 }

 /* テーブル系 */
 table {
   border-collapse: collapse;
   border-spacing: 0;
 }
 caption, th, td {
   text-align: left;
   vertical-align: top;
 }

 /* リスト */
 ul, ol {
   list-style: none;
 }

 /* 画像 */
 img {
   border: 0;
   vertical-align: top;
   max-width: 100%;
   height: auto;
 }

 /* フォーム要素 */
 input,
 textarea {
   margin: 0;
   padding: 0;
   font-family: inherit;
 }

 /* 基本フォント設定 */
 body {
   margin: 0;
   padding: 0;
   width: 100%;
   color: #333;
   background: #fff;
   text-align: left;
   font-size: 14px;
   line-height: 1.6;
   font-family:
     'ヒラギノ角ゴ ProN W3',
     'Hiragino Kaku Gothic ProN',
     'ヒラギノ角ゴシック W3',
     'メイリオ',
     'Meiryo',
     'ＭＳ Ｐゴシック',
     Osaka,
     sans-serif;
   -webkit-text-size-adjust: 100%;
 }



 /*---------------------------------------------------------------
   富士通フォント
 -----------------------------------------------------------------*/
  @font-face {
   font-family: "FujitsuInfinityPro";
   font-style: normal;
   font-weight: 400;
   font-display: swap;
   src: url("https://global.fujitsu/ja-jp/-/media/Project/Fujitsu/Fujitsu-HQ/assets/font/FujitsuInfinityPro-Regular-202301-2.woff2") format("woff2"),
     url("https://global.fujitsu/ja-jp/-/media/Project/Fujitsu/Fujitsu-HQ/assets/font/FujitsuInfinityPro-Regular-202301.woff") format("woff");
 }

 @font-face {
   font-family: "FujitsuInfinityPro";
   font-style: normal;
   font-weight: 700;
   font-display: swap;
   src: url("https://global.fujitsu/ja-jp/-/media/Project/Fujitsu/Fujitsu-HQ/assets/font/FujitsuInfinityPro-Bold-202301-2.woff2") format("woff2"),
     url("https://global.fujitsu/ja-jp/-/media/Project/Fujitsu/Fujitsu-HQ/assets/font/FujitsuInfinityPro-Bold-202301.woff") format("woff");
 }

 html:lang(ja) body,
 html:lang(ja) input,
 html:lang(ja) select,
 html:lang(ja) button,
 html:lang(ja) textarea {
   font-family: "FujitsuInfinityPro", Arial, Verdana, "Lucida Grande",
     "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", sans-serif;
 }

 blockquote,
 q {
   quotes: none;
 }
 blockquote::before,
 blockquote::after,
 q::before,
 q::after {
   content: '';
 }

 address,
 caption {
   font-style: normal;
   font-weight: normal;
 }

em {
   font-style: normal;
   font-weight: 700; /* 必要なら */
 }

a, a:visited {
   color: #00e;
   text-decoration: none;
   font-weight: 700;
 }

a:hover, a:focus-visible {
   color: #00e;
   text-decoration: underline;
   text-underline-offset: 0.15em;
 }

 button {
   background-color: transparent;
   border: none;
   padding: 0;
   margin: 0;
   font: inherit;
   color: inherit;
   appearance: none;
 }

 /* マウス操作時だけ手の形に */
 button:hover {
   cursor: pointer;
 }

 /* キーボードフォーカスを消さずにカスタム */
 button:focus-visible {
   outline: 2px solid #005bac;
   outline-offset: 2px;
 }

/* ===== Reset-ish for headings ===== */
h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-weight: 700;
  line-height: 1.3;
}

/* ===== Font sizes (clampなし・ブレイクポイントで段階UP) ===== */
h1 { font-size: 1.875rem; }
h2 { font-size: 1.5rem;   }
h3 { font-size: 1.25rem;  }
h4 { font-size: 1.125rem; }
h5 { font-size: 1rem;     }
h6 { font-size: 0.875rem; }

@media (min-width: 48rem) {
  h1 { font-size: 2.125rem; }
  h2 { font-size: 1.75rem; }
  h3 { font-size: 1.375rem; }
}

@media (min-width: 64rem) {
  h1 { font-size: 2.375rem; }
  h2 { font-size: 2rem; }
  h3 { font-size: 1.5rem; }
}

/* ===== Vertical rhythm（見出しの上下余白） ===== */
/* 下方向の余白（本文との間）は小さめ、上方向はやや大きめ */
h1 { margin-block: 2rem 0.75rem; }
h2 { margin-block: 2rem 0.75rem; }
h3 { margin-block: 1.5rem 0.5rem; }
h4, h5, h6 { margin-block: 1rem 0.5rem; }

/* セクション先頭の見出しは上余白を詰める */
:where(main, article, section) > :where(h1, h2, h3, h4, h5, h6):first-child {
  margin-block-start: 0.25rem;
}


/* 固定ヘッダーをやめる */
header{
  position: static !important;
  top: auto !important;
}




/* セクション
---------------------------------------------------- */
.section .section-inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 60px 0 60px;
}

@media only screen and (max-width: 1280px) {
  .section .section-inner {
	padding: 60px 8px 60px;
  }
}

@media only screen and (max-width: 1000px) {
  .section .section-inner {
	padding: 60px 16px 60px;
  }
}

@media only screen and (max-width: 480px) {
  .section .section-inner {
	padding: 40px 16px 48px;
  }
}

.section .section-inner > *:first-child,
.section .section-inner > * .hdg-b-wrapper:first-child > .hdg-b {
  margin-top: 0;
}

.section .section-inner > *:last-child {
  margin-bottom: 0;
}

.section .section + .section .section-inner {
  padding-top: 0;
}

.section .section + .section.diff-important .section-inner {
  padding-top: 0;
}

.section .section + .section[class*="diff-bg-"] .section-inner {
  padding-top: 100px;
}

@media only screen and (max-width: 767px) {
  .section .section + .section[class*="diff-bg-"] .section-inner {
	padding-top: 40px;
  }
}

.section
  .section[class*="diff-bg-"]
  + .section:not([class*="diff-bg-"])
  .section-inner {
  padding-top: 100px;
}

@media only screen and (max-width: 767px) {
  .section
	.section[class*="diff-bg-"]
	+ .section:not([class*="diff-bg-"])
	.section-inner {
	padding-top: 40px;
  }
}

.section
  .section[class*="diff-bg-"]
  + .section:not([class*="diff-bg-"]).diff-important
  .section-inner {
  padding-top: 28px;
}

.section .section.diff-bg-a {
  background: #ddd;
}

.section .section.diff-bg-a + .diff-bg-a .section-inner {
  padding-top: 0;
}

.section .section.diff-bg-b {
  background: #fff;
}

.section .section.diff-bg-b + .diff-bg-b .section-inner {
  padding-top: 0;
}

.section .section.diff-bg-c {
  background: #f3f3f3;
}


.scroll-hint {
  overflow-y: hidden !important;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  margin: 0;
}




/* ===== 印刷用CSS ===== */
@media print {
  body {
    margin: 0;
    padding: 0;
    line-height: 1.6;
  }

  .header_wrp{
    border-bottom: 1px solid #999;
  }

  .headline .title {
    color: #000;
    border-bottom: 2px solid #000;
  }

  .header .username,
  .header .nav,
  .navigation_wrp,
  .submit_btns,
  .footer_wrp .content_width,
  #btn_pagetop {
    display: none;
  }

  .footer_wrp {
    background: transparent;
  }

  .footer_wrp .copyright {
    border-top: 1px solid #999;
    color: #000;
    background: transparent;
  }
}

.break-url {
  overflow-wrap: break-word;
  word-break: break-all;
}

/* 整理 */
.footer_wrp .free_area {
    display: block;
    font-size: 12px;
    text-align: center;
}
/* パンくずリンク */
.pankuzu li a {
  color: #861718;
}

.pankuzu li a:after {
  border-color: #861718;
}
