:root {
  --primitive-colors-sumi-500: #949497;
  --primitive-colors-sea-50: #E8F1FE;
}

:root,
[data-bs-theme=light] {
  --light-background-secondary: #F1F1F4;
  --light-background-primary: #FFFFFF;
  --light-background-tertiary: #F8F8FB;
  --light-border-divider: #D8D8DB;
  --light-border-focused: #D18D0F;
  --light-border-disabled: #949497;
  --light-icon-active: #0017C1;
  --light-text-alert: #EC0000;
  --light-text-body: #1A1A1C;
  --light-text-link: #0017C1;
  --light-text-description: #626264;
  --light-text-disabled: #949497;
  --light-button-normal: #0017C1;
  --light-button-active: #000082;
  --light-button-hover: #000082;
}

@media (max-width: 991px) {
  .sp-hidden {
    display: none;
  }
}

/* Accordion */
.accordion {
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.05rem #D18D0F;
  --bs-accordion-inner-border-radius: 0;
  --bs-accordion-border-radius: 0;
  --bs-accordion-body-padding-x: 2rem;
  --bs-accordion-body-padding-y: 1.5rem;
  --bs-accordion-body-field-padding: 0rem 0 1rem 0rem;
  --bs-accordion-btn-icon: url(../images/arrow_down.svg);
  --bs-accordion-btn-active-icon: url(../images/arrow_up.svg);
  max-width: 960px;
  margin: 0 auto;
}

.accordion-button {
  padding-right: 16px;
  gap: 10px;
}

.accordion-button:not(.collapsed),
.accordion-button.collapsed {
  background: var(--light-background-secondary);
}

.accordion-item {
  border: 0;
  border-bottom: 1px solid var(--light-border-divider);
}

.accordion-item:not(:first-of-type) {
  border-top: 0;
}

.accordion-body .field {
  padding: var(--bs-accordion-body-field-padding);
}

[data-bs-theme=dark] .accordion-button::after {
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23668adc'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23668adc'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

/* Button */
.btn,
.node-preview-container .node-preview-backlink,
a.button,
.button,
button.link {
  --bs-border-radius: 0.5rem;
  --bs-btn-padding-x: 1rem;
  --bs-btn-padding-y: 1rem;
  --bs-btn-line-height: 1.375;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  margin: 0;
}

.btn-primary,
.button--small,
#backtotop,
details summary[role="button"] {
  --bs-btn-color: #fff;
  --bs-btn-bg: #0017C1;
  --bs-btn-border-color: #000082;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #000082;
  --bs-btn-hover-border-color: #000082;
  --bs-btn-focus-shadow-rgb: 38, 89, 206;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #000082;
  --bs-btn-active-border-color: #000082;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #949497;
  --bs-btn-disabled-border-color: #949497;
}

.button--small {
  --bs-btn-padding-x: 1rem;
  --bs-btn-padding-y: 0.5em;
  line-height: 1;
}

.btn-secondary {
  --bs-btn-color: #0017C1;
  --bs-btn-bg: #fff;
  --bs-btn-border-color: #0017C1;
  --bs-btn-hover-color: #000082;
  --bs-btn-hover-bg: #E8F1FE;
  --bs-btn-hover-border-color: #000082;
  --bs-btn-focus-shadow-rgb: 130, 138, 145;
  --bs-btn-active-color: #000082;
  --bs-btn-active-bg: #E8F1FE;
  --bs-btn-active-border-color: #000082;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #949497;
  --bs-btn-disabled-bg: #fff;
  --bs-btn-disabled-border-color: #949497;
}

.btn-tertiary {
  --bs-btn-color: #0017C1;
  --bs-btn-bg: none;
  --bs-btn-border-color: none;
  --bs-btn-hover-color: #000082;
  --bs-btn-hover-bg: none;
  --bs-btn-hover-border-color: none;
  --bs-btn-focus-shadow-rgb: none;
  --bs-btn-active-color: #000082;
  --bs-btn-active-bg: none;
  --bs-btn-active-border-color: none;
  --bs-btn-active-shadow: none;
  --bs-btn-disabled-color: #949497;
  --bs-btn-disabled-bg: none;
  --bs-btn-disabled-border-color: none;
  text-decoration: underline;
}

.btn:focus-visible,
.node-preview-container .node-preview-backlink:focus-visible,
a.button:focus-visible,
.button:focus-visible,
button.link:focus {
  --bs-btn-focus-box-shadow: none;
  --bs-btn-focus-border: 2px solid var(--light-border-focused);
  --bs-btn-line-height: 1.25;
  border: var(--bs-btn-focus-border);
}

body #backtotop {
  --bs-backtotop-bg: var(--bs-btn-bg);
  --bs-backtotop-color: var(--bs-btn-color);
  --bs-backtotop-border-color: var(--bs-btn-border-color);
  --bs-backtotop-hover-bg: var(--bs-btn-hover-bg);
  --bs-backtotop-hover-color: var(--bs-btn-hover-color);
  --bs-backtotop-hover-border-color: var(--bs-btn-hover-border-color);
  --bs-backtotop-active-bg: var(--bs-btn-active-bg);
  --bs-backtotop-active-color: var(--bs-btn-active-color);
  --bs-backtotop-active-border-color: var(--bs-btn-active-border-color);
  color: var(--bs-backtotop-color) !important;
  background-color: var(--bs-backtotop-bg) !important;
  border-color: var(--bs-backtotop-border-color) !important;
}

body #backtotop:hover,
body #backtotop:focus {
  color: var(--bs-backtotop-hover-color) !important;
  background-color: var(--bs-backtotop-hover-bg) !important;
  border-color: var(--bs-backtotop-hover-border-color) !important;
}

