/* Generic */
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
*,::before,::after{box-sizing:border-box;border-style:solid;border-width:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0}main{display:block}p,table,blockquote,address,pre,iframe,form,figure,dl{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}ul,ol{margin:0;padding:0;list-style:none}dt{font-weight:700}dd{margin-left:0}hr{box-sizing:content-box;height:0;overflow:visible;border-top-width:1px;margin:0;clear:both;color:inherit}pre{font-family:monospace,sans-serif;font-size:inherit}address{font-style:inherit}a{background-color:transparent;text-decoration:none;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,sans-serif;font-size:inherit}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}svg,img,embed,object,iframe{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;vertical-align:middle;color:inherit;font:inherit;background:transparent;padding:0;margin:0;border-radius:0;text-align:inherit;text-transform:inherit}button,[type="button"],[type="reset"],[type="submit"]{cursor:pointer}button:disabled,[type="button"]:disabled,[type="reset"]:disabled,[type="submit"]:disabled{cursor:default}:-moz-focusring{outline:auto}select:disabled{opacity:inherit}option{padding:0}fieldset{margin:0;padding:0;min-width:0}legend{padding:0}progress{vertical-align:baseline}textarea{overflow:auto}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type="number"]{-moz-appearance:textfield}label[for]{cursor:pointer}details{display:block}summary{display:list-item}[contenteditable]:focus{outline:auto}table{border-color:inherit;border-collapse:collapse}caption{text-align:left}td,th{vertical-align:top;padding:0}th{text-align:left;font-weight:700}
/* ------------------------------------------------------------------------------------
 web fonts
------------------------------------------------------------------------------------ */
/* Noto Sanas JP */
/* Regular */
@font-face {
  font-family: 'Noto Sans JP';
  src: url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/NotoSansJP-Regular.woff2') format('woff2'),
       url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/NotoSansJP-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Bold */
@font-face {
  font-family: 'Noto Sans JP';
  src: url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/NotoSansJP-Bold.woff2') format('woff2'),
       url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/NotoSansJP-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* Montserrat */
/* Light */
@font-face {
  font-family: 'Montserrat';
  src: url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/Montserrat-Light.woff2') format('woff2'),
       url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/Montserrat-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

/* Normal */
@font-face {
  font-family: 'Montserrat';
  src: url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/Montserrat-Medium.woff2') format('woff2'),
       url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/Montserrat-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

/* SemiBold */
@font-face {
  font-family: 'Montserrat';
  src: url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/Montserrat-SemiBold.woff2') format('woff2'),
       url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/Montserrat-SemiBold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

/* Bold */
@font-face {
  font-family: 'Montserrat';
  src: url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/Montserrat-Bold.woff2') format('woff2'),
       url('https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/fonts/Montserrat-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* Objects */
::-moz-selection {
  color: #fff;
	background-color: var(--blue);
}

::selection {
  color: #fff;
	background-color: var(--blue);
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 80px;
}

@media screen and (max-width: 1024px) {
  html {
    scroll-padding-top: 72px;
  }
}

html body .body-wrapper {
  position: relative;
  overflow-x: hidden;
}

section.section {
  padding: 100px 0;
}

@media screen and (max-width: 1024px) {
  section.section {
    padding: 70px 0;
  }
}

section .section-wrapper {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 120px;
}

@media screen and (max-width: 1024px) {
  section .section-wrapper {
    padding: 0 20px;
  }
}

/* Elements */
/* common */
html body {
  font: 16px/1.8 'Noto Sans JP', 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: var(--black);
}

section .en-title {
  font-family: 'Montserrat', sans-serif;;
  font-weight: 300;
  font-size: .75rem;  /* 12px */
  line-height: 1.2;
  margin-top: 15px;
  margin-left: 4px;
}

/* wysiwyg */
.wysiwyg *:first-child {
  margin-top: 0;
}

.wysiwyg *:last-child {
  margin-bottom: 0;
}

.wysiwyg h2 {
  font-size: 1.75rem;  /* 28px */
  font-weight: 700;
  line-height: 1.4;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--blue);
  margin-top: 70px;
  margin-bottom: 40px;
}

.wysiwyg h2 + h3 {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.4;
  padding: 8px 20px;
  background-color: #F8F8F8;
  margin-top: 50px;
  margin-bottom: 40px;
}

.wysiwyg h3:not(h2 + h3) {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.4;
  padding: 8px 20px;
  background-color: #F8F8F8;
  margin-top: 70px;
  margin-bottom: 40px;
}

.wysiwyg h4 {
  font-size: 1.125rem;  /* 18px */
  font-weight: 700;
  line-height: 1.4;
  margin-top: 50px;
  margin-bottom: 40px;
}

.wysiwyg h5 {
  font-size: 1rem;  /* 16px */
  font-weight: 700;
  line-height: 1.4;  
  margin-top: 50px;
  margin-bottom: 30px;
}

.wysiwyg h6 {
  font-size: 1rem;  /* 16px */
  font-weight: 400;
  line-height: 1.4;
  color: var(--light-blue);
  margin-top: 50px;
  margin-bottom: 30px;
}

.wysiwyg p {
  font-size: 1rem;  /* 16px */
  font-weight: 400;
  line-height: 2;
  color: var(--dark-gray);
  margin-top: 30px;
  margin-bottom: 30px;
}

.wysiwyg ul {
  line-height: 2.0;
  list-style: none;
  margin: 40px 0;
  padding: 0;
  text-indent: -24px;
  color: var(--dark-gray);
}

.wysiwyg ul p {
  display: inline;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin-left: -5px;
}

.wysiwyg ul li {
  margin-left: 23px;
  margin-bottom: 10px;
}

.wysiwyg ul > li::before {
  content: "";
  width: 15px;
  height: 15px;
  display: inline-block;
  background-color: var(--light-blue);
  border-radius: 100%;
  position:  relative;
  top: 2px;
  margin-right: 8px;
}

.wysiwyg ul ul {
  margin-top: 10px;
  margin-left: 17px;
  text-indent: -20px;
}

.wysiwyg ul ul li {
  margin-left: 0;
  border-radius: 50%;
  box-sizing: border-box;
  position: relative;
}

.wysiwyg ul ul li::before {
  border: 2px solid var(--light-blue);
  border-radius: 50%;
  box-sizing: border-box;
  content: "";
  height: 10px;
  position: relative;
  top: 0;
  background: white;
  width: 10px;
}

.wysiwyg ol {
  line-height: 2;
  counter-reset: ol-li;
  margin: 0 0 40px 0;
  text-indent: -22px;
  color: var(--dark-gray);
}

.wysiwyg ol li {
  margin-left: 23px;
  margin-bottom: 10px;
}

.wysiwyg ol li::before {
  font-weight: 700;
  counter-increment: ol-li;
  content: counter(ol-li)". ";
  color: var(--light-blue);
}

.wysiwyg a {
  color: var(--light-blue);
  border-bottom: 1px solid var(--light-blue);
  transition: border-bottom 0.1s
}

.wysiwyg a:hover {
  border-bottom: transparent 1px solid;
}

.wysiwyg img {
  width: 100% !important;
}

.wysiwyg figure {
  width: 100% !important;
  margin: 40px 0;
}

.wysiwyg figcaption {
  font-size: .875rem;  /* 14px */
  color: var(--dark-gray);
  line-height: 1.5;
  margin-top: 20px;
}

.wysiwyg hr {
  border-color: #C9CED1;
}

.wysiwyg pre {
  line-height: 1.5;
  background: #2D2D2D;
  margin: 40px 0;
  border-radius: 0;
}

.wysiwyg pre code {
  margin: 0;
  padding: 0;
}

.wysiwyg code {
  display: block;
  padding: 20px;
  background: #2d2d2d;
  margin: 40px 0;
  border-radius: 0;
}

.wysiwyg strong {
  font-weight: 700;
}

.wysiwyg blockquote {
  position: relative;
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  background: #F5F5F5;
  margin: 40px 0;
  padding: 39px 30px;
  background: var(--white);
}

.wysiwyg blockquote::before {
  content: "";
  position: absolute;
  top: 15px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2214%22%20viewBox%3D%220%200%2020%2014%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M18.5714%201.78246e-06L14.2857%201.40779e-06L11.4286%205.6L11.4286%2014L20%2014L20%205.6L15.7143%205.6L18.5714%201.78246e-06ZM7.14286%207.83341e-07L2.85714%204.08672e-07L-1.173e-06%205.6L-1.90735e-06%2014L8.57143%2014L8.57143%205.6L4.28571%205.6L7.14286%207.83341e-07Z%22%20fill%3D%22%23C9CED1%22%2F%3E%3C%2Fsvg%3E");
  width: 20px;
  height: 14px;
}

.wysiwyg blockquote::after {
  content: "";
  position: absolute;
  bottom: 15px;
  right: 30px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2214%22%20viewBox%3D%220%200%2020%2014%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M1.42857%2014H5.71429L8.57143%208.4L8.57143%200L0%200L0%208.4H4.28571L1.42857%2014ZM12.8571%2014H17.1429L20%208.4V0L11.4286%200L11.4286%208.4H15.7143L12.8571%2014Z%22%20fill%3D%22%23C9CED1%22%2F%3E%3C%2Fsvg%3E");
  width: 20px;
  height: 14px;
}

.wysiwyg table {
  width: 100% !important;
  height: auto !important;
  table-layout: fixed;
  margin-top: 40px;
  margin-bottom: 70px;
  display: block;
  overflow-x: auto;
}

.wysiwyg table tbody {
  width: 100%;
  display: table;
}

.wysiwyg table tr th {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  padding: 15px 12px;
  border: 1px solid #DDDDDD;
  background: #F8FBFF;
  vertical-align: middle;
}

.wysiwyg table tr td {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  padding: 15px 12px;
  border: 1px solid #ddd;
  vertical-align: middle;
  background: var(--white);
}

.wysiwyg table p {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin: 0;
}

.wysiwyg table ul {
  margin: 0 !important;
}

.wysiwyg table ul ul {
  margin-left: 20px !important;
  margin-top: 10px !important;
}

.wysiwyg table ol {
  margin: 0 !important;
}

@media screen and (max-width: 1024px) {
  .wysiwyg h1 {
    font-size: 1.375rem;  /* 22px */
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .wysiwyg h2 {
    font-size: 1.25rem;  /* 20px */
    margin-top: 60px;
  }

  .wysiwyg h3:not(.post-appendarea-wrapper h3) {
    font-size: 1.125rem !important;  /* 18px */
    margin-bottom: 30px;
    padding: 6px 10px;
  }

  .wysiwyg h4 {
    font-size: 1rem;  /* 16px */
    margin-top: 40px;
    margin-bottom: 30px;
  }

  .wysiwyg h5 {
    font-size: .9375rem;  /* 15px */
    margin-top: 40px;
    margin-bottom: 30px;
  }

  .wysiwyg h6 {
    font-size: .9375rem;  /* 15px */
    margin-top: 40px;
    margin-bottom: 30px;
  }

  .wysiwyg pre {
    margin: 30px 0;
  }

  .wysiwyg code {
    margin: 30px 0;
  }

  .wysiwyg blockquote {
    margin: 30px 0;
    padding: 39px 20px;
  }

  .wysiwyg table tr th, 
  .wysiwyg table tr td {
    font-size: .75rem;  /* 12px */
  }

  .wysiwyg ul {
    font-size: .9375rem;  /* 15px */
    margin: 30px 0;
    text-indent: -20px;
  }

  .wysiwyg ul ul {
    margin-left: 14px;
  }

  .wysiwyg p {
    font-size: .9375rem;  /* 15px */
    line-height: 1.8;
    margin: 30px 0;
  }
}
form.hs-form fieldset {
  margin: 0 0 30px 0;
  max-width: initial;
}

form.hs-form fieldset.hidden {
  margin: 0;  
}

form.hs-form fieldset.form-columns-0 {
  margin-bottom: 0;
}

form.hs-form fieldset.form-columns-1 .hs-form-field {
  width: 100%;
}

form.hs-form fieldset.form-columns-1 .hs-form-field .hs-input {
  width: 100%;
}

form.hs-form fieldset.form-columns-2 .hs-form-field:last-child {
  margin-left: 26px;
}

section.contents form.hs-form fieldset.form-columns-2 .hs-form-field:last-child {
  margin-left: 20px;
}

form.hs-form fieldset label .hs-form-required {
  font-size: 0;
}

form.hs-form fieldset .hs-fieldtype-booleancheckbox {
  text-align: center;
}

form.hs-form fieldset .hs-form-booleancheckbox label .hs-form-required {
  font-size: 0;
}

form.hs-form .hs-fieldtype-file .input {
  border: none !important;
}

form.hs-form .hs_product_image legend {
  margin-bottom: 10px;
}

form.hs-form input[type="file"] {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  color: var(--dark-gray);
}

form.hs-form input[type="file"]:before {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  color: var(--dark-gray);
}

form.hs-form .form-columns-0 .hs-richtext {
  width: 100%;
}

form.hs-form .privacySet {
  margin: 0;
  text-align: center;
}

form.hs-form .privacySet h3 {
  font-weight: 700;
  font-size: 1.125rem;
  margin-top: 0.8em !important;
  margin-bottom: 0.8em;
  color: var(--black);
}

form.hs-form .privacySet p {
  margin: 0 0 1em 0;
}

form.hs-form .privacySet p a {
  text-decoration: underline;
}

form.hs-form .privacySet p a:hover {
  text-decoration: none;
}

form.hs-form .hs-error-msgs {
  margin: .5em 0 0 0;
  list-style: none;
}

form.hs-form .hs_error_rollup {
  text-align: center;
  margin: 0 0 1em 0;
}

form.hs-form .hs-form-field .grecaptcha-badge {
  text-align: center;
  margin: 0 auto 30px;
}

form.hs-form fieldset.form-columns-2 {
  display: grid;
  grid-template-columns: 48% 48%;
}

form.hs-form fieldset.form-columns-3 {
  display: grid;
  grid-template-columns: 31% 31% 31%;
  grid-column-gap: 23px;
}

section.contents form.hs-form fieldset.form-columns-3 {
  grid-column-gap: 19px;
}

form.hs-form fieldset.form-columns-2 .hs-form-field {
  width: 100%;
}

form.hs-form fieldset.form-columns-3 .hs-form-field {
  width: 100%;
}

form.hs-form fieldset.form-columns-2 .hs-form-field:not(.hs-fieldtype-checkbox):not(.hs-fieldtype-radio),
section.contents form.hs-form fieldset.form-columns-2 .hs-form-field:not(.hs-fieldtype-checkbox):not(.hs-fieldtype-radio),
section.contents form.hs-form fieldset.form-columns-3 .hs-form-field:not(.hs-fieldtype-checkbox):not(.hs-fieldtype-radio) {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

form.hs-form fieldset legend {
  font-size: .875rem;  /* 14px */
  line-height: 1.45;
  color: var(--dark-gray-sub);
  margin: 0 0 8px;
}

form.hs-form fieldset legend a {
  border-bottom: 1px solid var(--light-blue);
  color: var(--light-blue);
  display: inline-block;
  margin-bottom: -1px;
}

form.hs-form fieldset legend a:hover {
  border: 0;
}

form.hs-form p.text {
  font-size: 1rem;  /* 16px */
  line-height: 2;
  color: var(--dark-gray);
  margin-bottom: 30px;
}

form.hs-form fieldset label:not(.hs-form-radio-display):not(.hs-error-msg):not(.hs-form-booleancheckbox-display):not(.hs-form-checkbox-display) {
  display: block;
  font-size: 1rem;  /* 16px */
  font-weight: 700;
  line-height: 1.45;
  color: var(--dark-gray);
  margin: 0 0 12px;
  position: relative;
  cursor: default;
}

form.hs-form .hs-error-msgs label.hs-error-msg,
form.hs-form .hs_error_rollup label.hs-main-font-element {
  font-size: .8125rem;  /* 13px */
  font-weight: 400;
  line-height: 1.45;
  color: var(--red);
}

/* form.hs-form .hs_recaptcha {
  margin-top: -30px;
} */

form.hs-form fieldset .hs-form-field .input {
  margin: 0;
}

form.hs-form fieldset .hs-form-field .input textarea {
  width: 100%;
  padding: 17px 14px;
  margin-right: 0;
  border: 1px solid var(--light-gray);
  border-radius: 3px;
}

form.hs-form fieldset .hs-form-field .input input:not([type=radio]):not([type=file]) {
  width: 100%;
  height: 56px;
  padding: 17px 14px;
  margin-right: 0;
  border: 1px solid var(--light-gray);
  border-radius: 3px;
}

form.hs-form fieldset .hs-form-field .input:has(input[type=file]) {
  padding: 8px;
}

form.hs-form fieldset .hs-form-field .input input::placeholder {
  font-size: 1rem;  /* 16px */
  font-weight: 1.45;
  color: var(--gray);
}

form.hs-form fieldset .hs-form-field .input textarea::placeholder {
  font-size: 1rem;  /* 16px */
  font-weight: 1.45;
  color: var(--dark-gray-sub);
}

form.hs-form fieldset .hs-form-field:not(.hs-fieldtype-booleancheckbox):not(.hs-fieldtype-checkbox) .input input:focus,
form.hs-form fieldset .hs-form-field .input textarea:focus {
  border: 1px solid var(--blue) !important;
  outline: 0;
}

form.hs-form fieldset .hs-form-field .input input.invalid,
form.hs-form fieldset .hs-fieldtype-select .input select.invalid,
form.hs-form fieldset .hs-fieldtype-select .input:has(select.invalid):after,
form.hs-form ul.inputs-list.invalid,
form.hs-form fieldset .hs-fieldtype-file:has(.hs-error-msgs) .input:has(input[type=file]) {
  background: var(--light-red);
}

form.hs-form fieldset label .hs-form-required:after {
  background-color: var(--red);
  border-radius: 3px;
  color: #fff;
  content: "必須";
  font-size: .8125rem;  /* 13px */
  font-weight: 400;
  line-height: 1.45;
  margin-left: 8px;
  padding: 2px 8px;
  white-space: nowrap;
}

form.hs-form .form-privacy {
  font-size: .875rem;  /* 14px */
  line-height: 1.45;
  color: var(--dark-gray);
  margin-top: 40px;
  margin-bottom: 35px;
}

form.hs-form .form-privacy a.tac {
  display: block;
  float: left;
  margin-right: 20px;
  margin-top: -20px;
}

form.hs-form .form-privacy a.tac img {
  width: 80px;
  height: 80px;
}
form.hs-form .form-privacy a:first-child{
  display: block;
  float: left;
  margin-right: 20px;
  margin-top: -20px;
  border-bottom: unset !important;
}
form.hs-form .form-privacy a:first-child img{
  width: 80px;
  height: 80px;
}

form.hs-form .form-privacy a:not(.tac) {
  display: inline-block;
  color: var(--light-blue);
  border-bottom: 1px solid var(--light-blue);
  margin-bottom: -1px;
}

form.hs-form .form-privacy a:not(.tac):hover {
  border-bottom: none;
}

form.hs-form .hs-form fieldset .hs-fieldtype-booleancheckbox span {
  font-size: 1rem;  /* 16px */
  font-weight: 400;
  line-height: 1.45;
  color: var(--dark-gray);
}

form.hs-form .hs-button.primary {
  align-items: center;
  background: var(--blue);
  border-radius: 5px;
  color: var(--white);
  cursor: pointer;
  display: flex;
  font-size: 1.25rem;  /* 20px */
  justify-content: center;
  line-height: 1.45;
  margin: 40px auto auto;
  max-width: 300px;
  width: 100%;
  height: 71px;
  transition: background-color 0.3s;
  text-align: center;
}

form.hs-form .hs-button.primary:hover {
  background-color: var(--light-blue);
}

form.hs-form [type=checkbox]:checked {
  background-image: url(data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e);
}

form.hs-form [type=checkbox]:checked {
  border-color: transparent;
  background-color: var(--light-blue) !important;
  background-size: 22px 22px;
  background-position: center;
  background-repeat: no-repeat;
}

form.hs-form fieldset .hs-fieldtype-radio label:has(input)::before {
  content: "";
  background: #F5F5F5;
  border-radius: 100%;
  border: 1px solid var(--light-gray);
  display: inline-block;
  min-width: 20px;
  height: 20px;
  position: relative;
  text-align: center;
  transition: all 250ms ease;
}

form.hs-form fieldset .hs-fieldtype-radio label:has([type=radio]:checked)::before {
  background-color: var(--light-blue);
  box-shadow: inset 0 0 0 4px var(--white);
}

form.hs-form fieldset .hs-fieldtype-radio label:has(input) {
  display: flex;
  grid-column-gap: 15px;
  align-items: center;
  width: fit-content;
  padding: 8px;
  font-size: 1rem;  /* 16px */
  font-weight: 400;
  line-height: 1.45;
  color: var(--dark-gray);
}

form.hs-form fieldset .hs-fieldtype-radio label>input {
  display: none;
}

form.hs-form fieldset .hs-form-booleancheckbox label {
  display: flex;
  grid-column-gap: 15px;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin: 0 auto;
  padding: 8px;
  font-size: 1rem;  /* 16px */
  font-weight: 400;
  line-height: 1.45;
  color: var(--dark-gray);
}

form.hs-form fieldset .hs-fieldtype-checkbox .input label {
  display: flex;
  grid-column-gap: 15px;
  align-items: center;
  margin: 0 auto;
  padding: 8px;
  font-size: 1rem;  /* 16px */
  font-weight: 400;
  line-height: 1.45;
  cursor: default;
  color: var(--dark-gray);
}

form.hs-form fieldset .hs_privacy_policy_check:has(ul.hs-error-msgs) .hs-form-booleancheckbox label {
  background: #FBEFEE;
}

form.hs-form fieldset .hs-form-booleancheckbox label input,
form.hs-form fieldset .hs-fieldtype-checkbox label input {
  width: 20px !important;
  height: 20px !important;
  max-width: 20px;
  min-width: 20px;
  padding: 0 !important;
  background: var(--white);
}

form.hs-form fieldset .hs-form-booleancheckbox label input:focus {
  outline: thin solid var(--light-blue) !important;
  border: 0 !important;
}

form.hs-form fieldset .hs-fieldtype-checkbox label input:focus {
  outline: 0 !important;
  border: 1px solid var(--light-blue) !important;
}

form.hs-form fieldset .hs-fieldtype-select .input select {
  width: 100% !important;
  border: 1px solid #ddd;
  border-radius: 3px;
  height: 56px;
  margin-right: 0;
  padding: 10px 14px;
  font-size: 1rem;  /* 16px */
  line-height: 1.45;
  color: var(--dark-gray);
}

form.hs-form fieldset .hs-fieldtype-select .input select:invalid {
  color: #595959 !important;
}

form.hs-form fieldset .hs-fieldtype-select .input select option {
  color: var(--dark-gray);
}

form.hs-form fieldset .hs-fieldtype-date .input>.hs-dateinput input {
  font-size: 1rem;  /* 16px */
  line-height: 1.45;
  color: var(--dark-gray);
}

form.hs-form fieldset .hs-fieldtype-select .input {
  position: relative;
  width: 100%;
}

form.hs-form fieldset .hs-fieldtype-select .input:after {
  background: var(--white);
  border-left: 1px solid #595959;
  content: url(data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="10" fill="none"><path d="m1.2 9 6.4-7L14 9" stroke="%23595959" stroke-width="2"/></svg>) url(data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="10" fill="none"><path d="M14 1 7.6 8 1.2 1" stroke="%23595959" stroke-width="2"/></svg>);
  font-size: .625rem;  /* 10px */
  padding-top: 3px;
  padding-left: 15px;
  pointer-events: none;
  position: absolute;
  right: 25px;
  top: 16px;
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  width: 30px;
  height: 25px;
  display: flex;
  align-items: center;
}

form.hs-form fieldset .hs-fieldtype-select .input select:focus {
  outline: thin solid var(--blue) !important;
  border: 0;
}

@media screen and (max-width: 1024px) {
  h3.form-title {
    font-size: 1.125rem;  /* 18px */
    margin-bottom: 20px;
  }

  form.hs-form fieldset {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 0;
  }

  form.hs-form fieldset.form-columns-1 .hs-form-field,
  form.hs-form fieldset.form-columns-2 .hs-form-field,
  form.hs-form fieldset.form-columns-3 .hs-form-field {
    width: 100% !important;
    margin: 0 0 30px 0;
  }

  form.hs-form fieldset.form-columns-2 .hs-form-field .hs-input {
    width: 100% !important;
  }

  form.hs-form fieldset .input:last-child {
    margin: 0 0 0 0;
  }

  form.hs-form .privacySet {
    margin: 0 0 30px 0;
    text-align: center;
  }

  form.hs-form #agreeWrap {
    display: flex !important;
    align-items: flex-start;
    text-align: left;
  }

  form.hs-form fieldset.form-columns-2 .hs-form-field:last-child {
    margin-left: 0;
  }

  section.contents form.hs-form fieldset.form-columns-2 .hs-form-field:last-child {
    margin-left: 0;
  }

  form.hs-form p.text {
    font-size: .9375rem;  /* 15px */
  }

  form.hs-form .form-privacy {
    font-size: .9375rem;  /* 15px */
    margin: 0 0 30px;
  }

  form.hs-form .form-privacy a.tac {
    width: 100%;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 20px;
  }
  form.hs-form .form-privacy a:first-child{
    width: 100%;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 20px;
    text-align: center;
  }

  form.hs-form fieldset label {
    font-size: .75rem;  /* 12px */
  }

  form.hs-form .hs-button.primary {
    font-size: 1.125rem;  /* 18px */
    height: 60px;
    margin: 30px auto auto;
  }

  form.hs-form fieldset .hs-form-booleancheckbox label {
    font-size: .9375rem;  /* 15px */
  }

  form.hs-form fieldset .hs-form-booleancheckbox label span {
    display: flex;
    align-items: center;
    text-align: left;
  }

  form.hs-form .hs_recaptcha {
    margin-top: 10px;
  }

  form.hs-form fieldset .hs-fieldtype-radio label:has(input) {
    font-size: .9375rem;  /* 15px */
    width: 100%;
  }

  form.hs-form fieldset .hs-fieldtype-checkbox .input label {
    font-size: .9375rem;  /* 15px */
  }

  form.hs-form fieldset .hs-fieldtype-select .input select {
    font-size: .9375rem;  /* 15px */
  }

  form.hs-form fieldset .hs-fieldtype-date .input input[type=date] {
    font-size: .9375rem;  /* 15px */
  }

  form.hs-form fieldset .hs-fieldtype-date .input input[type=file] {
    font-size: .9375rem;  /* 15px */
  }
}

@media screen and (max-width: 599px) {
  form.hs-form fieldset.form-columns-2,
  form.hs-form fieldset.form-columns-3 {
    display: block;
  }
}

/* Components */
#header.is-lp, #header.is-thanks {
  position: unset;
}

#header.is-lp {
  background-color: var(--light-gray-sub);
}

#header {
  position: fixed;
  width: 100%;
  height: 100px;
  z-index: 999;
  background-color: var(--white);
}

#header.is-scroll {
  height: 80px;
}

#header.up-move {
  position: fixed;
  width: 100%;
  animation: UpAnime 0.6s forwards;
}

@keyframes UpAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-160px);
  }
}

#header.down-move {
  position: fixed;
  width: 100%;
  animation: DownAnime 0.6s forwards;
}

@keyframes DownAnime {
  from {
    opacity: 0;
    transform: translateY(-160px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#header .header-wrapper {
  height: 100%;
}
.h-cta{
  margin-right: 20px;
}
#header .header-wrapper .h-links .h-cta a.h-cta-link{
  padding: 0 23px;
}
#header .header-wrapper .h-logo {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--white);
  box-shadow: 0px 4px 30px 8px rgb(90 90 90 / 7%);
  width: 15%;
  max-width: 220px;
  height: 100%;
  padding: 0 23px;
  z-index: 99;
}

#header.is-scroll .header-wrapper .h-logo {
  box-shadow: unset;
  padding: 0 23px;
}

#header .header-wrapper .h-logo img {
  width: 100%;
}

#header.is-scroll .header-wrapper .h-logo img {
  width: 80%;
}

#header .header-wrapper .h-links {
  transition: opacity 0.3s;
  align-items: center;
}

.h-bg-active {
  background-color: #F8FBFF;
}

.h-delimiter {
  border-top: 1px solid #EDEDED;
  padding-top: 32px;
  padding-left: 15px;
}

#header .header-wrapper .h-links .h-nav {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  margin-right: 100px;
}

#header .header-wrapper .h-links .h-nav .hs-menu-wrapper {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 1px;
  width: fit-content;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul:not(.hs-menu-children-wrapper) {
  display: flex;
  align-items: center;
  justify-content: center;
  grid-column-gap: 50px;
  font-size: .875rem;  /* 14px */
  font-weight: 700;
  white-space: nowrap;
  margin-left: 30px;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:not(.hs-menu-children-wrapper li) {
  display: flex;
  align-items: center;
  height: 100%;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item a:not(.hs-menu-children-wrapper li a) {
  position: relative;
}

#header:not(.sp-menu-open) .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item a:not(.hs-menu-children-wrapper li a)::after {
  content: "";
  position: absolute;
  top: 25px;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--black);
  transition: transform .3s;
  transform: scale(0, 0);
  transform-origin: left top;
}

#header:not(.sp-menu-open) .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.is-active a:not(.hs-menu-children-wrapper li a)::after {
  transform: scale(1, 1);
}

#header .header-wrapper .h-links .hs-menu-wrapper ul:not(.hs-menu-children-wrapper) li.hs-menu-item a[target=_blank] {
  background: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/images/icons/external-link-icon.svg) right center/13px auto no-repeat;
  padding-right: 18px;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children .child-items {
  background: #f8fbff;
  left: 0;
  position: absolute;
  top: 80px;
  transition: opacity .2s;
  visibility: hidden;
  opacity: 0;
  width: 100%;
  z-index: 98;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children ul.hs-menu-children-wrapper {
  grid-column-gap: 52px;
  grid-row-gap: 5px;
  background: #f8fbff;
  flex-wrap: wrap;
  font-size: .8125rem; /* 13px */
  font-weight: 400;
  margin: 0 auto;
  display: none;
  padding: 20px 0 25px 15px;
  border-top: 1px solid #ededed;
  white-space: normal;
  transition: all .3s;
}
#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(1):not(.hs-menu-children-wrapper li).is-active ul.hs-menu-children-wrapper{
  display: grid !important;
  grid-template-columns: repeat(4, auto);
}
#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(2):not(.hs-menu-children-wrapper li).is-active ul.hs-menu-children-wrapper{
  display: grid !important;
  grid-template-columns: auto 40%;
  grid-column-gap: 40px;
}
#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(2):not(.hs-menu-children-wrapper li).is-active ul.hs-menu-children-wrapper li.hs-menu-item:nth-child(1)::before,
#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(2):not(.hs-menu-children-wrapper li).is-active ul.hs-menu-children-wrapper li.hs-menu-item:nth-child(2)::before,
#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(2):not(.hs-menu-children-wrapper li).is-active ul.hs-menu-children-wrapper li.hs-menu-item:nth-child(9)::before{
  content: unset !important;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(2):not(.hs-menu-children-wrapper li) ul.hs-menu-children-wrapper, #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(4):not(.hs-menu-children-wrapper li) ul.hs-menu-children-wrapper {
  margin-right: auto !important;
}

#header.is-scroll .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children .child-items {
  top: 79px;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children.is-active .child-items {
  visibility: visible;
  opacity: 1;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children.is-active .child-items > ul.hs-menu-children-wrapper {
  display: flex;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children.is-active ul.hs-menu-children-wrapper li.hs-menu-item {
  transition: all .3s;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children ul.hs-menu-children-wrapper li.hs-menu-item a::before  {
  content: "";
  display: block;
  width: 6px;
  height: 1px;
  background-color: var(--black);
  position: relative;
  top: 12.5px;
  left: -13px;
}

#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children.is-active ul.hs-menu-children-wrapper li.hs-menu-item a:hover,
#header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children ul.hs-menu-children-wrapper li.hs-menu-item:hover::before {
  opacity: 0.6;
}

#header .header-wrapper .h-links .h-cta a.h-cta-link {
  width: 190px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--blue);
  color: var(--white);
  font-size: 13px;
  transition: background-color .3s;
}

#header .header-wrapper .h-links .h-cta a.h-cta-link:hover {
  background-color: var(--light-blue);
}

#header .header-wrapper .h-links .h-cta a.h-cta-link span {
  height: 13px;
  background: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/images/icons/mail-icon.svg) right center/17px auto no-repeat;
  padding-right: 30px;
  transition: opacity .3s;
}

#header.is-scroll .header-wrapper .h-links .h-cta a.h-cta-link {
  height: 100%;
}

@media screen and (min-width: 1025px) {
  #header .header-wrapper .h-links .h-nav, #header .header-wrapper .h-links .h-nav .hs-menu-wrapper, #header .header-wrapper .h-links .hs-menu-wrapper ul:not(.hs-menu-children-wrapper) {
    height: 100%;
    align-items: center;
  }
  #header .header-wrapper .h-links .hs-menu-wrapper ul:not(.hs-menu-children-wrapper), #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    position: relative;
  }
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children ul.hs-menu-children-wrapper:before {
    content: "";
    position: absolute;
    background: #f8fbff;
    height: 100%;
    z-index: -1;
    width: calc(150vw + 380px);
    margin-left: calc(50% - 80vw);
    top: 0;
  }
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(1) {
    order: 1;
  }
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(2) {
    order: 3;
  }  
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(3) {
    order: 5;
  }    
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(4) {
    order: 7;
  }      
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(5) {
    order: 9;
  }       
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(6) {
    order: 11;
  }     
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(7) {
    order: 2;
  }
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(8) {
    order: 4;
  }  
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(9) {
    order: 6;
  }    
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(10) {
    order: 8;
  }      
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(11) {
    order: 10;
  }       
  #header .header-wrapper .h-links .hs-menu-children-wrapper:has(.menu-item) .hs-menu-depth-2:nth-child(12) {
    order: 12;
  }       
}

@media screen and (max-width: 1400px) and (min-width: 1025px) {
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:first-child:not(.hs-menu-children-wrapper li).is-active ul.hs-menu-children-wrapper {
    grid-template-columns: 45% auto;
  }
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(6):not(.hs-menu-children-wrapper li).is-active ul.hs-menu-children-wrapper{
    display: grid !important;
    grid-template-columns: 20% 20% auto;
  }
}

@media screen and (max-width: 1024px) {
  #header li.hs-menu-item.hs-menu-depth-2 {
    width: 100%;
    display: block;
  }

  #header .hs-menu-depth-2.menu-item strong.menu-item-title {
    margin-bottom: 20px;
    margin-left: -20px;
    display: block;
  }
}

@media screen and (min-width: 1400px) {
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(1) ul.hs-menu-children-wrapper, 
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(2) ul.hs-menu-children-wrapper,  
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(6) ul.hs-menu-children-wrapper {
    width: 850px !important;
    margin-left: -15vw;
    flex-wrap: nowrap;
    position: absolute;
    padding-top: 30px;
  }
}

@media screen and (min-width: 1500px) {
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(1) ul.hs-menu-children-wrapper, 
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(2) ul.hs-menu-children-wrapper, 
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(6) ul.hs-menu-children-wrapper {
    margin-left: -5vw;
  }
}
@media screen and (min-width: 1400px) and (max-width: 1499px) {
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(1) ul.hs-menu-children-wrapper,  
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(2) ul.hs-menu-children-wrapper,  
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(6) ul.hs-menu-children-wrapper {
    margin-left: -10vw;
  }
}

@media screen and (min-width: 1025px) and (max-width: 1399px) {
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(6) ul.hs-menu-children-wrapper {
    width: 530px !important;
  }
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(1) ul.hs-menu-children-wrapper, 
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item.hs-menu-depth-1.hs-item-has-children:nth-child(2) ul.hs-menu-children-wrapper {
    width: 580px !important;
  }
}

@media screen and (max-width: 1500px) and (min-width: 1401px){
  #header .header-wrapper .h-links .h-nav{
    margin-right: 60px !important;
  }
  #header .header-wrapper .h-links .hs-menu-wrapper ul:not(.hs-menu-children-wrapper){
    grid-column-gap: 40px !important;
  }
  #header .header-wrapper .h-logo{
    min-width: unset;
    max-width: unset;
    width: auto !important;
  }
  #header .header-wrapper .h-logo img{
    min-width: 135px;
  }
}

@media screen and (max-width: 1400px) and (min-width: 1100px){
  #header .header-wrapper .h-links .hs-menu-wrapper ul:not(.hs-menu-children-wrapper){
    grid-column-gap: 20px;
    margin-left: 0;
  }
  #header .header-wrapper .h-links .h-nav{
    margin-right: 30px;
  }
  #header .header-wrapper .h-logo{
    min-width: unset;
    max-width: unset;
  }
  #header .header-wrapper .h-logo img{
    min-width: 135px;
  }
  #header .header-wrapper .h-links .h-cta a.h-cta-link{
    padding: 0;
    width: 135px;
    font-size: 13px !important;
  }
}
@media screen and (max-width: 1099px) and (min-width: 1025px){
  #header .header-wrapper .h-links .hs-menu-wrapper ul:not(.hs-menu-children-wrapper){
    grid-column-gap: 12px;
    margin-left: 0;
  }
  #header .header-wrapper .h-links .h-cta a.h-cta-link{
    width: 135px;
    font-size: 13px !important;
    padding: 0 !important;
  }
  #header .header-wrapper .h-logo{
    min-width: unset;
    max-width: unset;
  }
  #header .header-wrapper .h-logo img{
    min-width: 135px;
  }
  .h-cta{
    margin-right: 10px;
  }
  #header .header-wrapper .h-links .h-nav{
    justify-content: center;
    margin-right: 0;
  }
}
@media screen and (max-width: 959px){
  #header .header-wrapper .h-logo{
    min-width: unset;
    max-width: unset;
  }
  #header .header-wrapper .h-logo img{
    min-width: 135px;
  }
  #header .header-wrapper .h-links .h-cta a.h-cta-link{
    padding: 0;
  }
}
@media screen and (max-width: 1024px) {
  #header {
    width: 100%;
    height: 72px;
  }
  #header .header-wrapper .h-logo{
    min-width: unset;
    max-width: unset;
  }
  #header .header-wrapper .h-logo img{
    min-width: 135px;
  }
  #header.sp-menu-open {
    background: #f8fbff;
    height: 100vh;
    overflow: hidden;
  }

  #header.is-scroll:not(.sp-menu-open) {
    height: 72px;
  }

  #header.sp-menu-open .header-wrapper {
    height: 72px;
  }

  #header .header-wrapper .h-logo {
    padding: 20px 10px !important;
    width: unset;
  }

  #header .header-wrapper .h-logo img {
    max-width: 100%;
  }

  #header.is-scroll:not(.sp-menu-open) .header-wrapper .h-logo {
    padding: 0 10px !important;
  }

  #header.sp-menu-open .header-wrapper .h-logo {
    box-shadow: 0px 4px 30px 8px rgb(90 90 90 / 7%) !important;
  }

  #header .header-wrapper .h-logo img {
    width: 81px;
  }

  #header.is-scroll .header-wrapper .h-logo img {
    width: 81px;
  }

  #header .header-wrapper .h-links {
    position: fixed;
    z-index: 98;
    top: 72px;
    width: 100%;
    transition: opacity 0.2s;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    overflow-y: auto;
    overflow-x: hidden;
    height: 100vh;
    opacity: 0;
    visibility: hidden;
  }

  #header.sp-menu-open .header-wrapper .h-links {
    opacity: 1;
    visibility: visible;
  }

  #header .header-wrapper .h-links .h-nav {
    justify-content: flex-start;
    background: #F8FBFF;
  }

  #header .header-wrapper .h-links .h-nav .hs-menu-wrapper {
    width: 100%;
    padding: 0 21px;
  }

  #header .header-wrapper .h-links .hs-menu-wrapper ul:not(.hs-menu-children-wrapper) {
    flex-direction: column;
    width: 100%;
    margin-left: 0;
  }

  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item a:not(.hs-menu-children-wrapper li a) {
    display: block;
    width: calc(100% - 50px);
    padding: 27px 0;
  }

  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:not(.hs-menu-children-wrapper li) {
    position: relative;
    display: block;
    width: 100%;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(1):not(.hs-menu-children-wrapper li):before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: solid 1px #EDEDED;
    animation: headerBorderAnim 0.3s linear forwards;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(2):not(.hs-menu-children-wrapper li):before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: solid 1px #EDEDED;
    animation: headerBorderAnim 0.3s 0.1s linear forwards;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(3):not(.hs-menu-children-wrapper li):before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: solid 1px #EDEDED;
    animation: headerBorderAnim 0.3s 0.2s linear forwards;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(4):not(.hs-menu-children-wrapper li):before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: solid 1px #EDEDED;
    animation: headerBorderAnim 0.3s 0.3s linear forwards;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(5):not(.hs-menu-children-wrapper li):before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: solid 1px #EDEDED;
    animation: headerBorderAnim 0.3s 0.4s linear forwards;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(6):not(.hs-menu-children-wrapper li):before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: solid 1px #EDEDED;
    animation: headerBorderAnim 0.3s 0.5s linear forwards;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(7):not(.hs-menu-children-wrapper li):before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: solid 1px #EDEDED;
    animation: headerBorderAnim 0.3s 0.6s linear forwards;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(8):not(.hs-menu-children-wrapper li):before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: solid 1px #EDEDED;
    animation: headerBorderAnim 0.3s 0.7s linear forwards;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(9):not(.hs-menu-children-wrapper li):before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: solid 1px #EDEDED;
    animation: headerBorderAnim 0.3s 0.8s linear forwards;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(10):not(.hs-menu-children-wrapper li):before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    border-bottom: solid 1px #EDEDED;
    animation: headerBorderAnim 0.3s 0.5s linear forwards;
  }

  @keyframes headerBorderAnim {
    0%{
      width: 0%;
    }
    100%{
      width: 100%;
    }
  }

  .icon-wrapper {
    position: absolute;
    right: -42px;
    top: 50%;
    transform: translatey(-50%);
    width: 30px;
    height: 30px;
    background: var(--white);
    border-radius: 100%;
  }

  .icon {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 100%;
  }

  .icon:before,
  .icon:after {
    position: absolute;
    content: "";
    display: block;
    transition: transform 0.1s;
    background-color: var(--blue);
    left: 50%;
    top: 50%;
    width: 12px;
    height: 2px;
    transform: translate(-50%, -50%);
  }

  .icon:before {
    transform: translate(-50%, -50%) rotate(90deg);
  }

  .icon.open:before {
    transform: translate(-50%, -50%) rotate(0deg);
  }

  #header .header-wrapper .h-links .hs-menu-wrapper ul:not(.hs-menu-children-wrapper) li.hs-menu-item a[target=_blank] {
    display: block;
    background: unset;
    width: 100%;
    position: relative;
  }

  #header.sp-menu-open .header-wrapper .h-links .hs-menu-wrapper ul:not(.hs-menu-children-wrapper) li.hs-menu-item a[target=_blank]::after {
    content: "";
    background: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/images/icons/external-link-icon.svg) 100%/14px auto no-repeat;
    width: 14px;
    height: 14px;
    position: absolute;
    margin-top: 5px;
    margin-left: 6px;
  }

  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    width: 100vw;
    background: #EEF2F8;
    margin-left: -21px;
    margin-right: 0;
  }

  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item ul.hs-menu-children-wrapper {
    display: none;
    padding: 30px 50px;
    transition: unset;
  }


  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-item-has-children ul.hs-menu-children-wrapper li.hs-menu-item:not(:last-of-type) a {
    margin-bottom: 20px;
    display: block;
  }

  #header .header-wrapper .h-links .h-cta {
    width: 100%;
    background: #F8FBFF;
    padding: 21px 50px 0 50px;
  }

  #header .header-wrapper .h-links .h-cta a.h-cta-link {
    width: 100%;
    height: 60px !important;
    margin-bottom: 120px;
    margin-right: auto;
  }

  .menu-btn {
    position: relative;
    background: var(--blue);
    cursor: pointer;
    width: 50px;
    height: 50px;
    margin-right: 20px;
    border-radius: 100%;
  }

  .menu-btn.active {
    background: var(--white);
  }

  .menu-btn span {
    display: inline-block;
    transition: transform .3s;
    position: absolute;
    left: 17px;
    height: 2px;
    background: var(--white);
    width: 16px;
  }

  .menu-btn.active span {
    display: inline-block;
    transition: all .3s;
    position: absolute;
    left: 17px;
    height: 2px;
    background: var(--blue);
    width: 16px;
  }

  .menu-btn span:nth-of-type(1) {
    top: 19px; 
  }

  .menu-btn span:nth-of-type(2) {
    top: 25px;
  }

  .menu-btn span:nth-of-type(3) {
    top: 31px;
  }

  .menu-btn.active span:nth-of-type(1) {
    top: 19px;
    left: 17px;
    transform: translateY(6px) rotate(-45deg);
    width: 17px;
  }

  .menu-btn.active span:nth-of-type(2) {
    opacity: 0;
  }

  .menu-btn.active span:nth-of-type(3) {
    top: 31px;
    left: 17px;
    transform: translateY(-6px) rotate(45deg);
    width: 17px;
  }
}
@media screen and (max-width: 639px){
  #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(1):not(.hs-menu-children-wrapper li) ul.hs-menu-children-wrapper, #header .header-wrapper .h-links .hs-menu-wrapper ul li.hs-menu-item:nth-child(2):not(.hs-menu-children-wrapper li) ul.hs-menu-children-wrapper{
    grid-template-columns: unset;
  }
  #header .header-wrapper .h-links .h-cta a.h-cta-link{
    font-size: 13px;
  }
}
#header ul li.hs-menu-depth-1 ul.hs-menu-children-wrapper {
  justify-content: center;
}
#main-visual .main-visual-wrapper .catch{
  top: 120px !important;
}
#common-hero .hero-wrapper, #case.listing .wrapper{
  margin-top: 100px !important;
}
@media screen and (max-width: 329px){
  #header .header-wrapper .h-links .h-cta a.h-cta-link{
    font-size: 12px;
  }
}

#common-hero .hero-wrapper .nav {
  z-index: 100;
}
#footer .footer-wrapper {
  padding: 90px 100px;
}

#footer .footer-wrapper .top-wrapper {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap-reverse;
  white-space: nowrap;
  margin-bottom: 30px;
}

#footer .footer-wrapper .top-wrapper .hs-menu-wrapper ul {
  display: grid;
  grid-column-gap: 180px;
  grid-row-gap: 20px;
  grid-auto-flow: column;
  grid-template-rows: repeat(6, 1fr);
  white-space: nowrap;
  font-size: .875rem;  /* 14px */
  font-weight: 700;
  line-height: 1.5;
}

#footer .footer-wrapper .top-wrapper .hs-menu-wrapper ul li.hs-menu-item {
  display: flex;
}

#footer .footer-wrapper .top-wrapper .hs-menu-wrapper ul li.hs-menu-item a {
  position: relative;
}

#footer .footer-wrapper .top-wrapper .hs-menu-wrapper ul li.hs-menu-item a::after {
  content: "";
  position: absolute;
  top: 23px;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--black);
  transition: all .3s;
  transform: scale(0, 0);
  transform-origin: left top;
}

#footer .footer-wrapper .top-wrapper .hs-menu-wrapper ul li.hs-menu-item:hover a::after {
  transform: scale(1, 1);
}

#footer .footer-wrapper .top-wrapper .hs-menu-wrapper ul li.hs-menu-item a[target=_blank] {
  background: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/raw_assets/public/Corporate/images/icons/external-link-icon.svg) 100%/13px auto no-repeat;
  padding-right: 18px;
}

#footer .footer-wrapper .top-wrapper .right-box {
  display: flex;
  flex-direction: column;
  grid-row-gap: 20px;
}

#footer .footer-wrapper .top-wrapper .right-box .f-company-name {
  font-size: .875rem;  /* 14px */
  font-weight: 700;
  line-height: 1.5;
}

#footer .footer-wrapper .top-wrapper .right-box .f-address {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
}

#footer .footer-wrapper .top-wrapper .right-box .f-sns-icons {
  display: flex;
  align-items: center;
  grid-column-gap: 25px;
  margin-top: 10px;
}

#footer .footer-wrapper .top-wrapper .right-box .f-sns-icons a {
  transition: opacity 0.3s;
}

#footer .footer-wrapper .top-wrapper .right-box .f-sns-icons a:hover {
  opacity: 0.6;
}

#footer .footer-wrapper .top-wrapper .right-box .f-p-mark {
  margin-top: 10px;
}

#footer .footer-wrapper .top-wrapper .right-box .f-p-mark a {
  transition: opacity 0.3s;
}

#footer .footer-wrapper .top-wrapper .right-box .f-p-mark a:hover {
  opacity: 0.6;
}

#footer .footer-wrapper .bottom-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  grid-row-gap: 30px;
  flex-wrap: wrap-reverse;
  padding-top: 30px;
  border-top: 1px solid #EDEDED;
}

#footer .footer-wrapper .bottom-wrapper .copyright {
  font-size: .6875rem; /* 11px */
  line-height: 1.5;
  color: #C9CED1;
  font-weight: 400;
}

#footer .footer-wrapper .bottom-wrapper .f-b-links {
  display: flex;
  grid-column-gap: 24px;
  grid-row-gap: 20px;
  flex-wrap: wrap;
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  color: #28283C;
  transition: opacity 0.3s;
}

#footer .footer-wrapper .bottom-wrapper .f-b-links p a {
  position: relative;
}

#footer .footer-wrapper .bottom-wrapper .f-b-links p a::after {
  content: "";
  position: absolute;
  top: 25px;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--black);
  transition: all .3s;
  transform: scale(0, 0);
  transform-origin: left top;
}

#footer .footer-wrapper .bottom-wrapper .f-b-links p a:hover::after {
  transform: scale(1, 1);
}

@media screen and (max-width: 1024px) {
  #footer .footer-wrapper {
    padding: 60px 5.5% 55px;
  }

  #footer .footer-wrapper .top-wrapper .hs-menu-wrapper ul {
    grid-column-gap: 80px;
  }
}

@media screen and (max-width: 768px) {
  #footer .footer-wrapper .top-wrapper {
    flex-direction: column-reverse;
    grid-row-gap: 50px;
  }

  #footer .footer-wrapper .top-wrapper .hs-menu-wrapper ul {
    grid-column-gap: 20px;
  }
}

/* lp用 */
#lp-footer .footer-wrapper {
  padding: 40px 100px;
}

#lp-footer .footer-wrapper .copyright {
  font-size: .6875rem; /* 11px */
  line-height: 1.45;
  color: #C9CED1;
  font-weight: 400;
}

@media screen and (max-width: 1024px) {
  #lp-footer .footer-wrapper {
    padding: 0;
    min-height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

/* Page Top Button */
#page-top-btn {
  position: fixed;
  bottom: 30px;
  right: 20px;
}

#page-top-btn.is-end-pos {
  position: absolute;
  bottom: 570px;
  right: 20px;
}

#page-top-btn .btn-wrapper {
  background: var(--light-blue);
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  cursor: pointer;
  transition: opacity 0.3s;
}

#page-top-btn .btn-wrapper:hover {
  opacity: 0.6;
}

@media screen and (max-width: 1024px) {
  #page-top-btn {
    position: unset !important;
  }

  #page-top-btn .btn-wrapper {
    width: 100%;
    height: 40px;
    border-radius: 0;
  }
}

/* Templates */
/* ------------------------------------------------------------------------------------
Blog Index
------------------------------------------------------------------------------------ */
#listing .wrapper {
  padding-top: 160px;
}

#listing .wrapper .hero .hero-wrapper {
  position: relative;
}

#listing .wrapper .hero .hero-wrapper picture img {
  height: 300px;
  object-fit: cover;
}

#listing .wrapper .hero .hero-wrapper .nav {
  max-width: 1240px;
  width: 100%;
  margin: 0 auto;
  padding: 25px 20px 0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

#listing .wrapper .hero .hero-wrapper nav.breadcrumb ol {
  display: flex;
  align-items: center;
  grid-column-gap: 3px;
}

#listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li {
  display: flex;
  align-items: center;
  grid-column-gap: 3px;
}

#listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li:first-child a {
  display: flex;
  align-items: center;
}

#listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li:first-child a .home-icon {
}

#listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li a {
  font-size: .6875rem;  /* 11px */
  color: var(--dark-gray);
  line-height: 2;
  transition: opacity 0.3s;
}

#listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li a:hover {
  opacity: 0.6;
}

#listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li span.is-active {
  font-size: .6875rem;  /* 11px */
  font-weight: 700;
  color: var(--dark-gray); 
  line-height: 2;
}

#listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li .delimiter-icon {
  width: 17px;
  margin-top: 1px;
}

#listing .wrapper .hero .hero-wrapper .title {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  padding: 0 20px;
  max-width: 900px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#listing .wrapper .hero .hero-wrapper .title h1 {
  font-size: 2.125rem;  /* 34px */
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 3.4px;
  color: #000;
}

#listing .wrapper .hero .hero-wrapper .title p.desc {
  font-size: 1.25rem;  /* 20px */
  line-height: 1.5;
  color: var(--dark-gray);
  text-align: center;
  margin-top: 24px;
}

#listing .wrapper section.search {
  padding: 70px 0;
  background: #F8FBFF;
}

#listing .wrapper section.search .search-wrapper {
  max-width: 940px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
  padding: 0 20px;
}

#listing .wrapper section.search .search-wrapper form.search-blog-form {
  width: 100%;
  height: 50px;
  display: flex;
  margin-bottom: 30px;
}

#listing .wrapper section.search .search-wrapper form.search-blog-form input.input-keyword {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  letter-spacing: 1.4px;
  width: 100%;
  background: var(--white);
  border: 1px solid #dddddd;
  border-right: 0;
  padding: 15px 10px 15px 28px;
  border-radius: 3px 0 0 3px;
}

#listing .wrapper section.search .search-wrapper form.search-blog-form input.input-keyword:focus {
  border: 1px solid var(--light-blue);
  outline: 0;
}

#listing .wrapper section.search .search-wrapper form.search-blog-form input.input-keyword::placeholder {
  font-size: .875rem;  /* 14px */
  font-weight: 1.5;
  letter-spacing: 1.4px;
  color: #767676;
}

#listing .wrapper section.search .search-wrapper form.search-blog-form button.search-btn {
  min-width: 50px;
  height: 50px;
  background: var(--light-blue);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 3px 3px 0;
  transition: opacity 0.3s;
}

#listing .wrapper section.search .search-wrapper form.search-blog-form button.search-btn:hover {
  opacity: 0.6;
}

#listing .wrapper section.search .search-wrapper form.search-blog-form button.search-btn:disabled {
  opacity: 1;
  background: #A6A6A6;
}

#listing .wrapper section.search .search-wrapper ul.tags {
  width: 100%;
  background: var(--white);
  padding: 30px;
  grid-column-gap: 26px;
  grid-row-gap: 20px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

#listing .wrapper section.search .search-wrapper ul.tags li.tag a {
  grid-column-gap: 6px;
  color: var(--light-blue);
  display: flex;
  font-size: .75rem;  /* 12px */
  font-weight: 700;
  line-height: 2;
  transition: opacity .3s;
}

#listing .wrapper section.search .search-wrapper ul.tags li.tag a:hover {
  opacity: 0.6;
}

#listing .wrapper section.search .search-wrapper ul.tags li.tag span.active {
  background: var(--light-blue);
  color: var(--white);
  padding: 3px 21px;
  border-radius: 23px;
  display: flex;
  font-size: .75rem;  /* 12px */
  font-weight: 700;
  line-height: 2;
}

#listing .wrapper section.search .search-wrapper ul.tags li.tag a .post-num {
  align-items: center;
  background-color: #daeaff;
  border-radius: 30px;
  display: flex;
  height: 25px;
  justify-content: center;
  min-width: 25px;
  padding: 5px;
}

#listing .wrapper section.lists {
  padding: 90px 0;
}

#listing .wrapper section.lists .list-wrapper ul.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 70px;
}

#listing .wrapper section.lists .list-wrapper ul.pagination li.double-arrow-item:first-child a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

#listing .wrapper section.lists .list-wrapper ul.pagination li.double-arrow-item:last-child a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 8px;
  margin-right: 0;
  transition: background 0.3s;
}

#listing .wrapper section.lists .list-wrapper ul.pagination li.double-arrow-item a:hover {
  background: var(--blue);
}

#listing .wrapper section.lists .list-wrapper ul.pagination li.double-arrow-item a:hover svg path {
  fill: var(--white);
}

#listing .wrapper section.lists .list-wrapper ul.pagination li.left-arrow-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 40px;
  transition: background 0.3s;
}

#listing .wrapper section.lists .list-wrapper ul.pagination li.num-item a, 
#listing .wrapper section.lists .list-wrapper ul.pagination li.num-item span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 1rem;  /* 16px */
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--blue);
  background: var(--white);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

#listing .wrapper section.lists .list-wrapper ul.pagination li.num-item a:hover {
  color: var(--white);
  background: var(--blue);
  border: 1px solid transparent;
}


#listing .wrapper section.lists .list-wrapper ul.pagination li.num-item.current span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 1rem;  /* 16px */
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--white);
  background: var(--blue);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
}

#listing .wrapper section.lists .list-wrapper ul.pagination li.right-arrow-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 32px;
  transition: background 0.3s;
}

#listing .wrapper section.lists .list-wrapper ul.pagination li.left-arrow-item a:hover,
#listing .wrapper section.lists .list-wrapper ul.pagination li.right-arrow-item a:hover {
  background: var(--blue);
}

#listing .wrapper section.lists .list-wrapper ul.pagination li.left-arrow-item a:hover svg path,
#listing .wrapper section.lists .list-wrapper ul.pagination li.right-arrow-item a:hover svg path {
  fill: var(--white);
}

@media screen and (max-width: 1024px) {
  #listing .wrapper {
    padding-top: 72px;
  }

  #listing .wrapper section.lists {
    padding: 60px 0;
  }

  #listing .wrapper .hero .hero-wrapper picture img {
    height: 220px;
  }


  #listing .wrapper .hero .hero-wrapper .nav {
    top: unset;
    padding: 15px 20px;
    z-index: 99;
  }

  #listing .wrapper .hero .hero-wrapper nav.breadcrumb {
    margin: 0;
    padding: 0;
    white-space: nowrap;
    width: 100%;
    overflow-x: auto;
  }

  #listing .wrapper .hero .hero-wrapper .title h1 {
    font-size: 1.75rem;  /* 28px */
    line-height: 1.4;
    letter-spacing: 2.8px;
  }

  #listing .wrapper .hero .hero-wrapper .title p.desc {
    font-size: 1rem;  /* 16px */
    line-height: 1.4;
    text-align: center;
    margin-top: 17px;
  }

  #listing .wrapper section.search {
    padding: 60px 0;
  }

  #listing .wrapper section.search .search-wrapper form.search-blog-form input.input-keyword {
    padding: 15px 10px 15px 20px;
  }

  #listing .wrapper section.search .search-wrapper form.search-blog-form button.search-btn {
    min-width: 45px;
  }

  #listing .wrapper section.search .search-wrapper ul.tags {
    grid-column-gap: 20px;
    grid-row-gap: 15px;
    background: unset;
    padding: 0;
  }

  #listing .wrapper section.lists .list-wrapper ul.pagination {
    margin-top: 75px;
    grid-column-gap: 5px;
  }

  #listing .wrapper section.lists .list-wrapper ul.pagination li.double-arrow-item:first-child a {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing .wrapper section.lists .list-wrapper ul.pagination li.double-arrow-item:last-child a {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }

  #listing .wrapper section.lists .list-wrapper ul.pagination li.left-arrow-item a {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing .wrapper section.lists .list-wrapper ul.pagination li.num-item a, 
  #listing .wrapper section.lists .list-wrapper ul.pagination li.num-item span {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing .wrapper section.lists .list-wrapper ul.pagination li.num-item.current span {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing .wrapper section.lists .list-wrapper ul.pagination li.right-arrow-item a {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }
}

/* ------------------------------------------------------------------------------------
Blog Post
------------------------------------------------------------------------------------ */
#post {
  padding: 160px 0 70px;
}

#post .wrapper {
  padding: 0 100px;
  margin: 0 auto;
  max-width: 1440px;
}

#post .wrapper nav.breadcrumb {
  margin: 40px auto 30px 77px;
  overflow-x: auto;
}


#post .wrapper nav.breadcrumb ol {
  display: flex;
  align-items: center;
  grid-column-gap: 3px;
  width: max-content;
}

#post .wrapper nav.breadcrumb ol li {
  display: flex;
  align-items: center;
  grid-column-gap: 3px;
}

#post .wrapper nav.breadcrumb ol li:first-child a {
  display: flex;
  align-items: center;
}

#post .wrapper nav.breadcrumb ol li:first-child a .home-icon {
}

#post .wrapper nav.breadcrumb ol li a {
  font-size: .6875rem;  /* 11px */
  color: var(--dark-gray);
  line-height: 2;
  transition: opacity .3s;
}

#post .wrapper nav.breadcrumb ol li a:hover {
  opacity: .6;
}

#post .wrapper nav.breadcrumb ol li span.is-active {
  font-size: .6875rem;  /* 11px */
  font-weight: 700;
  color: var(--dark-gray);
  line-height: 2;
}

#post .wrapper nav.breadcrumb ol li .delimiter-icon {
  width: 17px;
  margin-top: 1px;
}

#post .wrapper section.contents {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

#post .wrapper section.contents article.main-content {
  width: calc(100% - 395px);
}

#post .wrapper section.contents article.main-content header.content-header,
#post .wrapper section.contents article.main-content .body,
#post .wrapper section.contents article.main-content footer section.meta {
  margin-left: 75px;
}

#post .wrapper section.contents article.main-content h1 {
  font-size: 2.125rem;  /* 34px */
  font-weight: 700;
  line-height: 1.4;
  margin-top: 30px;
  margin-bottom: 30px;
}

#post .wrapper section.contents article.main-content header.content-header h1 {
  margin-top: 0;
}

#post .wrapper section.contents article.main-content .body {
  position: relative;
}

#post .wrapper section.contents article.main-content .body h2 {
  font-size: 1.75rem;  /* 28px */
  font-weight: 700;
  line-height: 1.4;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--blue);
  margin-top: 70px;
  margin-bottom: 40px;
}

#post .wrapper section.contents article.main-content .body h2 + h3:not(.post-appendarea-wrapper h3) {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.4;
  padding: 8px 20px;
  background-color: #F8F8F8;
  margin-top: 50px;
  margin-bottom: 40px;
}

#post .wrapper section.contents article.main-content .body h3:not(.post-appendarea-wrapper h3):not(h2 + h3) {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.4;
  padding: 8px 20px;
  background-color: #F8F8F8;
  margin-top: 70px;
  margin-bottom: 40px;
}

#post .wrapper section.contents article.main-content .body h4 {
  font-size: 1.125rem;  /* 18px */
  font-weight: 700;
  line-height: 1.4;
  margin-top: 50px;
  margin-bottom: 40px;
}

#post .wrapper section.contents article.main-content .body h5 {
  font-size: 1rem;  /* 16px */
  font-weight: 700;
  line-height: 1.4;  
  margin-top: 50px;
  margin-bottom: 30px;
}

#post .wrapper section.contents article.main-content .body h6 {
  font-size: 1rem;  /* 16px */
  font-weight: 400;
  line-height: 1.4;
  color: var(--light-blue);
  margin-top: 50px;
  margin-bottom: 30px;
}

#post .wrapper section.contents article.main-content .body p {
  font-size: 1rem;  /* 16px */
  font-weight: 400;
  line-height: 2;
  color: var(--dark-gray);
  /*   max-width: 280px; */
  width: 100%;
  margin: 30px auto;
}

#post .wrapper section.contents article.main-content .body ul:not(ul.social-icons-pc) {
  line-height: 2;
  list-style: none;
  margin: 40px 0;
  padding: 0;
  text-indent: -24px;
}

#post .wrapper section.contents article.main-content .body ul:not(ul.social-icons-pc) p {
  display: inline;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin-left: -5px;
}

#post .wrapper section.contents article.main-content .body ul:not(ul.social-icons-pc) li {
  margin-left: 23px;
  margin-bottom: 10px;
}

#post .wrapper section.contents article.main-content .body ul:not(ul.social-icons-pc) > li::before {
  content: "";
  width: 15px;
  height: 15px;
  display: inline-block;
  background-color: var(--light-blue);
  border-radius: 100%;
  position:  relative;
  top: 2px;
  margin-right: 8px;
}

#post .wrapper section.contents article.main-content .body ul:not(ul.social-icons-pc) ul {
  margin-top: 10px;
  margin-left: 33px;
  text-indent: -20px;
}

#post .wrapper section.contents article.main-content .body ul:not(ul.social-icons-pc) ul li {
  margin-left: 0;
  border-radius: 50%;
  box-sizing: border-box;
  position: relative;
  background: var(--white);
}

#post .wrapper section.contents article.main-content .body ul:not(ul.social-icons-pc) ul li::before {
  border: 2px solid var(--light-blue);
  border-radius: 50%;
  box-sizing: border-box;
  content: "";
  height: 10px;
  position: relative;
  top: 0;
  background: white;
  width: 10px;
}

#post .wrapper section.contents article.main-content .body ol:not(#toc ol) {
  line-height: 2;
  counter-reset: ol-li;
  margin: 0 0 40px 0;
  text-indent: -22px;
}


#post .wrapper section.contents article.main-content .body ol li:not(#toc ol li) {
  margin-left: 23px;
  margin-bottom: 10px;
}

#post .wrapper section.contents article.main-content .body ol li:not(#toc ol li)::before {
  font-weight: 700;
  counter-increment: ol-li;
  content: counter(ol-li)". ";
  color: var(--light-blue);
}

#post .wrapper section.contents article.main-content .body a:not(#toc ol li a):not(ul.social-icons-pc li a):not(.cta-wrap a) {
  color: var(--light-blue);
  border-bottom: 1px solid var(--light-blue);
  transition: border-bottom 0.1s;
}

#post .wrapper section.contents article.main-content .body a:not(#toc ol li a):not(ul.social-icons-pc li a):not(.cta-wrap a):hover {
  border-bottom: transparent 1px solid;
}

#post .wrapper section.contents article.main-content .body img {
  width: auto;
  max-width: 100%;
  height: auto;
}

#post .wrapper section.contents article.main-content .body figure {
  width: 100% !important;
  margin: 40px 0;
}

#post .wrapper section.contents article.main-content .body figcaption {
  font-size: .875rem;  /* 14px */
  color: var(--dark-gray);
  line-height: 1.5;
  margin-top: 20px;
}

#post .wrapper section.contents article.main-content .body .post-appendarea-wrapper {
  position: relative;
  border: 2px solid var(--blue);
  margin: 40px 0;
  padding: 50px 55px;
  background: #F8FBFF;
  border-radius: 3px;
}

#post .wrapper section.contents article.main-content .body .post-appendarea-wrapper h3 {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  color: var(--blue);
}

#post .wrapper section.contents article.main-content .body .post-appendarea-wrapper .item-content p {
  margin-top: 30px;
  margin-bottom: 40px;
}

#post .wrapper section.contents article.main-content .body .post-appendarea-wrapper .thumb-wrap {
  max-width: 280px;
  width: 100%;
  margin: 30px auto;
}

#post .wrapper section.contents article.main-content .body .post-appendarea-wrapper .thumb-wrap img {
  width: 100% !important;
}

#post .wrapper section.contents article.main-content .body .post-appendarea-wrapper .cta-wrap {
  margin: 0;
}

#post .wrapper section.contents article.main-content .body .post-appendarea-wrapper .cta-wrap a {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 450px;
  margin: 0 auto;
  width: 100%;
  height: 70px;
  border-radius: 5px;
  background: var(--blue);
  color: var(--white);
  font-size: 1.25rem;  /* 20px */
  line-height: 1.5;
  transition: background 0.3s;
}

#post .wrapper section.contents article.main-content .body .post-appendarea-wrapper .cta-wrap a:hover {
  background: var(--light-blue);
}

#post .wrapper section.contents article.main-content .body hr {
  border-color: #C9CED1;
}

#post .wrapper section.contents article.main-content .body pre {
  line-height: 1.5;
  background: #2D2D2D;
  margin: 40px 0;
  border-radius: 0;
}

#post .wrapper section.contents article.main-content .body pre code {
  margin: 0;
  padding: 0;
}

#post .wrapper section.contents article.main-content .body code {
  display: block;
  padding: 20px;
  background: #2d2d2d;
  margin: 40px 0;
  border-radius: 0;
}

#post .wrapper section.contents article.main-content .body strong {
  background: linear-gradient(transparent 65%, #C9ECFF 0);
  border-radius: 2px;
  font-weight: 700;
}

#post .wrapper section.contents article.main-content .body blockquote {
  position: relative;
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  background: #F5F5F5;
  margin: 40px 0;
  padding: 39px 30px;
}

#post .wrapper section.contents article.main-content .body blockquote::before {
  content: "";
  position: absolute;
  top: 15px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2214%22%20viewBox%3D%220%200%2020%2014%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M18.5714%201.78246e-06L14.2857%201.40779e-06L11.4286%205.6L11.4286%2014L20%2014L20%205.6L15.7143%205.6L18.5714%201.78246e-06ZM7.14286%207.83341e-07L2.85714%204.08672e-07L-1.173e-06%205.6L-1.90735e-06%2014L8.57143%2014L8.57143%205.6L4.28571%205.6L7.14286%207.83341e-07Z%22%20fill%3D%22%23C9CED1%22%2F%3E%3C%2Fsvg%3E");
  width: 20px;
  height: 14px;
}

#post .wrapper section.contents article.main-content .body blockquote::after {
  content: "";
  position: absolute;
  bottom: 15px;
  right: 30px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2214%22%20viewBox%3D%220%200%2020%2014%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M1.42857%2014H5.71429L8.57143%208.4L8.57143%200L0%200L0%208.4H4.28571L1.42857%2014ZM12.8571%2014H17.1429L20%208.4V0L11.4286%200L11.4286%208.4H15.7143L12.8571%2014Z%22%20fill%3D%22%23C9CED1%22%2F%3E%3C%2Fsvg%3E");
  width: 20px;
  height: 14px;
}

#post .wrapper section.contents article.main-content .body .note {
  position: relative;
  background: #F5F5F5;
  margin-top: 47px;
  margin-bottom: 70px;
  padding: 20px 40px;
  border-radius: 5px;
}

#post .wrapper section.contents article.main-content .body .note:before {
  content: "";
  position: absolute;
  top: -3px;
  left: 10px;
  width: 17px;
  height: 17px;
  background: var(--light-blue);
}

#post .wrapper section.contents article.main-content .body .note:after {
  content: "";
  position: absolute;
  top: 14px;
  left: 10px;
  border-bottom: 5px solid transparent;
  border-left: 8.5px solid var(--light-blue);
  border-right: 8.5px solid var(--light-blue);
}

#post .wrapper section.contents article.main-content .body .note .title {
  font-weight: 700;
  line-height: 1.8;
  color: var(--light-blue);
  margin-bottom: 10px;
  margin-top: 0;
}

#post .wrapper section.contents article.main-content .body .note p:not(.title) {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  margin-top: 0;
  margin-bottom: 0;
}

#post .wrapper section.contents article.main-content .body table {
  width: 100% !important;
  height: auto !important;
  table-layout: fixed;
  margin-top: 40px;
  margin-bottom: 70px;
  display: block;
  overflow-x: auto;
}

#post .wrapper section.contents article.main-content .body table tbody {
  width: 100%;
  display: table;
}

#post .wrapper section.contents article.main-content .body table tr th {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  padding: 15px 12px;
  border: 1px solid #DDDDDD;
  background: #F8FBFF;
  vertical-align: middle;
}

#post .wrapper section.contents article.main-content .body table tr td {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  padding: 15px 12px;
  border: 1px solid #ddd;
  vertical-align: middle;
}

#post .wrapper section.contents article.main-content .body table p {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin: 0;
}

#post .wrapper section.contents article.main-content .body table ul {
  margin: 0 !important;
}

#post .wrapper section.contents article.main-content .body table ul ul {
  margin-left: 20px !important;
  margin-top: 10px !important;
}

#post .wrapper section.contents article.main-content .body table ol {
  margin: 0 !important;
}

#post .wrapper section.contents article.main-content .body table td img {
  max-width: 100%;
  height: auto;
}

#post .wrapper section.contents article.main-content .body .featured-img {
  margin: 40px 0;
  aspect-ratio: 16 / 9;
}

#post .wrapper section.contents article.main-content .body .featured-img img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

#post .wrapper section.contents article.main-content header.content-header {
  margin-bottom: 40px;
}

#post .wrapper section.contents article.main-content header.content-header .info {
  display: flex;
  justify-content: space-between;
  grid-column-gap: 10px;
  white-space: nowrap;
}

#post .wrapper section.contents article.main-content ul.tags {
  display: flex;
  grid-column-gap: 16px;
  grid-row-gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

#post .wrapper section.contents article.main-content ul.tags li.tag a {
  display: flex;
  font-size: .6875rem;  /* 11px */
  line-height: 2;
  color: var(--white);
  padding: 1px 12px;
  background-color: var(--light-blue);
  border-radius: 3px;
  text-decoration: none;
  border: 1px solid var(--light-blue);
  transition: background-color 0.3s, color 0.3s;
}

#post .wrapper section.contents article.main-content ul.tags li.tag a:hover {
  color: var(--light-blue);
  background-color: var(--white);
}

#post .wrapper section.contents article.main-content ul.keywords {
  display: flex;
  grid-column-gap: 20px;
  grid-row-gap: 6px;
  flex-wrap: wrap;
}

#post .wrapper section.contents article.main-content ul.keywords li.keyword a {
  font-size: .75rem;  /* 12px */
  font-weight: 700;
  line-height: 2;
  color: var(--light-blue);
  transition: opacity 0.3s;
}

#post .wrapper section.contents article.main-content ul.keywords li.keyword a:hover {
  opacity: 0.6;
}

#post .wrapper section.contents article.main-content header.content-header .info .meta .dates {
  display: flex;
  grid-column-gap: 20px;
  color: var(--dark-gray);
}

#post .wrapper section.contents article.main-content header.content-header .info .meta .dates .date-icon {
  margin-right: 5px;
}

#post .wrapper section.contents article.main-content header.content-header .info .meta .dates time.publish-date {
  display: flex;
  align-items: center;
  font-size: .8125rem;  /* 13px */
  line-height: 1.4;
}

#post .wrapper section.contents article.main-content header.content-header .info .meta .dates time.updated-date {
  display: flex;
  align-items: center;
  font-size: .8125rem;  /* 13px */
  line-height: 1.4;
}

#post .wrapper section.contents article.main-content header.content-header .info .meta .dates time.publish-date span, 
#post .wrapper section.contents article.main-content header.content-header .info .meta .dates time.updated-date span {
  font-weight: 700;
}

#post .wrapper section.contents article.main-content header.content-header .info .meta .author {
  margin-top: 10px;
}

#post .wrapper section.contents article.main-content header.content-header .info .meta .author a {
  display: flex;
  justify-content: end;
  align-items: center;
  font-size: .8125rem;  /* 13px */
  font-weight: 700;
  color: var(--dark-gray);
  transition: opacity 0.3s;
}

#post .wrapper section.contents article.main-content .body ol:not(#toc ol) {
  font-size: .9375rem;  /* 15px */
}

#post .wrapper section.contents article.main-content .body .note .title {
  font-size: 1rem;  /* 16px */
}

#post .wrapper section.contents article.main-content header.content-header .info .meta .author a:hover {
  opacity: 0.6;
}

#post .wrapper section.contents article.main-content header.content-header .info .meta .author a .author-icon {
  margin-right: 7px;
}

#post .wrapper section.contents article.main-content .body #toc {
  background: #F5F5F5;
  margin: 40px 0;
}

#post .wrapper section.contents article.main-content .body #toc .title {
  font-size: 1.125rem;  /* 18px */
  font-weight: 700;
  line-height: 1.4;
  padding: 30px;
  cursor: pointer;
}

#post .wrapper section.contents article.main-content .body #toc > ol {
  padding: 0 30px 35px;
  display: block;
}

#post .wrapper section.contents article.main-content .body #toc ol {
  counter-reset: toc-ol;             
  text-indent: -19px;
}

#post .wrapper section.contents article.main-content .body #toc > ol > li {
  line-height: 1.5;
  margin-bottom: 13px;
  margin-left: 24px;
  color: var(--dark-gray);
}

#post .wrapper section.contents article.main-content .body #toc ol li a {
  display: inline;
  padding-bottom: 0px;
  text-decoration: none;
}

#post .wrapper section.contents article.main-content .body #toc ol li a:hover {
  border-bottom: 1px solid var(--dark-gray);
}

#post .wrapper section.contents article.main-content .body #toc ol li a center {
  display: none;
}

#post .wrapper section.contents article.main-content .body #toc li {
  position: relative;
}

#post .wrapper section.contents article.main-content .body #toc li::before {
  counter-increment: toc-ol;
  content: counters(toc-ol, " - ") ". ";
}

#post .wrapper section.contents article.main-content .body #toc > ol > li > ol {
  text-indent: 1px;
  margin: 10px 0;
}

#post .wrapper section.contents article.main-content .body #toc > ol > li > ol > li {
  margin-left: 20px;
  margin-bottom: 8px;
  position: relative;
  line-height: 1.5;
}

#post .wrapper section.contents article.main-content .body #toc > ol > li > ol > li::before {
  content: "";
  position: absolute;
  top: 5px;
  left: -13px;;
  width: 6px;
  height: calc(16px - 2px);
  color: inherit;
  background: 0 0;
  border-bottom: 2px solid #A6A6A6;
  border-left: 2px solid #A6A6A6;
  border-radius: 0;
  box-shadow: none;
  -webkit-transform: none;
  transform: none;
  -webkit-transform: scale(.75);
  transform: scale(.75);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%;
}

#post .wrapper section.contents article.main-content .body #toc .title {
  position: relative;
}

#post .wrapper section.contents article.main-content .body #toc .title .toc-icon-wrapper {
  grid-column-gap: 35px;
  align-items: center;
  background: var(--white);
  border-radius: 50px;
  display: flex;
  height: 30px;
  justify-content: center;
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translatey(-50%);
  width: 115px;
  font-size: .875rem;  /* 14px */
  font-weight: 400;
  line-height: 1.5;
  color: #595959;
  padding: 5px 15px 5px 18px;
}

#post .wrapper section.contents article.main-content .body #toc .title .toc-icon-wrapper::before {
  content: "非表示";
}

#post .wrapper section.contents article.main-content .body #toc .title .toc-icon-wrapper.close::before {
  content: "表示";
}

#post .wrapper section.contents article.main-content .body #toc .title .toc-icon-wrapper .toc-icon {
  position: relative;
}

#post .wrapper section.contents article.main-content .body #toc .title .toc-icon-wrapper .toc-icon::before,
#post .wrapper section.contents article.main-content .body #toc .title .toc-icon-wrapper .toc-icon::after {
  background-color: var(--black);
  content: "";
  display: block;
  height: 1px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%,-50%);
  transition: transform .4s;
  width: 11px;
}

#post .wrapper section.contents article.main-content .body #toc .title .toc-icon-wrapper .toc-icon::before {
  transform: translate(-50%, -50%) rotate(0deg);
}

#post .wrapper section.contents article.main-content .body #toc .title .toc-icon-wrapper.close .toc-icon::before {
  transform: translate(-50%,-50%) rotate(90deg);
}

#post .wrapper section.contents article.main-content .body ul.social-icons-pc {
  position: absolute;
  grid-row-gap: 15px;
  top: 0;
  display: flex;
  flex-direction: column;
  margin-left: -75px;
  width: 40px;
}

#post .wrapper section.contents article.main-content .body ul.social-icons-pc.is-scroll {
  position: fixed;
  top: 100px;
}

#post .wrapper section.contents article.main-content .body ul.social-icons-pc.is-end-pos {
  position: absolute;
  top: calc(100% - 205px);
}

#post .wrapper section.contents article.main-content .body ul.social-icons-pc li a {
  width: 40px;
  height: 40px;
  display: block;
  transition: opacity 0.3s;
  z-index: 99;
  position: relative;
}

#post .wrapper section.contents article.main-content .body ul.social-icons-pc li a:hover {
  opacity: 0.6;
}

#post .wrapper section.contents article.main-content footer {
  margin-top: 70px;
}

#post .wrapper section.contents article.main-content footer section.meta {
  padding-top: 21px;
  border-top: 1px solid #EDEDED;
}

#post .wrapper section.contents article.main-content footer section.meta .paging {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 13px;
  margin-top: 44px;
}

#post .wrapper section.contents article.main-content footer section.meta .paging a {
  grid-column-gap: 28px;
  align-items: center;
  display: flex;
  background: #F8FBFF;
  height: 100%;
}

#post .wrapper section.contents article.main-content footer section.meta .paging a.prev-post {
  padding: 25px 17px 25px 10px;
}

#post .wrapper section.contents article.main-content footer section.meta .paging a.next-post {
  justify-content: end;
  padding: 25px 10px 25px 17px;
}

#post .wrapper section.contents article.main-content footer section.meta .paging a .title-group .lbl {
  font-size: .75rem;  /* 12px */
  line-height: 1.2;
  color: #595959;
  margin-bottom: 12px;
}

#post .wrapper section.contents article.main-content footer section.meta .paging a.next-post .title-group .lbl {
  text-align: right;
}

#post .wrapper section.contents article.main-content footer section.meta .paging a .title-group .title {
  font-size: 1rem;  /* 16px */
  line-height: 1.5;
  color: var(--black);
  transition: opacity 0.3s;
}

#post .wrapper section.contents article.main-content footer section.meta .paging a:hover .title-group .title {
  opacity: 0.6;
}

#post .wrapper section.contents article.main-content ul .tooltip {
  opacity: 0;
  background-color: #767676;
  border-radius: 3px;
  color: #fff;
  height: 35px;
  left: -43px;
  line-height: 35px;
  margin: auto;
  position: relative;
  text-align: center;
  top: 13px;
  font-size: .6875rem;  /* 11px */
  padding: 0 10px;
  transition: opacity 0.4s;
  width: 125px;
}

#post .wrapper section.contents article.main-content ul .tooltip:before {
  content: "";
  position: absolute;
  top: -26px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #767676;
}

#post .wrapper section.contents article.main-content ul .tooltip.is-active {
  opacity: 1;
}

#post .wrapper section.contents article.main-content ul .success-msg {
  background-color: #767676;
  border-radius: 3px;
  color: #fff;
  display: none;
  height: 35px;
  left: -53px;
  line-height: 35px;
  margin: auto;
  position: relative;
  text-align: center;
  top: -23px;
  font-size: .6875rem;  /* 11px */
  padding: 0 10px;
  width: 147px;
}

#post .wrapper section.contents article.main-content ul .success-msg:before {
  content: "";
  position: absolute;
  top: -26px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #767676;
}

#post .wrapper section.contents article.main-content footer ul.social-icons-sp {
  display: none;
}

#post .wrapper section.contents aside.side-content {
  position: relative;
  width: 315px;
  margin-left: 80px;
}

#post .wrapper section.contents aside.side-content form.search-blog-form {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}

#post .wrapper section.contents aside.side-content form.search-blog-form input.input-keyword {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  width: 100%;
  border: 1px solid #dddddd;
  border-right: 0;
  padding: 10px 10px 13px;
  height: 40px;
  border-radius: 3px 0 0 3px;
}

#post .wrapper section.contents aside.side-content form.search-blog-form input.input-keyword:focus {
  border: 1px solid var(--light-blue);
  outline: 0;
}

#post .wrapper section.contents aside.side-content form.search-blog-form input.input-keyword::placeholder {
  font-size: .875rem;  /* 14px */
  font-weight: 1.5;
  letter-spacing: 1.4px;
  color: #767676;
}

#post .wrapper section.contents aside.side-content form.search-blog-form button.search-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 40px;
  width: 100%;
  height: 40px;
  background: var(--light-blue);
  border-radius: 0 3px 3px 0;
  transition: opacity 0.3s;
}

#post .wrapper section.contents aside.side-content form.search-blog-form button.search-btn:hover {
  opacity: 0.6;
}

#post .wrapper section.contents aside.side-content form.search-blog-form button.search-btn:disabled {
  opacity: 1;
  background: #A6A6A6;
}

#post .wrapper section.contents aside.side-content ul.cta-list {
  display: flex;
  flex-direction: column;
  grid-row-gap: 15px;
}

#post .wrapper section.contents aside.side-content ul.cta-list li img {
  width: 100%;
  transition: opacity 0.3s;
}

#post .wrapper section.contents aside.side-content ul.cta-list li img:hover {
  opacity: 0.6;
}

#post .wrapper section.contents aside.side-content ul.cta-list.is-scroll {
  position: fixed;
  width: 315px;
  top: 100px;
}

#post .wrapper section.contents aside.side-content ul.cta-list.is-end-pos {
  position: absolute;
  top: calc(100% - 550px);
}

#post .wrapper section.contents aside.side-content ul.cta-list.is-scroll.up-move {
  animation: UpCtaAnime 0.6s forwards;
}

@keyframes UpCtaAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-470px);
  }
}

#post .wrapper section.contents aside.side-content ul.cta-list.is-scroll.down-move {
  animation: DownCtaAnime 0.6s forwards;
}

@keyframes DownCtaAnime {
  from {
    opacity: 0;
    transform: translateY(-470px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#post .wrapper section.contents aside.side-content section.post-ranking-list {
  margin-top: 40px;
}

#post .wrapper section.contents aside.side-content section.post-ranking-list h2 {
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.4;
  color: #000426;
  border-bottom: 2px solid var(--blue);
  padding-bottom: 10px;
  margin-bottom: 25px;
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post {
  margin-bottom: 15px;
  padding-bottom: 30px;
  border-bottom: 1px solid #C9CED1;
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post a {
  display: flex;
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post a .ranking {
  position: relative;
  width: 0;
  height: 0;
  border-width: 25px;
  border-style: solid;
  border-color: #DCC446 transparent transparent #DCC446;
  border-top-left-radius: 4px;
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post:nth-child(3) a .ranking {
  position: relative;
  width: 0;
  height: 0;
  border-width: 25px;
  border-style: solid;
  border-color: #9BA2A6 transparent transparent #9BA2A6;
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post:nth-child(4) a .ranking {
  position: relative;
  width: 0;
  height: 0;
  border-width: 25px;
  border-style: solid;
  border-color: #B17C79 transparent transparent #B17C79;
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post:nth-child(5) a .ranking {
  position: relative;
  width: 0;
  height: 0;
  border-width: 25px;
  border-style: solid;
  border-color: var(--light-blue) transparent transparent var(--light-blue);
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post:nth-child(6) a .ranking {
  position: relative;
  width: 0;
  height: 0;
  border-width: 25px;
  border-style: solid;
  border-color: var(--light-blue) transparent transparent var(--light-blue);
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post a .ranking span {
  position: absolute;
  top: -25px;
  left: -19px;
  font-size: .875rem;  /* 14px */
  color: var(--white);
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post a .title {
  line-height: 1.4;
  margin-top: 19px;
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post a .title h3 {
  color: var(--dark-gray);
  display: inline;
  font-size: .875rem;  /* 14px */
  padding-bottom: 2px;
  position: relative;
  text-decoration: none;
}

#post .wrapper section.contents aside.side-content section.post-ranking-list article.post a:hover .title h3 {
  border-bottom: 1px solid var(--dark-gray);
}

#post .wrapper section.contents aside.side-content section.recent-post-list {
  margin-top: 40px;
}

#post .wrapper section.contents aside.side-content section.recent-post-list h2 {
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.4;
  color: #000426;
  border-bottom: 2px solid var(--blue);
  padding-bottom: 10px;
  margin-bottom: 25px;
}

#post .wrapper section.contents aside.side-content section.recent-post-list article.post {
  margin-bottom: 25px;
  padding-bottom: 20px;
  border-bottom: 1px solid #C9CED1;
}

#post .wrapper section.contents aside.side-content section.recent-post-list article.post a {
  display: flex;
  grid-column-gap: 16px;
}

#post .wrapper section.contents aside.side-content section.recent-post-list article.post a .img img {
  width: 85px;
  height: 48px;
  object-fit: cover;
}

#post .wrapper section.contents aside.side-content section.recent-post-list article.post a .title {
  line-height: 1.4;
}

#post .wrapper section.contents aside.side-content section.recent-post-list article.post a .title h3 {
  color: var(--dark-gray);
  display: inline;
  font-size: .875rem;  /* 14px */
  padding-bottom: 2px;
  position: relative;
  text-decoration: none;
}

#post .wrapper section.contents aside.side-content section.recent-post-list article.post a:hover .title h3 {
  border-bottom: 1px solid var(--dark-gray);
}

#post .wrapper section.contents aside.side-content section.tag-list {
  margin-top: 40px;
}

#post .wrapper section.contents aside.side-content section.tag-list h2 {
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.4;
  color: #000426;
  border-bottom: 2px solid var(--blue);
  padding-bottom: 10px;
  margin-bottom: 25px;
}

#post .wrapper section.contents aside.side-content section.tag-list ul.tags {
  display: flex;
  flex-wrap: wrap;
  grid-column-gap: 10px;
  grid-row-gap: 10px;
}

#post .wrapper section.contents aside.side-content section.tag-list ul.tags li.tag a {
  display: flex;
  grid-column-gap: 6px;
  font-size: .75rem;  /* 12px */
  font-weight: 700;
  line-height: 2;
  color: var(--light-blue);
  transition: opacity 0.3s;
}

#post .wrapper section.contents aside.side-content section.tag-list ul.tags li.tag a:hover {
  opacity: 0.6;
}

#post .wrapper section.contents aside.side-content section.tag-list ul.tags li.tag a .post-num {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 25px;
  height: 25px;
  padding: 5px;
  border-radius: 30px;
  background-color: #DAEAFF;
}

#post .wrapper section.contents aside.side-content section.subscription-cta {
  margin-top: 40px;
}

#post .wrapper section.contents aside.side-content section.subscription-cta img {
  width: 100%;
  transition: opacity 0.3s;
}

#post .wrapper section.contents aside.side-content section.subscription-cta img:hover {
  opacity: 0.6;
}

section.closs-talk-linkbox {
  display: flex;
}

section.closs-talk-linkbox a {
  width: 50%;
}

section.closs-talk-linkbox .inner {
  border: 5px #efefef solid;
  padding: 20px 10px;
  margin: 0 10px;
  height: 100%;
}

section.closs-talk-linkbox .inner img {
  width: 100%!important;
  height: 200px !important;
  object-fit: cover;
}

#post .wrapper section.contents article.main-content .body p.closs-talk-cover-img-wrapper {
  float: left;
  margin-top: 0px;
  margin-bottom: 0px;
}

#post .wrapper section.contents article.main-content .body .closs-talk-img-left {
  float: left;
  width: 400px!important;
  margin: 0 50px 0 0;
  height: auto;
  max-width: 100%;
}

#post .wrapper section.contents article.main-content .body .closs-talk-img-right {
  float: right;
  height: auto;
  max-width: 100%;
  width: 400px!important;
  margin: 0px 0px 0px 30px;
}

#post .wrapper section.contents article.main-content .body section.closs-talk-linkbox a:not(#toc ol li a):not(ul.social-icons-pc li a):not(.cta-wrap a) {
  border: none;
}

.body section.closs-talk-linkbox a:hover {
  opacity: 0.6;
}

#post .wrapper section.contents article.main-content .body .cta-middle {
  margin-top: 0px;
  margin-bottom: 0px;
  margin: 0px 0px 30px;
  width: 100%;
}

#post .wrapper section.contents article.main-content .body .cta-middle a {
  border-bottom: none !important;
  transition: opacity 0.3s !important;
}

#post .wrapper section.contents article.main-content .body .cta-middle a:hover {
  opacity: 0.6;
}

#post .wrapper section.contents article.main-content .body .cta-middle-two {
  display: flex;
  align-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  grid-column-gap: 10px;
}

#post .wrapper section.contents article.main-content .body .cta-middle .Column--6 {
  width: calc(50% - 5px);
  padding: 0;
}

#post .wrapper section.contents article.main-content .body .cta-middle .Column--6 .hs-cta-wrapper {
  display: block;
  padding: 10px;
  background-color: #f6f6f6;
}

#post .wrapper section.contents article.main-content .body .cta-middle .Column--6 .hs-cta-wrapper img {
  width: 100% !important;
}

#post .wrapper section.contents article.main-content .post-cta a {
  transition: opacity 0.3s !important;
}

#post .wrapper section.contents article.main-content .post-cta a:hover {
  opacity: 0.6;
}

#post .wrapper section.contents article.main-content .post-cta img {
  width: 100% !important;
}

@media (max-width: 560px){
  #post .wrapper section.contents article.main-content .body .cta-middle .Column--6 {
    width: 100%;
  }

  #post .wrapper section.contents article.main-content .body .cta-middle .Column--6:first-child {
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 1320px) {
  #post .wrapper {
    padding: 0 30px;
  }
}

@media screen and (max-width: 1024px) {
  #post {
    padding: 102px 0 60px;
  }

  #post .wrapper {
    padding: 0 20px;
  }

  #post .wrapper nav.breadcrumb {
    margin: 0 auto 30px 0;
  }

  #post .wrapper section.contents {
    flex-wrap: wrap;
    width: 100%;
  }

  #post .wrapper section.contents article.main-content {
    width: 100%;
    margin-right: 0;
    padding-left: 0;
  }

  #post .wrapper section.contents article.main-content header.content-header,
  #post .wrapper section.contents article.main-content .body,
  #post .wrapper section.contents article.main-content footer section.meta {
    margin-left: 0;
  }

  #post .wrapper section.contents article.main-content h1 {
    font-size: 1.375rem;  /* 22px */
    margin-top: 20px;
    margin-bottom: 20px;
  }

  #post .wrapper section.contents article.main-content .body h2 {
    font-size: 1.25rem;  /* 20px */
    margin-top: 60px;
  }

  #post .wrapper section.contents article.main-content .body h3:not(.post-appendarea-wrapper h3) {
    font-size: 1.125rem !important;  /* 18px */
    margin-bottom: 30px;
    padding: 6px 10px;
  }

  #post .wrapper section.contents article.main-content .body h4 {
    font-size: 1rem;  /* 16px */
    margin-top: 40px;
    margin-bottom: 30px;
  }

  #post .wrapper section.contents article.main-content .body h5 {
    font-size: .9375rem;  /* 15px */
    margin-top: 40px;
    margin-bottom: 30px;
  }

  #post .wrapper section.contents article.main-content .body h6 {
    font-size: .9375rem;  /* 15px */
    margin-top: 40px;
    margin-bottom: 30px;
  }

  #post .wrapper section.contents article.main-content .body pre {
    margin: 30px 0;
  }

  #post .wrapper section.contents article.main-content .body code {
    margin: 30px 0;
  }

  #post .wrapper section.contents article.main-content .body blockquote {
    margin: 30px 0;
    padding: 39px 20px;
  }

  #post .wrapper section.contents article.main-content .body table tr th, 
  #post .wrapper section.contents article.main-content .body table tr td {
    font-size: .75rem;  /* 12px */
  }

  #post .wrapper section.contents article.main-content .body ul:not(ul.social-icons-pc) {
    font-size: .9375rem;  /* 15px */
    margin: 30px 0;
    text-indent: -20px;
  }

  #post .wrapper section.contents article.main-content .body ul:not(ul.social-icons-pc) ul {
    margin-left: 14px;
  }

  #post .wrapper section.contents article.main-content .body .note {
    padding: 30px 20px;
    margin-bottom: 60px;
  }

  #post .wrapper section.contents article.main-content .body .post-appendarea-wrapper {
    padding: 40px 22px;
  }

  #post .wrapper section.contents article.main-content .body .post-appendarea-wrapper .item-content p {
    font-size: 1rem;  /* 16px */
    margin: 30px 0;
  }

  #post .wrapper section.contents article.main-content .body .post-appendarea-wrapper .cta-wrap a {
    height: auto;
    font-size: 1.125rem;  /* 18px */
    max-width: 350px;
    width: 100%;
    padding: 20px;
    box-sizing: border-box !important;
  }

  #post .wrapper section.contents article.main-content header.content-header {
    margin-bottom: 15px;
  }

  #post .wrapper section.contents article.main-content header.content-header .info {
    flex-direction: column-reverse;
    grid-row-gap: 25px;
  }

  #post .wrapper section.contents article.main-content ul.tags {
    margin-bottom: 21px;
  }

  #post .wrapper section.contents article.main-content footer ul.tags {
    margin-bottom: 11px;
  }

  #post .wrapper section.contents article.main-content header.content-header .info .meta .author {
    margin-top: 15px;
  }

  #post .wrapper section.contents article.main-content header.content-header .info .meta .author a {
    justify-content: start;
  }

  #post .wrapper section.contents article.main-content .body .featured-img {
    margin: 15px 0;
  }

  #post .wrapper section.contents article.main-content .body p {
    font-size: .9375rem;  /* 15px */
    line-height: 1.8;
    margin: 30px 0;
  }

  #post .wrapper section.contents article.main-content .body #toc {
    margin: 30px 0;
  }

  #post .wrapper section.contents article.main-content .body #toc .title {
    padding: 30px 20px;
  }

  #post .wrapper section.contents article.main-content .body #toc .title .toc-icon-wrapper {
    right: 20px;
  }

  #post .wrapper section.contents article.main-content .body #toc > ol {
    padding: 0 20px 30px 20px;
  }

  #post .wrapper section.contents article.main-content .body #toc > ol > li {
    font-size: .9375rem;  /* 15px */
    margin-bottom: 15px;
  }

  #post .wrapper section.contents article.main-content .body #toc > ol > li > ol > li {
    margin-left: 7px;
    margin-bottom: 15px;
  }

  #post .wrapper section.contents article.main-content .body ul.social-icons-pc {
    display: none;
  }

  #post .wrapper section.contents article.main-content footer {
    display: flex;
    flex-direction: column-reverse;
  }

  #post .wrapper section.contents article.main-content footer .hs_cos_wrapper:nth-child(1) {
    order: 3;
  }

  #post .wrapper section.contents article.main-content footer .hs_cos_wrapper:nth-child(2) {
    order: 2;
  }

  #post .wrapper section.contents article.main-content footer .hs_cos_wrapper:nth-child(3) {
    order: 1;
  }

  #post .wrapper section.contents article.main-content footer section.meta {
    margin-top: 60px;
  }

  #post .wrapper section.contents article.main-content footer section.meta .paging {
    grid-template-columns: 1fr;
    grid-row-gap: 16px;
    grid-column-gap: 0;
    margin-top: 30px;
  }

  #post .wrapper section.contents article.main-content footer section.meta .paging a {
    margin: 0 -20px;
    grid-column-gap: 20px;
  }

  #post .wrapper section.contents article.main-content footer section.meta .paging a .title-group .title {
    font-size: .8125rem;  /* 13px */
  }

  #post .wrapper section.contents article.main-content footer ul.social-icons-sp {
    display: flex;
    grid-column-gap: 15px;
    margin-top: 30px;
    height: 40px;
  }

  #post .wrapper section.contents article.main-content footer ul.social-icons-sp li a {
    width: 40px;
    display: block;
    transition: opacity 0.3s;
  }

  #post .wrapper section.contents article.main-content footer ul.social-icons-sp li a:hover {
    opacity: 0.6;
  }

  #post .wrapper section.contents aside.side-content {
    width: 100%;
    min-width: unset;
    margin-top: 60px;
    margin-left: 0;
  }

  #post .wrapper section.contents aside.side-content ul.cta-list {
    text-align: center;
  }

  #post .wrapper section.contents aside.side-content ul.cta-list li img {
    max-width: 100%;
    width: auto;
  }

  #post .wrapper section.contents aside.side-content section.post-ranking-list {
    margin-top: 50px;
  }

  #post .wrapper section.contents aside.side-content section.recent-post-list {
    margin-top: 50px;
  }

  #post .wrapper section.contents aside.side-content section.tag-list {
    margin-top: 50px;
  }

  #post .wrapper section.contents aside.side-content section.subscription-cta {
    margin-top: 50px;
    text-align: center;
  }

  #post .wrapper section.contents aside.side-content section.subscription-cta img {
    width: auto;
    max-width: 100%;
  }

  section.closs-talk-linkbox {
    display:block;
  }

  section.closs-talk-linkbox a {
    width: 100%;
  }

  #post .wrapper section.contents article.main-content .body p.closs-talk-cover-img-wrapper {
    float:none;
  }

  #post .wrapper section.contents article.main-content .body img.closs-talk-img-left,#post .wrapper section.contents article.main-content .body img.closs-talk-img-right {
    margin:0px 0px 10px;
    float:none;
    width: 100%!important;
  }

  section.closs-talk-linkbox .inner {
    /*     min-height: 400px; */
  }
}

/* ------------------------------------------------------------------------------------
Blog List
------------------------------------------------------------------------------------ */
section.lists .lists-wrapper section.list {
  padding-top: 70px;
}

section.lists .lists-wrapper section.list:first-child {
  padding-top: 0;
}

section.lists .lists-wrapper section.list .list-wrapper {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 120px;
}

section.lists .lists-wrapper section.list .list-wrapper header {
  display: flex;
  align-items: center;
  grid-column-gap: 50px;
  margin-bottom: 40px;
}

section.lists .lists-wrapper section.list .list-wrapper header h2 {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 2.2px;
  color: var(--black);
}

section.lists .lists-wrapper section.list .list-wrapper header .link a {
  display: flex;
  align-items: center;
  padding: 6px 16px;
  border: 1px solid var(--light-blue);
  border-radius: 5px;
  color: var(--light-blue);
  transition: background 0.3s, padding 0.3s;
}

section.lists .lists-wrapper section.list .list-wrapper header .link a:hover {
  color: var(--white);
  background: var(--light-blue);
  padding: 6px 12px 6px 16px;
}

section.lists .lists-wrapper section.list .list-wrapper header .link a .lbl {
  font-size: 14px;
  line-height: 1.45;
  letter-spacing: 1.4px;
  margin-right: 14px;
  transition: margin-right 0.3s;
}

section.lists .lists-wrapper section.list .list-wrapper header .link a:hover .lbl {
  margin-right: 18px;
}


section.lists .lists-wrapper section.list .list-wrapper header .link a svg {
  margin-top: 1px;
}

section.lists .lists-wrapper section.list .list-wrapper header .link a:hover svg path {
  stroke: var(--white);
}

section.lists .lists-wrapper section.list .list-wrapper .posts {
  display: grid;
  grid-column-gap: 40px;
  grid-row-gap: 50px;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
}

section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column {
  grid-column-gap: 63px;
  grid-row-gap: 20px;
  grid-template-columns: repeat(auto-fill,minmax(500px,1fr));
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post {
  box-shadow: 0px 4px 30px 8px rgb(90 90 90 / 7%);
  border-radius: 3px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a {
  display: flex;
  grid-column-gap: 30px;
  padding: 20px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .img img {
  width: 167px;
  height: 103px;
  border-radius: 3px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .img > div {
  border-radius: 3px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .img > div {
  border-radius: 3px 3px 0 0;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .img img {
  width: 100%;
  height: 210px;
  object-fit: cover;
  border-radius: 3px 3px 0 0;
  transition: transform 0.3s;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a:hover .img img {
  transform: scale(1.1, 1.1);
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info {
  padding: 30px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .info {
  padding: 0;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .title {
  line-height: 1.5;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .title h3 {
  position: relative;
  display: inline;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 1.8px;
  padding-bottom: 3px;
  background: linear-gradient(var(--black), var(--black)) 0 100%/0 1px no-repeat;
  transition: background .3s;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a:hover .info .title h3 {
  background-size: 100% 1px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta {
  flex-direction: row;
  flex-wrap: wrap;
  grid-column-gap: 20px;
  grid-row-gap: 10px;
  margin-top: 21px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .info .meta {
  display: flex;
  flex-direction: column;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta time.date {
  display: block;
  font-size: 13px;
  line-height: 2;
  letter-spacing: 1.3px;
  color: #595959;
  margin-top: 15px;
  margin-bottom: 24px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .info .meta time.date {
  margin: 0;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta .categories {
  display: flex;
  flex-wrap: wrap;
  grid-column-gap: 16px;
  grid-row-gap: 14px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta .categories ul.tags {
  display: flex;
  flex-wrap: wrap;
  grid-column-gap: 16px;
  grid-row-gap: 10px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta .categories ul.tags li.tag {
  font-size: 11px;
  line-height: 2;
  letter-spacing: 1.1px;
  color: var(--white);
  background: var(--light-blue);
  width: fit-content;
  padding: 1px 12px;
  border-radius: 3px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta .categories ul.keywords {
  display: flex;
  flex-wrap: wrap;
  grid-column-gap: 16px;
  grid-row-gap: 5px;
}

section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta .categories ul.keywords li.keyword {
  font-size: 12px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 1.2px;
  color: var(--light-blue);
}

@media screen and (max-width: 1024px) {
  section.lists .lists-wrapper section.list .list-wrapper {
    padding: 0 20px;
  }

  section.lists .lists-wrapper section.list .list-wrapper header {
    justify-content: space-between;
    margin-bottom: 30px;
  }

  section.lists .lists-wrapper section.list .list-wrapper header h2 {
    font-size: 18px;
  }

  section.lists .lists-wrapper section.list .list-wrapper header .link a .lbl {
    font-size: 12px;
  }

  section.lists .lists-wrapper section.list .list-wrapper header .link a svg {
    width: 14px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column {
    grid-template-columns: 1fr;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a {
    grid-column-gap: 17px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .img img {
    height: 188px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .img img {
    width: 85px;
    height: 48px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info {
    padding: 20px 27px 32px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .info .title h3 {
    font-size: 13px;
    letter-spacing: 1.3px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .info .meta {
    flex-direction: column;
    margin-top: 10px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta time.date {
    margin-top: 10px;
    margin-bottom: 22px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .info .meta time.date {
    font-size: 11px;
    letter-spacing: 1.1px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta .categories {
    grid-column-gap: 10px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .info .meta .categories {
    flex-direction: column;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta .categories ul.tags {
    grid-column-gap: 10px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .info .meta .categories ul.tags li.tag {
    font-size: 10px;
    letter-spacing: 1px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts article.post a .info .meta .categories ul.keywords {
    grid-column-gap: 10px;
    grid-row-gap: 5px;
  }

  section.lists .lists-wrapper section.list .list-wrapper .posts.is-2column article.post a .info .meta .categories ul.keywords li.keyword {
    font-size: 10px;
    letter-spacing: 1px;
  }

  section.lists .lists-wrapper section.list.list-only .list-wrapper .posts article.post a {
    display: flex;
    grid-column-gap: 17px;
    padding: 20px;
  }

  section.lists .lists-wrapper section.list.list-only .list-wrapper .posts article.post a .img img {
    width: 85px;
    height: 48px;
    border-radius: 0;
  }

  section.lists .lists-wrapper section.list.list-only .list-wrapper .posts article.post a .info {
    padding: 0;
  }

  section.lists .lists-wrapper section.list.list-only .list-wrapper .posts article.post a .info .title h3 {
    font-size: 13px;
    letter-spacing: 1.3px;
  }

  section.lists .lists-wrapper section.list.list-only .list-wrapper .posts article.post a .info .meta {
    margin-top: 0;
  }

  section.lists .lists-wrapper section.list.list-only .list-wrapper .posts article.post a .info .meta time.date {
    font-size: 11px;
    letter-spacing: 1.1px;
    margin: 10px 0;
  }

  section.lists .lists-wrapper section.list.list-only .list-wrapper .posts article.post a .info .meta .categories {
    flex-direction: column;
  }

  section.lists .lists-wrapper section.list.list-only .list-wrapper .posts article.post a .info .meta .categories ul.tags li.tag {
    font-size: 10px;
    letter-spacing: 1px;
  }

  section.lists .lists-wrapper section.list.list-only .list-wrapper .posts article.post a .info .meta .categories ul.keywords li.keyword {
    font-size: 10px;
    letter-spacing: 1px;
  }
}

/* New CSS Table of contents */

.blog .body #toc-box{
  margin-top: 30px;
  background: #f5f5f5;
}
.blog .body .text-highlight, .blog .body strong {
  background: linear-gradient(transparent 60%, #ffffa8 0);
  border-radius: 2px;
  font-weight: 700;
}
#toc-box ol#toc-index{
  margin-top: 30px !important;
  padding: 0 30px 0px;
}
#toc-box ol#toc-index a{
  border-bottom: unset !important;
}
#toc-box ol#toc-index a:hover{
  border-bottom: 1px solid var(--dark-gray) !important;
}
#post .wrapper section.contents article.main-content .body #toc>ol{
  padding: 0 30px 35px;
}
#post .wrapper section.contents article.main-content .body ol:not(#toc ol){
  margin: 0 0 20px 0;
}
.blog .body #toc-box ol li ol{
  padding-left: 10px !important;
}
.blog .body #toc-box span#toc-title{
  font-size: 1.125rem;
  position: relative;
  font-weight: 700;
  line-height: 1.4;
  padding: 30px;
  top: 10px;
}
#post .wrapper section.contents article.main-content .body a:not(#toc ol li a):not(ul.social-icons-pc li a):not(.cta-wrap a){
  color: #141414 !important;
}
#post .wrapper section.contents article.main-content .body ol li:not(#toc ol li)::before{
  color: #141414 !important;
}

#toc-box{
  position: relative;
  overflow: hidden;
  margin-bottom: 0 !important;
  font-size: 15px;
}
#toc-box li.visible {
  display: list-item;
}
#toc-box ol{
  counter-reset: cnt !important;
  list-style: none;
}
#toc-box ol li:before{
  content: counters(cnt, "-") " " !important;
  counter-increment: cnt !important;
}
#toc-box ol li ol li:before{
  font-size: 12px;
  top: 0px;
  left: -30px;
  width: 30px;
  color: #3e3e3e;
  font-weight: unset;
}
.viewless::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100px;
  opacity: .75;
  background: -webkit-linear-gradient(top,hsla(0,0%,100%,0),hsla(0,0%,100%,.9) 50%,hsla(0,0%,100%,.9) 0,#fff);
  background: linear-gradient(top,hsla(0,0%,100%,0),hsla(0,0%,100%,.9) 50%,hsla(0,0%,100%,.9) 0,#fff);
}

#view-more-btn {
  cursor: pointer;
  background-color: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 5em;
  color: #4a4a4a;
  display: block;
  font-size: 14px;
  line-height: 1.5;
  margin: .75em auto 30px;
  min-width: 6em;
  padding: .5em 1em;
  position: relative;
  transition: box-shadow .25s;
  z-index: 2;
}
#view-more-btn[data-type="view-more"]:before, #view-more-btn[data-type="view-more"]:after{
  border-top-color: inherit;
  border-top-style: dotted;
  border-top-width: 3px;
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  top: calc(50% - 1px);
  transition: border-color .25s;
  width: 22px;
}
#view-more-btn:before{
  right: calc(100% + 1em);
}
#view-more-btn:after{
  left: calc(100% + 1em);
}
#view-more-btn:hover{
  border-color: transparent;
  box-shadow: 0 0 0 2px currentcolor;
}
[data-type="view-less":after]{
  content: unset;
}
#toc-box [data-omit="1"] {
  display: none;
}

.blog .body #toc-box ol li ol{
  margin: 10px 0;
  padding-left: 30px;
}
@media only screen and (max-width: 767px) {
  .blog .body #toc-index>li a {
    font-size: 15px;
  }
}


/* New CSS sidebar table of contents */

.body-wrapper {
  overflow-x: initial !important;
}
#Blog-Sidebar {
  padding-bottom: 0;
}
#Blog-Page .Wrap > .Row {
  align-items: stretch;
}
#Side-Items.side_col_fixed {
  top: 0;
  position: sticky;
  position: -webkit-sticky;
  padding-top: 100px;
  z-index: 99;
  transition: all .5s ease;
}
#Side-Items .sticky {
  line-height: 1.0;
}
#Side-Items .sticky .Blog-Sidebar-cta + .Blog-Sidebar-cta {
  margin-top: 10px;
}
#Side-Items .dry {
  display: block;
}
#Side-Items.side_col_fixed .dry {
  display:none;
}
#Side-Items ol li a:hover{
  border-bottom: 1px solid var(--dark-gray) !important;
}
.side-tocBox ol li.hight:before{
  background: #00479D !important;
}
.sidebar-sticky{
  padding-top: 30px;
}
.side-tocBox [data-omit="1"]{
  display: flex;
}

.side-tocBox{
  max-height: calc(100vh - 420px - var(--swl-adminbarH, 0px) - var(--swl-fix_headerH, 0px));
  overflow-y: auto;
  border: 1px solid #eee;
  padding: 20px;
}
.side-tocBox .tocTitle{
  display: block;
  color: #000;
  font-size: 1.4em;
  font-weight: 500;
  margin: 0 0 .5em;
  padding-bottom: .5em;
  position: relative;
}

.side-tocBox ol{
  padding-left: 0;
  position: relative;
  list-style: none;
  margin-top: 5px;
}
.side-tocBox ol li,  .side-tocBox ol li ol li{
  display: flex;
  position: relative;
  flex-direction: column;
  margin: 5px 0;
}
.side-tocBox ol:before{
  content: "";
  position: absolute;
  left: .5rem;
  top: .8rem;
  bottom: .8rem;
  width: .2rem;
  background: #64bbeb;
}
.side-tocBox ol li::before{
  flex-shrink: 0;
  content: "";
  top: 0;
  left: 2px;
  width: 15px;
  height: 15px;
  background: #64bbeb;
  border: 2px solid #fff;
  border-radius: 50%;
  margin-right: 1rem;
  transform: translateY(.5rem);
  position: absolute;
}

.side-tocBox ol li ol li{
  display: flex;
}
.side-tocBox ol li ol li:before{
  flex-shrink: 0;
  content: "";
  top: 0px;
  left: 5px;
  width: 10px;
  height: 10px;
  background: #64bbeb;
  border: 2px solid #fff;
  border-radius: 50%;
  margin-right: 1rem;
  transform: translateY(.5rem);
  position: absolute;
}
.side-tocBox ol li ol{
  padding: 0;
  margin-top: 5px;
}
.side-tocBox ol li a{
  font-size: 14px;
  text-align: left;
  margin-left: 20px;
  color: #000;
}
.side-tocBox ol li ol li a{
  color: #434648;
}
.side-tocBox ol li a:hover , .side-tocBox ol li ol li a:hover{
  font-weight: bold;
}
.side-tocBox #toc-title{
  font-size: 16px;
  font-weight: 700;
}
.Blog-Basic.Page-0 .sidebar-sticky{
  display: none;
}
#post .wrapper section.contents aside.side-content ul.cta-list.is-scroll{
  position: unset !important;
}
@media screen and (min-width: 1025px){
  .modal-open, .modal-close{
    display: none;
  }
  .side-tocBox #toc-title .fa-list{
    display: none;
  }
}
@media screen and (max-width: 1024px){
  .modal-container{
    position: fixed;
  }
  .body-wrapper{
    overflow-x: hidden !important;
  }
  .modal-close{
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    top: -30px;
    right: -5px;
    width: 30px;
    height: 30px;
    font-size: 30px;
    color: #fff;
    cursor: pointer;
  }
  .modal-open span{
    display: inline-block;
    transition: transform .3s;
    position: absolute;
    left: 17px;
    height: 2px;
    background: var(--white);
    width: 16px;
  }
  .modal-open span:nth-of-type(1){
    top: 19px;
  }
  .modal-open span:nth-of-type(2){
    top: 25px;
  }
  .modal-open span:nth-of-type(3){
    top: 31px;
  }
  .Hero--small{
    z-index: 0;
  }
  .sidebar-sticky .modal-container.active{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    background: rgba(0, 0, 0, 50%);
    padding: 100px 0 40px;
    overflow: auto;
    transition: .3s;
    box-sizing: border-box;
    z-index: 1000;
  }
  .sidebar-sticky .modal-container:before{
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%;
  }
  .side-tocBox{
    max-height: calc(80vh - 120px - var(--swl-adminbarH, 0px) - var(--swl-fix_headerH, 0px));
    overflow-y: auto;
  }
  .sidebar-sticky .modal-body{
    position: relative;
    display: inline-block;
    vertical-align: middle;
    max-width: 500px;
    width: 90%;
    background-color: #f6f6f6;
    padding: 15px;
    z-index: 1000;
  }
  .modal-open{
    width: 50px;
    height: 50px;
    padding: 5px 0;
    background-color: #00479D;
    text-align: center;
    position: fixed;
    right: 0;
    bottom: 50px;
    z-index: 100;
    opacity: .9;
    display: block;
  }
  .modal-open .fa::before{
    font-size: 20px;
    color: #fff;
  }
  .modal-open span{
    display: block;
    font-size: 9px;
    color: white;
    line-height: 1;
    margin-top: -10px;
  }
}
/* 事例一覧 */

/* Common */


/* hero */
#case.listing .wrapper .hero .hero-wrapper {
  position: relative;
}

#case.listing .wrapper .hero .hero-wrapper picture img {
  height: 300px;
  object-fit: cover;
}

#case.listing .wrapper .hero .hero-wrapper .nav {
  max-width: 1240px;
  width: 100%;
  margin: 0 auto;
  padding: 25px 20px 0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

#case.listing .wrapper .hero .hero-wrapper nav.breadcrumb ol {
  display: flex;
  align-items: center;
  grid-column-gap: 3px;
}

#case.listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li {
  display: flex;
  align-items: center;
  grid-column-gap: 3px;
}

#case.listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li:first-child a {
  display: flex;
  align-items: center;
}

#case.listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li:first-child a .home-icon {
}

#case.listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li a {
  font-size: 11px;
  color: var(--dark-gray);
  line-height: 2;
  transition: opacity 0.3s;
}

#case.listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li a:hover {
  opacity: 0.6;
}

#case.listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li span.is-active {
  font-size: 11px;
  font-weight: 700;
  color: var(--dark-gray); 
  line-height: 2;
}

#case.listing .wrapper .hero .hero-wrapper nav.breadcrumb ol li .delimiter-icon {
  width: 17px;
  margin-top: 1px;
}

#case.listing .wrapper .hero .hero-wrapper .title {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  padding: 0 20px;
  max-width: 900px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#case.listing .wrapper .hero .hero-wrapper .title h1 {
  font-size: 34px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 3.4px;
  color: #000;
}

#case.listing .wrapper .hero .hero-wrapper .title p.desc {
  font-size: 20px;
  line-height: 1.5;
  color: var(--dark-gray);
  text-align: center;
  margin-top: 24px;
}

/* recommend-list */
#case.listing .wrapper .recommended-lists {
  padding-top: 90px;
  padding-bottom: 60px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper {
  margin: 0 auto;
  max-width: 1440px;
  padding: 0 120px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper h2 {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 40px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts {
  grid-column-gap: 40px;
  grid-row-gap: 50px;
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post {
  box-shadow: 0px 4px 30px 8px rgb(90 90 90 / 7%);
  border-radius: 3px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post.noshadow {
  box-shadow: none;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post > a, #case.listing .wrapper .recommended-lists .lists-wrapper .posts .post > div {
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: all 0.3s;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post > a:hover {
  background-color: #EEF2F8;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .img img {
  width: 167px;
  height: 103px;
  border-radius: 3px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .img img {
  width: 100%;
  height: 210px;
  object-fit: cover;
  border-radius: 3px 3px 0 0;
  transition: transform 0.3s;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info {
  padding: 30px 20px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info h3 {
  font-size: 1rem;  /* 16px */
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 15px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .summary {
  font-size: 1.125rem;  /* 18px */
  line-height: 1.45;
  margin-bottom: 20px;
}

/* info tag */
#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .tags {
  display: flex;
  grid-gap: 10px;
  flex-wrap: wrap;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .tags .tag {
  background: #A6A6A6;
  border-radius: 3px;
  color: var(--white);
  font-size: .75rem;  /* 12px */
  line-height: 2.0;
  padding: 2px 15px;
  width: fit-content;
}

/* info readmore */
#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .readmore {
  align-items: center;
  display: flex;
  width: 123px;
  justify-content: flex-end;
  margin-top: 25px;
  margin-left: auto;
  height: 40px;
  position: relative;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .readmore .readmore-text {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  color: var(--blue);
  position: absolute;
  left: 0;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 100%;
  background: var(--white);
  border: 1px solid #1B4698;
  transition: width 0.3s, height 0.3s, background 0.3s;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner {
  width: 40px;
  height: 40px;
  background: var(--blue);
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 1px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 0px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::before, #case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::after {
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: width 0.32s, left 0.32s;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::before {
  background: #1B4698;
  height: 1px;
  width: 12px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span::before {
  background: var(--white);
  top: 0.01px;
  width: 22px;
  left: -10px;
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::after {
  left: 0px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #1B4698;
  border-right: 1px solid #1B4698;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#case.listing .wrapper .recommended-lists .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span::after {
  border-top: 1px solid var(--white);
  border-right: 1px solid var(--white);
  left: 3px;
  width: 8px;
  height: 8px;
  top: -3.5px;
}

@media screen and (max-width: 1024px) {
  #case.listing .wrapper .recommended-lists {
    padding-top: 105px;
    padding-bottom: 60px;
  }
  
  #case.listing .wrapper .recommended-lists .lists-wrapper {
    padding: 0 20px;
  }
  
  #case.listing .wrapper .recommended-lists .lists-wrapper .posts {
    grid-row-gap: 40px;
  }
  
  #case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info {
    padding: 20px;
  }
  
  #case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .summary {
    margin-bottom: 40px;
  }
  
  #case.listing .wrapper .recommended-lists .lists-wrapper .posts .post .info .readmore {
    margin-top: 20px;
  }
}


/* all-list */
#case.listing .wrapper .all-lists {
  padding-top: 60px;
  padding-bottom: 90px;
}

#case.listing .wrapper .all-lists {
  padding-top: 60px;
  padding-bottom: 90px;
}

#case.listing .wrapper .all-lists .lists-wrapper {
    margin: 0 auto;
    max-width: 1440px;
    padding: 0 120px;
}

#case.listing .wrapper .all-lists h2 {
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.45;
    margin-bottom: 40px;
}

#case.listing .wrapper .all-lists .posts {
  display: flex;
  flex-direction: column;
  row-gap: 30px;
}

#case.listing .wrapper .all-lists .posts .post > a, #case.listing .wrapper .all-lists .posts .post > div {
  background-color: #F8FBFF;
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 3px;
  transition: all 0.3s;
}

#case.listing .wrapper .all-lists .posts .post > a:hover {
  background-color: #EEF2F8;
}

#case.listing .wrapper .all-lists .posts .post .detail {
  position: relative;
  display: flex;
  column-gap: 30px;
  padding: 30px;
  transition: all .3s;
  width: 100%;
}

#case.listing .wrapper .all-lists .posts .post .detail img {
  width: 167px;
  height: 94px;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 3px;
}

#case.listing .wrapper .all-lists .posts .post .detail .noimg {
  width: 167px;
}

#case.listing .wrapper .all-lists .posts .post .detail .info {
  width: calc(100% - 197px);
}

#case.listing .wrapper .all-lists .posts .post .detail .info > .title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.45;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .summary {
  font-size: 1rem;
  line-height: 1.45;
  margin-top: 10px;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .service {
  margin-top: 20px;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .service .tags {
  grid-gap: 10px;
  display: flex;
  flex-wrap: wrap;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .service .tags .tag {
  background: #a6a6a6;
  border-radius: 3px;
  color: var(--white);
  font-size: 12px;
  line-height: 2;
  padding: 2px 21.5px;
  width: fit-content;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .industry {
  font-size: .875rem;  /* 14px */
  line-height: 1.8;
  color: #595959;
  margin-top: 10px;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .industry .title {
  font-weight: 700;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .industry .title span {
  font-weight: 400;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .readmore {
  position: absolute;
  align-items: center;
  display: flex;
  justify-content: flex-end;
  width: 123px;
  height: 40px;
  right: 30px;
  bottom: 30px;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .readmore .readmore-text {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  color: var(--blue);
  position: absolute;
  left: 0;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .readmore span.readmore-btn-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 100%;
  background: var(--white);
  border: 1px solid #1B4698;
  transition: width 0.3s, height 0.3s, background 0.3s;
}

#case.listing .wrapper .all-lists .posts .post > a:hover .info .readmore span.readmore-btn-inner {
  width: 40px;
  height: 40px;
  background: var(--blue);
}

#case.listing .wrapper .all-lists .posts .post .detail .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 1px;
}

#case.listing .wrapper .all-lists .posts .post > a:hover .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 0px;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .readmore span.readmore-btn-inner span::before, #case.listing .wrapper .all-lists .posts .post .detail .info .readmore span.readmore-btn-inner span::after {
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: width 0.32s, left 0.32s;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .readmore span.readmore-btn-inner span::before {
  background: #1B4698;
  height: 1px;
  width: 12px;
}

#case.listing .wrapper .all-lists .posts .post > a:hover .info .readmore span.readmore-btn-inner span::before {
  background: var(--white);
  top: 0.01px;
  width: 22px;
  left: -10px;
}

#case.listing .wrapper .all-lists .posts .post .detail .info .readmore span.readmore-btn-inner span::after {
  left: 0px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #1B4698;
  border-right: 1px solid #1B4698;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#case.listing .wrapper .all-lists .posts .post > a:hover .info .readmore span.readmore-btn-inner span::after {
  border-top: 1px solid var(--white);
  border-right: 1px solid var(--white);
  left: 3px;
  width: 8px;
  height: 8px;
  top: -3.5px;
}

@media screen and (max-width: 1024px) {
  #case.listing .wrapper .all-lists {
    padding-bottom: 60px;
  }
  
  #case.listing .wrapper .all-lists .lists-wrapper {
    padding: 0 20px;
  }
  
  #case.listing .wrapper .all-lists .posts {
    row-gap: 40px;
  }
  
  #case.listing .wrapper .all-lists .posts .post .detail {
    flex-direction: column;
    padding: 20px;
  }
  
  #case.listing .wrapper .all-lists .posts .post .detail .info {
    width: 100%;
  }

  #case.listing .wrapper .all-lists .posts .post .detail .img {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
  }
  
  #case.listing .wrapper .all-lists .posts .post .detail .info>.title {
    font-size: .875rem;  /* 14px */
  }

  #case.listing .wrapper .all-lists .posts .post .detail .info .summary {
    font-size: .8125rem;  /* 13px */
  }
  
  #case.listing .wrapper .all-lists .posts .post .detail .info .readmore {
    position: relative;
    bottom: initial;
    right: initial;
    margin-left: auto;
    margin-top: 8px;
  }
}



/* pagenation */
#case.listing .wrapper .all-lists ul.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 70px;
}

#case.listing .wrapper .all-lists ul.pagination li.double-arrow-item:first-child a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

#case.listing .wrapper .all-lists ul.pagination li.double-arrow-item:last-child a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 8px;
  margin-right: 0;
  transition: background 0.3s;
}

#case.listing .wrapper .all-lists ul.pagination li.double-arrow-item a:hover {
  background: var(--blue);
}

#case.listing .wrapper .all-lists ul.pagination li.double-arrow-item a:hover svg path {
  fill: var(--white);
}

#case.listing .wrapper .all-lists ul.pagination li.left-arrow-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 40px;
  transition: background 0.3s;
}

#case.listing .wrapper .all-lists ul.pagination li.num-item a, 
#case.listing .wrapper .all-lists ul.pagination li.num-item span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--blue);
  background: var(--white);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

#case.listing .wrapper .all-lists ul.pagination li.num-item a:hover {
  color: var(--white);
  background: var(--blue);
  border: 1px solid transparent;
}


#case.listing .wrapper .all-lists ul.pagination li.num-item.current span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--white);
  background: var(--blue);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
}

#case.listing .wrapper .all-lists ul.pagination li.right-arrow-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 32px;
  transition: background 0.3s;
}

#case.listing .wrapper .all-lists ul.pagination li.left-arrow-item a:hover,
#case.listing .wrapper .all-lists ul.pagination li.right-arrow-item a:hover {
  background: var(--blue);
}

#case.listing .wrapper .all-lists ul.pagination li.left-arrow-item a:hover svg path,
#case.listing .wrapper .all-lists ul.pagination li.right-arrow-item a:hover svg path {
  fill: var(--white);
}

@media screen and (max-width: 1024px) {
  #case.listing .wrapper section.lists {
    padding: 60px 0;
  }

  #case.listing .wrapper .hero .hero-wrapper picture img {
    height: 220px;
  }
  
  #case.listing .wrapper .hero .hero-wrapper .nav {
    top: unset;
    padding: 15px 20px;
    z-index: 99;
  }

  #case.listing .wrapper .hero .hero-wrapper nav.breadcrumb {
    background: var(--white);
    margin: 0;
    padding: 0;
    white-space: nowrap;
    width: 100%;
    overflow-x: auto;
  }

  #case.listing .wrapper .hero .hero-wrapper .title h1 {
    font-size: 1.75rem;  /* 28px */
    line-height: 1.4;
    letter-spacing: 2.8px;
  }

  #case.listing .wrapper .hero .hero-wrapper .title p.desc {
    font-size: 1rem;  /* 16px */
    line-height: 1.4;
    text-align: center;
    margin-top: 17px;
  }

  #case.listing .wrapper .all-lists ul.pagination {
    margin-top: 50px;
    grid-column-gap: 5px;
  }

  #case.listing .wrapper .all-lists ul.pagination li.double-arrow-item:first-child a {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #case.listing .wrapper .all-lists ul.pagination li.double-arrow-item:last-child a {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }

  #case.listing .wrapper .all-lists ul.pagination li.left-arrow-item a {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #case.listing .wrapper .all-lists ul.pagination li.num-item a, 
  #case.listing .wrapper .all-lists ul.pagination li.num-item span {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #case.listing .wrapper .all-lists ul.pagination li.num-item.current span {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #case.listing .wrapper .all-lists ul.pagination li.right-arrow-item a {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }
}


/* 事例記事（詳細） */
#case.post {
  padding: 160px 0 90px;
}

#case.post .overview {
  background-color: #F8FBFF;
}

#case.post .overview-wrapper {
  margin: 0 auto;
  max-width: 1440px;
  padding: 0 120px;
}

@media screen and (max-width: 1024px) {
  #case.post {
    padding: 72px 0 60px;
  }
  
  #case.post .overview {
    background-color: #ffffff;
  }
  
  #case.post .overview-wrapper {
    padding: 0 20px;
  }
}

/* パンくずリスト */
#case.post .overview-wrapper nav.breadcrumb {
  padding-top: 25px;
  overflow-x: auto;
}

#case.post .overview-wrapper nav.breadcrumb ol {
  display: flex;
  align-items: center;
  grid-column-gap: 3px;
  width: max-content;
}

#case.post .overview-wrapper nav.breadcrumb ol li {
  display: flex;
  align-items: center;
  grid-column-gap: 3px;
}

#case.post .overview-wrapper nav.breadcrumb ol li:first-child a {
  display: flex;
  align-items: center;
}

#case.post .overview-wrapper nav.breadcrumb ol li:first-child a .home-icon {
}

#case.post .overview-wrapper nav.breadcrumb ol li a {
  font-size: 11px;
  color: var(--dark-gray);
  line-height: 2;
  transition: opacity 0.3s;
}

#case.post .overview-wrapper nav.breadcrumb ol li a:hover {
  opacity: 0.6;
}

#case.post .overview-wrapper nav.breadcrumb ol li span.is-active {
  font-size: .6875rem;  /* 11px */
  font-weight: 700;
  color: var(--black);
  line-height: 2;
}

#case.post .overview-wrapper nav.breadcrumb ol li .delimiter-icon {
  width: 17px;
  margin-top: 1px;
}

@media screen and (max-width: 1024px) {
  #case.post .overview-wrapper nav.breadcrumb {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

/* 概要部分 */
#case.post .case-overview {
  padding-top: 43px;
  padding-bottom: 90px;
}

#case.post .case-overview .wrapper {
  margin: 0 auto;
  max-width: 1040px;
}

#case.post .case-overview .hero {
  padding: 60px 70px;
  background-color: #FFFFFF;
  box-shadow: 0px 4px 30px 8px rgba(90, 90, 90, 0.07);
  border-radius: 8px;
}

.case-overview .hero .top {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 75px;
  flex-wrap: nowrap;
  border-bottom: 1px solid #EDEDED;
  padding-bottom: 80px;
}

.case-overview .hero .top .featured-img { 
}

.case-overview .hero .top .featured-img img {
  width: auto;
  max-width: 220px;
  height: auto;
}

.case-overview .hero .top h1 {
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.45;
}

.case-overview .hero .top h2 {
  font-size: 1.125rem;  /* 18px */
  line-height: 1.45;
  color: var(--light-blue);
  margin-top: 10px;
}

.case-overview .hero .top .tags {
  margin-top: 20px;
  display: flex;
  grid-gap: 10px;
  flex-wrap: wrap;
}

.case-overview .hero .top .tags .tag {
    background: #A6A6A6;
    border-radius: 3px;
    color: var(--white);
    font-size: 12px;
    line-height: 2.0;
    padding: 2px 21.5px;
    width: fit-content;
}

.case-overview .hero .middle {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  column-gap: 95px;
  row-gap: 5px;
  padding: 40px 27.5px;
}

.case-overview .hero .middle .info {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  width: calc(50% - 47.5px);
}

.case-overview .hero .middle .info .title {
  width: 7.143em;
  font-size: .875rem;  /* 14px */
  line-height: 1.8;
}

.case-overview .hero .middle .info .detail {
  width: calc(100% - 6.25em);
  font-size: .875rem;  /* 14px */
  line-height: 1.8;
}
.case-overview .hero .middle .info .detail a {
  transition: all 0.3s;
}

.case-overview .hero .middle .info .detail a:hover {
  opacity: 0.6; 
}

.case-overview .hero .bottom {
  padding: 40px 27.5px;
}

.case-overview .hero .bottom .interviewee {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  column-gap: 40px;
}

.case-overview .hero .bottom .interviewee figure {
  margin-left: auto;
  margin-right: auto;
}

.case-overview .hero .bottom .interviewee figure img {
  width: 16.625em;
  height: auto;
}

.case-overview .hero .bottom .interviewee .info {
  width: calc(100% - 16.625em);
}

.case-overview .hero .bottom .interviewee .info .kicker {
  font-size: .875rem;  /* 14px */
  line-height: 1.45;
}

.case-overview .hero .bottom .interviewee .info .title {
  font-size: 1rem;  /* 16px */
  line-height: 1.45;
  margin-top: 5px;
}
  
.case-overview .hero .bottom .interviewee .info .description {
  font-size: .875rem;  /* 14px */
  line-height: 2.0;
  margin-top: 20px;
}

.case-overview .outline {
  margin-top: 90px;
}

.case-overview .outline .info {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  width: 100%;
  margin-bottom: 40px;
}

.case-overview .outline .info:last-child {
  margin-bottom: 0;
}

.case-overview .outline .info .title {
  font-size: 1rem;  /* 16px */
  line-height: 1.45;
  width: 14.375em;
}

.case-overview .outline .info .detail {
  font-size: 1.125rem;  /* 18px */
  line-height: 1.45;
  width: calc(100% - 12.778em);
}

.case-overview .outline .info .detail ul {
  line-height: 2;
  list-style: none;
  padding: 0;
  text-indent: -24px;
}

.case-overview .outline .info .detail ul p {
  display: inline;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin-left: -5px;
}

.case-overview .outline .info .detail ul li {
  margin-left: 23px;
  margin-bottom: 10px;
  line-height: 1.45;
}

.case-overview .outline .info .detail ul > li::before {
  content: "";
  width: 15px;
  height: 15px;
  display: inline-block;
  background-color: var(--light-blue);
  border-radius: 100%;
  position:  relative;
  top: 2px;
  margin-right: 8px;
}

@media screen and (max-width: 1024px) {
  #case.post .case-overview {
    padding-top:0;
    padding-bottom: 0;
  }
  
  #case.post .case-overview .hero {
    background-color: transparent;
    box-shadow: none;
    border-radius: initial;
    padding: 60px 0;
  }
  
  .case-overview .hero .top {
    flex-direction: column;
    margin-left: -20px;
    margin-right: -20px;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 40px;
  }
  
  .case-overview .hero .top figure {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
  }
  
  .case-overview .hero .middle {
    padding: 40px 0 20px;
    flex-direction: column;
    row-gap: 15px;
  }
  
  .case-overview .hero .middle .info {
    width: 100%;
  }
  
  .case-overview .hero .middle .info .detail a {
    word-break: break-word;
  }
  
  .case-overview .hero .bottom {
    padding: 0;
  }
  
  .case-overview .hero .bottom .interviewee {
    flex-wrap: wrap;
    flex-direction: column;
  }
  
  .case-overview .hero .bottom .interviewee .info {
    width: 100%;
    margin-top: 20px;
  }
  
  .case-overview .outline {
    background-color: #F8FBFF;
    margin-top: 0;
    padding-top: 60px;
    margin-left: -20px;
    margin-right: -20px;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 60px;
  }
  
  .case-overview .outline .info {
    flex-wrap: wrap;
    flex-direction: column;
  }
  
  .case-overview .outline .info .title, .case-overview .outline .info .detail {
    width: 100%;
  }
  .case-overview .outline .info .title {
    margin-bottom: 10px;
  }
  
  .case-overview .outline .info .detail {
    font-size: .9375rem;  /* 15px */
  }
}

/* インタビュー部分 */
#case.post .main-contents {
}

#case.post .main-contents .main-contents-wrapper {
  margin: 0 auto;
  max-width: 1100px;
  padding: 90px 100px;
  border-bottom: 1px solid #EDEDED;
}

#case.post .main-contents *:first-child {
  margin-top: 0;
}

#case.post .main-contents *:last-child {
  margin-bottom: 0;
}

#case.post .main-contents *:last-child > * > * {
  margin-bottom: 0; /* 最下部にflexが来た場合のマージン調整 */
}

#case.post .main-contents h2 {
  font-size: 1.75rem;  /* 28px */
  font-weight: 700;
  line-height: 1.45;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--blue);
  margin-top: 70px;
  margin-bottom: 40px;
}

#case.post .main-contents h3 {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.45;
  padding: 8px 20px;
  background-color: #F8F8F8;
  margin-bottom: 40px;
}

#case.post .main-contents h2 + h3 {
  margin-top: 50px;
}

#case.post .main-contents h3:not(h2 + h3) {
  margin-top: 70px;
}

#case.post .main-contents h4 {
  font-size: 1.125rem;  /* 18px */
  font-weight: 700;
  line-height: 1.4;
  margin-top: 50px;
  margin-bottom: 40px;
}

#case.post .main-contents h5 {
  font-size: 1rem;  /* 16px */
  font-weight: 700;
  line-height: 1.4;  
  margin-top: 50px;
  margin-bottom: 30px;
}

#case.post .main-contents h6 {
  font-size: 1rem;  /* 16px */
  font-weight: 400;
  line-height: 1.4;
  color: var(--light-blue);
  margin-top: 50px;
  margin-bottom: 30px;
}

#case.post .main-contents p {
  font-size: 1rem;  /* 16px */
  font-weight: 400;
  line-height: 2;
  color: var(--dark-gray);
  margin-top: 30px;
  margin-bottom: 30px;
}

#case.post .main-contents ul {
  line-height: 2;
  list-style: none;
  margin: 40px 0;
  padding: 0;
  text-indent: -24px;
}

#case.post .main-contents ul p {
  display: inline;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin-left: -5px;
}

#case.post .main-contents ul li {
  margin-left: 23px;
  margin-bottom: 10px;
}

#case.post .main-contents ul > li::before {
  content: "";
  width: 15px;
  height: 15px;
  display: inline-block;
  background-color: var(--light-blue);
  border-radius: 100%;
  position:  relative;
  top: 2px;
  margin-right: 8px;
}

#case.post .main-contents ul ul {
  margin-top: 10px;
  margin-left: 33px;
  text-indent: -20px;
}

#case.post .main-contents ul ul li {
  margin-left: 0;
  border-radius: 50%;
  box-sizing: border-box;
  position: relative;
  background: var(--white);
}

#case.post .main-contents ul ul li::before {
  border: 2px solid var(--light-blue);
  border-radius: 50%;
  box-sizing: border-box;
  content: "";
  height: 10px;
  position: relative;
  top: 0;
  background: white;
  width: 10px;
}

#case.post .main-contents ol {
  line-height: 2;
  counter-reset: ol-li;
  margin: 0 0 40px 0;
  text-indent: -22px;
}


#case.post .main-contents ol li {
  margin-left: 23px;
  margin-bottom: 10px;
}

#case.post .main-contents ol li::before {
  font-weight: 700;
  counter-increment: ol-li;
  content: counter(ol-li)". ";
  color: var(--light-blue);
}

#case.post .main-contents a {
  color: var(--light-blue);
  border-bottom: 1px solid var(--light-blue);
  transition: border-bottom 0.1s
}

#case.post .main-contents a:hover {
  border-bottom: transparent 1px solid;
}

#case.post .main-contents img {
  width: 100% !important;
}

#case.post .main-contents figure {
  width: 100%;
  margin: 40px 0;
}

#case.post .main-contents figcaption {
  font-size: .875rem;  /* 14px */
  color: var(--dark-gray);
  line-height: 1.5;
  margin-top: 20px;
}

#case.post .main-contents hr {
  border-color: #C9CED1;
}

#case.post .main-contents pre {
  line-height: 1.5;
  background: #2D2D2D;
  margin: 40px 0;
  border-radius: 0;
}

#case.post .main-contents pre code {
  margin: 0;
  padding: 0;
}

#case.post .main-contents code {
  display: block;
  padding: 20px;
  background: #2d2d2d;
  margin: 40px 0;
  border-radius: 0;
}

#case.post .main-contents strong {
  background: linear-gradient(transparent 65%, #C9ECFF 0);
  border-radius: 2px;
  font-weight: 700;
}

#case.post .main-contents blockquote {
  position: relative;
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  background: #F5F5F5;
  margin: 40px 0;
  padding: 39px 30px;
}

#case.post .main-contents blockquote::before {
  content: "";
  position: absolute;
  top: 15px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2214%22%20viewBox%3D%220%200%2020%2014%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M18.5714%201.78246e-06L14.2857%201.40779e-06L11.4286%205.6L11.4286%2014L20%2014L20%205.6L15.7143%205.6L18.5714%201.78246e-06ZM7.14286%207.83341e-07L2.85714%204.08672e-07L-1.173e-06%205.6L-1.90735e-06%2014L8.57143%2014L8.57143%205.6L4.28571%205.6L7.14286%207.83341e-07Z%22%20fill%3D%22%23C9CED1%22%2F%3E%3C%2Fsvg%3E");
  width: 20px;
  height: 14px;
}

#case.post .main-contents blockquote::after {
  content: "";
  position: absolute;
  bottom: 15px;
  right: 30px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2214%22%20viewBox%3D%220%200%2020%2014%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M1.42857%2014H5.71429L8.57143%208.4L8.57143%200L0%200L0%208.4H4.28571L1.42857%2014ZM12.8571%2014H17.1429L20%208.4V0L11.4286%200L11.4286%208.4H15.7143L12.8571%2014Z%22%20fill%3D%22%23C9CED1%22%2F%3E%3C%2Fsvg%3E");
  width: 20px;
  height: 14px;
}

#case.post .main-contents table {
  width: 100% !important;
  height: auto !important;
  table-layout: fixed;
  margin-top: 40px;
  margin-bottom: 70px;
  display: block;
  overflow-x: auto;
}

#case.post .main-contents table tbody {
  width: 100%;
  display: table;
}

#case.post .main-contents table tr th {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  padding: 15px 12px;
  border: 1px solid #DDDDDD;
  background: #F8FBFF;
  vertical-align: middle;
}

#case.post .main-contents table tr td {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  padding: 15px 12px;
  border: 1px solid #ddd;
  vertical-align: middle;
}

#case.post .main-contents table p {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  margin: 0;
}

#case.post .main-contents table ul {
  margin: 0 !important;
}

#case.post .main-contents table ul ul {
  margin-left: 20px !important;
  margin-top: 10px !important;
}

#case.post .main-contents table ol {
  margin: 0 !important;
}

#case.post .main-contents .flex {
  column-gap: 50px;
  margin-bottom: 40px;
  margin-top: 40px;
}

#case.post .main-contents .flex.reverse {
  flex-direction: row-reverse;
}

#case.post .main-contents .flex > * {
  width: 50%;
}

#case.post .main-contents .flex > figure {
  margin-top: 0;
}

@media screen and (max-width: 1024px) {
  #case.post .main-contents .main-contents-wrapper {
    padding: 60px 20px;
  }
  
  #case.post .main-contents h2 {
    font-size: 1.25rem;  /* 20px */
    margin-top: 60px;
  }

  #case.post .main-contents h3 {
    font-size: 1.125rem !important;  /* 18px */
    margin-bottom: 30px;
    padding: 6px 10px;
  }

  #case.post .main-contents h4 {
    font-size: 1rem;  /* 16px */
    margin-top: 40px;
    margin-bottom: 30px;
  }

  #case.post .main-contents h5 {
    font-size: .9375rem;  /* 15px */
    margin-top: 40px;
    margin-bottom: 30px;
  }

  #case.post .main-contents h6 {
    font-size: .9375rem;  /* 15px */
    margin-top: 40px;
    margin-bottom: 30px;
  }

  #case.post .main-contents pre {
    margin: 30px 0;
  }

  #case.post .main-contents code {
    margin: 30px 0;
  }

  #case.post .main-contents blockquote {
    margin: 30px 0;
    padding: 39px 20px;
  }

  #case.post .main-contents table tr th, 
  #case.post .main-contents table tr td {
    font-size: .75rem;  /* 12px */
  }

  #case.post .main-contents ul {
    font-size: .9375rem;  /* 15px */
    margin: 30px 0;
    text-indent: -20px;
  }

  #case.post .main-contents ul ul {
    margin-left: 14px;
  }

  #case.post .main-contents p {
    font-size: .9375rem;  /* 15px */
    line-height: 1.8;
    margin: 30px 0;
  }
  
  #case.post .main-contents .flex {
    display: block;
    margin-top: 30px;
    margin-bottom: 30px;
  }
  
  #case.post .main-contents .flex > * {
    width: 100%;
  }
  
  #case.post .main-contents .flex > *:first-child {
    margin-bottom: 30px;
  }
  
  #case.post .main-contents .flex > figure {
    margin-top: 0;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1024px) {
  #case.post .main-contents .flex .contents *:first-child {
    margin-top: 0;
  }
}
  
/* 関連導入事例 */
#case.post .related-cases {
  padding-top: 90px;
}
#case.post .related-cases .related-cases-wrapper {
  margin: 0 auto;
  max-width: 1440px;
  padding: 0 120px;
}

#case.post .related-cases h2 {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 40px;
}

#case.post .related-cases .posts {
  display: flex;
  column-gap: 40px;
}

#case.post .related-cases .posts .post {
  width: 50%;
}
#case.post .related-cases .posts .post > a, #case.post .related-cases .posts .post > div {
  display: flex;
  flex-direction: column;
  height: 100%;
}

#case.post .related-cases .posts .post .detail {
  position: relative;
  flex-grow: 1;
  width: 100%;
  display: flex;
  background-color: #F8FBFF;
  column-gap: 30px;
  padding: 40px 30px;
  transition: all 0.3s;
}

#case.post .related-cases .posts .post > a:hover .detail {
  background-color: #EEF2F8;
}

#case.post .related-cases .posts .post .detail img {
  width: auto;
  height: auto;
  max-height: 94px;
}

#case.post .related-cases .posts .post .detail .info {
  width: 100%;
}

#case.post .related-cases .posts .post .detail .info .title {
  font-size: 1rem;  /* 16px */
  font-weight: 700;
  line-height: 1.45;
  flex-grow: 1;
}

#case.post .related-cases .posts .post .detail .info .summary {
  font-size: 1rem;  /* 16px */
  line-height: 1.45;
  margin-top: 10px;
  flex-grow: 2;
}

#case.post .related-cases .posts .post .detail .info .readmore {
  align-items: center;
  display: flex;
  width: fit-content;
  justify-content: flex-end;
  margin-top: 25px;
  margin-left: auto;
  width: 123px;
  height: 40px;
  position: relative;
}

#case.post .related-cases .posts .post .detail .info .readmore .readmore-text {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  color: var(--blue);
  position: absolute;
  left: 0;
}

#case.post .related-cases .posts .post .detail .info .readmore span.readmore-btn-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 100%;
  background: var(--white);
  border: 1px solid #1B4698;
  transition: width 0.3s, height 0.3s, background 0.3s;
}

#case.post .related-cases .posts .post > a:hover .info .readmore span.readmore-btn-inner {
  width: 40px;
  height: 40px;
  background: var(--blue);
}

#case.post .related-cases .posts .post .detail .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 1px;
}

#case.post .related-cases .posts .post > a:hover .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 0px;
}

#case.post .related-cases .posts .post .detail .info .readmore span.readmore-btn-inner span::before, #case.post .related-cases .posts .post .detail .info .readmore span.readmore-btn-inner span::after {
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: width 0.32s, left 0.32s;
}

#case.post .related-cases .posts .post .detail .info .readmore span.readmore-btn-inner span::before {
  background: #1B4698;
  height: 1px;
  width: 12px;
}

#case.post .related-cases .posts .post > a:hover .info .readmore span.readmore-btn-inner span::before {
  background: var(--white);
  top: 0.01px;
  width: 22px;
  left: -10px;
}

#case.post .related-cases .posts .post .detail .info .readmore span.readmore-btn-inner span::after {
  left: 0px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #1B4698;
  border-right: 1px solid #1B4698;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#case.post .related-cases .posts .post > a:hover .info .readmore span.readmore-btn-inner span::after {
  border-top: 1px solid var(--white);
  border-right: 1px solid var(--white);
  left: 3px;
  width: 8px;
  height: 8px;
  top: -3.5px;
}

#case.post .related-cases .posts .post .service {
  width: 100%;
  display: flex;
  align-items: center;
  column-gap: 20px;
  background-color: #F0F4F5;
  padding: 20px 30px;
}

#case.post .related-cases .posts .post .service .title {
  font-size: .875rem;  /* 14px */
  font-weight: 700;
  line-height: 1.8;
  color: #595959;
}

#case.post .related-cases .posts .post .service .tags {
  display: flex;
  grid-gap: 10px;
  flex-wrap: wrap;
}

#case.post .related-cases .posts .post .service .tags .tag {
  background: #A6A6A6;
  border-radius: 3px;
  color: var(--white);
  font-size: 12px;
  line-height: 2.0;
  padding: 2px 21.5px;
  width: fit-content;
}

@media screen and (max-width: 1024px) {
  #case.post .related-cases {
    padding-top: 60px;
  }
  
  #case.post .related-cases .related-cases-wrapper {
    padding: 0 20px;
  }
  
  #case.post .related-cases .posts {
    flex-direction: column;
    margin-left: -20px;
    margin-right: -20px;
  }
  
  #case.post .related-cases .posts .post {
    width: 100%;
    margin-bottom: 40px;
  }
  
  #case.post .related-cases .posts .post:last-child {
    margin-bottom: 0;
  }
  
  #case.post .related-cases .posts .post .detail {
    flex-direction: column;
  }

  #case.post .related-cases .posts .post .detail .img {
    margin: 0 auto;
  }
  
  #case.post .related-cases .posts .post .detail .img img {
    max-height: initial;
  }

  #case.post .related-cases .posts .post .detail .info {
    margin-top: 50px;
  }

  #case.post .related-cases .posts .post .service {
    align-items: flex-start;
    flex-direction: column;
    padding: 30px 20px;
  }

  #case.post .related-cases .posts .post .service .title {
    margin-bottom: 15px;
  }
}

/* 事例一覧に戻るボタン */
#case.post .back {
  align-items: center;
  display: flex;
  justify-content: center;
}

#case.post .related-cases .posts + .back {
  margin-top: 60px;
}

#case.post .back a {
  background-color: var(--white);
  border: 1px solid var(--gray);
  border-radius: 5px;
  color: var(--black);
  display: inline-block;
  font-size: 16px;
  line-height: 1.5;
  outline: none;
  padding: 23px;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: background-color .3s,color .3s;
  width: 330px;
}

#case.post .back a:hover {
  color: var(--white);
  background-color: var(--blue);
  border: 1px solid var(--blue);
}

#case.post .back a::before, #case.post .back a::after {
  content: "";
  position: absolute;
  transition: right 0.2s;
}

#case.post .back a::before {
  background: #092241;
  height: 1px;
  width: 20px;
  right: 30px;
  top: 50%;
}

#case.post .back a:after {
  border-right: 1px solid #092241;
  border-top: 1px solid #092241;
  height: 5px;
  right: 30px;
  top: calc(50% - 2px);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

#case.post .back a:hover:before {
  background: var(--white);
  right: 25px;
}

#case.post .back a:hover:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  right: 25px;
}

@media screen and (max-width: 1024px) {
  #case.post .related-cases .posts + .back {
    margin-top: 40px;
  }
}
/* ------------------------------------------------------------------------------------
News List
------------------------------------------------------------------------------------ */

/* common */
#listing.news .wrapper section.lists {
  padding: 90px 0;
}

#listing.news .lists-wrapper {
  margin: 0 auto;
  max-width: 1440px;
  padding: 0 100px;
}

#listing.news .lists-wrapper .contents {
  display: flex;
  justify-content: center;
  width: 100%;
}

#listing.news .lists-wrapper .contents .main-content {
  max-width: 865px;
  min-width: 0;
  flex-grow: 1;
}

#listing.news .lists-wrapper .contents .side-content {
  position: relative;
  min-width: 315px;
  margin-left: 83px;
}
#listing.news .lists-wrapper .contents .side-content .tag-list {
  display: block;
}

/* main-content */
#listing.news .lists-wrapper .main-content .posts article.post:first-child {
  border-top: 1px solid #EDEDED;  
}

#listing.news .lists-wrapper .main-content .posts article.post > a {
  padding: 30px 20px;
  border-bottom: 1px solid #EDEDED;
  display: flex;
  column-gap: 20px;
}

#listing.news .lists-wrapper  .posts article.post .time {
  font-size: 1.125rem;  /* 18px */
  line-height: 1.4;
}


#listing.news .lists-wrapper .posts article.post .meta {
  display: flex;
  flex-direction: column;
  grid-row-gap: 10px;
}

#listing.news .lists-wrapper .posts article.post .categories .tags {
  grid-column-gap: 16px;
  grid-row-gap: 10px;
  display: flex;
  flex-wrap: wrap;
}

#listing.news .lists-wrapper .posts article.post .categories .tags .tag {
  background: var(--light-blue);
  border-radius: 3px;
  color: var(--white);
  font-size: .6875rem;  /* 11px */
  letter-spacing: 1.1px;
  line-height: 2;
  padding: 1px 12px;
  width: fit-content;
}

#listing.news .lists-wrapper .posts article.post .title {
  font-size: 1rem;
  letter-spacing: 1.6px;
  line-height: 1.4;
}

#listing.news .lists-wrapper .posts article.post .title h3 {
  display: inline;
  background: linear-gradient(var(--black),var(--black)) 0 100%/0 1px no-repeat;
  position: relative;
  transition: background .3s;
}

#listing.news .lists-wrapper .main-content .posts article.post > a:hover .title h3 {
  background-size: 100% 1px;
}

/* pagenation */
#listing.news .lists-wrapper ul.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 70px;
}

#listing.news .lists-wrapper ul.pagination li.double-arrow-item:first-child a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

#listing.news .lists-wrapper ul.pagination li.double-arrow-item:last-child a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 8px;
  margin-right: 0;
  transition: background 0.3s;
}

#listing.news .lists-wrapper ul.pagination li.double-arrow-item a:hover {
  background: var(--blue);
}

#listing.news .lists-wrapper ul.pagination li.double-arrow-item a:hover svg path {
  fill: var(--white);
}

#listing.news .lists-wrapper ul.pagination li.left-arrow-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 40px;
  transition: background 0.3s;
}

#listing.news .lists-wrapper ul.pagination li.num-item a,
#listing.news .lists-wrapper ul.pagination li.num-item span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--blue);
  background: var(--white);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

#listing.news .lists-wrapper ul.pagination li.num-item a:hover {
  color: var(--white);
  background: var(--blue);
  border: 1px solid transparent;
}


#listing.news .lists-wrapper ul.pagination li.num-item.current span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--white);
  background: var(--blue);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
}

#listing.news .lists-wrapper ul.pagination li.right-arrow-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 32px;
  transition: background 0.3s;
}

#listing.news .lists-wrapper ul.pagination li.left-arrow-item a:hover,
#listing.news .lists-wrapper ul.pagination li.right-arrow-item a:hover {
  background: var(--blue);
}

#listing.news .lists-wrapper ul.pagination li.left-arrow-item a:hover svg path,
#listing.news .lists-wrapper ul.pagination li.right-arrow-item a:hover svg path {
  fill: var(--white);
}

/* sidebar */
.news aside.side-content section + section {
  margin-top: 40px;
}
.news aside.side-content section h2 {
  border-bottom: 2px solid var(--blue);
  color: #000426;
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 25px;
  padding-bottom: 10px;
}

.news aside.side-content section .post {
  position: relative;
}

.news aside.side-content section .post a {
  display: block;
  padding: 15px 15.5px;
}

.news aside.side-content section.tag-list .post a {
  color: var(--light-blue);
}

.news aside.side-content section .post a .title h3 {
  display: inline;
  position: relative;
  transition: background .3s;
}

.news aside.side-content section.archive .post a .title h3 {
  background: linear-gradient(var(--black),var(--black)) 0 100%/0 1px no-repeat;
}

.news aside.side-content section.tag-list .post a .title h3 {
  background: linear-gradient(var(--light-blue),var(--light-blue)) 0 100%/0 1px no-repeat;
}

.news aside.side-content section .post > a:hover .title h3 {
  background-size: 100% 1px;
}

.news aside.side-content section .post a .readmore-btn {
  align-items: center;
  display: flex;
  width: 28px;
  height: 28px;
  justify-content: center;
  top: 50%;
  left: calc(100% - 48px);
  margin-left: auto;
  position: absolute;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}


.news aside.side-content section .post a .readmore-btn span.readmore-btn-inner {
  align-items: center;
  background: var(--white);
  border: 1px solid #0085ce;
  border-radius: 100%;
  display: flex;
  height: 20px;
  justify-content: center;
  position: absolute;
  transition: width .3s,height .3s,background .3s;
  width: 20px;
}

.news aside.side-content section .post a:hover .readmore-btn span.readmore-btn-inner {
  background: var(--blue);
  border: 1px solid #00479d;
  height: 28px;
  width: 28px;
}

.news aside.side-content section .post a .readmore-btn span.readmore-btn-inner span {
  align-items: center;
  display: flex;
  justify-content: center;
  position: relative;
  top: 1px;
}

.news aside.side-content section .post a .readmore-btn span.readmore-btn-inner span:before {
  content: "";
  margin: auto;
  position: absolute;
  transition: width .32s,left .32s;
  vertical-align: middle;
  background: #0085ce;
  height: 1px;
  width: 9.5px;
}

.news aside.side-content section .post a:hover .readmore-btn span.readmore-btn-inner span:before {
  background: var(--white);
  width: 12px;
}

.news aside.side-content section .post a .readmore-btn span.readmore-btn-inner span:after {
  content: "";
  margin: auto;
  position: absolute;
  transition: width .32s,left .32s;
  vertical-align: middle;
  border-right: 1px solid #0085ce;
  border-top: 1px solid #0085ce;
  height: 4px;
  left: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 4px;
}

.news aside.side-content section .post a:hover .readmore-btn span.readmore-btn-inner span:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  height: 5px;
  width: 5px;
}

@media screen and (max-width: 1024px) {
  #listing .wrapper {
    padding-top: 72px;
  }

  #listing.news .wrapper section.lists {
    padding: 60px 0;
  }
  
  #listing.news .lists-wrapper {
    padding: 0 20px;
  }
  
  #listing.news .lists-wrapper .contents {
    flex-wrap: wrap;
  }
  
  #listing.news .lists-wrapper .contents .main-content {
    max-width: 100%;
  }

  #listing.news .lists-wrapper .contents .side-content {
    margin-left: 0;
    margin-top: 60px;
    min-width: unset;
    width: 100%;
  }
  
  #listing.news .lists-wrapper .main-content .posts article.post > a {
    flex-wrap: wrap;
    grid-row-gap: 10px;
    padding: 20px 0;
  }
  
  #listing.news .lists-wrapper .posts article.post .time {
    width: 100%;
    font-size: .6875rem;  /* 11px */
  }

  #listing.news .lists-wrapper .posts article.post .title {
    font-size: .875rem;  /* 14px */
    line-height: 2.0;
    letter-spacing: 1.4px;
  }
  
  /*  pagenation  */
  #listing.news .lists-wrapper ul.pagination {
    margin-top: 60px;
    margin-bottom: 60px;
    grid-column-gap: 5px;
  }

  #listing.news .lists-wrapper ul.pagination li.double-arrow-item:first-child a {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.news .lists-wrapper ul.pagination li.double-arrow-item:last-child a {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }

  #listing.news .lists-wrapper ul.pagination li.left-arrow-item a {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.news .lists-wrapper ul.pagination li.num-item a, 
  #listing.news .lists-wrapper ul.pagination li.num-item span {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.news .lists-wrapper ul.pagination li.num-item.current span {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.news .lists-wrapper ul.pagination li.right-arrow-item a {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }

}

/* ------------------------------------------------------------------------------------
News Post
------------------------------------------------------------------------------------ */

#post.news .wrapper section.contents aside.side-content section.tag-list {
  margin-top: 0;
}

#post.news .wrapper section.contents article.main-content footer section.meta {
  border-top: none;
  padding-top: 0;
}

#post.news .wrapper section.contents article.main-content footer .back a {
  display: flex;
  align-items: center;
  justify-content:center;
  width: 290px;
  height: 70px;
  border-radius: 5px;
  background: var(--blue);
  color: var(--white);
  font-size: 1.25rem;  /* 20px */
  line-height: 1.4;
  letter-spacing: 2.0px;
  margin: 0 auto;
  transition: background .3s;
}

#post.news .wrapper section.contents article.main-content footer .back a:hover {
  background: var(--light-blue);
}

@media screen and (max-width: 1024px) {
  #post.news .wrapper section.contents article.main-content footer .back a {
    font-size: 1rem;
    letter-spacing: 1.6px;
  }
}
/* ------------------------------------------------------------------------------------
Seminar List
------------------------------------------------------------------------------------ */

/* common */
#listing.seminar .wrapper section.lists {
  padding: 90px 0;
}

#listing.seminar .lists-wrapper {
  margin: 0 auto;
  max-width: 1440px;
  padding: 0 130px;
}

#listing.seminar .lists-wrapper .contents {
  display: flex;
  column-gap: 80px;
  justify-content: center;
  width: 100%;
}

#listing.seminar .lists-wrapper .contents .main-content {
  width: 785px;
}

#listing.seminar .lists-wrapper .contents .side-content {
  position: relative;
  width: 315px;
}

/* main-content */
#listing.seminar .main-content .post {
  margin-top: 24px;
}

#listing.seminar .main-content .post:first-child {
  margin-top: 0;
}

#listing.seminar .main-content .post a {
  position: relative;
  display: block;
  padding: 40px 60px;
  background-color: #F8FBFF;
  border-radius: 3px;
  transition: background 0.3s;
}

#listing.seminar .main-content .post a:hover {
  background-color: #EEF2F8;
}


#listing.seminar .main-content .post .post__inner {
  position: relative;
  display: block;
  padding: 40px;
  background-color: #F8FBFF;
  border-radius: 3px;
}

@media ( max-width: 819px ){
  #listing.seminar .main-content .post .post__inner {
    padding: 40px 20px;  
  }
}

#listing.seminar .main-content .post ul.tags {
  grid-column-gap: 16px;
  grid-row-gap: 8px;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

#listing.seminar .main-content .post ul.tags li {
  background-color: var(--light-blue);
  border: 1px solid var(--light-blue);
  border-radius: 3px;
  color: var(--white);
  display: flex;
  font-size: .6875rem;  /* 11px */
  line-height: 2;
  padding: 1px 12px;
  text-decoration: none;
}

#listing.seminar .main-content .post ul.tags li.gray {
  background-color: var(--gray);
  border: 1px solid var(--gray);
}

#listing.seminar .main-content .post ul.tags li.red {
  background-color: var(--red);
  border: 1px solid var(--red);
}

#listing.seminar .main-content .post .info .title h3 {
  font-size: 1.125rem;  /* 18px */
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 30px;
}

#listing.seminar .main-content .post .info .box {
  display: flex;
  column-gap: 40px;
}

#listing.seminar .main-content .post .info .featured-img {
  max-width: 250px;
}

#listing.seminar .main-content .post .info .featured-img img {
  width: 250px;
  height: 140px;
  -o-object-fit: cover;
  object-fit: contain;
}

#listing.seminar .outline {
  width: calc(100% - 290px);
}

#listing.seminar .outline dl {
  display: flex;
  flex-wrap: wrap;
  column-gap: 10px;
  width: 100%;
}

#listing.seminar .outline dt {
  width: calc(30% - 10px);
  font-size: .875rem;  /* 14px */
  font-weight: 700;
  line-height: 1.8;
}

#listing.seminar .outline dd {
  width: 70%;
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  color: var(--dark-gray);
}

#listing.seminar .outline dd.lh-mid{
  line-height: 1.8;
}

@media ( max-width: 819px ){
  #listing.seminar .outline dd.lh-mid{
    line-height: 1.5;
  }
}

/* readmore */
#listing.seminar .main-content .post .readmore {
  align-items: center;
  display: flex;
  width: 40px;
  justify-content: flex-end;
  margin-top: 10px;
  margin-left: auto;
  height: 40px;
  position: relative;
  right: -30px;
}

#listing.seminar .main-content .post .readmore span.readmore-btn-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 100%;
  background: var(--white);
  border: 1px solid #1B4698;
  transition: width 0.3s, height 0.3s, background 0.3s;
}

#listing.seminar .main-content .post > a:hover .readmore span.readmore-btn-inner {
  width: 40px;
  height: 40px;
  background: var(--blue);
}

#listing.seminar .main-content .post .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 1px;
}

#listing.seminar .main-content .post > a:hover .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 0px;
}

#listing.seminar .main-content .post .readmore span.readmore-btn-inner span::before, #listing.seminar .main-content .post .readmore span.readmore-btn-inner span::after {
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: width 0.32s, left 0.32s;
}

#listing.seminar .main-content .post .readmore span.readmore-btn-inner span::before {
  background: #1B4698;
  height: 1px;
  width: 12px;
}

#listing.seminar .main-content .post > a:hover .readmore span.readmore-btn-inner span::before {
  background: var(--white);
  top: 0.01px;
  width: 22px;
  left: -10px;
}

#listing.seminar .main-content .post .readmore span.readmore-btn-inner span::after {
  left: 0px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #1B4698;
  border-right: 1px solid #1B4698;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#listing.seminar .main-content .post > a:hover .readmore span.readmore-btn-inner span::after {
  border-top: 1px solid var(--white);
  border-right: 1px solid var(--white);
  left: 3px;
  width: 8px;
  height: 8px;
  top: -3.5px;
}



/* pagenation */
#listing.seminar .lists-wrapper ul.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 70px;
}

#listing.seminar .lists-wrapper ul.pagination li.double-arrow-item:first-child a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

#listing.seminar .lists-wrapper ul.pagination li.double-arrow-item:last-child a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 8px;
  margin-right: 0;
  transition: background 0.3s;
}

#listing.seminar .lists-wrapper ul.pagination li.double-arrow-item a:hover {
  background: var(--blue);
}

#listing.seminar .lists-wrapper ul.pagination li.double-arrow-item a:hover svg path {
  fill: var(--white);
}

#listing.seminar .lists-wrapper ul.pagination li.left-arrow-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 40px;
  transition: background 0.3s;
}

#listing.seminar .lists-wrapper ul.pagination li.num-item a,
#listing.seminar .lists-wrapper ul.pagination li.num-item span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--blue);
  background: var(--white);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

#listing.seminar .lists-wrapper ul.pagination li.num-item a:hover {
  color: var(--white);
  background: var(--blue);
  border: 1px solid transparent;
}


#listing.seminar .lists-wrapper ul.pagination li.num-item.current span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--white);
  background: var(--blue);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
}

#listing.seminar .lists-wrapper ul.pagination li.right-arrow-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 32px;
  transition: background 0.3s;
}

#listing.seminar .lists-wrapper ul.pagination li.left-arrow-item a:hover,
#listing.seminar .lists-wrapper ul.pagination li.right-arrow-item a:hover {
  background: var(--blue);
}

#listing.seminar .lists-wrapper ul.pagination li.left-arrow-item a:hover svg path,
#listing.seminar .lists-wrapper ul.pagination li.right-arrow-item a:hover svg path {
  fill: var(--white);
}

/* sidebar */
#seminar aside.side-content section + section {
  margin-top: 40px;
}
#seminar aside.side-content section h2 {
  border-bottom: 2px solid var(--blue);
  color: #000426;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 25px;
  padding-bottom: 10px;
}

#seminar aside.side-content section .post {
  position: relative;
}

#seminar aside.side-content section .post a {
  display: block;
  padding: 15px 15.5px;
}

#seminar aside.side-content section.tag-list .post a {
  color: var(--light-blue);
}

#seminar aside.side-content section .post a .title h3 {
  display: inline;
  position: relative;
  transition: background .3s;
}

#seminar aside.side-content section.archive .post a .title h3 {
  background: linear-gradient(var(--black),var(--black)) 0 100%/0 1px no-repeat;
}

#seminar aside.side-content section.tag-list .post a .title h3 {
  background: linear-gradient(var(--light-blue),var(--light-blue)) 0 100%/0 1px no-repeat;
}

#seminar aside.side-content section .post > a:hover .title h3 {
  background-size: 100% 1px;
}

#seminar aside.side-content section .post a .readmore-btn {
  align-items: center;
  display: flex;
  width: 28px;
  height: 28px;
  justify-content: center;
  top: 50%;
  left: calc(100% - 48px);
  margin-left: auto;
  position: absolute;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}


#seminar aside.side-content section .post a .readmore-btn span.readmore-btn-inner {
  align-items: center;
  background: var(--white);
  border: 1px solid #0085ce;
  border-radius: 100%;
  display: flex;
  height: 20px;
  justify-content: center;
  position: absolute;
  transition: width .3s,height .3s,background .3s;
  width: 20px;
}

#seminar aside.side-content section .post a:hover .readmore-btn span.readmore-btn-inner {
  background: var(--blue);
  border: 1px solid #00479d;
  height: 28px;
  width: 28px;
}

#seminar aside.side-content section .post a .readmore-btn span.readmore-btn-inner span {
  align-items: center;
  display: flex;
  justify-content: center;
  position: relative;
  top: 1px;
}

#seminar aside.side-content section .post a .readmore-btn span.readmore-btn-inner span:before {
  content: "";
  margin: auto;
  position: absolute;
  transition: width .32s,left .32s;
  vertical-align: middle;
  background: #0085ce;
  height: 1px;
  width: 9.5px;
}

#seminar aside.side-content section .post a:hover .readmore-btn span.readmore-btn-inner span:before {
  background: var(--white);
  width: 12px;
}

#seminar aside.side-content section .post a .readmore-btn span.readmore-btn-inner span:after {
  content: "";
  margin: auto;
  position: absolute;
  transition: width .32s,left .32s;
  vertical-align: middle;
  border-right: 1px solid #0085ce;
  border-top: 1px solid #0085ce;
  height: 4px;
  left: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 4px;
}

#seminar aside.side-content section .post a:hover .readmore-btn span.readmore-btn-inner span:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  height: 5px;
  width: 5px;
}
@media screen and (max-width: 1324px){
  #listing.seminar .lists-wrapper .contents {
    flex-wrap: wrap;
    flex-direction: column !important;
  }
  #listing.seminar .lists-wrapper {
    padding: 0 20px;
  }
  .side-content .hs-cta-embed{
    margin: 0 auto !important;                        
  }
  #listing.seminar .lists-wrapper .contents .main-content, #listing.seminar .lists-wrapper .contents .side-content{
    width: 100% !important;
  }
  #listing.seminar .lists-wrapper .contents .side-content{
    margin-top: 60px;
  }
}
@media screen and (max-width: 1024px) {
  #listing.seminar .wrapper {
    padding-top: 72px;
  }

  #listing.seminar .wrapper section.lists {
    padding: 60px 0;
  }

  #listing.seminar .lists-wrapper {
    padding: 0 20px;
  }

  #listing.seminar .lists-wrapper .contents {
    flex-wrap: wrap;
    flex-direction: column;
  }
  #listing.seminar .lists-wrapper .contents .side-content {
    margin-left: 0;
    min-width: unset;
    width: 100%;
  }

  #listing.seminar .lists-wrapper .main-content .posts article.post > a {
    flex-wrap: wrap;
    grid-row-gap: 10px;
    padding: 40px 20px;
  }

  #listing.seminar .main-content .post .info .box {
    flex-direction: column;
  }

  #listing.seminar .main-content .post .info .featured-img {
    max-width: initial;
    text-align: center;
  }

  #listing.seminar .main-content .post .info .featured-img img {
    width: 100%;
    height: auto;
  }

  #listing.seminar .outline {
    width: 100%;
    margin-top: 30px;
  }

  #listing.seminar .outline dl {
    flex-direction: column;
  }

  #listing.seminar .outline dt, #listing.seminar .outline dd {
    width: 100%;
  }

  #listing.seminar .outline dt {
    margin-bottom: 10px;
  }

  #listing.seminar .outline dd {
    margin-bottom: 20px;
  }

  #listing.seminar .outline dd:first-of-type {
    font-weight: 700;
  }

  #listing.seminar .outline dd:last-of-type {
    margin-bottom: 0;
  }

  #listing.seminar .main-content .post .readmore {
    right: initial;
  }

  /*  pagenation  */
  #listing.seminar .lists-wrapper ul.pagination {
    margin-top: 60px;
    grid-column-gap: 5px;
  }

  #listing.seminar .lists-wrapper ul.pagination li.double-arrow-item:first-child a {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.seminar .lists-wrapper ul.pagination li.double-arrow-item:last-child a {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }

  #listing.seminar .lists-wrapper ul.pagination li.left-arrow-item a {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.seminar .lists-wrapper ul.pagination li.num-item a, 
  #listing.seminar .lists-wrapper ul.pagination li.num-item span {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.seminar .lists-wrapper ul.pagination li.num-item.current span {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.seminar .lists-wrapper ul.pagination li.right-arrow-item a {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }

}

/* ------------------------------------------------------------------------------------
Seminar Post
------------------------------------------------------------------------------------ */

#post.seminar .wrapper section.contents aside.side-content section.tag-list {
  margin-top: 0;
}

#post.seminar .wrapper section.contents article.main-content footer section.meta {
  border-top: none;
  padding-top: 0;
}


/* 受付終了告知 */
#post.seminar .wrapper section.contents article.main-content footer .back a {
  display: flex;
  align-items: center;
  justify-content:center;
  width: fit-content;
  height: 70px;
  border-radius: 5px;
  background: var(--blue);
  color: var(--white);
  font-size: 1.25rem;  /* 20px */
  line-height: 1.45;
  margin: 0 auto;
  padding: 0 1.5em;
  transition: background .3s;
}

#post.seminar .wrapper section.contents article.main-content footer .back a:hover {
  background: var(--light-blue);
}

@media screen and (max-width: 1024px) {
  #post.seminar .wrapper section.contents article.main-content footer .back a {
    font-size: 1rem;  /* 16px */
  }
}

#post.seminar .wrapper section.contents article.main-content header.content-header .info {
  flex-direction: column;
}

#post.seminar .wrapper section.contents article.main-content ul.tags li.tag.status {
  border-radius: 3px;
  color: var(--white);
  display: flex;
  font-size: .6875rem;  /* 11px */
  line-height: 2;
  padding: 1px 12px;
  text-decoration: none;
}

#post.seminar .wrapper section.contents article.main-content ul.tags li.tag.status.gray { 
  background-color: var(--gray);
  border: 1px solid var(--gray);
}

#post.seminar .wrapper section.contents article.main-content ul.tags li.tag.status.red { 
  background-color: var(--red);
  border: 1px solid var(--red);
}

/* 受付終了メッセージ */
#post.seminar .notification {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content:center;
  height: 60px;
  background: var(--gray);
  color: var(--white);
  font-size: 1.25rem;  /* 20px */
  line-height: 1.45;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
  border-radius: 5px;
}

#post.seminar .notification.footer {
  margin-top: 50px;
}

/* form */
#post .seminar-form {
  box-shadow: 0px 4px 30px 8px rgba(90, 90, 90, 0.07);
  border-radius: 8px;
}

#post .seminar-form form {
  padding: 60px 40px;
}

#post .seminar-form form .form-privacy {
  font-size: .875rem !important;  /* 14px */
  margin-bottom: 25px !important;
}

#post .seminar-form form .form-privacy a:has(> img) {
  border-bottom: none !important;
}

#post .wrapper section.contents article.main-content .body .seminar-form form .form-privacy img {
  width: auto !important;
}

#post .seminar-form form ul {
  line-height: initial !important;
  list-style: none !important;
  margin: initial !important;
  text-indent: initial !important;
}

#post .seminar-form form li {
  margin-bottom: initial !important;
  margin-left: initial !important;
}

#post .seminar-form form li:before {
  content: none !important;
}

@media screen and (max-width: 1024px) {
  #post .seminar-form form {
    padding: 50px 20px;
  }

  #post .seminar-form form .form-privacy {
    font-size: .9375rem!important;  /* 15px */

  }
}

/* ------------------------------------------------------------------------------------
Seminar Sidebar
------------------------------------------------------------------------------------ */

#listing.seminar .wrapper section.contents aside.side-content section.recent-post-list:not(:first-child) {
  margin-top: 40px;
}

#listing.seminar .wrapper section.contents aside.side-content section.recent-post-list h2 {
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.4;
  color: #000426;
  border-bottom: 2px solid var(--blue);
  padding-bottom: 10px;
  margin-bottom: 25px;
}

#listing.seminar .wrapper section.contents aside.side-content section.recent-post-list article.post {
  margin-bottom: 25px;
  padding-bottom: 20px;
  border-bottom: 1px solid #C9CED1;
}

#listing.seminar .wrapper section.contents aside.side-content section.recent-post-list article.post a {
  display: flex;
  flex-direction: column;
}

#listing.seminar .wrapper section.contents aside.side-content section.recent-post-list article.post a .title {
  line-height: 1.4;
}

#listing.seminar .wrapper section.contents aside.side-content section.recent-post-list article.post a .title h3 {
  color: var(--dark-gray);
  display: inline;
  font-size: .875rem;  /* 14px */
  padding-bottom: 2px;
  position: relative;
  text-decoration: none;
}

#listing.seminar .wrapper section.contents aside.side-content section.recent-post-list article.post a:hover .title h3 {
  border-bottom: 1px solid var(--dark-gray);
}

#post.seminar .wrapper section.contents aside.side-content section.recent-post-list article.post a {
  flex-direction: column;
}

@media screen and (max-width: 1024px) {
  #listing.seminar .wrapper section.contents aside.side-content section.recent-post-list, #post.seminar .wrapper section.contents aside.side-content section.recent-post-list {
    margin-top: 50px;
  }
  #listing.seminar .wrapper section.contents aside.side-content section.recent-post-list:first-child {
    margin-top: 0;
  }
}

#listing.seminar .main-content .post .links{
  display: flex;
  gap: 15px;
  margin-top: auto;
}

@media ( max-width: 819px ) {
  #listing.seminar .main-content .post .links{
    flex-direction: column;
    margin-top: 20px;
  }
}

#listing.seminar .main-content .post .links a.button{
  padding: 10px 0px;
  align-items: center;
  background: var(--blue);
  border-radius: 5px;
  color: var(--white);
  cursor: pointer;
  display: flex;
  font-size: 16px;
  justify-content: center;
  line-height: 1.45;
  margin: 0;
  text-align: center;
  transition: background-color .3s;
  flex: 1;
}

#listing.seminar .main-content .post .box{
  align-items: stretch;
}

#listing.seminar .outline{
  display: flex;
  flex-direction: column;
}

#listing.seminar .main-content .post .links a.button:hover{
  background: var(--light-blue);
}

#listing.seminar .main-content .post .links a.button--archive {
  background: var(--red);
}

#listing.seminar .main-content .post .links a.button--archive:hover {
  background: #ffa9a9;
}
/* ------------------------------------------------------------------------------------
Glossary List
------------------------------------------------------------------------------------ */

/* common */
#listing.glossary .wrapper section.lists {
  padding: 90px 0;
}

#listing.glossary .lists-wrapper {
  margin: 0 auto;
  max-width: 1440px;
  padding: 0 100px;
}

#listing.glossary .lists-wrapper .contents {
  display: flex;
  justify-content: center;
  width: 100%;
}

#listing.glossary .lists-wrapper .contents .main-content {
  max-width: 865px;
  min-width: 0;
  flex-grow: 1;
}

#listing.glossary .lists-wrapper .contents .side-content {
  position: relative;
  min-width: 315px;
  margin-left: 83px;
}

/* main-content */
.glossary .category-link {
  padding: 40px 27.5px;
  background-color: #F8FBFF;
  margin-bottom: 40px;
}

.glossary .category-link .title {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.45;
  color: var(--black);
  margin-bottom: 40px;
}

.glossary .category-link .list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 20px;
  row-gap: 10px;
  justify-content: center;
}

.glossary .category-link .list li a {
  font-size: .875rem;  /* 14px */
  line-height: 150%;
  color: var(--light-blue);
  width: 130px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFFFFF;
  border: 1px solid var(--light-blue);
  border-radius: 43px;
  transition: all 0.3s;
  position: relative;
}

.glossary .category-link .list li a:hover {
  color: #fff;
  background-color: var(--light-blue);
}

.glossary .category-link .list li a:after {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.1953 1.29844L6.07531 6.89844L0.955313 1.29844' stroke='%230085CE' stroke-width='2'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  right: 10px;
  transition: all 0.3s;
}

.glossary .category-link .list li a:hover:after {
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.1953 1.29844L6.07531 6.89844L0.955313 1.29844' stroke='%23FFFFFF' stroke-width='2'/%3E%3C/svg%3E");
}
  
.glossary.post-listing .category:not(:has(li)) {
  display: none;
}

.glossary .category .title {
  background: #F8F8F8;
  padding: 8px 20px;
  margin-bottom: 20px;
}

.glossary .category .title span {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.45;
}

.glossary .category .content {
  display: flex;
  flex-wrap: wrap;
  column-gap: 60px;
  margin: 0 50px 30px;
  text-indent: -20px;
}

.glossary .category .content li {
  width: calc(50% - 30px);
  font-size: 1rem;
  line-height: 2.0;
  border-radius: 50%;
  position: relative;
  word-break: break-all;
}

.glossary .category .content li:before {
  background: #fff;
  border: 2px solid var(--light-blue);
  border-radius: 50%;
  box-sizing: border-box;
  content: "";
  height: 10px;
  position: relative;
  top: 0;
  width: 10px;
  display: inline-block;
  margin-right: 10px;
}

.glossary .category .content li a {
  transition: opacity 0.3s;
}

.glossary .category .content li a:hover {
  opacity: 0.6;
}

/* pagenation */
#listing.glossary .lists-wrapper ul.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 70px;
}

#listing.glossary .lists-wrapper ul.pagination li.double-arrow-item:first-child a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

#listing.glossary .lists-wrapper ul.pagination li.double-arrow-item:last-child a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 8px;
  margin-right: 0;
  transition: background 0.3s;
}

#listing.glossary .lists-wrapper ul.pagination li.double-arrow-item a:hover {
  background: var(--blue);
}

#listing.glossary .lists-wrapper ul.pagination li.double-arrow-item a:hover svg path {
  fill: var(--white);
}

#listing.glossary .lists-wrapper ul.pagination li.left-arrow-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 40px;
  transition: background 0.3s;
}

#listing.glossary .lists-wrapper ul.pagination li.num-item a,
#listing.glossary .lists-wrapper ul.pagination li.num-item span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--blue);
  background: var(--white);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

#listing.glossary .lists-wrapper ul.pagination li.num-item a:hover {
  color: var(--white);
  background: var(--blue);
  border: 1px solid transparent;
}


#listing.glossary .lists-wrapper ul.pagination li.num-item.current span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--white);
  background: var(--blue);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
}

#listing.glossary .lists-wrapper ul.pagination li.right-arrow-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 32px;
  transition: background 0.3s;
}

#listing.glossary .lists-wrapper ul.pagination li.left-arrow-item a:hover,
#listing.glossary .lists-wrapper ul.pagination li.right-arrow-item a:hover {
  background: var(--blue);
}

#listing.glossary .lists-wrapper ul.pagination li.left-arrow-item a:hover svg path,
#listing.glossary .lists-wrapper ul.pagination li.right-arrow-item a:hover svg path {
  fill: var(--white);
}

@media screen and (max-width: 1024px) {
  #listing .wrapper {
    padding-top: 72px;
  }

  #listing.glossary .wrapper section.lists {
    padding: 0;
  }
  
  #listing.glossary .lists-wrapper {
    padding: 0 20px;
  }
  
  #listing.glossary .lists-wrapper .contents {
    flex-wrap: wrap;
  }
  
  #listing.glossary .lists-wrapper .contents .main-content {
    max-width: 100%;
  }
  
  /* main-content */
  .glossary .category-link {
    display: none;
  }

  .glossary .category .title {
    margin-left: -20px;
    margin-right: -20px;
  }

  .glossary .category .title span {
    font-size: 1.125rem;  /* 18px */
  }

  .glossary .category .content {
    margin: 0 0 40px 20px;
    column-gap: 35px;
    row-gap: 15px;
  }
  
  .glossary .category .content li {
    font-size: .9375rem;  /* 15px */
    line-height: 1.8;
    width: calc(50% - 18px);
  }
  
  /*  pagenation  */
  #listing.glossary .lists-wrapper ul.pagination {
    margin-top: 60px;
    margin-bottom: 60px;
    grid-column-gap: 5px;
  }

  #listing.glossary .lists-wrapper ul.pagination li.double-arrow-item:first-child a {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.glossary .lists-wrapper ul.pagination li.double-arrow-item:last-child a {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }

  #listing.glossary .lists-wrapper ul.pagination li.left-arrow-item a {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.glossary .lists-wrapper ul.pagination li.num-item a, 
  #listing.glossary .lists-wrapper ul.pagination li.num-item span {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.glossary .lists-wrapper ul.pagination li.num-item.current span {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  #listing.glossary .lists-wrapper ul.pagination li.right-arrow-item a {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }

}

/* ------------------------------------------------------------------------------------
Glossary Post
------------------------------------------------------------------------------------ */
@media screen and (max-width: 1024px) {
  #post.glossary .wrapper section.contents {
    margin-top: 40px;
  }
  
  #post .wrapper section.contents article.main-content footer {
    margin-top: 40px;
  }
  
  #post.glossary .wrapper section.contents article.main-content footer section.meta {
    margin-top: 0;
  }
}

/* ------------------------------------------------------------------------------------
Glossary Sidebar
------------------------------------------------------------------------------------ */
.glossary aside.side-content form.search-blog-form {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}

.glossary aside.side-content form.search-blog-form input.input-keyword {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  width: 100%;
  border: 1px solid #dddddd;
  border-right: 0;
  padding: 10px 10px 13px;
  height: 40px;
  border-radius: 3px 0 0 3px;
}

.glossary aside.side-content form.search-blog-form input.input-keyword:focus {
  border: 1px solid var(--light-blue);
  outline: 0;
}

.glossary aside.side-content form.search-blog-form input.input-keyword::placeholder {
  font-size: .875rem;  /* 14px */
  font-weight: 1.5;
  letter-spacing: 1.4px;
  color: #767676;
}

.glossary aside.side-content form.search-blog-form button.search-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 40px;
  width: 100%;
  height: 40px;
  background: var(--light-blue);
  border-radius: 0 3px 3px 0;
  transition: opacity 0.3s;
}

.glossary aside.side-content form.search-blog-form button.search-btn:hover {
  opacity: 0.6;
}

.glossary aside.side-content form.search-blog-form button.search-btn:disabled {
  opacity: 1;
  background: #A6A6A6;
}

.glossary aside.side-content section + section {
  margin-top: 40px;
}

.glossary aside.side-content section h2 {
  border-bottom: 2px solid var(--blue);
  color: #000426;
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 25px;
  padding-bottom: 10px;
}

.glossary aside.side-content section.syllabary h2 {
  margin-bottom: 15px;
}

.glossary .syllabary #word-btn {
  display: none;
  position: relative;
  background-color: #EDEDED;
  padding: 15px;
  cursor: pointer;
  border-top: 1px solid #C9CED1;
  border-bottom: 1px solid #C9CED1;
}

.glossary .syllabary #word-btn:after {
  content: '';
  display: inline-block;
  width: 30px;
  height: 30px;
  background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='15' cy='15' r='15' fill='white'/%3E%3Cline x1='10' y1='14.9551' x2='20' y2='14.9551' stroke='%231B224C'/%3E%3Cline x1='15.0469' y1='10' x2='15.0469' y2='20' stroke='%231B224C'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 12px;
  right: 15px;
}

.glossary .syllabary #word-btn.selected:after {
  background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='15' cy='15' r='15' fill='white'/%3E%3Cline x1='10' y1='14.9551' x2='20' y2='14.9551' stroke='%231B224C'/%3E%3C/svg%3E");
}

.glossary .syllabary #word-btn p {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
}

.glossary .post {
  position: relative;
  border-bottom: 1px solid #C9CED1;
}

.glossary .post a {
  display: block;
  padding: 15px 15.5px;
}

.glossary .syllabary .post a {
  color: var(--light-blue);
}

.glossary .post a .title h3 {
  display: inline;
  position: relative;
  transition: background .3s;
}

.glossary .syllabary .post a .title h3 {
  background: linear-gradient(var(--light-blue),var(--light-blue)) 0 100%/0 1px no-repeat;
}

.glossary .post > a:hover .title h3 {
  background-size: 100% 1px;
}

.glossary .post a .readmore-btn {
  align-items: center;
  display: flex;
  width: 28px;
  height: 28px;
  justify-content: center;
  top: 50%;
  left: calc(100% - 48px);
  margin-left: auto;
  position: absolute;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}


.glossary .post a .readmore-btn span.readmore-btn-inner {
  align-items: center;
  background: var(--white);
  border: 1px solid #0085ce;
  border-radius: 100%;
  display: flex;
  height: 20px;
  justify-content: center;
  position: absolute;
  transition: width .3s,height .3s,background .3s;
  width: 20px;
}

.glossary .post a:hover .readmore-btn span.readmore-btn-inner {
  background: var(--blue);
  border: 1px solid #00479d;
  height: 28px;
  width: 28px;
}

.glossary .post a .readmore-btn span.readmore-btn-inner span {
  align-items: center;
  display: flex;
  justify-content: center;
  position: relative;
  top: 1px;
}

.glossary .post a .readmore-btn span.readmore-btn-inner span:before {
  content: "";
  margin: auto;
  position: absolute;
  transition: width .32s,left .32s;
  vertical-align: middle;
  background: #0085ce;
  height: 1px;
  width: 9.5px;
}

.glossary .post a:hover .readmore-btn span.readmore-btn-inner span:before {
  background: var(--white);
  width: 12px;
}

.glossary .post a .readmore-btn span.readmore-btn-inner span:after {
  content: "";
  margin: auto;
  position: absolute;
  transition: width .32s,left .32s;
  vertical-align: middle;
  border-right: 1px solid #0085ce;
  border-top: 1px solid #0085ce;
  height: 4px;
  left: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 4px;
}

.glossary .post a:hover .readmore-btn span.readmore-btn-inner span:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  height: 5px;
  width: 5px;
}

@media screen and (min-width: 1024px) {
  #listing.glossary .syllabary #word-list {
    display: block !important;
  }
}

@media screen and (max-width: 1024px) {
  #listing.glossary .lists-wrapper .contents .side-content {
    margin-left: 0;
    min-width: unset;
    width: 100%;
  }
  
  #listing.glossary .syllabary {
    position: relative;
    background: #FFFFFF;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
  
  #listing.glossary .syllabary {
    padding-top: 50px;
  }
  
  #listing.glossary .syllabary h2, #listing.glossary .syllabary #word-list {
    display: none;
  }
  
  #listing.glossary .syllabary #word-btn {
    display: block;
  }
}
/* Common */
/* 関連記事表示 */
#lp-content section.lists {
  padding: 100px 0;
}

@media screen and (max-width: 1024px) {
  #lp-content section.lists {
    padding: 60px 0;
  }
}

.form-1column-content, .form-2column-content {
  padding: 30px 0 60px;
  background: #F5F5F5;
}

#lp-content section.title {
  text-align: center;
}

#lp-content section.title h1 {
  font-size: 2.125rem;  /* 34px */
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 60px;
}

#lp-content section.title p {
  font-size: 1rem;  /* 16px */
  line-height: 2.0;
  color: var(--dark-gray);
  margin-bottom: 40px;
}

@media screen and (max-width: 1024px) {
  #lp-content section.title h1 {
    font-size: 1.75rem;  /* 28px */
    margin-bottom: 40px;
  }

  #lp-content section.title p {
    font-size: .9375rem;  /* 15px */
    line-height: 1.8;
    margin-bottom: 20px;
  }
}

/* 1Column */
.form-1column-content .wrapper {
  max-width: 825px;
  margin: 0 auto;
  padding: 0 20px;
}

.form-1column-content .wrapper figure.img {
  margin-bottom: 40px;
}

.form-1column-content .wrapper section.form {
  background: var(--white);
  padding: 60px;
  box-shadow: 0px 4px 30px 8px rgb(90 90 90 / 7%);
  border-radius: 8px;
}

.form-1column-content .wrapper section.form h3 {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.45;
  color: var(--dark-gray);
  text-align: center;
  margin-bottom: 30px;
}

.form-1column-content .wrapper section.form p.desc {
  font-size: 1rem;  /* 16px */
  line-height: 2.0;
  margin: 30px 0;
}

.form-1column-content .wrapper section.form.is-text-center p.desc {
  text-align: center;
}

@media screen and (max-width: 1024px) {
  .form-1column-content {
    padding: 60px 0;
  }

  .form-1column-content .wrapper figure.img {
    margin-bottom: 30px;
  }

  .form-1column-content .wrapper section.form {
    padding: 40px 20px;
  }

  .form-1column-content .wrapper section.form h3 {
    font-size: 1.125rem;  /* 18px */
    margin-bottom: 20px;
  }
  
  .form-1column-content .wrapper section.form p.desc {
    font-size: .9375rem;  /* 15px */
    line-height: 1.8;
    margin: 20px 0;
  }
}

/* 2Column */
.form-2column-content .wrapper {
  margin: 0 auto;
  max-width: 1200px;
  padding: 0 20px;
}

.form-2column-content .wrapper section.contents {
  display: flex;
  grid-column-gap: 7%;
}

.form-2column-content .wrapper section.contents .info {
  width: 38%;
}

.form-2column-content .wrapper section.contents .info h2 {
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.45;
  color: var(--dark-gray);
  margin-bottom: 20px;
}

.form-2column-content .wrapper section.contents .info .img {
  background-color: #e6f0fd;
  min-height: 270px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
}

.form-2column-content .wrapper section.contents .info figure.img {
  margin-bottom: 30px;
}

.form-2column-content .wrapper section.contents .info .img img {
  width: auto;
  height: auto;
  max-width: 300px;
  min-width: 120px;
  max-height: 250px;
  min-height: 120px;
}

.form-2column-content .wrapper section.contents .info h3 {
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.45;
  color: var(--dark-gray);
  margin-bottom: 20px;
}

.form-2column-content .wrapper section.contents .form {
  width: 55%;
  height: fit-content;
  background: var(--white);
  padding: 40px 35px;
  box-shadow: 0px 4px 30px 8px rgb(90 90 90 / 7%);
  border-radius: 8px;
}

.form-2column-content .wrapper section.contents .form h3 {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.45;
  color: var(--dark-gray);
  text-align: center;
  margin-bottom: 30px;
}

.form-2column-content .wrapper section.contents .form p.desc {
  font-size: 1rem;  /* 16px */
  line-height: 2;
  margin: 30px 0;
}

.form-2column-content .wrapper section.contents .form.is-text-center p.desc {
  text-align: center;
}

@media screen and (max-width: 1024px) {
  .form-2column-content .wrapper section.contents {
    flex-direction: column;
  }

  .form-2column-content .wrapper section.contents .info {
    width: 100%;
    margin-bottom: 60px;
  }

  .form-2column-content .wrapper section.contents .info h2 {
    font-size: 1.125rem;  /* 18px */
  }

  .form-2column-content .wrapper section.contents .info h3 {
    font-size: 1.125rem;  /* 18px */
  }
  .form-2column-content .wrapper section.contents .info .img {
    min-height: initial;
  }
  
  .form-2column-content .wrapper section.contents .info .img img {
    height: auto;
    max-width: 100%;
    min-width: auto;
    width: auto;
    padding: 0;
  }

  .form-2column-content .wrapper section.contents .form {
    width: 100%;
    padding: 40px 20px;
  }

  .form-2column-content .wrapper section.contents .form p.desc {
    font-size: .9375rem;  /* 15px */
  }
}
.search-results-top {
  padding: 70px 0;
  background: #F8FBFF;
}

.search-results-top .wrapper {
  max-width: 940px;
  margin: 0 auto;
  padding: 0 20px;
}

.search-results-top .wrapper h2 {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 20px;
}

.search-results-top .wrapper .search-page-form {
  width: 100%;
  height: 50px;
  display: flex;
}

.search-results-top .wrapper .search-page-form .input-keyword {
  font-size: .875rem;;
  line-height: 1.5;
  width: 100%;
  background: var(--white);
  border: 1px solid #DDDDDD;
  border-right: 0;
  padding: 15px 10px 15px 28px;
  border-radius: 3px 0 0 3px;
}

.search-results-top .wrapper .search-page-form .input-keyword:focus {
  border: 1px solid var(--light-blue);
  outline: 0;
}

.search-results-top .wrapper .search-page-form .input-keyword::placeholder {
  font-size: .875rem;;
  line-height: 1.5;
  color: #767676;
}

.search-results-top .wrapper .search-page-form .search-button {
  min-width: 50px;
  height: 50px;
  background: var(--light-blue);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 3px 3px 0;
  transition: opacity 0.3s;
}

.search-results-top .wrapper .search-page-form .search-button:hover {
  opacity: 0.6;
}

.search-results-top .wrapper .search-page-form .search-button:disabled {
  opacity: 1;
  background: var(--gray);
}

.search-results-list:not(.search-results-list:has(.search-empty ))  {
  padding: 60px 0;
}

.search-results-list:not(.search-results-list:has(.search-empty )) .wrapper {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

.search-results-list .wrapper .search-empty {
  text-align: center;
  background: #F8FBFF;
  margin: -30px auto 0 auto;
  padding-bottom: 70px;
}

.search-results-list .wrapper .search-empty p {
  line-height: 2;
  color: var(--dark-gray);
}

.search-results-list .wrapper .search-empty .cta a {
  max-width: 290px;
  width: 100%;
  height: 71px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--blue);
  border-radius: 5px;
  font-size: 1.25rem;
  line-height: 1.45;
  color: var(--white);
  cursor: pointer;
  margin: 40px auto auto;
  transition: background-color .3s;
}

.search-results-list .wrapper .search-empty .cta a:hover {
  background-color: var(--light-blue);
}

.search-results-list .wrapper .result-item {
  display: flex;
  grid-column-gap: 40px;
  padding: 40px 0 40px 20px;
  border-top: 1px solid #EDEDED;
}

.search-results-list .wrapper .result-item .hs-search-results__featured-image {
  max-width: 167px;
  min-width: 167px;
  width: 100%;
  border-radius: 3px;
  overflow: hidden;
}

.search-results-list .wrapper .result-item .hs-search-results__featured-image img {
  width: 100%;
  object-fit: cover;
  border-radius: 3px;
  aspect-ratio: 3 / 2;
  transition: transform 0.3s;
}

.search-results-list .wrapper #hsresults li a:hover .result-item .hs-search-results__featured-image img {
  transform: scale(1.1, 1.1);
}

.search-results-list .wrapper .result-item .result-texts {
  display: flex;
  grid-row-gap: 20px;
  flex-direction: column;
  justify-content: center;
}

.search-results-list .wrapper .result-item .result-texts .title {
  font-size: 1.375rem;
  line-height: 1.45;
}

.search-results-list .wrapper .result-item .result-texts .title h3 {
  display: inline;
  background: linear-gradient(var(--black),var(--black)) 0 100%/0 1px no-repeat;
  position: relative;
  transition: background .3s;
}

.search-results-list .wrapper #hsresults li a:hover .result-item .result-texts .title h3 {
  background-size: 100% 1px;
}

.search-results-list .result-item .result-texts p {
  line-height: 1.45;
  color: var(--dark-gray);
  display: -webkit-inline-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

/* pagenation */
.search-results-list .wrapper .page-navi ul.page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 70px;
}

.search-results-list .wrapper .page-navi ul.page-numbers li.hs-search-results__first-page a.page-number {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

.search-results-list .wrapper .page-navi ul.page-numbers li.hs-search-results__last-page a.page-number {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 8px;
  margin-right: 0;
  transition: background 0.3s;
}

.search-results-list .wrapper .page-navi ul.page-numbers .hs-search-results__prev-page a.page-number {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-right: 40px;
  transition: background 0.3s;
}

.search-results-list .wrapper .page-navi ul.page-numbers li a.page-number,
.search-results-list .wrapper .page-navi ul.page-numbers li span.page-number {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--blue);
  background: var(--white);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
  transition: background 0.3s;
}

.search-results-list .wrapper .page-navi ul.page-numbers li a.page-number:hover {
  color: var(--white);
  background: var(--blue);
  border: 1px solid transparent;
}


.search-results-list .wrapper .page-navi ul.page-numbers li span.page-number.current {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 1.6px;
  color: var(--white);
  background: var(--blue);
  border: 1px solid #E6E6E6;
  border-radius: 3px;
  margin-right: 8px;
}

.search-results-list .wrapper .page-navi ul.page-numbers .hs-search-results__next-page a.page-number {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: #F0F4F5;
  border-radius: 3px;
  margin-left: 32px;
  transition: background 0.3s;
}

.search-results-list .wrapper .page-navi ul.page-numbers .hs-search-results__prev-page a.page-number:hover,
.search-results-list .wrapper .page-navi ul.page-numbers .hs-search-results__next-page a.page-number:hover {
  background: var(--blue);
}

.search-results-list .wrapper .page-navi ul.page-numbers .hs-search-results__first-page a.page-number:hover svg path,
.search-results-list .wrapper .page-navi ul.page-numbers .hs-search-results__last-page a.page-number:hover svg path,
.search-results-list .wrapper .page-navi ul.page-numbers .hs-search-results__prev-page a.page-number:hover svg path,
.search-results-list .wrapper .page-navi ul.page-numbers .hs-search-results__next-page a.page-number:hover svg path {
  fill: var(--white);
}

@media screen and (max-width: 1024px) {
  .search-results-top {
    padding: 50px 20px 40px 20px;
  }

  .search-results-top .wrapper {
    padding: 0;
  }

  .search-results-top .wrapper h2 {
    margin-bottom: 30px;
  }

  .search-results-top .wrapper .search-page-form .search-button {
    min-width: 45px;
  }

  .search-results-top .wrapper .search-page-form .search-button svg {
    width: 25px;
    height: 25px;
  }

  .search-results-top .wrapper .search-page-form .input-keyword {
    padding-left: 20px;
  }

  .search-results-list .wrapper .result-item {
    flex-direction: column;
    padding: 40px 0;
  }

  .search-results-list .wrapper #hsresults {
    display: flex;
    flex-wrap: wrap;
    grid-column-gap: 20px;
  }

  .search-results-list .wrapper #hsresults li {
    width: calc(50% - 10px);
  }

  .search-results-list .wrapper #hsresults li:first-child .result-item {
    padding-top: 0;
    border: none;
  }

  .search-results-list .wrapper #hsresults li:nth-child(2) .result-item {
    padding-top: 0;
    border: none;
  }

  .search-results-list .wrapper .result-item .hs-search-results__featured-image {
    max-width: 100%;
    border-radius: 3px 3px 0 0;
  }

  .search-results-list .wrapper .result-item .hs-search-results__featured-image img {
    height: 100%;
    border-radius: 3px 3px 0 0;
    aspect-ratio: 5 / 3;
  }

  .search-results-list .wrapper .result-item .result-texts {
    margin-top: 20px;
  }

  .search-results-list .result-item .result-texts p {
    -webkit-line-clamp: 5;
  }

  /*  pagenation  */
  .search-results-list .wrapper .page-navi ul.page-numbers {
    margin-top: 60px;
    grid-column-gap: 5px;
  }

  .search-results-list .wrapper .page-navi ul.page-numbers li.hs-search-results__first-page a.page-number {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  .search-results-list .wrapper .page-navi ul.page-numbers li.hs-search-results__last-page a.page-number {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }

  .search-results-list .wrapper .page-navi ul.page-numbers .hs-search-results__prev-page a.page-number {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  .search-results-list .wrapper .page-navi ul.page-numbers li a.page-number,
  .search-results-list .wrapper .page-navi ul.page-numbers li span.page-number {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  .search-results-list .wrapper .page-navi ul.page-numbers li span.page-number.current {
    width: 35px;
    height: 35px;
    margin-right: 0;
  }

  .search-results-list .wrapper .page-navi ul.page-numbers .hs-search-results__next-page a.page-number {
    width: 35px;
    height: 35px;
    margin-left: 0;
  }

  .search-results-list .wrapper .search-empty {
    padding: 20px 20px 60px;
    margin-top: 0;
  }

  .search-results-list .wrapper .search-empty p {
    font-size: .9375rem;
    line-height: 1.8;
  }
}

@media screen and (max-width: 768px) {
  .search-results-list .wrapper #hsresults {
    display: unset;
    flex-wrap: unset;
    grid-column-gap: unset;
  }

  .search-results-list .wrapper #hsresults li {
    width: unset;
  }

  .search-results-list .wrapper #hsresults li:nth-child(2) .result-item {
    padding: 40px 0;
    border-top: 1px solid #ededed;
  }
}
.password-prompt {
  padding: 90px 0;
  background: #F8FBFF;
}

.password-prompt .wrapper {
  max-width: 640px;
  margin: 0 auto;
  padding: 0 20px;
}

.password-prompt .wrapper .text {
  font-size: 1.125rem;
  line-height: 1.5;
  margin-bottom: 20px;
}

.password-prompt .wrapper .error-message {
  font-size: .8125rem;
  line-height: 1.45;
  margin-bottom: 5px;
  color: var(--red);
}

.password-prompt .wrapper:has(.error-message) form input[type=password] {
  background: var(--light-red);
}

.password-prompt .wrapper form {
  width: 100%;
  height: 50px;
  display: flex;
  align-items: center;
}

.password-prompt .wrapper form input[type=password] {
  font-size: .875rem;;
  line-height: 1.5;
  width: 100%;
  height: 50px !important;
  background: var(--white);
  border: 1px solid #DDDDDD;
  border-right: 0;
  padding: 15px 10px 15px 28px;
  border-radius: 3px 0 0 3px;
  margin-top: 0 !important;
  margin-bottom: 0;
}

.password-prompt .wrapper form input[type=password]:focus {
  border: 1px solid var(--light-blue);
  outline: 0;
}

.password-prompt .wrapper form input[type=password]::placeholder {
  font-size: .875rem;;
  line-height: 1.5;
  color: #767676;
}

.password-prompt .wrapper form input[type=submit].hs-button {
  min-width: 50px;
  height: 50px;
  background: var(--light-blue);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 3px 3px 0;
  transition: opacity 0.3s;
  color: var(--white);
  padding: 0 50px;
}

.password-prompt .wrapper form input[type=submit].hs-button:hover {
  opacity: 0.6;
}

@media screen and (max-width: 1024px) {
  .password-prompt {
    padding: 60px 0;
  }
  
  .password-prompt .wrapper form input[type=password] {
    padding-left: 20px;
  }
  
  .password-prompt .wrapper form input[type=submit].hs-button {
    padding: 0 30px;
  }
}
#error-contents {
  padding-top: 160px;
}

#error-contents .content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-image: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/images/common/BGsec_01.webp);
  background-size: cover;
  text-align: center;
  padding: 100px 0;
}

#error-contents .content h1 {
  font-size: 2.375rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 30px;
}

#error-contents .content .first-text {
  line-height: 2;
  margin-bottom: 40px;
}

#error-contents .content .second-text {
  line-height: 2;
  margin-bottom: 60px;
}

#error-contents .content a {
  max-width: 290px;
  width: 100%;
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--blue);
  border-radius: 5px;
  font-size: 1.25rem;
  line-height: 1.45;
  color: var(--white);
  cursor: pointer;
  transition: background-color .3s;
}

#error-contents .content a:hover {
  background-color: var(--light-blue);
}

@media screen and (max-width: 1024px) {
  #error-contents {
    padding-top: 72px;
  }

  #error-contents .content {
    background-image: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/images/common/BGsec_02.webp);
    padding: 60px 40px;
  }

  #error-contents .content h1 {
    font-size: 1.75rem;
    margin-bottom: 40px;
  }

  #error-contents .content .first-text {
    font-size: .9375rem;
    line-height: 1.8;
    margin-bottom: 25px;
  }

  #error-contents .content .second-text {
    font-size: .9375rem;
    line-height: 1.8;
    margin-bottom: 40px;
  }
}
#subscription-contents {
    padding-top: 160px;
}
#subscription-contents .content {
  align-items: center;
  background-image: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/images/common/BGsec_01.webp);
  background-size: cover;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 100px 0;
}

#subscription-contents .wrapper {
  margin: 0 auto;
  max-width: 1240px;
  padding: 0 20px;
}

#subscription-contents .page-header {
  line-height: 2.0;
  margin-bottom: 10px;
}

#subscription-contents .page-header h1 {
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 10px;
}

#subscription-contents .page-header h2 {
  font-size: 1.5rem;  /* 28px */
  font-weight: 700;
  line-height: 1.45;
}

#email-prefs-form dl, #email-prefs-form ol, #email-prefs-form p, #email-prefs-form ul, .success {
  font-size: 1.0rem;
  line-height: 1.45;
  margin-bottom: 20px;
}

#email-prefs-form .email-prefs .item {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative;
  margin: 30px 0;
  cursor: pointer !important;
}

#email-prefs-form .email-prefs .item .item-inner {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border-radius: 8px;
  transition-property: background;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  overflow: hidden;
  margin-top: 0;
  padding: 20px;
  background: #F0F4F5;
  box-shadow: 0px 4px 30px 8px rgba(90, 90, 90, 0.07);
}

#email-prefs-form .email-prefs .item .item-inner:hover {
  background: #C9CED1;
}

#email-prefs-form .email-prefs .item .item-inner .checkbox-row {
  font-weight: 700;
}

#email-prefs-form .email-prefs .item .item-inner p {
  clear: both;
  margin: 5px 24px 0;
}

#email-prefs-form label {
  cursor: pointer;
}

#email-prefs-form .subscribe-options label span {
  font-weight: 700;
}

#email-prefs-form .hs-input {
  display: inline-block;
  width: 100%;
  height: 56px;
  margin-right: 0 !important;
  padding: 17px 14px !important;
  border: 1px solid #C9CED1;
  border-radius: 3px;
  color: var(--black);
  font-size: 1.0rem !important;
  line-height: 1.45;
  background-color: var(--white);
  box-sizing: border-box;
}

#email-prefs-form .hs-input:focus {
  outline: none;
  border: 1px solid var(--blue);
}

#email-prefs-form h3 {
  color: var(--black);
  font-weight: bold !important;
  display: block;
  margin-bottom: 4px;
  font-size: 1.25rem;  /* 20px */
  line-height: 1.4;
}

#email-prefs-form input[type=checkbox] {
  display: none;
}

#email-prefs-form input[type=checkbox] + span {
  display: grid;
  grid-gap: 3px;
  grid-template-columns: 1.125em 1fr;
  position: relative;
  min-height: 18px;
  font-size: 1.125rem !important;
  font-weight: 700;
  align-items: center;
}

#email-prefs-form input[type=checkbox] + span:before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  border: 1px solid #A6A6A6;
  background: #FFFFFF;
  border-radius: 3px;
}

#email-prefs-form input[type=checkbox] + span::after {
  content: "";
  position: absolute;
  top: 10px;
  left: 6px;
  display: block;
  width: 6px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
  display: none;
}

#email-prefs-form .subscribe-options input[type=checkbox] + span:after {
  top: 7px;
}

#email-prefs-form input[type=checkbox]:checked + span::before {
  background-color: var(--light-blue);
}

#email-prefs-form input[type=checkbox]:checked + span::after {
  display: block;
}

#email-prefs-form input[type="submit"] {
  align-items: center;
  background: var(--blue);
  border-radius: 5px;
  color: var(--white);
  cursor: pointer;
  display: flex;
  font-size: 1.25rem;
  height: 70px;
  justify-content: center;
  line-height: 1.45;
  max-width: 290px;
  transition: background .3s;
  width: 100%;
}

#email-prefs-form input[type="submit"]:hover {
  background: var(--light-blue);
}

@media screen and (max-width: 1024px) {
  #subscription-contents {
    padding-top: 72px;
  }
  
  #subscription-contents .content {
    background-image: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/images/common/BGsec_02.webp);
    padding: 60px 0;
  }
  
  #subscription-contents .page-header h1 {
    font-size: 1.5rem;  /* 24px */
  }
  
  #subscription-contents .page-header h2 {
    font-size: 1.25rem;  /* 20px */
  }
  
  #email-prefs-form input[type=checkbox]+span {
    font-size: 1.0rem !important; 
  }
  
  #email-prefs-form .email-prefs .item .item-inner p {
   font-size: .9375rem;  /* 15px */
   margin: 5px 0px 0px 30px; 
  }
  
  #email-prefs-form input[type=checkbox]+span:after {
    top: 8px;
  }
  
  #email-prefs-form .subscribe-options input[type=checkbox] + span:after {
    top: 5px;
  }
}

@media screen and (max-width: 768px) {
  #email-prefs-form input[type="submit"] {
    max-width: initial;
    margin-top: 20px !important;
  }
}

/* 不明なコンタクト配信設定ページ */
#hs_cos_wrapper_email_simple_subscription .page-header {
  margin-bottom: 30px;
}

#hs_cos_wrapper_email_simple_subscription #email-prefs-form h3 {
  font-size: 1.25rem;  /* 20px */
  margin-bottom: 10px;
}

#hs_cos_wrapper_email_simple_subscription #email-prefs-form input[type=submit] {
  margin-top: 30px;
}

@media screen and (max-width: 1024px) {
  #hs_cos_wrapper_email_simple_subscription #email-prefs-form h3 {
    font-size: 1.125rem;  /* 18px */
    margin-bottom: 5px;
  }
  
  #email-prefs-form .hs-input {
    width: 100% !important;
  }
}
.ldp-one main {
  padding-top: 100px;
}

.ldp-one .go1222083472 iframe {
  box-shadow: 0 2px 10px rgba(86, 83, 229, 0.2) !important;
}

@media (max-width: 1024px) {
  .ldp-one #header .header-wrapper {
    width: 100%;
  }
  .ldp-one main {
    padding-top: 72px;
  }
}

.ldp-one #page-top-btn .btn-wrapper {
  background: #5653e5;
}

.ldp-one #header .header-wrapper .h-logo {
  box-shadow: unset;
}

/* ========================================
Leadplus One - ブログ記事ヒーローセクション
======================================== */

#leadplus-one-blog-hero.leadplus-one-hero {
  position: relative;
  width: 100%;
  overflow: visible;
}

#leadplus-one-blog-hero .hero-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-image: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/LeadPlus_ONE/hero-bg_main.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 100px;
}

/* パンくずリスト */
#leadplus-one-blog-hero .nav {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 14px 20px;
}

#leadplus-one-blog-hero .nav svg path {
  stroke: #5653e5;
}

#leadplus-one-blog-hero .nav svg.home-icon path {
  fill: #5653e5;
}

#leadplus-one-blog-hero .breadcrumb {
  margin: 0;
  padding: 0;
}

#leadplus-one-blog-hero .breadcrumb ol {
  display: flex;
  align-items: center;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
  flex-wrap: wrap;
}

#leadplus-one-blog-hero .breadcrumb li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  line-height: 1;
  color: #404040;
  font-weight: 700;
  letter-spacing: 1.1px;
}

#leadplus-one-blog-hero .breadcrumb li a {
  color: #5653e5;
  font-weight: 500;
  text-decoration: none;
  display: flex;
  align-items: center;
}

#leadplus-one-blog-hero .breadcrumb li a:hover {
  text-decoration: underline;
}

#leadplus-one-blog-hero .breadcrumb li.last span {
  color: #3318ae;
  font-weight: 700;
}

#leadplus-one-blog-hero .home-icon {
  width: 13px;
  height: 12px;
}

#leadplus-one-blog-hero .delimiter-icon {
  width: 5px;
  height: 9px;
}

#leadplus-one-blog-hero .breadcrumb .none {
  display: none;
}

#leadplus-one-blog-hero .breadcrumb .is-active {
  color: #5653e5 !important;
  font-weight: 500 !important;
}

/* コンテンツエリア */
#leadplus-one-blog-hero .hero-content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1240px;
  padding: 45px 20px 75px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

#leadplus-one-blog-hero .hero-inner {
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 100%;
}

/* タイトル */
#leadplus-one-blog-hero .hero-title {
  font-family: "Noto Sans JP";
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
  letter-spacing: 0.1em;
  margin: 0;
}

@media (max-width: 1100px) {
  #leadplus-one-blog-hero .hero-title {
    font-size: 28px;
    letter-spacing: 2.8px;
  }
}

@media (max-width: 768px) {
  #leadplus-one-blog-hero .hero-wrapper {
    justify-content: center;
    position: relative;
    min-height: 180px;
  }

  /* モバイル時、パンくずをセクションの下に配置 */
  #leadplus-one-blog-hero .nav {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    transform: translateY(100%);
    max-width: 100%;
    padding: 15px 20px;
    background: white;
    z-index: 99;
  }

  #leadplus-one-blog-hero .breadcrumb {
    margin: 0;
    padding: 0;
    width: 100%;
  }

  #leadplus-one-blog-hero .hero-title {
    font-size: 24px;
    letter-spacing: 2.4px;
  }

  #leadplus-one-blog-hero .hero-content {
    padding: 0 20px 20px;
  }

  #leadplus-one-blog-hero .hero-inner {
    gap: 24px;
  }

  #leadplus-one-blog-hero .breadcrumb li {
    font-size: 10px;
    letter-spacing: 1px;
  }
}

@media (max-width: 480px) {
  #leadplus-one-blog-hero .hero-title {
    font-size: 22px;
    letter-spacing: 2px;
  }
}

/* ========================================
Leadplus One - ブログ記事詳細ページ
======================================== */

.leadplus-one-blog-post {
  padding: 60px 0;
}

.leadplus-one-blog-post .wrapper {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

.leadplus-one-blog-post .contents-wrapper {
  display: flex;
  gap: 80px;
  align-items: flex-start;
}

.leadplus-one-blog-post .main-content {
  flex: 1;
}

/* 情報セクション */
.post-info-section {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 45px;
}

.post-info-left {
  display: flex;
  align-items: center;
  gap: 24px;
}

/* タグ */
.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.tag-badge {
  display: flex;
  padding: 4px 10px;
  align-items: flex-start;
  gap: 10px;
  border-radius: 3px;
  background: #6d6feb;
  color: #fff;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 11px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 1.1px;
}

/* 右側の情報 */
.post-info-right {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 10px;
  align-items: flex-end;
}

.post-info-right__data {
  display: flex;
  align-items: center;
  gap: 20px;
}

.post-meta-item,
.post-meta-auther {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 1, 3px;
  color: #141414;
}

.post-meta-item svg {
  flex-shrink: 0;
}

/* タイトル */
.post-title {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 3.2px;
  color: #141414;
  margin: 0 0 32px 0;
}

/* 本文部分 */
.leadplus-one-blog-post .body {
  margin-bottom: 60px;
}

.featured-img {
  margin-bottom: 32px;
}

.featured-img img {
  width: 100%;
  height: auto;
  border-radius: 6px;
}

/* リストスタイル（ブログ本文内、ブログパーツモジュール外） */
.leadplus-one-blog-post .body > ul,
.leadplus-one-blog-post .body > div:not(.leadplus-one-blog-parts) ul,
.leadplus-one-blog-post .body > p + ul,
.leadplus-one-blog-post .body > h2 + ul,
.leadplus-one-blog-post .body > h3 + ul,
.leadplus-one-blog-post .body > h4 + ul,
.leadplus-one-blog-post .body .blog-parts__body ul {
  list-style: none;
  margin: -6px 0;
  padding: 0;
}

.leadplus-one-blog-post .body > ul li,
.leadplus-one-blog-post .body > div:not(.leadplus-one-blog-parts) ul li,
.leadplus-one-blog-post .body > p + ul li,
.leadplus-one-blog-post .body > h2 + ul li,
.leadplus-one-blog-post .body > h3 + ul li,
.leadplus-one-blog-post .body > h4 + ul li,
.leadplus-one-blog-post .body .blog-parts__body ul li {
  position: relative;
  padding-left: 16px;
  margin-bottom: 4px;
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 1.6px;
  color: #141414;
}

.leadplus-one-blog-post .body > ul li::before,
.leadplus-one-blog-post .body > div:not(.leadplus-one-blog-parts) ul li::before,
.leadplus-one-blog-post .body > p + ul li::before,
.leadplus-one-blog-post .body > h2 + ul li::before,
.leadplus-one-blog-post .body > h3 + ul li::before,
.leadplus-one-blog-post .body > h4 + ul li::before,
.leadplus-one-blog-post .body .blog-parts__body ul li::before {
  background-color: #15ceb7;
  border-radius: 50%;
  content: "";
  height: 8px;
  left: 0px;
  position: absolute;
  top: 9px;
  width: 8px;
}

.leadplus-one-blog-post .body > ul li:last-child,
.leadplus-one-blog-post .body > div:not(.leadplus-one-blog-parts) ul li:last-child,
.leadplus-one-blog-post .body > p + ul li:last-child,
.leadplus-one-blog-post .body > h2 + ul li:last-child,
.leadplus-one-blog-post .body > h3 + ul li:last-child,
.leadplus-one-blog-post .body > h4 + ul li:last-child,
.leadplus-one-blog-post .body .blog-parts__body ul li:last-child {
  margin-bottom: 0;
}

/* ネストされたリスト */
.leadplus-one-blog-post .body > ul ul,
.leadplus-one-blog-post .body > div:not(.leadplus-one-blog-parts) ul ul,
.leadplus-one-blog-post .body .blog-parts__body ul ul {
  margin-top: 4px;
  margin-bottom: 4px;
}

.leadplus-one-blog-post .body > ul ul li::before,
.leadplus-one-blog-post .body > div:not(.leadplus-one-blog-parts) ul ul li::before,
.leadplus-one-blog-post .body .blog-parts__body ul ul li::before {
  background-color: #c4c4c4;
  width: 6px;
  height: 6px;
  top: 12px;
}

/* ========================================
Leadplus One - 目次
======================================== */

.leadplus-one-toc {
  background: #f5f5f5;
  border-radius: 4px;
  padding: 24px;
  margin-bottom: 40px;
}

.leadplus-one-toc .toc-title {
  font-family: "Noto Sans JP";
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 1.8px;
  color: #141414;
  margin: 0 0 16px 0;
}

/* 目次の生成されたコンテンツ用スタイル */
.leadplus-one-toc .toc-generated ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.leadplus-one-toc .toc-generated > ul > li {
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 1.6px;
  color: #141414;
  margin-bottom: 8px;
}

.leadplus-one-toc .toc-generated > ul > li:last-child {
  margin-bottom: 0;
}

.leadplus-one-toc .toc-generated ul ul {
  list-style: none;
  margin: 8px 0 0 0;
  padding-left: 16px;
}

.leadplus-one-toc .toc-generated ul ul li {
  position: relative;
  padding-left: 0;
  margin-bottom: 8px;
}

.leadplus-one-toc .toc-generated ul ul li::before {
  display: none;
}

.leadplus-one-toc .toc-generated a {
  color: #141414;
  text-decoration: none;
  transition: color 0.3s ease;
}

.leadplus-one-toc .toc-generated a:hover {
  color: #5653e5;
}

/* サポートページボタン */
.support-button-wrapper {
  display: flex;
  justify-content: center;
}

.support-button {
  display: inline-flex;
  align-items: center;
  gap: 40px;
  max-width: 240px;
  min-height: 55px;
  width: 100%;
  background: #ffffff;
  border: 1px solid #5653e5;
  text-decoration: none;
  transition: all 0.3s ease;
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 1.6px;
  color: #5653e5;
  justify-content: center;
  position: relative;
}

.support-button:hover {
  background: #5653e5;
  color: #ffffff;
}

.support-button-text {
  display: inline-block;
}

.support-button-arrow {
  display: inline-block;
  transition: all 0.3s ease;
  position: absolute;
  right: 24px;
}

.support-button:hover .support-button-arrow {
  right: 20px;
}

.support-button:hover .support-button-arrow path:nth-child(1) {
  stroke: #ffffff;
}

.support-button:hover .support-button-arrow path:nth-child(2),
.support-button:hover .support-button-arrow path:nth-child(3) {
  stroke: #ffffff;
}

/* Legacy TOC list styles for compatibility */
.leadplus-one-toc .toc-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.leadplus-one-toc .toc-list > li {
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 1.6px;
  color: #141414;
  margin-bottom: 8px;
}

.leadplus-one-toc .toc-list > li:last-child {
  margin-bottom: 0;
}

.leadplus-one-toc .toc-list ul {
  list-style: none;
  margin: 8px 0 0 0;
  padding-left: 16px;
}

.leadplus-one-toc .toc-list ul li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 8px;
}

.leadplus-one-toc .toc-list ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.7em;
  width: 4px;
  height: 4px;
  background: #808080;
  border-radius: 50%;
}

.leadplus-one-toc .toc-list a {
  color: #141414;
  text-decoration: none;
  transition: color 0.3s ease;
}

.leadplus-one-toc .toc-list a:hover {
  color: #5653e5;
  text-decoration: underline;
}

/* ========================================
Leadplus One - サイドバー
======================================== */

.leadplus-one-sidebar {
  width: 315px;
}

.sidebar-title {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 2px;
  color: #141414;
  margin: 0 0 20px 0;
  padding-bottom: 10px;
  border-bottom: 2px solid #5653e5;
}

/* 検索バー */
.sidebar-search {
  margin-bottom: 40px;
}

.sidebar-search .search-container {
  background: white;
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  padding: 8px;
}

.sidebar-search .search-input-group {
  display: flex;
  align-items: center;
}

.sidebar-search .search-input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 14px;
  line-height: 1.6;
  padding: 8px;
  background: transparent;
}

.sidebar-search .search-button {
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
  color: #808080;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.3s ease;
}

.sidebar-search .search-button:hover {
  color: #5653e5;
}

/* 関連記事 */
.sidebar-related-posts {
  margin-bottom: 40px;
}

.related-posts-list {
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.related-post-item {
  border-bottom: 1px solid #e5e5e5;
  padding: 0 20px 20px;
  transition: all 0.3s ease;
}

.related-post-item:hover {
  border-color: #5653e5;
}

.related-post-link {
  text-decoration: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.related-post-title {
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 1.4px;
  transition: all 0.3s ease;
}

.related-post-item:hover .related-post-title {
  color: #5653e5;
}

.related-post-date {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  color: #808080;
}

/* ========================================
レスポンシブ対応
======================================== */

@media (max-width: 1024px) {
  .leadplus-one-blog-post .contents-wrapper {
    flex-direction: column;
    gap: 40px;
    width: 100%;
  }

  .leadplus-one-blog-post .wrapper {
    padding: 0 20px;
  }

  .leadplus-one-sidebar {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .leadplus-one-blog-post {
    padding: 40px 0 40px;
  }

  .leadplus-one-blog-post .body {
    margin-bottom: 40px;
  }

  .support-button {
    padding: 12px 24px;
    font-size: 14px;
    letter-spacing: 1.4px;
  }

  .leadplus-one-blog-post .main-content {
    width: 100%;
  }

  .post-info-section {
    flex-direction: column-reverse;
    align-items: flex-start;
    gap: 8px;
  }

  .post-info-left {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .post-info-right {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .breadcrumb-list {
    flex-wrap: wrap;
  }

  .post-title {
    font-size: 24px;
    letter-spacing: 2.4px;
  }

  .sidebar-title {
    font-size: 16px;
    letter-spacing: 1.6px;
  }

  .sidebar-search,
  .sidebar-related-posts {
    margin-bottom: 30px;
  }
  .sidebar-related-posts:last-child {
    margin-bottom: 0;
  }
  .post-info-right__data {
    gap: 16px;
  }
}


/* u-bgcolor */
.u-bgcolor--white {
  background: #FFF;
}
.u-bgcolor--gray {
  background: #F1F3F7;
}
.u-bgcolor--lightgreen {
  background: #DFF7F4;
}
.u-bgcolor--gradation_green {
  background: linear-gradient(358deg, #15CEB8 -29.15%, #AEEAE1 43.74%, var(--secondary-secondary-050, #DFF7F4) 98.26%);
}
.u-bgcolor--gradation_lightgreen_arrow {
  background: linear-gradient(180deg, rgba(223, 247, 244, 0.05) 0%, rgba(223, 247, 244, 0.80) 25%, var(--secondary-secondary-100, #AEEAE1) 100%);
  position: relative;
}
.u-bgcolor--gradation_lightgreen_arrow:after {
  content: "";
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
  width: 86px;
  height: 45px;
  border: none;
  border-top: 45px solid #AEEAE1;
  border-right: 43px solid transparent;
  border-left: 43px solid transparent;
}
@media (max-width: 768px) {
  .u-bgcolor--gradation_lightgreen_arrow:after {
    bottom: -30px;
    width: 60px;
    height: 30px;
    border-top: 30px solid #AEEAE1;
    border-right: 30px solid transparent;
    border-left: 30px solid transparent;
  }
}
.u-bgcolor--gradation_thin_circle {
  position: relative;
  background-image: url(data:image/svg+xml;base64,Cjxzdmcgd2lkdGg9IjE0NDEiIGhlaWdodD0iNTExIiB2aWV3Qm94PSIwIDAgMTQ0MSA1MTEiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxtYXNrIGlkPSJtYXNrMF8xODIyXzE1MjE4IiBzdHlsZT0ibWFzay10eXBlOmFscGhhIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSIwIiB5PSIwIiB3aWR0aD0iMTQ0MSIgaGVpZ2h0PSI1MTEiPgo8cmVjdCB3aWR0aD0iMTQ0MSIgaGVpZ2h0PSI1MTEiIGZpbGw9IndoaXRlIi8+CjwvbWFzaz4KPGcgbWFzaz0idXJsKCNtYXNrMF8xODIyXzE1MjE4KSI+CjxtYXNrIGlkPSJtYXNrMV8xODIyXzE1MjE4IiBzdHlsZT0ibWFzay10eXBlOmFscGhhIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSIxIiB5PSItODciIHdpZHRoPSIxNDQwIiBoZWlnaHQ9IjU5OCI+CjxyZWN0IHdpZHRoPSIxNDQwIiBoZWlnaHQ9IjU5OCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSAtODcpIiBmaWxsPSJ3aGl0ZSIvPgo8L21hc2s+CjxnIG1hc2s9InVybCgjbWFzazFfMTgyMl8xNTIxOCkiPgo8bWFzayBpZD0ibWFzazJfMTgyMl8xNTIxOCIgc3R5bGU9Im1hc2stdHlwZTphbHBoYSIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeD0iMCIgeT0iMTIiIHdpZHRoPSIxNDQwIiBoZWlnaHQ9IjQ5OSI+CjxyZWN0IHk9IjEyIiB3aWR0aD0iMTQ0MCIgaGVpZ2h0PSI0OTguMTIxIiBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXJfMTgyMl8xNTIxOCkiLz4KPC9tYXNrPgo8ZyBtYXNrPSJ1cmwoI21hc2syXzE4MjJfMTUyMTgpIj4KPHJlY3QgeD0iLTEiIHk9IjEyIiB3aWR0aD0iMTQ0MCIgaGVpZ2h0PSI0OTguMTIxIiBmaWxsPSJ1cmwoI3BhaW50MV9saW5lYXJfMTgyMl8xNTIxOCkiLz4KPC9nPgo8ZyBvcGFjaXR5PSIwLjUiPgo8bWFzayBpZD0ibWFzazNfMTgyMl8xNTIxOCIgc3R5bGU9Im1hc2stdHlwZTphbHBoYSIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeD0iNjIyIiB5PSItMjc4IiB3aWR0aD0iNzA2IiBoZWlnaHQ9IjYxMiI+CjxyZWN0IHg9IjYyMi43MjciIHk9Ii0yNzgiIHdpZHRoPSI3MDQuOTUzIiBoZWlnaHQ9IjYxMS40ODgiIGZpbGw9InVybCgjcGFpbnQyX3JhZGlhbF8xODIyXzE1MjE4KSIvPgo8L21hc2s+CjxnIG1hc2s9InVybCgjbWFzazNfMTgyMl8xNTIxOCkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwMjUuODIgLTI2Mi45MjFDMTExMC45NyAtMjUwLjU0NSAxMTQwLjU4IC0xNzAuMTg4IDExOTEuMDIgLTExMi40NUMxMjM2LjA1IC02MC44OTE1IDEyOTcuMyAtMTYuODk5OSAxMjk2LjE3IDQ2LjU2NzhDMTI5NC42OCAxMzAuMDk4IDEyNjkuNyAyMjEuMDU4IDExODQuMjYgMjY2LjI5NEMxMDg4LjkzIDMxNi43NjggOTYwLjMwOSAzMjIuMTQ4IDg2MS4xODUgMjc2Ljg4MUM3NjcuMDgyIDIzMy45MDggNzM2LjY2IDE0MC43MzUgNzE4LjM1NyA1My41MzIyQzcwMS41OTQgLTI2LjMzMjkgNzA0Ljk4OSAtMTEwLjgyMiA3NjYuNTE2IC0xNzQuMTQ4QzgyNy45OTQgLTIzNy40MjIgOTI4LjgxOSAtMjc3LjAyIDEwMjUuODIgLTI2Mi45MjFaIiBmaWxsPSJ1cmwoI3BhaW50M19saW5lYXJfMTgyMl8xNTIxOCkiLz4KPC9nPgo8L2c+CjxnIG9wYWNpdHk9IjAuMyI+CjxtYXNrIGlkPSJtYXNrNF8xODIyXzE1MjE4IiBzdHlsZT0ibWFzay10eXBlOmFscGhhIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSItMTk2IiB5PSIxNDgiIHdpZHRoPSI0NjciIGhlaWdodD0iNDA1Ij4KPHJlY3QgeD0iLTE5NiIgeT0iMTQ4IiB3aWR0aD0iNDY2LjEyMiIgaGVpZ2h0PSI0MDQuMzIyIiBmaWxsPSJ1cmwoI3BhaW50NF9yYWRpYWxfMTgyMl8xNTIxOCkiLz4KPC9tYXNrPgo8ZyBtYXNrPSJ1cmwoI21hc2s0XzE4MjJfMTUyMTgpIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02OS42MjkgMTU2Ljk2MkMxMjUuOTMgMTY1LjE0NCAxNDUuNTA3IDIxOC4yNzggMTc4Ljg1NiAyNTYuNDU0QzIwOC42MzYgMjkwLjU0NSAyNDkuMTM1IDMxOS42MzMgMjQ4LjM4NiAzNjEuNTk5QzI0Ny40MDEgNDE2LjgyOSAyMzAuODggNDc2Ljk3MyAxNzQuMzg5IDUwNi44ODNDMTExLjM1NiA1NDAuMjU4IDI2LjMwOTcgNTQzLjgxNSAtMzkuMjMyMSA1MTMuODg0Qy0xMDEuNDU0IDQ4NS40NyAtMTIxLjU2OSA0MjMuODYzIC0xMzMuNjcxIDM2Ni4yMDRDLTE0NC43NTUgMzEzLjM5NiAtMTQyLjUxIDI1Ny41MzEgLTEwMS44MjggMjE1LjY1OUMtNjEuMTc4MiAxNzMuODIyIDUuNDg4MjUgMTQ3LjYzOSA2OS42MjkgMTU2Ljk2MloiIGZpbGw9InVybCgjcGFpbnQ1X2xpbmVhcl8xODIyXzE1MjE4KSIvPgo8L2c+CjwvZz4KPC9nPgo8L2c+CjxkZWZzPgo8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXJfMTgyMl8xNTIxOCIgeDE9IjcyMCIgeTE9IjUyMC44MjgiIHgyPSI3MjAiIHkyPSItOC4xNzAzNyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjMTVDRUI3IiBzdG9wLW9wYWNpdHk9IjAiLz4KPHN0b3Agb2Zmc2V0PSIwLjEiIHN0b3AtY29sb3I9IiMxNUNFQjciIHN0b3Atb3BhY2l0eT0iMC41Ii8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0YxRjNGNyIgc3RvcC1vcGFjaXR5PSIwIi8+CjwvbGluZWFyR3JhZGllbnQ+CjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQxX2xpbmVhcl8xODIyXzE1MjE4IiB4MT0iODAyLjg4NiIgeTE9IjU5NC4zMTEiIHgyPSI0MDAuMDgxIiB5Mj0iLTE1OC4yMzMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iIzE1Q0VCNyIgc3RvcC1vcGFjaXR5PSIwLjMiLz4KPHN0b3Agb2Zmc2V0PSIwLjgxMDQ2IiBzdG9wLWNvbG9yPSIjRjFGM0Y3Ii8+CjwvbGluZWFyR3JhZGllbnQ+CjxyYWRpYWxHcmFkaWVudCBpZD0icGFpbnQyX3JhZGlhbF8xODIyXzE1MjE4IiBjeD0iMCIgY3k9IjAiIHI9IjEiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLTI2MS4zODEgLTExNi4yNjIgMTQ3LjIyMyAtMjI3LjQ3OCA5NTMuOTE2IDQ2LjYzODEpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CjxzdG9wIHN0b3AtY29sb3I9IiMxQzJGMTkiLz4KPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNTI2RDNCIiBzdG9wLW9wYWNpdHk9IjAiLz4KPC9yYWRpYWxHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDNfbGluZWFyXzE4MjJfMTUyMTgiIHgxPSIxMjk1LjY0IiB5MT0iMzYzLjEyMiIgeDI9IjEwODkuMzEiIHkyPSItMjkyLjkzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CjxzdG9wIHN0b3AtY29sb3I9IiNGRkQ0NjYiLz4KPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjRjFGM0Y3Ii8+CjwvbGluZWFyR3JhZGllbnQ+CjxyYWRpYWxHcmFkaWVudCBpZD0icGFpbnQ0X3JhZGlhbF8xODIyXzE1MjE4IiBjeD0iMCIgY3k9IjAiIHI9IjEiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLTE3Mi44MjcgLTc2Ljg3MzUgOTcuMzQ1MyAtMTUwLjQxMSAyMi45ODU2IDM2Mi42NTQpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CjxzdG9wIHN0b3AtY29sb3I9IiMxQzJGMTkiLz4KPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNTI2RDNCIiBzdG9wLW9wYWNpdHk9IjAiLz4KPC9yYWRpYWxHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDVfbGluZWFyXzE4MjJfMTUyMTgiIHgxPSIyNDguMDMxIiB5MT0iNTcwLjkwNyIgeDI9IjExMS42MDQiIHkyPSIxMzcuMTE5IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CjxzdG9wIHN0b3AtY29sb3I9IiNGRkQ0NjYiIHN0b3Atb3BhY2l0eT0iMC43Ii8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0YxRjNGNyIvPgo8L2xpbmVhckdyYWRpZW50Pgo8L2RlZnM+Cjwvc3ZnPgo=);
  width: 100%;
  object-fit: contain;
  background-repeat: no-repeat;
  background-size: cover;
  box-shadow: inset 0 -10px 20px 0px rgb(255 255 255);
}
.u-bgcolor--gradation_thin_circle .section-content {
  z-index: 1;
  position: relative;
}
@media (max-width: 680px) {
  .u-bgcolor--gradation_thin_circle {
    background-image: url(data:image/svg+xml;base64,Cjxzdmcgd2lkdGg9IjM5MCIgaGVpZ2h0PSIxMjQ3IiB2aWV3Qm94PSIwIDAgMzkwIDEyNDciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xODI0XzE2NzAwKSI+CjxyZWN0IHdpZHRoPSIzOTAiIGhlaWdodD0iMTI0NyIgZmlsbD0id2hpdGUiLz4KPG1hc2sgaWQ9Im1hc2swXzE4MjRfMTY3MDAiIHN0eWxlPSJtYXNrLXR5cGU6YWxwaGEiIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiIHg9IjAiIHk9IjI5IiB3aWR0aD0iMzkwIiBoZWlnaHQ9IjEyMTgiPgo8cmVjdCB5PSIyOS43ODkxIiB3aWR0aD0iMzkwIiBoZWlnaHQ9IjEyMTciIGZpbGw9InVybCgjcGFpbnQwX2xpbmVhcl8xODI0XzE2NzAwKSIvPgo8L21hc2s+CjxnIG1hc2s9InVybCgjbWFzazBfMTgyNF8xNjcwMCkiPgo8cmVjdCB4PSItNSIgeT0iLTE1My4yMTEiIHdpZHRoPSI0MDAiIGhlaWdodD0iMTUwMCIgZmlsbD0idXJsKCNwYWludDFfbGluZWFyXzE4MjRfMTY3MDApIi8+CjwvZz4KPGcgb3BhY2l0eT0iMC4zIj4KPG1hc2sgaWQ9Im1hc2sxXzE4MjRfMTY3MDAiIHN0eWxlPSJtYXNrLXR5cGU6YWxwaGEiIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiIHg9IjczIiB5PSItMTU0IiB3aWR0aD0iNDg1IiBoZWlnaHQ9IjU1MSI+CjxyZWN0IHg9IjczIiB5PSItMTU0IiB3aWR0aD0iNDg0Ljc2NyIgaGVpZ2h0PSI1NTAuMDQyIiBmaWxsPSJ1cmwoI3BhaW50Ml9yYWRpYWxfMTgyNF8xNjcwMCkiLz4KPC9tYXNrPgo8ZyBtYXNrPSJ1cmwoI21hc2sxXzE4MjRfMTY3MDApIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zNjkuMjU0IC0xNDEuODEzQzQyNy44MDcgLTEzMC42ODEgNDQ4LjE2NyAtNTguMzk4IDQ4Mi44NSAtNi40NjE5NUM1MTMuODIxIDM5LjkxNTggNTU1Ljk0IDc5LjQ4NjkgNTU1LjE2MSAxMzYuNTc3QzU1NC4xMzcgMjExLjcxMyA1MzYuOTU0IDI5My41MzMgNDc4LjIwNCAzMzQuMjI0QzQxMi42NSAzNzkuNjI2IDMyNC4yMDIgMzg0LjQ2NSAyNTYuMDM4IDM0My43NDdDMTkxLjMyOCAzMDUuMDkyIDE3MC40MDggMjIxLjI4MiAxNTcuODIxIDE0Mi44NDJDMTQ2LjI5NCA3MS4wMDE4IDE0OC42MjkgLTQuOTk3NjIgMTkwLjkzOSAtNjEuOTZDMjMzLjIxNCAtMTE4Ljg3NiAzMDIuNTQ3IC0xNTQuNDk1IDM2OS4yNTQgLTE0MS44MTNaIiBmaWxsPSJ1cmwoI3BhaW50M19saW5lYXJfMTgyNF8xNjcwMCkiLz4KPC9nPgo8L2c+CjwvZz4KPGRlZnM+CjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl8xODI0XzE2NzAwIiB4MT0iMTk1IiB5MT0iMTI3Mi45NSIgeDI9IjE5NSIgeTI9Ii0xOS40OTA4IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CjxzdG9wIHN0b3AtY29sb3I9IiMxNUNFQjciIHN0b3Atb3BhY2l0eT0iMCIvPgo8c3RvcCBvZmZzZXQ9IjAuMSIgc3RvcC1jb2xvcj0iIzE1Q0VCNyIgc3RvcC1vcGFjaXR5PSIwLjUiLz4KPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjRjFGM0Y3IiBzdG9wLW9wYWNpdHk9IjAiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDFfbGluZWFyXzE4MjRfMTY3MDAiIHgxPSIyMTguMzAyIiB5MT0iMTYwMC4zMSIgeDI9Ii0yNjkuNjM3IiB5Mj0iMTUxNi4yMiIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjMTVDRUI3IiBzdG9wLW9wYWNpdHk9IjAuMyIvPgo8c3RvcCBvZmZzZXQ9IjAuODEwNDYiIHN0b3AtY29sb3I9IiNGMUYzRjciLz4KPC9saW5lYXJHcmFkaWVudD4KPHJhZGlhbEdyYWRpZW50IGlkPSJwYWludDJfcmFkaWFsXzE4MjRfMTY3MDAiIGN4PSIwIiBjeT0iMCIgcj0iMSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMTc5Ljc0MSAtMTA0LjU3OSAxMDEuMjM5IC0yMDQuNjIgMzAwLjc0NSAxMzguMDE3KSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjMUMyRjE5Ii8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzUyNkQzQiIgc3RvcC1vcGFjaXR5PSIwIi8+CjwvcmFkaWFsR3JhZGllbnQ+CjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQzX2xpbmVhcl8xODI0XzE2NzAwIiB4MT0iNTU0Ljc5MiIgeTE9IjQyMS4zMjIiIHgyPSIzMjYuNjIiIHkyPSItMTMzLjMwOCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjRkZENDY2IiBzdG9wLW9wYWNpdHk9IjAuNyIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGMUYzRjciLz4KPC9saW5lYXJHcmFkaWVudD4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xODI0XzE2NzAwIj4KPHJlY3Qgd2lkdGg9IjM5MCIgaGVpZ2h0PSIxMjQ3IiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=);
  }
}

/* Modules */
/* top-hero */
#main-visual .main-visual-wrapper {
  position: relative;
  height: 800px;
}

#main-visual .main-visual-wrapper picture img {
  object-fit: cover;
}

#main-visual .main-visual-wrapper .catch {
  position: absolute;
  top: 220px;
  white-space: nowrap;
}

#main-visual .main-visual-wrapper .catch h1 .catch-top {
  font-family: "Montserrat";
  font-size: 58px;
  font-weight: 300;
  line-height: 1.5;
  color: var(--dark-gray);
  letter-spacing: 10px;
  margin-left: 9%;
}

#main-visual .main-visual-wrapper .catch h1 .catch-top .catch-text {
  position: relative;
  z-index: 50;
  opacity: 0;
  animation: mvBlurAnime 0.3s 2s linear forwards;
}

#main-visual .main-visual-wrapper .catch h1 .mvborder-top {
  position: relative;
  top: -19px;
  border-bottom: 1px solid #EDEDED;
  width: 0;
  animation: mvBorderAnim 0.7s 1s linear forwards;
}

#main-visual .main-visual-wrapper .catch h1 .mvborder-top-2 {
  position: relative;
  top: -19px;
  border-bottom: 1px solid #EDEDED;
  opacity: 0;
  width: 0;
  animation: mvBorderAnim 0.7s 1s linear forwards;
}

#main-visual .main-visual-wrapper .catch h1 .catch-top-jp {
  font-family: "Noto Sans JP";
  font-size: 38px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 10px;
  color: var(--dark-gray);
}

#main-visual .main-visual-wrapper .catch h1 .catch-bottom {
  overflow: hidden;
  width: fit-content;
  margin-left: 9%;
  padding-right: 120px;
  display: block;
  font-size: 38px;
  line-height: 1.5;
  color: var(--dark-gray);
  letter-spacing: 10px;
}

#main-visual .main-visual-wrapper .catch h1 .catch-bottom .catch-bottom-wrapper .catch-bottom-text {
  opacity: 0;
  animation: mvBlurAnime 0.3s 2s linear forwards;
}

#main-visual .main-visual-wrapper .catch h1 .catch-bottom .catch-bottom-wrapper .mvborder-bottom {
  width: 0;
  border-bottom: 1px solid #EDEDED;
  animation: mvBorderAnimBottom 0.4s 1.5s linear forwards;
}

@keyframes mvBorderAnim {
  0%{
    width: 0vw;
  }
  100%{
    width: 100vw;
  }
}

@keyframes mvBorderAnimBottom {
  0%{
    width: 0%;
  }
  100%{
    width: calc(100% + 120px);
  }
}

@keyframes mvBlurAnime{
  from {
    filter: blur(10px);
    transform: scale(1.02);
    opacity: 0;
  }

  to {
    filter: blur(0);
    transform: scale(1);
    opacity: 1;
  }
}

#main-visual .main-visual-wrapper .scroll-down {
  position: absolute;
  bottom: 150px;
  right: 30px;
  writing-mode: vertical-rl;
  transition: bottom 0.5s;
}

#main-visual .main-visual-wrapper .scroll-down:hover {
  bottom: 130px;
}

#main-visual .main-visual-wrapper .scroll-down .scroll-down-btn .scroll-down-text {
  display: flex;
  align-items: center;
  grid-column-gap: 20px;
  white-space: nowrap;
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-size: 12px;
  line-height: 1.25;
}

#main-visual .main-visual-wrapper .scroll-down .scroll-down-btn .scroll-down-text span.arrow {  
  background: currentColor;
  color: var(--dark-gray);
  display: inline-block;
  height: 30px;
  line-height: 1;
  position: relative;
  vertical-align: middle;
  width: 1px;
}

#main-visual .main-visual-wrapper .scroll-down .scroll-down-btn .scroll-down-text span.arrow::before {
  border: 1px solid;
  border-right: 0;
  border-top: 0;
  bottom: 1px;
  box-sizing: border-box;
  content: "";
  height: 7px;
  left: -3px;
  position: absolute;
  transform: rotate(-45deg);
  width: 7px;
}

#main-visual .main-visual-wrapper .mv-badges {
  display: flex;
  align-items: center;
  grid-column-gap: 30px;
  position: absolute;
  bottom: 40px;
  right: 200px;
}

#main-visual .main-visual-wrapper .mv-badges div img {
  width: 72px;
  height: auto;
}

#main-visual .main-visual-wrapper .sp-block {
  display: inline;
}

@media screen and (max-width: 1250px) {
  #main-visual .main-visual-wrapper .catch h1 .catch-top {
    margin-left: 35px;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-bottom {
    margin-left: 35px;
  }
}

@media screen and (max-width: 1024px) {
  #main-visual .main-visual-wrapper {
    height: 650px;
  }

  #main-visual .main-visual-wrapper .catch {
    top: 132px;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-top {
    font-size: 32px;
    letter-spacing: 6px;
    margin-left: 0;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-top .catch-text {
    margin-left: 21px;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-top-jp {
    font-size: 22px;
    letter-spacing: 6px;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-bottom {
    font-size: 22px;
    letter-spacing: 6px;
    margin-left: 21px;
  }

  #main-visual .main-visual-wrapper .sp-block {
    display: block;
  }

  #main-visual .main-visual-wrapper .catch h1 .mvborder-top {
    top: -12px;
    width: 0;
    animation: mvBorderAnim 0.4s 1.5s linear forwards;
  }

  #main-visual .main-visual-wrapper .catch h1 .mvborder-top-2 {
    display: block;
    opacity: 1;
    top: -12px;
    width: 0;
    animation: mvBorderAnim 0.4s 1s linear forwards;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-bottom .catch-bottom-wrapper .mvborder-bottom {
    width: 0;
    animation: mvBorderAnimBottom 0.2s 2s linear forwards;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-top .catch-text {
    animation: mvBlurAnime 0.3s 2.5s linear forwards;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-bottom .catch-bottom-wrapper .catch-bottom-text {
    animation: mvBlurAnime 0.3s 2.5s linear forwards;
  }

  #main-visual .main-visual-wrapper .mv-badges {
    right: 100px;
  }
}

@media screen and (max-width: 768px) {
  #main-visual .main-visual-wrapper {
    margin-bottom: 80px;
    opacity: 0;
    animation: mvBlurAnime 0.3s 0.3s linear forwards;
  }

  #main-visual .main-visual-wrapper .catch h1 .mvborder-top {
    top: -12px;
    width: 0;
    animation: mvBorderAnim 0.4s 1s linear forwards;
  }

  #main-visual .main-visual-wrapper .catch h1 .mvborder-top-2 {
    display: block;
    opacity: 1;
    top: -12px;
    width: 0;
    animation: mvBorderAnim 0.4s 0.5s linear forwards;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-bottom .catch-bottom-wrapper .mvborder-bottom {
    width: 0;
    animation: mvBorderAnimBottom 0.2s 1.5s linear forwards;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-top .catch-text {
    animation: mvBlurAnime 0.3s 0.3s linear forwards;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-bottom .catch-bottom-wrapper .catch-bottom-text {
    animation: mvBlurAnime 0.3s 0.3s linear forwards;
  }

  #main-visual .main-visual-wrapper .scroll-down {
    display: none;
  }

  #main-visual .main-visual-wrapper .mv-badges {
    right: 0;
    left: 0;
    bottom: -80px;
    justify-content: center;
    flex-wrap: wrap;
    grid-column-gap: 20px;
    grid-row-gap: 10px;
  }

  #main-visual .main-visual-wrapper .mv-badges div img {
    width: 62px;
  }
}

@media screen and (max-width: 321px) {
  #main-visual .main-visual-wrapper .catch h1 .catch-top {
    font-size: 24px;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-top .catch-text {
    margin-left: 10px;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-top-jp {
    font-size: 14px;
  }

  #main-visual .main-visual-wrapper .catch h1 .catch-bottom {
    font-size: 14px;
    margin-left: 10px;
    padding-right: 60px;
  }

  #main-visual .main-visual-wrapper .catch h1 .mvborder-top {
    top: -8px;
  }

  #main-visual .main-visual-wrapper .catch h1 .mvborder-top-2 {
    top: -8px;
  }
}
#common-hero .hero-wrapper {
  position: relative;
  margin-top: 160px;
}

#common-hero .hero-wrapper.no-image {
  height: 300px;
}

#common-hero .hero-wrapper.no-image.gray {
  background: var(--light-gray-sub);
}

#common-hero.lp .hero-wrapper {
  margin-top: initial;
}

#common-hero .hero-wrapper picture img {
  height: 300px;
  object-fit: cover;
}

#common-hero .hero-wrapper .nav {
  max-width: 1240px;
  width: 100%;
  margin: 0 auto;
  padding: 25px 20px 0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

#common-hero .hero-wrapper nav.breadcrumb ol {
  display: flex;
  align-items: center;
  grid-column-gap: 3px;
}

#common-hero .hero-wrapper nav.breadcrumb ol li {
  display: flex;
  align-items: center;
  grid-column-gap: 3px;
}

#common-hero .hero-wrapper nav.breadcrumb ol li:first-child a {
  display: flex;
  align-items: center;
}

#common-hero .hero-wrapper nav.breadcrumb ol li:first-child a .home-icon {
}

#common-hero .hero-wrapper nav.breadcrumb ol li a {
  font-size: .6875rem;  /* 11px */
  color: var(--dark-gray);
  line-height: 2;
  transition: opacity .3s;
}

#common-hero .hero-wrapper nav.breadcrumb ol li a:hover {
  opacity: .6;
}
#common-hero .hero-wrapper nav.breadcrumb ol li span.is-active {
  font-size: .6875rem;  /* 11px */
  font-weight: 700;
  color: var(--dark-gray);
  line-height: 2;
}

#common-hero .hero-wrapper nav.breadcrumb ol li .delimiter-icon {
  width: 17px;
  margin-top: 1px;
}

#common-hero .hero-wrapper .title {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  padding: 0 20px;
  max-width: 900px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#common-hero .hero-wrapper .title h1 {
  font-size: 2.375rem;  /* 38px */
  font-weight: 700;
  line-height: 1.5;
  color: #000;
}

#common-hero .hero-wrapper .title p.desc {
  font-size: 1.25rem;  /* 20px */
  line-height: 1.5;
  color: var(--dark-gray);
  text-align: center;
  margin-top: 24px;
}

@media screen and (max-width: 1024px) {
  #common-hero .hero-wrapper {
    margin-top: 72px;
  }

  #common-hero .hero-wrapper.no-image {
    height: 220px;
  }

  #common-hero .hero-wrapper picture img {
    height: 220px;
  }
  
  #common-hero .hero-wrapper .nav {
    top: unset;
    padding: 15px 20px;
    z-index: 99;
  }

  #common-hero .hero-wrapper nav.breadcrumb {
    margin: 0;
    padding: 0;
    white-space: nowrap;
    width: 100%;
    overflow-x: auto;
  }
  
  #common-hero .hero-wrapper.no-image.gray .nav {
    bottom: -60px;
  }

  #common-hero .hero-wrapper.no-image.gray nav.breadcrumb {
    background: var(--light-gray-sub);
  }

  #common-hero .hero-wrapper .title h1 {
    font-size: 1.75rem;  /* 28px */
    line-height: 1.4;
  }

  #common-hero .hero-wrapper .title p.desc {
    font-size: 1rem;  /* 16px */
    line-height: 1.4;
    text-align: center;
    margin-top: 17px;
  }
}
#contact-cta {
  padding: 80px 120px;
  background: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/images/common/bg-contact-CTA.webp) center center / cover no-repeat;
}

#contact-cta .wrapper {
  position: relative;
  background-color: rgba(255, 255, 255, 0.6);
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 1050px;
  margin: 0 auto;
  padding: 70px 165px;
  box-shadow: 0px 4px 30px rgba(90, 90, 90, 0.07);
}

#contact-cta .wrapper .triangle {
  border-color: var(--blue) transparent transparent var(--blue);
  border-style: solid;
  border-top-left-radius: 3px;
  border-width: 43px 35px 43px 35px;
  position: absolute;
  left: 0;
  top: 0;
}

#contact-cta .wrapper header {
  text-align: center;
}

#contact-cta .wrapper header h2 {
  font-size: 2.125rem;  /* 34px */
  line-height: 1.4;
}

#contact-cta .wrapper header .en-title {
  margin-left: 0;
}

#contact-cta .wrapper p.description {
  line-height: 2.0;
  margin: 40px 0;
}

#contact-cta .wrapper a.cta {
  align-items: center;
  background: var(--blue);
  border-radius: 5px;
  color: var(--white);
  display: flex;
  font-size: 1.25rem;  /* 20px */
  height: 90px;
  justify-content: center;
  line-height: 1.4;
  margin: 0 auto;
  max-width: 540px;
  transition: background 0.3s;
  width: 100%;
  position: relative;
}

#contact-cta .wrapper a.cta:hover {
  background: var(--light-blue);
}

#contact-cta .wrapper a.cta svg {
  position: absolute;
  right: 40px;
}

#contact-cta .tel-wrapper {
  margin-top: 40px;
  text-align: center;
}

#contact-cta .tel-wrapper .tel-link {
  display: flex;
  align-items: center;
}

#contact-cta .tel-wrapper span.tel {
  font-size: 1.5rem;  /* 24px */
  font-weight: 700;
  line-height: 1.45;
}

#contact-cta .tel-wrapper span.tel:before {
  content: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMSAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjAuOTU0MyAxNS40OTYzQzIwLjg5NzcgMTUuMzI1OSAyMC41Mzc4IDE1LjA3NDggMTkuODc0OSAxNC43NDM3QzE5LjY5NTMgMTQuNjM5MyAxOS40MzkzIDE0LjQ5NzQgMTkuMTA4MiAxNC4zMTc1QzE4Ljc3NjcgMTQuMTM3NSAxOC40NzU5IDEzLjk3MTcgMTguMjA2MiAxMy44MjAyQzE3LjkzNTkgMTMuNjY4NyAxNy42ODI4IDEzLjUyMTkgMTcuNDQ2MiAxMy4zODAxQzE3LjQwODQgMTMuMzUxNyAxNy4yOSAxMy4yNjg5IDE3LjA5MTIgMTMuMTMxM0MxNi44OTIxIDEyLjk5NDEgMTYuNzI0MiAxMi44OTIzIDE2LjU4NjcgMTIuODI1OEMxNi40NDk0IDEyLjc1OTggMTYuMzE0NCAxMi43MjY2IDE2LjE4MTggMTIuNzI2NkMxNS45OTI0IDEyLjcyNjYgMTUuNzU1OSAxMi44NjE2IDE1LjQ3MTkgMTMuMTMxM0MxNS4xODggMTMuNDAxNCAxNC45Mjc1IDEzLjY5NDcgMTQuNjkwOSAxNC4wMTIyQzE0LjQ1NDIgMTQuMzI5NiAxNC4yMDMyIDE0LjYyMjkgMTMuOTM4MyAxNC44OTI4QzEzLjY3MyAxNS4xNjI4IDEzLjQ1NTEgMTUuMjk3NyAxMy4yODQ4IDE1LjI5NzdDMTMuMTk5NCAxNS4yOTc3IDEzLjA5MjggMTUuMjczOSAxMi45NjUxIDE1LjIyNjhDMTIuODM3NCAxNS4xNzk1IDEyLjc0MDMgMTUuMTM5IDEyLjY3MzYgMTUuMTA2M0MxMi42MDc2IDE1LjA3MjkgMTIuNDk0MiAxNS4wMDY4IDEyLjMzMzEgMTQuOTA3MUMxMi4xNzE3IDE0LjgwNzYgMTIuMDgxOSAxNC43NTMyIDEyLjA2MyAxNC43NDM3QzEwLjc2NTggMTQuMDIzOCA5LjY1MzE2IDEzLjE5OTkgOC43MjUwNSAxMi4yNzIyQzcuNzk3MjQgMTEuMzQzOSA2Ljk3MzI1IDEwLjIzMTQgNi4yNTM2IDguOTM0MDNDNi4yNDQxNCA4LjkxNTA3IDYuMTg5NTcgOC44MjUwNyA2LjA5MDIxIDguNjY0MTdDNS45OTA3MSA4LjUwMzEzIDUuOTI0MzkgOC4zODk2NCA1Ljg5MTI1IDguMzIzMThDNS44NTgxMiA4LjI1Njk2IDUuODE3ODcgOC4xNTk4NCA1Ljc3MDYxIDguMDMyMDNDNS43MjMzNCA3LjkwNDIyIDUuNjk5NjEgNy43OTc3NSA1LjY5OTYxIDcuNzEyNDNDNS42OTk2MSA3LjU0MjA4IDUuODM0NTkgNy4zMjQxNyA2LjEwNDQ5IDcuMDU4OTlDNi4zNzQzNCA2Ljc5Mzk2IDYuNjY3OTggNi41NDI5MiA2Ljk4NTA5IDYuMzA2MzVDNy4zMDI0NiA2LjA2OTc4IDcuNTk1NzkgNS44MDkyOCA3Ljg2NTc0IDUuNTI1M0M4LjEzNTYgNS4yNDExNyA4LjI3MDUyIDUuMDA0NTUgOC4yNzA1MiA0LjgxNTJDOC4yNzA1MiA0LjY4MjcxIDguMjM3MzkgNC41NDc2NCA4LjE3MTE3IDQuNDEwMzdDOC4xMDQ5IDQuMjcyODEgOC4wMDMxMSA0LjEwNDk1IDcuODY1NzQgMy45MDU5OUM3LjcyODMzIDMuNzA3MTMgNy42NDU0OSAzLjU4ODg3IDcuNjE3MDMgMy41NTA4MUM3LjQ3NTE0IDMuMzE0MjUgNy4zMjg1MyAzLjA2MDk2IDcuMTc2ODMgMi43OTEwNkM3LjAyNTE0IDIuNTIxMjEgNi44NTk1NyAyLjIyMDQxIDYuNjc5NTcgMS44ODkwMUM2LjQ5OTcyIDEuNTU3NzcgNi4zNTc3NyAxLjMwMiA2LjI1MzUgMS4xMjIxQzUuOTIyMjUgMC40NTkzNTYgNS42NzEzNSAwLjA5OTM1MzcgNS41MDA4NSAwLjA0MjczNjVDNS40MzQ1NCAwLjAxNDMyODQgNS4zMzUwMyAwIDUuMjAyNiAwQzQuOTQ2NzcgMCA0LjYxMzA0IDAuMDQ3MjYzOSA0LjIwMTE1IDAuMTQyMDlDMy43ODkxMSAwLjIzNjc2NyAzLjQ2NDg3IDAuMzM2MDcxIDMuMjI4MTEgMC40NDA0QzIuNzU0NjIgMC42MzkxNTcgMi4yNTI3OCAxLjIxNjc3IDEuNzIyNDMgMi4xNzMwNUMxLjIzOTQ5IDMuMDYzIDAuOTk4MDQ3IDMuOTQzODUgMC45OTgwNDcgNC44MTQ5NUMwLjk5ODA0NyA1LjA3MDQyIDEuMDE0NjEgNS4zMTg5OCAxLjA0Nzc1IDUuNTYwNjhDMS4wODA4OCA1LjgwMjEyIDEuMTQwMDkgNi4wNzQ0MSAxLjIyNTQxIDYuMzc3NUMxLjMxMDU5IDYuNjgwNDggMS4zNzkyOSA2LjkwNTU2IDEuNDMxMjMgNy4wNTIxM0MxLjQ4MzIyIDcuMTk4NzkgMS41ODAyOSA3LjQ2MTUzIDEuNzIyMzggNy44NDA0NEMxLjg2NDI3IDguMjE5MjUgMS45NDk1OSA4LjQ1MTE0IDEuOTc4IDguNTM2MzZDMi4zMDk0IDkuNDY0NDMgMi43MDIzOCAxMC4yOTI5IDMuMTU2ODYgMTEuMDIyMUMzLjkwNDYzIDEyLjIzNDIgNC45MjUwOCAxMy40ODY4IDYuMjE3NjIgMTQuNzc5NEM3LjUxMDIyIDE2LjA3MiA4Ljc2MjU2IDE3LjA5MjQgOS45NzQ3MSAxNy44NDA0QzEwLjcwMzggMTguMjk0OSAxMS41MzI2IDE4LjY4NzggMTIuNDYwNSAxOS4wMTk1QzEyLjU0NTggMTkuMDQ3NyAxMi43Nzc3IDE5LjEzMjggMTMuMTU2NCAxOS4yNzUyQzEzLjUzNTIgMTkuNDE3MiAxMy43OTggMTkuNTE0MyAxMy45NDQ3IDE5LjU2NjRDMTQuMDkxNCAxOS42MTg1IDE0LjMxNjUgMTkuNjg3MyAxNC42MTkzIDE5Ljc3MjZDMTQuOTIyNiAxOS44NTc5IDE1LjE5NDcgMTkuOTE3MSAxNS40MzYxIDE5Ljk1MDVDMTUuNjc3NyAxOS45ODMyIDE1LjkyNjMgMjAuMDAwMSAxNi4xODE5IDIwLjAwMDFDMTcuMDUyOSAyMC4wMDAxIDE3LjkzMzggMTkuNzU4NSAxOC44MjM5IDE5LjI3NTZDMTkuNzgwMSAxOC43NDU0IDIwLjM1NzUgMTguMjQzNSAyMC41NTY0IDE3Ljc2OTZDMjAuNjYxIDE3LjUzMzEgMjAuNzYgMTcuMjA4OCAyMC44NTQ3IDE2Ljc5NjhDMjAuOTQ5NyAxNi4zODQ5IDIwLjk5NjkgMTYuMDUxMiAyMC45OTY5IDE1Ljc5NTVDMjAuOTk3MiAxNS42NjI1IDIwLjk4MjkgMTUuNTYzMiAyMC45NTQzIDE1LjQ5NjNaIiBmaWxsPSIjNDA0MDQwIi8+PC9zdmc+");
  margin-left: 23px;
  margin-right: 6px;
} 

#contact-cta .tel-wrapper .annotation {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
}

@media screen and (max-width: 1024px) {
  #contact-cta {
    padding: 60px 20px;
    background: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/images/common/sp-bg-contact-CTA.webp) center center / cover no-repeat;
  }

  #contact-cta .wrapper {
    padding: 60px 20px;
    border-radius: 3px;
  }

  #contact-cta .wrapper .triangle {
    border-color: var(--blue) transparent transparent var(--blue);
    border-style: solid;
    border-top-left-radius: 3px;
    border-width: 29px 23px 29px 23px;
    position: absolute;
    left: 0;
    top: 0;
  }

  #contact-cta .wrapper header h2 {
    font-size: 1.5625rem;  /* 25px */
  }

  #contact-cta .wrapper p.description {
    font-size: .875rem;  /* 14px */
    margin: 50px 0 40px;
  }

  #contact-cta .wrapper a.cta {
    font-size: 1rem;  /* 16px */
    height: 70px;
  }

  #contact-cta .wrapper a.cta svg {
    right: 28px;
  }

  #contact-cta .tel-wrapper .tel-link {
    display: block;
    font-size: .875rem;  /* 14px */
  }
  
  #contact-cta .tel-wrapper span.tel {
    display: block;
  }
  
  #contact-cta .tel-wrapper span.tel:before {
    margin-left: 0;
  } 
}
section.related-service-list {
  padding-top: 70px;
}

section.related-service-list header {
  margin-bottom: 45px;
}

section.related-service-list header h2 {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
  color: #000426;
  border-bottom: 2px solid var(--blue);
  padding-bottom: 10px;
}

section.related-service-list section article.service:first-child a {
  margin-top: 0;
}

section.related-service-list section article.service a {
  display: flex;
  grid-column-gap: 28px;
  margin-top: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #C9CED1;
}

section.related-service-list section article.service a .img img {
  width: 170px;
  height: 105px;
  object-fit: contain;
  border-radius: 3px;
}

section.related-service-list section article.service a .info {
  margin-top: -5px;
}

section.related-service-list section article.service a .info h3.title {
  font-size: 18px;
  line-height: 1.5;
  position: relative;
  display: inline;
  padding-bottom: 3px;
  background: linear-gradient(var(--black), var(--black)) 0 100%/0 1px no-repeat;
  transition: background .3s;
  text-decoration: none;
}

section.related-service-list section article.service a:hover .info h3.title {
  background-size: 100% 1px;
}

section.related-service-list section article.service a .info p.desc {
  font-size: 14px;
  line-height: 1.5;
  color: var(--dark-gray);
  margin-top: 13px;
}

@media screen and (max-width: 1024px) {
  section.related-service-list {
    padding-top: 20px;
  }

  section.related-service-list header h2 {
    font-size: 20px;
  }

  section.related-service-list section article.service a {
    flex-direction: column;
    grid-row-gap: 15px;
    margin-top: 20px;
    padding-bottom: 20px;
  }
  
  section.related-service-list section article.service a .img {
    text-align: center;
  }

  section.related-service-list section article.service a .info h3.title {
    font-size: 20px;
  }

  section.related-service-list section article.service a .info p.desc {
    margin-top: 7px;
  }
}
#post .related-resource-list {
  padding-top: 70px;
}

#lp-content .related-resource-list {
  padding: 100px 0;
}

#lp-content .related-resource-list .list-wrapper {
  margin: 0 auto;
  max-width: 1440px;
  padding: 0 120px;
}

#post .related-resource-list section {
  grid-column-gap: 12px;
  grid-row-gap: 20px;
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(272px,1fr));
}

#lp-content .related-resource-list section {
  grid-column-gap: 40px;
  grid-row-gap: 50px;
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
}

.related-resource-list header {
  margin-bottom: 40px;
}

#post .related-resource-list header h2 {
  font-size: 1.75rem;  /* 28px */
  font-weight: 700;
  line-height: 1.5;
  color: var(--black);
  border-bottom: 2px solid var(--blue);
  padding-bottom: 10px;
}

#lp-content .related-resource-list header h2 {
  color: var(--black);
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.45;
}

.related-resource-list section article.resource {
  border-radius: 3px;
  box-shadow: 0 4px 30px 8px rgb(90 90 90 / 7%);
}

.related-resource-list section article.resource a {
  display: block;
  height: 100%;
}

.related-resource-list section article.resource a .img {
  display: flex;
  justify-content: center;
  background-color: #E6F0FD;
  padding: 7px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}

#post .related-resource-list section article.resource a .img {
  height: 190px;
}

#lp-content .related-resource-list section article.resource a .img {
  height: 210px;
}

.related-resource-list section article.resource a .img img {
  width: auto;
  height: 100%;
}

.related-resource-list section article.resource a .info {
  position: relative;
  width: 100%;
  min-height: 145px;
  padding: 20px 20px 30px 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: calc(100% - 190px);
}

#post .related-resource-list section article.resource a .info {
  height: calc(100% - 190px);
}

#lp-content .related-resource-list section article.resource a .info {
  height: calc(100% - 228px);
}

.related-resource-list section article.resource a .info h3.title {
  margin-bottom: 20px;
}

#post .related-resource-list section article.resource a .info h3.title {
  font-size: .8125rem;  /* 13px */
  line-height: 1.5;
}

#lp-content .related-resource-list section article.resource a .info h3.title {
  font-size: 1.125rem;  /* 18px */
  line-height: 1.45;
}
.related-resource-list section article.resource a .download-btn span {
  max-width: 180px;
  width: 100%;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 180px;
  width: 100%;
  height: 36px;
  font-size: .875rem;  /* 14px */
  line-height: 2.0;
  color: var(--white);
  background-color: var(--blue);
  transition: background-color 0.3s;
  margin: 0 auto;
  padding: 10px;
  border-radius: 5px;
}

.related-resource-list section article.resource a:hover .download-btn span {
  background-color: var(--light-blue);
}

@media screen and (max-width: 1320px) {
  .related-resource-list section article.resource a .download-btn span {
    font-size: .875rem;  /* 14px */
  }
}

@media screen and (max-width: 1024px) {
  #post .related-resource-list {
    padding-top: 60px;
  }
  
  #lp-content .related-resource-list {
    padding: 60px 0;
  }
  
  #lp-content .related-resource-list .list-wrapper {
    padding: 0 20px;
  }
  
  .related-resource-list header {
    margin-bottom: 30px;
  }

  #post .related-resource-list header h2 {
    font-size: 1.25rem;  /* 20px */
  }

  #post .related-resource-list section article.resource a .info h3.title {
    font-size: 1.125rem;  /* 18px */
  }

  .related-resource-list section article.resource a .download-btn span {
    height: 40px;
  }
}
section.recent-post-list-1column .titles {
  margin-bottom: 40px;
}

section.recent-post-list-1column .titles h2 {
  font-size: 2.125rem;
  line-height: 1.45;
}

section.recent-post-list-1column .blog article.post > a {
  display: flex;
  grid-column-gap: 40px;
  align-items: center;
  padding: 30px 20px 30px 0;
  border-top: 1px solid #EDEDED;
}

section.recent-post-list-1column .blog article.post:last-child {
  border-top: 1px solid #EDEDED;
  border-bottom: 1px solid #EDEDED;
}

section.recent-post-list-1column .blog article.post > a .img {
  width: 315px;
}

section.recent-post-list-1column .blog article.post > a .img > div {
  border-radius: 3px;
}

section.recent-post-list-1column .blog article.post > a .img img {
  width: 315px;
  height: 195px;
  object-fit: cover;
  transition: transform 0.3s;
  border-radius: 3px;
}

section.recent-post-list-1column .blog article.post > a:hover .img img {
  transform: scale(1.1, 1.1);
}

section.recent-post-list-1column .blog article.post > a .info h3.title {
  position: relative;
  display: inline;
  font-size: 22px;
  line-height: 1.7;
  padding-bottom: 5px;
  background: linear-gradient(var(--black), var(--black)) 0 100%/0 1px no-repeat;
  transition: background .3s;
  text-decoration: none;
}

section.recent-post-list-1column .blog article.post > a:hover .info h3.title {
  background-size: 100% 1px;
}

section.recent-post-list-1column .blog article.post > a .info h3.title a:hover::after {
  transform: scale(1, 1);
}

section.recent-post-list-1column .blog article.post > a .info {
  position: relative;
}

section.recent-post-list-1column .blog article.post > a .info time.date {
  display: block;
  font-size: 13px;
  line-height: 1.5;
  color: #595959;
  margin-top: 10px;
  margin-bottom: 15px;
}

section.recent-post-list-1column .blog article.post > a .info ul.tags {
  display: flex;
  grid-column-gap: 16px;
  grid-row-gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

section.recent-post-list-1column .blog article.post > a .info ul.tags li.tag {
  display: flex;
  font-size: 11px;
  color: var(--white);
  padding: 1px 12px;
  background-color: var(--light-blue);
  border-radius: 3px;
  text-decoration: none;
  border: 1px solid var(--light-blue);
}

section.recent-post-list-1column .blog article.post > a .info .summary {
  line-height: 2;
  color: var(--dark-gray);
  margin-bottom: 12px;
}

section.recent-post-list-1column .blog article.post > a .info ul.keywords {
  display: flex;
  grid-column-gap: 20px;
  grid-row-gap: 5px;
  flex-wrap: wrap;
}

section.recent-post-list-1column .blog article.post > a .info ul.keywords li.keyword {
  font-size: 12px;  
  font-weight: 700;
  line-height: 2;
  color: var(--light-blue);
}

section.recent-post-list-1column .blog article.post > a .readmore-btn {
  align-items: center;
  display: flex;
  height: 40px;
  justify-content: center;
  left: calc(100% - 50px);
  position: absolute;
  bottom: -15px;
  width: 40px;
  margin-left: auto;
}

section.recent-post-list-1column .blog article.post > a .readmore-btn span.readmore-btn-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  width: 28px;
  height: 28px;
  border-radius: 100%;
  background: var(--white);
  border: 1px solid #1B4698;
  transition: width 0.3s, height 0.3s, background 0.3s;
}

section.recent-post-list-1column .blog article.post > a:hover .readmore-btn span.readmore-btn-inner {
  width: 40px;
  height: 40px;
  background: var(--blue);
}

section.recent-post-list-1column .blog article.post > a .readmore-btn span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 1px;
}

section.recent-post-list-1column .blog article.post > a:hover .readmore-btn span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 0px;
}

section.recent-post-list-1column .blog article.post > a .readmore-btn span.readmore-btn-inner span::before, section.recent-post-list-1column .blog article.post .readmore-btn span.readmore-btn-inner span::after {
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: width 0.32s, left 0.32s;
}

section.recent-post-list-1column .blog article.post > a .readmore-btn span.readmore-btn-inner span::before{
  background: #1B4698;
  height: 1px;
  width: 12px;
}

section.recent-post-list-1column .blog article.post > a:hover .readmore-btn span.readmore-btn-inner span::before{
  background: var(--white);
  top: 0.01px;
  width: 22px;
  left: -10px;
}

section.recent-post-list-1column .blog article.post > a .readmore-btn span.readmore-btn-inner span::after{
  left: 0px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #1B4698;
  border-right: 1px solid #1B4698;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

section.recent-post-list-1column .blog article.post > a:hover .readmore-btn span.readmore-btn-inner span::after{
  border-top: 1px solid var(--white);
  border-right: 1px solid var(--white);
  left: 3px;
  width: 8px;
  height: 8px;
  top: -3.5px;
}

section.recent-post-list-1column .seeall-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 60px;
}

section.recent-post-list-1column .seeall-btn a.btn-with-arrow {
  background-color: var(--white);
  border: 1px solid var(--gray);
  border-radius: 5px;
  display: inline-block;
  outline: none;
  padding: 23px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 330px;
  font-size: 16px;
  line-height: 1.5;
  color: var(--black);
  transition: background-color 0.3s, color 0.3s;
}

section.recent-post-list-1column .seeall-btn a.btn-with-arrow:hover {
  color: var(--white);
  background-color: var(--blue);
  border: 1px solid var(--blue);
}

section.recent-post-list-1column .seeall-btn a.btn-with-arrow::before, section.recent-post-list-1column .seeall-btn a.btn-with-arrow::after {
  content: "";
  position: absolute;
  transition: right 0.2s;
}

section.recent-post-list-1column .seeall-btn a.btn-with-arrow::before {
  background: #092241;
  height: 1px;
  width: 20px;
  right: 30px;
  top: 50%;
}

section.recent-post-list-1column .seeall-btn a.btn-with-arrow:after {
  border-right: 1px solid #092241;
  border-top: 1px solid #092241;
  height: 5px;
  right: 30px;
  top: calc(50% - 2px);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

section.recent-post-list-1column .seeall-btn a.btn-with-arrow:hover:before {
  background: var(--white);
  right: 25px;
}

section.recent-post-list-1column .seeall-btn a.btn-with-arrow:hover:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  right: 25px;
}

@media screen and (max-width: 1024px) {
  .recent-post-list-1column {
    padding: 60px 0 !important;
  }
  
  section.recent-post-list-1column .titles h2 {
    font-size: 1.625rem;
  }
  
  section.recent-post-list-1column .blog article.post {
    background: var(--white);
    box-shadow: 7px 7px 30px rgb(0 0 0 / 16%);
    border-radius: 3px;
    margin-bottom: 20px;
  }

  section.recent-post-list-1column .blog article.post:last-child {
    border-top: none;
    border-bottom: none;
  }

  section.recent-post-list-1column .blog article.post > a {
    align-items: start;
    grid-column-gap: 17px;
    padding: 20px 10px;
  }

  section.recent-post-list-1column .blog article.post > a .img {
    width: 85px;
  }

  section.recent-post-list-1column .blog article.post > a .img img {
    width: 85px;
    height: 48px;
  }

  section.recent-post-list-1column .blog article.post > a .info {
    margin-top: -9px;
  }

  section.recent-post-list-1column .blog article.post > a .info h3.title {
    font-size: 13px;
  }

  section.recent-post-list-1column .blog article.post > a .info time.date {
    font-size: 11px;
    margin-top: 10px;
    margin-bottom: 10px;
  }

  section.recent-post-list-1column .blog article.post > a .info ul.tags {
    margin-bottom: 0;
  }

  section.recent-post-list-1column .blog article.post > a .info ul.tags li.tag {
    font-size: 10px;
  }

  section.recent-post-list-1column .blog article.post > a .info .summary {
    display: none;
  }

  section.recent-post-list-1column .blog article.post > a .info ul.keywords li.keyword {
    font-size: 10px;
    margin-top: 8px;
  }

  section.recent-post-list-1column .blog article.post > a .readmore-btn {
    display: none;
  }

  section.recent-post-list-1column .seeall-btn {
    margin-top: 40px;
  }
}
section.recent-post-list-by-tag {
  padding-top: 70px;
}

section.recent-post-list-by-tag header {
  margin-bottom: 45px;
}

section.recent-post-list-by-tag header h2 {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
  color: #000426;
  border-bottom: 2px solid var(--blue);
  padding-bottom: 10px;
}

section.recent-post-list-by-tag section.is-4column {
  display: grid;
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-columns: repeat(auto-fill, minmax(195px, 1fr));
}

section.recent-post-list-by-tag section.is-3column {
  display: grid;
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}

section.recent-post-list-by-tag section.is-2column {
  display: grid;
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}

section.recent-post-list-by-tag section.is-1column {
  display: grid;
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-columns: 1fr;
}

section.recent-post-list-by-tag section article.post {
  min-height: 222px;
  box-shadow: 7px 7px 30px rgba(0, 0, 0, 0.16);
  border-radius: 3px;
}

section.recent-post-list-by-tag section.is-1column article.post {
  min-height: unset;
}


section.recent-post-list-by-tag section article.post a {
  display: block;
  height: 100%;
}

section.recent-post-list-by-tag section.is-1column article.post a {
  display: flex;
}

section.recent-post-list-by-tag section article.post a .img img {
  display: block;
  width: 100%;
  height: 109px;
  object-fit: cover;
  transition: transform 0.3s;
}

section.recent-post-list-by-tag section.is-1column article.post a .img img {
  width: 196px;
  height: 109px;
}

section.recent-post-list-by-tag section article.post a:hover .img img {
  transform: scale(1.1, 1.1);
}

section.recent-post-list-by-tag section article.post a .info {
  padding: 10px 13px 20px;
}

section.recent-post-list-by-tag section.is-1column article.post a .info {
  padding: 10px 13px 10px;
}

section.recent-post-list-by-tag section article.post a .info time.date {
  display: block;
  font-size: 11px;
  line-height: 1.5;
  color: #595959;
  margin-bottom: 5px;
}

section.recent-post-list-by-tag section article.post a .info .title {
  line-height: 1.4;
}

section.recent-post-list-by-tag section article.post a .info .title h3 {
  font-size: 13px;
  position: relative;
  display: inline;
  padding-bottom: 2px;
  background: linear-gradient(var(--black), var(--black)) 0 100%/0 1px no-repeat;
  transition: background .3s;
  text-decoration: none;
}

section.recent-post-list-by-tag section article.post a:hover .info .title h3 {
  background-size: 100% 1px;
}

@media screen and (max-width: 1024px) {
  section.recent-post-list-by-tag {
    padding-top: 60px;
  }

  section.recent-post-list-by-tag header h2 {
    font-size: 20px;
  }

  section.recent-post-list-by-tag section.is-4column,
  section.recent-post-list-by-tag section.is-3column,
  section.recent-post-list-by-tag section.is-2column,
  section.recent-post-list-by-tag section.is-1column,
  {
    grid-template-columns: 1fr;
  }

  section.recent-post-list-by-tag section article.post {
    min-height: unset;
    padding: 10px 10px 20px 10px;
  }

  section.recent-post-list-by-tag section article.post a {
    display: flex;
    grid-column-gap: 18px;
  }

  section.recent-post-list-by-tag section article.post a .img img {
    width: 85px !important;
    height: 48px !important;
  }

  section.recent-post-list-by-tag section article.post a .info {
    padding: 0;
  }
}

section.ranking-post-list-3column {
  padding: 90px 0;
}

@media screen and (max-width: 1024px) {
  section.ranking-post-list-3column {
    padding: 60px 0;
  }
}
.lp-download {
  padding: 70px 0;
  background-color: #F8FBFF;
}

.lp-download .description {
  line-height: 2.0;
}

.lp-download .basic-btn, .lp-download .video {
  margin-top: 60px;
}

.lp-download .basic-btn {
  display: flex;
}

.lp-download .basic-btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--blue);
  border-radius: 5px;
  color: var(--white);
  font-size: 1.25rem;  /* 20px */
  line-height: 1.45;
  min-width: 290px;
  min-height: 70px;
  margin: 0 auto;
  padding: 20px;
  transition: background-color .3s;
}

.lp-download .basic-btn a:hover {
  background-color: var(--light-blue);
}

@media screen and (max-width: 1024px) {
  .lp-download {
    padding: 60px 0;
  }
  
  .lp-download .description p {
    font-size: .9375rem;  /* 15px */
  }

  .lp-download .basic-btn, .lp-download .video {
    margin-top: 40px;
  }
}
/* ------------------------------------------------------------------------------------
Resource List
------------------------------------------------------------------------------------ */
#resource-content .wrapper .contents {
  position: relative;
}

#resource-content .wrapper .contents .is-hidden {
  display: none;
}

#resource-content.is-result .wrapper #common-hero .hero-wrapper .title p.desc {
  display: none;
}

#resource-content.is-result .wrapper .contents .top {
  display: none;
}

#resource-content.is-result .wrapper .contents header {
  display: none;
}

#resource-content.is-result .wrapper .contents .side-nav {
  display: none;
}

#resource-content .wrapper .contents .list {
  padding: 90px 20px;
}

#resource-content.is-result .wrapper .contents .list .content {
  max-width: 1040px;
}

#resource-content.is-result .wrapper .contents .list .content .content-wrapper {
  margin: 0 auto;
}

#resource-content.is-result .wrapper .contents .list .content .content-wrapper section.resources {
  grid-row-gap: 50px;
}

#resource-content .wrapper .contents section.bottom-nav {
  display: none;
}

#resource-content .wrapper .contents aside.side-nav {
  position: absolute;
  right: 0;
  margin-top: 50px;
}

#resource-content .wrapper .contents aside.side-nav.is-scroll {
  position: fixed;
  top: 100px;
  margin-top: 0;
}

#resource-content .wrapper .contents aside.side-nav.is-end-pos {
  position: absolute;
  top: unset;
  bottom: 100px;
}

#resource-content .wrapper .contents aside.side-nav ul {
  border-radius: 8px 0 0 8px;
  box-shadow: 7px 7px 30px rgb(0 0 0 / 16%);
  margin-bottom: 20px;
}

#resource-content .wrapper .contents aside.side-nav ul li {
  border-bottom: 1px solid #C9CED1;
}

#resource-content .wrapper .contents aside.side-nav ul li a {
  display: flex;
  grid-column-gap: 19px;
  align-items: center;
  font-size: .875rem;  /* 14px */
  font-weight: 400;
  line-height: 1.45;
  color: var(--light-blue);
  background: var(--white);
  padding: 15px;
  cursor: pointer;
  transition: opacity 0.3s;
}

#resource-content .wrapper .contents aside.side-nav ul li a:hover {
  opacity: 0.6;
}

#resource-content .wrapper .contents aside.side-nav ul li.first-item a {
  font-size: 1rem;  /* 16px */
  font-weight: 700;
  line-height: 1.45;
  color: var(--black);
  background: #EDEDED;
  transition: background 0.3s;
}

#resource-content .wrapper .contents aside.side-nav ul li.first-item a:hover {
  background: #A6A6A6;
  opacity: 1;
}

#resource-content .wrapper .contents aside.side-nav ul li.first-item a {
  position: relative;
  border-radius: 8px 0 0 8px;
}

#resource-content .wrapper .contents aside.side-nav ul li.first-item a .anchor-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  background: var(--white);
  border-radius: 50%;
  position: absolute;
  right: 25px;
}

#resource-content .wrapper .contents aside.side-nav ul li.first-item a .anchor-icon svg {
  margin-top: 5px;
}

#resource-content .wrapper .contents aside.side-nav ul.second-list li.first-item a {
  border-radius: 8px 0 0 0;
}

#resource-content .wrapper .contents aside.side-nav ul.second-list li:last-child {
  border: 0;
}

#resource-content .wrapper .contents aside.side-nav ul.second-list li:last-child a {
  border-radius: 0 0 0 8px;
}

#resource-content .wrapper .contents .top {
  padding: 90px 20px;
  background: #F8FBFF;
}

#resource-content .wrapper .contents .top .content {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}

#resource-content .wrapper .contents .top .content .content-wrapper {
  margin-left: 280px;
  margin-right: 280px;
}

#resource-content .wrapper .contents .top .content .content-wrapper header h2 {
  font-size: 2.125rem;  /* 34px */
  font-weight: 400;
  line-height: 1.45;
  margin-bottom: 40px;
  margin-left: 10px;
}

#resource-content .wrapper .contents .top .content .content-wrapper section.resources {
  grid-column-gap: 20px;
  grid-row-gap: 40px;
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(333px, 1fr));
}

#resource-content .wrapper .contents .top .content .content-wrapper section.resources article.resource {
  border-radius: 3px;
  box-shadow: 0 4px 30px 8px rgb(90 90 90 / 7%);
}

#resource-content .wrapper .contents .top .content .content-wrapper section.resources article.resource a {
  display: block;
  height: 100%;
}

#resource-content .wrapper .contents .top .content .content-wrapper section.resources article.resource a .img {
  background-color: #e6f0fd;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: flex;
  height: 204px;
  align-items: center;
  justify-content: center;
  padding: 7px;
}

#resource-content .wrapper .contents .top .content .content-wrapper section.resources a .img img {
  width: auto;
  height: auto;
  max-height: 190px;
  max-width: 215px;
  min-height: 120px;
  min-width: 130px;
}

#resource-content .wrapper .contents .top .content .content-wrapper section.resources a .info {
  display: flex;
  flex-direction: column;
  height: calc(100% - 204px);
  justify-content: space-between;
  min-height: 145px;
  padding: 20px;
  position: relative;
  width: 100%;
}

#resource-content .wrapper .contents .top .content .content-wrapper section.resources a .info h3.title {
  font-size: 1.125rem;  /* 18px */
  line-height: 1.45;
  margin-bottom: 20px;
}

#resource-content .wrapper .contents .top .content .content-wrapper section.resources a .download-btn span {
  align-items: center;
  background-color: var(--blue);
  border-radius: 5px;
  color: var(--white);
  display: flex;
  font-size: .875rem;  /* 14px */
  height: 40px;
  justify-content: center;
  line-height: 2;
  margin: 0 auto;
  max-width: 180px;
  padding: 10px;
  transition: background-color .3s;
  width: 100%;
}

#resource-content .wrapper .contents .top .content .content-wrapper section.resources a:hover .download-btn span {
  background-color: var(--light-blue);
}

#resource-content .wrapper .contents .list .content {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}

#resource-content .wrapper .contents .list .content .content-wrapper {
  margin-left: 280px;
  margin-right: 280px;
}

#resource-content .wrapper .contents .list .content .content-wrapper header h2 {
  font-size: 1.75rem;  /* 28px */
  font-weight: 400;
  line-height: 1.45;
  margin-top: 60px;
  margin-bottom: 40px;
}

#resource-content .wrapper .contents .list .content .content-wrapper header h2.title-1 {
  margin-top: 0;
}

#resource-content .wrapper .contents .list .content .content-wrapper header h3 {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.45;
  margin-left: 10px;
}

#resource-content .wrapper .contents .list .content .content-wrapper header .category-link {
  display: flex;
  grid-column-gap: 50px;
  align-items: center;
  margin: 50px 0 40px;
}

#resource-content .wrapper .contents .list .content .content-wrapper header .category-link-1 {
  margin-top: 0;
}

#resource-content .wrapper .contents .list .content .content-wrapper header .category-link .link a {
  display: flex;
  align-items: center;
  padding: 6px 16px;
  border: 1px solid var(--light-blue);
  border-radius: 5px;
  color: var(--light-blue);
  transition: background 0.3s, padding 0.3s;
  cursor: pointer;
}

#resource-content .wrapper .contents .list .content .content-wrapper header .category-link .link a:hover {
  color: var(--white);
  background: var(--light-blue);
  padding: 6px 12px 6px 16px;
}

#resource-content .wrapper .contents .list .content .content-wrapper header .category-link .link a .label {
  font-size: .875rem;  /* 14px */
  line-height: 1.45;
  margin-right: 14px;
  transition: margin-right 0.3s;
}

#resource-content .wrapper .contents .list .content .content-wrapper header .category-link .link a:hover .label {
  margin-right: 18px;
}


#resource-content .wrapper .contents .list .content .content-wrapper header .category-link .link a svg {
  margin-top: 1px;
}

#resource-content .wrapper .contents .list .content .content-wrapper header .category-link .link a:hover svg path {
  stroke: var(--white);
}

#resource-content .wrapper .contents .list .content .content-wrapper section.resources {
  grid-column-gap: 20px;
  grid-row-gap: 40px;
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(333px, 1fr));
}

#resource-content .wrapper .contents .list .content .content-wrapper section.resources article.resource {
  border-radius: 3px;
  box-shadow: 0 4px 30px 8px rgb(90 90 90 / 7%);
}

#resource-content .wrapper .contents .list .content .content-wrapper section.resources article.resource a {
  display: block;
  height: 100%;
}

#resource-content .wrapper .contents .list .content .content-wrapper section.resources article.resource a .img {
  background-color: #e6f0fd;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  display: flex;
  height: 204px;
  align-items: center;
  justify-content: center;
  padding: 7px;
}

#resource-content .wrapper .contents .list .content .content-wrapper section.resources a .img img {
  width: auto;
  height: auto;
  max-height: 200px;
  max-width: 215px;
  min-width: 130px;
}

#resource-content .wrapper .contents .list .content .content-wrapper section.resources a .info {
  display: flex;
  flex-direction: column;
  height: calc(100% - 204px);
  justify-content: space-between;
  min-height: 145px;
  padding: 20px;
  position: relative;
  width: 100%;
}

#resource-content .wrapper .contents .list .content .content-wrapper section.resources a .info h3.title {
  font-size: 1rem;  /* 16px */
  line-height: 1.45;
  margin-bottom: 20px;
}

#resource-content .wrapper .contents .list .content .content-wrapper section.resources a .download-btn span {
  align-items: center;
  background-color: var(--blue);
  border-radius: 5px;
  color: var(--white);
  display: flex;
  font-size: .875rem;  /* 14px */
  height: 40px;
  justify-content: center;
  line-height: 2;
  margin: 0 auto;
  max-width: 180px;
  padding: 10px;
  transition: background-color .3s;
  width: 100%;
}

#resource-content .wrapper .contents .list .content .content-wrapper section.resources a:hover .download-btn span {
  background-color: var(--light-blue);
}

.is-animate {
  opacity: 1;
  animation: .6s zoom-in;
}

@keyframes zoom-in {
  0% {
    opacity: 0.3;
    transform: scale(.8);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}

#resource-content.is-result .wrapper .contents section.bottom-nav {
  display: block;
  background: #F8FBFF;
}

#resource-content.is-result .wrapper .contents section.bottom-nav .bottom-nav-wrapper {
  width: fit-content;
  margin: 0 auto;
  padding: 70px 155px;
}

#resource-content.is-result .wrapper .contents section.bottom-nav .bottom-nav-wrapper h3 {
  font-size: 1.375rem;  /* 22px */
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 40px;
}

#resource-content.is-result .wrapper .contents section.bottom-nav .bottom-nav-wrapper ul.other-catetory-list {
  display: flex;
  flex-wrap: wrap;
  grid-column-gap: 20px;
  grid-row-gap: 15px;
}

#resource-content.is-result .wrapper .contents section.bottom-nav .bottom-nav-wrapper ul.other-catetory-list li a {
  display: flex;
  align-items: center;
  grid-column-gap: 20px;
  padding: 14px 20px;
  background: var(--white);
  border-radius: 43px;
  font-size: .875rem;  /* 14px */
  line-height: 1.45;
  color: var(--light-blue);
  border: 1px solid var(--light-blue);
  transition: grid-column-gap 0.3s, padding 0.3s, background 0.3s;
  cursor: pointer;
}

#resource-content.is-result .wrapper .contents section.bottom-nav .bottom-nav-wrapper ul.other-catetory-list li a:hover {
  color: var(--white);
  background: var(--light-blue);
  grid-column-gap: 24px;
  padding: 14px 16px 14px 20px;
}

#resource-content.is-result .wrapper .contents section.bottom-nav .bottom-nav-wrapper ul.other-catetory-list li a:hover svg path {
  stroke: var(--white);
}

@media screen and (max-width: 1639px) {
  #resource-content .wrapper .contents .top .content {
    max-width: 1320px;
  }

  #resource-content .wrapper .contents .top .content .content-wrapper {
    margin-left: 0;
  }

  #resource-content .wrapper .contents .list .content {
    max-width: 1200px;
  }

  #resource-content .wrapper .contents .list .content .content-wrapper {
    margin-left: 0;
    margin-right: 0;
  }
}

@media screen and (max-width: 1024px) {
  #resource-content.is-result .wrapper .contents .list {
    padding: 60px 20px;
    background: var(--white);
  }

  #resource-content.is-result .wrapper .contents section.bottom-nav .bottom-nav-wrapper {
    padding: 60px 20px;
  }

  #resource-content .wrapper .contents aside.side-nav {
    position: unset !important;
    margin-top: 0;
    padding: 60px 0;
    background: #f8fbff;
  }

  #resource-content .wrapper .contents aside.side-nav ul.first-list {
    margin-bottom: 0;
    box-shadow: none;
    border-radius: 0;
  }

  #resource-content .wrapper .contents aside.side-nav ul.first-list li {
    border-bottom: 1px solid #C9CED1;
  }

  #resource-content .wrapper .contents aside.side-nav ul.second-list li.first-item a {
    border-radius: 0;
  }

  #resource-content .wrapper .contents aside.side-nav ul li.first-item a {
    border-radius: 0;
  }

  #resource-content .wrapper .contents aside.side-nav ul.second-list li:last-child a {
    border-radius: 0;
  }

  #resource-content .wrapper .contents .top {
    padding: 0 20px 60px;
  }

  #resource-content .wrapper .contents .top .content .content-wrapper {
    margin-left: 0;
    margin-right: 0;
  }

  #resource-content .wrapper .contents .top .content .content-wrapper header h2 {
    font-size: 1.625rem;  /* 26px */
    margin-bottom: 40px;
  }

  #resource-content .wrapper .contents .list {
    padding: 60px 20px;
  }

  #resource-content .wrapper .contents .list .content .content-wrapper {
    margin-right: 0;
  }

  #resource-content .wrapper .contents .list .content .content-wrapper header h2 {
    font-size: 1.25rem;  /* 20px */
    margin-left: 10px;
    margin-bottom: 40px;
  }

  #resource-content .wrapper .contents .list .content .content-wrapper header .category-link {
    grid-column-gap: 0;
    justify-content: space-between;
    margin-bottom: 30px;
  }

  #resource-content .wrapper .contents .list .content .content-wrapper header h3 {
    font-size: 1rem;  /* 16px */
  }

  #resource-content .wrapper .contents .list .content .content-wrapper header .category-link .link a {
    padding: 6px;
  }

  #resource-content .wrapper .contents .list .content .content-wrapper header .category-link .link a:hover {
    padding: 6px 4px 6px 6px;
  }

  #resource-content .wrapper .contents .list .content .content-wrapper header .category-link .link a .label {
    font-size: .8125rem;  /* 13px */
    margin-right: 4px;
  }

  #resource-content .wrapper .contents .list .content .content-wrapper header .category-link .link a:hover .label {
    margin-right: 6px;
  }
}
.company-branch .wrapper {
  max-width: 1100px;
  display: flex;
  grid-column-gap: 75px;
  margin: 90px auto;
  padding: 0 20px;
}

.company-branch .contents {  
  max-width: 385px;
  min-width: 385px;
}

.company-branch h2 {
  font-size: 1.25rem;
  line-height: 1.45;
  font-weight: 700;
  margin-bottom: 20px;
}

.company-branch .address {
  line-height: 1.45;
  margin-bottom: 20px;
}

.company-branch .contact {
  line-height: 1.45;
}

.company-branch .map {
  width: 100%;
}

.company-branch iframe {
  width: 100%;
  aspect-ratio: 3/2;
}

@media screen and (max-width: 1024px) {
  .company-branch .wrapper {
    display: block;
    margin: 40px auto;
  }

  .company-branch .contents {
    max-width: 100%;
    min-width: unset;
  }

  .company-branch .contact {
    margin-bottom: 40px;
  }
}
.company-history {
  padding: 0 0 90px 0;
}

.company-history .wrapper {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
}

.company-history .wrapper h2 {
  font-size: 2.125rem;
  line-height: 1.45;
  margin-bottom: 90px;
}

.company-history .wrapper .list-wrapper {
  overflow: hidden;
  transition: all .5s ease-in;
}

.company-history .wrapper .list-wrapper.seminar {
  height: auto !important;
}

.company-history .wrapper .button-wrapper {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%);
  background-color: transparent;
  width: 100%;
  height: 60%;
  position: absolute;
  left: 0;
  bottom: 0;
}

.company-history .wrapper .button-wrapper.close-area {
  background: none;
  position: static;
  margin-top: 60px;
}

.company-history .wrapper .button-wrapper button {
  width: 230px;
  height: 70px;
  text-align: center;
  background: var(--white);
  border: 1px solid var(--gray);
  border-radius: 5px;
  transition: background 0.3s;
}

.company-history .wrapper .button-wrapper button:hover {
  color: var(--white);
  border: 1px solid var(--light-blue);
  background: var(--light-blue);
}

.company-history .wrapper .button-wrapper button.open-link:before {
  content: "もっとみる";
  display: inline;
}

.company-history .wrapper .button-wrapper button.close-link:before {
  content: "とじる";
  display: inline;
}

.company-history .wrapper dl {
  display: flex;
}

.company-history .wrapper dt {
  width: 170px;
  color: var(--light-blue);
  line-height: 1.45;
  display: flex;
  align-items: center;
}

.company-history .wrapper dd {
  line-height: 1.45;
  width: 100%;
  padding: 30px 15px;
  border-bottom: 1px solid #DDDDDD;
}

.company-history .wrapper dd ul {
  display: flex;
  flex-direction: column;
  grid-row-gap: 20px;
}

@media screen and (max-width: 1024px) {
  .company-history .wrapper {
    padding: 0 20px;
  }

  .company-history .wrapper h2 {
    font-size: 1.75rem;
    margin-bottom: 60px;
  }

  .company-history .wrapper dl {
    flex-direction: column;
    grid-row-gap: 5px;
    margin-bottom: 30px;
    padding: 0 10px;
  }
  
  .company-history .wrapper dl:last-child {
    margin-bottom: 0;
  }

  .company-history .wrapper dt {
    font-size: .9375rem;
    line-height: 1.8;
  }

  .company-history .wrapper dd {
    font-size: .9375rem;
    line-height: 1.8;
    padding: 0;
    border: none;
  }
}
.company-menu {
  padding: 20px;
  background: #F8FBFF;
  overflow-x: auto;
}

.company-menu ul {
  display: flex;
  grid-column-gap: 60px;
  grid-row-gap: 10px;
  justify-content: center;
  font-size: 1rem;
  line-height: 2;
  font-weight: 700;
  white-space: nowrap;
  width: max-content;
  margin: 0 auto;
}

.company-menu a {
  transition: opacity 0.3s;
}

.company-menu a:hover {
  opacity: 0.6;
}

.company-menu span {
  color: var(--gray);
}

@media screen and (max-width: 1024px) {
  .company-menu {
    margin-top: 50px;
  }
  
  .company-menu ul {
    grid-column-gap: 20px;
    font-size: .875rem;
    line-height: 1.5;
  }
}
.partner-menu {
  padding: 20px;
  background: #f8fbff;
  overflow-x: auto;
}

.partner-menu ul {
  display: flex;
  grid-column-gap: 60px;
  grid-row-gap: 10px;
  justify-content: center;
  font-size: 1rem;
  line-height: 2;
  font-weight: 700;
  white-space: nowrap;
  width: max-content;
  margin: 0 auto;
}

.partner-menu a {
  transition: opacity 0.3s;
}

.partner-menu a:hover {
  opacity: 0.6;
}

.partner-menu span {
  color: var(--gray);
}

@media screen and (max-width: 1024px) {
  .partner-menu {
    margin-top: 50px;
  }

  .partner-menu ul {
    grid-column-gap: 20px;
    font-size: 0.875rem;
    line-height: 1.5;
  }
}
.company-message {
  padding: 90px 0;
}

.company-message .wrapper {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 20px;
}

.company-message .wrapper h2 {
  font-size: 2.125rem;
  line-height: 1.45;
  margin-bottom: 60px;
}

.company-message .wrapper .contents {
  display: flex;
  grid-column-gap: 60px;
}

.company-message .wrapper .contents .text {
  max-width: 665px;
  width: 100%;
  line-height: 2;
  color: var(--dark-gray);
}

.company-message .wrapper .contents .image {
  width: 375px;
  min-width: 375px;
}

.company-message .wrapper .signature {
  max-width: 300px;
  margin: 40px auto 0;
}

.company-message .wrapper img {
  width: 100%;
}

@media screen and (max-width: 1024px) {
  .company-message {
    padding: 60px 0;
  }

  .company-message .wrapper h2 {
    font-size: 1.75rem;
    margin-bottom: 40px;
  }

  .company-message .wrapper .contents {
    flex-direction: column-reverse;
    grid-row-gap: 30px;
  }

  .company-message .wrapper .contents .text {
    max-width: 100%;
    font-size: .9375rem;
    line-height: 1.8;
  }

  .company-message .wrapper .contents .image {
    width: 100%;
    max-width: 500px;
    min-width: unset;
    margin: 0 auto;
  }

  .company-message .wrapper .signature {
    margin: 30px auto 0;
  }
}
.company-officer {
  padding-top: 90px;
}

.company-officer .wrapper {
  max-width: 940px;
  margin: 0 auto;
  padding: 0 20px;
}

.company-officer .wrapper h2 {
  font-size: 2.125rem;
  line-height: 1.45;
  margin-bottom: 60px;
}

.company-officer .main-list {
  display: flex;
  flex-wrap: wrap;
  grid-row-gap: 50px;
}

.company-officer .main-list li {
  width: 50%;
}

.company-officer .main-list li .item-wrapper {
  width: fit-content;
}

.company-officer .main-list li .item-wrapper .image {
  max-width: 360px;
  margin-bottom: 20px;
}

.company-officer .main-list li .item-wrapper .image img {
  width: 100%;
}

.company-officer .main-list li .item-wrapper .position {
  margin-bottom: 5px;
  line-height: 1.45;
}

.company-officer .main-list li .item-wrapper .name {
  line-height: 1.45;
  font-weight: 700;
}

.company-officer .footer-content {
  width: 100vw;
  background: #F8FBFF;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: 60px;
  padding: 90px 20px;
}

.company-officer .footer-content .list {
  display: flex;
  justify-content: space-between;
  max-width: 900px;
  margin: 0 auto;
}

.company-officer .footer-content .list .position {
  margin-bottom: 5px;
  line-height: 1.45;
}

.company-officer .footer-content .list .name {
  line-height: 1.45;
  font-weight: 700;
}


@media screen and (max-width: 1024px) {
  .company-officer {
    padding-top: 60px;
  }

  .company-message .officer h2 {
    font-size: 1.75rem;
    margin-bottom: 40px;
  }

  .company-officer .main-list {
    grid-column-gap: 20px;
  }

  .company-officer .main-list li {
    width: calc(50% - 10px);
  }

  .company-officer .main-list li .item-wrapper .position {
    font-size: .9375rem;
    line-height: 1.8;
  }

  .company-officer .main-list li .item-wrapper .name {
    font-size: .9375rem;
    line-height: 1.45;
  }

  .company-officer .footer-content {
    padding: 60px 40px;
  }

  .company-officer .footer-content .list {
    justify-content: unset;
    flex-wrap: wrap;
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    width: fit-content;
    margin: 0 auto;
    padding: 0;
  }
}

@media screen and (max-width: 414px) {
  .company-officer .footer-content .list li {
    width: calc(50% - 15px);
  }
}
.company-philosophy.bg-gray {
  background: #EEF2F8;
}

.company-philosophy .wrapper {
  position: relative;
  height: auto;
  padding: 90px 0;
}

.company-philosophy .wrapper picture {
  position: absolute;
  top: 0;
  height: 100%;
}

.company-philosophy .wrapper picture img {
  object-fit: cover;
}

.company-philosophy .wrapper .contents {
  position: relative;
  padding: 0 20px;
}

.company-philosophy .wrapper.list .contents {
  width: fit-content;
  position: unset;
  transform: unset;
  margin: 0 auto;
}

.company-philosophy .wrapper .contents h2 {
  font-size: 2.125rem;
  line-height: 1.45;
  color: var(--light-blue);
  margin-bottom: 60px;
}

.company-philosophy .wrapper .contents h3 {
  font-size: 2.125rem;
  line-height: 1.45;
  margin-bottom: 30px;
}

.company-philosophy .wrapper .contents p {
  line-height: 2;
  color: var(--dark-gray);
}

.company-philosophy .wrapper.list ul {
  display: flex;
  grid-column-gap: 50px;
  grid-row-gap: 30px;
  flex-wrap: wrap;
}

.company-philosophy .wrapper.list ul li {
  display: flex;
  flex-direction: column;
  grid-row-gap: 20px;
  max-width: 200px;
  width: 100%;
}

.company-philosophy .wrapper.list ul li div {
  width: 175px;
  margin: 0 auto;
}

.company-philosophy .wrapper.list ul li h4 {
  font-size: 1.25rem;
  line-height: 1.45;
}

.company-philosophy .wrapper.list ul li p {
  line-height: 1.45;
  color: var(--dark-gray);
}

@media screen and (max-width: 1024px) {
  .company-philosophy .wrapper {
    padding: 60px 0;
  }

  .company-philosophy .wrapper .contents h2 {
    font-size: 1.75rem;
    margin-bottom: 40px;
  }

  .company-philosophy .wrapper .contents h3 {
    font-size: 1.75rem;
  }

  .company-philosophy .wrapper .contents p {
    font-size: 0.9375rem;
    line-height: 1.8;
  }

  .company-philosophy .wrapper.list ul {
    flex-direction: column;
    align-items: center;
  }
  
  .company-philosophy .wrapper.list ul li {
    max-width: 100%;
  }
  
  .company-philosophy .wrapper.list ul li h4 {
    font-size: 1.125rem;
  }
  
  .company-philosophy .wrapper.list ul li p {
    font-size: 0.9375rem;
    line-height: 1.8;
  }
}
.company-profile {
  padding: 90px 0;
}

.company-profile .wrapper {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 20px;
}

.company-profile .wrapper header {
  margin-bottom: 90px;
}

.company-profile .wrapper header img {
  max-width: 236px;
  width: 100%;
}

.company-profile .wrapper header h2 {
  font-size: 2.125rem;
  line-height: 1.45;
  margin-top: 40px;
}

.company-profile .wrapper dl {
  display: flex;
  grid-column-gap: 45px;
  padding: 20px;
  border-bottom: 1px solid #DDDDDD;
}

.company-profile .wrapper dt {
  width: 225px;
  line-height: 1.45;
  display: flex;
  align-items: center;
}

.company-profile.seminar .wrapper dt {
  color: var(--light-blue);
  width: 170px;
}

.company-profile .wrapper dd {
  max-width: 470px;
  line-height: 1.45;
}

.company-profile .wrapper dd a {
  width: 218px;
  display: flex;
  align-items: center;
  border: 1px solid var(--light-blue);
  border-radius: 5px;
  color: var(--white);
  cursor: pointer;
  margin-top: 20px;
  padding: 6px 16px;
  background: var(--light-blue);
  transition: background .3s;
}

.company-profile .wrapper dd a.unstyle {
    padding: 0;
    background: unset;
    color: var(--light-blue);
    text-decoration: underline;
    border: unset;
    margin-top: 0;
}

.company-profile .wrapper dd a:hover {
  color: var(--light-blue);
  background: var(--white);
}

.company-profile .wrapper dd a span {
  font-size: .8125rem;
  line-height: 1.45;
  margin-right: 10px;
  transition: margin-right .3s;
}

.company-profile .wrapper dd a:hover span {
  margin-right: 16px;
}

.company-profile .wrapper dd a svg path {
  stroke: var(--white);
}

.company-profile .wrapper dd a:hover svg path {
  stroke: var(--light-blue);
}

.company-profile .wrapper .images {
  display: flex;
  align-items: center;
  justify-content: center;
  grid-column-gap: 30px;
}

.company-profile .wrapper .images img {
  display: block;
  width: 70px;
}

@media screen and (max-width: 1024px) {
  .company-profile {
    padding: 60px 0;
  }

  .company-profile .wrapper header {
    margin-bottom: 60px;
  }

  .company-profile .wrapper header h2 {
    font-size: 1.75rem;
    margin-top: 20px;
  }

  .company-profile .wrapper dl {
    flex-direction: column;
    grid-row-gap: 5px;
    padding: 10px;
  }

  .company-profile .wrapper dt {
    font-size: .9375rem;
    line-height: 1.8;
  }


  .company-profile .wrapper dd {
    font-size: .9375rem;
    line-height: 1.8;
  }

  .company-profile .wrapper dd a {
    margin-top: 10px;
  }

  .company-profile .wrapper .images {
    flex-wrap: wrap;
    justify-content: start;
    grid-row-gap: 30px;
  }
}
section.flex-2column {
  padding: 90px 0;
}

section.flex-2column.F8FBFF {
  background-color: #F8FBFF;
}

section.flex-2column .wrapper {
  margin: 0 auto;
  max-width: 1440px;
  padding: 0 170px;
}

section.flex-2column header {
  text-align: center;
  margin-bottom: 60px;
}

section.flex-2column header h2 {
  font-size: 2.125rem;  /* 34px */
  font-weight: 400;
  line-height: 1.45;
}

section.flex-2column .flex {
  display: flex;
  justify-content: space-between;
  column-gap: 60px;
  row-gap: 40px;
}

section.flex-2column .flex .left, section.flex-2column .flex .right {
  width: 50%;
}

section.flex-2column .flex img {
  max-width: 100%;
  height: auto;
}

section.flex-2column .flex p {
  line-height: 2.0;
}


/* サービスページ専用 */
section.flex-2column.service .flex .left {
  width: 57%;
  background: linear-gradient(180deg, #00479D 0%, #0085CE 98.96%);
  border-radius: 3px;
}

section.flex-2column.service .flex figure {
  padding-top: 25px;
  padding-bottom: 25px;
  text-align: center;
}

section.flex-2column.service .flex img {
  width: 100%;
  max-width: 398px;
  height: auto;
}


@media screen and (max-width: 1024px) {
  section.flex-2column {
    padding: 60px 0;
  }
  
  section.flex-2column .wrapper {
    padding: 0 20px;
  }
  
  section.flex-2column header {
    margin-bottom: 40px;
  }

  section.flex-2column header h2 {
    font-size: 1.75rem;  /* 28px */
  }
  
  section.flex-2column .flex {
    flex-direction: column;
  }
  
  section.flex-2column.service .flex .left, section.flex-2column.service .flex .right {
    width: 100%;
  }
  
  /*  サービスページ専用  */
  section.flex-2column.service {
    padding-top: calc(48px + 60px); /* パンくずリスト（48px）分の余白 */
    padding-bottom: 0;
  }
  
  section.flex-2column header h2 {
    font-size: 1.625rem;  /* 26px */
  }
  
  section.flex-2column.service .flex {
    flex-direction: column-reverse;
  }
  
  section.flex-2column.service .flex .left {
    margin-left: -20px;
    width: calc(100% + 40px);
    border-radius: 0;
  }
  
  section.flex-2column.service .flex figure {
    padding: 20px 50px;
  }
}
.section-card-list.f8fbff{
  background: #F8FBFF;
}

.section-card-list.f9f9f9{
  background: #F9F9F9;
}

.section-card-list .wrapper{
  max-width: 1200px;
  margin: 0 auto;
  padding: 80px 0;
}

@media ( max-width: 768px ){
  .section-card-list .wrapper{
    padding: 60px 20px;
  }
}

.section-card-list .wrapper header{
  margin-bottom: 40px;  
}

.section-card-list .wrapper header h2{
  color: var(--black);
  font-size: 34px;
  font-weight: 400;
  letter-spacing: 0.1em;  
  margin-bottom: 40px;
}

@media ( max-width: 768px ){
  .section-card-list .wrapper header h2{
    font-size: 24px;
    margin-bottom: 20px;
  }
}

.section-card-list .wrapper header p{
  color: var(--black);
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.1em;    
}

.section-card-list .section-card-list__contents{
  display: flex;
  gap: 30px;
  flex-wrap: wrap;  
}

@media ( max-width: 1200px ){
  .section-card-list .section-card-list__contents{
    justify-content: center;
  }
}

.section-card-list .section-card-list__contents .section-card-list__content{
  position:relative;
  transition: 300ms;
  box-shadow: 0px 4px 30px 8px rgba(90, 90, 90, 0.07);
  background: var(--white);  
}

.section-card-list .section-card-list__contents.column--3 .section-card-list__content{
  min-width: calc((1200px - 30px* 2) / 3);
  max-width: calc((100% - 30px* 2) / 3);
}

@media ( max-width: 768px ){
  .section-card-list .section-card-list__contents.column--3 .section-card-list__content{
      min-width: unset;
      max-width: 100%;    
  }
}

.section-card-list .section-card-list__contents.column--4 .section-card-list__content{
  min-width: calc((1200px - 30px* 3) / 4);
  max-width: calc((100% - 30px* 3) / 4);
}

@media ( max-width: 768px ){
  .section-card-list .section-card-list__contents.column--4 .section-card-list__content{
      min-width: unset;
      max-width: 100%;    
  }
}

.section-card-list .section-card-list__contents .section-card-list__content:hover{
  background:#eef2f8;
}

.section-card-list .section-card-list__contents .section-card-list__content .section-card-list__contents__title{
  background: var(--blue);
  color: var(--white);
  font-style: normal;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: 0.1em;  
  display: flex;
  align-items: center;
  justify-content: center;  
  text-align:center;
}

.section-card-list .section-card-list__contents.column--3 .section-card-list__content .section-card-list__contents__title{
  padding: 20px 16px;
  font-size: 20px;
  min-height: 104px;
}

.section-card-list .section-card-list__contents.column--4 .section-card-list__content .section-card-list__contents__title{
  font-size: 18px;
  min-height: 80px;
  padding: 10px 8px;
}

.section-card-list .section-card-list__contents .section-card-list__content .section-card-list__contents__main{
  display: block;  
}

.section-card-list .section-card-list__contents .section-card-list__content .section-card-list__contents__main{
  padding: 24px 16px 0;
  margin-bottom: 16px;
}

.section-card-list .section-card-list__contents .section-card-list__content .section-card-list__contents__main .section-card-list__contents__main__image{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
}

.section-card-list .section-card-list__contents.column--3 .section-card-list__content .section-card-list__contents__main .section-card-list__contents__main__image{
  gap:14px;
}

.section-card-list .section-card-list__contents.column--4 .section-card-list__content .section-card-list__contents__main .section-card-list__contents__main__image{
  gap:10px;
}

.section-card-list .section-card-list__contents .section-card-list__content .section-card-list__contents__main .section-card-list__contents__main__image span{
  min-height:auto;
}

.section-card-list .section-card-list__contents .section-card-list__content .section-card-list__contents__main .section-card-list__contents__main__image h4{
  color: #202020;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: 0.1em;
  text-align:center;
}

.section-card-list .section-card-list__contents.column--3 .section-card-list__content .section-card-list__contents__main .section-card-list__contents__main__image h4{
  font-size: 20px;
}

.section-card-list .section-card-list__contents .section-card-list__content .section-card-list__contents__main p{
  margin: 14px 0 60px;
  text-align:left;  
}

.section-card-list .section-card-list__contents.column--3 .section-card-list__content .section-card-list__contents__main p{
  margin: 14px 0 60px;
}

.section-card-list .section-card-list__contents .section-card-list__content .readmore{
    align-items: center;  
    display: flex;  
    justify-content: flex-end;
    position: absolute;
}

.section-card-list .section-card-list__contents .section-card-list__content .readmore{
    bottom: 16px;
    height: 40px;
    right: 16px;  
}

.section-card-list .section-card-list__contents .section-card-list__content .readmore .readmore-btn-inner{
    align-items: center;
    background: var(--white);
    border: 1px solid #1b4698;
    border-radius: 100%;
    display: flex;  
    justify-content: center;
    transition: width .3s, height .3s, background .3s;
}

.section-card-list .section-card-list__contents .section-card-list__content .readmore .readmore-btn-inner{
    height: 28px;
    width: 28px;
}

.section-card-list .section-card-list__contents .section-card-list__content:hover .readmore .readmore-btn-inner{
    background: var(--blue);
    height: 40px;
    width: 40px;  
}

.section-card-list .section-card-list__contents .section-card-list__content .readmore .readmore-btn-inner span{
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative;
    top: 1px;
}

.section-card-list .section-card-list__contents .section-card-list__content .readmore .readmore-btn-inner span:before,
.section-card-list .section-card-list__contents .section-card-list__content .readmore .readmore-btn-inner span:after{
    content: "";
    margin: auto;
    position: absolute;
    transition: width .32s, left .32s;
    vertical-align: middle;  
}

.section-card-list .section-card-list__contents .section-card-list__content .readmore .readmore-btn-inner span:before{
    background: #1b4698;
    height: 1px;
    width: 12px;  
    content: "";
}

.section-card-list .section-card-list__contents .section-card-list__content:hover .readmore .readmore-btn-inner span:before{
    background: var(--white);
    left: -10px;
    top: .01px;
    width: 22px;  
}

.section-card-list .section-card-list__contents .section-card-list__content .readmore .readmore-btn-inner span:after{
    border-right: 1px solid #1b4698;
    border-top: 1px solid #1b4698;
    height: 5px;
    left: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 5px;
}

.section-card-list .section-card-list__contents .section-card-list__content:hover .readmore .readmore-btn-inner span:after{
    border-right: 1px solid var(--white);
    border-top: 1px solid var(--white);
    height: 8px;
    left: 3px;
    top: -3.5px;
    width: 8px;
}
/* アンカーリンク */
.LP-Anchor {
  display: flex;
  height: 80px;
  padding: 10px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}  
@media (max-width: 1024px) {
  .LP-Anchor {
      margin-top: 20px;
      overflow-x: auto;
      flex-direction: unset;
      padding: 10px 20px;
  }
  .LP-Anchor .Anchor{
      white-space: nowrap;
      width: max-content;
  }
}
@media (max-width: 640px) {
  .LP-Anchor{
      justify-content: unset;
  }
}
.Anchor--default,
.Anchor--center {
  display: flex;
  justify-content: flex-end;
  gap: 25px;
  flex-wrap: wrap;
  padding-left: 0;
}

.Anchor--center {
  justify-content: center;
}

.Anchor--default .Anchor-item:not(:last-child),
.Anchor--center .Anchor-item:not(:last-child) {
  padding-right: 25px;
  border-right: 1px solid #C9CED1;
}

@media screen and (max-width: 767px) {
  .Anchor--default,
  .Anchor--center {
    justify-content: center;
    gap: 15px;
  }
}

.Anchor .Anchor-item {
  list-style: none;
}

.Anchor--default .Anchor-item a,
.Anchor--center .Anchor-item a {
  color: var(--text, #202020);
  font-size: 16px;
  letter-spacing: 1.3px;
  padding-right: 25px;
  display: block;
  position: relative;
}

.Anchor--default .Anchor-item a::after,
.Anchor--center .Anchor-item a::after {
  content: "";
  width: 15px;
  height: 15px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNSAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iNy41IiBjeT0iNy41IiByPSI3LjUiIHRyYW5zZm9ybT0ibWF0cml4KC00LjM3MTE0ZS0wOCAxIDEgNC4zNzExNGUtMDggMCAwLjUpIiBmaWxsPSIjMDA0NzlEIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMi43MDkyMSA2LjA3MDU0QzIuOTg4MTYgNS43OTE1OSAzLjQ0MDQyIDUuNzkxNTkgMy43MTkzNiA2LjA3MDU0TDcuNSA5Ljg1MTE4TDExLjI4MDYgNi4wNzA1NEMxMS41NTk2IDUuNzkxNTkgMTIuMDExOCA1Ljc5MTU5IDEyLjI5MDggNi4wNzA1NEMxMi41Njk3IDYuMzQ5NDggMTIuNTY5NyA2LjgwMTc0IDEyLjI5MDggNy4wODA2OUw4LjAwNTA4IDExLjM2NjRDNy43MjYxMyAxMS42NDUzIDcuMjczODcgMTEuNjQ1MyA2Ljk5NDkyIDExLjM2NjRMMi43MDkyMSA3LjA4MDY5QzIuNDMwMjYgNi44MDE3NCAyLjQzMDI2IDYuMzQ5NDggMi43MDkyMSA2LjA3MDU0WiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  right: 0;
  top: 7px;
  transition: 0.3s;
}

.Anchor--default .Anchor-item a:hover,
.Anchor--center .Anchor-item a:hover {
  text-decoration: none;
}

.Anchor--default .Anchor-item a:hover::after,
.Anchor--center .Anchor-item a:hover::after {
  top: 10px;
}

.Anchor--button {
  margin: auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 40px;
}

.Anchor--button .Anchor-item {
  position: relative;
}

.Anchor--button .Anchor-item:after {
  content: '';
  width: 1px;
  height: 100%;
  background-color: #C9CED1;
  position: absolute;
  top: 0;
  right: -20px;
}

.Anchor--button .Anchor-item:last-child:after {
  content: none;
}

.Anchor--button .Anchor-item a {
  padding: 0 25px 0 0;
  font-size: 13px;
  height: auto;
  line-height: 1.6;
  padding-right: 40px;
  white-space: inherit;
  color: #202020;
  display: inline-block;
  text-align: center;
  position: relative;
}

.Anchor--button .Anchor-item a::after {
  content: "";
  width: 15px;
  height: 15px;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNSAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9Ikdyb3VwIDI4OCI+CjxjaXJjbGUgaWQ9IkVsbGlwc2UgMjAiIGN4PSI3LjUiIGN5PSI3LjUiIHI9IjcuNSIgdHJhbnNmb3JtPSJtYXRyaXgoLTQuMzcxMTRlLTA4IDEgMSA0LjM3MTE0ZS0wOCAwIDAuNSkiIGZpbGw9IiMyMDFDRUIiLz4KPHBhdGggaWQ9IlZlY3RvciAoU3Ryb2tlKSIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yLjcwOTIxIDYuMDc0OTNDMi45ODgxNiA1Ljc5NTk5IDMuNDQwNDIgNS43OTU5OSAzLjcxOTM2IDYuMDc0OTNMNy41IDkuODU1NTdMMTEuMjgwNiA2LjA3NDkzQzExLjU1OTYgNS43OTU5OSAxMi4wMTE4IDUuNzk1OTkgMTIuMjkwOCA2LjA3NDkzQzEyLjU2OTcgNi4zNTM4OCAxMi41Njk3IDYuODA2MTQgMTIuMjkwOCA3LjA4NTA4TDguMDA1MDcgMTEuMzcwOEM3LjcyNjEzIDExLjY0OTcgNy4yNzM4NyAxMS42NDk3IDYuOTk0OTIgMTEuMzcwOEwyLjcwOTIxIDcuMDg1MDhDMi40MzAyNiA2LjgwNjE0IDIuNDMwMjYgNi4zNTM4OCAyLjcwOTIxIDYuMDc0OTNaIiBmaWxsPSJ3aGl0ZSIvPgo8L2c+Cjwvc3ZnPgo=);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  right: 0;
  top: calc(50% - (15px / 2));
  transition: 0.3s;
  }
.Anchor--button .Anchor-item a:hover::after {
  top: 5px
}
.Anchor--button .Anchor-item a:hover {
  color: #201ceb;
  opacity: 1;  
}

@media screen and (max-width: 767px) {
  .Anchor--button {
    gap: 20px;
  }
  .Anchor--button .Anchor-item {
    width: calc(50% - (20px / 2));
    text-align: center;
  }
  .Anchor--button .Anchor-item a {
    font-size: 14px;
    padding: 16px 20px 16px 15px;
  }
  .Anchor--button .Anchor-item:nth-child(even):after {
    content: none;
  }
}
section.service-list {
  padding: 90px 0;
}

section.service-list > .wrapper {
  position: relative;
  padding: 0 2%;
}

section.service-list header {
  max-width: 990px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 90px;
  text-align: center;
}

section.service-list header h2 {
  font-size: 2.125rem;  /* 34px */
  font-weight: 400;
  line-height: 1.45;
}

section.service-list header ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 15px;
  margin-top: 60px;
}

section.service-list header ul li {
  padding: 5.7px 18px;
  border-right: solid #C9CED1 1px; 
}

section.service-list header ul li:first-child {
  padding-left: 0;
}

section.service-list header ul li:nth-child(4) {
  border-right: none; /* サービスの増減で位置を変える必要があるかも */
}

section.service-list header ul li:last-child {
  padding-right: 0;
  border-right: none;
}

section.service-list header ul li a {
  font-size: 1rem;  /* 16px */
  line-height: 1.45;
  color: var(--light-blue);
  transition: opacity 0.3s;
}

section.service-list header ul li a:hover {
  opacity: 0.6;
}

section.service-list .list section[class*="service-"] {
  border-top: 1px solid #C9CED1;
}

section.service-list .list .wrapper {
  display: flex;
  justify-content: flex-start;
}

section.service-list .list .overview {
  width: 496px;
  padding: 40px 80px;
}

section.service-list .list .overview .detail {
  margin-bottom: 20px;
}

section.service-list .list .overview .detail figure {
  margin-bottom: 30px;
}

section.service-list .list .overview .detail figure img {
  width: auto;
  height: auto;
  max-width: 76px;
  filter: drop-shadow(7px 7px 30px rgba(0, 0, 0, 0.16));
}

section.service-list .list .overview .detail h3 {
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 20px;
}

section.service-list .list .overview .detail p {
  font-size: .875rem;  /* 14px */
  line-height: 2.0;
}

section.service-list .list .overview .detail p span {
  display: block;
  font-size: .75rem;  /* 12px */
  line-height: 1.4;
  margin-top: 10px;
}

section.service-list .list .overview .cta-box {
  margin: 10px 0;
}

section.service-list .list .overview .cta-box a[class*="cta-"] {
  display: block;
  padding: 30px;
  box-shadow: 7px 7px 30px rgba(0, 0, 0, 0.16);
  border-radius: 8px;
  transition: opacity 0.3s;
}

section.service-list .list .overview .cta-box a[class*="cta-"]:hover {
  opacity: 0.6;
}

section.service-list .list .overview .cta-box a.cta-1col {
  background: #0085CE;
}

section.service-list .list .overview .cta-box a.cta-2col {
  background: linear-gradient(180deg, #00479D 0%, #0085CE 98.96%);
}

section.service-list .list .overview .cta-box a h4 {
  font-size: 1.25rem;  /* 20px */
  font-weight: 700;
  line-height: 1.45;
  color: #fff;
  margin-bottom: 10px;
}

section.service-list .list .overview .cta-box a .flex {
  column-gap: 10px;
}

section.service-list .list .overview .cta-box a p {
  font-size: .875rem;  /* 14px */
  line-height: 1.45;
  color: #fff;
}

section.service-list .list .overview .cta-box a .flex img {
  width: auto;
  height: auto;
  max-width: 102px;
}

section.service-list .list .overview .cta-box a + a {
  margin-top: 20px;
}

section.service-list .list .menu {
  width: calc(100% - 496px);
  display: flex;
  flex-direction: column;
}

section.service-list .list .menu .wrapper {
  display: flex; 
}

section.service-list .list .menu .wrapper:not(:first-child) {
  border-top: 1px solid #C9CED1;
}

section.service-list .list .menu .detail {
  width: calc(100% / 3);
  padding: 40px 30px; 
}

section.service-list .list .menu .detail h4 {
  font-size: 1.125rem;  /* 18px */
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 20px;
}

section.service-list .list .menu .detail h4 span {
  font-size: .75rem;  /* 12px */
}

section.service-list .list .menu .detail p {
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
}

section.service-list .list .menu .detail .service-link, section.service-list .list .menu .detail .bullet_des a {
  color: var(--light-blue);
  text-decoration: underline;
}

section.service-list .list .menu .detail .bullet_des {
  padding-left: 15px;
  display: block;
}

section.service-list .list .menu .detail .accordion .service-b:after {
  content: "▽";
  margin-left: 8px;
}
section.service-list .list .menu .detail .accordion .service-b.show:after {
  content: "△";
  margin-left: 8px;
}

section.service-list .list .menu .detail ul.bullet li {
  font-size: .875rem;
  line-height: 1.5;
  margin-bottom: 8px;
}
section.service-list .list .menu .detail ul.bullet li:before {
  transform: translateX(-125%);
  content: "・";
  color: var(--light-blue);
}

@media screen and (max-width: 1024px) {
  section.service-list {
    padding: 60px 0;
  }

  section.service-list > .wrapper {
    padding: 0 20px;
  }

  section.service-list header {
    margin-bottom: 40px;
  }

  section.service-list header h2 {
    font-size: 1.75rem;  /* 28px */
  }

  section.service-list header .hs-menu-wrapper {
    overflow-x: auto;
  }

  section.service-list header ul {
    width: max-content;
    margin-top: 40px;
    flex-wrap: nowrap;
  }

  section.service-list header ul li {
    padding: 6px 15px;
  }

  section.service-list header ul li:nth-child(4) {
    border-right: solid #C9CED1 1px; 
  }

  section.service-list header ul li a {
    font-size: .875rem;  /* 14px */
  }

  section.service-list .list section[class*=service-] {
    margin-left: -20px;
    margin-right: -20px;
  }

  section.service-list .list .wrapper {
    flex-direction: column;
  }

  section.service-list .list .overview {
    padding: 20px;
    width: 100%;
  }

  section.service-list .list .overview .detail .catch {
    display: flex;
    align-items: center;
    gap: 28px;
    margin-bottom: 20px;
  }

  section.service-list .list .overview .detail figure {
    margin-bottom: 0;
  }

  section.service-list .list .overview .detail h3 {
    font-size: 1.125rem;  /* 18px */
    margin-bottom: 0;
  }

  section.service-list .list .menu {
    width: 100%;
  }

  section.service-list .list .menu .wrapper {
    padding: 0 20px;
  }

  section.service-list .list .menu .wrapper:not(:first-child) {
    border-top: none;
  }

  section.service-list .list .menu .detail {
    width: 100%;
    padding: 15px 30px;
    border-top: solid #C9CED1 1px; 
  }

  section.service-list .list .menu .detail h4 {
    margin-bottom: 10px;
  }

  section.service-list .list section[class*=service-]:last-child .menu .wrapper:last-child .detail:last-child {
    border-bottom: 1px solid #c9ced1;
  }
}
#post.seminar .outline dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  background-color: #F8FBFF;
  border-radius: 3px;
}

#post.seminar .outline dt, #post.seminar .outline dd {
  border-bottom: 1px dashed #C9CED1;
}

#post.seminar .outline dt:last-of-type, #post.seminar .outline dd:last-of-type {
  border-bottom: none;
}
  
#post.seminar .outline dt {
  width: 30%;
  font-size: .875rem;  /* 14px */
  font-weight: 700;
  line-height: 1.8;
  padding: 30px 50px;
  padding-right: 25px;
}

#post.seminar .outline dd {
  width: 70%;
  font-size: .875rem;  /* 14px */
  line-height: 1.5;
  color: var(--dark-gray);
  padding: 30px 50px;
  padding-left: 25px;
}

@media screen and (max-width: 1024px) {
  #post.seminar .outline dl {
    flex-direction: column;
  }
  
  #post.seminar .outline dt, #post.seminar .outline dd {
    width: 100%;
    padding: 30px 20px;
  }
  
  #post.seminar .outline dt {
    border-bottom: none;
    padding-bottom: 7.5px;
  }
  #post.seminar .outline dd {
    padding-top: 7.5px;
  }
}
.top-feature .wrapper .contents {
  display: flex;
  background: linear-gradient(180deg, var(--blue) 0%, var(--light-blue) 98.96%);
}

.top-feature .wrapper .contents .texts {
  max-width: 35%;
  width: 100%;
  margin-top: -85px;
  background: var(--white);
  box-shadow: 0px 12px 20px rgba(0, 0, 0, 0.06);
  position: relative;
  margin-bottom: 85px;
  position: relative;
  padding: 90px 90px 90px 9%;
}

.top-feature .wrapper .contents .texts header h2 {
  font-size: 2.125rem;
  line-height: 1.45;
}

.top-feature .wrapper .contents .texts p {
  margin-top: 70px;
  color: var(--dark-gray);
  line-height: 2;
}

.top-feature .wrapper .contents .image {
  max-width: 645px;
  width: 645px;
  margin-left: 13%;
  padding: 50px 0;
}

.top-feature .wrapper .contents .image img {
  object-fit: contain;
}

@media screen and (max-width: 1200px) {
  .top-feature .wrapper .contents .texts {
    padding: 60px 60px 60px 9%;
  }
}

@media screen and (max-width: 1024px) {
  .top-feature {
    padding: 85px 0 60px;
  }

  .top-feature .wrapper .contents {
    flex-direction: column;
    background: none;
  }

  .top-feature .wrapper .contents .texts {
    max-width: 100%;
    padding: 0 20px 60px;
    margin-top: 0;
    margin-bottom: 0;
    box-shadow: none;
    min-width: unset;
  }

  .top-feature .wrapper .contents .texts .texts-wrapper {
    position: unset;
    width: 100%;
    padding: 0;
  }

  .top-feature .wrapper .contents .texts header h2 {
    font-size: 1.625rem;
  }

  .top-feature .wrapper .contents .texts p {
    margin-top: 40px;
    font-size: .875rem;
  }

  .top-feature .wrapper .contents .image {
    max-width: 100%;
    background: linear-gradient(180deg, var(--blue) 0%, var(--light-blue) 98.96%);
    padding: 30px 0;
    margin-left: 0;
    width: 100%;
    min-width: unset;
  }
}
.top-service-list {
  padding: 100px 0;
}

.top-service-list .wrapper {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 20px;
}

.top-service-list .wrapper header {
  padding-left: 100px;
}

.top-service-list .wrapper header h2 {
  font-size: 2.125rem;
  line-height: 1.45;
}

.top-service-list .wrapper header p {
  margin-top: 70px;
  line-height: 2;
  color: var(--dark-gray);
}

.top-service-list .wrapper .contents {
  display: flex;
  flex-wrap: wrap;
  max-width: 1440px;
  margin: 60px auto 0;
}

.top-service-list .wrapper .contents .service {
  width: 33.39%;
  margin-right: -1px;
}

.top-service-list .wrapper .contents .service a {
  width: 100%;
  height: 100%;
  display: block;
  padding: 30px 40px 30px 90px;
  border: 1px solid #DDDDDD;
  border-top: none;
  position: relative;
  transition: background 0.3s;
}

.top-service-list .wrapper .contents .service a.border-top-none {
  border-top: none;
}

.top-service-list .wrapper .contents .service a.border-left-none {
  border-left: none;
}

.top-service-list .wrapper .contents .service a.border-right-none {
  border-right: none;
}


.top-service-list .wrapper .contents .service a:hover {
  background: #EEF2F8;
}

.top-service-list .wrapper .contents .service a .image {
  max-width: 76px;
  width: 100%;
  margin-bottom: 30px;
  filter: drop-shadow(7px 7px 30px rgba(0, 0, 0, 0.16));
}

.top-service-list .wrapper .contents .service a h3 {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 30px;
}

.top-service-list .wrapper .contents .service a p {
  font-size: .875rem;
  line-height: 2;
  margin-bottom: 60px;
}

.top-service-list .wrapper .contents .service a:has(p.annotation) p {
  margin-bottom: 10px;
}

.top-service-list .wrapper .contents .service a .annotation {
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 60px !important;
}


.top-service-list .wrapper .contents .service a .readmore {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  height: 40px;
  position: absolute;
  right: 40px;
  bottom: 30px;
}

.top-service-list .wrapper .contents .service a .readmore span.readmore-btn-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 100%;
  background: var(--white);
  border: 1px solid #1B4698;
  transition: width 0.3s, height 0.3s, background 0.3s;
}

.top-service-list .wrapper .contents .service a:hover .readmore span.readmore-btn-inner {
  width: 40px;
  height: 40px;
  background: var(--blue);
}

.top-service-list .wrapper .contents .service a .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 1px;
}

.top-service-list .wrapper .contents .service a:hover .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 0px;
}

.top-service-list .wrapper .contents .service a .readmore span.readmore-btn-inner span:before,
.top-service-list .wrapper .contents .service a .readmore span.readmore-btn-inner span:after {
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: width 0.32s, left 0.32s;
}

.top-service-list .wrapper .contents .service a .readmore span.readmore-btn-inner span:before {
  background: #1B4698;
  height: 1px;
  width: 12px;
}

.top-service-list .wrapper .contents .service a:hover .readmore span.readmore-btn-inner span:before {
  background: var(--white);
  top: 0.01px;
  width: 22px;
  left: -10px;
}

.top-service-list .wrapper .contents .service a .readmore span.readmore-btn-inner span:after {
  left: 0px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #1B4698;
  border-right: 1px solid #1B4698;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.top-service-list .wrapper .contents .service a:hover .readmore span.readmore-btn-inner span:after {
  border-top: 1px solid var(--white);
  border-right: 1px solid var(--white);
  left: 3px;
  width: 8px;
  height: 8px;
  top: -3.5px;
}

.top-service-list .wrapper .seeall-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 60px;
}

.top-service-list .wrapper .seeall-btn a.btn-with-arrow {
  background-color: var(--white);
  border: 1px solid var(--gray);
  border-radius: 5px;
  display: inline-block;
  outline: none;
  padding: 23px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 330px;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--black);
  transition: background-color 0.3s, color 0.3s;
}

.top-service-list .wrapper .seeall-btn a.btn-with-arrow:hover {
  color: var(--white);
  background-color: var(--blue);
  border: 1px solid var(--blue);
}

.top-service-list .wrapper .seeall-btn a.btn-with-arrow:before,
.top-service-list .wrapper .seeall-btn a.btn-with-arrow:after {
  content: "";
  position: absolute;
  transition: right 0.2s;
}

.top-service-list .wrapper .seeall-btn a.btn-with-arrow:before {
  background: #092241;
  height: 1px;
  width: 20px;
  right: 30px;
  top: 50%;
}

.top-service-list .wrapper .seeall-btn a.btn-with-arrow:after {
  border-right: 1px solid #092241;
  border-top: 1px solid #092241;
  height: 5px;
  right: 30px;
  top: calc(50% - 2px);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

.top-service-list .wrapper .seeall-btn a.btn-with-arrow:hover:before {
  background: var(--white);
  right: 25px;
}

.top-service-list .wrapper .seeall-btn a.btn-with-arrow:hover:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  right: 25px;
}

.top-service-list .wrapper .contents .sp-menu {
  display: none;
}

picture.office-image {
  display: block;
  height: 340px;
}

picture.office-image img {
  object-fit: cover;
}

@media screen and (max-width: 1024px) {
  .top-service-list {
    padding: 0 0 60px;
  }

  .top-service-list .wrapper header {
    padding-left: 0;
  }

  .top-service-list .wrapper header h2 {
    font-size: 1.625rem;
  }

  .top-service-list .wrapper header p {
    font-size: .875rem;
    margin-top: 40px;
  }

  .top-service-list .wrapper .contents {
    flex-direction: column;
    padding: 0;
    margin-top: 45px;
  }

  .top-service-list .wrapper .contents .service {
    width: 100%;
  }

  .top-service-list .wrapper .contents .service a {
    border: none;
    border-bottom: 1px solid #DDDDDD;
    width: 100vw;
    margin-left: -20px;
    padding: 30px;
  }

  .top-service-list .wrapper .contents .service a .title {
    display: flex;
    align-items: center;
    grid-column-gap: 30px;
    margin-bottom: 20px;
  }

  .top-service-list .wrapper .contents .service a .image {
    margin-bottom: 0;
  }

  .top-service-list .wrapper .contents .service a h3 {
    font-size: 1.125rem;
    margin-bottom: 0;
  }

  .top-service-list .wrapper .contents .service a p {
    margin-bottom: 60px;
  }

  .top-service-list .wrapper .seeall-btn {
    margin-top: 40px;
  }

  .top-service-list .wrapper .seeall-btn a.btn-with-arrow {
    width: 335px;
  }

  .top-service-list .wrapper .contents .sp-menu {
    display: block;
    width: 100%;
    margin-bottom: 40px;
  }

  .top-service-list .wrapper .contents ul {
    display: flex;
    white-space: nowrap;
    overflow-x: auto;
  }

  .top-service-list .wrapper .contents .sp-menu ul li {
    padding: 5.7px 18px;
    border-right: solid #C9CED1 1px; 
  }

  .top-service-list .wrapper .contents .sp-menu ul li:first-child {
    padding-left: 0;
  }

  .top-service-list .wrapper .contents .sp-menu ul li:nth-child(4) {
    border-right: none;
  }

  .top-service-list .wrapper .contents .sp-menu ul li:last-child {
    padding-right: 0;
    border-right: none;
  }

  .top-service-list .wrapper .contents .sp-menu ul li a {
    font-size: .875rem;
    line-height: 2;
    color: var(--light-blue);
    transition: opacity 0.3s;
  }

  .top-service-list .wrapper .contents .sp-menu ul li a:hover {
    opacity: 0.6;
  }

  .top-service-list .wrapper .contents .sp-menu {
    display: block;
    overflow-x: auto;
  }

  .top-service-list .wrapper .contents .sp-menu ul {
    width: max-content;
    flex-wrap: nowrap;
  }

  .top-service-list .wrapper .contents .sp-menu ul li {
    padding: 6px 15px;
  }

  .top-service-list .wrapper .contents .sp-menu ul li:nth-child(4) {
    border-right: solid #C9CED1 1px; 
  }

  picture.office-image {
    height: 230px;
  }
}
.case-list {
  padding: 100px 0;
/*   background: linear-gradient(90deg, transparent 0%, transparent 50%, #F8FBFF 50%, #F8FBFF); 中村真衣さん依頼のため背景色統一を単色に */
  background: #f8fbff;
}

.case-list .wrapper {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

.case-list .wrapper header h2 {
  font-size: 2.125rem;
  line-height: 1.45;
}

.case-list .wrapper header p {
  margin-top: 70px;
  line-height: 2;
  color: var(--dark-gray);
}

.case-list .lists-wrapper {
  margin-top: 70px;
}

.case-list .lists-wrapper h2 {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 40px;
}

.case-list .lists-wrapper .posts {
  grid-column-gap: 40px;
  grid-row-gap: 50px;
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
}

.case-list .lists-wrapper .posts .post {
  box-shadow: 0px 4px 30px 8px rgb(90 90 90 / 7%);
  border-radius: 3px;
  background: var(--white);
}

.case-list .lists-wrapper .posts .post.noshadow {
  box-shadow: none;
}

.case-list .lists-wrapper .posts .post > a, .case-list .lists-wrapper .posts .post > div {
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: all 0.3s;
}

.case-list .lists-wrapper .posts .post > a:hover {
  background-color: #EEF2F8;
}

.case-list .lists-wrapper .posts .post .img img {
  width: 167px;
  height: 103px;
  border-radius: 3px;
}

.case-list .lists-wrapper .posts .post .img img {
  width: 100%;
  height: 210px;
  object-fit: cover;
  border-radius: 3px 3px 0 0;
  transition: transform 0.3s;
}

.case-list .lists-wrapper .posts .post .info {
  padding: 30px 20px;
}

.case-list .lists-wrapper .posts .post .info h3 {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 15px;
}

.case-list .lists-wrapper .posts .post .info .summary {
  font-size: 1.125rem;
  line-height: 1.45;
  margin-bottom: 20px;
}

/* info tag */
.case-list .lists-wrapper .posts .post .info .tags {
  display: flex;
  grid-gap: 10px;
  flex-wrap: wrap;
}

.case-list .lists-wrapper .posts .post .info .tags .tag {
  background: #A6A6A6;
  border-radius: 3px;
  color: var(--white);
  font-size: .75rem;
  line-height: 2.0;
  padding: 2px 15px;
  width: fit-content;
}

/* info readmore */
.case-list .lists-wrapper .posts .post .info .readmore {
  align-items: center;
  display: flex;
  width: 123px;
  justify-content: flex-end;
  margin-top: 25px;
  margin-left: auto;
  height: 40px;
  position: relative;
}

.case-list .lists-wrapper .posts .post .info .readmore .readmore-text {
  font-size: .875rem;
  line-height: 1.5;
  color: var(--blue);
  position: absolute;
  left: 0;
}

.case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 100%;
  background: var(--white);
  border: 1px solid #1B4698;
  transition: width 0.3s, height 0.3s, background 0.3s;
}

.case-list .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner {
  width: 40px;
  height: 40px;
  background: var(--blue);
}

.case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 1px;
}

.case-list .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 0px;
}

.case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::before, .case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::after {
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: width 0.32s, left 0.32s;
}

.case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::before {
  background: #1B4698;
  height: 1px;
  width: 12px;
}

.case-list .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span::before {
  background: var(--white);
  top: 0.01px;
  width: 22px;
  left: -10px;
}

.case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::after {
  left: 0px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #1B4698;
  border-right: 1px solid #1B4698;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.case-list .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span::after {
  border-top: 1px solid var(--white);
  border-right: 1px solid var(--white);
  left: 3px;
  width: 8px;
  height: 8px;
  top: -3.5px;
}

.case-list .wrapper .seeall-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 60px;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow {
  background-color: var(--white);
  border: 1px solid var(--gray);
  border-radius: 5px;
  display: inline-block;
  outline: none;
  padding: 23px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 330px;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--black);
  transition: background-color 0.3s, color 0.3s;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:hover {
  color: var(--white);
  background-color: var(--blue);
  border: 1px solid var(--blue);
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:before,
.case-list .wrapper .seeall-btn a.btn-with-arrow:after {
  content: "";
  position: absolute;
  transition: right 0.2s;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:before {
  background: #092241;
  height: 1px;
  width: 20px;
  right: 30px;
  top: 50%;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:after {
  border-right: 1px solid #092241;
  border-top: 1px solid #092241;
  height: 5px;
  right: 30px;
  top: calc(50% - 2px);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:hover:before {
  background: var(--white);
  right: 25px;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:hover:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  right: 25px;
}

@media screen and (max-width: 1024px) {
  .case-list {
    padding: 60px 0;
  }

  .case-list .wrapper header h2 {
    font-size: 1.625rem;
  }

  .case-list .lists-wrapper .posts {
    grid-row-gap: 40px;
  }

  .case-list .lists-wrapper .posts .post .info {
    padding: 20px;
  }

  .case-list .lists-wrapper .posts .post .info .summary {
    margin-bottom: 20px;
  }

  .case-list .lists-wrapper .posts .post .info .readmore {
    margin-top: 20px;
  }

  .case-list .wrapper .seeall-btn {
    margin-top: 40px;
  }

  .case-list .wrapper .seeall-btn a.btn-with-arrow {
    width: 335px;
  }
}
.top-resource-list {
  padding: 100px 0;
  background: #F8FBFF;
}

.top-resource-list .wrapper {
  margin: 0 auto;
  max-width: 1240px;
  padding: 0 20px;
}

.top-resource-list .wrapper section {
  grid-column-gap: 40px;
  grid-row-gap: 50px;
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
  margin-top: 70px;
  padding: 0 50px;
}

.top-resource-list .wrapper header h2 {
  font-size: 2.125rem;
  line-height: 1.45;
}

.top-resource-list .wrapper header p {
  margin-top: 70px;
  line-height: 2;
  color: var(--dark-gray);
}

.top-resource-list .wrapper section article.resource {
  border-radius: 3px;
  box-shadow: 0 4px 30px 8px rgb(90 90 90 / 7%);
}

.top-resource-list .wrapper section article.resource a {
  display: block;
  height: 100%;
}

.top-resource-list .wrapper section article.resource a .img {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #E6F0FD;
  padding: 0px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  height: 210px;
}

.top-resource-list .wrapper section article.resource a .img img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  max-width: 250px;
  min-width: 130px;
}

.top-resource-list .wrapper section article.resource a .info {
  position: relative;
  width: 100%;
  min-height: 145px;
  padding: 20px 20px 30px 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: calc(100% - 210px);
}

.top-resource-list .wrapper section article.resource a .info h3.title {
  font-size: 1rem;
  line-height: 1.45;
  margin-bottom: 20px;
}

.top-resource-list .wrapper section article.resource a .download-btn span {
  max-width: 180px;
  width: 100%;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 180px;
  width: 100%;
  height: 36px;
  font-size: .875rem;
  line-height: 2.0;
  color: var(--white);
  background-color: var(--blue);
  transition: background-color 0.3s;
  margin: 0 auto;
  padding: 10px;
  border-radius: 5px;
}

.top-resource-list .wrapper section article.resource a:hover .download-btn span {
  background-color: var(--light-blue);
}

.top-resource-list .wrapper .seeall-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 60px;
}

.top-resource-list .wrapper .seeall-btn a.btn-with-arrow {
  background-color: var(--white);
  border: 1px solid var(--gray);
  border-radius: 5px;
  display: inline-block;
  outline: none;
  padding: 23px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 330px;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--black);
  transition: background-color 0.3s, color 0.3s;
}

.top-resource-list .wrapper .seeall-btn a.btn-with-arrow:hover {
  color: var(--white);
  background-color: var(--blue);
  border: 1px solid var(--blue);
}

.top-resource-list .wrapper .seeall-btn a.btn-with-arrow:before,
.top-resource-list .wrapper .seeall-btn a.btn-with-arrow:after {
  content: "";
  position: absolute;
  transition: right 0.2s;
}

.top-resource-list .wrapper .seeall-btn a.btn-with-arrow:before {
  background: #092241;
  height: 1px;
  width: 20px;
  right: 30px;
  top: 50%;
}

.top-resource-list .wrapper .seeall-btn a.btn-with-arrow:after {
  border-right: 1px solid #092241;
  border-top: 1px solid #092241;
  height: 5px;
  right: 30px;
  top: calc(50% - 2px);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

.top-resource-list .wrapper .seeall-btn a.btn-with-arrow:hover:before {
  background: var(--white);
  right: 25px;
}

.top-resource-list .wrapper .seeall-btn a.btn-with-arrow:hover:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  right: 25px;
}

@media screen and (max-width: 1320px) {
  .top-resource-list .wrapper section article.resource a .download-btn span {
    font-size: .875rem;
  }
}

@media screen and (max-width: 1024px) {
  .top-resource-list {
    padding: 60px 0;
  }

  .top-resource-list .wrapper section {
    grid-template-columns: repeat(auto-fill,minmax(100%,1fr));
    margin-top: 40px;
    padding: 0;
  }

  .top-resource-list .wrapper header h2 {
    font-size: 1.625rem;
  }

  .top-resource-list .wrapper header p {
    font-size: .875rem;
    margin-top: 40px;
  }

  .top-resource-list .wrapper section article.resource a .download-btn span {
    height: 40px;
  }

  .top-resource-list .wrapper .seeall-btn {
    margin-top: 40px;
  }

  .top-resource-list .wrapper .seeall-btn a.btn-with-arrow {
    width: 335px;
  }
}
.top-news-list {
  padding: 100px 0;
}

.top-news-list .wrapper {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

.top-news-list .wrapper header h2 {
  font-size: 2.125rem;
  line-height: 1.45;
}

.top-news-list .wrapper header p {
  margin-top: 70px;
  line-height: 2;
  color: var(--dark-gray);
}

.top-news-list .wrapper .posts {
  margin-top: 70px;
  padding: 0 100px;
}

.top-news-list .wrapper .posts article.post:first-child {
  border-top: 1px solid #EDEDED;  
}

.top-news-list .wrapper .posts article.post > a {
  padding: 30px 0;
  border-bottom: 1px solid #EDEDED;
  display: flex;
  column-gap: 20px;
}

.top-news-list .wrapper .posts article.post .time {
  font-size: 1.125rem;
  line-height: 1.45;
  color: var(--dark-gray-sub);
}

.top-news-list .wrapper .posts article.post .meta {
  display: flex;
  flex-direction: column;
  grid-row-gap: 10px;
}

.top-news-list .wrapper .posts article.post .categories .tags {
  grid-column-gap: 16px;
  grid-row-gap: 10px;
  display: flex;
  flex-wrap: wrap;
}

.top-news-list .wrapper .posts article.post .categories .tags .tag {
  background: var(--light-blue);
  border-radius: 3px;
  color: var(--white);
  font-size: .6875rem;
  line-height: 2;
  padding: 1px 12px;
  width: fit-content;
}

.top-news-list .wrapper .posts article.post .title {
  font-size: 1rem;
  line-height: 2;
  color: var(--dark-gray);
}

.top-news-list .wrapper .posts article.post .title h3 {
  display: inline;
  background: linear-gradient(var(--black),var(--black)) 0 100%/0 1px no-repeat;
  position: relative;
  transition: background .3s;
}

.top-news-list .wrapper .posts article.post > a:hover .title h3 {
  background-size: 100% 1px;
}

.top-news-list .wrapper .seeall-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin-top: 60px;
  margin-left: auto;
}

.top-news-list .wrapper .seeall-btn a.btn-with-arrow {
  width: 250px;;
  color: var(--black);
  line-height: 1.5;
  position: relative;
  text-align: center;
  transition: opacity .3s;
}

.top-news-list .wrapper .seeall-btn a.btn-with-arrow:hover {
  opacity: 0.6;
}

.top-news-list .wrapper .seeall-btn a.btn-with-arrow:before,
.top-news-list .wrapper .seeall-btn a.btn-with-arrow:after {
  content: "";
  position: absolute;
  transition: right 0.2s;
}

.top-news-list .wrapper .seeall-btn a.btn-with-arrow:before {
  background: #092241;
  height: 1px;
  width: 20px;
  right: 0;
  top: 50%;
}

.top-news-list .wrapper .seeall-btn a.btn-with-arrow:after {
  border-right: 1px solid #092241;
  border-top: 1px solid #092241;
  height: 5px;
  right: 0;
  top: calc(50% - 2px);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

.top-news-list .wrapper .seeall-btn a.btn-with-arrow:hover:before {
  right: -5px;
}

.top-news-list .wrapper .seeall-btn a.btn-with-arrow:hover:after {
  right: -5px;
}

@media screen and (max-width: 1024px) {
  .top-news-list {
    padding: 60px 0;
  }

  .top-news-list .wrapper header h2 {
    font-size: 1.625rem;
  }

  .top-news-list .wrapper header p {
    font-size: .875rem;
    margin-top: 40px;
  }

  .top-news-list .wrapper .posts {
    margin-top: 40px;
    padding: 0;
  }

  .top-news-list .wrapper .posts article.post > a {
    flex-direction: column;
    padding: 20px 0;
  }

  .top-news-list .wrapper .posts article.post .time {
    margin-bottom: 15px;
    font-size: .6875rem;
  }

  .top-news-list .wrapper .posts article.post .title {
    font-size: .875rem;
  }
  
  .top-news-list .wrapper .seeall-btn {
    margin-top: 40px;
  }
  
  .top-news-list .wrapper .seeall-btn a.btn-with-arrow {
    font-size: .875rem;
  }
}
.blog-list-section .wrapper {
  margin: 0 auto;
  max-width: 1240px;
  padding: 0 20px
}

.blog-list-section .wrapper header h2 {
  font-size: 2.125rem;
  line-height: 1.45
}

.blog-list-section .wrapper header p {
  color: var(--dark-gray);
  line-height: 2;
}

.blog-list-section .wrapper .posts, .blog-list-section .wrapper header p {
  margin-top: 10px;
}

.blog-list-section .wrapper .posts {
  padding: 0 100px
}
.blog-list-section:has(h2) .wrapper .posts {
  margin-top: 0;
}

.blog-list-section .wrapper .posts article.post:first-child {
  border-top: 1px solid #ededed
}

.blog-list-section .wrapper .posts article.post>a {
  border-bottom: 1px solid #ededed;
  column-gap: 20px;
  display: flex;
  padding: 30px 0
}

.blog-list-section .wrapper .posts article.post .time {
  color: var(--dark-gray-sub);
  font-size: 1.125rem;
  line-height: 1.45
}

.blog-list-section .wrapper .posts article.post .meta {
  display: flex;
  flex-direction: column;
  grid-row-gap: 10px
}

.blog-list-section .wrapper .posts article.post .categories .tags {
  grid-column-gap: 16px;
  grid-row-gap: 10px;
  display: flex;
  flex-wrap: wrap
}

.blog-list-section .wrapper .posts article.post .categories .tags .tag {
  background: var(--light-blue);
  border-radius: 3px;
  color: var(--white);
  font-size: .6875rem;
  line-height: 2;
  padding: 1px 12px;
  width: fit-content
}

.blog-list-section .wrapper .posts article.post .title {
  color: var(--dark-gray);
  font-size: 1rem;
  line-height: 2
}

.blog-list-section .wrapper .posts article.post .title h3 {
  background: linear-gradient(var(--black),var(--black)) 0 100%/0 1px no-repeat;
  display: inline;
  position: relative;
  transition: background .3s
}

.blog-list-section .wrapper .posts article.post>a:hover .title h3 {
  background-size: 100% 1px
}


.blog-list-section .wrapper .posts article.post>a {
  padding: 18px 0;
}

.blog-list-section .wrapper .posts article.post .time, .blog-list-section .wrapper .posts article.post .title {
  font-size: 1rem;
  line-height: 1.45;
}
.blog-list-section .post-info {
  display: flex;
  gap: 15px;
}
.blog-list-section li.tag {
  min-width: 90px;
  text-align: center;
}


@media screen and (max-width: 1024px) {
  .blog-list-section {
    padding:60px 0
  }

  .blog-list-section .wrapper header h2 {
    font-size: 1.625rem
  }

  .blog-list-section .wrapper header p {
    font-size: .875rem;
    margin-top: 40px
  }

  .blog-list-section .wrapper .posts {
    margin-top: 40px;
    padding: 0
  }

  .blog-list-section .wrapper .posts article.post>a {
    flex-direction: column;
    padding: 20px 0
  }
  .blog-list-section .post-info {
    margin-bottom: 15px;
    align-items: center;
  }
  .blog-list-section .wrapper .posts article.post .time {
    font-size: .75rem;
  }

  .blog-list-section .wrapper .posts article.post .title {
    font-size: .875rem
  }
  .blog-list-section li.tag {
    min-width: auto;
  }
}
.term-list {
  padding: 90px 0;
}

.term-list .wrapper {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 20px;
}

.term-list .wrapper .contents {
  display: flex;
  flex-wrap: wrap;
  max-width: 1440px;
  margin: 0 auto;
}

.term-list .wrapper .contents .term {
  width: 33.39%;
  margin-right: -1px;
}

.term-list .wrapper .term .term-wrapper {
  width: 100%;
  height: 100%;
  display: block;
  padding: 30px 40px 30px 90px;
  border: 1px solid #DDDDDD;
  border-top: none;
  position: relative;
  transition: background 0.3s;
}

.term-list .wrapper .contents .term .term-wrapper.border-top-none {
  border-top: none;
}

.term-list .wrapper .contents .term .term-wrapper.border-left-none {
  border-left: none;
}

.term-list .wrapper .contents .term .term-wrapper.border-right-none {
  border-right: none;
}

.term-list .wrapper .contents .term .term-wrapper .image {
  max-width: 76px;
  width: 100%;
  margin-bottom: 30px;
  filter: drop-shadow(7px 7px 30px rgba(0, 0, 0, 0.16));
}

.term-list .wrapper .contents .term .term-wrapper h3 {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 30px;
  min-height: 75px;
}

.term-list .wrapper .contents .term .term-wrapper ul {
  display: flex;
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-wrap: wrap;
}

.term-list .wrapper .contents .term .term-wrapper ul li a {
  width: 150px;
  display: flex;
  align-items: center;
  border: 1px solid var(--light-blue);
  border-radius: 5px;
  color: var(--white);
  cursor: pointer;
  padding: 6px 16px;
  background: var(--light-blue);
  transition: background .3s;
}

.term-list .wrapper .contents .term .term-wrapper ul li a:hover {
  color: var(--light-blue);
  background: var(--white);
}

.term-list .wrapper .contents .term .term-wrapper ul li a span {
  font-size: .8125rem;
  line-height: 1.45;
  margin-right: 10px;
  transition: margin-right .3s;
}

.term-list .wrapper .contents .term .term-wrapper ul li a:hover span {
  margin-right: 16px;
}

.term-list .wrapper .contents .term .term-wrapper ul li a svg path {
  stroke: var(--white);
}

.term-list .wrapper .contents .term .term-wrapper ul li a:hover svg path {
  stroke: var(--light-blue);
}

@media screen and (max-width: 1024px) {
  .term-list {
    padding: 60px 0;
  }

  .term-list .wrapper .contents {
    flex-direction: column;
    padding: 0;
  }

  .term-list .wrapper .contents .term {
    width: 100%;
  }

  .term-list .wrapper .contents .term .term-wrapper {
    border: none;
    border-bottom: 1px solid #DDDDDD;
    width: 100vw;
    margin-left: -20px;
    padding: 30px;
  }

  .term-list .wrapper .contents .term .term-wrapper .title {
    display: flex;
    align-items: center;
    grid-column-gap: 30px;
    margin-bottom: 20px;
  }

  .term-list .wrapper .contents .term .term-wrapper .image {
    margin-bottom: 0;
  }

  .term-list .wrapper .contents .term .term-wrapper h3 {
    font-size: 1.125rem;
    line-height: 1.45;
    min-height: unset;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 768px) {
  .term-list .wrapper .contents .term .term-wrapper ul {
    flex-direction: column;
    grid-row-gap: 20px;
  }

  .term-list .wrapper .contents .term .term-wrapper ul li a {
    width: 100%;
    padding: 10px 20px;
    transition: background 0.3s, padding-right 0.3s;
  }

  .term-list .wrapper .contents .term .term-wrapper ul li a:hover {
    padding-right: 15px;
  }

  .term-list .wrapper .contents .term .term-wrapper ul li a span {
    margin-right: auto;
  }

  .term-list .wrapper .contents .term .term-wrapper ul li a:hover span {
    margin-right: auto;
  }
}
.term-content {
  background: var(--light-gray-sub);
  padding-bottom: 90px;
}

.term-content .wrapper {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 20px;
}

.term-content .wrapper .content {
  background: var(--white);
  padding: 90px 100px;
  border-radius: 3px;
}

.term-content .wrapper .content h2 {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.45;
  margin-top: 60px;
  margin-bottom: 40px;
}

.term-content .wrapper .content h2:first-child {
  margin-top: 0;
}

.term-content .wrapper .content h3, .term-content .wrapper .content h4 {
  color: var(--dark-gray-sub);
  line-height: 2;
  margin-bottom: 10px;
}

.term-content .wrapper .content p {
  line-height: 2;
  color: var(--dark-gray-sub);
  margin-bottom: 30px;
}

.term-content .wrapper .content {
}

.term-content .wrapper .content ul {
  line-height: 2;
  color: var(--dark-gray-sub);
  margin-bottom: 30px;
  text-indent: -23px;
}

.term-content .wrapper .content ul li {
  list-style: inside;
  margin-left: 37px;
}

.term-content .wrapper .content ol {
  line-height: 2;
  color: var(--dark-gray-sub);
  margin-bottom: 30px;
}

.term-content .wrapper .content ol li {
  list-style: decimal;
  margin-left: 30px;
}

.term-content .wrapper .content table {
  width: 100%;
  margin-bottom: 30px;
}

.term-content .wrapper .content table tr th {
  background: #F8FBFF;
  white-space: nowrap;
}

.term-content .wrapper .content table tr th,
.term-content .wrapper .content table tr td {
  border: 1px solid #DDDDDD;
  font-size: .875rem;
  line-height: 1.5;
  padding: 15px 12px;
  vertical-align: middle;
}

.term-content .wrapper .content table tr td p:last-child {
  margin-bottom: 0;
}

.term-content .wrapper .content table tr td ol:last-child {
  margin-bottom: 0;
}

.term-content .wrapper .content table tr td ol li {
  margin-left: 23px;
}

.term-content .wrapper .content a {
  color: var(--dark-gray-sub);
  border-bottom: 1px solid var(--dark-gray-sub);
  transition: border-bottom 0.1s;
}

.term-content .wrapper .content a:has(img) {
  color: unset;
  border-bottom: none;
  transition: opacity 0.3s;
}

.term-content .wrapper .content a:has(img) img {
  max-width: 150px;
  width: 100%;
}

.term-content .wrapper .content a:hover {
  border-bottom: transparent 1px solid;
}

.term-content .wrapper .content a:has(img):hover {
  opacity: 0.6;
  border: none;
}

@media screen and (max-width: 1024px) {
  .term-content {
    padding: 100px 0 60px;
  }

  .term-content .wrapper .content {
    padding: 40px 20px;
  }

  .term-content .wrapper .content .ml-20 {
    margin-left: 0 !important;
  }

  .term-content .wrapper .content .ml-45 {
    margin-left: 25px !important;
  }

  .term-content .wrapper .content .ml-65 {
    margin-left: 45px !important;
  }

  .term-content .wrapper .content h2 {
    margin-top: 40px;
    margin-bottom: 30px;
  }

  .term-content .wrapper .content h3, .term-content .wrapper .content h4 {
    font-size: .9375rem;
    line-height: 1.8;
    margin-bottom: 10px;
  }

  .term-content .wrapper .content p {
    font-size: .9375rem;
    line-height: 1.8;
    margin-bottom: 20px;
  }

  .term-content .wrapper .content ul {
    font-size: .9375rem;
    line-height: 1.8;
    margin-bottom: 20px;
  }

  .term-content .wrapper .content ol {
    font-size: .9375rem;
    line-height: 1.8;
    margin-bottom: 20px;
  }

  .term-content .wrapper .content .table {
    overflow-x: scroll;
  }

  .term-content .wrapper .content table {
    width: 1000px;
    margin-bottom: 20px;
  }

  .term-content .wrapper .content .table .scroll-hint-icon-wrap.is-active .scroll-hint-icon {
    left: 100px;
  }

  .term-content .wrapper .flex {
    display: block;
  }

  .term-content .wrapper .content a:has(img) img {
    max-width: 100px;
  }
}
.corporate-basic h2{
  color: #141414;
  margin-bottom: 60px;
  font-size: 34px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;  
}

@media ( max-width: 768px ) {
  .corporate-basic h2{
    font-size: 24px;
    margin-bottom: 40px;
  }
}

.corporate-basic .corporate-basic__inner.mw-1400{
  max-width: 1400px;
}

.corporate-basic .corporate-basic__inner.mw-1200{
  max-width: 1200px;
}

.corporate-basic .corporate-basic__inner.mw-980{
  max-width: 980px;
}

.corporate-basic .corporate-basic__inner.mw-768{
  max-width: 768px;
}

.corporate-basic .corporate-basic__inner.mw-550{
  max-width: 550px;
}

.corporate-basic .corporate-basic__inner.content-left{
  margin-right: auto;
}

.corporate-basic .corporate-basic__inner.content-center{
  margin-right: auto;
  margin-left: auto;
}

.corporate-basic .corporate-basic__inner.content-right{
  margin-left: auto;
}

/*パートナーページ*/

@media ( max-width: 680px ) {
  .corporate-basic .corporate-basic__inner,
  .partner__section .corporate-flow__inner{
    padding: 0 20px;
  }
}
.partner-content-text{
  color: #404040;
  text-align: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 0.1em;	
}
@media ( max-width: 680px ) {
  .partner-content-text{
    text-align:left;
  }
}
.partner__section h2{
  color: #141414;
  margin-bottom: 60px;
  font-size: 34px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;
}  
@media ( max-width: 768px ) {
  .partner__section h2{
    font-size: 24px;
    margin-bottom: 30px;
  }
}
.partner__section p {
    color: #404040;
    font-size: 16px;
    font-weight: 400;
    line-height: 200%;
    letter-spacing: 0.1em;
}
.introducing-partner__provide .title__bottom{
  color: #404040;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 0.1em;  
  margin-bottom: 60px;
}
.introducing-partner__provide .title__bottom strong{
  font-weight:700;
}  
.introducing-partner__provide h3{
  color:#00479D;
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: .1em;
}

.introducing-partner__provide__flex {
  display: flex;
  margin-top: 20px;
}

@media ( max-width: 1024px ) {
  .introducing-partner__provide__flex {
    flex-direction: column;
  }
}

.introducing-partner__provide__left{
  background: #F8FBFF;
  display: flex;
  width: 50%;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  flex: 1;  
}

.introducing-partner__provide__right{
  display: flex;
  width: 50%;
  padding: 40px 0px 60px 0px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  background: #fff;
  flex: 1;  
}

.introducing-partner__provide__left,
.introducing-partner__provide__right {
  padding:40px 0 60px;
}

@media ( max-width: 1024px ) {
  .introducing-partner__provide__left,
  .introducing-partner__provide__right {
    width: 100%;
    padding:40px 0;    
  }
}

.introducing-partner__provide__left ul,
.introducing-partner__provide__right ul {
  flex: 1;
  margin: 0;
  padding: 0;
  flex-direction: column;
  gap: 16px;    
  display:flex;
  padding: 24px 16px;
  max-width: 520px;
}

.introducing-partner__provide__left ul li,
.introducing-partner__provide__right ul li {
  color: #404040;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: .1em;
  display:flex;
  gap: 8px;
}

i.circle__check{
  background-image: url(https://480402.fs1.hubspotusercontent-na1.net/hubfs/480402/images/common/icon/check-circle.png);
  width: 20px;
  height: 20px;
  background-size: contain;
  background-repeat: no-repeat;
  position: relative;
  top: 5px;  
}

.introducing-partner__provide__left ul li span,
.introducing-partner__provide__right ul li span{
  width: calc(100% - 20px);
}

.introducing-partner__provide__bottom{
  display: flex;
  gap: 28px;
  align-items: end;  
}

@media ( max-width: 550px ) {
  .introducing-partner__provide__bottom{
    flex-direction: column;
    align-items: center;
    gap: 16px;
  }
}

.introducing-partner__provide__bottom p{
  color: #404040;
  text-align: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 1.6px;
}

.introducing-partner__provide__bottom p strong{
  position:relative;
  color: #00479D;
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
}

.introducing-partner__provide__bottom p strong:before,
.introducing-partner__provide__bottom p strong:after{
  content: "";
  display:block;
  width: 28px;
  height: 20px;
  background-size:cover;
  position: absolute;  
}

.introducing-partner__provide__bottom p strong:before{
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAUCAYAAACeXl35AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAADeSURBVHgB7ZY9DoJAEIXfLBCvoTeQxMKSK9gosdKTgCfQI1BKp0ewMmLjETwCpRbsKGD43QSqbeSr2Akz37xikyVU4Gg9ZSR7NGCJszEPD+iA70uPmZxmnaz3guxTnH6btYZc1moQI9qiS3Z1x8zst+pAIH6ybFa5neuoZGkD2ccnujDgqcrCol3tXAxm7tWgIksH3rTqimUzoa50pVBTumymznS5UGO6FJLRitETFgiMWVhckeTm+kTqhZUyiyYCmhmEg3AQ/qHQZFDQ9+fvU+NSPQtDPqQUAXpCeMUfPThrjOoaRjIAAAAASUVORK5CYII=");
  left: -28px;
  top: -8px;  
}

.introducing-partner__provide__bottom p strong:after{
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAUCAYAAACeXl35AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAADYSURBVHgB7ZSxEYJAEEV3F+wDm4CULiRTK1FLsALJxCrUFIvwSrAAh3Uv0BHm4PYCJeEnO3z4+/4QLDb14gxKMeM1yqrt+/lZFysCXmrzOMN1LDPXBiBi01rAkAAG5EUEf9YEnIATcHygXBo07lecwA+ELpPlRjLwoes3ILcwrUrwSO7zXUbSsQ2lp7nzlwps47CNBmbLOmC27M5OCg14gZ6yFBoYhCnKUmhgEKgoS6GBXpiyLIUGeoHKsvFnMUOOiJf2FnzE2bEEH+xW5MxgLODbR2r23W9fdsNiGjSkURcAAAAASUVORK5CYII=");
  right: -28px;
  bottom: -15px;
}

.introducing-partner__provide__border{
  height: 60px;
  display: flex;
  align-items: center;
}

@media ( max-width: 680px ) {
  .introducing-partner__provide__border{
    width: 100%;
    padding: 0 20px;    
  }
  .introducing-partner__provide__border img{
    width: 100%;    
  }
}

section.introducing-partner__about{
  position:relative;
}

section.introducing-partner__about:before{
  content: "";
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJwAAABFCAYAAAC/iY+qAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAQjSURBVHgB7dzxUdswFAbwJ/NX6qSHN2CEZgPYoN0AJihM0DBBYQLoBGWDMgIjsEFyEI5re42ql2AIiRM/O7IsWd/vrncpTsoffCfjr3pS4+n0VJH6TgAN06TPFL8YPzx8VsnelXm5TwC2aZrohE6yNL1R+dfMSvdJUfLTXD0gAGvUvabZl6zfv5v/bfnS+Pn5QP3TvxA6sMOEbU8dZb3eff6VZPkyX+A3mJd3BLATdbcaNpasvm0eur9/jszad0MANeiZ/qHT3lrYmNr2wfHj40ip5BsBCGmtL7NB/3TT9WTbh7PBYKT17JwABLSm821hY1tXuBy6OihjOrYT8yR6XfY+UeCYub0emturqU3Q1cES7ti49hgMbiVvFweOoTaB99Zrj9JPUEUIHSxUDxtLqCJ0dTDv2NLesGrYWOXAMf5G+/10yH0LQVT4Z77f/zDMlJpQDbUCl8s+9o9Rm8RjXnuYnzntoPLvcEVQEHffomNLR7QjK4Fjpqs7Nl3dFUG3cO2h9JmkY5OwFjiGLU4dswjbUb61yAargWOoTbqiXu1RZqeHhiJvtYm6JwhU8dYiG6wHji22OP0emlXuliAw6nbT1iIr/zo1zDzBXpgn2K8E3uOObdfao0wjK9wy85+6p+jq/GejY5NofIXLoavzF4/vmSfRC3LAWeAYxhE9Y7ljk3AaOIauzhfvx/ecfVdqAbq6tjXTsUk0/tBQBFuc2tRcxybRSuAYxhFboOmmyY5NopVb6ip0dc0rG99zpbUVbhm6umZJxvdc8WKFy2Ec0T6XHZuEV4Fj6OosqTi+54p3gWOoTXbVTscm4WXgGEJXV3sdm4QXDw1F0NXVUX98zxVvA8fyrg7jiOVej8iqOb7nire31FXYbbKZrYkqF4IJHEPo1oUUNhZU4Bi6ujfSI7J8Elzg2GKLkzJPsJF2dQ2M77kSZOBYvLWJ37VHmWADx+ILXdhhY17XImXexhFj6Orm43ted2wSQQeOZVk2mR8dpmeX1FEvR2R537FJBB+4XFe3OLka33Ml6N/hinSpqwutY5PoXODYy9Fh3NWFWZu0ML7nSicDx4IdRwy4Y5PobOBYeLVJ+LVHmc48NBQJ6+iwdsf3XOl04NhrV+f1OGKzR2T5pNO31FU+jiP6Mr7nSudXuGW+dXU+je+5EtUKl/Nhi5Nv43uuRBk41to4ItceCZ1kaRrlERfRBo657+r8Hd9zJerAMXddXfc7NomoHhqKuBlHjKNjk4g+cKzJo8Nex/cQtrnob6mrbO42ia1jk8AKt8J0dSMbXV2MHZsEVrgNdunqQhzfcwWB28LcXg/N7dXUJsKuztMjsnyCwJWQ1yaoPSQQOIHy0CFsUnhoENje1fl/RBYEbPwwvZ5MnzT/4ddjrXE0LDSLu7rx49OIoLL/3l5LNcp+5LkAAAAASUVORK5CYII=);
  width: 180px;
  height: 92px;
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  top: -50px;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0px);
}

@media ( max-width: 678px ){
  section.introducing-partner__about:before{
    top: 0;
    width: 60px;
    height: 31px;    
  }
}

div.introducing-partner__about{
  background-color: #fff;
  position: relative;  
  padding: 30px;  
}

@media ( max-width: 768px ){
  div.introducing-partner__about{
    padding: 20px;
  }
  .introducing-partner__about__right{
    width: 100%;
  }
  .introducing-partner__about__right img{
    width: 100%;
    height: auto;
  }  
}

div.introducing-partner__about--top{
  margin-bottom: 90px;
}

div.introducing-partner__about h2{
  color: #00479D;
  font-family: "Noto Sans CJK JP";
  font-size: 26px;
  font-weight: 700;
  line-height: 37.7px;
  letter-spacing: 1.6px;
  position: relative;
  width: fit-content;
  padding: 28px 20px;
  padding: 18px 25px 10px 20px;  
}

@media ( max-width: 1024px ) {
  div.introducing-partner__about h2{
    margin: 0 auto;
    font-size: 24px;
  }
}

@media ( max-width: 680px ) {
  div.introducing-partner__about h2{
    margin: 0 auto;
    font-size: 20px;
  }
}

div.introducing-partner__about h2:before,
div.introducing-partner__about h2:after{
  content:"";
  width: 27.13px;
  height: 19.379px;
  background-size:contain;
  background-repeat: no-repeat;
  position:absolute;
}

div.introducing-partner__about h2:before{
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADcAAAAnCAYAAACrDdDdAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAD5SURBVHgB7ZjLDcJADERnFwoJZVANlAFcAjfKgE5yAFEGKYECUEy8EohPEjbS7sGW3yE/WeO8zC0OA2zOVBJhi0hogtl+7mokIMVu3ze8ulDRhi8RiXM4pBJLtbtXzjdYtKcCkTQeOyQi1e5OOQ2tMZ1yGloLWd8PtLTG/MhpaS3kvd9oao35kNPUWsh8XmhrjXnJaWst5PJBY2tMkNPYWsjW2hrjtbbGuPWJriMW1I5wjJxFMx3+0rl3T0eEMwU5lNHTd1T8UkN5yLjbQzEmJxWTk4rJScXkpGJyUjE5qZicVExOKiYnFZOTCv/9qpAJ73H7M1Ih4+4HiMO37SHKc/gAAAAASUVORK5CYII=);
  left: 0;
  top: 0;
}

div.introducing-partner__about h2:after{
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADcAAAAoCAYAAABaW2IIAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAD/SURBVHgB7Ze9DcIwEIWfgwdhDTqyCWMghAR0bAFMAhJCtIwQNmCAEBO7JH9OZBfPuq9JdD7f6dOrrLZ3s0QkdInXPlefrvPYu/VX4YpIlBp5/bl1ncfenSFhRI4VkWNF5FgROVZEjhWRY0XkWBE5VkSOFZFjJWk5NaZ58zAnY7DybC/MDPlxoQoEYMpu7+TWTzMfMRx17yWU2NTd3nJZhR38KaBxRiCm7vaSY0zN/nvJMabm7g51s6ZmGZRjTc3d7+tmTs3SK8ecmpvR1c2emqVTjj01N6etmEJqlla5FFJzs/4LqaRmacilkppFNyoV3vU76AAPqgxFqNRi7P4B1JvVgVsWymAAAAAASUVORK5CYII=);
  bottom: 0;
  right: 0;
}

.introducing-partner__about__ttl-bottom{
  color: #404040;
  font-size: 16px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: .1em;
  margin: 30px 0;
}

@media ( max-width: 1024px ) {
  .introducing-partner__about__ttl-bottom{
    text-align:center;
  }
}

@media ( max-width: 680px ) {
  .introducing-partner__about__ttl-bottom{
    text-align:left;
  }
}

.introducing-partner__about__flex{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
  align-self: stretch;    
}

@media ( max-width: 1024px ) {
  .introducing-partner__about__flex{
    flex-direction: column;
  }
}

.introducing-partner__about__flex ul li{
  color: #404040;
  font-size: 16px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 0.1em;
  padding-left: 24px;
  position: relative;  
}

.introducing-partner__about__flex ul li i{
  background: #0085CE;
  width: 16px;
  height: 16px;
  display: block;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0px, -50%);
}

@media ( max-width: 768px ) {
  .introducing-partner__about__flex ul li i{
    width: 10px;
    height: 10px;
    display: block;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 12px;
    transform: translate(0px, 0%);  
  }
}


.introducing-partner__about__flex svg{
  height: 40px;
  display: block;
  margin: 0 auto;
  padding-top: 10px;
}

@media ( max-width: 768px ) {
  .introducing-partner__about__flex svg{
    padding-top: 0px;  
  }
}

.introducing-partner__about__flex strong{
  color: #404040;
  text-align: center;
  font-size: 19px;
  font-weight: 700;
  letter-spacing: 0.1em;
  display: block;  
}

@media ( max-width: 768px ) {
  .introducing-partner__about__flex strong{
    font-size: 16px;  
  }
}


.introducing-partner__about__last{
  color: #404040;
  font-size: 16px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 0.1em;
  margin-top: 40px;
  text-align:center;
}

@media ( max-width: 680px ) {
  .introducing-partner__about__last{
    text-align: left;
  }
}

.introducing-partner__about__flex--col3{
  display: flex;
  margin: 70px 0;
  gap: 30px;
  align-items: flex-start;  
}

@media ( max-width: 1024px ) {
  .introducing-partner__about__flex--col3{
    flex-wrap: wrap;
    padding: 0 20px; 
    flex-wrap: wrap;
    padding: 0 20px;
    gap: 50px 30px;    
    flex-direction: unset;    
  }
}

@media ( max-width: 768px ) {
  .introducing-partner__about__flex--col3{
    padding: 0px; 
  }
}

.introducing-partner__about__flex--col3 .introducing-partner__about__flex__item{
  display: flex;
  position: relative;
  padding: 40px 0px;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  flex: 1 1 calc(33% - 20px);
  border-radius: 4px;
  background: #F8FBFF;
  box-shadow: 0px 4px 30px 8px rgba(90, 90, 90, 0.07);  
}

.introducing-partner__about__flex__item h3{
  color: #141414;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: .1em;
  margin-bottom: 20px;
  margin-top: 10px;
}

.introducing-partner__about__flex--col3 .introducing-partner__about__flex__item .image img{
  width: 340px;
  height: auto;
}

.introducing-partner__about__flex--col3 .merit{
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translate(-50%, 0px);
  background: #00479D;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  outline: 1px solid #fff;
  outline-offset: -5px;
}

.introducing-partner__about__flex--col3 .merit span{
  color: #FFF;
  font-size: 8px;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 0;
}

.introducing-partner__about__flex--col3 .merit strong{
  color: #FFF;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1.1;
}

.introducing-partner__about__lineUp{
  border-radius: 4px;
  background: #F8FBFF;
  box-shadow: 0px 4px 30px 8px rgba(90, 90, 90, 0.07);
  display: flex;
  padding: 40px 30px;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  margin: 70px 0;  
}

@media ( max-width: 680px ){
  .introducing-partner__about__lineUp{
    padding: 20px 15px;
    gap: 20px;
  }
}

.introducing-partner__about__lineUp h3{
  color: #00479D;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.introducing-partner__about__lineUp ul{
  display: grid;
  padding: 16px 40px;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  background: #fff;  
}

@media ( max-width: 1024px ) {
  .introducing-partner__about__lineUp ul{
    grid-template-columns: 1fr;  
  }
}

@media ( max-width: 768px ) {
  .introducing-partner__about__lineUp ul{
    width: 100%;
    padding: 16px 20px;    
  }
}

.introducing-partner__about__lineUp ul li{
  padding-left: 24px;
  position: relative;
  display: flex;
  gap: 16px;
  text-wrap: nowrap;
}

@media ( max-width: 768px ) {
.introducing-partner__about__lineUp ul li{
    flex-direction: column;
    gap: 0px;
    text-wrap: wrap;  
    padding-left: 20px;
  }
}

.introducing-partner__about__lineUp ul li i{
  background: #00479D;
  width: 16px;
  height: 16px;
  display: block;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0px, -50%);
}

@media ( max-width: 768px ) {
  .introducing-partner__about__lineUp ul li i{
    background: #00479D;
    width: 10px;
    height: 10px;
    display: block;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 10px;
    transform: translate(0px, 0%); 
  }
}

@media ( max-width: 768px ) {
  .introducing-partner__about__lineUp ul li strong{
    
  }
}

.read-more{
  background-color: var(--white);
  border: 1px solid var(--gray);
  border-radius: 5px;
  color: var(--black);
  display: block;
  width: fit-content;
  margin: 70px auto 0;
  font-size: 1rem;
  line-height: 1.5;
  outline: none;
  padding: 23px 85px;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: background-color .3s, color .3s;
}

@media ( max-width: 768px ) {
  .read-more{
    padding: 23px 0px;  
    width: 100%;    
  }
}

.read-more:before{
  background: #092241;
  height: 1px;
  right: 30px;
  top: 50%;
  width: 20px;
}

.read-more:after {
  border-right: 1px solid #092241;
  border-top: 1px solid #092241;
  height: 5px;
  right: 30px;
  top: calc(50% - 2px);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

.read-more:after, 
.read-more:before {
  content: "";
  position: absolute;
  transition: right .2s;
}

.read-more:hover{
  background-color: var(--blue);
  border: 1px solid var(--blue);
  color: var(--white);
}

.read-more:hover:before {
  background: var(--white);
  right: 25px;
}

.read-more:hover:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  right: 25px;
}

.introducing-partner__support__flex .merit{
  background: #0085CE;  
}


.introducing-partner__about__tools{
  border-radius: 4px;
  background: #fff;
  box-shadow: 0px 4px 30px 8px rgba(90, 90, 90, 0.07);
  display: flex;
  padding: 40px 30px;
  flex-direction: column;
  align-items: center;
}

.introducing-partner__about__tools h3{
  color: #00479D;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
  margin-bottom: 40px;
}

@media ( max-width: 680px ){
  .introducing-partner__about__tools h3{
    font-size: 20px;
  }
}

.introducing-partner__about__tools .introducing-partner__about__flex {
  margin-bottom: -30px;
}

.introducing-partner__about__tools .introducing-partner__about__flex .introducing-partner__about__flex__item{
  display: flex;
  padding: 20px;
  align-items: center;
  gap: 16px;
  background: #F8FBFF;  
  flex: 1 1 calc(50% - 20px);  
  position: relative;
}

@media ( max-width: 680px ){
  .introducing-partner__about__tools .introducing-partner__about__flex .introducing-partner__about__flex__item{
    flex-direction: column;
    width: 100%;
    padding-bottom: 50px;
    gap: 0px;    
  }
  .introducing-partner__about__tools .introducing-partner__about__flex .introducing-partner__about__flex__item:nth-child(2){
    padding-top: 50px;    
    padding-bottom: 50px;
    gap: 20px;    
  }  
}

.introducing-partner__about__tools .introducing-partner__about__flex .introducing-partner__about__flex__item .rotate_arrow{
  position: absolute;
  right: 10px;
  bottom: 10px;
  border-radius: 50%;
  background: #fff;
  border: #00479D 1px solid;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center; 
  overflow: hidden;  
}

.introducing-partner__about__tools .introducing-partner__about__flex .introducing-partner__about__flex__item .rotate_arrow svg{
  height: unset;
  padding: 0;  
  transition: 300ms ease;
  position: absolute;  
}

.introducing-partner__about__tools .introducing-partner__about__flex .introducing-partner__about__flex__item:hover .rotate_arrow svg{
  animation: hoverArrow 300ms ease;
}

@keyframes hoverArrow{
  0%{
    transform: translateX(0%);  
  }
  50%{
    transform: translateX(400%);
  }
  51%{
    transform: translateX(-400%);
  }
  100%{
    transform: translateX(0%);
  }  
}

.introducing-partner__about__tools .introducing-partner__about__flex .introducing-partner__about__flex__item .introducing-partner__about__flex__item__text p{
  color: #141414;
  font-family: "Noto Sans CJK JP";
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 32.4px;
  letter-spacing: 0.1em;  
}

.introducing-partner__about__tools .introducing-partner__about__flex .introducing-partner__about__flex__item__image{
  max-width: 193px;
}

.introducing-partner__about__tools .introducing-partner__about__flex .introducing-partner__about__flex__item__image img{
  width: 100%;
}


.introducing-partner__about__tools .introducing-partner__about__tools__bottom{
  width: 1000px;
  margin-top: 40px;
  padding-top: 40px;
  border-top: solid 1px #0085CE;
}

@media ( max-width:1024px ){
  .introducing-partner__about__tools .introducing-partner__about__tools__bottom{
    width: 100%;
  }
}

.introducing-partner__about__tools .introducing-partner__about__tools__bottom .read-more{
  margin-top: 40px;  
}

.sla__table{
  width: fit-content;
  margin: 70px auto 0;
}

.sla__table tr td{
  width: 370px;
  height: 70px;
  text-align: center;
  vertical-align: middle;
  color: #141414;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: .1em;  
  background:#EFF6FF;
  border: solid 2px #fff;  
}

.sla__table tr td:first-child{
  width:360px;
  font-weight: bold;
  background:#E7F1FF;
}

.sla__table tr:first-child td{
  background:#E7F1FF;
  font-weight: bold;
}

@media ( max-width: 680px ){
  .sla__table{
    width: 100%;
    margin: 40px auto 0;
  }
  .sla__table tr td:first-child{
    width:20%;
  }  
  .sla__table tr td{
    width: 40%;
    font-size: 10px;
  }
}

.mb-left{
  text-align:center;
}
@media ( max-width: 680px ){
  .mb-left{
    text-align:left;
  }
}

.partner__support__support h2{
  text-align: center;
  display: flex;
  flex-direction: column;
}

.partner__support__support h2 .ttl_icon{
  align-items: center;
  background: #0085ce;
  border-radius: 50%;
  color: #fff;
  display: flex;
  flex-direction: column;
  height: 60px;
  justify-content: center;
  margin: 0 auto 10px;
  outline: 1px solid #fff;
  outline-offset: -5px;
  width: 60px;  
}

.partner__support__support h2 .ttl_icon span {
  color: #fff;
  font-size: 8px;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 0;  
}

.partner__support__support h2 .ttl_icon strong{
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1.1;
}

.partner__support__support__contant{
  background: #fff;
  padding: 40px 0;  
  margin-top: 70px;
}

@media ( max-width: 768px ){
  .partner__support__support__contant{
    padding: 20px 0;  
    margin-top: 30px;
  }
}

.partner__support__support__contant__flex{
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 50px;
  gap: 40px;  
}

@media ( max-width: 550px ){
  .partner__support__support__contant__flex{
    padding: 0 15px;
  }
}

@media ( max-width: 768px ){
  .partner__support__support__contant__flex{
    flex-direction: column-reverse;
    gap: 30px;
  }
}

.partner__support__support__links{
  display: flex;
  justify-content: space-between;
  margin-top: 70px;
  padding: 0 50px;  
}

@media ( max-width: 768px ){
  .partner__support__support__links{
    margin-top: 30px;
    flex-direction: column;
    gap: 30px;    
  }
}

@media ( max-width: 550px ){
  .partner__support__support__links{
    padding: 0 15px;
  }
}

.partner__support__support__links a{
  margin: 0;
  width: 500px;
  padding: 23px 0;
}

@media ( max-width: 768px ){
  .partner__support__support__links a{
    width: 100%;     
  }
}

@media ( max-width: 550px ){
  .partner__support__support__links a{
    font-size: 14px;
  }
}

@media ( max-width: 550px ){
  .partner__support__support__contant__flex__image{
    width: 100%;
  }
  .partner__support__support__contant__flex__image img{
    width: 100%;
    height: auto;
  }  
}

.introducing-partner__info .partner-top__flex{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;  
  flex-wrap: wrap;  
}

@media ( max-width:680px ) {
  .introducing-partner__info .partner-top__flex{
    flex-direction: column;    
    gap: 20px;
  }
}

.introducing-partner__info .partner-top__flex .partner-top__flex__item{
  width: calc(50% - 10px);
  padding: 40px;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  flex-shrink: 0;
  align-self: stretch;
  background: #fff;
  display: flex;
}

@media ( max-width:680px ) {
  .introducing-partner__info .partner-top__flex .partner-top__flex__item{
    width: 100%;
    padding: 30px 20px;
  }
}

.introducing-partner__info .partner-top__flex .partner-top__flex__item h3{
  color: #202020;
  text-align: center;
  font-size: 22px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: .1em;
  position: relative;
}

@media ( max-width:1024px ) {
  .introducing-partner__info .partner-top__flex .partner-top__flex__item h3{
    min-height: 66px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}

@media ( max-width:680px ) {
  .introducing-partner__info .partner-top__flex .partner-top__flex__item h3{
    height: auto;
  }
}

.introducing-partner__info .partner-top__flex .partner-top__flex__item h3:after{
  background: #0085ce;
  content: "";
  display: block;
  height: 2px;
  margin: 0px auto 0;
  width: 58px;
  position: absolute;
  bottom: -8px;
  left: 50%;
  transform: translate(-50%, 0px);
}

.introducing-partner__info .partner-top__flex .partner-top__flex__text{
  color: #333;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  padding: 16px 0;
}

.introducing-partner__info .partner-top__flex .partner-top__flex__text span{
  color: #333;
  text-align: center;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  display: block;
}

.introducing-partner__info .partner-top__flex .partner-top__flex__text span a{
  color: #1A0DAB;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;  
}

.introducing-partner__info .partner-top__flex .partner-top__flex__bottom__link{
  background: #00479B;
  color: #fff;
  padding: 15px 43px 15px 32px;
  transition: 300ms;
  position: relative;
}

.introducing-partner__info .partner-top__flex .partner-top__flex__bottom__link i{
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAMCAYAAABfnvydAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABySURBVHgBfZABDYAwDAQXFOAAJCABJ0gBByABB0hAwoKCSRgOyhOeMKDdJ59m+8va1YlIDa9ndZoQLHIpqBAuS9gnUGNB90sRbq12kzzqLGhIoL74tkKpeNzhzRo2voblLrz6XYZBDQmMDL1kFjVzwJ8OIrus933FQ9IAAAAASUVORK5CYII=);
  width: 8px;
  height: 12px;
  display: block;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translate(0px, -50%);  
}

.introducing-partner__info .partner-top__flex .partner-top__flex__bottom__link:hover{
  background-color: var(--light-blue);
}

.introducing-partner__info .partner-top__flex ul li{
  position:relative;
  padding-left: 16px;
  align-items: center;
  display: flex;
}

.introducing-partner__info .partner-top__flex ul li:before{
  align-items: center;
  content: "";
  position: absolute;
  left: 0;
  width: 8px;
  height: 8px;
  background: #000;
  border-radius: 50%;
}
.lp-faq .wrapper {
  margin: 0 auto;
}

@media ( max-width:1200px ){
  .lp-faq .wrapper{
    padding: 0 20px;
  }
}

.lp-faq.mw-1400 .wrapper {
  max-width: 1400px;
}

.lp-faq.mw-1200 .wrapper {
  max-width: 1200px;
}

.lp-faq.mw-980 .wrapper {
  max-width: 980px;
}

.lp-faq.mw-768 .wrapper {
  max-width: 768px;
}

.lp-faq.mw-550 .wrapper {
  max-width: 550px;
}

.lp-faq .section-content p {
  margin: 0;
}

.section-faq-item:not(:first-child) {
  margin-top: 60px;
}

.lp-faq h4 {
  margin-bottom: 20px;
  line-height: 1.6;
  letter-spacing: 2.4px;
}

.lp-faq .section-content .pattern1 .qa_color ul .faq-item .faq-title:before {
  color: ;
}

.lp-faq .pattern1 .qa_color .faq-content:before {  
  color:  ;
}

.lp-faq .section-content .pattern1 ul .faq-item .faq-title {
  display: block;
  font-weight: 700;
  line-height: 1.2;
  padding: 0 30px 10px 50px;
  position: relative;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.8px;
  border-bottom: 1px solid #D7D7D7;
}

.lp-faq .section-content .pattern1 ul .faq-item .faq-title:before{
  content: "Q.";
  left: 0;
  position: absolute;
  color:#00479D;
}

.lp-faq .pattern1 .faq-content:before {
  content: "A.";
  font-weight: 700;
  position: absolute;
  left: 0;
  top: 15px;
  color:#00479D;  
}

.lp-faq .pattern1 .faq-button {
  content: "";
  display: block;
  width: 25px;
  height: 20px;
  right: 0;
  top: 6px;
  background: #00479D;
  mask-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgdmlld0JveD0iMCAwIDMwIDMwIiBmaWxsPSJub25lIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTMuMjcxOTcgNi4xMzMzQzMuNjM0NiA1Ljc3MDY3IDQuMjIyNTQgNS43NzA2NyA0LjU4NTE3IDYuMTMzM0w5LjUgMTEuMDQ4MUwxNC40MTQ4IDYuMTMzM0MxNC43Nzc1IDUuNzcwNjcgMTUuMzY1NCA1Ljc3MDY3IDE1LjcyOCA2LjEzMzNDMTYuMDkwNyA2LjQ5NTkzIDE2LjA5MDcgNy4wODM4NyAxNS43MjggNy40NDY1TDEwLjE1NjYgMTMuMDE3OUM5Ljc5Mzk3IDEzLjM4MDYgOS4yMDYwMyAxMy4zODA2IDguODQzNCAxMy4wMTc5TDMuMjcxOTcgNy40NDY1QzIuOTA5MzQgNy4wODM4NyAyLjkwOTM0IDYuNDk1OTMgMy4yNzE5NyA2LjEzMzNaIiBmaWxsPSIjMDA0NzlDIi8+PC9zdmc+);
  mask-position: center;
  mask-repeat: no-repeat;
  position: absolute;
}

.lp-faq .section-content .pattern1 ul .faq-item.content-visible .faq-button {
  transform: translateX(-12px) translateY(-10px) rotate(-180deg);
}

.lp-faq .faq-content {
  position: relative;
  padding: 15px 5px 15px 50px;
  font-size: 16px;
  letter-spacing: 0.8px;
}
.lp-faq .section-content .btn, .lp-faq .section-content .changed {
  color: #00479D;
  text-decoration: none;
  display: block;
  text-align: end;
}
.lp-faq .section-content .btn {
  margin-top: 30px;
}
.lp-faq .section-faq {
  position: relative;
}
.lp-faq .section-content .changed {
  margin-top: 0;
  top: 77%;
  cursor: pointer;
  left: 46%;
  padding: 30px;
  position: absolute;
}

.lp-faq .section-content .changed:after {
  content: "\f106";
  float: right;
  font: normal normal normal 36px FontAwesome;
  position: absolute;
  right: 40%;
  top: 58px;
  transform: rotate(180deg);
}

@media screen and (max-width: 768px) {
  .lp-faq ul.readmore {
    margin-bottom: 20px;
  }
}
.lp-faq li.faq-item.item-3.changed-op {
  display: block !important;
  opacity: .3;
}
.lp-faq li.faq-item.item-4.selected.changed-op {
  display: block !important;
  margin-top: 30px;
  opacity: .1;
}
.lp-faq .section-content .btn {
  cursor: pointer;
  margin-top: 70px;
  padding: 30px;
  text-align: center;
  position: relative;
}
.lp-faq .section-content .btn:after {
  top: 8%;
  content: "\f106";
  float: right;
  font: normal normal normal 36px FontAwesome;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
}
.lp-faq .section-content .btn.changed {
  position: absolute;
  bottom: -180px;
  left: 50%;
  transform: translate(-50%, -50%);
}
.lp-faq .section-content .btn.changed:after {
  top: 58px;
  transform: rotate(180deg);
}


.lp-faq .section-content .pattern2 ul .faq-item .faq-title {
  background-color: #00479D;
  display: block;
  color: #fff;
  font-weight: 700;
  position: relative;
  padding: 20px 60px 20px 20px;
}
.lp-faq .section-content .pattern2 li.faq-item {
  margin-top: -10px;
}
.lp-faq .pattern2 .faq-button {
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  border: 16px solid #fff;
  border-radius: 5px;
}


.lp-faq:not(:has(.pattern1)) .faq-button:after,.lp-faq .faq-button:before {
  content: "";
  height: 1px;
  left: calc(50% - 7.5px);
  position: absolute;
  top: calc(50% - 1.5px);
  transition: .3s;
  width: 15px;
}
.lp-faq:not(:has(.pattern1)) .faq-item.content-visible .faq-button:after {
  transform: rotate(0deg);
}
.lp-faq:not(:has(.pattern1)) .faq-button:after {
  transform: rotate(90deg);
}

.lp-faq .pattern2 .faq-content {
  padding: 20px;
  background-color: #f8fbff;
}
.lp-faq .pattern2 .faq-button:after, .lp-faq .pattern2 .faq-button:before {
  background-color: #00479D;
  left: calc(50% - 11px);
  top: calc(50% + -1px);
  height: 3px;
  width: 23px;
}
.lp-faq .section-content .pattern2 ul .faq-item .faq-title:before, .lp-faq .pattern2 .faq-content:before{
  content: none;
}

.lp-faq .pattern2.i-bg-none .faq-button {
  border: 16px solid #00479D;
}
.lp-faq .pattern2.i-bg-none .faq-button:after, .lp-faq .pattern2.i-bg-none .faq-button:before {
  background-color: #ffffff;
}

/* pattern3 */
.lp-faq .pattern3 input {
  display: none;
}
.lp-faq .pattern3 li.faq-item {
  padding: 24px 24px 0;
  background: #fff;
  border-radius: 4px;
  border: 2px solid #EBEBFD;
  margin-top: 24px;
}

.lp-faq .pattern3 ul .faq-item .faq-title {
  display: block;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 1.6px;
  line-height: 1.6;
  padding: 0 30px 24px 50px;
  position: relative;
}
.lp-faq .pattern3 ul .faq-item .faq-title:before {
  color: #5653E5;
  content: "Q.";
  top: -3px;
  left: 15px;
  position: absolute;
  font-family: Helvetica;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
}

.lp-faq .pattern3 .faq-button {
  background: #5653E5;
  content: "";
  display: block;
  height: 20px;
  mask-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgZmlsbD0ibm9uZSIgdmlld0JveD0iMCAwIDMwIDMwIj48cGF0aCBmaWxsPSIjMDA0NzlDIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zLjI3MiA2LjEzM2EuOTMuOTMgMCAwIDEgMS4zMTMgMEw5LjUgMTEuMDQ4bDQuOTE1LTQuOTE1YS45MjkuOTI5IDAgMCAxIDEuMzEzIDEuMzE0bC01LjU3MSA1LjU3YS45My45MyAwIDAgMS0xLjMxNCAwbC01LjU3MS01LjU3YS45My45MyAwIDAgMSAwLTEuMzE0IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=);
  mask-position: center;
  mask-repeat: no-repeat;
  position: absolute;
  right: 0;
  top: 11px;
  width: 25px;
}
.lp-faq .pattern3 ul .faq-item.content-visible .faq-button {
  transform: translateX(-12px) translateY(-10px) rotate(-180deg);
}
.lp-faq .pattern3 .faq-content {
  display: block;
  letter-spacing: 1.6px;
  line-height: 1.6;
  padding: 24px 30px 24px 50px;
  border-top: 1px solid #E8EAED;
}

.lp-faq .pattern3 .faq-content .text-content {
  position: relative;
}
.lp-faq .pattern3 .faq-content .text-content::before {
  color: #15CEB7;
  content: "A.";
  top: -3px;
  left: -33px;
  position: absolute;
  font-family: Helvetica;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
}
@media (max-width: 768px) {
  .lp-faq .pattern3 li.faq-item {
    padding: 16px 16px 0;
  }
  .lp-faq .pattern3 li.faq-item.item-1 {
    margin-top: 16px;
  }

  .lp-faq .pattern3 ul .faq-item .faq-title {
    font-size: 15px;
    letter-spacing: 1.5px;
    padding: 0 30px 16px 40px;
  }
  .lp-faq .pattern3 ul .faq-item .faq-title:before {
    top: -4px;
    left: 10px;
  }
  .lp-faq .pattern3 .faq-content {
    font-size: 15px;
    letter-spacing: 1.5px;
    padding: 16px 0px 16px 40px;
  }
  .lp-faq .pattern3 .faq-content .text-content::before {
    left: -29px;
  }

}
.corporate-flow .mw-1400{
  max-width: 1400px;
}

.corporate-flow .mw-1200{
  max-width: 1200px;
}

.corporate-flow .mw-980{
  max-width: 980px;
}

.corporate-flow .mw-768{
  max-width: 768px;
}

.corporate-flow .mw-550{
  max-width: 550px;
}

.corporate-flow .content-left{
  margin-right: auto;
}

.corporate-flow .content-center{
  margin-right: auto;
  margin-left: auto;
}

.corporate-flow .content-right{
  margin-left: auto;
}

.corporate-flow .flow__container{
  margin-top: 70px;
}

@media ( max-width: 768px ) {
  .corporate-flow .flow__container{
    margin-top: 35px;
  }  
}

.corporate-flow .flow__container .flow__item{
  padding: 24px 120px;
  border-radius: 4px;
  background: #F8FBFF;
  box-shadow: 0px 4px 30px 8px rgba(90, 90, 90, 0.07);  
}

@media ( max-width: 680px ) {
  .corporate-flow .flow__container .flow__item{
    padding: 24px 20px;  
  }
}

.corporate-flow .flow__container .flow__item .flow__item__step{
  color: #00479D;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.1em;  
}

.corporate-flow .flow__container .flow__item h3{
  color: #141414;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
}

.corporate-flow .flow__container .flow__item .flow__item__flex{
  display: flex;
  align-items: center;
  gap: 30px;
  align-self: stretch;
  margin-top: 30px;
}

@media ( max-width: 550px ) {
  .corporate-flow .flow__container .flow__item .flow__item__flex{
    flex-direction: column;
  }
}

.corporate-flow .flow__container .flow__item .flow__item__flex .flow__item__flex__image{
  width: 200px;
  height: auto;
}

@media ( max-width: 550px ) {
  .corporate-flow .flow__container .flow__item .flow__item__flex .flow__item__flex__image{
    width: 100%;
    height: auto;
  }
}

.corporate-flow .flow__container .flow__item .flow__item__flex .flow__item__flex__image img{
  width: 100%;
  height: auto;  
}

.corporate-flow .flow__container .flow__item .flow__item__flex p{
  width: calc(100% - 200px - 30px);
}

@media ( max-width: 550px ) {
  .corporate-flow .flow__container .flow__item .flow__item__flex p{
    width: 100%;
  }  
}

.corporate-flow .flow__container .flow__caret{
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 8px 0;
  height: 30px;  
}
.catalog-cta{}

.catalog-cta .catalog-cta__inner{
  padding:90px 0;
}

@media ( max-width: 980px ){
  .catalog-cta .catalog-cta__inner{
    padding: 0;
  }
}

.catalog-cta .catalog-cta__content{
  max-width:1200px;
  margin: 0 auto;
  border-radius: 6px;
  display: flex;
  gap: 40px;  
  padding: 60px 50px 0;  
}

@media ( max-width: 1200px ){
  .catalog-cta .catalog-cta__content{
    padding:64px 20px 0;    
    border-radius: 0;
  }
}

@media ( max-width: 980px ){
  .catalog-cta .catalog-cta__content{
    padding: 60px 20px 0;
    flex-direction: column;
  }
}

.catalog-cta .catalog-cta__content .catalog-cta__content__text,
.catalog-cta .catalog-cta__content .catalog-cta__content__image{
  flex: 1 1 calc(50% - 40px);
    position:relative;  
}

@media ( max-width: 980px ){
  .catalog-cta .catalog-cta__content .catalog-cta__content__image{
    padding: 0 20px; 
  }
}

.catalog-cta .catalog-cta__content h2{
  font-size: 24px;
  letter-spacing: 0.1em;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin: 16px 0;
}

@media ( max-width: 1024px ){
  .catalog-cta .catalog-cta__content h2{
    margin: 8px 0;
  }
}

.catalog-cta .catalog-cta__content p{
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%; 
  letter-spacing: 0.1em;  
  margin-bottom: 40px;
}

@media ( max-width: 1024px ){
  .catalog-cta .catalog-cta__content p{
    margin-bottom: 24px;    
  }
}

.catalog-cta .catalog-cta__content .catalog-cta__content__image img{
  width: 100%;
  height: auto;  
}

.catalog-cta .catalog-cta__content .read-more{
  margin: 0;
}

@media ( max-width: 1024px ){
  .catalog-cta .catalog-cta__content .read-more{
    width: 100%;
  }
}
.service-list-v4 h2{
  color: #141414;
  margin-bottom: 60px;
  font-size: 34px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;  
}

@media ( max-width: 768px ) {
  .service-list-v4 h2{
    font-size: 24px;
    margin-bottom: 30px;
  }
}

.service-list-v4 .service-list-v4__inner.mw-1400{
  max-width: 1400px;
}

.service-list-v4 .service-list-v4__inner.mw-1200{
  max-width: 1200px;
}

.service-list-v4 .service-list-v4__inner.mw-980{
  max-width: 980px;
}

.service-list-v4 .service-list-v4__inner.mw-768{
  max-width: 768px;
}

.service-list-v4 .service-list-v4__inner.mw-550{
  max-width: 550px;
}

.service-list-v4 .service-list-v4__inner.content-left{
  margin-right: auto;
}

.service-list-v4 .service-list-v4__inner.content-center{
  margin-right: auto;
  margin-left: auto;
}

.service-list-v4 .service-list-v4__inner.content-right{
  margin-left: auto;
}

@media ( max-width: 1200px ) {
  .service-list-v4 .service-list-v4__inner{
    padding: 0 20px;
  }
}


.service--list--v4{
}

.service--list--v4 ul.type-1{
  display:flex;
  justify-content: center;
  align-items: stretch;
  align-content: flex-start;
  gap: 60px 12px;
  flex-wrap: wrap;  
  margin-top: 90px;  
}

.service--list--v4 ul.type-4{
  gap: 60px 16px;
  margin-top: 60px;
}

.service--list--v4 ul.type-1 .service--list--v4__inner__item{
  border-radius: 6px;
  background: #FBFBFB;
  box-shadow: 0px 0px 10px 0px rgba(247, 247, 247, 0.20);
  display: flex;
  padding: 40px 16px;
  flex-direction: column;
  gap: 24px;
  width: 291px;  
  position:relative;  
}

.service--list--v4 ul.type-4 .service--list--v4__inner__item{
  padding: 16px;
  gap: 16px;  
  width: 288px;   
}

.service--list--v4 ul.type-3 .service--list--v4__inner__item{
  background:#EAEAEA;
}

.service--list--v4 ul.type-4 .service--list--v4__inner__item{
  background:#FFF;
}

@media ( max-width: 640px ) {
  .service--list--v4 ul.type-1 .service--list--v4__inner__item{
    width: 100%;
  }
}

.service--list--v4 ul.type-1 .service--list--v4__inner__nomber{
  background-image: linear-gradient(180deg, #00479D 0%, #0085CE 98.96%);
  width: 60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFF;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
  outline: 1px solid #fff;
  outline-offset: -5px;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -30px);  
} 

.service--list--v4 ul.type-3 .service--list--v4__inner__nomber{
  background-image: unset;
  background-color: #00479D;
}

.service--list--v4 ul.type-1 .service--list--v4__inner__title{
  text-align: center;
  font-size: 22px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
  background-image: linear-gradient(180deg, #00479D 0%, #0085CE 98.96%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;  
  display:block;
  padding: 16px 0 24px;
  border-bottom: 3px solid #fff;  
}

.service--list--v4 ul.type-4 .service--list--v4__inner__title{
  border-bottom: 3px solid #EAEAEA;
}

.service--list--v4 ul.type-3 .service--list--v4__inner__title{
  color: #00479D;
  background-image:unset;
  background-clip: unset;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: unset;
  display: flex;
  align-items: center;
  justify-content: center;
}

.service--list--v4 ul.type-4 .service--list--v4__inner__title{
  color: #141414;
  font-size: 18px;
  padding: 0 0 16px;  
}

.service--list--v4 ul.type-3 .service--list--v4__inner__title:has(small){
  flex-direction: column;
}

.service--list--v4 ul.type-3 .service--list--v4__inner__title small{
  font-size: 82%;
}

.service--list--v4 ul.type-1 .service--list--v4__inner__item ul{
  margin-bottom: 24px;
}

.service--list--v4 ul.type-4 .service--list--v4__inner__item ul{
  margin-bottom: 0px;
}

.service--list--v4 ul.type-4 .service--list--v4__inner__item ul{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px;  
}

.service--list--v4 ul.type-1 .service--list--v4__inner__item ul li{
  position:relative;
  display:flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;  
  padding: 8px 0 8px 16px;
}

.service--list--v4 ul.type-3 .service--list--v4__inner__item ul li{
  font-size: 18px;
  font-weight: 500;
}

.service--list--v4 ul.type-4 .service--list--v4__inner__item ul li{
  font-size: 16px;
  padding: 0 0 0 16px;
}

.service--list--v4 ul.type-1 .service--list--v4__inner__item ul li:before{
  content:"";
  width: 8px;
  height: 8px;
  display:block;
  border-radius: 50%;
  aspect-ratio: 1/1;
  background:#00479D;
  position: absolute;
  top: 18px;  
  left: 0;
}

.service--list--v4 ul.type-4 .service--list--v4__inner__item ul li:before{
  top: 8px;  
}

.service--list--v4 ul.type-1 .service--list--v4__inner__item .service--list--v4__inner__listtitle{
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
  display: block;
  margin: 16px 0 8px;  
}

.service--list--v4 ul.type-1 .service--list--v4__inner__item .service--list--v4__inner__cta{
  gap: 20px;
  display: flex;
  justify-content: end;
  align-items: center;  
}

.service--list--v4 ul.type-1 .service--list--v4__inner__item .service--list--v4__inner__cta .service--list--v4__inner__cta__title{   
  color: #00479D;
  font-size: 14px;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0.1em;

}

.service--list--v4 ul.type-1 .service--list--v4__inner__item .service--list--v4__inner__cta .rotate_arrow{
  width: 28px;
  height: 28px;
  background: #fff;
  border-radius: 50%;
  border: solid #00479D 1px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.service--list--v4 ul.type-1 .service--list--v4__inner__item:hover .service--list--v4__inner__cta .rotate_arrow svg{
  animation: hoverArrow .3s ease;
}


@keyframes hoverArrow{
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(400%);
  }
  51% {
    transform: translateX(-400%);
  }
  100% {
    transform: translateX(0);
  }
} 

.service--list--v4__inner.type-2{
  display: flex;
  align-items: flex-start;
  align-content: flex-start;
  gap: 40px 24px;
  margin-top: 60px;
  flex-wrap: wrap;
}

@media ( max-width: 768px ){
  .service--list--v4__inner.type-2{
    margin-top: 30px;    
  }
}

.service--list--v4__inner.type-2 .service--list--v4__inner__item{
  display: flex;
  width: 384px;
  padding: 24px 24px 24px 0px;
  justify-content: flex-end;
  align-items: flex-start;
  align-content: flex-start;
  flex-shrink: 0;
  flex-wrap: wrap;
  position: relative;  
  background: #fff;
}

@media ( max-width: 1200px ) {
  .service--list--v4__inner.type-2 .service--list--v4__inner__item{
    width: 100%;
    flex: 1 1 calc(50% - 24px);
    justify-content: flex-start;
  }
}

@media ( max-width: 640px ) {
  .service--list--v4__inner.type-2 .service--list--v4__inner__item{
    width: 100%;
    flex: 1 1 100%;    
  }
}

.service--list--v4__inner.type-2 .service--list--v4__inner__item .service--list--v4__inner__item__top{
  display: flex;
  align-items: center;
  align-self: stretch;
}

.service--list--v4__inner.type-2 .service--list--v4__inner__item .service--list--v4__inner__item__top .service--list--v4__inner__item__top__image{
  max-width: 146px;
  width:100%;
  display: block;
  text-align: center;  
}

.service--list--v4__inner.type-2 .service--list--v4__inner__item .service--list--v4__inner__item__top .service--list--v4__inner__item__top__image--space{
  max-width: 126px;
  padding: 0 20px;
}

.service--list--v4__inner.type-2 .service--list--v4__inner__item .service--list--v4__inner__item__top .service--list--v4__inner__item__top__image img{
  width: 100%;
  height: auto;
}

.service--list--v4__inner.type-2 .service--list--v4__inner__item .service--list--v4__inner__item__top .service--list--v4__inner__item__top__title{
  color: #00479D;
  font-size: 21px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
}

.service--list--v4__inner.type-2 .service--list--v4__inner__item a{
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.service--list--v4__inner.type-2 .service--list--v4__inner__item .service--list--v4__inner__item__bottom{
  padding-left:24px;
}

.service--list--v4__inner.type-2 .service--list--v4__inner__item svg{
  transition: 300ms ease;
  width: fit-content;  
  margin-left: auto;
}

.service--list--v4__inner.type-2 .service--list--v4__inner__item:hover svg{
  transform: translateX(10px);
}

.service--list--v4__inner.type-5{
  gap: 24px;
}

@media ( max-width:768px ) {
  .service--list--v4__inner.type-5{
    flex-direction: column;
    gap: 16px;
  }  
}

.service--list--v4__inner.type-5 .service--list--v4__inner__item{
  width: calc(50% - 12px);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0px 4px 30px 8px rgba(90, 90, 90, 0.07);  
  padding: 24px 0;
}

@media ( max-width:768px ) {
  .service--list--v4__inner.type-5 .service--list--v4__inner__item{
    width: 100%;
    padding: 16px 0;
  }  
}

.service--list--v4__inner.type-5 .service--list--v4__inner__item .flex{
  padding: 0 24px 0 8px;
  gap: 16px;  
  align-items: center;
}

@media ( max-width:1100px ) {
  .service--list--v4__inner.type-5 .service--list--v4__inner__item .flex{
    flex-direction: column;
    padding: 16px;
  }
}

.service--list--v4__inner.type-5 .service--list--v4__inner__item .service--list--v4__inner__item__top__image{
  width: 100%;
  max-width: 167px;
}

.service--list--v4__inner.type-5 .service--list--v4__inner__item .service--list--v4__inner__item__top__image img{
  width: 100%;
  height: auto;
}

.service--list--v4__inner.type-5 .service--list--v4__inner__item .flex .service--list--v4__inner__item__right{
  width: 100%;
  padding-left: 0;
}

.service--list--v4__inner.type-5 .service--list--v4__inner__item .flex .service--list--v4__inner__item__right__title{
  color: #00479D;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  display: block;
  margin-bottom: 16px;
  letter-spacing: .1em;
}

@media ( max-width: 768px ){
  .service--list--v4__inner.type-5 .service--list--v4__inner__item .flex .service--list--v4__inner__item__right__title{
    text-align: center;
  }
}

.service--list--v4__inner.type-5 .service--list--v4__inner__item .flex .service--list--v4__inner__item__right__text{
  color: #202020;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%;
  letter-spacing: .1em;
}

.service--list--v4__inner.type-5 .service--list--v4__inner__item svg{
  padding-right: 24px;
}

@media ( max-width:1100px ) {

  .service--list--v4__inner.type-5 .service--list--v4__inner__item svg{
    padding-right: 16px;
  }   

}
.gb-service-list .service--list--v4 ul.type-1 {
  gap: 40px 12px;
  margin-top: 40px;
}

.gb-service-list .service--list--v4 ul.type-1 .service--list--v4__inner__item {
  padding: 20px 50px 12px;
  height: auto !important;
}

.gb-service-list .service--list--v4 ul.type-1 .service--list--v4__inner__nomber {
  transform: translate(-50%, -20px);
  width: 40px;
  height: 40px;
  font-size: 13px;
}

.gb-service-list .service--list--v4 ul.type-1 .service--list--v4__inner__title {
  border-bottom: 0;
  font-size: 16px;
  padding: 5px 0 10px;
}

.gb-service-list .service--list--v4 ul.type-1 .service--list--v4__inner__item .service--list--v4__inner__cta {
  top: calc(50% - 11px);
  position: absolute;
  right: 20px;
}

.gb-service-list .service--list--v4 ul.type-1 .service--list--v4__inner__item .service--list--v4__inner__cta .rotate_arrow {
  width: 25px;
  height: 25px;
  position: relative;
  top: 1px;
}
.logo-list h2{
  color: #141414;
  margin-bottom: 60px;
  font-size: 34px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;  
}

@media ( max-width: 768px ) {
  .logo-list h2{
    font-size: 24px;
    margin-bottom: 30px;
  }
}

.logo-list .logo-list__inner.mw-1400{
  max-width: 1400px;
}

.logo-list .logo-list__inner.mw-1200{
  max-width: 1200px;
}

.logo-list .logo-list__inner.mw-980{
  max-width: 980px;
}

.logo-list .logo-list__inner.mw-768{
  max-width: 768px;
}

.logo-list .logo-list__inner.mw-550{
  max-width: 550px;
}

.logo-list .logo-list__inner.content-left{
  margin-right: auto;
}

.logo-list .logo-list__inner.content-center{
  margin-right: auto;
  margin-left: auto;
}

.logo-list .logo-list__inner.content-right{
  margin-left: auto;
}

@media ( max-width: 1200px ) {
  .logo-list .logo-list__inner{
    padding: 0 20px;
  }
}

.logo-list__inner .logo-list__inner{
  display: flex;
  justify-content: center;
  align-items: flex-start;
  align-content: flex-start;
  gap: 24px 60px;
  flex-wrap: wrap;
}

@media ( max-width: 1024px ) {
  .logo-list__inner .logo-list__inner{
    gap: 24px 30px;
  }
}

@media ( max-width: 768px ) {
  .logo-list__inner .logo-list__inner{
    gap: 20px 20px;
    padding: 0;
  }
}

.logo-list__inner .logo-list__inner .logo-list__inner__item{
  display: flex;
  width: 250px;
  height: 122px;
  padding: 10px 30px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

@media ( max-width: 768px ) {
  .logo-list__inner .logo-list__inner .logo-list__inner__item{
    padding: 0;
    width: unset;
    flex: 1 1 calc(50% - 20px);
    max-width: 50%;
  }
}

.logo-list__inner .logo-list__inner .logo-list__inner__item img{
  width: 100%;
  height: auto;
}
.blog-list-3column {
  padding: 100px 0;
  background: #F8FBFF;
}

.blog-list-3column .wrapper {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

.blog-list-3column .wrapper header h2 {
  font-size: 2.125rem;
  line-height: 1.45;
}

.blog-list-3column .wrapper header p {
  margin-top: 70px;
  line-height: 2;
  color: var(--dark-gray);
}

.blog-list-3column .lists-wrapper {
  margin-top: 70px;
}

.blog-list-3column .lists-wrapper h2 {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 40px;
}

.blog-list-3column .lists-wrapper .posts {
  grid-column-gap: 48px;
  grid-row-gap: 48px;
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
}

.blog-list-3column .lists-wrapper .posts .post {
  box-shadow: 0px 4px 30px 8px rgb(90 90 90 / 7%);
  border-radius: 3px;
  background: var(--white);
}

.blog-list-3column .lists-wrapper .posts .post.noshadow {
  box-shadow: none;
}

.blog-list-3column .lists-wrapper .posts .post > a, .blog-list-3column .lists-wrapper .posts .post > div {
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: all 0.3s;
}

.blog-list-3column .lists-wrapper .posts .post > a:hover {
  background-color: #EEF2F8;
}

.blog-list-3column .lists-wrapper .posts .post .img img {
  width: 167px;
  height: 103px;
  border-radius: 3px;
}

.blog-list-3column .lists-wrapper .posts .post .img img {
  width: 100%;
  height: 210px;
  object-fit: cover;
  border-radius: 3px 3px 0 0;
  transition: transform 0.3s;
}

.blog-list-3column .lists-wrapper .posts .post .info {
  padding: 30px 20px;
}

.blog-list-3column .lists-wrapper .posts .post .info h3 {
  font-size: 18px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;
}

.blog-list-3column .lists-wrapper .posts .post .info .summary {
  font-size: 1.125rem;
  line-height: 1.45;
  margin-bottom: 20px;
}

.blog-list-3column .lists-wrapper .posts .post .info .date{
  color: #595959;
  font-size: 13px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;
  margin: 26px 0;
  display: block;
}

/* info categories */
.blog-list-3column .lists-wrapper .posts .post .info .categories {
  display: flex;
  gap: 0 10px;
  flex-wrap: wrap;
}

.blog-list-3column .lists-wrapper .posts .post .info .tags .tag {
  border-radius: 3px;
  background: #0085CE;
  display: flex;
  height: 24px;
  padding: 4px 12px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  text-align: center;
  font-size: 11px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;
  color: #fff;
}

.blog-list-3column .lists-wrapper .posts .post .info .keywords {
  display: contents;
}

.blog-list-3column .lists-wrapper .posts .post .info .keywords .keyword {
  color: #0085CE;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 200%;
  letter-spacing: 0.1em;
}


/* info readmore */
.blog-list-3column .lists-wrapper .posts .post .info .readmore {
  align-items: center;
  display: flex;
  width: 123px;
  justify-content: flex-end;
  margin-top: 25px;
  margin-left: auto;
  height: 40px;
  position: relative;
}

.blog-list-3column .lists-wrapper .posts .post .info .readmore .readmore-text {
  font-size: .875rem;
  line-height: 1.5;
  color: var(--blue);
  position: absolute;
  left: 0;
}

.blog-list-3column .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 100%;
  background: var(--white);
  border: 1px solid #1B4698;
  transition: width 0.3s, height 0.3s, background 0.3s;
}

.blog-list-3column .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner {
  width: 40px;
  height: 40px;
  background: var(--blue);
}

.blog-list-3column .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 1px;
}

.blog-list-3column .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 0px;
}

.blog-list-3column .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::before, .blog-list-3column .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::after {
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: width 0.32s, left 0.32s;
}

.blog-list-3column .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::before {
  background: #1B4698;
  height: 1px;
  width: 12px;
}

.blog-list-3column .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span::before {
  background: var(--white);
  top: 0.01px;
  width: 22px;
  left: -10px;
}

.blog-list-3column .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::after {
  left: 0px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #1B4698;
  border-right: 1px solid #1B4698;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.blog-list-3column .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span::after {
  border-top: 1px solid var(--white);
  border-right: 1px solid var(--white);
  left: 3px;
  width: 8px;
  height: 8px;
  top: -3.5px;
}

.blog-list-3column .wrapper .seeall-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 60px;
}

.blog-list-3column .wrapper .seeall-btn a.btn-with-arrow {
  background-color: var(--white);
  border: 1px solid var(--gray);
  border-radius: 5px;
  display: inline-block;
  outline: none;
  padding: 23px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 330px;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--black);
  transition: background-color 0.3s, color 0.3s;
}

.blog-list-3column .wrapper .seeall-btn a.btn-with-arrow:hover {
  color: var(--white);
  background-color: var(--blue);
  border: 1px solid var(--blue);
}

.blog-list-3column .wrapper .seeall-btn a.btn-with-arrow:before,
.blog-list-3column .wrapper .seeall-btn a.btn-with-arrow:after {
  content: "";
  position: absolute;
  transition: right 0.2s;
}

.blog-list-3column .wrapper .seeall-btn a.btn-with-arrow:before {
  background: #092241;
  height: 1px;
  width: 20px;
  right: 30px;
  top: 50%;
}

.blog-list-3column .wrapper .seeall-btn a.btn-with-arrow:after {
  border-right: 1px solid #092241;
  border-top: 1px solid #092241;
  height: 5px;
  right: 30px;
  top: calc(50% - 2px);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

.blog-list-3column .wrapper .seeall-btn a.btn-with-arrow:hover:before {
  background: var(--white);
  right: 25px;
}

.blog-list-3column .wrapper .seeall-btn a.btn-with-arrow:hover:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  right: 25px;
}

.blog-list-3column ul.tags {
  display: flex;
  gap: 5px;
}

@media screen and (max-width: 1024px) {
  .blog-list-3column {
    padding: 60px 0;
  }

  .blog-list-3column .wrapper header h2 {
    font-size: 1.625rem;
  }

  .blog-list-3column .lists-wrapper .posts {
    grid-row-gap: 40px;
  }

  .blog-list-3column .lists-wrapper .posts .post .info {
    padding: 20px;
  }

  .blog-list-3column .lists-wrapper .posts .post .info .summary {
    margin-bottom: 20px;
  }

  .blog-list-3column .lists-wrapper .posts .post .info .readmore {
    margin-top: 20px;
  }

  .blog-list-3column .wrapper .seeall-btn {
    margin-top: 40px;
  }

  .blog-list-3column .wrapper .seeall-btn a.btn-with-arrow {
    width: 335px;
  }
}
.finance_2column h2{
  color: #141414;
  margin-bottom: 60px;
  font-size: 34px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;  
}

@media ( max-width: 768px ) {
  .finance_2column h2{
    font-size: 24px;
    margin-bottom: 40px;
  }
}

.finance_2column .finance_2column__inner.mw-1400{
  max-width: 1400px;
}

.finance_2column .finance_2column__inner.mw-1200{
  max-width: 1200px;
}

.finance_2column .finance_2column__inner.mw-980{
  max-width: 980px;
}

.finance_2column .finance_2column__inner.mw-768{
  max-width: 768px;
}

.finance_2column .finance_2column__inner.mw-550{
  max-width: 550px;
}

.finance_2column .finance_2column__inner.content-left{
  margin-right: auto;
}

.finance_2column .finance_2column__inner.content-center{
  margin-right: auto;
  margin-left: auto;
}

.finance_2column .finance_2column__inner.content-right{
  margin-left: auto;
}

.finance_2column__section .inner{
    border-radius: 4px;
    background: #fff;
}

@media (max-width: 820px) {
    .finance_2column__section .inner{
        padding: 0!important;
        background: transparent;
    }
}

.finance_2column__section .inner .flex{
    align-items: center;
}

@media (max-width: 820px) {
    .finance_2column__section .inner .flex{
        flex-direction: column-reverse;
        gap: 0px!important;
    }
}

.finance_2column__section .inner .flex h3{
  font-family: "Noto Sans JP";
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
  margin-bottom: 16px;
}

@media (max-width: 820px) {
  .finance_2column__section .inner .flex h3{
    font-size: 18px;
    margin-bottom: 8px;    
  }
}

.finance_2column__section .inner .flex p{
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 0.1em;  
}

.finance_2column__section .inner .flex .flex__item:first-child{
    width: 100%;
}

@media (max-width: 820px) {
    .finance_2column__section .inner .flex .flex__item:first-child{
        max-width: 100%;
        background: #fff;
        padding: 20px;
    }
}


.finance_2column__section .inner .flex .flex__item a{
    position: relative;
    display: flex;
    width: fit-content;
    margin: 0 0 0 auto;
    color: #00479D;    
    align-items: center;
    gap: 20px;
    margin-top: 26px;
}

.finance_2column__section .inner .flex .flex__item a i{
    align-items: center;
    display: flex;
    height: 28px;
    justify-content: center;
    width: 28px;
    background: rgb(255, 255, 255);
    border-width: 1px;
    border-style: solid;
    border-color: rgb(0, 71, 157);
    border-image: initial;
    border-radius: 50%;
    overflow: hidden;
    position: relative;
}

.finance_2column__section .inner .flex .flex__item a i svg{
    display: block;
    height: 40px;
    padding-top: 10px;
    margin: 0px auto;
    height: unset;
    position: absolute;
    padding: 0px;
    transition: 0.3s;
}

.finance_2column__section .inner .flex .flex__item a:hover i svg{
    animation: 0.3s ease 0s 1 normal none running hoverArrow;
}

@animation hoverArrow {
    0% {
        transform: translateX(0px);
    }
    50% {
        transform: translateX(400%);
    }
    51% {
        transform: translateX(-400%);
    }
    100% {
        transform: translateX(0px);
    }
}


.finance_2column__section .inner .flex .flex__item:last-child{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 476px;
}


@media ( max-width: 680px ) {
  .finance_2column .finance_2column__inner{
    padding: 0 20px;
  }
  .finance_2column__section .inner .flex .flex__item:last-child{
    width: 100%;
  }
  .finance_2column__section .inner .flex .flex__item:last-child img{
    width: 100%;
    height: auto;
  }
}
.corporate-three-column h2{
  color: #141414;
  margin-bottom: 60px;
  font-size: 34px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;  
}

@media ( max-width: 768px ) {
  .corporate-three-column h2{
    font-size: 24px;
    margin-bottom: 40px;
  }
}

.corporate-three-column .corporate-three-column__inner.mw-1400{
  max-width: 1400px;
}

.corporate-three-column .corporate-three-column__inner.mw-1200{
  max-width: 1200px;
}

.corporate-three-column .corporate-three-column__inner.mw-980{
  max-width: 980px;
}

.corporate-three-column .corporate-three-column__inner.mw-768{
  max-width: 768px;
}

.corporate-three-column .corporate-three-column__inner.mw-550{
  max-width: 550px;
}

.corporate-three-column .corporate-three-column__inner.content-left{
  margin-right: auto;
}

.corporate-three-column .corporate-three-column__inner.content-center{
  margin-right: auto;
  margin-left: auto;
}

.corporate-three-column .corporate-three-column__inner.content-right{
  margin-left: auto;
}

@media ( max-width: 1200px ) {
  .corporate-three-column .corporate-three-column__inner{
    padding: 0 20px;
  }
}

.ttlbt-content-text{
  color: #404040;
  text-align: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 0.1em;	
  margin-bottom: 60px;
}
@media ( max-width: 680px ) {
  .ttlbt-content-text{
    text-align:left;
    margin-bottom: 40px;
  }
}

.corporate-three-column__contents{
  display: flex;
  align-items: center;
  gap: 25px;
  align-self: stretch;
}

@media ( max-width: 820px ) {
  .corporate-three-column__contents{
    flex-direction: column;
  }
}

.corporate-three-column__contents .corporate-three-column__contents__item{
  flex: 1 1 calc(100% - 25px*2);
  position: relative;
  padding: 60px 30px 30px;
  box-shadow: 5px 5px 0px 0px rgba(20, 66, 209, 0.10);  
  background: #fff;  
}

@media ( max-width: 820px ) {
  .corporate-three-column__contents .corporate-three-column__contents__item{  
    padding: 60px 30px 60px;
  }
}


.corporate-three-column__contents .corporate-three-column__contents__item .no{
  background: #67aadb;
  clip-path: polygon(0 0, 0 100%, 100% 0);
  color: #fff;
  font-family: Montserrat;
  font-size: 22px;
  font-style: normal;
  font-weight: 600;
  height: 76px;
  left: 0;
  letter-spacing: .05em;
  line-height: 100%;
  mask-repeat: no-repeat;
  mask-size: contain;
  padding: 12px 0 0 12px;
  position: absolute;
  top: 0;
  width: 92px;
}

.corporate-three-column__contents .corporate-three-column__contents__item .title{
  text-align: center;
  text-align: center;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: .1em;  
  margin-bottom: 15px;
}

.corporate-three-column__contents .corporate-three-column__contents__item .text{
  font-size: 16px;
  font-weight: 400;
  line-height: 160%;
  letter-spacing: .1em;
}

.corporate-three-column__contents__second{
  margin-top: 90px;  
}

@media ( max-width: 1200px ){
  .corporate-three-column__contents__second{
    flex-wrap: wrap;
    gap: 64px;    
    margin-top: 70px;      
  }
}

.corporate-three-column__contents__second .as{
  align-items: center;
  background: #00479d;
  border-radius: 50%;
  color: #fff;
  display: flex;
  flex-direction: column;
  height: 60px;
  justify-content: center;
  left: 50%;
  outline: 1px solid #fff;
  outline-offset: -5px;
  position: absolute;
  top: -30px;
  transform: translate(-50%);
  width: 60px;
  gap: 3px;  
}

.corporate-three-column__contents__second .as small{
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .1em;
  letter-spacing: 0;
  line-height: 100%;  
}

.corporate-three-column__contents__second .as strong{
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1.1;
}

@media ( max-width: 820px ) {
  .corporate-three-column__contents__second .corporate-three-column__contents__item{
    padding: 60px 30px 30px;
  }
}
  
.corporate-three-column__contents__second .corporate-three-column__contents__item .title{
  color: #404040;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%;
  letter-spacing: 0.1em;
  text-align: left;
  margin-bottom: 0;
}

@media ( max-width: 1200px ){
  .corporate-three-column__contents__second .corporate-three-column__contents__item .title{
    text-align: center;
  }
}

.corporate-three-column__contents__second .corporate-three-column__contents__item .text h4{
  color: #141414;
  text-align: center;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 160%;
  margin-bottom: 8px;
  letter-spacing: 0.1em;
}
.corporate-three-column__contents__second .corporate-three-column__contents__item .text p{
  color: #404040;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%;
  letter-spacing: 0.1em;
}

.corporate-three-column__contents__second .corporate-three-column__contents__item .border{
  margin: 16px 0 12px;
}


@media ( max-width: 1200px ){
  .corporate-three-column__contents__second .corporate-three-column__contents__item{
    flex:unset;
    width: 100%;
  }
  
  .corporate-three-column__contents__second .corporate-three-column__contents__item .border{
    margin: 16px auto 12px;
    width: fit-content;
  }
  
}

@media ( max-width: 600px ){
  .corporate-three-column__contents__second .corporate-three-column__contents__item .border{
    width: unset;
  }
  
  .corporate-three-column__contents__second .corporate-three-column__contents__item .border img{
    width: 100%;
    height: auto;
  }
}

.corporate-three-column__contents--hasLink .corporate-three-column__contents__item span.readmore-btn-inner{
    align-items: center;
    border: 1px solid #1b4698;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    transition: width .3s, height .3s, background .3s;  
    background: var(--white);
    height: 28px;
    width: 28px;  
    margin-top: 15px;
    margin-left: auto;  
}

.corporate-three-column__contents--hasLink .corporate-three-column__contents__item:hover span.readmore-btn-inner{
    background: var(--blue);
    height: 40px;
    width: 40px;  
}

.corporate-three-column__contents--hasLink span.readmore-btn-inner span{
  align-items: center;
  display: flex;
  justify-content: center;
  position: relative;
  top: 0;
}

.corporate-three-column__contents--hasLink span.readmore-btn-inner span:before,
.corporate-three-column__contents--hasLink span.readmore-btn-inner span:after{
  content: "";
  margin: auto;
  position: absolute;
  transition: width .32s, left .32s;
  vertical-align: middle;
}


.corporate-three-column__contents--hasLink span.readmore-btn-inner span:before{
    background: var(--blue);
    left: -5px;
    top: 0px;
    height: 1px;  
    width: 12px;
}

.corporate-three-column__contents--hasLink .corporate-three-column__contents__item:hover span.readmore-btn-inner span:before{
  background: var(--white);
  width: 22px;  
  left: -10px;  
}

@media ( max-width: 819px ){
  .corporate-three-column__contents--hasLink .corporate-three-column__contents__item{
        padding: 60px 30px 30px;
  }
}

.corporate-three-column__contents--hasLink span.readmore-btn-inner span:after{
border-right: 1px solid #1b4698;
    border-top: 1px solid #1b4698;
    height: 5px;
    left: 2px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 5px;
    top: -1.99px;
}

.corporate-three-column__contents--hasLink .corporate-three-column__contents__item:hover span.readmore-btn-inner span:after{
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  height: 8px;
  width: 8px;
  height: 8px;
  top: -3.5px;
  left: 4px;  
}
.corporate-flow h2{
  color: #141414;
  margin-bottom: 60px;
  font-size: 34px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;  
}

@media ( max-width: 768px ) {
  .corporate-flow h2{
    font-size: 24px;
    margin-bottom: 40px;
  }
}

.corporate-flow__inner__title__bottom{
  color: #404040;
  text-align: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 0.1em;	
}
@media ( max-width: 768px ) {
  .corporate-flow__inner__title__bottom{
    text-align:left;  
  }
}

.corporate-flow .corporate-flow__inner.mw-1400{
  max-width: 1400px;
}

.corporate-flow .corporate-flow__inner.mw-1200{
  max-width: 1200px;
}

.corporate-flow .corporate-flow__inner.mw-980{
  max-width: 980px;
}

.corporate-flow .corporate-flow__inner.mw-768{
  max-width: 768px;
}

.corporate-flow .corporate-flow__inner.mw-550{
  max-width: 550px;
}

.corporate-flow .corporate-flow__inner.content-left{
  margin-right: auto;
}

.corporate-flow .corporate-flow__inner.content-center{
  margin-right: auto;
  margin-left: auto;
}

.corporate-flow .corporate-flow__inner.content-right{
  margin-left: auto;
}

@media ( max-width: 1200px ) {
  .corporate-flow .corporate-flow__inner{
    padding: 0 20px;
  }
}

.corporate-flow .corporate-flow__inner__flow_contents br.tab_br{
  display:none;
}

@media ( max-width: 1200px ) {
  .corporate-flow .corporate-flow__inner__flow_tab br.tab_br{
    display:none;
  }
}

.corporate-flow .corporate-flow__inner__flow_tab{
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 60px 0;
}

@media ( max-width: 1200px ){
  .corporate-flow .corporate-flow__inner__flow_tab{
    flex-direction: column;
    gap: 20px;
  }
}

@media ( max-width: 768px ){
  margin: 40px 0;  
}

.corporate-flow .corporate-flow__inner__flow_tab__item{
  height: 60px;
  width: calc(1200px / 6);
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 16px;
  position:relative;
}

@media ( max-width: 1200px ){
  .corporate-flow .corporate-flow__inner__flow_tab__item{
    height: auto;
    min-height: 60px;
    padding: 20px 0 0!important;
    position: relative;
    width: 100%;
    justify-content: center;    
    text-align: center;
  }
}

.corporate-flow .corporate-flow__inner__flow_tab__item:after{
  content: "";
  width: 25px;
  height: 60px;
  display: block;
  position: absolute;
  right: -25px;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  z-index: 2;  
}
@media ( max-width: 1200px ){  
  .corporate-flow .corporate-flow__inner__flow_tab__item:after{
    content: "";
    height: auto;
    min-height: 30px;
    position: absolute;
    right: unset;
    width: 100%;
    left: 0;
    bottom: -30px;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
  }
}
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(1),
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(1):after,
.corporate-flow .corporate-flow__inner__flow_contents__item:nth-child(1):after{
  background: #00479D;
}
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(2),
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(2):after,
.corporate-flow .corporate-flow__inner__flow_contents__item:nth-child(2):after{
  background: #1A59A7;
}
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(3),
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(3):after,
.corporate-flow .corporate-flow__inner__flow_contents__item:nth-child(3):after{
  background: #0085CE;
}
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(4),
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(4):after,
.corporate-flow .corporate-flow__inner__flow_contents__item:nth-child(4):after{
  background: #1A91D3;
}
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(5),
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(5):after,
.corporate-flow .corporate-flow__inner__flow_contents__item:nth-child(5):after{
  background: #4DAADD;
}
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(6),
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(6):after,
.corporate-flow .corporate-flow__inner__flow_contents__item:nth-child(6):after{
  background: #67AADB;
}

.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(6):after{
  content: unset;
}

@media ( max-width: 1200px ){  
  .corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(6):after{
    content: "";
  }
}

.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(2),
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(3),
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(4),
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(5),
.corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(6){
  padding: 0 0 0 33px;
}

@media ( max-width: 1200px ){
  .corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(2),
  .corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(3),
  .corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(4),
  .corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(5),
  .corporate-flow .corporate-flow__inner__flow_tab__item:nth-child(6){
    padding: 50px 0 0 0 !important;
    margin-top: -20px;
  }
}

.corporate-flow .corporate-flow__inner__flow_tab__item span{
  color: #FFF;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
}

.corporate-flow .corporate-flow__inner__flow_tab__item strong{
  color: #FFF;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;  
}

.corporate-flow__inner__flow_contents{
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;  
}

.corporate-flow__inner__flow_contents--three-column{
  max-width: unset;
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item{
  background: #fff;
  padding: 50px 20px;
  display: flex;
  align-items: center;  
  gap: 100px;
  position:relative;
}

@media ( max-width: 620px ){
  .corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item{
    flex-direction: column;
    gap: 0;
    padding: 32px 20px;
  }
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item:after{
  content: "";
  width: 40px;
  height: 20px;
  display: block;
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
  clip-path: polygon(50% 100%, 0 0, 100% 0);  
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item:last-child:after{
  content: unset;
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__left{
  display:flex;
  align-items: center;
  gap: 30px;
}

@media ( max-width: 620px ){
  .corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__left{
    padding-bottom: 16px;
    margin-bottom: 16px;
  }
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__left .corporate-flow__inner__flow_contents__item__left__icons{
  align-items: center;
  background: #0085CE;
  border-radius: 50%;
  color: #fff;
  display: flex;
  flex-direction: column;
  height: 60px;
  justify-content: center;
  outline: 1px solid #fff;
  outline-offset: -5px;
  width: 60px;  
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__left .corporate-flow__inner__flow_contents__item__left__icons span{
  color: #fff;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 100%;  
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__left .corporate-flow__inner__flow_contents__item__left__icons strong{
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1.1;
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__right{
  width: 710px;
  position: relative;
}

@media ( max-width: 768px ){
  .corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__right{
    width: 100%;
  }
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__right:before{
  background: #0085ce;
  content: "";
  height: 100%;
  width: 1px;
  position: absolute;
  left: -50px;
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__right h3{
  color: #00479D;
  font-size: 22px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;  
  margin-bottom: 16px;
}

@media ( max-width: 620px ){
  .corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__right h3{
    text-align: center;
  }
}

.corporate-flow__inner__flow_contents .corporate-flow__inner__flow_contents__item .corporate-flow__inner__flow_contents__item__right p{
  color: #404040;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: .1em;  
}

.corporate-flow__inner__flow_contents.corporate-flow__inner__flow_contents--three-column{
  gap: 16px;
  margin-top: 40px;
}

.corporate-flow__inner__flow_contents.corporate-flow__inner__flow_contents--three-column h3{
  text-align: center;
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;  
  margin-bottom: 60px;
}

@media ( max-width: 820px ){
  .corporate-flow__inner__flow_contents.corporate-flow__inner__flow_contents--three-column h3{
    margin-bottom: 40px;    
    font-size: 22px;    
  }
}

.corporate-flow__inner__flow_contents--three-column__contents{
  display: flex;
  gap: 12px;
}

@media ( max-width: 768px ){
  .corporate-flow__inner__flow_contents--three-column__contents{
    flex-wrap:wrap;
  }  
}

.corporate-flow__inner__flow_contents--three-column__contents .corporate-flow__inner__flow_contents--three-column__contents__item{
  flex: 1 1 calc(33% - 12px * 2);
  display: flex;
  flex-direction: column;
  gap: 16px;
  background: #eaeaea;
}

@media ( max-width: 768px ){
  .corporate-flow__inner__flow_contents--three-column__contents .corporate-flow__inner__flow_contents--three-column__contents__item{
    flex: 1 1 100%;
  }
}

.corporate-flow__inner__flow_contents--three-column__contents .corporate-flow__inner__flow_contents--three-column__contents__item .corporate-flow__inner__flow_contents--three-column__contents__item__content{
  border-radius: 6px;
  background: #EAEAEA;
  box-shadow: 0px 0px 10px 0px rgba(247, 247, 247, 0.20);
  display: flex;
  padding: 24px 16px;
  flex-direction: column;
  gap: 24px;
  align-self: stretch;  
}

.corporate-flow__inner__flow_contents--three-column__contents .corporate-flow__inner__flow_contents--three-column__contents__item .corporate-flow__inner__flow_contents--three-column__contents__item__content__title{
  color: #00479D;
  text-align: center;
  font-size: 22px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
  border-bottom: solid #fff 3px;
  padding-bottom: 24px;  
}

.corporate-flow__inner__flow_contents--three-column__contents .corporate-flow__inner__flow_contents--three-column__contents__item .corporate-flow__inner__flow_contents--three-column__contents__item__content ul li{
  position: relative;
  font-size: 18px;
  color: #404040;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.1em;
  padding: 8px 0px 8px 16px;  
}

.corporate-flow__inner__flow_contents--three-column__contents .corporate-flow__inner__flow_contents--three-column__contents__item .corporate-flow__inner__flow_contents--three-column__contents__item__content ul li:before{
  aspect-ratio: 1 / 1;
  background: #00479d;
  border-radius: 50%;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 20px;
  width: 8px;
}

.corporate-flow__inner__flow_contents--three-column__contents__item__tab{
  display: flex;
  gap: 12px;
}

@media ( max-width: 768px ){
  .corporate-flow__inner__flow_contents--three-column__contents__item__tab{
    flex-direction: column;
    gap: 0px;
  }
}

.corporate-flow__inner__flow_contents--three-column__contents__item__tab__title{
  flex: 1 1 calc(33% - 12px*2);  
  color: #FFF;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;  
  text-align: center;
  padding: 20px 0;  
  position: relative;
}

@media ( max-width: 768px ){
  .corporate-flow__inner__flow_contents--three-column__contents__item__tab__title{
    padding: 0;  
    min-height: 60px;
    display:flex;
    align-items: center;
    justify-content: center;
  }
}

.corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(1){
  background: #00479D;
}

.corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(1):before{
  clip-path: polygon(100% 50%, 0 0, 0 100%);
  content: "";
  height: 65px;
  right: -27.5px;
  display: block;
  position: absolute;
  width: 28px;
  background: #00479D;
  top: 50%;
  transform: translate(0px, -50%);
  z-index:3;
}

@media ( max-width: 768px ){
  .corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(1):before{
    content: unset;
  }
}

.corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(2){
  background: #1A59A7;  
}

.corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(2):after{
  background: #fff;
  clip-path: polygon(100% 50%, 0 0, 0 100%);
  content: "";
  display: block;
  z-index: 2;
  position: absolute;
  height: 65px;
  width: 27px;
  top: 50%;
  transform: translate(0px, -50%);
  left: -1px;
}

.corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(2):before{
  background: #1a59a7;
  clip-path: polygon(100% 50%, 0 0, 0 100%);
  content: "";
  display: block;
  height: 65px;
  mask-position: center;
  mask-size: cover;
  position: absolute;
  right: -27.5px;
  top: 50%;
  transform: translateY(-50%);
  width: 28px;
  z-index: 2;  
}

@media ( max-width: 768px ){
  .corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(2):after{
    content: unset;
  }
  .corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(2):before{
    content: unset;  
  }
}

.corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(3) {
  background: #0085CE;
  mask-size: cover;
  mask-position: left;      
}

.corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(3):after{
  background: #fff;
  clip-path: polygon(100% 50%, 0 0, 0 100%);
  content: "";
  display: block;
  z-index: 1;
  position: absolute;
  height: 65px;
  width: 27px;
  top: 50%;
  left: -1px;
  transform: translate(0px, -50%);  
}

@media ( max-width: 768px ){
  .corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(3):after{
    content: unset;
  }
}

.corporate-flow__inner__flow_contents--three-column .three-column__mobile{
  display: contents;
}

@media ( max-width: 768px ){
  .corporate-flow__inner__flow_contents--three-column .three-column__mobile{
    display: grid;
  }
}

@media ( max-width: 768px ){
  .corporate-flow__inner__flow_contents--three-column .three-column__mobile .corporate-flow__inner__flow_contents--three-column__contents__item__tab,
  .corporate-flow__inner__flow_contents--three-column .corporate-flow__inner__flow_contents--three-column__contents {
    display: contents;
  }
  
  .corporate-flow__inner__flow_contents--three-column__contents__item{
    position: relative;
  }
  
  .corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:first-child{
    order: 1;
  }
  
  .corporate-flow__inner__flow_contents--three-column__contents__item:first-child{
    order: 2;
    margin-bottom: 30px;
  }
    
  .corporate-flow__inner__flow_contents--three-column__contents__item:first-child:before{
    background: #00479D;
    bottom: -25px;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    content: "";
    display: block;
    height: 20px;
    position: absolute;
    right: 50%;
    transform: translate(50%, 0px);
    width: 40px;
  }  
  
  .corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(2){
    order: 3;
  }
  
  .corporate-flow__inner__flow_contents--three-column__contents__item:nth-child(2){
    order: 4;
    margin-bottom: 30px;
  }  
  
  .corporate-flow__inner__flow_contents--three-column__contents__item:nth-child(2):before{
    background: #1A59A7;
    bottom: -25px;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    content: "";
    display: block;
    height: 20px;
    position: absolute;
    right: 50%;
    transform: translate(50%, 0px);
    width: 40px;  
  }
  
  .corporate-flow__inner__flow_contents--three-column__contents__item__tab__title:nth-child(3){
    order: 5;
  }
  
  .corporate-flow__inner__flow_contents--three-column__contents__item:nth-child(3){
    order: 6;
  }  
  
}
@media ( max-width: 920px ){
  section.column-cta {
    padding-top:0!important;
    padding-bottom:0!important;    
  }
}

.column-cta h2{
  color: #141414;
  margin-bottom: 60px;
  font-size: 34px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;  
}

@media ( max-width: 768px ) {
  .column-cta h2{
    font-size: 24px;
    margin-bottom: 40px;
  }
}

.column-cta .column-cta__inner.mw-1400{
  max-width: 1400px;
}

.column-cta .column-cta__inner.mw-1200{
  max-width: 1200px;
}

.column-cta .column-cta__inner.mw-980{
  max-width: 980px;
}

.column-cta .column-cta__inner.mw-768{
  max-width: 768px;
}

.column-cta .column-cta__inner.mw-550{
  max-width: 550px;
}

.column-cta .column-cta__inner.content-left{
  margin-right: auto;
}

.column-cta .column-cta__inner.content-center{
  margin-right: auto;
  margin-left: auto;
}

.column-cta .column-cta__inner.content-right{
  margin-left: auto;
}


@media ( max-width: 680px ) {
  .column-cta .column-cta__inner{
    padding: 0 20px;
  }
}
.column-cta-text{
  color: #404040;
  text-align: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 200%;
  letter-spacing: 0.1em;	
}
@media ( max-width: 680px ) {
  .column-cta-text{
    text-align:left;
  }
}
.column-cta-section h2{
  color: #141414;
  margin-bottom: 60px;
  font-size: 34px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.1em;
}  
@media ( max-width: 768px ) {
  .column-cta-section h2{
    font-size: 24px;
    margin-bottom: 30px;
  }
}
.column-cta-section p {
    color: #404040;
    font-size: 16px;
    font-weight: 400;
    line-height: 200%;
    letter-spacing: 0.1em;
}

.column-cta .column-cta__inner{
  background: #0085CE;
  padding: 50px;
}

@media ( max-width: 920px ){
  .column-cta .column-cta__inner{
    padding: 60px 50px;
  }  
}

@media ( max-width: 768px ){
  .column-cta .column-cta__inner{
    padding: 60px 20px;
  }  
}

.column-cta .column-cta__inner .column-cta-box{
  display: flex;
  align-items: stretch;
}

@media ( max-width: 920px ){
  .column-cta .column-cta__inner .column-cta-box{
    flex-direction: column;
  }
}

.column-cta .column-cta__inner article{
  flex: 1 1 calc(33%);
  padding: 32px 28px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  position: relative;
}

.column-cta .column-cta__inner article:nth-child(2):before,
.column-cta .column-cta__inner article:nth-child(2):after{
  content: "";
}

.column-cta .column-cta__inner article:nth-child(2):before{
  left: 0;
  position: absolute;
  background: #0085CE;
  width: 1px;
  height: calc(100% - 32px * 2);
  top: 50%;
  transform: translate(0px, -50%);
}

@media ( max-width: 920px ){
  .column-cta .column-cta__inner article:nth-child(2):before{
    height: 1px;
    left: 50%;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    width: calc(100% - 28px * 2);    
  }
}

.column-cta .column-cta__inner article:nth-child(2):after{
  position: absolute;
  right: 0;
  background: #0085CE;
  width: 1px;
  height: calc(100% - 32px * 2);
  top: 50%;
  transform: translate(0px, -50%);  
}

@media ( max-width: 920px ){
  .column-cta .column-cta__inner article:nth-child(2):after{
    height: 1px;
    left: 50%;
    position: absolute;
    bottom: 0;
    top:unset;
    transform: translateX(-50%);
    width: calc(100% - 28px * 2);    
  }
}

.column-cta .column-cta__inner article .column-cta__title{
  color: #00479D;
  text-align: center;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: .1em;
}

.column-cta .column-cta__inner article picture{
  max-width: 170px;
  width: 100%;
  display: flex;
  align-items: center;  
}

.column-cta .column-cta__inner article picture img{
  width:100%;
  height: auto;
}

.column-cta .column-cta__inner article a{
  margin-top: 0;
  border-radius: 5px;
  border: #00479D;
  background: #00479D;
  color: #fff;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: .1em;
  padding: 15px 0;
  width: 100%;
}

.column-cta .column-cta__inner article a:before{
  background: #fff;
}

.column-cta .column-cta__inner article a:after{
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
}

@media ( max-width: 768px ){
  .column-cta .column-cta__inner article a:before,
  .column-cta .column-cta__inner article a:after{
    right: 15px;
  }
  .column-cta .column-cta__inner article a:hover:before,
  .column-cta .column-cta__inner article a:hover:after{
    right: 10px;
  }
}
.case-list-v2 .case-list{
  padding: 90px 0;
/*   background: linear-gradient(90deg, transparent 0%, transparent 50%, #F8FBFF 50%, #F8FBFF); 中村真衣さん依頼のため背景色統一を単色に */
  background: #f8fbff;
}

@media (max-width: 768px) {
.case-list-v2 .case-list{
    padding: 60px 0;
  }
}

.case-list .wrapper {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

.case-list .wrapper header h2 {
  font-size: 2.125rem;
  line-height: 1.45;
}

.case-list .wrapper header p {
  margin-top: 70px;
  line-height: 2;
  color: var(--dark-gray);
}

.case-list .lists-wrapper {
  margin-top: 70px;
}

.case-list .lists-wrapper h2 {
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 40px;
}

.case-list-v2 .case-list .lists-wrapper .posts.column1 {
  grid-template-columns: 1fr;
}

.case-list-v2 .case-list .lists-wrapper .posts.column2 {
  grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 768px) {
  .case-list-v2 .case-list .lists-wrapper .posts.column2 {
    grid-template-columns: 1fr;
  }  
}

.case-list-v2 .case-list .lists-wrapper .posts.column3 {
  grid-column-gap: 40px;
  grid-row-gap: 50px;
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(300px,1fr));
}

@media (max-width: 768px) {
  .case-list-v2 .case-list .lists-wrapper .posts.column3 {

  }  
}

.case-list .lists-wrapper .posts .post {
  box-shadow: 0px 4px 30px 8px rgb(90 90 90 / 7%);
  border-radius: 3px;
  background: var(--white);
}

.case-list .lists-wrapper .posts .post.noshadow {
  box-shadow: none;
}

.case-list .lists-wrapper .posts .post > a, .case-list .lists-wrapper .posts .post > div {
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: all 0.3s;
}

.case-list .lists-wrapper .posts.column1 .post > a, .case-list .lists-wrapper .posts.column1 .post > div {
  flex-direction: row;
  min-height: 210px;
}

@media ( max-width: 600px ){
  .case-list .lists-wrapper .posts.column1 .post > a, .case-list .lists-wrapper .posts.column1 .post > div {
    padding: 20px 10px;
    gap: 16px;    
    min-height: unset;
  }  
}

.case-list .lists-wrapper .posts.column1 .post > a .info, .case-list .lists-wrapper .posts.column1 .post > div .info {
  width: 70%;
  padding: 0 40px;
  display: flex;
  align-items: center;
}

@media ( max-width: 600px ){
  .case-list .lists-wrapper .posts.column1 .post > a .info, .case-list .lists-wrapper .posts.column1 .post > div .info {
   width: calc(100% - 85px - 16px);
    padding: 0;
  }
}

.case-list .lists-wrapper .posts.column1 .post > a .info .info__inner, .case-list .lists-wrapper .posts.column1 .post > div .info .info__inner {
  width: 100%;
}

.case-list .lists-wrapper .posts.column1 .post > a .img, .case-list .lists-wrapper .posts.column1 .post > div .img {
  width: 30%;
  padding: 20px 36px;
  background: rgba(230, 240, 253, 0.90);  
  max-height: 210px;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media ( max-width: 600px ){
  .case-list .lists-wrapper .posts.column1 .post > a .img, .case-list .lists-wrapper .posts.column1 .post > div .img {
    width: 85px;
    padding: 0;
    background: unset;
    display: unset;    
  }
}

.case-list .lists-wrapper .posts.column1 .post > a .img img, .case-list .lists-wrapper .posts.column1 .post > div .img img{
  height: unset;
}

.case-list .lists-wrapper .posts .post > a:hover {
  background-color: #EEF2F8;
}

.case-list .lists-wrapper .posts .post .img img {
  width: 167px;
  height: 103px;
  border-radius: 3px;
}

.case-list .lists-wrapper .posts .post .img img {
  width: 100%;
  height: 210px;
  object-fit: cover;
  border-radius: 3px 3px 0 0;
  transition: transform 0.3s;
}

.case-list .lists-wrapper .posts.column2 .post .img img{
  height: 300px;
}

@media (max-width: 768px) {
  .case-list .lists-wrapper .posts.column2 .post .img img{
    height: 210px;
  }
}

.case-list .lists-wrapper .posts .post .info {
  padding: 30px 20px;
}

.case-list-v2 .case-list .lists-wrapper .posts .post .info h3 {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: .1em;
  margin-bottom: 15px;
}

@media ( max-width: 600px ){
  .case-list-v2 .case-list .lists-wrapper .posts .post .info h3 {
    font-size: 18px;
  }
}

.case-list-v2 .case-list .lists-wrapper .posts .post .info .summary {
  font-size: 16px;
  letter-spacing: .1em;
  line-height: 2;
  color: #404040;
  margin-bottom: 20px;
}

/* info tag */
.case-list .lists-wrapper .posts .post .info .tags {
  display: flex;
  grid-gap: 10px;
  flex-wrap: wrap;
}

.case-list .lists-wrapper .posts .post .info .tags .tag {
  background: #A6A6A6;
  border-radius: 3px;
  color: var(--white);
  font-size: .75rem;
  line-height: 2.0;
  padding: 2px 15px;
  width: fit-content;
}

/* info readmore */
.case-list .lists-wrapper .posts .post .info .readmore {
  align-items: center;
  display: flex;
  width: 123px;
  justify-content: flex-end;
  margin-top: 25px;
  margin-left: auto;
  height: 40px;
  position: relative;
}

.case-list .lists-wrapper .posts .post .info .readmore .readmore-text {
  font-size: .875rem;
  line-height: 1.5;
  color: var(--blue);
  position: absolute;
  left: 0;
}

.case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 100%;
  background: var(--white);
  border: 1px solid #1B4698;
  transition: width 0.3s, height 0.3s, background 0.3s;
}

.case-list .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner {
  width: 40px;
  height: 40px;
  background: var(--blue);
}

.case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 1px;
}

.case-list .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 0px;
}

.case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::before, .case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::after {
  position: absolute;
  margin: auto;
  content: "";
  vertical-align: middle;
  transition: width 0.32s, left 0.32s;
}

.case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::before {
  background: #1B4698;
  height: 1px;
  width: 12px;
}

.case-list .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span::before {
  background: var(--white);
  top: 0.01px;
  width: 22px;
  left: -10px;
}

.case-list .lists-wrapper .posts .post .info .readmore span.readmore-btn-inner span::after {
  left: 0px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #1B4698;
  border-right: 1px solid #1B4698;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.case-list .lists-wrapper .posts .post > a:hover .info .readmore span.readmore-btn-inner span::after {
  border-top: 1px solid var(--white);
  border-right: 1px solid var(--white);
  left: 3px;
  width: 8px;
  height: 8px;
  top: -3.5px;
}

.case-list .wrapper .seeall-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 60px;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow {
  background-color: var(--white);
  border: 1px solid var(--gray);
  border-radius: 5px;
  display: inline-block;
  outline: none;
  padding: 23px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 330px;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--black);
  transition: background-color 0.3s, color 0.3s;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:hover {
  color: var(--white);
  background-color: var(--blue);
  border: 1px solid var(--blue);
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:before,
.case-list .wrapper .seeall-btn a.btn-with-arrow:after {
  content: "";
  position: absolute;
  transition: right 0.2s;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:before {
  background: #092241;
  height: 1px;
  width: 20px;
  right: 30px;
  top: 50%;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:after {
  border-right: 1px solid #092241;
  border-top: 1px solid #092241;
  height: 5px;
  right: 30px;
  top: calc(50% - 2px);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:hover:before {
  background: var(--white);
  right: 25px;
}

.case-list .wrapper .seeall-btn a.btn-with-arrow:hover:after {
  border-right: 1px solid var(--white);
  border-top: 1px solid var(--white);
  right: 25px;
}

.case-list-v2 .case-list .lists-wrapper .posts.column1 .post>a .img, .case-list-v2 .case-list .lists-wrapper .posts.column1 .post>div .img{
  min-height: 210px;
  max-height: unset;  
}

@media screen and (max-width: 1024px) {
  .case-list {
    padding: 60px 0;
  }

  .case-list .wrapper header h2 {
    font-size: 1.625rem;
  }

  .case-list .lists-wrapper .posts {
    grid-row-gap: 40px;
  }

  .case-list .lists-wrapper .posts .post .info {
    padding: 20px;
  }

  .case-list .lists-wrapper .posts .post .info .summary {
    margin-bottom: 20px;
  }

  .case-list .lists-wrapper .posts .post .info .readmore {
    margin-top: 20px;
  }

  .case-list .wrapper .seeall-btn {
    margin-top: 40px;
  }

  .case-list .wrapper .seeall-btn a.btn-with-arrow {
    width: 335px;
  }
}
/* Utilities */
/* ------------------------------------------------------------------------------------
Variables
------------------------------------------------------------------------------------ */
:root {
  /*  colors  */
  --white: #FFFFFF; 
  --blue: #00479D;
  --light-blue: #0085CE;
  --black: #141414;
  --gray: #A6A6A6;
  --dark-gray: #404040;
  --dark-gray-sub: #595959;
  --light-gray: #C9CED1;
  --light-gray-sub: #F5F5F5;
  --red: #ED5858;
  --light-red: #FBEFEE;
}

/* ------------------------------------------------------------------------------------
Display
------------------------------------------------------------------------------------ */
.block {
  display: block;
}
.flex {
  display: flex;
}
.none {
  display: none;
}
/* ------------------------------------------------------------------------------------
Overflow
------------------------------------------------------------------------------------ */
.overflow-hidden {
  overflow: hidden;
}

/* ------------------------------------------------------------------------------------
Flex
------------------------------------------------------------------------------------ */
.items-center {
  align-items: center;
}
.justify-start {
  justify-content: start;
}
.justify-center {
  justify-content: center;
}
.justify-end {
  justify-content: end;
}
.justify-between {
  justify-content: space-between;
}
.justify-around {
  justify-content: space-around;
}
.align-start {
  align-items: start;
}
.align-center {
  align-items: center;
}
.align-end {
  align-items: end;
}

/* ------------------------------------------------------------------------------------
Width/Height
------------------------------------------------------------------------------------ */
.w-auto {
  width: auto;
}
.w-full {
  width: 100%;
}
.w-fit {
  width: fit-content;
}
.h-auto {
  height: auto;
}
.h-full {
  height: 100%;
}

/* ------------------------------------------------------------------------------------
Margin
------------------------------------------------------------------------------------ */
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.ml-auto {
  margin-left: auto;
}
.mr-auto {
  margin-right: auto;
}


.mt-0 {
  margin-top: 0px !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.ml-0 {
  margin-left: 0px !important;
}

.mt-5 {
  margin-top: 5px !important;
}

.mb-5 {
  margin-bottom: 5px !important;
}

.ml-5 {
  margin-left: 5px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.ml-10 {
  margin-left: 10px !important;
}

.mt-15 {
  margin-top: 15px !important;
}

.mb-15 {
  margin-bottom: 15px !important;
}

.ml-15 {
  margin-left: 15px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.ml-20 {
  margin-left: 20px !important;
}

.mt-25 {
  margin-top: 25px !important;
}

.mb-25 {
  margin-bottom: 25px !important;
}

.ml-25 {
  margin-left: 25px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.ml-30 {
  margin-left: 30px !important;
}

.mt-35 {
  margin-top: 35px !important;
}

.mb-35 {
  margin-bottom: 35px !important;
}

.ml-35 {
  margin-left: 35px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.ml-40 {
  margin-left: 40px !important;
}

.mt-45 {
  margin-top: 45px !important;
}

.mb-45 {
  margin-bottom: 45px !important;
}

.ml-45 {
  margin-left: 45px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mb-50 {
  margin-bottom: 50px !important;
}

.ml-50 {
  margin-left: 50px !important;
}

.mt-55 {
  margin-top: 55px !important;
}

.mb-55 {
  margin-bottom: 55px !important;
}

.ml-55 {
  margin-left: 55px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mb-60 {
  margin-bottom: 60px !important;
}

.ml-60 {
  margin-left: 60px !important;
}

.mt-65 {
  margin-top: 65px !important;
}

.mb-65 {
  margin-bottom: 65px !important;
}

.ml-65 {
  margin-left: 65px !important;
}

.mt-70 {
  margin-top: 70px !important;
}

.mb-70 {
  margin-bottom: 70px !important;
}

.ml-70 {
  margin-left: 70px !important;
}

.mt-75 {
  margin-top: 75px !important;
}

.mb-75 {
  margin-bottom: 75px !important;
}

.ml-75 {
  margin-left: 75px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.mb-80 {
  margin-bottom: 80px !important;
}

.ml-80 {
  margin-left: 80px !important;
}

.mt-85 {
  margin-top: 85px !important;
}

.mb-85 {
  margin-bottom: 85px !important;
}

.ml-85 {
  margin-left: 85px !important;
}

.mt-90 {
  margin-top: 90px !important;
}

.mb-90 {
  margin-bottom: 90px !important;
}

.ml-90 {
  margin-left: 90px !important;
}

.mt-95 {
  margin-top: 95px !important;
}

.mb-95 {
  margin-bottom: 95px !important;
}

.ml-95 {
  margin-left: 95px !important;
}

.mt-100 {
  margin-top: 100px !important;
}

.mb-100 {
  margin-bottom: 100px !important;
}

.ml-100 {
  margin-left: 100px !important;
}


/* ------------------------------------------------------------------------------------
Padding
------------------------------------------------------------------------------------ */

.pt-0 {
  padding-top: 0px !important;
}

.pb-0 {
  padding-bottom: 0px !important;
}

.pt-5 {
  padding-top: 5px !important;
}

.pb-5 {
  padding-bottom: 5px !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pb-10 {
  padding-bottom: 10px !important;
}

.pt-15 {
  padding-top: 15px !important;
}

.pb-15 {
  padding-bottom: 15px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pt-25 {
  padding-top: 25px !important;
}

.pb-25 {
  padding-bottom: 25px !important;
}

.pt-30 {
  padding-top: 30px !important;
}

.pb-30 {
  padding-bottom: 30px !important;
}

.pt-35 {
  padding-top: 35px !important;
}

.pb-35 {
  padding-bottom: 35px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pt-45 {
  padding-top: 45px !important;
}

.pb-45 {
  padding-bottom: 45px !important;
}

.pt-50 {
  padding-top: 50px !important;
}

.pb-50 {
  padding-bottom: 50px !important;
}

.pt-55 {
  padding-top: 55px !important;
}

.pb-55 {
  padding-bottom: 55px !important;
}

.pt-60 {
  padding-top: 60px !important;
}

.pb-60 {
  padding-bottom: 60px !important;
}

.pt-65 {
  padding-top: 65px !important;
}

.pb-65 {
  padding-bottom: 65px !important;
}

.pt-70 {
  padding-top: 70px !important;
}

.pb-70 {
  padding-bottom: 70px !important;
}

.pt-75 {
  padding-top: 75px !important;
}

.pb-75 {
  padding-bottom: 75px !important;
}

.pt-80 {
  padding-top: 80px !important;
}

.pb-80 {
  padding-bottom: 80px !important;
}

.pt-85 {
  padding-top: 85px !important;
}

.pb-85 {
  padding-bottom: 85px !important;
}

.pt-90 {
  padding-top: 90px !important;
}

.pb-90 {
  padding-bottom: 90px !important;
}

.pt-95 {
  padding-top: 95px !important;
}

.pb-95 {
  padding-bottom: 95px !important;
}

.pt-100 {
  padding-top: 100px !important;
}

.pb-100 {
  padding-bottom: 100px !important;
}

.pt-105 {
  padding-top: 105px !important;
}

.pb-105 {
  padding-bottom: 105px !important;
}

.pt-110 {
  padding-top: 110px !important;
}

.pb-110 {
  padding-bottom: 110px !important;
}

.pt-115 {
  padding-top: 115px !important;
}

.pb-115 {
  padding-bottom: 115px !important;
}

.pt-120 {
  padding-top: 120px !important;
}

.pb-120 {
  padding-bottom: 120px !important;
}

.pt-125 {
  padding-top: 125px !important;
}

.pb-125 {
  padding-bottom: 125px !important;
}

.pt-130 {
  padding-top: 130px !important;
}

.pb-130 {
  padding-bottom: 130px !important;
}

.pt-135 {
  padding-top: 135px !important;
}

.pb-135 {
  padding-bottom: 135px !important;
}

.pt-140 {
  padding-top: 140px !important;
}

.pb-140 {
  padding-bottom: 140px !important;
}

.pt-145 {
  padding-top: 145px !important;
}

.pb-145 {
  padding-bottom: 145px !important;
}

.pt-150 {
  padding-top: 150px !important;
}

.pb-150 {
  padding-bottom: 150px !important;
}

.pt-155 {
  padding-top: 155px !important;
}

.pb-155 {
  padding-bottom: 155px !important;
}

.pt-160 {
  padding-top: 160px !important;
}

.pb-160 {
  padding-bottom: 160px !important;
}

.pt-165 {
  padding-top: 165px !important;
}

.pb-165 {
  padding-bottom: 165px !important;
}

.pt-170 {
  padding-top: 170px !important;
}

.pb-170 {
  padding-bottom: 170px !important;
}

.pt-175 {
  padding-top: 175px !important;
}

.pb-175 {
  padding-bottom: 175px !important;
}

.pt-180 {
  padding-top: 180px !important;
}

.pb-180 {
  padding-bottom: 180px !important;
}

.pt-185 {
  padding-top: 185px !important;
}

.pb-185 {
  padding-bottom: 185px !important;
}

.pt-190 {
  padding-top: 190px !important;
}

.pb-190 {
  padding-bottom: 190px !important;
}

.pt-195 {
  padding-top: 195px !important;
}

.pb-195 {
  padding-bottom: 195px !important;
}

.pt-200 {
  padding-top: 200px !important;
}

.pb-200 {
  padding-bottom: 200px !important;
}


@media ( max-width:680px ){
  
    .sppt-0 {
      padding-top: 0px !important;
    }

    .sppb-0 {
      padding-bottom: 0px !important;
    }
  
    .sppt-5 {
      padding-top: 5px !important;
    }

    .sppb-5 {
      padding-bottom: 5px !important;
    }
  
    .sppt-10 {
      padding-top: 10px !important;
    }

    .sppb-10 {
      padding-bottom: 10px !important;
    }
  
    .sppt-15 {
      padding-top: 15px !important;
    }

    .sppb-15 {
      padding-bottom: 15px !important;
    }
  
    .sppt-20 {
      padding-top: 20px !important;
    }

    .sppb-20 {
      padding-bottom: 20px !important;
    }
  
    .sppt-25 {
      padding-top: 25px !important;
    }

    .sppb-25 {
      padding-bottom: 25px !important;
    }
  
    .sppt-30 {
      padding-top: 30px !important;
    }

    .sppb-30 {
      padding-bottom: 30px !important;
    }
  
    .sppt-35 {
      padding-top: 35px !important;
    }

    .sppb-35 {
      padding-bottom: 35px !important;
    }
  
    .sppt-40 {
      padding-top: 40px !important;
    }

    .sppb-40 {
      padding-bottom: 40px !important;
    }
  
    .sppt-45 {
      padding-top: 45px !important;
    }

    .sppb-45 {
      padding-bottom: 45px !important;
    }
  
    .sppt-50 {
      padding-top: 50px !important;
    }

    .sppb-50 {
      padding-bottom: 50px !important;
    }
  
    .sppt-55 {
      padding-top: 55px !important;
    }

    .sppb-55 {
      padding-bottom: 55px !important;
    }
  
    .sppt-60 {
      padding-top: 60px !important;
    }

    .sppb-60 {
      padding-bottom: 60px !important;
    }
  
    .sppt-65 {
      padding-top: 65px !important;
    }

    .sppb-65 {
      padding-bottom: 65px !important;
    }
  
    .sppt-70 {
      padding-top: 70px !important;
    }

    .sppb-70 {
      padding-bottom: 70px !important;
    }
  
    .sppt-75 {
      padding-top: 75px !important;
    }

    .sppb-75 {
      padding-bottom: 75px !important;
    }
  
    .sppt-80 {
      padding-top: 80px !important;
    }

    .sppb-80 {
      padding-bottom: 80px !important;
    }
  
    .sppt-85 {
      padding-top: 85px !important;
    }

    .sppb-85 {
      padding-bottom: 85px !important;
    }
  
    .sppt-90 {
      padding-top: 90px !important;
    }

    .sppb-90 {
      padding-bottom: 90px !important;
    }
  
    .sppt-95 {
      padding-top: 95px !important;
    }

    .sppb-95 {
      padding-bottom: 95px !important;
    }
  
    .sppt-100 {
      padding-top: 100px !important;
    }

    .sppb-100 {
      padding-bottom: 100px !important;
    }
  
}

/* ------------------------------------------------------------------------------------
text-align
------------------------------------------------------------------------------------ */
.tac {
  text-align: center!important;
}

.tal {
  text-align: left!important;
}

.tar {
  text-align: right!important;
}

/* ------------------------------------------------------------------------------------
br
------------------------------------------------------------------------------------ */
@media screen and (max-width: 1024px) {
  br.responsive {
    display: none;
  }
}

br.sp{
  display:none;
}

@media screen and (max-width: 1024px) {
  br.sp{
    display:block;
  }
}

/* Vendor */
/* PrismJS 1.29.0
https://prismjs.com/download.html#themes=prism-okaidia&plugins=line-numbers */
code[class*=language-],pre[class*=language-]{color:#f8f8f2;background:0 0;text-shadow:0 1px rgba(0,0,0,.3);font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#272822}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#8292a2}.token.punctuation{color:#f8f8f2}.token.namespace{opacity:.7}.token.constant,.token.deleted,.token.property,.token.symbol,.token.tag{color:#f92672}.token.boolean,.token.number{color:#ae81ff}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#a6e22e}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url,.token.variable{color:#f8f8f2}.token.atrule,.token.attr-value,.token.class-name,.token.function{color:#e6db74}.token.keyword{color:#66d9ef}.token.important,.token.regex{color:#fd971f}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}
pre[class*=language-].line-numbers{position:relative;padding-left:3.8em;counter-reset:linenumber}pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;width:3em;letter-spacing:-1px;border-right:1px solid #999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.line-numbers-rows>span{display:block;counter-increment:linenumber}.line-numbers-rows>span:before{content:counter(linenumber);color:#999;display:block;padding-right:.8em;text-align:right}
@keyframes scroll-hint-appear {
  0% {
    transform: translateX(40px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%,
  100% {
    transform: translateX(-40px);
    opacity: 0;
  }
}

.scroll-hint.is-right-scrollable {
  background: linear-gradient(270deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint-icon {
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 60px);
  box-sizing: border-box;
  width: 120px;
  height: 90px;
  border-radius: 5px;
  transition: opacity .3s;
  opacity: 0;
  background: rgba(0, 0, 0, .7);
  text-align: center;
  padding: 20px 10px 10px 10px;
}

.scroll-hint-icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  pointer-events: none;
}

.scroll-hint-text {
  font-size: 10px;
  color: #FFF;
  margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: .8;
}

.scroll-hint-icon:before {
  display: inline-block;
  width: 40px;
  height: 40px;
  color: #FFF;
  vertical-align: middle;
  text-align: center;
  content: "";
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
  content: "";
  width: 34px;
  height: 14px;
  display: block;
  position: absolute;
  top: 10px;
  left: 50%;
  margin-left: -20px;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
  opacity: 0;
  transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation: scroll-hint-appear 1.2s linear;
  animation-iteration-count: 2;
}

.scroll-hint-icon-white {
  background-color: #FFF;
  box-shadow: 0 4px 5px rgba(0, 0, 0, .4);
}

.scroll-hint-icon-white:before {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
  color: #000;
}
#post .wrapper section.contents article.main-content .body img{
  border: 1px solid #d1d1d1;
}
.button-hover{
    padding: 20px;
    background: #fff;
    height: 100%;
    border-radius: 50px;
    font-size: 30px;
    display: flex;
    justify-content: center;
    color: #fff;
    background: linear-gradient(270deg, rgba(2,0,36,1) 0%, rgba(10,10,153,1) 0%, rgba(33,67,130,1) 0%, rgba(33,67,130,1) 0%, rgba(33,67,130,1) 12%, rgba(55,102,192,1) 75%);
  }
.button-hover a:hover{
    opacity: .7;
}