@charset "UTF-8";
* {
  box-sizing: border-box;
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
  border-width: 0;
}

a {
  text-decoration: none;
}

* {
  scroll-behavior: smooth;
  scroll-margin-top: 40px;
}

@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  src: url(../assets/scss/font/NotoSansJP-Regular.woff2) format("woff2"), url(../assets/scss/font/NotoSansJP-Regular.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  src: url(../assets/scss/font/NotoSansJP-Medium.woff2) format("woff2"), url(../assets/scss/font/NotoSansJP-Medium.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  src: url(../assets/scss/font/NotoSansJP-Bold.woff2) format("woff2"), url(../assets/scss/font/NotoSansJP-Bold.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  src: url(../assets/scss/font/Montserrat-Medium.woff2) format("woff2"), url(../assets/scss/font/Montserrat-Medium.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  src: url(../assets/scss/font/Montserrat-Bold.woff2) format("woff2"), url(../assets/scss/font/Montserrat-bold.woff) format("woff");
  font-display: swap;
}
h1, h2, h3, h4, h5, h6, p, span, li, div, section, aside, a, button, input, textarea, label, pre {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 1.7;
}

.blogBody {
  font-size: medium;
  width: 100%;
  /* children of the <head> element all have display:none */
  /* generic block-level elements */
  /* heading elements */
  /* tables */
  /* for tables without table section elements (can happen with XHTML or dynamically created tables) */
  /* lists */
  /* form elements */
  /* Form controls don't go vertical. */
  /* TODO(crbug.com/880258): Use different styles for
  `-internal-autofill-previewed` and `-internal-autofill-selected`. */
  /* meter */
  /* progress */
  /* inline elements */
  /* states */
  /* HTML5 ruby elements */
  /* other elements */
  /* TODO(foolip): In the Fullscreen spec, there's a ::backdrop block with the
  properties shared with :fullscreen::backdrop (see fullscreen.css). */
  /* page */
  /* Allows thead sections to print at the top of each page. */
}
.blogBody html,
.blogBody body,
.blogBody div,
.blogBody span,
.blogBody applet,
.blogBody object,
.blogBody iframe,
.blogBody h1,
.blogBody h2,
.blogBody h3,
.blogBody h4,
.blogBody h5,
.blogBody h6,
.blogBody p,
.blogBody blockquote,
.blogBody pre,
.blogBody a,
.blogBody button,
.blogBody abbr,
.blogBody acronym,
.blogBody address,
.blogBody big,
.blogBody cite,
.blogBody code,
.blogBody del,
.blogBody dfn,
.blogBody em,
.blogBody img,
.blogBody ins,
.blogBody kbd,
.blogBody q,
.blogBody s,
.blogBody samp,
.blogBody small,
.blogBody strike,
.blogBody strong,
.blogBody sub,
.blogBody sup,
.blogBody tt,
.blogBody var,
.blogBody b,
.blogBody u,
.blogBody i,
.blogBody center,
.blogBody dl,
.blogBody dt,
.blogBody dd,
.blogBody ol,
.blogBody ul,
.blogBody li,
.blogBody fieldset,
.blogBody form,
.blogBody label,
.blogBody legend,
.blogBody table,
.blogBody caption,
.blogBody tbody,
.blogBody tfoot,
.blogBody thead,
.blogBody tr,
.blogBody th,
.blogBody td,
.blogBody article,
.blogBody aside,
.blogBody canvas,
.blogBody details,
.blogBody embed,
.blogBody figure,
.blogBody figcaption,
.blogBody footer,
.blogBody header,
.blogBody hgroup,
.blogBody menu,
.blogBody nav,
.blogBody output,
.blogBody ruby,
.blogBody section,
.blogBody summary,
.blogBody time,
.blogBody mark,
.blogBody audio,
.blogBody video {
  font-size: medium;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
.blogBody html {
  display: block;
}
.blogBody head {
  display: none;
}
.blogBody meta {
  display: none;
}
.blogBody title {
  display: none;
}
.blogBody link {
  display: none;
}
.blogBody style {
  display: none;
}
.blogBody script {
  display: none;
}
.blogBody body {
  display: block;
  margin: 8px;
}
.blogBody body:-webkit-full-page-media {
  background-color: rgb(0, 0, 0);
}
.blogBody p {
  display: block;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  line-height: 2;
}
@media screen and (max-width: 520px) {
  .blogBody p {
    font-size: 14px;
  }
}
.blogBody span {
  font-size: inherit;
}
.blogBody div {
  display: block;
}
.blogBody layer {
  display: block;
}
.blogBody article,
.blogBody aside,
.blogBody footer,
.blogBody header,
.blogBody hgroup,
.blogBody main,
.blogBody nav,
.blogBody section {
  display: block;
}
.blogBody marquee {
  display: inline-block;
  width: -webkit-fill-available;
}
.blogBody address {
  display: block;
}
.blogBody blockquote {
  display: block;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 40px;
  margin-inline-end: 40px;
}
.blogBody figcaption {
  display: block;
}
.blogBody figure {
  display: block;
}
.blogBody q {
  display: inline;
}
.blogBody q:before {
  content: open-quote;
}
.blogBody q:after {
  content: close-quote;
}
.blogBody center {
  display: block;
  /* special centering to be able to emulate the html4/netscape behaviour */
  text-align: -webkit-center;
}
.blogBody hr {
  display: block;
  overflow: hidden;
  unicode-bidi: isolate;
  margin-block-start: 0.5em;
  margin-block-end: 0.5em;
  margin-inline-start: auto;
  margin-inline-end: auto;
  border-style: inset;
  border-width: 1px;
}
.blogBody map {
  display: inline;
}
.blogBody video {
  -o-object-fit: contain;
     object-fit: contain;
}
.blogBody h1 {
  display: block;
  font-size: 2em;
  margin-block-start: 0.67em;
  margin-block-end: 0.67em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-weight: bold;
}
.blogBody :-webkit-any(article, aside, nav, section) h1 {
  font-size: 1.5em;
  margin-block-start: 0.83em;
  margin-block-end: 0.83em;
}
.blogBody :-webkit-any(article, aside, nav, section) :-webkit-any(article, aside, nav, section) h1 {
  font-size: 1.17em;
  margin-block-start: 1em;
  margin-block-end: 1em;
}
.blogBody :-webkit-any(article, aside, nav, section) :-webkit-any(article, aside, nav, section) :-webkit-any(article, aside, nav, section) h1 {
  font-size: 1em;
  margin-block-start: 1.33em;
  margin-block-end: 1.33em;
}
.blogBody :-webkit-any(article, aside, nav, section) :-webkit-any(article, aside, nav, section) :-webkit-any(article, aside, nav, section) :-webkit-any(article, aside, nav, section) h1 {
  font-size: 0.83em;
  margin-block-start: 1.67em;
  margin-block-end: 1.67em;
}
.blogBody :-webkit-any(article, aside, nav, section) :-webkit-any(article, aside, nav, section) :-webkit-any(article, aside, nav, section) :-webkit-any(article, aside, nav, section) :-webkit-any(article, aside, nav, section) h1 {
  font-size: 0.67em;
  margin-block-start: 2.33em;
  margin-block-end: 2.33em;
}
.blogBody h2 {
  display: block;
  font-size: 2.3em;
  margin-block-start: 0.83em;
  margin-block-end: 0.83em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-weight: bold;
}
@media screen and (max-width: 520px) {
  .blogBody h2 {
    font-size: 1.6em;
  }
}
.blogBody h3 {
  display: block;
  font-size: 1.17em;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-weight: bold;
}
.blogBody h4 {
  display: block;
  margin-block-start: 1.33em;
  margin-block-end: 1.33em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-weight: bold;
}
.blogBody h5 {
  display: block;
  font-size: 0.83em;
  margin-block-start: 1.67em;
  margin-block-end: 1.67em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-weight: bold;
}
.blogBody h6 {
  display: block;
  font-size: 0.67em;
  margin-block-start: 2.33em;
  margin-block-end: 2.33em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  font-weight: bold;
}
.blogBody strong,
.blogBody em,
.blogBody kbd {
  font-size: 1em;
}
.blogBody table {
  display: table;
  border-color: gray;
  box-sizing: border-box;
  text-indent: initial;
}
.blogBody thead {
  display: table-header-group;
  vertical-align: middle;
  border-color: inherit;
}
.blogBody tbody {
  display: table-row-group;
  vertical-align: middle;
  border-color: inherit;
}
.blogBody tfoot {
  display: table-footer-group;
  vertical-align: middle;
  border-color: inherit;
}
.blogBody table > tr {
  vertical-align: middle;
}
.blogBody col {
  display: table-column;
}
.blogBody colgroup {
  display: table-column-group;
}
.blogBody tr {
  display: table-row;
  vertical-align: inherit;
  border-color: inherit;
}
.blogBody td,
.blogBody th {
  display: table-cell;
  vertical-align: inherit;
}
.blogBody th {
  font-weight: bold;
  text-align: -internal-center;
}
.blogBody caption {
  display: table-caption;
  text-align: -webkit-center;
}
.blogBody ul,
.blogBody menu,
.blogBody dir {
  display: block;
  list-style-type: disc;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  padding-inline-start: 40px;
}
.blogBody ol {
  display: block;
  list-style-type: decimal;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  padding-inline-start: 40px;
}
.blogBody li {
  display: list-item;
  text-align: -webkit-match-parent;
  line-height: 1.8;
}
.blogBody ul ul,
.blogBody ol ul {
  list-style-type: circle;
}
.blogBody ol ol ul,
.blogBody ol ul ul,
.blogBody ul ol ul,
.blogBody ul ul ul {
  list-style-type: square;
}
.blogBody dd {
  display: block;
  margin-inline-start: 40px;
}
.blogBody dl {
  display: block;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
}
.blogBody dt {
  display: block;
}
.blogBody ol ul,
.blogBody ul ol,
.blogBody ul ul,
.blogBody ol ol {
  margin-block-start: 0;
  margin-block-end: 0;
}
.blogBody form {
  display: block;
  margin-top: 0em;
}
.blogBody :-webkit-any(table, thead, tbody, tfoot, tr) > form:-internal-is-html {
  display: none !important;
}
.blogBody label {
  cursor: default;
}
.blogBody legend {
  display: block;
  padding-inline-start: 2px;
  padding-inline-end: 2px;
  border: none;
}
.blogBody fieldset {
  display: block;
  margin-inline-start: 2px;
  margin-inline-end: 2px;
  padding-block-start: 0.35em;
  padding-inline-start: 0.75em;
  padding-inline-end: 0.75em;
  padding-block-end: 0.625em;
  min-inline-size: -moz-min-content;
  min-inline-size: min-content;
}
.blogBody button {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
}
.blogBody input,
.blogBody textarea,
.blogBody select,
.blogBody button,
.blogBody meter,
.blogBody progress {
  -webkit-writing-mode: horizontal-tb !important;
}
.blogBody input,
.blogBody textarea,
.blogBody select,
.blogBody button {
  margin: 0em;
  font: -webkit-small-control;
  text-rendering: auto; /* FIXME: Remove when tabs work with optimizeLegibility. */
  color: -internal-light-dark(black, white);
  letter-spacing: normal;
  word-spacing: normal;
  line-height: normal;
  text-transform: none;
  text-indent: 0;
  text-shadow: none;
  display: inline-block;
  text-align: start;
}
.blogBody input[type=hidden i] {
  display: none;
}
.blogBody input {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  padding: 1px;
  background-color: -internal-light-dark(white, black);
  border: 2px inset;
  -webkit-rtl-ordering: logical;
  cursor: text;
}
.blogBody input[type=search i] {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  box-sizing: border-box;
}
.blogBody input::-webkit-textfield-decoration-container {
  display: flex !important;
  align-items: center;
  -webkit-user-modify: read-only !important;
  content: none !important;
  writing-mode: inherit !important;
  -internal-align-self-block: center;
}
.blogBody input::-webkit-clear-button {
  -webkit-appearance: auto;
          appearance: auto;
  display: inline-block;
  cursor: default;
  flex: none;
  -webkit-user-modify: read-only !important;
  margin-inline-start: 2px;
  opacity: 0;
}
.blogBody input:enabled:read-write:-webkit-any(:focus, :hover)::-webkit-clear-button {
  opacity: 1;
  pointer-events: auto;
}
.blogBody input[type=search i]::-webkit-search-cancel-button {
  -webkit-appearance: auto;
          appearance: auto;
  display: block;
  cursor: default;
  flex: none;
  -webkit-user-modify: read-only !important;
  margin-inline-start: 1px;
  opacity: 0;
  -webkit-user-select: none !important;
          user-select: none !important;
}
.blogBody input[type=search i]:enabled:read-write:-webkit-any(:focus, :hover)::-webkit-search-cancel-button {
  opacity: 1;
  pointer-events: auto;
}
.blogBody input::-webkit-inner-spin-button {
  -webkit-appearance: auto;
          appearance: auto;
  display: inline-block;
  cursor: default;
  flex: none;
  align-self: stretch;
  -webkit-user-modify: read-only !important;
  opacity: 0;
}
.blogBody input:enabled:read-write:-webkit-any(:focus, :hover)::-webkit-inner-spin-button {
  opacity: 1;
  pointer-events: auto;
}
.blogBody select {
  border-radius: 5px;
}
.blogBody textarea {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  background-color: -internal-light-dark(white, black);
  border: 1px solid;
  -moz-column-count: initial !important;
       column-count: initial !important;
  -webkit-rtl-ordering: logical;
  flex-direction: column;
  resize: auto;
  cursor: text;
  padding: 2px;
  white-space: pre-wrap;
  word-wrap: break-word;
}
.blogBody ::-webkit-input-placeholder {
  -webkit-text-security: none;
  color: #757575;
  direction: inherit !important;
  pointer-events: none !important;
  text-orientation: inherit !important;
  writing-mode: inherit !important;
}
.blogBody input::-webkit-input-placeholder {
  text-overflow: inherit;
  line-height: initial;
  white-space: pre;
  word-wrap: normal;
  overflow: hidden;
  -webkit-user-modify: read-only !important;
}
.blogBody input::-internal-input-suggested {
  text-overflow: inherit;
  white-space: nowrap;
  overflow: hidden;
}
.blogBody input::-internal-input-suggested,
.blogBody textarea::-internal-input-suggested {
  font: -webkit-small-control !important;
  /* Prevent that overflow affects the scrollable area. Without this,
  LayoutBox::*Scroll{Height,Width}() may determine the scroll width/height
  from the scrollable area instead of from the overrides in
  LayoutTextControl{Single,Multi}Line::Scroll{Height,Width}(). */
  overflow: hidden !important;
  overflow-anchor: none;
}
.blogBody input[type=password i] {
  -webkit-text-security: disc !important;
}
.blogBody input[type=password i]::-internal-input-suggested {
  -webkit-text-security: disc !important;
}
.blogBody input[type=hidden i],
.blogBody input[type=image i],
.blogBody input[type=file i] {
  -webkit-appearance: initial; /* AutoAppearanceFor() should match to this. */
  padding: initial;
  background-color: initial;
  border: initial;
  cursor: default;
}
.blogBody input[type=file i] {
  align-items: baseline;
  color: inherit;
  overflow: hidden !important;
  text-align: start !important;
  text-overflow: ellipsis;
  white-space: pre;
}
.blogBody input[type=image i] {
  cursor: pointer;
}
.blogBody input:-internal-autofill-previewed,
.blogBody textarea:-internal-autofill-previewed,
.blogBody select:-internal-autofill-previewed {
  -webkit-appearance: menulist-button;
  background-color: #e8f0fe !important;
  background-image: none !important;
  color: -internal-light-dark(black, white) !important;
}
.blogBody input:-internal-autofill-selected,
.blogBody textarea:-internal-autofill-selected,
.blogBody select:-internal-autofill-selected {
  -webkit-appearance: menulist-button;
  background-color: #e8f0fe !important;
  background-image: none !important;
  color: -internal-light-dark(black, white) !important;
}
.blogBody input[type=radio i],
.blogBody input[type=checkbox i] {
  margin: 3px 0.5ex;
  padding: initial;
  background-color: initial;
  border: initial;
  cursor: default;
}
.blogBody input[type=button i],
.blogBody input[type=submit i],
.blogBody input[type=reset i] {
  -internal-empty-line-height: fabricated;
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  white-space: pre;
}
.blogBody input[type=file i]::-webkit-file-upload-button {
  -webkit-appearance: auto;
          appearance: auto;
  -webkit-user-modify: read-only !important;
  white-space: nowrap;
  margin: 0;
  margin-inline-end: 4px;
  font-size: inherit;
}
.blogBody input[type=button i],
.blogBody input[type=submit i],
.blogBody input[type=reset i],
.blogBody input[type=file i]::-webkit-file-upload-button,
.blogBody button {
  align-items: flex-start;
  text-align: center;
  cursor: default;
  color: -internal-light-dark(ButtonText, #aaaaaa);
  padding: 2px 6px 3px 6px;
  border: 2px outset ButtonFace;
  background-color: ButtonFace;
  box-sizing: border-box;
}
.blogBody input[type=range i] {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto; /* AutoAppearanceFor() should match to this. */
  padding: initial;
  border: initial;
  margin: 2px;
  color: #909090;
  cursor: default;
}
.blogBody input[type=range i]::-webkit-slider-container,
.blogBody input[type=range i]::-webkit-media-slider-container {
  -webkit-appearance: inherit;
          appearance: inherit;
  flex: 1;
  min-inline-size: 0;
  box-sizing: border-box;
  -webkit-user-modify: read-only !important;
  display: flex;
}
.blogBody input[type=range i]:-internal-has-datalist::-webkit-slider-container {
  /*
  * See LayoutThemeDefault. "22px" is
  * 2 * (SliderTickOffsetFromTrackCenter() + SliderTickSize().Height()).
  */
  min-block-size: 22px;
}
.blogBody input[type=range i]::-webkit-slider-runnable-track {
  flex: 1;
  min-inline-size: 0;
  -webkit-align-self: center;
  box-sizing: border-box;
  -webkit-user-modify: read-only !important;
  display: block;
}
.blogBody input[type=range i]::-webkit-slider-thumb,
.blogBody input[type=range i]::-webkit-media-slider-thumb {
  -webkit-appearance: auto;
          appearance: auto;
  box-sizing: border-box;
  -webkit-user-modify: read-only !important;
  display: block;
}
.blogBody input[type=button i]:disabled,
.blogBody input[type=submit i]:disabled,
.blogBody input[type=reset i]:disabled,
.blogBody input[type=file i]:disabled::-webkit-file-upload-button,
.blogBody button:disabled,
.blogBody select:disabled,
.blogBody optgroup:disabled,
.blogBody option:disabled,
.blogBody select[disabled] > option {
  color: -internal-light-dark(GrayText, #aaa);
}
.blogBody input[type=button i]:active,
.blogBody input[type=submit i]:active,
.blogBody input[type=reset i]:active,
.blogBody input[type=file i]:active::-webkit-file-upload-button,
.blogBody button:active {
  border-style: inset;
}
.blogBody input[type=button i]:active:disabled,
.blogBody input[type=submit i]:active:disabled,
.blogBody input[type=reset i]:active:disabled,
.blogBody input[type=file i]:active:disabled::-webkit-file-upload-button,
.blogBody button:active:disabled {
  border-style: outset;
}
.blogBody input:disabled,
.blogBody textarea:disabled {
  color: -internal-light-dark(#545454, #aaa);
  cursor: default;
}
.blogBody option:-internal-spatial-navigation-focus {
  outline: -internal-light-dark(black, white) dashed 1px;
  outline-offset: -1px;
}
.blogBody datalist {
  display: none;
}
.blogBody area {
  display: inline;
}
.blogBody area:-webkit-any-link {
  cursor: pointer;
}
.blogBody param {
  display: none;
}
.blogBody input[type=checkbox i] {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  box-sizing: border-box;
}
.blogBody input[type=radio i] {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  box-sizing: border-box;
}
.blogBody input[type=color i] {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  width: 44px;
  height: 23px;
  background-color: ButtonFace;
  /* Same as native_theme_base. */
  border: 1px #a9a9a9 solid;
  padding: 1px 2px;
  cursor: default;
}
.blogBody input[type=color i]::-webkit-color-swatch-wrapper {
  display: flex;
  padding: 4px 2px;
  box-sizing: border-box;
  -webkit-user-modify: read-only !important;
  width: 100%;
  height: 100%;
}
.blogBody input[type=color i]::-webkit-color-swatch {
  background-color: #000000;
  border: 1px solid #777777;
  flex: 1;
  min-width: 0;
  -webkit-user-modify: read-only !important;
}
.blogBody input[type=color i][list] {
  -webkit-appearance: menulist; /* AutoAppearanceFor() should match to this. */
  width: 88px;
  height: 23px;
}
.blogBody input[type=color i][list]::-webkit-color-swatch-wrapper {
  padding-inline-start: 8px;
  padding-inline-end: 24px;
}
.blogBody input[type=color i][list]::-webkit-color-swatch {
  border-color: #000000;
}
.blogBody input::-webkit-calendar-picker-indicator {
  display: inline-block;
  width: 0.66em;
  height: 0.66em;
  padding: 0.17em 0.34em;
  -webkit-user-modify: read-only !important;
  opacity: 0;
  cursor: default;
}
.blogBody input::-webkit-calendar-picker-indicator:hover {
  background-color: #eee;
}
.blogBody input:enabled:read-write:-webkit-any(:focus, :hover)::-webkit-calendar-picker-indicator,
.blogBody input::-webkit-calendar-picker-indicator:focus {
  opacity: 1;
  pointer-events: auto;
}
.blogBody input[type=date i]:disabled::-webkit-clear-button,
.blogBody input[type=date i]:disabled::-webkit-inner-spin-button,
.blogBody input[type=datetime-local i]:disabled::-webkit-clear-button,
.blogBody input[type=datetime-local i]:disabled::-webkit-inner-spin-button,
.blogBody input[type=month i]:disabled::-webkit-clear-button,
.blogBody input[type=month i]:disabled::-webkit-inner-spin-button,
.blogBody input[type=week i]:disabled::-webkit-clear-button,
.blogBody input[type=week i]:disabled::-webkit-inner-spin-button,
.blogBody input:disabled::-webkit-calendar-picker-indicator,
.blogBody input[type=date i][readonly]::-webkit-clear-button,
.blogBody input[type=date i][readonly]::-webkit-inner-spin-button,
.blogBody input[type=datetime-local i][readonly]::-webkit-clear-button,
.blogBody input[type=datetime-local i][readonly]::-webkit-inner-spin-button,
.blogBody input[type=month i][readonly]::-webkit-clear-button,
.blogBody input[type=month i][readonly]::-webkit-inner-spin-button,
.blogBody input[type=week i][readonly]::-webkit-clear-button,
.blogBody input[type=week i][readonly]::-webkit-inner-spin-button,
.blogBody input[readonly]::-webkit-calendar-picker-indicator {
  visibility: hidden;
}
.blogBody select {
  -webkit-appearance: menulist; /* AutoAppearanceFor() should match to this. */
  box-sizing: border-box;
  align-items: center;
  border: 1px solid;
  white-space: pre;
  -webkit-rtl-ordering: logical;
  color: -internal-light-dark(black, white);
  background-color: -internal-light-dark(white, black);
  cursor: default;
}
.blogBody select:not(:-internal-list-box) {
  overflow: visible !important;
}
.blogBody select:-internal-list-box {
  -webkit-appearance: listbox; /* AutoAppearanceFor() should match to this. */
  align-items: flex-start;
  border: 1px inset gray;
  border-radius: initial;
  overflow-x: hidden;
  overflow-y: scroll;
  vertical-align: text-bottom;
  white-space: nowrap;
}
.blogBody optgroup {
  font-weight: bolder;
  display: block;
}
.blogBody option {
  font-weight: normal;
  display: block;
  padding: 0 2px 1px 2px;
  white-space: nowrap;
  min-height: 1.2em;
}
.blogBody select:-internal-list-box optgroup option:before {
  content: "    ";
}
.blogBody select:-internal-list-box option,
.blogBody select:-internal-list-box optgroup {
  line-height: initial !important;
}
.blogBody select:-internal-list-box:focus option:checked {
  background-color: -internal-active-list-box-selection !important;
  color: -internal-active-list-box-selection-text !important;
}
.blogBody select:-internal-list-box:focus option:checked:disabled {
  background-color: -internal-inactive-list-box-selection !important;
}
.blogBody select:-internal-list-box option:checked {
  background-color: -internal-inactive-list-box-selection !important;
  color: -internal-inactive-list-box-selection-text !important;
}
.blogBody select:-internal-list-box:disabled option:checked,
.blogBody select:-internal-list-box option:checked:disabled {
  color: gray !important;
}
.blogBody select:-internal-list-box hr {
  border-style: none;
  margin-block-start: 0.5em;
  margin-block-end: 0;
}
.blogBody select:-internal-list-box:focus option:-internal-multi-select-focus {
  outline: auto 1px -webkit-focus-ring-color;
  outline-offset: -1px;
}
.blogBody output {
  display: inline;
}
.blogBody meter {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  box-sizing: border-box;
  display: inline-block;
  height: 1em;
  width: 5em;
  vertical-align: -0.2em;
  -webkit-user-modify: read-only !important;
}
.blogBody meter::-webkit-meter-inner-element {
  -webkit-appearance: inherit;
          appearance: inherit;
  box-sizing: inherit;
  display: none;
  -webkit-user-modify: read-only !important;
  height: 100%;
  width: 100%;
}
.blogBody meter::-webkit-meter-inner-element:-internal-shadow-host-has-appearance {
  display: block;
}
.blogBody meter::-internal-fallback:-internal-shadow-host-has-appearance {
  display: none;
}
.blogBody meter::-webkit-meter-bar {
  background: linear-gradient(to bottom, #ddd, #eee 20%, #ccc 45%, #ccc 55%, #ddd);
  height: 100%;
  width: 100%;
  -webkit-user-modify: read-only !important;
  box-sizing: border-box;
}
.blogBody meter::-webkit-meter-optimum-value {
  background: linear-gradient(to bottom, #ad7, #cea 20%, #7a3 45%, #7a3 55%, #ad7);
  height: 100%;
  -webkit-user-modify: read-only !important;
  box-sizing: border-box;
}
.blogBody meter::-webkit-meter-suboptimum-value {
  background: linear-gradient(to bottom, #fe7, #ffc 20%, #db3 45%, #db3 55%, #fe7);
  height: 100%;
  -webkit-user-modify: read-only !important;
  box-sizing: border-box;
}
.blogBody meter::-webkit-meter-even-less-good-value {
  background: linear-gradient(to bottom, #f77, #fcc 20%, #d44 45%, #d44 55%, #f77);
  height: 100%;
  -webkit-user-modify: read-only !important;
  box-sizing: border-box;
}
.blogBody progress {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  box-sizing: border-box;
  display: inline-block;
  height: 1em;
  width: 10em;
  vertical-align: -0.2em;
}
.blogBody progress::-webkit-progress-inner-element {
  box-sizing: inherit;
  -webkit-user-modify: read-only;
  height: 100%;
  width: 100%;
}
.blogBody progress::-webkit-progress-bar {
  background-color: gray;
  height: 100%;
  width: 100%;
  -webkit-user-modify: read-only !important;
  box-sizing: border-box;
}
.blogBody progress::-webkit-progress-value {
  background-color: green;
  height: 100%;
  width: 50%; /* should be removed later */
  -webkit-user-modify: read-only !important;
  box-sizing: border-box;
}
.blogBody u,
.blogBody ins {
  text-decoration: underline;
}
.blogBody abbr[title],
.blogBody acronym[title] {
  -webkit-text-decoration: dotted underline;
          text-decoration: dotted underline;
}
.blogBody strong,
.blogBody b {
  font-weight: bold;
}
.blogBody i,
.blogBody cite,
.blogBody em,
.blogBody var,
.blogBody address,
.blogBody dfn {
  font-style: italic;
}
.blogBody pre,
.blogBody xmp,
.blogBody plaintext,
.blogBody listing {
  display: block;
  white-space: pre;
  margin: 1em 0;
}
.blogBody mark {
  background-color: yellow;
  color: black;
}
.blogBody big {
  font-size: larger;
}
.blogBody small {
  font-size: smaller;
}
.blogBody s,
.blogBody strike,
.blogBody del {
  text-decoration: line-through;
}
.blogBody sub {
  vertical-align: sub;
  font-size: smaller;
}
.blogBody sup {
  vertical-align: super;
  font-size: smaller;
}
.blogBody nobr {
  white-space: nowrap;
}
.blogBody :-internal-spatial-navigation-interest {
  outline: auto 1px -webkit-focus-ring-color !important;
  box-shadow: none !important;
}
.blogBody :focus {
  outline: auto 1px -webkit-focus-ring-color;
}
.blogBody html:focus,
.blogBody body:focus {
  outline: none;
}
.blogBody embed:focus,
.blogBody iframe:focus,
.blogBody object:focus {
  outline: none;
}
.blogBody input:focus,
.blogBody textarea:focus,
.blogBody select:focus {
  outline-offset: -2px;
}
.blogBody input[type=button i]:focus,
.blogBody input[type=checkbox i]:focus,
.blogBody input[type=file i]:focus,
.blogBody input[type=hidden i]:focus,
.blogBody input[type=image i]:focus,
.blogBody input[type=radio i]:focus,
.blogBody input[type=reset i]:focus,
.blogBody input[type=submit i]:focus,
.blogBody input[type=file i]:focus::-webkit-file-upload-button {
  outline-offset: 0;
}
.blogBody a:-webkit-any-link {
  color: #0073aa;
  text-decoration: underline;
  cursor: pointer;
  word-break: break-all;
}
.blogBody p.has-text-color a {
  color: inherit;
}
.blogBody a:-webkit-any-link:active {
  color: -webkit-activelink;
}
.blogBody a:-webkit-any-link:read-write {
  cursor: text;
}
.blogBody ruby,
.blogBody rt {
  text-indent: 0; /* blocks used for ruby rendering should not trigger this */
}
.blogBody rt {
  line-height: normal;
}
.blogBody ruby > rt {
  display: block;
  font-size: 50%;
  text-align: start;
}
.blogBody rp {
  display: none;
}
.blogBody noframes {
  display: none;
}
.blogBody frameset,
.blogBody frame {
  display: block;
}
.blogBody frameset {
  border-color: inherit;
}
.blogBody iframe {
  border: 2px inset;
}
.blogBody details {
  display: block;
}
.blogBody summary {
  display: block;
}
.blogBody summary::-webkit-details-marker {
  display: inline-block;
  width: 0.66em;
  height: 0.66em;
  margin-inline-end: 0.4em;
}
.blogBody template {
  display: none;
}
.blogBody bdi,
.blogBody output {
  unicode-bidi: -webkit-isolate;
}
.blogBody bdo {
  unicode-bidi: bidi-override;
}
.blogBody textarea[dir=auto i] {
  unicode-bidi: -webkit-plaintext;
}
.blogBody dialog:not([open]) {
  display: none;
}
.blogBody dialog {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin: auto;
  border: solid;
  padding: 1em;
  background: -internal-light-dark(white, black);
  color: -internal-light-dark(black, white);
}
.blogBody dialog:-internal-modal {
  position: fixed;
  overflow: auto;
  top: 0;
  bottom: 0;
  /* 6px + 2em = border + padding, as by default box-sizing is content-box. */
  max-width: calc(100% - 6px - 2em);
  max-height: calc(100% - 6px - 2em);
}
.blogBody dialog::backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.1);
}
.blogBody slot {
  display: contents;
}
@page {
  .blogBody {
    /* FIXME: Define the right default values for page properties. */
    size: auto;
    margin: auto;
    padding: 0px;
    border-width: 0px;
  }
}
@media print {
  .blogBody thead {
    -moz-column-break-inside: avoid;
         break-inside: avoid;
  }
  .blogBody tfoot {
    -moz-column-break-inside: avoid;
         break-inside: avoid;
  }
}
.blogBody .wp-block-pullquote {
  margin: 0 0 1em 0;
  padding: 3em 0;
  text-align: center;
  border-top: 4px solid;
  border-bottom: 4px solid;
}
.blogBody .wp-block-pullquote.alignleft,
.blogBody .wp-block-pullquote.alignright {
  max-width: 420px;
}
.blogBody .wp-block-pullquote.alignleft p,
.blogBody .wp-block-pullquote.alignright p {
  font-size: 1.25em;
}
.blogBody .wp-block-pullquote p {
  font-size: 1.75em;
  line-height: 1.6;
}
.blogBody .wp-block-pullquote cite,
.blogBody .wp-block-pullquote footer {
  position: relative;
}
.blogBody .wp-block-pullquote .has-text-color a {
  color: inherit;
}
.blogBody .wp-block-pullquote:not(.is-style-solid-color) {
  background: none;
}
.blogBody .wp-block-pullquote.is-style-solid-color {
  border: none;
}
.blogBody .wp-block-pullquote.is-style-solid-color blockquote {
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  max-width: 60%;
}
.blogBody .wp-block-pullquote.is-style-solid-color blockquote p {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2em;
}
.blogBody .wp-block-pullquote.is-style-solid-color blockquote cite {
  text-transform: none;
  font-style: normal;
}
.blogBody .wp-block-pullquote cite {
  color: inherit;
}
.blogBody .wp-block-quote {
  border-left: 0.25em solid;
  margin: 0 0 1.75em;
  padding-left: 1em;
}
.blogBody .wp-block-table td,
.blogBody .wp-block-table th {
  border: 1px solid;
}
.blogBody .wp-block-table td,
.blogBody .wp-block-table th {
  padding: 0.5em;
  border: 1px solid;
  word-break: normal;
  line-height: 1.8;
}
.blogBody .wp-block-image img {
  max-width: 100%;
  height: auto;
}
.blogBody .wp-block-columns {
  display: flex;
  margin-bottom: 2em;
  box-sizing: border-box;
  flex-wrap: wrap;
}
@media screen and (max-width: 520px) {
  .blogBody .wp-block-columns {
    flex-direction: column-reverse;
  }
}
.blogBody .wp-block-columns p {
  margin-block-start: 0;
  margin-block-end: 0;
}
.blogBody .wp-block-column {
  overflow: hidden;
}
.blogBody .size-full img {
  width: 100%;
}
.blogBody h2,
.blogBody h3,
.blogBody h4,
.blogBody h5,
.blogBody h6 {
  margin-block-start: 2em;
  margin-block-end: 2em;
}
.blogBody .wp-block-column > h1,
.blogBody .wp-block-column > h2,
.blogBody .wp-block-column > h3,
.blogBody .wp-block-column > h4,
.blogBody .wp-block-column > h5,
.blogBody .wp-block-column > h6 {
  margin-block-start: 0;
}

.fixedBgi {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: -1;
  width: 100%;
  overflow: hidden;
  background: linear-gradient(45deg, #2B6882, #1E3970);
}
.fixedBgi__inner {
  width: 88%;
  max-width: 1200px;
  height: 100vh;
  margin: auto;
  padding-top: 200px;
  position: relative;
}
.fixedBgi__mvImg {
  position: absolute;
}
.fixedBgi__mvImg--mv {
  top: 120px;
  right: -120px;
  z-index: 1;
}
@media screen and (max-width: 940px) {
  .fixedBgi__mvImg--mv {
    width: 100%;
    top: auto;
    bottom: 120px;
    right: -20px;
  }
}
.fixedBgi__mvImg--letter {
  left: 50%;
  transform: translateX(-50%);
  bottom: 56px;
  z-index: 2;
}
@media screen and (max-width: 940px) {
  .fixedBgi__mvImg--letter {
    width: 200%;
  }
}

.mv__inner {
  width: 88%;
  max-width: 1200px;
  min-height: 900px;
  margin: auto;
  padding-top: 160px;
  position: relative;
}
@media screen and (max-width: 940px) {
  .mv__inner {
    padding-top: 80px;
    min-height: auto;
  }
}
.mv__info {
  position: relative;
  z-index: 3;
}
.mv__heading {
  font-size: 48px;
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  margin-bottom: 32px;
}
@media screen and (max-width: 1200px) {
  .mv__heading {
    font-size: 36px;
  }
}
@media screen and (max-width: 520px) {
  .mv__heading {
    font-size: clamp(24px, 6.2vw, 32px);
  }
}
.mv__text {
  font-size: 16px;
  color: #fff;
  line-height: 1.9;
  font-weight: 300;
  margin-bottom: 64px;
  max-width: 480px;
}
@media screen and (max-width: 520px) {
  .mv__text {
    font-size: 14px;
  }
}
.mv__imgWrapper {
  display: flex;
  gap: 16px;
  margin-bottom: 48px;
}
@media screen and (max-width: 940px) {
  .mv__imgWrapper {
    gap: 8px;
    max-width: 480px;
  }
}
@media screen and (max-width: 520px) {
  .mv__imgWrapper {
    max-width: 100%;
  }
}
.mv__pointImg {
  width: 160px;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 940px) {
  .mv__pointImg {
    flex: 1 1 33.3%;
    width: 33.3%;
    max-width: 140px;
  }
}
.mv__ctaWrapper {
  display: flex;
  gap: 24px;
}
@media screen and (max-width: 1200px) {
  .mv__ctaWrapper {
    display: none;
  }
}
.mv__ctaBtn {
  display: block;
  font-size: 16px;
  line-height: 1;
  font-weight: 700;
  padding: 16px 32px;
  border-radius: 100px;
  min-width: 260px;
  text-align: center;
  transition: 0.4s;
}
.mv__ctaBtn:hover {
  opacity: 0.6;
}
.mv__ctaBtn--contact {
  background-color: #E5A80D;
  color: #fff;
}
.mv__ctaBtn--download {
  background-color: #fff;
  border: 2px solid #E5A80D;
  color: #E5A80D;
}

.trouble__inner {
  max-width: 1200px;
  width: 88%;
  padding: 200px 0 300px;
  margin: auto;
}
.trouble__contents {
  display: flex;
  gap: 12px;
  margin-top: 32px;
}
@media screen and (max-width: 940px) {
  .trouble__contents {
    flex-direction: column;
  }
}
.trouble__content {
  flex: 1 1 25%;
  padding: 56px 40px;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  border: 4px;
}
@media screen and (max-width: 1200px) {
  .trouble__content {
    padding: 32px 24px;
  }
}
.trouble__iconContainer {
  width: 64px;
  aspect-ratio: 1/1;
  position: relative;
  background-color: #fff;
  border-radius: 50%;
  margin-bottom: 20px;
}
@media screen and (max-width: 1200px) {
  .trouble__iconContainer {
    width: 40px;
  }
}
@media screen and (max-width: 520px) {
  .trouble__iconContainer {
    margin-bottom: 8px;
  }
}
.trouble__icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50%;
}
.trouble__cardHeading {
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 1200px) {
  .trouble__cardHeading {
    font-size: 16px;
  }
}

.feature {
  width: 100%;
  background-color: #f9f9f9;
  overflow: hidden;
}
.feature__inner {
  width: 88%;
  max-width: 1200px;
  margin: auto;
  padding: 230px 0 200px;
}
@media screen and (max-width: 940px) {
  .feature__inner {
    padding: 120px 0 120px;
  }
}
.feature__contents {
  display: flex;
  gap: 20px;
  margin-top: 32px;
  margin-bottom: 48px;
}
@media screen and (max-width: 940px) {
  .feature__contents {
    flex-direction: column;
  }
}
.feature__content {
  flex: 1 1 33.3%;
  background-color: #fff;
  padding: 80px 40px;
}
@media screen and (max-width: 1200px) {
  .feature__content {
    padding: 56px 24px;
  }
}
.feature__span {
  display: block;
}
.feature__span--sub {
  font-weight: 400;
  color: #0B758C;
  line-height: 1;
  margin-bottom: 12px;
  font-size: 16px;
}
@media screen and (max-width: 1200px) {
  .feature__span--sub {
    font-size: 14px;
  }
}
.feature__span--main {
  font-weight: 500;
  line-height: 1.4;
  font-size: 24px;
}
@media screen and (max-width: 1200px) {
  .feature__span--main {
    font-size: 18px;
  }
}
.feature__sideScrollContainer {
  display: flex;
  width: 100%;
  gap: 40px;
}
.feature__imgContainer {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 40px;
  animation-name: sideScroll;
  animation-duration: 20s;
  animation-fill-mode: forwards;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
.feature__img {
  flex-shrink: 0;
}
@keyframes sideScroll {
  0% {
    transform: translateX(-100px);
  }
  100% {
    transform: translateX(-1900px);
  }
}

.comparison {
  background-color: #f9f9f9;
  position: relative;
}
.comparison__scrollContainer {
  display: none;
}
@media screen and (max-width: 1200px) {
  .comparison__scrollContainer {
    display: block;
    background-color: rgba(0, 0, 0, 0.7);
    padding: 40px;
    border-radius: 12px;
    position: absolute;
    bottom: 320px;
    left: 50%;
    transform: translateX(-50%);
    width: 88%;
    max-width: 400px;
    z-index: 99;
    transition: 0.4s;
  }
}
.comparison__scrollContainer.close {
  opacity: 0;
  pointer-events: none;
}
.comparison__scrollImg {
  display: block;
  margin: auto;
  animation-name: fingerScroll;
  animation-duration: 1.8s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}
.comparison__scrollText {
  font-size: 16px;
  color: #fff;
  margin-top: 16px;
  text-align: center;
}
@keyframes fingerScroll {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(-100%);
  }
}
.comparison__inner {
  width: 88%;
  max-width: 1200px;
  padding: 120px 0;
  margin: auto;
}
@media screen and (max-width: 1200px) {
  .comparison__inner {
    width: 100%;
    overflow-x: scroll;
    padding-left: 32px;
  }
}
@media screen and (max-width: 520px) {
  .comparison__inner {
    padding: 80px 0;
    padding-left: 32px;
  }
}
.comparison__content {
  display: flex;
  align-items: flex-end;
  gap: 2px;
}
@media screen and (max-width: 1200px) {
  .comparison__content {
    width: 1200px;
  }
}
@media screen and (max-width: 520px) {
  .comparison__content {
    width: 960px;
  }
}
.comparison__column {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  flex: 1 1 20%;
}
.comparison__column--main {
  background: linear-gradient(45deg, #2B6882, #1E3970);
  position: relative;
  z-index: 1;
  box-shadow: 8px 8px 8px rgba(17, 17, 17, 0.1);
}
.comparison__logo {
  max-width: 88%;
}
.comparison__index {
  min-height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.comparison__index:nth-last-of-type(2n+1) {
  background-color: #fff;
}
.comparison__index:nth-last-of-type(2n) {
  background-color: #F1F1F1;
}
.comparison__index--main {
  background-color: transparent !important;
}
.comparison__index--service {
  min-height: 200px;
}
.comparison__indexText {
  font-size: 16px;
  line-height: 1;
  width: 100%;
  text-align: center;
  font-size: 14px;
  color: #444;
}
.comparison__indexText--title {
  text-align: right;
  padding-right: 1em;
  font-size: 16px;
}
@media screen and (max-width: 520px) {
  .comparison__indexText--title {
    font-size: 13px;
  }
}
.comparison__indexText--content--main {
  color: #fff;
  font-size: 16px;
  font-weight: 700;
}
.comparison__indexText--content--mainSub {
  display: block;
  font-size: 12px;
  margin-top: 0.5em;
}
.comparison__indexText--serviceName {
  font-size: 16px;
  line-height: 1.4;
  color: #111;
}
.comparison__onText {
  color: #1F3F72;
  background-color: #f9f9f9;
  margin-bottom: 1em;
  text-align: center;
}

.flow {
  background-color: #f9f9f9;
}
.flow__inner {
  max-width: 1200px;
  width: 88%;
  margin: auto;
  padding: 120px 0 40px;
}
.flow__content {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 32px;
}
@media screen and (max-width: 940px) {
  .flow__content {
    flex-direction: column;
    align-items: flex-start;
  }
}
.flow__card {
  flex: 1 1 23%;
  min-height: 380px;
  background-color: #fff;
  padding: 72px 28px 0;
  counter-increment: card-count;
}
@media screen and (max-width: 940px) {
  .flow__card {
    flex: 1 1 auto;
    width: 100%;
    min-height: auto;
    padding: 40px 28px;
  }
}
@media screen and (max-width: 520px) {
  .flow__card {
    display: flex;
    gap: 20px;
    align-items: flex-start;
  }
}
.flow__arrow {
  flex: 0 0 12px;
}
@media screen and (max-width: 940px) {
  .flow__arrow {
    transform: rotate(90deg);
    margin-left: 24px;
  }
}
.flow__cardTitle {
  font-size: 18px;
  margin-top: 30px;
  margin-bottom: 16px;
}
.flow__cardTitle::before {
  content: "0" counter(card-count);
  display: block;
  font-size: 14px;
  color: #2B6782;
  line-height: 1.4;
  margin-bottom: 8px;
}
@media screen and (max-width: 940px) {
  .flow__cardTitle {
    font-size: 16px;
    margin-top: 12px;
  }
}
@media screen and (max-width: 520px) {
  .flow__cardTitle {
    margin-top: 0px;
  }
}
.flow__cardText {
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.03em;
}

.secure {
  overflow: hidden;
  background-color: #f9f9f9;
}
.secure__inner {
  position: relative;
  max-width: 900px;
  width: 88%;
  margin: auto;
  padding: 200px 0;
}
@media screen and (max-width: 940px) {
  .secure__inner {
    padding: 120px 0 120px;
  }
}
.secure__content {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 40px;
  align-items: flex-start;
  margin-top: 40px;
}
@media screen and (max-width: 940px) {
  .secure__content {
    flex-direction: column;
  }
}
.secure__text {
  font-size: 14px;
  line-height: 2.3;
  letter-spacing: 0.03em;
  max-width: 440px;
  font-weight: 400;
}
.secure__img {
  flex: 1 0 auto;
}
@media screen and (max-width: 940px) {
  .secure__img {
    flex: 1 1 auto;
    width: 88%;
  }
}
.secure__bgi {
  position: absolute;
  z-index: 1;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
}

.system__inner {
  max-width: 1200px;
  width: 88%;
  margin: auto;
  padding: 180px 0;
}
.system__contents {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  max-width: 900px;
  margin-top: 40px;
}
@media screen and (max-width: 520px) {
  .system__contents {
    max-width: 80%;
    gap: 4px;
  }
}
.system__content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 1 1 48%;
  background-color: #fff;
  border-radius: 4px;
  overflow: hidden;
}
@media screen and (max-width: 520px) {
  .system__content {
    flex: 1 1 100%;
  }
}
.system__contentInfo {
  flex: 1 1 66.6%;
  padding: 0 16px 0 24px;
}
@media screen and (max-width: 520px) {
  .system__contentInfo {
    padding: 0 12px 0 14px;
  }
}
.system__imgContainer {
  position: relative;
  flex: 1 1 33.3%;
  aspect-ratio: 1/1;
  max-width: 150px;
  width: 100%;
  border-radius: 4px;
  overflow: hidden;
}
.system__imgContainer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(48, 108, 145, 0.2);
  z-index: 10;
  border-radius: 4px;
}
.system__img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
}
.system__text--en {
  font-size: 12px;
  font-weight: 300;
  color: #306C91;
  line-height: 1;
  margin-bottom: 8px;
}
@media screen and (max-width: 520px) {
  .system__text--en {
    font-size: 10px;
    margin-bottom: 2px;
  }
}
.system__text--ja {
  font-size: 16px;
  font-weight: 700;
}
@media screen and (max-width: 520px) {
  .system__text--ja {
    font-size: 14px;
  }
}
.system__ctaText {
  font-size: 24px;
  letter-spacing: 0.03em;
  line-height: 1.4;
  margin-top: 120px;
  margin-bottom: 48px;
  color: #fff;
  font-weight: 700;
}
@media screen and (max-width: 520px) {
  .system__ctaText {
    font-size: 18px;
    margin-top: 40px;
    max-width: 80%;
  }
}
.system__ctaWrapper {
  display: flex;
  gap: 24px;
}
@media screen and (max-width: 940px) {
  .system__ctaWrapper {
    flex-direction: column;
  }
}
@media screen and (max-width: 520px) {
  .system__ctaWrapper {
    max-width: 80%;
  }
}
.system__ctaBtn {
  display: block;
  font-size: 16px;
  line-height: 1;
  font-weight: 700;
  padding: 16px 32px;
  border-radius: 100px;
  min-width: 260px;
  text-align: center;
  transition: 0.4s;
}
.system__ctaBtn:hover {
  opacity: 0.6;
}
.system__ctaBtn--contact {
  background-color: #E5A80D;
  color: #fff;
}
.system__ctaBtn--download {
  background-color: #fff;
  border: 2px solid #E5A80D;
  color: #E5A80D;
}

.faq {
  background-color: #f9f9f9;
}
.faq__inner {
  width: 88%;
  max-width: 800px;
  margin: auto;
  padding: 120px 0;
}
@media screen and (max-width: 520px) {
  .faq__inner {
    padding: 80px 0;
  }
}
.faq__contents {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 32px;
}
@media screen and (max-width: 520px) {
  .faq__contents {
    gap: 12px;
  }
}
.faq__content {
  position: relative;
  cursor: pointer;
}
.faq__content::before {
  content: "";
  display: block;
  width: 24px;
  height: 2px;
  background-color: #111;
  position: absolute;
  top: 44px;
  right: 40px;
  transform: rotate(90deg);
  transition: 0.4s;
}
@media screen and (max-width: 520px) {
  .faq__content::before {
    right: 12px;
    top: 24px;
    width: 16px;
  }
}
.faq__content::after {
  content: "";
  display: block;
  width: 24px;
  height: 2px;
  background-color: #111;
  position: absolute;
  top: 44px;
  right: 40px;
  transform: rotate(0deg);
}
@media screen and (max-width: 940px) {
  .faq__content::after {
    right: 12px;
    top: 24px;
    width: 16px;
  }
}
.faq__content.toggle::before {
  transform: rotate(0deg);
}
.faq__list {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 24px 96px 24px 36px;
  background-color: #fff;
}
@media screen and (max-width: 520px) {
  .faq__list {
    padding: 20px 48px 20px 20px;
  }
}
.faq__list--answer {
  padding-top: 0;
  display: none;
  transition: 0.4s;
}
.faq__list--answer.toggle {
  transition: 0.4s;
  display: flex;
}
.faq__mark {
  flex: 0 0 44px;
  aspect-ratio: 1/1;
  display: grid;
  place-content: center;
  font-size: 16px;
  font-weight: 700;
}
@media screen and (max-width: 520px) {
  .faq__mark {
    font-size: 14px;
    flex: 0 0 28px;
  }
}
.faq__mark--q {
  background-color: #F3E6C4;
}
.faq__mark--a {
  border: 1px solid #B18F37;
  color: #B18F37;
}
.faq__text {
  padding-top: 8px;
}
.faq__text--heading {
  font-size: 18px;
  line-height: 1.3;
}
@media screen and (max-width: 520px) {
  .faq__text--heading {
    font-size: 15px;
    padding-top: 2px;
  }
}
.faq__text--answer {
  font-size: 14px;
  font-weight: 300;
  color: #333;
  line-height: 1.8;
}
.faq__text--answer-link {
  color: #377E9C;
  text-decoration: underline;
}
@media screen and (max-width: 520px) {
  .faq__text--answer {
    padding-top: 0;
  }
}

.sample__content {
  counter-increment: counter;
}
.sample__content--blue {
  background: linear-gradient(45deg, #2B6882, #1E3970);
}
.sample__content--green {
  background: linear-gradient(45deg, #06544F, #0FA39A);
}
.sample__content--orange {
  background: linear-gradient(45deg, #B7811A, #EEB548);
}
.sample__contentInner {
  display: flex;
  gap: 80px;
  align-items: flex-start;
  padding: 128px 0;
  width: 88%;
  max-width: 1200px;
  margin: auto;
}
@media screen and (max-width: 940px) {
  .sample__contentInner {
    flex-direction: column-reverse;
    gap: 40px;
  }
}
.sample__contentInner--blue {
  background: linear-gradient(45deg, #2B6882, #1E3970);
}
.sample__img {
  flex: 1 1 560px;
}
@media screen and (max-width: 1200px) {
  .sample__img {
    flex: 1 1 380px;
    max-width: 380px;
  }
}
@media screen and (max-width: 520px) {
  .sample__img {
    max-width: 100%;
    flex: 1 1 auto;
  }
}
.sample__icon {
  display: block;
  margin: 18px 48px;
}
.sample__info {
  flex: 1 1 auto;
}
.sample__contentTitle {
  font-size: 24px;
  letter-spacing: 0.03em;
  line-height: 1.4;
  color: #fff;
  font-weight: 700;
  margin-bottom: 28px;
}
.sample__contentTitle::before {
  content: "開発事例0" counter(counter);
  display: block;
  font-size: 16px;
  margin-bottom: 4px;
  font-weight: 400;
}
.sample__contentContainer {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.sample__contentContainer--task {
  background-color: #fff;
  padding: 14px 24px;
}
.sample__contentContainer--solve {
  border: 1px solid #fff;
  border-radius: 4px;
  padding: 32px 24px;
}
@media screen and (max-width: 520px) {
  .sample__contentContainer {
    flex-direction: column;
  }
}
.sample__contentSpan {
  display: block;
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: 1;
  border-radius: 100px;
  flex: 0 0 72px;
  text-align: center;
  padding: 12px 0;
}
@media screen and (max-width: 520px) {
  .sample__contentSpan {
    flex: 1 1 auto;
    width: 80px;
    font-size: 12px;
  }
}
.sample__contentSpan--task {
  color: #fff;
  background-color: #111;
}
.sample__contentSpan--solve {
  color: #111;
  background-color: #fff;
}
.sample__contentSpan--solve-blue {
  color: #377E9C;
}
.sample__contentSpan--solve-green {
  color: #0FA39A;
}
.sample__contentSpan--solve-orange {
  color: #EDB447;
}
.sample__contentText {
  padding-top: 7px;
}
.sample__contentText--solve {
  display: flex;
  gap: 4px;
  color: #fff;
  font-size: 14px;
  font-weight: 300;
  margin-bottom: 0.75em;
}
.sample__contentText--solve::before {
  content: "・";
  display: flex;
}

.contact {
  padding: 150px 0;
}
.contact__inner {
  max-width: 960px;
  width: 88%;
  margin: auto;
  padding: 150px 0;
  background-color: #fff;
  border-radius: 12px;
  padding: 80px 24px;
}
.contact__content {
  max-width: 600px;
  margin: auto;
}
.contact__disc {
  font-size: 15px;
  font-weight: 400;
  margin-top: 1em;
  margin-bottom: 72px;
  padding-bottom: 2em;
  border-bottom: 1px #eee solid;
}
@media screen and (max-width: 520px) {
  .contact__disc {
    margin-bottom: 32px;
  }
}

.pageCommon__inner {
  width: 88%;
  max-width: 500px;
  margin: auto;
  min-height: 50vh;
  padding-top: 200px;
  padding-bottom: 20px;
}
.pageCommon__heading {
  font-size: 28px;
  margin-bottom: 40px;
}
.pageCommon__text {
  font-size: 16px;
  font-weight: 300;
  line-height: 1.8;
}
.pageCommon__link {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin: 40px auto;
  text-decoration: underline;
  color: blue;
}

.header {
  top: -80px;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 100;
  transition: 0.4s;
}
.header.toggle {
  position: fixed;
  background-color: #fff;
  transform: translateY(80px);
}
.header__inner {
  width: 88%;
  max-width: 1200px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 0;
}
.header__logoContainer {
  max-width: 214px;
}
.header__logo {
  display: block;
  width: 100%;
  transition: 0.4s;
}
.header__logo:hover {
  opacity: 0.6;
}
.header__logo--white {
  display: block;
}
.header__logo--white.toggle {
  display: none;
}
.header__logo--black {
  display: none;
}
.header__logo--black.toggle {
  display: block;
}
.header__nav {
  display: flex;
  align-items: center;
}
.header__lists {
  display: flex;
  align-items: center;
  gap: 32px;
}
@media screen and (max-width: 1200px) {
  .header__lists {
    display: none;
  }
}
.header__link {
  display: block;
  font-size: 14px;
  font-weight: 400;
  color: #fff;
  transition: 0.4s;
}
.header__link:hover {
  opacity: 0.6;
}
.header__link.toggle {
  color: #111;
}
.header__ctaBtn {
  font-size: 14px;
  line-height: 1;
  font-weight: 700;
  padding: 14px 24px;
  border-radius: 100px;
  margin-left: 24px;
  transition: 0.4s;
}
@media screen and (max-width: 1200px) {
  .header__ctaBtn {
    display: none;
  }
}
.header__ctaBtn:hover {
  opacity: 0.6;
}
.header__ctaBtn--contact {
  background-color: #E5A80D;
  color: #fff;
}
.header__ctaBtn--download {
  background-color: #fff;
  border: 2px solid #E5A80D;
  color: #E5A80D;
}

.footer {
  background-color: #fff;
}
@media screen and (max-width: 1200px) {
  .footer {
    padding-bottom: 72px;
  }
}
.footer__inner {
  max-width: 1200px;
  width: 88%;
  margin: auto;
  padding-top: 140px;
}
.footer__logo {
  width: 300px;
  transition: 0.4s;
}
.footer__logo:hover {
  opacity: 0.6;
}
.footer__contents {
  display: flex;
  justify-content: space-between;
  margin-top: 80px;
  align-items: flex-start;
}
@media screen and (max-width: 940px) {
  .footer__contents {
    flex-direction: column;
    gap: 48px;
  }
}
.footer__companyName {
  font-size: 16px;
  margin-bottom: 48px;
}
.footer__infoContainer {
  display: flex;
}
.footer__info {
  font-size: 14px;
  margin-bottom: 20px;
  color: #333;
  font-weight: 300;
}
@media screen and (max-width: 520px) {
  .footer__info {
    font-size: 12px;
  }
}
.footer__info--title {
  flex: 0 0 80px;
}
.footer__info--link {
  color: #1F97CB;
  text-decoration: underline;
}
.footer__linkLists {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media screen and (max-width: 520px) {
  .footer__linkLists {
    gap: 22px;
  }
}
.footer__link {
  font-size: 14px;
  color: #333;
  transition: 0.4s;
}
.footer__link:hover {
  opacity: 0.6;
}
.footer__topScroll {
  background-color: #F1F1F1;
  color: #333;
  padding: 20px 32px;
  font-size: 12px;
  transition: 0.4s;
}
.footer__topScroll:hover {
  opacity: 0.6;
}
.footer__copyRight {
  padding: 16px;
  color: #fff;
  font-size: 13px;
  text-align: center;
  background: linear-gradient(45deg, #2B6882, #1E3970);
  margin-top: 140px;
}

.heading {
  position: relative;
  z-index: 2;
}
.heading__inner {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 1200px) {
  .heading__inner {
    font-size: 24px;
  }
}
.heading__inner--white {
  color: #fff;
}
.heading__inner--black {
  color: #111;
}
.heading__span {
  display: block;
  font-size: 24px;
  margin-bottom: 8px;
}
@media screen and (max-width: 940px) {
  .heading__span {
    font-size: 16px;
  }
}

.contactForm__label {
  display: flex;
  align-items: center;
  gap: 1em;
  line-height: 1;
  margin-top: 20px;
  margin-bottom: 4px;
}
@media screen and (max-width: 940px) {
  .contactForm__label {
    gap: 12px;
  }
}
@media screen and (max-width: 520px) {
  .contactForm__label {
    margin-top: 40px;
    margin-bottom: 8px;
  }
}
.contactForm__label--name {
  font-size: 16px;
  font-weight: 700;
}
@media screen and (max-width: 940px) {
  .contactForm__label--name {
    font-size: clamp(14px, 4vw, 18px);
    line-height: 1.3;
  }
}
.contactForm__label--label {
  font-size: 12px;
  color: #fff;
  padding: 8px 16px;
  background-color: #1F97CB;
  border-radius: 100px;
  flex-shrink: 0;
}
.contactForm__label--label-nes {
  color: #1F97CB;
  border: #1F97CB solid 1px;
  padding: 8px 16px;
  display: inline-block;
  border-radius: 100px;
  font-size: 12px;
  flex-shrink: 0;
}
.contactForm__Disc {
  margin-bottom: 12px;
  line-height: 1.4;
  font-size: 14px;
}
.contactForm__input {
  padding: 12px;
  width: 100%;
  border: #e9e9e9 solid 1px;
}
.contactForm__area {
  padding: 12px;
  width: 100%;
  border: #e9e9e9 solid 1px;
}
.contactForm__privacyContainer {
  height: 240px;
  width: 100%;
  padding: 20px;
  overflow-y: scroll;
  background-color: #fff;
  margin-top: 40px;
  border: #e9e9e9 solid 1px;
}
.contactForm__privacyText {
  font-size: 14px;
  line-height: 1.5;
  font-weight: 300;
}
@media screen and (max-width: 520px) {
  .contactForm__privacyText {
    font-size: 13px;
    max-width: 100%;
  }
}
.contactForm__submit {
  display: block;
  border-radius: 100px;
  padding: 1em 2em;
  font-size: 18px;
  margin: 40px auto 20px;
}
.contactForm__submit[disabled] {
  color: #222;
  background-color: #777;
}
.contactForm__submit:not([disabled]) {
  background-color: #1F97CB;
  color: #fff;
  transition: 0.3s;
}
.contactForm__submit:not([disabled]):hover {
  cursor: pointer;
  box-shadow: 0 0 4px 4px rgba(51, 51, 51, 0.1);
  opacity: 0.7;
}

.wpcf7-list-item {
  display: block;
  font-weight: 300;
}
@media screen and (max-width: 940px) {
  .wpcf7-list-item {
    margin: 0;
    font-size: clamp(14px, 3.5vw, 16px);
  }
}

.wpcf7-select {
  display: block;
  padding: 12px 24px 12px 12px;
  font-size: 16px;
  background-color: #fff;
  font-weight: 300;
}

.wpcf7-acceptance {
  display: block;
}
.wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}
.wpcf7-acceptance label {
  display: block;
  background-color: #E0E3E8;
  padding: 40px;
  width: 100%;
  text-align: center;
}
@media screen and (max-width: 940px) {
  .wpcf7-acceptance label {
    padding: 16px;
  }
}

.wpcf7-response-output {
  border: none !important;
  background-color: #F3E6C4;
  font-size: clamp(14px, 4vw, 18px) !important;
  line-height: 1.4;
  padding: 2em !important;
  border-radius: 12px;
}

.hamburgerMenu {
  display: none;
}
@media screen and (max-width: 1200px) {
  .hamburgerMenu {
    display: block;
  }
}
.hamburgerMenu__inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 48px;
  height: 48px;
}
.hamburgerMenu__bar {
  width: 100%;
  height: 2px;
  background-color: #fff;
  transition: 0.4s;
}
.hamburgerMenu__bar.toggle {
  background-color: #111;
}
.hamburgerMenu__bar--top {
  transform: translateY(-2px) rotate(0deg);
}
.hamburgerMenu__bar--bottom {
  transform: translateY(2px) rotate(0deg);
}
.hamburgerMenu__bar--menu {
  background-color: #111;
}
.hamburgerMenu.toggle .hamburgerMenu__bar--top {
  transform: translateY(1px) rotate(-20deg);
}
.hamburgerMenu.toggle .hamburgerMenu__bar--bottom {
  transform: translateY(-1px) rotate(20deg);
}

.modalMenu {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  z-index: 999;
  opacity: 0;
  transition-duration: 0.4s;
  transform: translateX(40px);
}
.modalMenu.toggle {
  transform: translateX(0px);
  opacity: 1;
  pointer-events: all;
}
.modalMenu__inner {
  width: 100%;
  height: 100%;
  display: flex;
}
.modalMenu__outBgi {
  height: 100%;
  background-color: rgba(17, 17, 17, 0.7);
  flex: 1 1 20%;
}
.modalMenu__mainContent {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  height: 100%;
  background-color: white;
  flex: 1 1 80%;
  padding: 80px 40px;
}
.modalMenu__lists {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin-top: 120px;
}
.modalMenu__link {
  display: block;
  font-size: 16px;
  color: #111;
  text-align: right;
  transition: 0.4s;
}
.modalMenu__link:hover {
  opacity: 0.7;
}

.footerCta {
  display: none;
}
@media screen and (max-width: 1200px) {
  .footerCta {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 99;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.7);
    padding: 12px 0;
  }
}
.footerCta__inner {
  max-width: 1200px;
  width: 88%;
  margin: auto;
  display: flex;
  justify-content: center;
  gap: 12px;
}
.footerCta__ctaBtn {
  font-size: clamp(10px, 3vw, 16px);
  line-height: 1;
  font-weight: 700;
  width: 50%;
  border-radius: 100px;
  transition: 0.4s;
  padding: 1em 0;
  text-align: center;
}
.footerCta__ctaBtn:hover {
  opacity: 0.6;
}
.footerCta__ctaBtn--contact {
  background-color: #E5A80D;
  color: #fff;
}
.footerCta__ctaBtn--download {
  background-color: #fff;
  border: 2px solid #E5A80D;
  color: #E5A80D;
}/*# sourceMappingURL=main.css.map */