body #backtotop:active {
  color: var(--bs-backtotop-active-color) !important;
  background-color: var(--bs-backtotop-active-bg) !important;
  border-color: var(--bs-backtotop-active-border-color) !important;
}

body.back-to-top-circle #backtotop {
  border-radius: 34px;
  height: 56px;
  width: 56px;
}

body.back-to-top-scquare #backtotop {
  border-radius: 5px;
  height: 40px;
  width: 40px;
}

body.back-to-top-circle #backtotop,
body.back-to-top-scquare #backtotop {
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
}

body.back-to-top-circle #backtotop {
  text-indent: 56px;
}

body.back-to-top-scquare #backtotop {
  text-indent: 40px;
}

body.back-to-top-circle #backtotop:before,
body.back-to-top-scquare #backtotop:before {
  font-family: "Font Awesome 6 Pro";
  position: absolute;
  left: 0;
  top: 0;
  display: inline-block;
  font-weight: 900;
}
body.back-to-top-circle #backtotop:before {
  left: -40px;
  top: 7px;
  font-size: 28px;
  content: "\f106";
}

body.back-to-top-scquare #backtotop:before {
  left: -30px;
  font-size: 24px;
  content: "\f062";
}

body.back-to-top-type-image #backtotop {
  background-color: transparent !important;
}

body.back-to-top-scquare:has(.anchor-links.sticky) #backtotop,
body.back-to-top-circle:has(.anchor-links.sticky) #backtotop {
  box-shadow: 0px 0px 7px 1px #FFF;
}

/* Form control */
.form-control,
.form-element {
  --bs-border-radius: 8px;
  --bs-border-color: #1A1A1C;
  padding: 0.75rem 1rem;
  width: auto;
  max-width: 100%;
}

.form-required {
  display: flex;
  align-items: center;
}

.form-required:after {
  color: var(--light-text-alert);
  font-size: 12px;
  font-weight: 400;
  line-height: 170%;
  letter-spacing: 0.24px;
  background: none;
  content: "Required";
  width: auto;
  height: auto;
  vertical-align: unset;
}

html[lang='ja'] .form-required:after {
  content: "必須";
}

.form-control:focus,
.form-element:focus {
  box-shadow: none;
}

.form-control.hidden {
  display: none;
}

.form-item input.error,
.form-item textarea.error,
.form-item select.error {
  border-color: var(--light-text-alert);
}

.form-item--error-message:before {
  display: none;
}

.form-item--error-message strong {
  color: var(--light-text-alert);
  font-size: 12px;
  font-weight: 400;
  line-height: 170%;
  letter-spacing: 0.24px;
}

.form-composite>legend,
.form-item label,
.label {
  font-weight: 500;
  margin-bottom: 8px;
  line-height: 1;
}

.form-composite>.fieldset-wrapper>.description,
.form-item .description {
  color: var(--light-text-description);
  font-family: Noto Sans JP;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 170%;
  letter-spacing: 0.24px;
  margin-bottom: 8px;
}

.form-composite.form-disabled>legend,
.form-item.form-disabled label,
.form-disabled .label {
  color: var(--light-text-disabled);
}

.form-control:disabled {
  --bs-secondary-bg: #F1F1F4;
  border-color: var(--light-border-disabled);
  color: var(--light-text-disabled);
}

/* Textarea */
.form-type-textarea .text-count-wrapper {
  float: right;
  color: var(--light-text-description);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0.15px;
  margin-top: 4px;
}

.form-item--error .text-count-wrapper {
  color: var(--light-text-alert);
}

.form-disabled.form-type-textarea .text-count-wrapper {
  display: none !important;
}

/* Select */
.form-select {
  --bs-form-select-bg-img: url(../images/list_arrow.svg);
  --bs-form-select-disabled-bg-img: url(../images/list_arrow_disabled.svg);
  background-size: 24px 24px;
  padding: 0.75rem 2rem 0.75rem 1rem;
}

.form-select:disabled {
  background-image: var(--bs-form-select-disabled-bg-img);
}

/* Check box, Radio */
/* [type="checkbox"], */
[type="radio"] {
  margin-right: 16px;
}

.form-type-radios label,
.form-type-checkboxs label {
  font-size: 16px;
  font-weight: 400;
  line-height: 170%;
  letter-spacing: 0.64px;
}

/* Radio */
[type=radio]+label {
  display: flex;
  align-items: center;
}

[type="radio"]+label:before {
  --bs-form-radio-bg-img: url(../images/radio.svg);
  --bs-form-radio-select-bg-img: url(../images/radio_select.svg);
  --bs-form-radio-error-bg-img: url(../images/radio_error.svg);
  --bs-form-radio-disabled-bg-img: url(../images/radio_disabled.svg);
}

[type=radio]+label:before {
  content: "";
  display: inline-block;
  background-size: contain;
  width: 24px;
  height: 24px;
  margin-right: 16px;
  background-repeat: no-repeat;
}

[type=radio]+label:before {
  background-image: var(--bs-form-radio-bg-img);
}

[type=radio]:checked+label::before {
  background-image: var(--bs-form-radio-select-bg-img);
}

[type=radio].error+label:before {
  background-image: var(--bs-form-radio-error-bg-img);
}

[type=radio]:checked.error+label:before {
  background-image: var(--bs-form-radio-select-bg-img);
}

.form-disabled [type=radio]+label:before {
  background-image: var(--bs-form-radio-disabled-bg-img);
}

[type=radio].error+label {
  color: var(--light-text-alert);
}

[type=radio] {
  display: none;
}

/* Check box */
/* [type=checkbox]+label {
  display: flex;
  align-items: center;
}

[type="checkbox"]+label:before {
  --bs-form-checkbox-bg-img: url(../images/checkbox.svg);
  --bs-form-checkbox-select-bg-img: url(../images/checkbox_select.svg);
  --bs-form-checkbox-error-bg-img: url(../images/checkbox_error.svg);
  --bs-form-checkbox-disabled-bg-img: url(../images/checkbox_disabled.svg);
}

[type=checkbox]+label:before {
  content: "";
  display: inline-block;
  background-size: contain;
  width: 24px;
  height: 24px;
  margin-right: 16px;
}

[type=checkbox]+label:before {
  background-image: var(--bs-form-checkbox-bg-img);
}

[type=checkbox]:checked+label::before {
  background-image: var(--bs-form-checkbox-select-bg-img);
}

[type=checkbox].error+label:before {
  background-image: var(--bs-form-checkbox-error-bg-img);
}

[type=checkbox]:checked.error+label:before {
  background-image: var(--bs-form-checkbox-select-bg-img);
}

.form-disabled [type=checkbox]+label:before {
  background-image: var(--bs-form-checkbox-disabled-bg-img);
}

[type=checkbox].error+label {
  color: var(--light-text-alert);
}

[type=checkbox] {
  display: none;
}

.path-admin [type=checkbox],
.path-admin [type=radio] {
  display: inline-block;
}

.path-admin [type=checkbox]+label:before,
.path-admin [type=radio]+label:before,
.path-node [type=checkbox]+label:before,
.path-node [type=radio]+label:before,
.path-taxonomy [type=checkbox]+label:before,
.path-taxonomy [type=radio]+label:before {
  display: none;
} */

/* Actions */
.form-actions {
  clear: both;
}

/* Table */
.table,
.item-bordered {
  --bs-table-bg: #F8F8FB;
  --bs-table-bg-white: #FFFFFF;
  --bs-table-border-color: #D8D8DB;
}

.item-bordered {
  border-width: var(--bs-border-width);
  border-style: solid;
  width: 100%;
}

.item-bordered > * {
  border-color: var(--bs-table-border-color);
  border-width: var(--bs-border-width);
  border-top-width: 0;
  border-style: solid;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.item-bordered > *:last-child {
  border-bottom-width: 0;
}

.item-bordered.no-ver-border,
.item-bordered.no-ver-border > * {
  border-right-width: 0;
  border-left-width: 0;
}

.table > :not(caption) > * > * {
  padding: 1rem 1rem;
  background-color: var(--bs-table-bg-white);
}

.table th {
  background-color: var(--bs-table-bg);
  font-weight: 400;
  vertical-align: middle;
}

.table td a,
.item-bordered a {
  text-decoration: none;
  color: var(--bs-body-color)
}

.table-bordered.bd-row-light tr,
.table-bordered.bd-dark.bd-row-light tr,
.item-bordered.bd-dark.bd-row-light > * {
  --bs-table-border-color: #e6e5e5;
}

.table-bordered.bd-dark tr,
.table-bordered.bd-dark.bd-row-light tr:first-child,
.table-bordered.bd-dark.bd-row-light tr:last-child,
.item-bordered.bd-dark {
  --bs-table-border-color: #484848;
}

.table-bordered.bd-dark.bd-row-light tr:first-child {
  border-bottom-width: 0;
}

.table-bordered.bd-dark.bd-row-light tr:last-child {
  border-bottom-width: 1px;
}

.table.no-row-border tr,
.table.no-row-border th,
.table.no-row-border td {
  border-width: 0;
}

.table-bordered.no-row-border tr:first-child th,
.table-bordered.no-row-border tr:first-child td {
  padding-top: 0.75rem;
  padding-bottom: 1rem;
}

.table-bordered.no-row-border tr:last-child th,
.table-bordered.no-row-border tr:last-child td {
  padding-top: 1rem;
  padding-bottom: 0.75rem;
}

.table.no-col-border tr > *:first-child,
.item-bordered > * {
  padding-left: 2em;
}

.table.no-col-border tr > *:last-child,
.item-bordered > * {
  padding-right: 2rem;
}

.table-bordered.no-row-border tr:first-child {
  border-top-width: var(--bs-border-width);
}

.table-bordered.no-row-border tr:last-child {
  border-bottom-width: var(--bs-border-width);
}

.table-bordered.no-col-border th,
.table-bordered.no-col-border td {
  border-width: 0;
}

.table.no-th-bg th {
  background-color: transparent;
  font-weight: bold;
}

.table.no-th tr > td:first-child {
  padding-left: 2rem;
}

.table.no-th td,
.table.no-th td .file {
  width: 100%;
}

.table.td-file td {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.table.td-file td > * {
  width: 100%;
}

.table.no-th td .file,
.item-bordered.item-file .file {
  display: flex;
  align-items: center;
  padding-left: 0;
}

.table.td-file td .file:before {
  font-size: 1.5rem;
}

.table.td-file td .file.file--application-pdf a,
.table.td-file td .file.file--general a,
.table.td-file td .file.file--text a,
.item-bordered.item-file .file a {
  width: 100%;
  display: flex;
  align-items: center;
  position: relative;
}

.table.td-file td .file:before,
.item-bordered.item-file .file::before {
  display: none;
}

.table.td-file td .file,
.item-bordered.item-file .file {
  background-image: none;
}

.table.td-file td .file a:before,
.item-bordered.item-file .file a::before {
  font-family:'Font Awesome 6 Pro';
  font-weight: 400;
  font-size: 1.5rem;
  margin-right: 0.5rem;
}

.table.td-file td .file a:after,
.item-bordered.item-file .file a:after {
  font-family: 'Font Awesome 6 Pro';
  font-size: 1.5rem;
  font-weight: 900;
}

.table.td-file td .file a:before,
.item-bordered.item-file .file a:before {
  content: '\f15b';
}

.table.td-file td .file.file--application-pdf a:before,
.item-bordered.item-file .file.file--application-pdf a:before {
  content: '\f1c1';
}

.table.td-file td .file.file--x-office-document a:before,
.item-bordered.item-file .file.file--x-office-document a:before {
  content: '\f1c2';
}

.table.td-file td .file.file--x-office-spreadsheet a:before,
.item-bordered.item-file .file.file--x-office-spreadsheet a:before {
  content: '\f1c3';
}

.table.td-file td .file.file--x-office-presentation a:before,
.item-bordered.item-file .file.file--x-office-presentation a:before {
  content: '\f1c4';
}

.table.td-file td .file.file.file--general a:before,
.item-bordered.item-file .file.file.file--general a:before {
  content: '\f15b';
}

.table.td-file td .file.file.file--text a:before,
.item-bordered.item-file .file.file.file--text a:before {
  content: '\f15c';
}

.table.td-file td .field--type-entity-reference.field--label-inline {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  align-content: revert;
  flex-direction: row-reverse;
}

.table.td-file td .field--type-entity-reference.field--label-inline .field__label:after {
  content: '';
}

.table.no-th td .file a:after,
.item-bordered.item-file .file a:after {
  content: '\f019';
  position: absolute;
  right: 0;
}

.table tr.type-entity-reference td {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;;
}

.table tr.type-entity-reference td .layout,
.table tr.type-entity-reference td .layout .layout__region {
  display: flex;
}

.table.w-th-20 th {
  width: 20%;;
}

.table.w-th-25 th {
  width: 25%;
}

.table.w-th-30 th {
  width: 30%;
}

.table.w-th-40 th {
  width: 40%;
}

.table.w-th-50 th {
  width: 50%;
}

/* Pager */
.pagination {
  --bs-pagination-padding-x: 0.75rem;
  --bs-pagination-padding-y: 0.75rem;
  --bs-pagination-border-radius: 30px;
  --bs-pagination-border-color: #D8D8DB;
  --bs-pagination-color: #0017C1;
  --bs-pagination-hover-bg: #E8F1FE;
  --bs-pagination-hover-border-color: #0017C1;
  --bs-pagination-focus-bg: #FFFFFF;
  --bs-pagination-focus-color: #0017C1;
  --bs-pagination-focus-border-color: #D18D0F;
  --bs-pagination-font-size: 0.875rem;
  --bs-pagination-font-size-active: 0.75rem;
  --bs-pagination-first-arrow-image: url(../images/firstpage_arrow.svg);
  --bs-pagination-previous-arrow-image: url(../images/arrow_left.svg);
  --bs-pagination-next-arrow-image: url(../images/arrow_right.svg);
  --bs-pagination-last-arrow-image: url(../images/endpage_arrow.svg);
  --bs-pagination-ellipses-image: url(../images/abbreviation_dots.svg);
  gap: 12px;
}

.pager__item {
  padding: 0;
}

.page-item.active {
  display: flex;
  align-items: center;
  font-size: var(--bs-pagination-font-size-active);
}

.page-link {
  display: flex;
  width: 3rem;
  height: 3rem;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  align-self: stretch;
  border-radius: var(--bs-pagination-border-radius);
}

.page-link:active {
  background-color: var(--bs-pagination-hover-bg);
  border-color: var(--bs-pagination-hover-border-color);
}

.page-link:focus {
  border-color: var(--bs-pagination-focus-border-color);
  border-width: 2px;
  box-shadow: none;
}

.pager__item--first .page-link {
  background-image: var(--bs-pagination-first-arrow-image);
  background-repeat: no-repeat;
  background-position: center;
  text-indent: -9999px;
}

.pager__item--previous .page-link {
  background-image: var(--bs-pagination-previous-arrow-image);
  background-repeat: no-repeat;
  background-position: center;
  text-indent: -9999px;
}

.pager__item--next .page-link {
  background-image: var(--bs-pagination-next-arrow-image);
  background-repeat: no-repeat;
  background-position: center;
  text-indent: -9999px;
}

.pager__item--last .page-link {
  background-image: var(--bs-pagination-last-arrow-image);
  background-repeat: no-repeat;
  background-position: center;
  text-indent: -9999px;
}

.page-item.disabled {
  display: flex;
  align-items: center;
}

.disabled>.page-link {
  background-image: var(--bs-pagination-ellipses-image);
  background-repeat: no-repeat;
  background-position: center;
  pointer-events: none;
  background-color: transparent;
  border: 0;
  text-indent: -9999px;
  width: 1.5rem;
  height: 1.5rem;
  align-self: unset;
}

/* Breadcrumb */
.breadcrumb {
  --bs-breadcrumb-font-size: 0.875rem;
  --bs-breadcrumb-item-padding-x: 0;
  --bs-breadcrumb-arrow-padding-x: 4px;
  --bs-breadcrumb-arrow: url(../images/arrow_breadcrumb.svg);
  gap: 4px;
}

.breadcrumb li {
  display: flex;
  align-items: center;
}

.breadcrumb-item+.breadcrumb-item {
  padding-left: var(--bs-breadcrumb-item-padding-x);
}

.breadcrumb-item+.breadcrumb-item::before {
  content: "";
  padding-right: var(--bs-breadcrumb-arrow-padding-x);
  background-image: var(--bs-breadcrumb-arrow);
  background-repeat: no-repeat;
  background-position: center;
  width: 1rem;
  height: 1rem;
}

@media (max-width: 575px) {
  .pagination {
    gap: 24px;
  }

  .page-item:not(.pager__item--first):not(.pager__item--previous):not(.pager__item--next):not(.pager__item--last):not(.active) {
    display: none;
  }
}

/* Devider */
hr.devider {
  margin: 16px auto 17px;
  opacity: unset;
}

hr.devider.cl_default {
  border-color: #D8D8DB;
}

hr.devider.cl_medium {
  border-color: #949497;
}

hr.devider.cl_dark {
  border-color: #000000;
}

hr.devider.wd_1px {
  border-width: 1px;
}

hr.devider.wd_2px {
  border-width: 2px;
}

hr.devider.wd_3px {
  border-width: 3px;
}

hr.devider.wd_4px {
  border-width: 4px;
}

hr.devider.dashed {
  border-style: dashed;
}

/* Modal dialog */
.modal-content {
  --mdb-modal-header-padding: 0;
  --mdb-modal-padding: 16px 0 40px;
  padding: 40px 56px;
}

.modal-title {
  color: var(--light-text-body, #1A1A1C);
  font-size: 22px;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.88px;
}

.modal-footer .btn {
  width: 100%;
  margin: 8px 0 0 0;
}

.modal-footer .btn:first-child {
  margin-top: 0;
}

@media (max-width: 767.98px) {
  .modal-content {
    --mdb-modal-padding: 16px 0 24px;
    padding: 16px;
  }
}

.language-selector a {
  text-decoration: none;
}

.language-selector .dropdown-toggle {
  display: flex;
  align-items: center;
  font-size: 0.85rem;;
  padding: var(--bs-navbar-nav-link-padding-x);
}

.language-selector .dropdown-toggle::before,
.language-selector .dropdown-toggle::after {
  width: 16px;
  height: 16px;
}

.language-selector .dropdown-toggle::before {
  content: '';
  background-image: url(../images/icon-language.svg);
  margin-right: 4px;
}

.language-selector .dropdown-toggle::after {
  border: 0;
  background-image: url(../images/dropdown_arrow.svg);
  width: 24px;
  height: 20px;
  margin-left: auto;
  display: inline-block;
  background-size: cover;
}

.language-selector .dropdown-toggle.show:after {
  transform: rotate(180deg);
}

.language-selector .dropdown-menu {
  box-shadow: 0px 0px 30px rgba(0, 0, 0, .07);
  border: none;
  border-radius: 0;
  padding: 0;
  min-width: auto;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
  right: 0;
  left: auto;
}

.language-selector .dropdown-menu li {
  width: 100%;
}

.language-selector .dropdown-menu.show {
  display: flex;
}

.language-selector .dropdown-menu .language-link {
  padding: 10px 32px;
  white-space: nowrap;
  font-weight: 400;
  font-size: 0.85rem;
  line-height: 170%;
  letter-spacing: 0.64px;
  display: inline-block;
  width: 100%;
}

.language-selector .dropdown-menu .language-link.active-language {
  font-weight: 700;
  position: relative;
}

.language-selector .dropdown-menu .language-link.active-language:before {
  display: inline-block;
  content: '';
  background-image: url(../images/active_language.svg);
  margin-right: 4px;
  width: 16px;
  height: 16px;
  position: absolute;
  left: 5px;
  top: 8px;
}

@media (min-width: 992px) {
  .language-selector .dropdown-menu {
    display: block;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
    top: 130%;
    left: 0;
    right: auto;
  }

  .language-selector:hover .dropdown-menu {
    display: flex;
    opacity: 1;
    visibility: visible;
    top: 100%;
  }
}

@media (max-width: 991px) {
  .language-selector .dropdown-toggle::after {
    display: none;
  }
}

@keyframes slide_in {
  0% {
    opacity: 0;
    transform: translateX(64px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Drawer */
.offcanvas-start.show:not(.hiding) {
  box-shadow: 2px 0px 6px 0px rgba(0, 0, 0, 0.10);
  border-right: 0;
}

.offcanvas-end.show:not(.hiding) {
  box-shadow: -2px 0px 6px 0px rgba(0, 0, 0, 0.10);
  border-left: 0;
}

/* Bottom navigation */
@media (min-width: 992px) {
  .region-bottom-navigation {
    display: none;
  }
}

.region-bottom-navigation {
  z-index: 90;
  position: sticky;
  bottom: 0;
  left: 0;
  width: 100%;
  border-top: 1px solid #D8D8DB;
  background-color: #fff;
}

.region-bottom-navigation .navbar-nav {
  display: flex;
  flex-direction: row;
  justify-content: center;
  padding: 0px 8px;
}

.region-bottom-navigation .navbar-nav .nav-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--light-text-body);
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.48px;
  padding: 8px 0 12px;
  width: 89.75px;
  height: 100%;
}

.region-bottom-navigation .navbar-nav .nav-link.active {
  color: var(--light-text-link);
  font-weight: 700;
}

.region-bottom-navigation .navbar-nav .nav-link .menu-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  width: 56px;
  height: 33px;
}

.region-bottom-navigation .navbar-nav .nav-link.active .menu-icon {
  border-radius: 18px;
  background: var(--primitive-colors-sea-50);
}

/* Shs */
.shs-field-container {
  display: flex;
  gap: 0.2rem;
  flex-wrap: wrap;
}

/* H2 Style */
.paragraph--type--h2-title {
  position: relative;
}

h2 {
  margin-bottom: 20px;
  position: relative;
  display: block;
}

h2:after {
  content: '';
  display: block;
  border-bottom: 5px double #777;
  width: 30%;
  padding-top: 10px;
}

/* H3 Style */
.paragraph--type--h3-title {
  position: relative;
}

h3 {
  margin-bottom: 20px;
  position: relative;
  display: block;
}

h3:after {
  content: '';
  display: block;
  border-bottom: 1px solid #777;
  width: 30%;
  padding-top: 10px;
}

/* H4 style */
h4 {
  position: relative;
  padding-left: 20px;
  margin-bottom: 15px;
}

h4:before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #000;
  margin-right: 10px;
  vertical-align: middle;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}

.text-light h4:before {
  background: rgba(var(--bs-light-rgb), var(--bs-text-opacity));
}

.text-dark h4:before {
  background: rgba(var(--bs-dark-rgb), var(--bs-text-opacity));
}

h4.label:before {
  display: none;
}

h2.accordion-header::after {
  display: none;
}

/* Bootstrap grid */
.bs_grid img {
  max-width: 100%;
  height: auto;
}

.bs_grid a {
  color: rgb(33, 37, 41);
  text-decoration: none;
}

@media screen and (min-width: 40em) {
  .layout--threecol-33-34-33 > .layout__region--first
  .layout--threecol-section--33-34-33 > .layout__region--first {
    padding-right: 0.5%;
  }
  .layout--threecol-33-34-33 > .layout__region--third,
  .layout--threecol-section--33-34-33 > .layout__region--third {
    padding-left: 0.5%;
  }
  .layout--threecol-33-34-33 > .layout__region--second,
  .layout--threecol-section--33-34-33 > .layout__region--second {
    padding-left: 0.75%;
    padding-right: 0.75%;
  }
}

/** Flag */
.flag {
  position: absolute;
  right: 5px;
}
.flag a {
  font-size: 1.3rem;
  position: relative;
  z-index: 2;
}

.flag.action-flag a {
  color: #000000;
}

.flag.action-unflag a .fa-heart {
  color: #E1383A !important;
}

.flag.action-unflag a .fa-star {
  color: #FFC802 !important;
}

.flag .ajax-progress {
  display: none !important;
}

/* Dropdown icons */
.dropdown-toggle::before {
  width: 16px;
  height: 16px;
  background-repeat: no-repeat;
  background-size: cover;
}

.dropdown-toggle.globe::before {
  content: '';
  background-image: url(../images/icon-globe.svg);
  margin-right: 4px;
}

.dropdown-toggle.language::before {
  content: '';
  background-image: url(../images/icon-language.svg);
  margin-right: 4px;
}

@media (max-width: 991px) {

  header .language-selector {
    width: 2.5rem;
  }
  header .dropdown-toggle.globe,
  header .dropdown-toggle.language {
    text-indent: 150%;
    display: inline-block !important;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    width: 40px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  header .dropdown-toggle.globe:before,
  header .dropdown-toggle.language:before {
    margin-right: 0;
    position: absolute;
    right: 8px;
    top: 4px;
  }
}

/** Cookie banner */
.eu-cookie-compliance-banner {
  background-color: var(--bs-secondary-bg);
  opacity: 0.95;
  width: 100vw;
}

.eu-cookie-compliance-content {
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding: 1.5rem 0.5rem;
  max-width: var(--bs-site-max-width);
}

.eu-cookie-compliance-message p:last-child {
  margin-bottom: 0;
}

.eu-cookie-compliance-message a {
  color: var(--bs-body-color);
}

@media (max-width: 991px) {
  .eu-cookie-compliance-message {
    max-width: 70%;
  }
  .eu-cookie-compliance-buttons {
    max-width: 30%;
  }
}

@media (max-width: 767px) {
  .eu-cookie-compliance-content {
    flex-direction: column;
    padding: 1.5rem;
  }
  .eu-cookie-compliance-message,
  .eu-cookie-compliance-buttons {
    max-width: 100%;
  }
  .eu-cookie-compliance-buttons {
    padding-top: 1rem;
  }
}

/* Marker */
.title-marker {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.3rem;
}
.title-marker .kamihaya-marker {
  margin-bottom: 0.4rem;
}

.kamihaya-marker {
  --marker-color: #FFFFFF;
  --marker-bg: #ea5e5e;
  --marker-border-color: #ea5e5e;
  --marker-font-size: 1.3rem;
  color: var(--marker-color);
  background-color: var(--marker-bg);
  border: 1px solid var(--marker-border-color);
  display: inline-block;
  font-size: var(--marker-font-size);
  line-height: 1;
  padding: 0.2rem 0.5rem;
}

.kamihaya-content-marker {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  margin-bottom: 20px;
}

.kamihaya-marker.marker-content-right {
  margin-left: auto;
}

.page-title.marker-title {
  display: flex;
  align-items: flex-start;
}

.page-title .kamihaya-marker {
  margin-top: 0.4rem;
}

.page-title .kamihaya-marker.marker-title-left {
  margin-right: 0.5rem;
}

.page-title .kamihaya-marker.marker-title-right {
  margin-left: 0.5rem;
}

.kamihaya-left-markers {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  gap: 0.3rem;
  margin-bottom: -30px;
}

@media (max-width: 767px) {
  .kamihaya-left-markers {
    margin-bottom: 0;
  }
}

.kamihaya-right-markers {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  gap: 0.1rem;
}

/** Expand formatter */
.expand-collapse {
  margin-bottom: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.expand-collapse .ec-content {
  word-break: break-all;
}

.expand-collapse a {
  color: var(--bs-body-color);
  text-decoration: none;
  text-align: center;
  cursor: pointer;
}

.expand-collapse a:hover {
  text-decoration: none !important;
}

.expand-collapse a:after {
  font-family: 'Font Awesome 6 Pro';
  font-weight: 900;
  margin-left: 0.5rem;
}

.expand-collapse a.ecf-open:after {
  content: '\f107';
}

.expand-collapse a.ecf-close:after {
  content: '\f106';
}

/* Youtube */
iframe[title="YouTube video player"] {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
}


/* Hide anchor link underline */
.no-underline a {
  text-decoration: none;
}

.table-header label.table-label {
  width: 100%;
}

/* Reference link */
.reference-links {
  max-width: 850px;
}
.reference-links a {
  display: block;
  text-decoration: none;
  color: #000;
  margin-bottom: 10px;
  word-break: break-all;
  position: relative;
  padding-left: 20px;
}
.reference-links a::before {
  font-family: 'Font Awesome 6 Pro';
  font-weight: 900;
  content: '\f054';
  display: inline-block;
  position: absolute;
  left: 0;
}
.reference-links a:hover {
  text-decoration: underline;
}

/* Title styles */
.title-style-one {
  padding-bottom: 10px;
  position: relative;
  text-align: center;
}
.title-style-one::after {
  content: "";
  position: absolute;
  left: 50%;
  margin-left: -50px;
  bottom: 0;
  width: 100px;
  border-bottom: 4px solid #000;
}
.title-style-one.text-white::after {
  border-bottom-color: #fff;
}

.full-width-title::after {
  width: 100%;
}

/* Full width image out of container */
.full-width-image {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}
.full-width-image img {
  width: 100%;
  height: auto;
}

/* Full width background out of container */
.full-width-bg {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}
.bg-light-grey {
  background-color: #f2f2f2;
}
.bg-dark-grey {
  background-color: #484848;
}

/* Location with Map icon */
.location-icon:before {
  font-family: 'Font Awesome 6 Pro';
  font-weight: 900;
  padding-right: 5px;
  content: '\f3c5';
  display: inline-block;
}

.fixed-bottom-border::after {
  content: '';
  max-width: 400px;
  height: 1px;
  background: #484848;
  display: block;
  margin-bottom: 5px;
  margin-top: 1px;
}

/* QA Title */
.qa-list .btn:hover {
  cursor: default;
}
.qa-title {
  position: relative;
  padding-left: 40px;
}
.qa-title::before {
  text-align: center;
  content: 'Q';
  background-color: #484848;
  color: #fff;
  width: 30px;
  height: 30px;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
  font-size: 24px;
  position: absolute;
  left: 0;
}

/* QA */
.answer h2 {
  position: relative;
  display: flex;
  width: 100%;
  align-items: center;
}

.qa-answer {
  word-break: break-all;
  position: relative;
  padding-left: 40px;
}
.answer h2::before,
.qa-answer::before {
  text-align: center;
  content: 'A';
  background-color: transparent;
  border: 1px solid #484848;
  color: #484848;
  width: 30px;
  height: 30px;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
  font-size: 24px;
}
.answer h2::after {
  display: none;
}
.qa-answer::before {
  line-height: 1.2;
  position: absolute;
  left: 0;
}

/* Related Carousel */
.related-carousel .view-content .owl-carousel .owl-nav button.owl-prev span,
.related-carousel .view-content .owl-carousel .owl-nav button.owl-next span {
  display: none;
}
.related-carousel .view-content .owl-carousel .owl-nav button.owl-prev {
  left: 0;
  background: transparent;
}
.related-carousel .view-content .owl-carousel .owl-nav button {
  width: auto;
  height: auto;
  top: 50%;
  transform: translateY(-50%);
}
.related-carousel .view-content .owl-carousel .owl-nav button:before {
  font-family: 'Font Awesome 6 Pro';
  font-weight: 900;
  padding-right: 0;
  display: block;
  color: #fff;
  background-color: #484848;
  font-size: 28px;
  width: 40px;
  height: 40px;
  border-radius: 40px;
  text-align: center;
  position: relative;
  line-height: 40px;
}
.related-carousel .view-content .owl-carousel .owl-nav button.owl-prev::before {
  content: '\f053';
}

.related-carousel .view-content .owl-carousel .owl-nav button.owl-next {
  right: 0;
  background: transparent;
}

.related-carousel .view-content .owl-carousel .owl-nav button.owl-next::before {
  content: '\f054';
}

.related-carousel .view-content .owl-carousel .owl-nav button.disabled,
.related-carousel .view-content .owl-carousel .owl-nav button.disabled:hover {
  opacity: 0.5;
}
.related-carousel .owl-theme .owl-dots {
  margin-top: 40px;
}
@media (min-width: 768px) {
  .related-carousel .view-content .owl-carousel .owl-nav button.owl-next {
    right: 100px;
  }
  .related-carousel .view-content .owl-carousel .owl-nav button.owl-prev {
    left: 100px;
  }
}

/* Thumbnail Image Slider */
.thumbnail-image-slider .slick-wrapper {
  margin-bottom: 0;
}
.thumbnail-image-slider .slide__content img {
  width: 100%;
  height: auto;
}

.thumbnail-image-slider .slick--thumbnail.slick--skin--asnavfor .slick-track {
  padding-top: 10px;
  padding-bottom: 10px;
}
.thumbnail-image-slider .slick-list.draggable {
  padding: 0 !important;
}

.thumbnail-image-slider .slick-arrow::before {
  font-family: 'Font Awesome 6 Pro';
  font-weight: 900;
  padding-right: 0;
  display: block;
  color: #fff;
  background-color: #484848;
  font-size: 28px;
  width: 40px;
  height: 40px;
  border-radius: 40px;
  text-align: center;
  position: relative;
  line-height: 40px;
}

.thumbnail-image-slider .slick-next:before {
  content: '\f054';
}

.thumbnail-image-slider .slick-prev:before {
  content: '\f053';
}

@media (max-width: 767px) {
  .thumbnail-image-slider .slick--thumbnail.slick--skin--asnavfor {
    position: absolute;
    top: 50%;
    z-index: 2;
    display: block;
    width: 100%;
  }
  .thumbnail-image-slider .slick--thumbnail.slick--skin--asnavfor .slick-track {
    display: none;
  }
}

/* Top List with icon */
.views-element-container .top-list-with-icon .view-content .kamihaya-marker i,
.views-element-container .top-basic-grid .view-content .kamihaya-marker i {
  font-size: 20px;
}
.top-list-with-icon .list-icon {
  width: 35px;
}
.top-list-with-icon .list-icon-top {
  width: 82px;
}
.views-element-container .top-list-with-icon .view-content .kamihaya-marker.marker-field-important-news-flag {
  padding-left: 0;
}
.top-basic-grid .kamihaya-content-marker {
  margin-bottom: 0;
  padding-left: 5px;
}
/* Top Basic Grid */
.top-basic-grid a:before {
  display: none;
}
.view.top-basic-grid .view-content .views-field a:hover {
  text-decoration: none;
  opacity: 0.8;
}
.top-basic-grid .views-view-grid .views-col {
  border: none;
}
@media (max-width: 767px) {
  .top-basic-grid .views-view-grid.cols-3 .views-col {
    width: 100% !important;
    padding: 0;
  }
}

/* Custom height for image */
.h-198,
.h-412,
.h-215 {
  height: auto;
}
.w-120 {
  width: 120px;
}
.w-120 .media--image {
  width: 100%;
}
.w-120 .media--image img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 768px) {
  .card-img-h-170 {
    height: 170px;
  }
  .card-img-h-170 article,
  .card-img-h-170 .media--image {
    height: 100%;
  }
  .card-img-h-170 .media--image img {
    width: auto;
    height: 100%;
    margin: 0 !important;
  }

  .h-198 {
    height: 198px;
  }
  .h-198 .media--image {
    height: 100%;
  }
  .h-198 .media--image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .h-215 {
    height: 215px;
  }
  .h-215 .media--image {
    height: 100%;
  }
  .h-215 .media--image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .h-412 {
    height: 412px;
  }
  .h-412 .media--image {
    height: 100%;
  }
  .h-412 .media--image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.text-dark-grey {
  color: #484848;
}
.text-bg-white {
  background-color: #fff;
  color: #000;
}
.fw-border:after {
  width: 100%;
}
.icon-w-48 {
  width: 48px;
  height: auto;
}

.border-light-grey {
  border-color: #ccc;
}

.hide-style::after {
  display: none;
}

.grid-card-list .views-view-grid .views-col {
  border: none;
}
@media (max-width: 767px) {
  .grid-card-list .views-view-grid.cols-2 .views-col {
    width: 100% !important;
    padding: 0;
  }
}
.view .view-content .views-field a:hover .list-title {
  text-decoration: underline;
}

.view .view-content .views-field a:hover .btn .list-title {
  text-decoration: none;
}

.views-element-container .qa-view-list .view-content .kamihaya-marker:has(i) {
  font-size: 24px;
  padding: 0;
}

/* Dropdown filter group */
@media (min-width: 768px) {
  .dropdown-filter-group {
    display: flex;
  }
}

/* Menu icon image */
.menu-icon-image {
  display: flex;
  align-items: center;
  margin-bottom: 0 !important;
}

.menu-icon-image img {
  width: auto;
  height: 24px;
  object-fit: contain;
}

.main-content .faq-top.views-exposed-form .form--inline div.text-button,
.main-content .faq-top.views-exposed-form .form--inline div.form-item,
.main-content .faq-search.views-exposed-form .form--inline div.text-button,
.main-content .faq-search.views-exposed-form .form--inline div.form-item {
  max-width: 650px;
}

.form-container {
  max-width: var(--bs-site-max-width);
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

/* border-box-list */
.border-box-list .link-button a {
  min-width: 182px;
}
@media (max-width: 767px) {
  .border-box-list .link-button a {
    min-width: 165px;
  }
}

/* Contact icons */
.contact-icon {
  position: relative;
  padding-bottom: 2px;
}
.contact-icon::before {
  font-family: 'Font Awesome 6 Pro';
  font-weight: 700;
  display: inline-block;
  padding-right: 5px;
}
.contact-icon a {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  font-weight: bold;
}
.telephone-icon::before {
  content: '\f095';
}
.website-icon::before {
  content: '\f0ac';
}
.email-icon::before {
  content: '\f0e0';
}
.building::before {
  content: '\f1ad';
}
.location::before {
  content: '\f3c5';
}

/* Button link */
.btn a:hover,
a:has(.btn):hover {
  text-decoration: none !important;
}

a:hover .btn.border-hover-dark-grey {
  border-color: #484848 !important;
}

/* Top page products grid */
.view.top-5-col-grid .view-content .views-field a {
  display: block;
}
.view.top-5-col-grid .view-content .views-field a img {
  width: 100%;
  height: 100%;
}
.view.top-5-col-grid .view-content .views-field a:hover {
  opacity: 1;
  text-decoration: underline;
}
@media (min-width: 768px) {
  .view.top-5-col-grid .view-content .views-field a .bg-light-grey {
    width: 220px;
    height: 220px;
  }
}
@media (max-width: 767px) {
  .view.top-5-col-grid .view-content .views-field a .bg-light-grey {
    width: 165px;
    height: 165px;
  }
}
/* Top carousel icon changes */
.top-carousel .flex-direction-nav a::before {
  font-family: 'Font Awesome 6 Pro' !important;
  font-weight: 900;
  color: #fff;
  font-size: 28px;
  border-radius: 40px;
  background-color: #484848;
  width: 40px;
  height: 40px;
  text-align: center;
  position: relative;
  padding-top: 6px;
}
.top-carousel .flex-direction-nav a.flex-next::before {
  content: '\f054';
}
.top-carousel .flex-direction-nav a.flex-prev::before {
  content: '\f053';
}

.link-wrapper {
  text-decoration: none;
}
.link-wrapper:hover {
  text-decoration: underline;
}
